1 package versioned.host.exp.exponent 2 3 import expo.modules.ads.admob.AdMobPackage 4 import expo.modules.ads.facebook.AdsFacebookPackage 5 import expo.modules.analytics.amplitude.AmplitudePackage 6 import expo.modules.analytics.segment.SegmentPackage 7 import expo.modules.application.ApplicationPackage 8 import expo.modules.av.AVPackage 9 import expo.modules.backgroundfetch.BackgroundFetchPackage 10 import expo.modules.barcodescanner.BarCodeScannerPackage 11 import expo.modules.battery.BatteryPackage 12 import expo.modules.brightness.BrightnessPackage 13 import expo.modules.calendar.CalendarPackage 14 import expo.modules.camera.CameraPackage 15 import expo.modules.cellular.CellularModule 16 import expo.modules.clipboard.ClipboardModule 17 import expo.modules.constants.ConstantsPackage 18 import expo.modules.contacts.ContactsPackage 19 import expo.modules.core.interfaces.Package 20 import expo.modules.crypto.CryptoPackage 21 import expo.modules.device.DevicePackage 22 import expo.modules.documentpicker.DocumentPickerPackage 23 import expo.modules.errorrecovery.ErrorRecoveryPackage 24 import expo.modules.facebook.FacebookPackage 25 import expo.modules.facedetector.FaceDetectorPackage 26 import expo.modules.filesystem.FileSystemPackage 27 import expo.modules.firebase.analytics.FirebaseAnalyticsPackage 28 import expo.modules.firebase.core.FirebaseCorePackage 29 import expo.modules.font.FontLoaderPackage 30 import expo.modules.gl.GLPackage 31 import expo.modules.google.signin.GoogleSignInPackage 32 import expo.modules.haptics.HapticsPackage 33 import expo.modules.imageloader.ImageLoaderPackage 34 import expo.modules.imagemanipulator.ImageManipulatorPackage 35 import expo.modules.imagepicker.ImagePickerPackage 36 import expo.modules.intentlauncher.IntentLauncherPackage 37 import expo.modules.keepawake.KeepAwakePackage 38 import expo.modules.kotlin.ModulesProvider 39 import expo.modules.kotlin.modules.Module 40 import expo.modules.lineargradient.LinearGradientModule 41 import expo.modules.localauthentication.LocalAuthenticationPackage 42 import expo.modules.localization.LocalizationPackage 43 import expo.modules.location.LocationPackage 44 import expo.modules.mailcomposer.MailComposerPackage 45 import expo.modules.manifests.core.Manifest 46 import expo.modules.medialibrary.MediaLibraryPackage 47 import expo.modules.navigationbar.NavigationBarPackage 48 import expo.modules.network.NetworkPackage 49 import expo.modules.notifications.NotificationsPackage 50 import expo.modules.permissions.PermissionsPackage 51 import expo.modules.print.PrintPackage 52 import expo.modules.screencapture.ScreenCapturePackage 53 import expo.modules.screenorientation.ScreenOrientationPackage 54 import expo.modules.securestore.SecureStorePackage 55 import expo.modules.sensors.SensorsPackage 56 import expo.modules.sharing.SharingPackage 57 import expo.modules.sms.SMSPackage 58 import expo.modules.speech.SpeechPackage 59 import expo.modules.splashscreen.SplashScreenPackage 60 import expo.modules.sqlite.SQLitePackage 61 import expo.modules.storereview.StoreReviewPackage 62 import expo.modules.systemui.SystemUIPackage 63 import expo.modules.taskManager.TaskManagerPackage 64 import expo.modules.updates.UpdatesPackage 65 import expo.modules.videothumbnails.VideoThumbnailsPackage 66 import expo.modules.webbrowser.WebBrowserPackage 67 68 object ExperiencePackagePicker : ModulesProvider { 69 private val EXPO_MODULES_PACKAGES = listOf( 70 AVPackage(), 71 AdMobPackage(), 72 AdsFacebookPackage(), 73 ApplicationPackage(), 74 AmplitudePackage(), 75 BatteryPackage(), 76 BackgroundFetchPackage(), 77 BarCodeScannerPackage(), 78 BrightnessPackage(), 79 CalendarPackage(), 80 CameraPackage(), 81 ConstantsPackage(), 82 ContactsPackage(), 83 CryptoPackage(), 84 DevicePackage(), 85 DocumentPickerPackage(), 86 ErrorRecoveryPackage(), 87 FacebookPackage(), 88 FaceDetectorPackage(), 89 FileSystemPackage(), 90 FirebaseCorePackage(), 91 FirebaseAnalyticsPackage(), 92 FontLoaderPackage(), 93 GLPackage(), 94 GoogleSignInPackage(), 95 HapticsPackage(), 96 ImageLoaderPackage(), 97 ImageManipulatorPackage(), 98 ImagePickerPackage(), 99 IntentLauncherPackage(), 100 KeepAwakePackage(), 101 LocalAuthenticationPackage(), 102 LocalizationPackage(), 103 LocationPackage(), 104 MailComposerPackage(), 105 MediaLibraryPackage(), 106 NavigationBarPackage(), 107 NetworkPackage(), 108 NotificationsPackage(), 109 PermissionsPackage(), 110 PrintPackage(), 111 SMSPackage(), 112 StoreReviewPackage(), 113 SQLitePackage(), 114 ScreenCapturePackage(), 115 ScreenOrientationPackage(), 116 SecureStorePackage(), 117 SegmentPackage(), 118 SensorsPackage(), 119 SharingPackage(), 120 SpeechPackage(), 121 SplashScreenPackage(), 122 SystemUIPackage(), 123 TaskManagerPackage(), 124 UpdatesPackage(), 125 VideoThumbnailsPackage(), 126 WebBrowserPackage() 127 ) 128 129 /** 130 * Returns all available packages. 131 */ 132 fun packages(): List<Package> { 133 return EXPO_MODULES_PACKAGES 134 } 135 136 /** 137 * Returns packages filtered based on the app's manifest. 138 * For now, filtering is not applied but it is on the todo list. 139 */ 140 fun packages(manifest: Manifest?): List<Package> { 141 return EXPO_MODULES_PACKAGES 142 } 143 144 override fun getModulesList(): List<Class<out Module>> = listOf( 145 CellularModule::class.java, 146 ClipboardModule::class.java, 147 LinearGradientModule::class.java 148 ) 149 } 150