@expo/cli 0.17.9 → 0.18.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/build/bin/cli +11 -7
- package/build/bin/cli.map +1 -1
- package/build/src/api/getExpoSchema.js +23 -5
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/graphql/client.js +28 -10
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +16 -4
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +8 -2
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +8 -2
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemCache.js +21 -9
- package/build/src/api/rest/cache/FileSystemCache.js.map +1 -1
- package/build/src/api/rest/cache/response.js +9 -3
- package/build/src/api/rest/cache/response.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +32 -8
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +23 -5
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +9 -4
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +8 -2
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/settings.js +8 -2
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +18 -6
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +26 -8
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +17 -5
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +32 -8
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +17 -5
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +19 -12
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +25 -7
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +9 -3
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +8 -2
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +16 -4
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +10 -4
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/templates.js +33 -9
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +8 -2
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +8 -2
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +58 -18
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/index.js +17 -5
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +8 -2
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +16 -4
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +32 -12
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +27 -9
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +10 -2
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportHermes.js +29 -17
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +69 -37
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +33 -9
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/fork-bundleAsync.js +61 -16
- package/build/src/export/fork-bundleAsync.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +8 -2
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +15 -3
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/index.js +11 -5
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +9 -3
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +27 -15
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +18 -6
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +8 -2
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +43 -19
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +16 -4
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +9 -3
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/install/applyPlugins.js +8 -2
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +18 -6
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +8 -2
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +14 -8
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +27 -9
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +17 -5
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +17 -5
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/log.js +9 -3
- package/build/src/log.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +37 -13
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +16 -4
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +29 -11
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +24 -6
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +14 -8
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +9 -3
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +119 -0
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -0
- package/build/src/prebuild/resolveOptions.js +32 -8
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +44 -14
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +18 -2
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +49 -13
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +16 -4
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/run/android/index.js +20 -4
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +55 -0
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -0
- package/build/src/run/android/resolveInstallApkName.js +18 -6
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +10 -4
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +5 -3
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +13 -4
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +15 -3
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +10 -4
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +8 -2
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +57 -21
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +25 -7
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +10 -4
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +34 -10
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +16 -4
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +8 -2
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +17 -5
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +17 -5
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +25 -7
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +24 -6
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +8 -2
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +16 -4
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +8 -2
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +16 -4
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +16 -4
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +17 -5
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +8 -2
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +9 -3
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +25 -7
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +22 -10
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +19 -7
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +17 -5
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +9 -3
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +1 -2
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +27 -9
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +8 -2
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +10 -2
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/startBundler.js +16 -4
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/start/detectDevClient.js +29 -0
- package/build/src/start/detectDevClient.js.map +1 -0
- package/build/src/start/doctor/SecurityBinPrerequisite.js +8 -2
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +16 -4
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +16 -4
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +79 -29
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +24 -6
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +25 -7
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +27 -9
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +24 -6
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +8 -2
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +25 -7
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +32 -21
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +33 -9
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +18 -6
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +29 -11
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +18 -6
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +17 -11
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +27 -9
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +17 -11
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +8 -2
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +9 -3
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +8 -2
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +30 -14
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +33 -13
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +17 -5
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +13 -7
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +19 -7
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidSdk.js +34 -10
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +16 -4
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +21 -4
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +32 -8
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +23 -6
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +10 -4
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +26 -8
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +50 -18
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/assertSystemRequirements.js +4 -3
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +16 -4
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +8 -2
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +9 -3
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +12 -6
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +40 -10
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +16 -4
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/dotExpo.js +27 -9
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/resolveOptions.js +33 -15
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +34 -10
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +16 -4
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +28 -10
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +16 -4
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +9 -3
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +26 -8
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +19 -6
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +91 -55
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +231 -83
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +30 -15
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +26 -8
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +56 -20
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +90 -45
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +29 -28
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +27 -0
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -0
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +11 -8
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +63 -0
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -0
- package/build/src/start/server/metro/debugging/{inspectorHandlers/utils.js → getDebuggerType.js} +1 -6
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -0
- package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/NetworkResponse.js +8 -5
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -0
- package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/PageReload.js +7 -6
- package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js.map +1 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +25 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +22 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +28 -0
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
- package/build/src/start/server/metro/debugging/{inspectorHandlers → messageHandlers}/VscodeRuntimeGetProperties.js +10 -6
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -0
- package/build/src/start/server/metro/debugging/pageIsSupported.js +14 -0
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -0
- package/build/src/start/server/metro/debugging/types.js.map +1 -0
- package/build/src/start/server/metro/externals.js +51 -64
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +8 -2
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +8 -2
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +34 -10
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +96 -30
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +40 -21
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +82 -0
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -0
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +8 -2
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +44 -17
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +56 -14
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +25 -12
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +8 -2
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +148 -46
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +31 -13
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +22 -10
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +16 -4
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +42 -12
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +8 -2
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +41 -11
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +40 -10
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +24 -6
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +8 -2
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +24 -6
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +25 -8
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js +10 -4
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +24 -6
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +33 -9
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +27 -11
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +33 -9
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +12 -2
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +17 -5
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +8 -2
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +8 -2
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +37 -13
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +16 -4
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +91 -37
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +27 -9
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +27 -9
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +26 -8
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +36 -12
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +17 -5
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +8 -2
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +35 -11
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +36 -11
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +32 -8
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/analytics/getDevClientProperties.js +26 -8
- package/build/src/utils/analytics/getDevClientProperties.js.map +1 -1
- package/build/src/utils/analytics/metroDebuggerMiddleware.js +2 -2
- package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -1
- package/build/src/utils/args.js +32 -8
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/cocoapods.js +64 -28
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +79 -29
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +24 -69
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/dir.js +33 -26
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +40 -10
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +26 -11
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +18 -6
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +40 -31
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +20 -5
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/findUp.js +18 -6
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +19 -7
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +18 -6
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +18 -6
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +9 -3
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/ip.js +8 -2
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +16 -4
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/link.js +18 -6
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +25 -13
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +18 -6
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +8 -2
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/nodeEnv.js +2 -0
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +23 -5
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +64 -17
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/open.js +9 -3
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +16 -4
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +24 -6
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +22 -10
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +8 -2
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +8 -2
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +16 -4
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/scheme.js +75 -23
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/tar.js +16 -4
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/DetachedClient.js +87 -0
- package/build/src/utils/telemetry/DetachedClient.js.map +1 -0
- package/build/src/utils/telemetry/RudderClient.js +98 -0
- package/build/src/utils/telemetry/RudderClient.js.map +1 -0
- package/build/src/utils/telemetry/flushDetached.js +43 -0
- package/build/src/utils/telemetry/flushDetached.js.map +1 -0
- package/build/src/utils/telemetry/getContext.js +92 -0
- package/build/src/utils/telemetry/getContext.js.map +1 -0
- package/build/src/utils/telemetry/index.js +32 -0
- package/build/src/utils/telemetry/index.js.map +1 -0
- package/build/src/utils/telemetry/types.js +6 -0
- package/build/src/utils/telemetry/types.js.map +1 -0
- package/build/src/utils/tsconfig/evaluateTsConfig.js +16 -4
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -6
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +10 -4
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +19 -10
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +18 -6
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +8 -2
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +15 -16
- package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-dev.js +27907 -0
- package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-prod.js +9494 -0
- package/static/canary/react-native/Libraries/Renderer/implementations/ReactFabric-profiling.js +10015 -0
- package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +28375 -0
- package/static/canary/react-native/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +9714 -0
- package/build/src/run/android/resolveGradleProps.js +0 -37
- package/build/src/run/android/resolveGradleProps.js.map +0 -1
- package/build/src/start/server/metro/bundleApiRoutes.js +0 -52
- package/build/src/start/server/metro/bundleApiRoutes.js.map +0 -1
- package/build/src/start/server/metro/debugging/InspectorDevice.js +0 -80
- package/build/src/start/server/metro/debugging/InspectorDevice.js.map +0 -1
- package/build/src/start/server/metro/debugging/InspectorProxy.js +0 -116
- package/build/src/start/server/metro/debugging/InspectorProxy.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/NetworkResponse.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/PageReload.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js +0 -21
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js +0 -56
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerScriptParsed.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js +0 -18
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js +0 -24
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeCallFunctionOn.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/VscodeRuntimeGetProperties.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/types.js.map +0 -1
- package/build/src/start/server/metro/debugging/inspectorHandlers/utils.js.map +0 -1
- package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +0 -38
- package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +0 -1
- package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +0 -38
- package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +0 -1
- package/build/src/start/server/type-generation/__typetests__/route.test.js +0 -184
- package/build/src/start/server/type-generation/__typetests__/route.test.js.map +0 -1
- package/build/src/utils/analytics/rudderstackClient.js +0 -147
- package/build/src/utils/analytics/rudderstackClient.js.map +0 -1
- /package/build/src/start/server/metro/debugging/{inspectorHandlers/types.js → types.js} +0 -0
|
@@ -3,24 +3,61 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
5
|
exports.getDeepLinkHandler = getDeepLinkHandler;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
function _config() {
|
|
7
|
+
const data = require("@expo/config");
|
|
8
|
+
_config = function() {
|
|
9
|
+
return data;
|
|
10
|
+
};
|
|
11
|
+
return data;
|
|
12
|
+
}
|
|
13
|
+
function runtimeEnv() {
|
|
14
|
+
const data = _interopRequireWildcard(require("@expo/env"));
|
|
15
|
+
runtimeEnv = function() {
|
|
16
|
+
return data;
|
|
17
|
+
};
|
|
18
|
+
return data;
|
|
19
|
+
}
|
|
20
|
+
function _assert() {
|
|
21
|
+
const data = _interopRequireDefault(require("assert"));
|
|
22
|
+
_assert = function() {
|
|
23
|
+
return data;
|
|
24
|
+
};
|
|
25
|
+
return data;
|
|
26
|
+
}
|
|
27
|
+
function _chalk() {
|
|
28
|
+
const data = _interopRequireDefault(require("chalk"));
|
|
29
|
+
_chalk = function() {
|
|
30
|
+
return data;
|
|
31
|
+
};
|
|
32
|
+
return data;
|
|
33
|
+
}
|
|
34
|
+
function _nodeFetch() {
|
|
35
|
+
const data = _interopRequireDefault(require("node-fetch"));
|
|
36
|
+
_nodeFetch = function() {
|
|
37
|
+
return data;
|
|
38
|
+
};
|
|
39
|
+
return data;
|
|
40
|
+
}
|
|
41
|
+
function _path() {
|
|
42
|
+
const data = _interopRequireDefault(require("path"));
|
|
43
|
+
_path = function() {
|
|
44
|
+
return data;
|
|
45
|
+
};
|
|
46
|
+
return data;
|
|
47
|
+
}
|
|
12
48
|
var _createServerRouteMiddleware = require("./createServerRouteMiddleware");
|
|
13
49
|
var _fetchRouterManifest = require("./fetchRouterManifest");
|
|
14
50
|
var _instantiateMetro = require("./instantiateMetro");
|
|
51
|
+
var _metroErrorInterface = require("./metroErrorInterface");
|
|
15
52
|
var _metroWatchTypeScriptFiles = require("./metroWatchTypeScriptFiles");
|
|
16
53
|
var _router = require("./router");
|
|
17
54
|
var _serializeHtml = require("./serializeHtml");
|
|
18
55
|
var _waitForMetroToObserveTypeScriptFile = require("./waitForMetroToObserveTypeScriptFile");
|
|
19
56
|
var _log = require("../../../log");
|
|
20
57
|
var _getDevClientProperties = _interopRequireDefault(require("../../../utils/analytics/getDevClientProperties"));
|
|
21
|
-
var _rudderstackClient = require("../../../utils/analytics/rudderstackClient");
|
|
22
58
|
var _errors = require("../../../utils/errors");
|
|
23
59
|
var _port = require("../../../utils/port");
|
|
60
|
+
var _telemetry = require("../../../utils/telemetry");
|
|
24
61
|
var _bundlerDevServer = require("../BundlerDevServer");
|
|
25
62
|
var _getStaticRenderFunctions = require("../getStaticRenderFunctions");
|
|
26
63
|
var _contextModuleSourceMapsMiddleware = require("../middleware/ContextModuleSourceMapsMiddleware");
|
|
@@ -85,26 +122,42 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
85
122
|
(options.devClient ? Number(process.env.RCT_METRO_PORT) || DEV_CLIENT_METRO_PORT : await (0, _port).getFreePortAsync(EXPO_GO_METRO_PORT));
|
|
86
123
|
return port;
|
|
87
124
|
}
|
|
88
|
-
async exportExpoRouterApiRoutesAsync({
|
|
89
|
-
const
|
|
125
|
+
async exportExpoRouterApiRoutesAsync({ includeSourceMaps , outputDir , prerenderManifest }) {
|
|
126
|
+
const { routerRoot } = this.instanceMetroOptions;
|
|
127
|
+
_assert().default(routerRoot != null, "The server must be started before calling exportExpoRouterApiRoutesAsync.");
|
|
128
|
+
const appDir = _path().default.join(this.projectRoot, routerRoot);
|
|
90
129
|
const manifest = await this.getExpoRouterRoutesManifestAsync({
|
|
91
130
|
appDir
|
|
92
131
|
});
|
|
93
132
|
const files = new Map();
|
|
94
133
|
for (const route of manifest.apiRoutes){
|
|
95
|
-
|
|
96
|
-
const
|
|
97
|
-
const
|
|
98
|
-
mode,
|
|
99
|
-
routerRoot,
|
|
100
|
-
port: (ref = this.getInstance()) == null ? void 0 : ref.location.port,
|
|
101
|
-
shouldThrow: true,
|
|
102
|
-
baseUrl
|
|
103
|
-
});
|
|
104
|
-
const artifactFilename = _path.default.join(outputDir, _path.default.relative(appDir, filepath.replace(/\.[tj]sx?$/, ".js")));
|
|
134
|
+
const filepath = _path().default.join(appDir, route.file);
|
|
135
|
+
const contents = await this.bundleApiRoute(filepath);
|
|
136
|
+
const artifactFilename = _path().default.join(outputDir, _path().default.relative(appDir, filepath.replace(/\.[tj]sx?$/, ".js")));
|
|
105
137
|
if (contents) {
|
|
138
|
+
let src = contents.src;
|
|
139
|
+
if (includeSourceMaps && contents.map) {
|
|
140
|
+
// TODO(kitten): Merge the source map transformer in the future
|
|
141
|
+
// https://github.com/expo/expo/blob/0dffdb15/packages/%40expo/metro-config/src/serializer/serializeChunks.ts#L422-L439
|
|
142
|
+
// Alternatively, check whether `sourcesRoot` helps here
|
|
143
|
+
const artifactBasename = encodeURIComponent(_path().default.basename(artifactFilename) + ".map");
|
|
144
|
+
src = src.replace(/\/\/# sourceMappingURL=.*/g, `//# sourceMappingURL=${artifactBasename}`);
|
|
145
|
+
files.set(artifactFilename + ".map", {
|
|
146
|
+
contents: JSON.stringify({
|
|
147
|
+
version: contents.map.version,
|
|
148
|
+
sources: contents.map.sources.map((source)=>{
|
|
149
|
+
source = typeof source === "string" && source.startsWith(this.projectRoot) ? _path().default.relative(this.projectRoot, source) : source;
|
|
150
|
+
return source.split(_path().default.sep).join("/");
|
|
151
|
+
}),
|
|
152
|
+
sourcesContent: new Array(contents.map.sources.length).fill(null),
|
|
153
|
+
names: contents.map.names,
|
|
154
|
+
mappings: contents.map.mappings
|
|
155
|
+
}),
|
|
156
|
+
targetDomain: "server"
|
|
157
|
+
});
|
|
158
|
+
}
|
|
106
159
|
files.set(artifactFilename, {
|
|
107
|
-
contents:
|
|
160
|
+
contents: src,
|
|
108
161
|
targetDomain: "server"
|
|
109
162
|
});
|
|
110
163
|
}
|
|
@@ -130,21 +183,19 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
130
183
|
}
|
|
131
184
|
return manifest;
|
|
132
185
|
}
|
|
133
|
-
async getStaticRenderFunctionAsync(
|
|
186
|
+
async getStaticRenderFunctionAsync() {
|
|
187
|
+
const { mode , minify , isExporting } = this.instanceMetroOptions;
|
|
188
|
+
_assert().default(mode != null && minify != null && isExporting != null, "The server must be started before calling ssrLoadModule.");
|
|
134
189
|
const url = this.getDevServerUrl();
|
|
135
|
-
const { getStaticContent , getManifest , getBuildTimeServerManifestAsync } = await
|
|
190
|
+
const { getStaticContent , getManifest , getBuildTimeServerManifestAsync } = await this.ssrLoadModule("expo-router/node/render.js", {
|
|
136
191
|
minify,
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
environment: "node",
|
|
140
|
-
baseUrl,
|
|
141
|
-
routerRoot
|
|
192
|
+
mode,
|
|
193
|
+
isExporting
|
|
142
194
|
});
|
|
143
195
|
return {
|
|
144
196
|
serverManifest: await getBuildTimeServerManifestAsync(),
|
|
145
197
|
// Get routes from Expo Router.
|
|
146
198
|
manifest: await getManifest({
|
|
147
|
-
fetchData: true,
|
|
148
199
|
preserveApiRoutes: false
|
|
149
200
|
}),
|
|
150
201
|
// Get route generating function
|
|
@@ -153,17 +204,20 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
153
204
|
}
|
|
154
205
|
};
|
|
155
206
|
}
|
|
156
|
-
async getStaticResourcesAsync({
|
|
207
|
+
async getStaticResourcesAsync({ includeSourceMaps , mainModuleName } = {}) {
|
|
157
208
|
var ref;
|
|
209
|
+
const { mode , minify , isExporting , baseUrl , routerRoot , asyncRoutes } = this.instanceMetroOptions;
|
|
210
|
+
_assert().default(mode != null && minify != null && isExporting != null && baseUrl != null && routerRoot != null && asyncRoutes != null, "The server must be started before calling getStaticPageAsync.");
|
|
211
|
+
const platform = "web";
|
|
158
212
|
const devBundleUrlPathname = (0, _metroOptions).createBundleUrlPath({
|
|
159
|
-
platform
|
|
213
|
+
platform,
|
|
160
214
|
mode,
|
|
161
215
|
minify,
|
|
162
216
|
environment: "client",
|
|
163
217
|
serializerOutput: "static",
|
|
164
218
|
serializerIncludeMaps: includeSourceMaps,
|
|
165
219
|
mainModuleName: mainModuleName != null ? mainModuleName : (0, _manifestMiddleware).resolveMainModuleName(this.projectRoot, {
|
|
166
|
-
platform
|
|
220
|
+
platform
|
|
167
221
|
}),
|
|
168
222
|
lazy: (0, _metroOptions).shouldEnableAsyncImports(this.projectRoot),
|
|
169
223
|
asyncRoutes,
|
|
@@ -174,7 +228,7 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
174
228
|
});
|
|
175
229
|
const bundleUrl = new URL(devBundleUrlPathname, this.getDevServerUrl());
|
|
176
230
|
// Fetch the generated HTML from our custom Metro serializer
|
|
177
|
-
const results = await (
|
|
231
|
+
const results = await _nodeFetch().default(bundleUrl.toString());
|
|
178
232
|
const txt = await results.text();
|
|
179
233
|
let data;
|
|
180
234
|
try {
|
|
@@ -214,13 +268,16 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
214
268
|
}
|
|
215
269
|
throw new Error("Invalid resources returned from the Metro serializer. Expected array, found: " + data);
|
|
216
270
|
}
|
|
217
|
-
async getStaticPageAsync(pathname
|
|
271
|
+
async getStaticPageAsync(pathname) {
|
|
272
|
+
const { mode , minify , isExporting , baseUrl , routerRoot , asyncRoutes } = this.instanceMetroOptions;
|
|
273
|
+
_assert().default(mode != null && minify != null && isExporting != null && baseUrl != null && routerRoot != null && asyncRoutes != null, "The server must be started before calling getStaticPageAsync.");
|
|
274
|
+
const platform = "web";
|
|
218
275
|
const devBundleUrlPathname = (0, _metroOptions).createBundleUrlPath({
|
|
219
|
-
platform
|
|
276
|
+
platform,
|
|
220
277
|
mode,
|
|
221
278
|
environment: "client",
|
|
222
279
|
mainModuleName: (0, _manifestMiddleware).resolveMainModuleName(this.projectRoot, {
|
|
223
|
-
platform
|
|
280
|
+
platform
|
|
224
281
|
}),
|
|
225
282
|
lazy: (0, _metroOptions).shouldEnableAsyncImports(this.projectRoot),
|
|
226
283
|
baseUrl,
|
|
@@ -230,30 +287,21 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
230
287
|
bytecode: false
|
|
231
288
|
});
|
|
232
289
|
const bundleStaticHtml = async ()=>{
|
|
233
|
-
const { getStaticContent } = await
|
|
290
|
+
const { getStaticContent } = await this.ssrLoadModule("expo-router/node/render.js", {
|
|
234
291
|
minify: false,
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
baseUrl,
|
|
239
|
-
routerRoot
|
|
292
|
+
mode,
|
|
293
|
+
isExporting,
|
|
294
|
+
platform
|
|
240
295
|
});
|
|
241
296
|
const location = new URL(pathname, this.getDevServerUrl());
|
|
242
297
|
return await getStaticContent(location);
|
|
243
298
|
};
|
|
244
299
|
const [{ artifacts: resources }, staticHtml] = await Promise.all([
|
|
245
|
-
this.getStaticResourcesAsync(
|
|
246
|
-
isExporting,
|
|
247
|
-
mode,
|
|
248
|
-
minify,
|
|
249
|
-
baseUrl,
|
|
250
|
-
asyncRoutes,
|
|
251
|
-
routerRoot
|
|
252
|
-
}),
|
|
300
|
+
this.getStaticResourcesAsync(),
|
|
253
301
|
bundleStaticHtml(),
|
|
254
302
|
]);
|
|
255
303
|
const content = (0, _serializeHtml).serializeHtmlWithAssets({
|
|
256
|
-
|
|
304
|
+
isExporting,
|
|
257
305
|
resources,
|
|
258
306
|
template: staticHtml,
|
|
259
307
|
devBundleUrl: devBundleUrlPathname,
|
|
@@ -264,6 +312,40 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
264
312
|
resources
|
|
265
313
|
};
|
|
266
314
|
}
|
|
315
|
+
// Set when the server is started.
|
|
316
|
+
instanceMetroOptions = {};
|
|
317
|
+
async ssrLoadModule(filePath, specificOptions = {}) {
|
|
318
|
+
const { baseUrl , routerRoot , isExporting } = this.instanceMetroOptions;
|
|
319
|
+
_assert().default(baseUrl != null && routerRoot != null && isExporting != null, "The server must be started before calling ssrLoadModule.");
|
|
320
|
+
return (await (0, _getStaticRenderFunctions).getStaticRenderFunctionsForEntry(this.projectRoot, this.getDevServerUrl(), {
|
|
321
|
+
// Bundle in Node.js mode for SSR.
|
|
322
|
+
environment: "node",
|
|
323
|
+
platform: "web",
|
|
324
|
+
mode: "development",
|
|
325
|
+
bytecode: false,
|
|
326
|
+
...this.instanceMetroOptions,
|
|
327
|
+
baseUrl,
|
|
328
|
+
routerRoot,
|
|
329
|
+
isExporting,
|
|
330
|
+
...specificOptions
|
|
331
|
+
}, filePath)).fn;
|
|
332
|
+
}
|
|
333
|
+
async ssrLoadModuleContents(filePath, specificOptions = {}) {
|
|
334
|
+
const { baseUrl , routerRoot , isExporting } = this.instanceMetroOptions;
|
|
335
|
+
_assert().default(baseUrl != null && routerRoot != null && isExporting != null, "The server must be started before calling ssrLoadModule.");
|
|
336
|
+
return await (0, _getStaticRenderFunctions).requireFileContentsWithMetro(this.projectRoot, this.getDevServerUrl(), filePath, {
|
|
337
|
+
// Bundle in Node.js mode for SSR.
|
|
338
|
+
environment: "node",
|
|
339
|
+
platform: "web",
|
|
340
|
+
mode: "development",
|
|
341
|
+
bytecode: false,
|
|
342
|
+
...this.instanceMetroOptions,
|
|
343
|
+
baseUrl,
|
|
344
|
+
routerRoot,
|
|
345
|
+
isExporting,
|
|
346
|
+
...specificOptions
|
|
347
|
+
});
|
|
348
|
+
}
|
|
267
349
|
async watchEnvironmentVariables() {
|
|
268
350
|
if (!this.instance) {
|
|
269
351
|
throw new Error("Cannot observe environment variable changes without a running Metro instance.");
|
|
@@ -274,7 +356,7 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
274
356
|
debug("Skipping Environment Variable observation because Metro is not running (headless).");
|
|
275
357
|
return;
|
|
276
358
|
}
|
|
277
|
-
const envFiles = runtimeEnv.getFiles(process.env.NODE_ENV).map((fileName)=>_path.default.join(this.projectRoot, fileName)
|
|
359
|
+
const envFiles = runtimeEnv().getFiles(process.env.NODE_ENV).map((fileName)=>_path().default.join(this.projectRoot, fileName)
|
|
278
360
|
);
|
|
279
361
|
(0, _waitForMetroToObserveTypeScriptFile).observeFileChanges({
|
|
280
362
|
metro: this.metro,
|
|
@@ -282,14 +364,42 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
282
364
|
}, envFiles, ()=>{
|
|
283
365
|
debug("Reloading environment variables...");
|
|
284
366
|
// Force reload the environment variables.
|
|
285
|
-
runtimeEnv.load(this.projectRoot, {
|
|
367
|
+
runtimeEnv().load(this.projectRoot, {
|
|
286
368
|
force: true
|
|
287
369
|
});
|
|
288
370
|
});
|
|
289
371
|
}
|
|
372
|
+
getExpoLineOptions() {
|
|
373
|
+
return this.instanceMetroOptions;
|
|
374
|
+
}
|
|
290
375
|
async startImplementationAsync(options) {
|
|
376
|
+
var ref3;
|
|
291
377
|
options.port = await this.resolvePortAsync(options);
|
|
292
378
|
this.urlCreator = this.getUrlCreator(options);
|
|
379
|
+
const config = _config().getConfig(this.projectRoot, {
|
|
380
|
+
skipSDKVersionRequirement: true
|
|
381
|
+
});
|
|
382
|
+
const { exp } = config;
|
|
383
|
+
var ref1;
|
|
384
|
+
const useServerRendering = [
|
|
385
|
+
"static",
|
|
386
|
+
"server"
|
|
387
|
+
].includes((ref1 = (ref3 = exp.web) == null ? void 0 : ref3.output) != null ? ref1 : "");
|
|
388
|
+
const baseUrl = (0, _metroOptions).getBaseUrlFromExpoConfig(exp);
|
|
389
|
+
var _mode;
|
|
390
|
+
const asyncRoutes = (0, _metroOptions).getAsyncRoutesFromExpoConfig(exp, (_mode = options.mode) != null ? _mode : "development", "web");
|
|
391
|
+
const routerRoot = (0, _router).getRouterDirectoryModuleIdWithManifest(this.projectRoot, exp);
|
|
392
|
+
const appDir = _path().default.join(this.projectRoot, routerRoot);
|
|
393
|
+
var _mode1;
|
|
394
|
+
const mode = (_mode1 = options.mode) != null ? _mode1 : "development";
|
|
395
|
+
this.instanceMetroOptions = {
|
|
396
|
+
isExporting: !!options.isExporting,
|
|
397
|
+
baseUrl,
|
|
398
|
+
mode,
|
|
399
|
+
routerRoot,
|
|
400
|
+
minify: options.minify,
|
|
401
|
+
asyncRoutes
|
|
402
|
+
};
|
|
293
403
|
const parsedOptions = {
|
|
294
404
|
port: options.port,
|
|
295
405
|
maxWorkers: options.maxWorkers,
|
|
@@ -335,43 +445,19 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
335
445
|
middleware.use(new _createFileMiddleware.CreateFileMiddleware(this.projectRoot).getHandler());
|
|
336
446
|
// Append support for redirecting unhandled requests to the index.html page on web.
|
|
337
447
|
if (this.isTargetingWeb()) {
|
|
338
|
-
var ref3;
|
|
339
|
-
const config = (0, _config).getConfig(this.projectRoot, {
|
|
340
|
-
skipSDKVersionRequirement: true
|
|
341
|
-
});
|
|
342
|
-
const { exp } = config;
|
|
343
|
-
var ref1;
|
|
344
|
-
const useServerRendering = [
|
|
345
|
-
"static",
|
|
346
|
-
"server"
|
|
347
|
-
].includes((ref1 = (ref3 = exp.web) == null ? void 0 : ref3.output) != null ? ref1 : "");
|
|
348
448
|
// This MUST be after the manifest middleware so it doesn't have a chance to serve the template `public/index.html`.
|
|
349
449
|
middleware.use(new _serveStaticMiddleware.ServeStaticMiddleware(this.projectRoot).getHandler());
|
|
350
450
|
// This should come after the static middleware so it doesn't serve the favicon from `public/favicon.ico`.
|
|
351
451
|
middleware.use(new _faviconMiddleware.FaviconMiddleware(this.projectRoot).getHandler());
|
|
352
452
|
if (useServerRendering) {
|
|
353
|
-
const baseUrl = (0, _metroOptions).getBaseUrlFromExpoConfig(exp);
|
|
354
|
-
var _mode1;
|
|
355
|
-
const asyncRoutes = (0, _metroOptions).getAsyncRoutesFromExpoConfig(exp, (_mode1 = options.mode) != null ? _mode1 : "development", "web");
|
|
356
|
-
const routerRoot = (0, _router).getRouterDirectoryModuleIdWithManifest(this.projectRoot, exp);
|
|
357
|
-
const appDir = _path.default.join(this.projectRoot, routerRoot);
|
|
358
453
|
middleware.use((0, _createServerRouteMiddleware).createRouteHandlerMiddleware(this.projectRoot, {
|
|
359
|
-
...options,
|
|
360
454
|
appDir,
|
|
361
|
-
baseUrl,
|
|
362
455
|
routerRoot,
|
|
363
456
|
config,
|
|
364
|
-
|
|
457
|
+
bundleApiRoute: (functionFilePath)=>this.ssrImportApiRoute(functionFilePath)
|
|
458
|
+
,
|
|
365
459
|
getStaticPageAsync: (pathname)=>{
|
|
366
|
-
|
|
367
|
-
return this.getStaticPageAsync(pathname, {
|
|
368
|
-
isExporting: !!options.isExporting,
|
|
369
|
-
mode: (_mode = options.mode) != null ? _mode : "development",
|
|
370
|
-
minify: options.minify,
|
|
371
|
-
baseUrl,
|
|
372
|
-
asyncRoutes,
|
|
373
|
-
routerRoot
|
|
374
|
-
});
|
|
460
|
+
return this.getStaticPageAsync(pathname);
|
|
375
461
|
}
|
|
376
462
|
}));
|
|
377
463
|
(0, _waitForMetroToObserveTypeScriptFile).observeAnyFileChanges({
|
|
@@ -385,7 +471,7 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
385
471
|
// cases where the user is making subsequent requests to the same API route without changing anything.
|
|
386
472
|
// This is useful for testing but pretty suboptimal. Luckily our caching is pretty aggressive so it makes
|
|
387
473
|
// up for a lot of the overhead.
|
|
388
|
-
|
|
474
|
+
this.invalidateApiRouteCache();
|
|
389
475
|
} else if (!(0, _router).hasWarnedAboutApiRoutes()) {
|
|
390
476
|
for (const event of events){
|
|
391
477
|
var // If the user did not delete a file that matches the Expo Router API Route convention, then we should warn that
|
|
@@ -464,7 +550,7 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
464
550
|
// Ensure the process doesn't fail if the TypeScript check fails.
|
|
465
551
|
// This could happen during the install.
|
|
466
552
|
_log.Log.log();
|
|
467
|
-
_log.Log.error(_chalk.default.red`Failed to automatically setup TypeScript for your project. Try restarting the dev server to fix.`);
|
|
553
|
+
_log.Log.error(_chalk().default.red`Failed to automatically setup TypeScript for your project. Try restarting the dev server to fix.`);
|
|
468
554
|
_log.Log.exception(error);
|
|
469
555
|
resolve(false);
|
|
470
556
|
}
|
|
@@ -487,13 +573,75 @@ class MetroBundlerDevServer extends _bundlerDevServer.BundlerDevServer {
|
|
|
487
573
|
"./rn-cli.config.js"
|
|
488
574
|
];
|
|
489
575
|
}
|
|
576
|
+
pendingRouteOperations = new Map();
|
|
577
|
+
// API Routes
|
|
578
|
+
// Bundle the API Route with Metro and return the string contents to be evaluated in the server.
|
|
579
|
+
async bundleApiRoute(filePath) {
|
|
580
|
+
if (this.pendingRouteOperations.has(filePath)) {
|
|
581
|
+
return this.pendingRouteOperations.get(filePath);
|
|
582
|
+
}
|
|
583
|
+
const bundleAsync = async ()=>{
|
|
584
|
+
try {
|
|
585
|
+
debug("Bundle API route:", this.instanceMetroOptions.routerRoot, filePath);
|
|
586
|
+
return await this.ssrLoadModuleContents(filePath);
|
|
587
|
+
} catch (error) {
|
|
588
|
+
if (error instanceof Error) {
|
|
589
|
+
await (0, _metroErrorInterface).logMetroErrorAsync({
|
|
590
|
+
error,
|
|
591
|
+
projectRoot: this.projectRoot
|
|
592
|
+
});
|
|
593
|
+
}
|
|
594
|
+
throw error;
|
|
595
|
+
} finally{
|
|
596
|
+
// pendingRouteOperations.delete(filepath);
|
|
597
|
+
}
|
|
598
|
+
};
|
|
599
|
+
const route = bundleAsync();
|
|
600
|
+
this.pendingRouteOperations.set(filePath, route);
|
|
601
|
+
return route;
|
|
602
|
+
}
|
|
603
|
+
async ssrImportApiRoute(filePath) {
|
|
604
|
+
// TODO: Cache the evaluated function.
|
|
605
|
+
try {
|
|
606
|
+
const apiRoute = await this.bundleApiRoute(filePath);
|
|
607
|
+
if (!(apiRoute == null ? void 0 : apiRoute.src)) {
|
|
608
|
+
return null;
|
|
609
|
+
}
|
|
610
|
+
return (0, _getStaticRenderFunctions).evalMetroNoHandling(this.projectRoot, apiRoute.src, apiRoute.filename);
|
|
611
|
+
} catch (error) {
|
|
612
|
+
// Format any errors that were thrown in the global scope of the evaluation.
|
|
613
|
+
if (error instanceof Error) {
|
|
614
|
+
try {
|
|
615
|
+
const htmlServerError = await (0, _metroErrorInterface).getErrorOverlayHtmlAsync({
|
|
616
|
+
error,
|
|
617
|
+
projectRoot: this.projectRoot,
|
|
618
|
+
routerRoot: this.getExpoLineOptions().routerRoot
|
|
619
|
+
});
|
|
620
|
+
return new Response(htmlServerError, {
|
|
621
|
+
status: 500,
|
|
622
|
+
headers: {
|
|
623
|
+
"Content-Type": "text/html"
|
|
624
|
+
}
|
|
625
|
+
});
|
|
626
|
+
} catch (internalError) {
|
|
627
|
+
debug("Failed to generate Metro server error UI for API Route error:", internalError);
|
|
628
|
+
throw error;
|
|
629
|
+
}
|
|
630
|
+
} else {
|
|
631
|
+
throw error;
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
invalidateApiRouteCache() {
|
|
636
|
+
this.pendingRouteOperations.clear();
|
|
637
|
+
}
|
|
490
638
|
}
|
|
491
639
|
exports.MetroBundlerDevServer = MetroBundlerDevServer;
|
|
492
640
|
function getDeepLinkHandler(projectRoot) {
|
|
493
641
|
return async ({ runtime })=>{
|
|
494
642
|
if (runtime === "expo") return;
|
|
495
|
-
const { exp } = (
|
|
496
|
-
await (0,
|
|
643
|
+
const { exp } = _config().getConfig(projectRoot);
|
|
644
|
+
await (0, _telemetry).logEventAsync("dev client start command", {
|
|
497
645
|
status: "started",
|
|
498
646
|
...(0, _getDevClientProperties).default(projectRoot, exp)
|
|
499
647
|
});
|