1 package expo.modules.medialibrary 2 3 import android.provider.MediaStore.Files.FileColumns.MEDIA_TYPE_AUDIO 4 import android.provider.MediaStore.Files.FileColumns.MEDIA_TYPE_IMAGE 5 import android.provider.MediaStore.Files.FileColumns.MEDIA_TYPE_VIDEO 6 7 /* 8 Column order: 9 ID, DisplayName, uri, MediaType, Width, Height, DateTaken, DateModified, Orientation, Duration, BucketId 10 */ 11 internal data class MockAsset( 12 val id: Long, 13 val name: String?, 14 val path: String?, 15 val mediaType: Int?, 16 val width: Int?, 17 val height: Int?, 18 val createdDate: Long?, 19 val modifiedDate: Long?, 20 val orientation: Int?, 21 val duration: Int?, 22 val albumId: String? 23 ) { toColumnArraynull24 fun toColumnArray() = arrayOf( 25 id, name, path, mediaType, 26 width, height, 27 createdDate, modifiedDate, 28 orientation, duration, 29 albumId 30 ) 31 } 32 33 /* 34 Projection column order: 35 Bucket ID, Bucket Display Name 36 */ 37 internal data class MockAlbum( 38 val id: String, 39 val name: String, 40 ) { 41 fun toColumnArray() = arrayOf(id, name) 42 } 43 44 internal object MockData { 45 const val MOCK_ALBUM_ID = "album12" 46 47 val mockImage = MockAsset( 48 id = 1L, 49 name = "img1.jpg", 50 path = "images/img1.jpg", 51 mediaType = MEDIA_TYPE_IMAGE, 52 width = 100, 53 height = 200, 54 createdDate = 12345678, 55 modifiedDate = 23456789, 56 orientation = 0, 57 duration = null, 58 albumId = MOCK_ALBUM_ID 59 ) 60 61 val mockVideo = MockAsset( 62 id = 2L, 63 name = "vid2.mp4", 64 path = "videos/vid2.mp4", 65 mediaType = MEDIA_TYPE_VIDEO, 66 width = 200, 67 height = 300, 68 createdDate = 12345678, 69 modifiedDate = 23456789, 70 orientation = 0, 71 duration = 3000, 72 albumId = MOCK_ALBUM_ID 73 ) 74 75 val mockAudio = MockAsset( 76 id = 3L, 77 name = "song3.mp3", 78 path = "audio/song3.mp3", 79 mediaType = MEDIA_TYPE_AUDIO, 80 width = 0, 81 height = 0, 82 createdDate = 12345678, 83 modifiedDate = 23456789, 84 orientation = null, 85 duration = 10000, 86 albumId = null 87 ) 88 89 val mockAlbum = MockAlbum( 90 id = MOCK_ALBUM_ID, 91 name = "TestAlbum" 92 ) 93 } 94