@depup/expo__cli 55.0.22-depup.1 → 57.0.9-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +13 -18
- package/build/bin/cli +4 -4
- package/build/bin/cli.map +1 -1
- package/build/src/api/endpoint.js +4 -4
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoSchema.js +3 -3
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/graphql/client.js +26 -14
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/mutations/TunnelMutation.js +31 -0
- package/build/src/api/graphql/mutations/TunnelMutation.js.map +1 -0
- package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/ResponseCache.js +5 -5
- package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
- package/build/src/api/rest/client.js +35 -20
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +6 -5
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +28 -15
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +10 -3
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +76 -24
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +4 -4
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +19 -7
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +3 -3
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +7 -4
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/templates.js +4 -6
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/events/index.js +19 -15
- package/build/src/events/index.js.map +1 -1
- package/build/src/events/stream.js +94 -24
- package/build/src/events/stream.js.map +1 -1
- package/build/src/expoUpdatesExports.js +50 -7
- package/build/src/expoUpdatesExports.js.map +1 -1
- package/build/src/export/createMetadataJson.js +2 -1
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +58 -24
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/exportServer.js +1 -1
- package/build/src/export/embed/exportServer.js.map +1 -1
- package/build/src/export/embed/index.js +1 -1
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +7 -6
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +7 -7
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +40 -30
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +5 -5
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportDomComponents.js +16 -9
- package/build/src/export/exportDomComponents.js.map +1 -1
- package/build/src/export/exportHermes.js +23 -13
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +30 -21
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +26 -34
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +3 -3
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +2 -0
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +4 -4
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +6 -6
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +16 -4
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +12 -13
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +3 -3
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/static.js +6 -0
- package/build/src/export/static.js.map +1 -0
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/install/checkPackages.js +1 -28
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +3 -3
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +3 -3
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/install/utils/checkPackagesCompatibility.js +32 -16
- package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js.map +1 -1
- package/build/src/log.js +32 -14
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +25 -5
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +49 -14
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +3 -3
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +3 -2
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +31 -6
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +8 -5
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +7 -7
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +10 -5
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +3 -3
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +7 -7
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js.map +1 -1
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +3 -4
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +48 -1
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +4 -1
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +4 -4
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +163 -23
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +6 -5
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +10 -16
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +2 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +3 -3
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +3 -3
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +16 -13
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +6 -6
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +5 -5
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +7 -7
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +5 -5
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +8 -8
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +5 -3
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +7 -5
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +3 -3
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +4 -4
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +8 -1
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +3 -3
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/appleDestinations.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +3 -3
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +8 -3
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +4 -4
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +9 -4
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +39 -0
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/ios/validateExternalBinary.js.map +1 -1
- package/build/src/run/startBundler.js +4 -0
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/serve/index.js +4 -1
- package/build/src/serve/index.js.map +1 -1
- package/build/src/serve/serveAsync.js +23 -11
- package/build/src/serve/serveAsync.js.map +1 -1
- package/build/src/serve/static.js +69 -0
- package/build/src/serve/static.js.map +1 -0
- package/build/src/start/checkDependenciesOnStart.js +131 -0
- package/build/src/start/checkDependenciesOnStart.js.map +1 -0
- package/build/src/start/detectDevClient.js +3 -3
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +4 -4
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +53 -91
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +3 -3
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +3 -3
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +5 -5
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +5 -5
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/reactNativeTv.js +149 -0
- package/build/src/start/doctor/dependencies/reactNativeTv.js.map +1 -0
- package/build/src/start/doctor/dependencies/resolvePackages.js +4 -4
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +33 -8
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +14 -9
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +3 -3
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +3 -3
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +5 -12
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +2 -0
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/cliExtensionMenuItemHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +6 -6
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/createDevToolsMenuItems.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +49 -6
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +13 -4
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +4 -0
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +13 -4
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +36 -34
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +4 -4
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +5 -5
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +5 -5
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +3 -3
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +20 -6
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/ApplePlatformManager.js +11 -0
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
- package/build/src/start/platforms/ios/devicectl.js +7 -7
- package/build/src/start/platforms/ios/devicectl.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +26 -11
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +5 -5
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +5 -4
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +25 -19
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +3 -3
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +3 -3
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +6 -6
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +4 -3
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/resolveOptions.js +7 -7
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +1 -1
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/AsyncWsTunnel.js +120 -35
- package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
- package/build/src/start/server/Bonjour.js +8 -3
- package/build/src/start/server/Bonjour.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +23 -9
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPlugin.js +63 -3
- package/build/src/start/server/DevToolsPlugin.js.map +1 -1
- package/build/src/start/server/DevToolsPlugin.schema.js +8 -3
- package/build/src/start/server/DevToolsPlugin.schema.js.map +1 -1
- package/build/src/start/server/DevToolsPluginCliExtensionExecutor.js +58 -23
- package/build/src/start/server/DevToolsPluginCliExtensionExecutor.js.map +1 -1
- package/build/src/start/server/DevToolsPluginCliExtensionResults.js +29 -0
- package/build/src/start/server/DevToolsPluginCliExtensionResults.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +20 -6
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginServerHelpers.js +83 -0
- package/build/src/start/server/DevToolsPluginServerHelpers.js.map +1 -0
- package/build/src/start/server/DevelopmentSession.js +41 -24
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/MCP.js +10 -3
- package/build/src/start/server/MCP.js.map +1 -1
- package/build/src/start/server/MCPDevToolsPluginCLIExtensions.js +15 -5
- package/build/src/start/server/MCPDevToolsPluginCLIExtensions.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +14 -1
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/createMCPDevToolsExtensionSchema.js +18 -4
- package/build/src/start/server/createMCPDevToolsExtensionSchema.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +13 -24
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +245 -114
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +67 -16
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +22 -4
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/createExpoAutolinkingResolver.js +25 -12
- package/build/src/start/server/metro/createExpoAutolinkingResolver.js.map +1 -1
- package/build/src/start/server/metro/createExpoFallbackResolver.js +39 -0
- package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -1
- package/build/src/start/server/metro/createFileMap-fork.js +196 -0
- package/build/src/start/server/metro/createFileMap-fork.js.map +1 -0
- package/build/src/start/server/metro/createServerComponentsMiddleware.js +22 -22
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createTypescriptResolver.js +410 -0
- package/build/src/start/server/metro/createTypescriptResolver.js.map +1 -0
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/attachAtlas.js +3 -3
- package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +6 -5
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +20 -4
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
- package/build/src/start/server/metro/dev-server/compression.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +13 -2
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +9 -2
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js +3 -3
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
- package/build/src/start/server/metro/errors/FailedToResolveNativeOnlyModuleError.js.map +1 -1
- package/build/src/start/server/metro/externals.js +4 -4
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +3 -3
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +3 -3
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +141 -57
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +4 -4
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js +3 -3
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +16 -13
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +3 -3
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +48 -16
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/resolveLoader.js +3 -3
- package/build/src/start/server/metro/resolveLoader.js.map +1 -1
- package/build/src/start/server/metro/router.js +23 -14
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +13 -10
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +29 -13
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +36 -34
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroErrorReportingResolver.js +53 -30
- package/build/src/start/server/metro/withMetroErrorReportingResolver.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +187 -126
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +4 -4
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +3 -3
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +60 -9
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DomComponentsMiddleware.js +30 -17
- package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +6 -4
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +3 -3
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +13 -8
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +19 -47
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/OpenMiddleware.js +150 -0
- package/build/src/start/server/middleware/OpenMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +13 -4
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +2 -9
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/domPolyfills.js +60 -0
- package/build/src/start/server/middleware/domPolyfills.js.map +1 -0
- package/build/src/start/server/middleware/inspector/JsInspector.js +6 -31
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +14 -24
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +3 -3
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +15 -14
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +3 -3
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/openHandlers.js +157 -0
- package/build/src/start/server/middleware/openHandlers.js.map +1 -0
- package/build/src/start/server/middleware/resolveAssets.js +4 -4
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +9 -7
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +3 -1
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +13 -36
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +3 -3
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +14 -55
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +5 -5
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +12 -10
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +3 -3
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +4 -4
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +3 -3
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +21 -11
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/types.d.ts +2 -0
- package/build/src/utils/FileNotifier.js +1 -1
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/args.js +5 -5
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +8 -8
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/build-cache-providers/helpers.js +4 -4
- package/build/src/utils/build-cache-providers/helpers.js.map +1 -1
- package/build/src/utils/build-cache-providers/index.js +5 -5
- package/build/src/utils/build-cache-providers/index.js.map +1 -1
- package/build/src/utils/cocoapods.js +5 -5
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +12 -6
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/composeMetroIgnorePatterns.js +69 -0
- package/build/src/utils/composeMetroIgnorePatterns.js.map +1 -0
- package/build/src/utils/createTempPath.js +3 -3
- package/build/src/utils/createTempPath.js.map +1 -1
- package/build/src/utils/delay.js +4 -4
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +21 -11
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +4 -4
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +4 -4
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +39 -13
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +6 -6
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +15 -19
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/expoUpdatesCli.js +5 -5
- package/build/src/utils/expoUpdatesCli.js.map +1 -1
- package/build/src/utils/fetch.js +4 -4
- package/build/src/utils/fetch.js.map +1 -1
- package/build/src/utils/filePath.js +3 -29
- package/build/src/utils/filePath.js.map +1 -1
- package/build/src/utils/findUp.js +3 -3
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +3 -3
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/freeport.js +3 -3
- package/build/src/utils/freeport.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +3 -5
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +5 -5
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +3 -3
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +3 -3
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/ip.js +4 -4
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/link.js +3 -3
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +10 -10
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +3 -3
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/net.js +23 -4
- package/build/src/utils/net.js.map +1 -1
- package/build/src/utils/nodeEnv.js +6 -6
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/npm.js +10 -9
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +4 -4
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +240 -11
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +4 -4
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +5 -4
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +12 -5
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/progress.js +4 -4
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +11 -11
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/qr.js +5 -4
- package/build/src/utils/qr.js.map +1 -1
- package/build/src/utils/resolveArgs.js +10 -9
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +4 -4
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +8 -7
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/Telemetry.js +5 -0
- package/build/src/utils/telemetry/Telemetry.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/flushFetchDetached.js +5 -1
- package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
- package/build/src/utils/telemetry/index.js +4 -4
- package/build/src/utils/telemetry/index.js.map +1 -1
- package/build/src/utils/telemetry/utils/agent.js +42 -0
- package/build/src/utils/telemetry/utils/agent.js.map +1 -0
- package/build/src/utils/telemetry/utils/constants.js +3 -3
- package/build/src/utils/telemetry/utils/constants.js.map +1 -1
- package/build/src/utils/telemetry/utils/context.js +3 -2
- package/build/src/utils/telemetry/utils/context.js.map +1 -1
- package/build/src/utils/url.js +5 -17
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +12 -12
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +4 -4
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js.map +1 -1
- package/changes.json +16 -36
- package/main.js +3 -0
- package/package.json +86 -90
- package/static/loading-page/index.html +45 -3
- package/static/template/+html.tsx +14 -5
- package/add-module.js +0 -8
- package/build/src/start/server/middleware/inspector/CdpClient.js +0 -81
- package/build/src/start/server/middleware/inspector/CdpClient.js.map +0 -1
- package/build/src/utils/resolveGlobal.js +0 -195
- package/build/src/utils/resolveGlobal.js.map +0 -1
- package/build/src/utils/resolveWatchFolders.js +0 -67
- package/build/src/utils/resolveWatchFolders.js.map +0 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +0 -87
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +0 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +0 -84
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +0 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +0 -94
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +0 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +0 -62
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +0 -1
|
@@ -10,23 +10,37 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
10
10
|
function _export(target, all) {
|
|
11
11
|
for(var name in all)Object.defineProperty(target, name, {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: all
|
|
13
|
+
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
_export(exports, {
|
|
17
|
-
getNodejsExtensions
|
|
17
|
+
get getNodejsExtensions () {
|
|
18
18
|
return getNodejsExtensions;
|
|
19
19
|
},
|
|
20
|
-
shouldAliasModule
|
|
20
|
+
get shouldAliasModule () {
|
|
21
21
|
return shouldAliasModule;
|
|
22
22
|
},
|
|
23
|
-
withExtendedResolver
|
|
23
|
+
get withExtendedResolver () {
|
|
24
24
|
return withExtendedResolver;
|
|
25
25
|
},
|
|
26
|
-
withMetroMultiPlatformAsync
|
|
26
|
+
get withMetroMultiPlatformAsync () {
|
|
27
27
|
return withMetroMultiPlatformAsync;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
+
function _config() {
|
|
31
|
+
const data = require("@expo/config");
|
|
32
|
+
_config = function() {
|
|
33
|
+
return data;
|
|
34
|
+
};
|
|
35
|
+
return data;
|
|
36
|
+
}
|
|
37
|
+
function _paths() {
|
|
38
|
+
const data = require("@expo/config/paths");
|
|
39
|
+
_paths = function() {
|
|
40
|
+
return data;
|
|
41
|
+
};
|
|
42
|
+
return data;
|
|
43
|
+
}
|
|
30
44
|
function _metroresolver() {
|
|
31
45
|
const data = require("@expo/metro/metro-resolver");
|
|
32
46
|
_metroresolver = function() {
|
|
@@ -34,6 +48,13 @@ function _metroresolver() {
|
|
|
34
48
|
};
|
|
35
49
|
return data;
|
|
36
50
|
}
|
|
51
|
+
function _requireutils() {
|
|
52
|
+
const data = require("@expo/require-utils");
|
|
53
|
+
_requireutils = function() {
|
|
54
|
+
return data;
|
|
55
|
+
};
|
|
56
|
+
return data;
|
|
57
|
+
}
|
|
37
58
|
function _fs() {
|
|
38
59
|
const data = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
39
60
|
_fs = function() {
|
|
@@ -48,13 +69,6 @@ function _path() {
|
|
|
48
69
|
};
|
|
49
70
|
return data;
|
|
50
71
|
}
|
|
51
|
-
function _resolvefrom() {
|
|
52
|
-
const data = /*#__PURE__*/ _interop_require_default(require("resolve-from"));
|
|
53
|
-
_resolvefrom = function() {
|
|
54
|
-
return data;
|
|
55
|
-
};
|
|
56
|
-
return data;
|
|
57
|
-
}
|
|
58
72
|
const _createExpoAutolinkingResolver = require("./createExpoAutolinkingResolver");
|
|
59
73
|
const _createExpoFallbackResolver = require("./createExpoFallbackResolver");
|
|
60
74
|
const _FailedToResolveNativeOnlyModuleError = require("./errors/FailedToResolveNativeOnlyModuleError");
|
|
@@ -65,24 +79,77 @@ const _withMetroErrorReportingResolver = require("./withMetroErrorReportingResol
|
|
|
65
79
|
const _withMetroResolvers = require("./withMetroResolvers");
|
|
66
80
|
const _withMetroSupervisingTransformWorker = require("./withMetroSupervisingTransformWorker");
|
|
67
81
|
const _log = require("../../../log");
|
|
68
|
-
const _FileNotifier = require("../../../utils/FileNotifier");
|
|
69
82
|
const _env = require("../../../utils/env");
|
|
70
|
-
const _errors = require("../../../utils/errors");
|
|
71
|
-
const _exit = require("../../../utils/exit");
|
|
72
|
-
const _resolveWatchFolders = require("../../../utils/resolveWatchFolders");
|
|
73
|
-
const _loadTsConfigPaths = require("../../../utils/tsconfig/loadTsConfigPaths");
|
|
74
|
-
const _resolveWithTsConfigPaths = require("../../../utils/tsconfig/resolveWithTsConfigPaths");
|
|
75
83
|
const _metroOptions = require("../middleware/metroOptions");
|
|
84
|
+
const _createTypescriptResolver = require("./createTypescriptResolver");
|
|
76
85
|
function _interop_require_default(obj) {
|
|
77
86
|
return obj && obj.__esModule ? obj : {
|
|
78
87
|
default: obj
|
|
79
88
|
};
|
|
80
89
|
}
|
|
81
90
|
const ASSET_REGISTRY_SRC = `const assets=[];module.exports={registerAsset:s=>assets.push(s),getAssetByID:s=>assets[s-1]};`;
|
|
91
|
+
function constructPlatformExtensions(config) {
|
|
92
|
+
var _config_resolver;
|
|
93
|
+
const platformExtensions = Object.create(null);
|
|
94
|
+
// TODO(@kitten): Temporary internal override config for per-platform extensions
|
|
95
|
+
let unstable_platformExtensions;
|
|
96
|
+
if (config.resolver && 'unstable_platformExtensions' in config.resolver && config.resolver.unstable_platformExtensions && typeof config.resolver.unstable_platformExtensions === 'object') {
|
|
97
|
+
unstable_platformExtensions = config.resolver.unstable_platformExtensions;
|
|
98
|
+
}
|
|
99
|
+
for (const platform of ((_config_resolver = config.resolver) == null ? void 0 : _config_resolver.platforms) ?? []){
|
|
100
|
+
const customPlatformExtensions = unstable_platformExtensions == null ? void 0 : unstable_platformExtensions[platform];
|
|
101
|
+
const sourceExts = (0, _paths().getPlatformExtensions)(platform, config.resolver.sourceExts, customPlatformExtensions);
|
|
102
|
+
// Platform-less resolution drops the platform's package-exports conditions, so fold them in.
|
|
103
|
+
const unstable_conditionNames = [
|
|
104
|
+
...config.resolver.unstable_conditionNames,
|
|
105
|
+
...config.resolver.unstable_conditionsByPlatform[platform] ?? []
|
|
106
|
+
];
|
|
107
|
+
if (sourceExts) {
|
|
108
|
+
platformExtensions[platform] = {
|
|
109
|
+
sourceExts,
|
|
110
|
+
unstable_conditionNames
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return platformExtensions;
|
|
115
|
+
}
|
|
116
|
+
function resolveWithPlatformExtensions(platformExtensions, context, moduleName) {
|
|
117
|
+
const platformContext = asWritable(context);
|
|
118
|
+
platformContext.preferNativePlatform = false;
|
|
119
|
+
platformContext.sourceExts = platformExtensions.sourceExts;
|
|
120
|
+
platformContext.unstable_conditionNames = platformExtensions.unstable_conditionNames;
|
|
121
|
+
return (0, _metroresolver().resolve)(platformContext, moduleName, null);
|
|
122
|
+
}
|
|
82
123
|
const debug = require('debug')('expo:start:server:metro:multi-platform');
|
|
83
124
|
function asWritable(input) {
|
|
84
125
|
return input;
|
|
85
126
|
}
|
|
127
|
+
const _reactNativeHostPackages = new Map();
|
|
128
|
+
const _reactNativeHostPathPatterns = new Map();
|
|
129
|
+
function getReactNativeHostPackage(platform) {
|
|
130
|
+
if (!platform) {
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
let supportPackage = _reactNativeHostPackages.get(platform);
|
|
134
|
+
if (supportPackage === undefined) {
|
|
135
|
+
const { getSupportPackageForPlatform } = require('expo/internal/unstable-autolinking-exports');
|
|
136
|
+
supportPackage = getSupportPackageForPlatform(platform);
|
|
137
|
+
_reactNativeHostPackages.set(platform, supportPackage);
|
|
138
|
+
}
|
|
139
|
+
return supportPackage;
|
|
140
|
+
}
|
|
141
|
+
function getReactNativeHostPathPattern(platform) {
|
|
142
|
+
if (!platform) {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
let pattern = _reactNativeHostPathPatterns.get(platform);
|
|
146
|
+
if (pattern === undefined) {
|
|
147
|
+
const supportPackage = getReactNativeHostPackage(platform);
|
|
148
|
+
pattern = supportPackage ? new RegExp(`[\\\\/]node_modules[\\\\/]${supportPackage}[\\\\/]`) : null;
|
|
149
|
+
_reactNativeHostPathPatterns.set(platform, pattern);
|
|
150
|
+
}
|
|
151
|
+
return pattern;
|
|
152
|
+
}
|
|
86
153
|
function withWebPolyfills(config, { getMetroBundler }) {
|
|
87
154
|
const originalGetPolyfills = config.serializer.getPolyfills ? config.serializer.getPolyfills.bind(config.serializer) : ()=>[];
|
|
88
155
|
const getPolyfills = (ctx)=>{
|
|
@@ -160,7 +227,7 @@ function getNodejsExtensions(srcExts) {
|
|
|
160
227
|
nodejsSourceExtensions.splice(jsIndex + 1, 0, ...mjsExts);
|
|
161
228
|
return nodejsSourceExtensions;
|
|
162
229
|
}
|
|
163
|
-
function withExtendedResolver(config, {
|
|
230
|
+
function withExtendedResolver(config, { autolinkingModuleResolverInput, isTsconfigPathsEnabled, isExporting, isReactServerComponentsEnabled, getMetroBundler }) {
|
|
164
231
|
var _config_serializer_createModuleIdFactory, _config_serializer;
|
|
165
232
|
if (isReactServerComponentsEnabled) {
|
|
166
233
|
_log.Log.warn(`React Server Components (beta) is enabled.`);
|
|
@@ -172,6 +239,7 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
172
239
|
'react-native/Libraries/Image/resolveAssetSource': 'expo-asset/build/resolveAssetSource'
|
|
173
240
|
}
|
|
174
241
|
};
|
|
242
|
+
const isExpoRouterInstalled = hasExpoRouterModule(config.projectRoot, autolinkingModuleResolverInput);
|
|
175
243
|
let _universalAliases;
|
|
176
244
|
function getUniversalAliases() {
|
|
177
245
|
if (_universalAliases) {
|
|
@@ -179,7 +247,7 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
179
247
|
}
|
|
180
248
|
_universalAliases = [];
|
|
181
249
|
// This package is currently always installed as it is included in the `expo` package.
|
|
182
|
-
if (
|
|
250
|
+
if ((0, _requireutils().resolveFrom)(config.projectRoot, '@expo/vector-icons/package.json')) {
|
|
183
251
|
debug('Enabling alias: react-native-vector-icons -> @expo/vector-icons');
|
|
184
252
|
_universalAliases.push([
|
|
185
253
|
/^react-native-vector-icons(\/.*)?/,
|
|
@@ -187,7 +255,7 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
187
255
|
]);
|
|
188
256
|
}
|
|
189
257
|
if (isReactServerComponentsEnabled) {
|
|
190
|
-
if (
|
|
258
|
+
if ((0, _requireutils().resolveFrom)(config.projectRoot, 'expo-router/rsc')) {
|
|
191
259
|
debug('Enabling bridge alias: expo-router -> expo-router/rsc');
|
|
192
260
|
_universalAliases.push([
|
|
193
261
|
/^expo-router$/,
|
|
@@ -214,49 +282,15 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
214
282
|
'main'
|
|
215
283
|
]
|
|
216
284
|
};
|
|
217
|
-
let tsConfigResolve = isTsconfigPathsEnabled && ((tsconfig == null ? void 0 : tsconfig.paths) || (tsconfig == null ? void 0 : tsconfig.baseUrl) != null) ? _resolveWithTsConfigPaths.resolveWithTsConfigPaths.bind(_resolveWithTsConfigPaths.resolveWithTsConfigPaths, {
|
|
218
|
-
paths: tsconfig.paths ?? {},
|
|
219
|
-
baseUrl: tsconfig.baseUrl ?? config.projectRoot,
|
|
220
|
-
hasBaseUrl: !!tsconfig.baseUrl
|
|
221
|
-
}) : null;
|
|
222
|
-
// TODO: Move this to be a transform key for invalidation.
|
|
223
|
-
if (!isExporting && !_env.env.CI) {
|
|
224
|
-
if (isTsconfigPathsEnabled) {
|
|
225
|
-
// TODO: We should track all the files that used imports and invalidate them
|
|
226
|
-
// currently the user will need to save all the files that use imports to
|
|
227
|
-
// use the new aliases.
|
|
228
|
-
const configWatcher = new _FileNotifier.FileNotifier(config.projectRoot, [
|
|
229
|
-
'./tsconfig.json',
|
|
230
|
-
'./jsconfig.json'
|
|
231
|
-
]);
|
|
232
|
-
configWatcher.startObserving(()=>{
|
|
233
|
-
debug('Reloading tsconfig.json');
|
|
234
|
-
(0, _loadTsConfigPaths.loadTsConfigPathsAsync)(config.projectRoot).then((tsConfigPaths)=>{
|
|
235
|
-
if ((tsConfigPaths == null ? void 0 : tsConfigPaths.paths) && !!Object.keys(tsConfigPaths.paths).length) {
|
|
236
|
-
debug('Enabling tsconfig.json paths support');
|
|
237
|
-
tsConfigResolve = _resolveWithTsConfigPaths.resolveWithTsConfigPaths.bind(_resolveWithTsConfigPaths.resolveWithTsConfigPaths, {
|
|
238
|
-
paths: tsConfigPaths.paths ?? {},
|
|
239
|
-
baseUrl: tsConfigPaths.baseUrl ?? config.projectRoot,
|
|
240
|
-
hasBaseUrl: !!tsConfigPaths.baseUrl
|
|
241
|
-
});
|
|
242
|
-
} else {
|
|
243
|
-
debug('Disabling tsconfig.json paths support');
|
|
244
|
-
tsConfigResolve = null;
|
|
245
|
-
}
|
|
246
|
-
});
|
|
247
|
-
});
|
|
248
|
-
// TODO: This probably prevents the process from exiting.
|
|
249
|
-
(0, _exit.installExitHooks)(()=>{
|
|
250
|
-
configWatcher.stopObserving();
|
|
251
|
-
});
|
|
252
|
-
} else {
|
|
253
|
-
debug('Skipping tsconfig.json paths support');
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
285
|
let nodejsSourceExtensions = null;
|
|
286
|
+
const platformExtensions = constructPlatformExtensions(config);
|
|
257
287
|
const getStrictResolver = ({ resolveRequest, ...context }, platform)=>{
|
|
258
288
|
return function doResolve(moduleName) {
|
|
259
|
-
|
|
289
|
+
if (platform != null && platformExtensions[platform]) {
|
|
290
|
+
return resolveWithPlatformExtensions(platformExtensions[platform], context, moduleName);
|
|
291
|
+
} else {
|
|
292
|
+
return (0, _metroresolver().resolve)(context, moduleName, platform);
|
|
293
|
+
}
|
|
260
294
|
};
|
|
261
295
|
};
|
|
262
296
|
function getOptionalResolver(context, platform) {
|
|
@@ -283,7 +317,7 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
283
317
|
let _asyncRequireModuleResolvedPath;
|
|
284
318
|
const getAsyncRequireModule = ()=>{
|
|
285
319
|
if (_asyncRequireModuleResolvedPath === undefined) {
|
|
286
|
-
_asyncRequireModuleResolvedPath =
|
|
320
|
+
_asyncRequireModuleResolvedPath = (0, _requireutils().resolveFrom)(config.projectRoot, config.transformer.asyncRequireModulePath) ?? null;
|
|
287
321
|
}
|
|
288
322
|
return _asyncRequireModuleResolvedPath ? {
|
|
289
323
|
type: 'sourceFile',
|
|
@@ -311,15 +345,15 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
311
345
|
}
|
|
312
346
|
if (((_context_customResolverOptions1 = context.customResolverOptions) == null ? void 0 : _context_customResolverOptions1.environment) === 'react-server') {
|
|
313
347
|
// Ensure these non-react-server modules are excluded when bundling for React Server Components in development.
|
|
314
|
-
return /^(
|
|
348
|
+
return /^(@babel\/runtime\/.+|debug|metro-runtime\/src\/modules\/HMRClient|metro|acorn-loose|acorn|chalk|ws|ansi-styles|supports-color|color-convert|has-flag|utf-8-validate|color-name|react-refresh\/runtime|@remix-run\/node\/.+)$/.test(moduleName);
|
|
315
349
|
}
|
|
316
350
|
// TODO: Windows doesn't support externals somehow.
|
|
317
351
|
if (process.platform === 'win32') {
|
|
318
|
-
return
|
|
352
|
+
return false;
|
|
319
353
|
}
|
|
320
354
|
// Extern these modules in standard Node.js environments in development to prevent API routes side-effects
|
|
321
355
|
// from leaking into the dev server process.
|
|
322
|
-
return /^(
|
|
356
|
+
return /^(react|@radix-ui\/.+|@babel\/runtime\/.+|react-dom(\/.+)?|debug|acorn-loose|acorn|css-in-js-utils\/lib\/.+|hyphenate-style-name|color|color-string|color-convert|color-name|fontfaceobserver|fast-deep-equal|query-string|escape-string-regexp|invariant|postcss-value-parser|memoize-one|nullthrows|strict-uri-encode|decode-uri-component|split-on-first|filter-obj|warn-once|simple-swizzle|is-arrayish|inline-style-prefixer\/.+)$/.test(moduleName);
|
|
323
357
|
},
|
|
324
358
|
replace: 'node'
|
|
325
359
|
},
|
|
@@ -344,13 +378,19 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
344
378
|
replace: 'weak'
|
|
345
379
|
}
|
|
346
380
|
];
|
|
381
|
+
const skipMetroMainFieldOverride = _env.env.EXPO_METRO_NO_MAIN_FIELD_OVERRIDE;
|
|
382
|
+
const useExpoUnstableWebModule = _env.env.EXPO_UNSTABLE_WEB_MODAL;
|
|
383
|
+
const useExpoUnstableLogBox = _env.env.EXPO_UNSTABLE_LOG_BOX;
|
|
384
|
+
const disableReactNavigationCheck = _env.env.EXPO_ROUTER_DISABLE_RN_NAVIGATION_CHECK;
|
|
385
|
+
const disableNativeTabsMaterialSymbols = _env.env.EXPO_ROUTER_DISABLE_NATIVE_TABS_MD;
|
|
347
386
|
const metroConfigWithCustomResolver = (0, _withMetroResolvers.withMetroResolvers)(config, [
|
|
348
387
|
// Mock out production react imports in development.
|
|
349
388
|
function requestDevMockProdReact(context, moduleName, platform) {
|
|
389
|
+
var _getReactNativeHostPathPattern;
|
|
350
390
|
// This resolution is dev-only to prevent bundling the production React packages in development.
|
|
351
391
|
if (!context.dev) return null;
|
|
352
|
-
if (// Match react-native renderers.
|
|
353
|
-
platform !== 'web' && context.originModulePath
|
|
392
|
+
if (// Match react-native renderers (in the platform's react-native host package).
|
|
393
|
+
platform !== 'web' && ((_getReactNativeHostPathPattern = getReactNativeHostPathPattern(platform)) == null ? void 0 : _getReactNativeHostPathPattern.test(context.originModulePath)) && moduleName.match(/([\\/]ReactFabric|ReactNativeRenderer)-prod/) || // Match react production imports.
|
|
354
394
|
moduleName.match(/\.production(\.min)?\.js$/) && // Match if the import originated from a react package.
|
|
355
395
|
context.originModulePath.match(/[\\/]node_modules[\\/](react[-\\/]|scheduler[\\/])/)) {
|
|
356
396
|
debug(`Skipping production module: ${moduleName}`);
|
|
@@ -366,13 +406,12 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
366
406
|
}
|
|
367
407
|
return null;
|
|
368
408
|
},
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
},
|
|
409
|
+
isTsconfigPathsEnabled ? (0, _createTypescriptResolver.createTypescriptResolver)({
|
|
410
|
+
getStrictResolver,
|
|
411
|
+
projectRoot: config.projectRoot,
|
|
412
|
+
getMetroBundler,
|
|
413
|
+
watch: !isExporting && !_env.env.CI
|
|
414
|
+
}) : undefined,
|
|
376
415
|
// Node.js externals support
|
|
377
416
|
function requestNodeExternals(context, moduleName, platform) {
|
|
378
417
|
var _context_customResolverOptions, _context_customResolverOptions1;
|
|
@@ -510,8 +549,17 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
510
549
|
// TODO: Reduce these as much as possible in the future.
|
|
511
550
|
// Complex post-resolution rewrites.
|
|
512
551
|
function requestPostRewrites(context, moduleName, platform) {
|
|
513
|
-
|
|
514
|
-
|
|
552
|
+
// TODO(@kitten): replace and abstract doResolve logic, since it's unsafe and inefficient
|
|
553
|
+
function doResolve(moduleName) {
|
|
554
|
+
const projectRootContext = {
|
|
555
|
+
...context,
|
|
556
|
+
nodeModulesPaths: [],
|
|
557
|
+
originModulePath: projectRootOriginPath,
|
|
558
|
+
disableHierarchicalLookup: false
|
|
559
|
+
};
|
|
560
|
+
return getStrictResolver(projectRootContext, platform)(moduleName);
|
|
561
|
+
}
|
|
562
|
+
const result = getStrictResolver(context, platform)(moduleName);
|
|
515
563
|
if (result.type !== 'sourceFile') {
|
|
516
564
|
return result;
|
|
517
565
|
}
|
|
@@ -524,13 +572,46 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
524
572
|
const doReplaceStrict = (from, to)=>doReplace(from, to, {
|
|
525
573
|
throws: true
|
|
526
574
|
});
|
|
527
|
-
if (
|
|
575
|
+
if (useExpoUnstableWebModule) {
|
|
528
576
|
const webModalModule = doReplace('expo-router/build/layouts/_web-modal.js', 'expo-router/build/layouts/ExperimentalModalStack.js');
|
|
529
577
|
if (webModalModule) {
|
|
530
578
|
debug('Using `_unstable-web-modal` implementation.');
|
|
531
579
|
return webModalModule;
|
|
532
580
|
}
|
|
533
581
|
}
|
|
582
|
+
if (disableNativeTabsMaterialSymbols && platform === 'android') {
|
|
583
|
+
const materialIconConverterModule = doReplace('expo-router/build/native-tabs/utils/materialIconConverter.android.js', 'expo-router/build/native-tabs/utils/materialIconConverter-not-implemented.js');
|
|
584
|
+
if (materialIconConverterModule) {
|
|
585
|
+
debug('Disabling md support in NativeTabs to tree-shake `expo-symbols` from the Android bundle.');
|
|
586
|
+
return materialIconConverterModule;
|
|
587
|
+
}
|
|
588
|
+
}
|
|
589
|
+
if (!disableReactNavigationCheck) {
|
|
590
|
+
// TODO(@ubax): Remove this rewrite once we published migration guide for library authors
|
|
591
|
+
if (isExpoRouterInstalled && moduleName.startsWith('@react-navigation/')) {
|
|
592
|
+
const filePath = context.originModulePath;
|
|
593
|
+
if (!filePath.includes('node_modules')) {
|
|
594
|
+
if (moduleName === '@react-navigation/native-stack' || moduleName === '@react-navigation/drawer') {
|
|
595
|
+
throw new Error([
|
|
596
|
+
'As of SDK 56, expo-router is no longer compatible with react-navigation.',
|
|
597
|
+
'',
|
|
598
|
+
`Instead of ${moduleName}, use Stack or Drawer from expo-router instead:`,
|
|
599
|
+
'',
|
|
600
|
+
" import { Stack } from 'expo-router';",
|
|
601
|
+
" import { Drawer } from 'expo-router/drawer';",
|
|
602
|
+
'',
|
|
603
|
+
'For more information, see https://docs.expo.dev/router/migrate/sdk-55-to-56/.',
|
|
604
|
+
'You can disable this check by setting the environment variable EXPO_ROUTER_DISABLE_RN_NAVIGATION_CHECK=1.'
|
|
605
|
+
].join('\n'));
|
|
606
|
+
}
|
|
607
|
+
throw new Error('As of SDK 56, expo-router is no longer compatible with react-navigation. For more information, see https://docs.expo.dev/router/migrate/sdk-55-to-56/. You can disable this check by setting the environment variable EXPO_ROUTER_DISABLE_RN_NAVIGATION_CHECK=1.');
|
|
608
|
+
}
|
|
609
|
+
if (moduleName === '@react-navigation/core') {
|
|
610
|
+
// We already checked if expo-router resolves
|
|
611
|
+
return doResolve('expo-router/react-navigation');
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
}
|
|
534
615
|
if (platform === 'web') {
|
|
535
616
|
if (result.filePath.includes('node_modules')) {
|
|
536
617
|
// Disallow importing confusing native modules on web
|
|
@@ -562,20 +643,22 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
562
643
|
} else {
|
|
563
644
|
var _context_customResolverOptions, _context_customResolverOptions1;
|
|
564
645
|
const isServer = ((_context_customResolverOptions = context.customResolverOptions) == null ? void 0 : _context_customResolverOptions.environment) === 'node' || ((_context_customResolverOptions1 = context.customResolverOptions) == null ? void 0 : _context_customResolverOptions1.environment) === 'react-server';
|
|
646
|
+
const hostPackage = getReactNativeHostPackage(platform) ?? 'react-native';
|
|
565
647
|
// Shim out React Native native runtime globals in server mode for native.
|
|
566
648
|
if (isServer) {
|
|
567
|
-
const emptyModule = doReplace(
|
|
649
|
+
const emptyModule = doReplace(`${hostPackage}/Libraries/Core/InitializeCore.js`, undefined);
|
|
568
650
|
if (emptyModule) {
|
|
569
651
|
debug('Shimming out InitializeCore for React Native in native SSR bundle');
|
|
570
652
|
return emptyModule;
|
|
571
653
|
}
|
|
572
654
|
}
|
|
573
|
-
const hmrModule = doReplaceStrict(
|
|
655
|
+
const hmrModule = doReplaceStrict(`${hostPackage}/Libraries/Utilities/HMRClient.js`, 'expo/src/async-require/hmr.ts');
|
|
574
656
|
if (hmrModule) return hmrModule;
|
|
575
|
-
if (
|
|
576
|
-
|
|
657
|
+
if (useExpoUnstableLogBox) {
|
|
658
|
+
// TODO(@kitten): This can never resolve with isolated dependencies
|
|
659
|
+
const logBoxModule = doReplace(`${hostPackage}/Libraries/LogBox/LogBoxInspectorContainer.js`, '@expo/log-box/swap-rn-logbox.js');
|
|
577
660
|
if (logBoxModule) return logBoxModule;
|
|
578
|
-
const logBoxParserModule = doReplace(
|
|
661
|
+
const logBoxParserModule = doReplace(`${hostPackage}/Libraries/LogBox/Data/parseLogBoxLog.js`, '@expo/log-box/swap-rn-logbox-parser.js');
|
|
579
662
|
if (logBoxParserModule) return logBoxParserModule;
|
|
580
663
|
}
|
|
581
664
|
}
|
|
@@ -658,7 +741,7 @@ function withExtendedResolver(config, { tsconfig, autolinkingModuleResolverInput
|
|
|
658
741
|
}
|
|
659
742
|
} else {
|
|
660
743
|
// Non-server changes
|
|
661
|
-
if (!
|
|
744
|
+
if (!skipMetroMainFieldOverride && platform && platform in preferredMainFields) {
|
|
662
745
|
context.mainFields = preferredMainFields[platform];
|
|
663
746
|
}
|
|
664
747
|
}
|
|
@@ -695,55 +778,25 @@ function shouldAliasModule(input, alias) {
|
|
|
695
778
|
var _input_result, _input_result1;
|
|
696
779
|
return input.platform === alias.platform && ((_input_result = input.result) == null ? void 0 : _input_result.type) === 'sourceFile' && typeof ((_input_result1 = input.result) == null ? void 0 : _input_result1.filePath) === 'string' && normalizeSlashes(input.result.filePath).endsWith(alias.output);
|
|
697
780
|
}
|
|
698
|
-
async function withMetroMultiPlatformAsync(projectRoot, { config, exp, platformBundlers,
|
|
781
|
+
async function withMetroMultiPlatformAsync(projectRoot, { config, exp, platformBundlers, isTsconfigPathsEnabled, isAutolinkingResolverEnabled, isExporting, isReactServerComponentsEnabled, getMetroBundler }) {
|
|
699
782
|
const watchFolders = config.watchFolders || [];
|
|
700
783
|
asWritable(config).watchFolders = watchFolders;
|
|
784
|
+
// NOTE(@kitten): If the on-demand filesystem is enabled, we can aggressively cut down the `watchFolders`
|
|
785
|
+
// to a minimum, since the files will be read lazily. This almost always speeds up exports
|
|
786
|
+
if (isExporting && !!config.resolver.unstable_onDemandFilesystem) {
|
|
787
|
+
watchFolders.length = 0;
|
|
788
|
+
watchFolders.push(projectRoot);
|
|
789
|
+
}
|
|
701
790
|
// Change the default metro-runtime to a custom one that supports bundle splitting.
|
|
702
791
|
// NOTE(@kitten): This is now always active and EXPO_USE_METRO_REQUIRE / isNamedRequiresEnabled is disregarded
|
|
703
792
|
const metroDefaults = require('@expo/metro/metro-config/defaults/defaults');
|
|
704
793
|
const metroRequirePolyfill = require.resolve('@expo/cli/build/metro-require/require');
|
|
705
|
-
const metroOriginalModuleSystem = metroDefaults.moduleSystem;
|
|
706
794
|
asWritable(metroDefaults).moduleSystem = metroRequirePolyfill;
|
|
707
795
|
watchFolders.push(_path().default.dirname(metroRequirePolyfill));
|
|
708
796
|
// Required for @expo/metro-runtime to format paths in the web LogBox.
|
|
709
797
|
process.env.EXPO_PUBLIC_PROJECT_ROOT = process.env.EXPO_PUBLIC_PROJECT_ROOT ?? projectRoot;
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
if (!isDirectoryIn(__dirname, serverRoot ?? projectRoot)) {
|
|
713
|
-
var _exp_platforms, _exp_platforms1;
|
|
714
|
-
let reactNativePolyfills = [];
|
|
715
|
-
// Support web-only `expo start`
|
|
716
|
-
if (((_exp_platforms = exp.platforms) == null ? void 0 : _exp_platforms.includes('ios')) || ((_exp_platforms1 = exp.platforms) == null ? void 0 : _exp_platforms1.includes('android'))) {
|
|
717
|
-
try {
|
|
718
|
-
reactNativePolyfills = require('react-native/rn-get-polyfills')();
|
|
719
|
-
watchFolders.push(...(0, _resolveWatchFolders.resolveWatchFolders)('react-native', {
|
|
720
|
-
deep: false
|
|
721
|
-
}));
|
|
722
|
-
} catch (error) {
|
|
723
|
-
// If the project targets native platforms, react-native is required.
|
|
724
|
-
throw new _errors.CommandError('REACT_NATIVE_NOT_FOUND', 'Failed to resolve react-native. Make sure it is installed in the project dependencies. Remove native platforms from the Expo config if you do not intend to target native platforms.');
|
|
725
|
-
}
|
|
726
|
-
}
|
|
727
|
-
watchFolders.push(...(0, _resolveWatchFolders.resolveWatchFolders)('expo', {
|
|
728
|
-
deep: true
|
|
729
|
-
}), ...(0, _resolveWatchFolders.resolveWatchFolders)('@expo/metro', {
|
|
730
|
-
deep: true
|
|
731
|
-
}), ...(0, _resolveWatchFolders.resolveWatchFolders)('@expo/metro-runtime', {
|
|
732
|
-
deep: true
|
|
733
|
-
}), ...[
|
|
734
|
-
config.resolver.emptyModulePath,
|
|
735
|
-
metroOriginalModuleSystem,
|
|
736
|
-
...reactNativePolyfills
|
|
737
|
-
].map((targetPath)=>_fs().default.existsSync(targetPath) ? _path().default.dirname(targetPath) : null).filter((targetPath)=>targetPath != null));
|
|
738
|
-
}
|
|
739
|
-
let tsconfig = null;
|
|
740
|
-
if (isTsconfigPathsEnabled) {
|
|
741
|
-
tsconfig = await (0, _loadTsConfigPaths.loadTsConfigPathsAsync)(projectRoot);
|
|
742
|
-
}
|
|
743
|
-
let expoConfigPlatforms = Object.entries(platformBundlers).filter(([platform, bundler])=>{
|
|
744
|
-
var _exp_platforms;
|
|
745
|
-
return bundler === 'metro' && ((_exp_platforms = exp.platforms) == null ? void 0 : _exp_platforms.includes(platform));
|
|
746
|
-
}).map(([platform])=>platform);
|
|
798
|
+
const configPlatforms = (0, _config().getPlatformsFromConfig)(projectRoot, exp);
|
|
799
|
+
let expoConfigPlatforms = Object.entries(platformBundlers).filter(([platform, bundler])=>bundler === 'metro' && configPlatforms.includes(platform)).map(([platform])=>platform);
|
|
747
800
|
if (Array.isArray(config.resolver.platforms)) {
|
|
748
801
|
expoConfigPlatforms = [
|
|
749
802
|
...new Set(expoConfigPlatforms.concat(config.resolver.platforms))
|
|
@@ -762,15 +815,23 @@ async function withMetroMultiPlatformAsync(projectRoot, { config, exp, platformB
|
|
|
762
815
|
}
|
|
763
816
|
return withExtendedResolver(config, {
|
|
764
817
|
autolinkingModuleResolverInput,
|
|
765
|
-
tsconfig,
|
|
766
|
-
isExporting,
|
|
767
818
|
isTsconfigPathsEnabled,
|
|
819
|
+
isExporting,
|
|
768
820
|
isReactServerComponentsEnabled,
|
|
769
821
|
getMetroBundler
|
|
770
822
|
});
|
|
771
823
|
}
|
|
772
|
-
function
|
|
773
|
-
|
|
824
|
+
function hasExpoRouterModule(projectRoot, autolinkingModuleResolverInput) {
|
|
825
|
+
if (autolinkingModuleResolverInput) {
|
|
826
|
+
var _autolinkingModuleResolverInput_platform;
|
|
827
|
+
// If we have autolinking enabled, we can skip resolution
|
|
828
|
+
const platform = Object.keys(autolinkingModuleResolverInput)[0];
|
|
829
|
+
return !!((_autolinkingModuleResolverInput_platform = autolinkingModuleResolverInput[platform]) == null ? void 0 : _autolinkingModuleResolverInput_platform.resolvedModulePaths['expo-router']);
|
|
830
|
+
} else {
|
|
831
|
+
return !!(0, _requireutils().resolveFrom)(projectRoot, 'expo-router/package.json', {
|
|
832
|
+
skipNodePath: true
|
|
833
|
+
});
|
|
834
|
+
}
|
|
774
835
|
}
|
|
775
836
|
|
|
776
837
|
//# sourceMappingURL=withMetroMultiPlatform.js.map
|