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