@expo/cli 1.0.0-canary-20250320-7a205d3 → 1.0.0-canary-20250331-817737a
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 +93 -91
- package/build/bin/cli.map +1 -1
- package/build/metro-require/require.js +53 -52
- package/build/src/api/endpoint.js +6 -2
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoGoIntermediateCertificate.js +5 -3
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
- package/build/src/api/getExpoSchema.js +16 -12
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/getNativeModuleVersions.js +6 -4
- package/build/src/api/getNativeModuleVersions.js.map +1 -1
- package/build/src/api/getProjectDevelopmentCertificate.js +5 -3
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
- package/build/src/api/getVersions.js +7 -5
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/graphql/client.js +32 -26
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +6 -4
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +5 -3
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +3 -1
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemResponseCache.js +36 -32
- package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/ResponseCache.js +20 -12
- package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +13 -11
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +55 -37
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/client.types.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +5 -3
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js +5 -3
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js +11 -7
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +5 -3
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithUserAgent.js +8 -6
- package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
- package/build/src/api/settings.js +7 -5
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +23 -17
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +53 -31
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +27 -21
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +30 -26
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +35 -29
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +44 -30
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +29 -23
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +25 -21
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +8 -6
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +20 -16
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +14 -12
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/resolveOptions.js +4 -2
- package/build/src/customize/resolveOptions.js.map +1 -1
- package/build/src/customize/templates.js +58 -54
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +11 -7
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +11 -9
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEager.js +8 -6
- package/build/src/export/embed/exportEager.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +71 -61
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/exportServer.js +57 -55
- package/build/src/export/embed/exportServer.js.map +1 -1
- package/build/src/export/embed/index.js +44 -40
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +44 -36
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +39 -27
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +67 -63
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +34 -26
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +13 -9
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportDomComponents.js +53 -45
- package/build/src/export/exportDomComponents.js.map +1 -1
- package/build/src/export/exportHermes.js +75 -53
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +73 -62
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +33 -27
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +7 -5
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +11 -9
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +10 -6
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +32 -28
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +36 -30
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +64 -34
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +10 -6
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +28 -24
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +50 -46
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +13 -11
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +19 -15
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/web/resolveOptions.js +5 -3
- package/build/src/export/web/resolveOptions.js.map +1 -1
- package/build/src/export/writeContents.js +4 -2
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/graphql/generated.js +705 -479
- package/build/src/graphql/generated.js.map +1 -1
- package/build/src/install/applyPlugins.js +11 -7
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +26 -22
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +16 -12
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +18 -16
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +32 -26
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +22 -18
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js +21 -19
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +18 -14
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/install/utils/checkPackagesCompatibility.js +14 -12
- package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js +50 -44
- package/build/src/lint/ESlintPrerequisite.js.map +1 -1
- package/build/src/lint/index.js +12 -8
- package/build/src/lint/index.js.map +1 -1
- package/build/src/lint/lintAsync.js +10 -8
- package/build/src/lint/lintAsync.js.map +1 -1
- package/build/src/log.js +36 -16
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +24 -20
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +11 -7
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +38 -26
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +18 -14
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +17 -13
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +6 -4
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +36 -32
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +29 -25
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +43 -37
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +70 -53
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +36 -32
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +19 -13
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +53 -39
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +12 -8
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +11 -7
- package/build/src/register/index.js.map +1 -1
- package/build/src/register/registerAsync.js +5 -3
- package/build/src/register/registerAsync.js.map +1 -1
- package/build/src/run/android/index.js +36 -32
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveDevice.js +10 -8
- package/build/src/run/android/resolveDevice.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +18 -16
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +17 -15
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +12 -10
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +4 -2
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +23 -21
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +7 -5
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +13 -7
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +27 -23
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +80 -60
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +69 -63
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +29 -26
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +28 -25
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +29 -26
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +22 -21
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +32 -29
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +28 -24
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +7 -4
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +28 -27
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +23 -17
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +146 -132
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +29 -21
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +29 -21
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +34 -22
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +27 -17
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +53 -39
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +13 -9
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +27 -19
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +9 -5
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +14 -12
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +27 -21
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +40 -36
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +23 -17
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/appleDestinations.js +38 -36
- package/build/src/run/ios/options/appleDestinations.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +20 -16
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +30 -24
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +31 -23
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +7 -5
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +7 -5
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +48 -44
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/ios/validateExternalBinary.js +24 -22
- package/build/src/run/ios/validateExternalBinary.js.map +1 -1
- package/build/src/run/resolveBundlerProps.js +4 -2
- package/build/src/run/resolveBundlerProps.js.map +1 -1
- package/build/src/run/startBundler.js +16 -12
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/serve/index.js +20 -16
- package/build/src/serve/index.js.map +1 -1
- package/build/src/serve/serveAsync.js +36 -32
- package/build/src/serve/serveAsync.js.map +1 -1
- package/build/src/start/detectDevClient.js +13 -9
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +12 -7
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -11
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +23 -19
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +23 -19
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +51 -45
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +18 -16
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +23 -19
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +31 -25
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +25 -17
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +40 -32
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +32 -26
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +41 -31
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +34 -29
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -8
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +32 -28
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +23 -17
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +33 -27
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +46 -42
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js +18 -14
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +94 -80
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +44 -40
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +65 -61
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +6 -4
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +10 -6
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +25 -20
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +17 -15
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +39 -35
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -16
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +24 -20
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidSdk.js +11 -9
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +26 -22
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +121 -83
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +20 -12
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +36 -26
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js +7 -5
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +36 -28
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +19 -15
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +21 -19
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +37 -31
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
- package/build/src/start/platforms/ios/assertSystemRequirements.js +9 -7
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/devicectl.js +88 -74
- package/build/src/start/platforms/ios/devicectl.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +22 -18
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +29 -19
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +14 -10
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +102 -74
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +57 -52
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +22 -18
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +19 -9
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +15 -11
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/project/settings.js +4 -2
- package/build/src/start/project/settings.js.map +1 -1
- package/build/src/start/resolveOptions.js +48 -40
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +55 -51
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/AsyncWsTunnel.js +37 -33
- package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +81 -79
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +42 -38
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +18 -14
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +18 -14
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +16 -10
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +36 -33
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +30 -22
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +9 -5
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +269 -271
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +63 -56
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +39 -33
- 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/createExpoFallbackResolver.js +13 -11
- package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +47 -41
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +31 -27
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerComponentsMiddleware.js +96 -92
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +31 -29
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +13 -11
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +3 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/attachAtlas.js +26 -22
- package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +19 -17
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +25 -31
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/getDebuggerType.js +6 -4
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +14 -8
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -5
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +8 -6
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -5
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +14 -12
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +14 -10
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js +6 -4
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
- package/build/src/start/server/metro/debugging/types.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createEventSocket.js +18 -16
- package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +23 -21
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +23 -21
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +4 -2
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +4 -2
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js +8 -4
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
- package/build/src/start/server/metro/externals.js +33 -25
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +16 -12
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +11 -9
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +24 -20
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +87 -81
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxLog.js +40 -36
- package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +20 -14
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js +10 -6
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +88 -78
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +8 -4
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroPrivateServer.js +9 -7
- package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +10 -8
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +24 -22
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +48 -32
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +24 -22
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +24 -22
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/symbolicate.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +35 -29
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +150 -140
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +49 -39
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +8 -6
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +17 -15
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +32 -31
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +22 -19
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DomComponentsMiddleware.js +33 -27
- package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +61 -57
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +15 -9
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js +16 -15
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +4 -2
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +34 -31
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +64 -56
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +23 -19
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +20 -19
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -9
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +17 -11
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
- package/build/src/start/server/middleware/inspector/CdpClient.js +12 -10
- package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +35 -27
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +21 -19
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +6 -2
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +120 -96
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +7 -3
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +26 -18
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +23 -15
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +11 -9
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
- package/build/src/start/server/middleware/server.types.js.map +1 -1
- package/build/src/start/server/openPlatforms.js +10 -8
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +13 -11
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +58 -50
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +11 -7
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +72 -50
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +21 -19
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +36 -28
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +28 -24
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +52 -46
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +15 -11
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js +28 -26
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +18 -12
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +18 -12
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +31 -27
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +20 -17
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/ansi.js +7 -5
- package/build/src/utils/ansi.js.map +1 -1
- package/build/src/utils/args.js +24 -14
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +18 -6
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/cocoapods.js +54 -46
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +79 -69
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +16 -12
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/createTempPath.js +12 -8
- package/build/src/utils/createTempPath.js.map +1 -1
- package/build/src/utils/delay.js +12 -6
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +40 -22
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +10 -8
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +27 -23
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +41 -35
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +63 -59
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +37 -30
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +35 -31
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/expoUpdatesCli.js +32 -22
- package/build/src/utils/expoUpdatesCli.js.map +1 -1
- package/build/src/utils/fetch.js +8 -4
- package/build/src/utils/fetch.js.map +1 -1
- package/build/src/utils/filePath.js +10 -6
- package/build/src/utils/filePath.js.map +1 -1
- package/build/src/utils/findUp.js +13 -9
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +6 -2
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +41 -35
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +29 -21
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +26 -20
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +8 -4
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/interactive.js +3 -1
- package/build/src/utils/interactive.js.map +1 -1
- package/build/src/utils/ip.js +21 -19
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +11 -9
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/jsonSchemaDeref.js +20 -18
- package/build/src/utils/jsonSchemaDeref.js.map +1 -1
- package/build/src/utils/link.js +17 -13
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +46 -28
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +16 -10
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +10 -6
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/multipartMixed.js +13 -11
- package/build/src/utils/multipartMixed.js.map +1 -1
- package/build/src/utils/nodeEnv.js +12 -6
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +10 -8
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +49 -35
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +11 -5
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +10 -8
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +13 -7
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +21 -15
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +43 -33
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +11 -7
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +11 -5
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +47 -29
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/resolveArgs.js +36 -24
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +40 -32
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/stream.js +5 -3
- package/build/src/utils/stream.js.map +1 -1
- package/build/src/utils/strings.js +6 -4
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +18 -14
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/Telemetry.js +29 -27
- package/build/src/utils/telemetry/Telemetry.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +15 -13
- package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js +26 -22
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
- package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
- package/build/src/utils/telemetry/events.js +4 -2
- package/build/src/utils/telemetry/events.js.map +1 -1
- package/build/src/utils/telemetry/index.js +25 -29
- package/build/src/utils/telemetry/index.js.map +1 -1
- package/build/src/utils/telemetry/types.js.map +1 -1
- package/build/src/utils/telemetry/utils/constants.js +8 -4
- package/build/src/utils/telemetry/utils/constants.js.map +1 -1
- package/build/src/utils/telemetry/utils/context.js +18 -14
- package/build/src/utils/telemetry/utils/context.js.map +1 -1
- package/build/src/utils/template.js +6 -4
- package/build/src/utils/template.js.map +1 -1
- package/build/src/utils/terminal.js +4 -2
- package/build/src/utils/terminal.js.map +1 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +21 -17
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -14
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +7 -5
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +14 -12
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +23 -13
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +108 -86
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +22 -16
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js +11 -7
- package/build/src/whoami/index.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +11 -7
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +15 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/server/metro/createJResolver.ts"],"sourcesContent":["/**\n * Copyright © 2023 650 Industries.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * Fork of the jest resolver but with additional settings for Metro and pnp removed.\n * https://github.com/jestjs/jest/blob/d1a2ed7fea4bdc19836274cd810c8360e3ab62f3/packages/jest-resolve/src/defaultResolver.ts#L1\n */\nimport type { JSONObject as PackageJSON } from '@expo/json-file';\nimport assert from 'assert';\nimport { dirname, isAbsolute, resolve as pathResolve } from 'path';\nimport { sync as resolveSync, SyncOpts as UpstreamResolveOptions } from 'resolve';\nimport * as resolve from 'resolve.exports';\n\n/**\n * Allows transforming parsed `package.json` contents.\n *\n * @param pkg - Parsed `package.json` contents.\n * @param file - Path to `package.json` file.\n * @param dir - Directory that contains the `package.json`.\n *\n * @returns Transformed `package.json` contents.\n */\ntype PackageFilter = (pkg: PackageJSON, file: string, dir: string) => PackageJSON;\n\n/**\n * Allows transforming a path within a package.\n *\n * @param pkg - Parsed `package.json` contents.\n * @param path - Path being resolved.\n * @param relativePath - Path relative from the `package.json` location.\n *\n * @returns Relative path that will be joined from the `package.json` location.\n */\ntype PathFilter = (pkg: PackageJSON, path: string, relativePath: string) => string;\n\ntype ResolverOptions = {\n /** Directory to begin resolving from. */\n basedir: string;\n /** List of export conditions. */\n conditions?: string[];\n /** Instance of default resolver. */\n defaultResolver: typeof defaultResolver;\n /** List of file extensions to search in order. */\n extensions?: string[];\n /**\n * List of directory names to be looked up for modules recursively.\n *\n * @defaultValue\n * The default is `['node_modules']`.\n */\n moduleDirectory?: string[];\n /**\n * List of `require.paths` to use if nothing is found in `node_modules`.\n *\n * @defaultValue\n * The default is `undefined`.\n */\n paths?: string[];\n /** Allows transforming parsed `package.json` contents. */\n packageFilter?: PackageFilter;\n /** Allows transforms a path within a package. */\n pathFilter?: PathFilter;\n /** Current root directory. */\n rootDir?: string;\n\n enablePackageExports?: boolean;\n\n blockList: RegExp[];\n\n getPackageForModule: import('metro-resolver').CustomResolutionContext['getPackageForModule'];\n} & Pick<\n UpstreamResolveOptions,\n | 'readPackageSync'\n | 'realpathSync'\n | 'moduleDirectory'\n | 'extensions'\n | 'preserveSymlinks'\n | 'includeCoreModules'\n>;\n\ntype UpstreamResolveOptionsWithConditions = UpstreamResolveOptions &\n ResolverOptions & {\n pathExists: (file: string) => boolean;\n };\n\nconst defaultResolver = (\n path: string,\n {\n enablePackageExports,\n blockList = [],\n ...options\n }: Omit<ResolverOptions, 'defaultResolver' | 'getPackageForModule'> & {\n isDirectory: (file: string) => boolean;\n isFile: (file: string) => boolean;\n pathExists: (file: string) => boolean;\n }\n): string => {\n // @ts-expect-error\n const resolveOptions: UpstreamResolveOptionsWithConditions = {\n ...options,\n preserveSymlinks: options.preserveSymlinks,\n defaultResolver,\n };\n\n // resolveSync dereferences symlinks to ensure we don't create a separate\n // module instance depending on how it was referenced.\n const result = resolveSync(enablePackageExports ? getPathInModule(path, resolveOptions) : path, {\n ...resolveOptions,\n preserveSymlinks: !options.preserveSymlinks,\n });\n\n return result;\n};\n\nexport default defaultResolver;\n\n/*\n * helper functions\n */\n\nfunction getPathInModule(path: string, options: UpstreamResolveOptionsWithConditions): string {\n if (shouldIgnoreRequestForExports(path)) {\n return path;\n }\n\n const segments = path.split('/');\n\n let moduleName = segments.shift();\n\n if (!moduleName) {\n return path;\n }\n\n if (moduleName.startsWith('@')) {\n moduleName = `${moduleName}/${segments.shift()}`;\n }\n\n // self-reference\n const closestPackageJson = findClosestPackageJson(options.basedir, options);\n if (closestPackageJson) {\n const pkg = options.readPackageSync!(options.readFileSync!, closestPackageJson);\n assert(pkg, 'package.json should be read by `readPackageSync`');\n\n // Added support for the package.json \"imports\" field (#-prefixed paths)\n if (path.startsWith('#')) {\n const resolved = resolve.imports(pkg, path, createResolveOptions(options.conditions));\n if (resolved) {\n // TODO: Should we attempt to resolve every path in the array?\n return pathResolve(dirname(closestPackageJson), resolved[0]);\n }\n // NOTE: resolve.imports would have thrown by this point.\n return path;\n }\n\n if (pkg.name === moduleName) {\n const resolved = resolve.exports(\n pkg,\n (segments.join('/') || '.') as resolve.Exports.Entry,\n createResolveOptions(options.conditions)\n );\n\n if (resolved) {\n return pathResolve(dirname(closestPackageJson), resolved[0]);\n }\n\n if (pkg.exports) {\n throw new Error(\n \"`exports` exists, but no results - this is a bug in Expo CLI's Metro resolver. Please report an issue\"\n );\n }\n }\n }\n\n let packageJsonPath = '';\n\n try {\n packageJsonPath = resolveSync(`${moduleName}/package.json`, options);\n } catch {\n // ignore if package.json cannot be found\n }\n\n if (!packageJsonPath) {\n return path;\n }\n\n const pkg = options.readPackageSync!(options.readFileSync!, packageJsonPath);\n assert(pkg, 'package.json should be read by `readPackageSync`');\n\n const resolved = resolve.exports(\n pkg,\n (segments.join('/') || '.') as resolve.Exports.Entry,\n createResolveOptions(options.conditions)\n );\n\n if (resolved) {\n return pathResolve(dirname(packageJsonPath), resolved[0]);\n }\n\n if (pkg.exports) {\n throw new Error(\n \"`exports` exists, but no results - this is a bug in Expo CLI's Metro resolver. Please report an issue\"\n );\n }\n\n return path;\n}\n\nfunction createResolveOptions(conditions: string[] | undefined): resolve.Options {\n return conditions\n ? { conditions, unsafe: true }\n : // no conditions were passed - let's assume this is Jest internal and it should be `require`\n { browser: false, require: true };\n}\n\n// if it's a relative import or an absolute path, imports/exports are ignored\nconst shouldIgnoreRequestForExports = (path: string) => path.startsWith('.') || isAbsolute(path);\n\n// adapted from\n// https://github.com/lukeed/escalade/blob/2477005062cdbd8407afc90d3f48f4930354252b/src/sync.js\nfunction findClosestPackageJson(\n start: string,\n options: UpstreamResolveOptionsWithConditions\n): string | undefined {\n let dir = pathResolve('.', start);\n if (!options.isDirectory!(dir)) {\n dir = dirname(dir);\n }\n\n while (true) {\n const pkgJsonFile = pathResolve(dir, './package.json');\n const hasPackageJson = options.pathExists!(pkgJsonFile);\n\n if (hasPackageJson) {\n return pkgJsonFile;\n }\n\n const prevDir = dir;\n dir = dirname(dir);\n\n if (prevDir === dir) {\n return undefined;\n }\n }\n}\n"],"names":["defaultResolver","path","enablePackageExports","blockList","options","resolveOptions","preserveSymlinks","result","resolveSync","getPathInModule","shouldIgnoreRequestForExports","segments","split","moduleName","shift","startsWith","closestPackageJson","findClosestPackageJson","basedir","pkg","readPackageSync","readFileSync","assert","resolved","resolve","imports","createResolveOptions","conditions","pathResolve","dirname","name","exports","join","Error","packageJsonPath","unsafe","browser","require","isAbsolute","start","dir","isDirectory","pkgJsonFile","hasPackageJson","pathExists","prevDir","undefined"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/server/metro/createJResolver.ts"],"sourcesContent":["/**\n * Copyright © 2023 650 Industries.\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *\n * Fork of the jest resolver but with additional settings for Metro and pnp removed.\n * https://github.com/jestjs/jest/blob/d1a2ed7fea4bdc19836274cd810c8360e3ab62f3/packages/jest-resolve/src/defaultResolver.ts#L1\n */\nimport type { JSONObject as PackageJSON } from '@expo/json-file';\nimport assert from 'assert';\nimport { dirname, isAbsolute, resolve as pathResolve } from 'path';\nimport { sync as resolveSync, SyncOpts as UpstreamResolveOptions } from 'resolve';\nimport * as resolve from 'resolve.exports';\n\n/**\n * Allows transforming parsed `package.json` contents.\n *\n * @param pkg - Parsed `package.json` contents.\n * @param file - Path to `package.json` file.\n * @param dir - Directory that contains the `package.json`.\n *\n * @returns Transformed `package.json` contents.\n */\ntype PackageFilter = (pkg: PackageJSON, file: string, dir: string) => PackageJSON;\n\n/**\n * Allows transforming a path within a package.\n *\n * @param pkg - Parsed `package.json` contents.\n * @param path - Path being resolved.\n * @param relativePath - Path relative from the `package.json` location.\n *\n * @returns Relative path that will be joined from the `package.json` location.\n */\ntype PathFilter = (pkg: PackageJSON, path: string, relativePath: string) => string;\n\ntype ResolverOptions = {\n /** Directory to begin resolving from. */\n basedir: string;\n /** List of export conditions. */\n conditions?: string[];\n /** Instance of default resolver. */\n defaultResolver: typeof defaultResolver;\n /** List of file extensions to search in order. */\n extensions?: string[];\n /**\n * List of directory names to be looked up for modules recursively.\n *\n * @defaultValue\n * The default is `['node_modules']`.\n */\n moduleDirectory?: string[];\n /**\n * List of `require.paths` to use if nothing is found in `node_modules`.\n *\n * @defaultValue\n * The default is `undefined`.\n */\n paths?: string[];\n /** Allows transforming parsed `package.json` contents. */\n packageFilter?: PackageFilter;\n /** Allows transforms a path within a package. */\n pathFilter?: PathFilter;\n /** Current root directory. */\n rootDir?: string;\n\n enablePackageExports?: boolean;\n\n blockList: RegExp[];\n\n getPackageForModule: import('metro-resolver').CustomResolutionContext['getPackageForModule'];\n} & Pick<\n UpstreamResolveOptions,\n | 'readPackageSync'\n | 'realpathSync'\n | 'moduleDirectory'\n | 'extensions'\n | 'preserveSymlinks'\n | 'includeCoreModules'\n>;\n\ntype UpstreamResolveOptionsWithConditions = UpstreamResolveOptions &\n ResolverOptions & {\n pathExists: (file: string) => boolean;\n };\n\nconst defaultResolver = (\n path: string,\n {\n enablePackageExports,\n blockList = [],\n ...options\n }: Omit<ResolverOptions, 'defaultResolver' | 'getPackageForModule'> & {\n isDirectory: (file: string) => boolean;\n isFile: (file: string) => boolean;\n pathExists: (file: string) => boolean;\n }\n): string => {\n // @ts-expect-error\n const resolveOptions: UpstreamResolveOptionsWithConditions = {\n ...options,\n preserveSymlinks: options.preserveSymlinks,\n defaultResolver,\n };\n\n // resolveSync dereferences symlinks to ensure we don't create a separate\n // module instance depending on how it was referenced.\n const result = resolveSync(enablePackageExports ? getPathInModule(path, resolveOptions) : path, {\n ...resolveOptions,\n preserveSymlinks: !options.preserveSymlinks,\n });\n\n return result;\n};\n\nexport default defaultResolver;\n\n/*\n * helper functions\n */\n\nfunction getPathInModule(path: string, options: UpstreamResolveOptionsWithConditions): string {\n if (shouldIgnoreRequestForExports(path)) {\n return path;\n }\n\n const segments = path.split('/');\n\n let moduleName = segments.shift();\n\n if (!moduleName) {\n return path;\n }\n\n if (moduleName.startsWith('@')) {\n moduleName = `${moduleName}/${segments.shift()}`;\n }\n\n // self-reference\n const closestPackageJson = findClosestPackageJson(options.basedir, options);\n if (closestPackageJson) {\n const pkg = options.readPackageSync!(options.readFileSync!, closestPackageJson);\n assert(pkg, 'package.json should be read by `readPackageSync`');\n\n // Added support for the package.json \"imports\" field (#-prefixed paths)\n if (path.startsWith('#')) {\n const resolved = resolve.imports(pkg, path, createResolveOptions(options.conditions));\n if (resolved) {\n // TODO: Should we attempt to resolve every path in the array?\n return pathResolve(dirname(closestPackageJson), resolved[0]);\n }\n // NOTE: resolve.imports would have thrown by this point.\n return path;\n }\n\n if (pkg.name === moduleName) {\n const resolved = resolve.exports(\n pkg,\n (segments.join('/') || '.') as resolve.Exports.Entry,\n createResolveOptions(options.conditions)\n );\n\n if (resolved) {\n return pathResolve(dirname(closestPackageJson), resolved[0]);\n }\n\n if (pkg.exports) {\n throw new Error(\n \"`exports` exists, but no results - this is a bug in Expo CLI's Metro resolver. Please report an issue\"\n );\n }\n }\n }\n\n let packageJsonPath = '';\n\n try {\n packageJsonPath = resolveSync(`${moduleName}/package.json`, options);\n } catch {\n // ignore if package.json cannot be found\n }\n\n if (!packageJsonPath) {\n return path;\n }\n\n const pkg = options.readPackageSync!(options.readFileSync!, packageJsonPath);\n assert(pkg, 'package.json should be read by `readPackageSync`');\n\n const resolved = resolve.exports(\n pkg,\n (segments.join('/') || '.') as resolve.Exports.Entry,\n createResolveOptions(options.conditions)\n );\n\n if (resolved) {\n return pathResolve(dirname(packageJsonPath), resolved[0]);\n }\n\n if (pkg.exports) {\n throw new Error(\n \"`exports` exists, but no results - this is a bug in Expo CLI's Metro resolver. Please report an issue\"\n );\n }\n\n return path;\n}\n\nfunction createResolveOptions(conditions: string[] | undefined): resolve.Options {\n return conditions\n ? { conditions, unsafe: true }\n : // no conditions were passed - let's assume this is Jest internal and it should be `require`\n { browser: false, require: true };\n}\n\n// if it's a relative import or an absolute path, imports/exports are ignored\nconst shouldIgnoreRequestForExports = (path: string) => path.startsWith('.') || isAbsolute(path);\n\n// adapted from\n// https://github.com/lukeed/escalade/blob/2477005062cdbd8407afc90d3f48f4930354252b/src/sync.js\nfunction findClosestPackageJson(\n start: string,\n options: UpstreamResolveOptionsWithConditions\n): string | undefined {\n let dir = pathResolve('.', start);\n if (!options.isDirectory!(dir)) {\n dir = dirname(dir);\n }\n\n while (true) {\n const pkgJsonFile = pathResolve(dir, './package.json');\n const hasPackageJson = options.pathExists!(pkgJsonFile);\n\n if (hasPackageJson) {\n return pkgJsonFile;\n }\n\n const prevDir = dir;\n dir = dirname(dir);\n\n if (prevDir === dir) {\n return undefined;\n }\n }\n}\n"],"names":["defaultResolver","path","enablePackageExports","blockList","options","resolveOptions","preserveSymlinks","result","resolveSync","getPathInModule","shouldIgnoreRequestForExports","segments","split","moduleName","shift","startsWith","closestPackageJson","findClosestPackageJson","basedir","pkg","readPackageSync","readFileSync","assert","resolved","resolve","imports","createResolveOptions","conditions","pathResolve","dirname","name","exports","join","Error","packageJsonPath","unsafe","browser","require","isAbsolute","start","dir","isDirectory","pkgJsonFile","hasPackageJson","pathExists","prevDir","undefined"],"mappings":"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"}
|
|
@@ -14,8 +14,12 @@ function _export(target, all) {
|
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
_export(exports, {
|
|
17
|
-
createServerComponentsMiddleware: ()
|
|
18
|
-
|
|
17
|
+
createServerComponentsMiddleware: function() {
|
|
18
|
+
return createServerComponentsMiddleware;
|
|
19
|
+
},
|
|
20
|
+
fileURLToFilePath: function() {
|
|
21
|
+
return fileURLToFilePath;
|
|
22
|
+
}
|
|
19
23
|
});
|
|
20
24
|
function _paths() {
|
|
21
25
|
const data = require("@expo/config/paths");
|
|
@@ -32,21 +36,21 @@ function _rsc() {
|
|
|
32
36
|
return data;
|
|
33
37
|
}
|
|
34
38
|
function _assert() {
|
|
35
|
-
const data = /*#__PURE__*/
|
|
39
|
+
const data = /*#__PURE__*/ _interop_require_default(require("assert"));
|
|
36
40
|
_assert = function() {
|
|
37
41
|
return data;
|
|
38
42
|
};
|
|
39
43
|
return data;
|
|
40
44
|
}
|
|
41
45
|
function _path() {
|
|
42
|
-
const data = /*#__PURE__*/
|
|
46
|
+
const data = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
43
47
|
_path = function() {
|
|
44
48
|
return data;
|
|
45
49
|
};
|
|
46
50
|
return data;
|
|
47
51
|
}
|
|
48
52
|
function _url() {
|
|
49
|
-
const data = /*#__PURE__*/
|
|
53
|
+
const data = /*#__PURE__*/ _interop_require_default(require("url"));
|
|
50
54
|
_url = function() {
|
|
51
55
|
return data;
|
|
52
56
|
};
|
|
@@ -61,31 +65,31 @@ const _ip = require("../../../utils/ip");
|
|
|
61
65
|
const _stream = require("../../../utils/stream");
|
|
62
66
|
const _createBuiltinAPIRequestHandler = require("../middleware/createBuiltinAPIRequestHandler");
|
|
63
67
|
const _metroOptions = require("../middleware/metroOptions");
|
|
64
|
-
function
|
|
68
|
+
function _interop_require_default(obj) {
|
|
65
69
|
return obj && obj.__esModule ? obj : {
|
|
66
70
|
default: obj
|
|
67
71
|
};
|
|
68
72
|
}
|
|
69
|
-
const debug = require(
|
|
73
|
+
const debug = require('debug')('expo:rsc');
|
|
70
74
|
const getMetroServerRootMemo = (0, _fn.memoize)(_paths().getMetroServerRoot);
|
|
71
|
-
function createServerComponentsMiddleware(projectRoot, { rscPath
|
|
72
|
-
const routerModule = useClientRouter ?
|
|
75
|
+
function createServerComponentsMiddleware(projectRoot, { rscPath, instanceMetroOptions, ssrLoadModule, ssrLoadModuleArtifacts, useClientRouter, createModuleId }) {
|
|
76
|
+
const routerModule = useClientRouter ? 'expo-router/build/rsc/router/noopRouter' : 'expo-router/build/rsc/router/expo-definedRouter';
|
|
73
77
|
const rscMiddleware = (0, _rsc().getRscMiddleware)({
|
|
74
78
|
config: {},
|
|
75
79
|
// Disabled in development
|
|
76
|
-
baseUrl:
|
|
80
|
+
baseUrl: '',
|
|
77
81
|
rscPath,
|
|
78
82
|
onError: console.error,
|
|
79
83
|
renderRsc: async (args)=>{
|
|
80
84
|
// In development we should add simulated versions of common production headers.
|
|
81
|
-
if (args.headers[
|
|
82
|
-
args.headers[
|
|
85
|
+
if (args.headers['x-real-ip'] == null) {
|
|
86
|
+
args.headers['x-real-ip'] = (0, _ip.getIpAddress)();
|
|
83
87
|
}
|
|
84
|
-
if (args.headers[
|
|
85
|
-
args.headers[
|
|
88
|
+
if (args.headers['x-forwarded-for'] == null) {
|
|
89
|
+
args.headers['x-forwarded-for'] = args.headers['x-real-ip'];
|
|
86
90
|
}
|
|
87
|
-
if (args.headers[
|
|
88
|
-
args.headers[
|
|
91
|
+
if (args.headers['x-forwarded-proto'] == null) {
|
|
92
|
+
args.headers['x-forwarded-proto'] = 'http';
|
|
89
93
|
}
|
|
90
94
|
// Dev server-only implementation.
|
|
91
95
|
try {
|
|
@@ -114,7 +118,7 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
114
118
|
throw new Response(JSON.stringify(error), {
|
|
115
119
|
status: (0, _xcodeCompilerLogger.isPossiblyUnableToResolveError)(error) ? 404 : 500,
|
|
116
120
|
headers: {
|
|
117
|
-
|
|
121
|
+
'Content-Type': 'application/json'
|
|
118
122
|
}
|
|
119
123
|
});
|
|
120
124
|
}
|
|
@@ -122,17 +126,17 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
122
126
|
throw new Response(sanitizedServerMessage, {
|
|
123
127
|
status: 500,
|
|
124
128
|
headers: {
|
|
125
|
-
|
|
129
|
+
'Content-Type': 'text/plain'
|
|
126
130
|
}
|
|
127
131
|
});
|
|
128
132
|
}
|
|
129
133
|
}
|
|
130
134
|
});
|
|
131
135
|
let rscPathPrefix = rscPath;
|
|
132
|
-
if (rscPathPrefix !==
|
|
133
|
-
rscPathPrefix +=
|
|
136
|
+
if (rscPathPrefix !== '/') {
|
|
137
|
+
rscPathPrefix += '/';
|
|
134
138
|
}
|
|
135
|
-
async function exportServerActionsAsync({ platform
|
|
139
|
+
async function exportServerActionsAsync({ platform, entryPoints, domRoot }, files) {
|
|
136
140
|
const uniqueEntryPoints = [
|
|
137
141
|
...new Set(entryPoints)
|
|
138
142
|
];
|
|
@@ -142,10 +146,10 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
142
146
|
const nestedServerBoundaries = [];
|
|
143
147
|
const processedEntryPoints = new Set();
|
|
144
148
|
async function processEntryPoint(entryPoint) {
|
|
145
|
-
var
|
|
149
|
+
var _contents_artifacts_filter__metadata_reactClientReferences, _contents_artifacts_filter__metadata_reactServerReferences;
|
|
146
150
|
processedEntryPoints.add(entryPoint);
|
|
147
151
|
const contents = await ssrLoadModuleArtifacts(entryPoint, {
|
|
148
|
-
environment:
|
|
152
|
+
environment: 'react-server',
|
|
149
153
|
platform,
|
|
150
154
|
// Ignore the metro runtime to avoid overwriting the original in the API route.
|
|
151
155
|
modulesOnly: true,
|
|
@@ -154,27 +158,27 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
154
158
|
// Required to ensure assets load as client boundaries.
|
|
155
159
|
domRoot
|
|
156
160
|
});
|
|
157
|
-
const reactClientReferences = (
|
|
161
|
+
const reactClientReferences = (_contents_artifacts_filter__metadata_reactClientReferences = contents.artifacts.filter((a)=>a.type === 'js')[0].metadata.reactClientReferences) == null ? void 0 : _contents_artifacts_filter__metadata_reactClientReferences.map((ref)=>fileURLToFilePath(ref));
|
|
158
162
|
if (reactClientReferences) {
|
|
159
163
|
nestedClientBoundaries.push(...reactClientReferences);
|
|
160
164
|
}
|
|
161
|
-
const reactServerReferences = (
|
|
165
|
+
const reactServerReferences = (_contents_artifacts_filter__metadata_reactServerReferences = contents.artifacts.filter((a)=>a.type === 'js')[0].metadata.reactServerReferences) == null ? void 0 : _contents_artifacts_filter__metadata_reactServerReferences.map((ref)=>fileURLToFilePath(ref));
|
|
162
166
|
if (reactServerReferences) {
|
|
163
167
|
nestedServerBoundaries.push(...reactServerReferences);
|
|
164
168
|
}
|
|
165
169
|
// Naive check to ensure the module runtime is not included in the server action bundle.
|
|
166
|
-
if (contents.src.includes(
|
|
167
|
-
throw new Error(
|
|
170
|
+
if (contents.src.includes('The experimental Metro feature')) {
|
|
171
|
+
throw new Error('Internal error: module runtime should not be included in server action bundles: ' + entryPoint);
|
|
168
172
|
}
|
|
169
173
|
const relativeName = createModuleId(entryPoint, {
|
|
170
174
|
platform,
|
|
171
|
-
environment:
|
|
175
|
+
environment: 'react-server'
|
|
172
176
|
});
|
|
173
|
-
const safeName = _path().default.basename(contents.artifacts.find((a)=>a.type ===
|
|
177
|
+
const safeName = _path().default.basename(contents.artifacts.find((a)=>a.type === 'js').filename);
|
|
174
178
|
const outputName = `_expo/rsc/${platform}/${safeName}`;
|
|
175
179
|
// While we're here, export the router for the server to dynamically render RSC.
|
|
176
180
|
files.set(outputName, {
|
|
177
|
-
targetDomain:
|
|
181
|
+
targetDomain: 'server',
|
|
178
182
|
contents: wrapBundle(contents.src)
|
|
179
183
|
});
|
|
180
184
|
// Import relative to `dist/server/_expo/rsc/web/router.js`
|
|
@@ -186,7 +190,7 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
186
190
|
async function processEntryPoints(entryPoints, recursions = 0) {
|
|
187
191
|
// Arbitrary recursion limit to prevent infinite loops.
|
|
188
192
|
if (recursions > 10) {
|
|
189
|
-
throw new Error(
|
|
193
|
+
throw new Error('Recursion limit exceeded while processing server boundaries');
|
|
190
194
|
}
|
|
191
195
|
for (const entryPoint of entryPoints){
|
|
192
196
|
await processEntryPoint(entryPoint);
|
|
@@ -198,45 +202,45 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
198
202
|
// Filter out values that have already been processed.
|
|
199
203
|
uniqueNestedServerBoundaries = uniqueNestedServerBoundaries.filter((value)=>!processedEntryPoints.has(value));
|
|
200
204
|
if (uniqueNestedServerBoundaries.length) {
|
|
201
|
-
debug(
|
|
205
|
+
debug('bundling nested server action boundaries', uniqueNestedServerBoundaries);
|
|
202
206
|
return processEntryPoints(uniqueNestedServerBoundaries, recursions + 1);
|
|
203
207
|
}
|
|
204
208
|
}
|
|
205
209
|
await processEntryPoints(uniqueEntryPoints);
|
|
206
210
|
// Save the SSR manifest so we can perform more replacements in the server renderer and with server actions.
|
|
207
211
|
files.set(`_expo/rsc/${platform}/action-manifest.js`, {
|
|
208
|
-
targetDomain:
|
|
209
|
-
contents:
|
|
212
|
+
targetDomain: 'server',
|
|
213
|
+
contents: 'module.exports = ' + JSON.stringify(manifest)
|
|
210
214
|
});
|
|
211
215
|
return {
|
|
212
216
|
manifest,
|
|
213
217
|
clientBoundaries: nestedClientBoundaries
|
|
214
218
|
};
|
|
215
219
|
}
|
|
216
|
-
async function getExpoRouterClientReferencesAsync({ platform
|
|
217
|
-
var
|
|
220
|
+
async function getExpoRouterClientReferencesAsync({ platform, domRoot }, files) {
|
|
221
|
+
var _contents_artifacts_filter__metadata_reactServerReferences, _contents_artifacts_filter__metadata_reactClientReferences;
|
|
218
222
|
const contents = await ssrLoadModuleArtifacts(routerModule, {
|
|
219
|
-
environment:
|
|
223
|
+
environment: 'react-server',
|
|
220
224
|
platform,
|
|
221
225
|
modulesOnly: true,
|
|
222
226
|
domRoot
|
|
223
227
|
});
|
|
224
228
|
// Extract the global CSS modules that are imported from the router.
|
|
225
229
|
// These will be injected in the head of the HTML document for the website.
|
|
226
|
-
const cssModules = contents.artifacts.filter((a)=>a.type.startsWith(
|
|
227
|
-
const reactServerReferences = (
|
|
230
|
+
const cssModules = contents.artifacts.filter((a)=>a.type.startsWith('css'));
|
|
231
|
+
const reactServerReferences = (_contents_artifacts_filter__metadata_reactServerReferences = contents.artifacts.filter((a)=>a.type === 'js')[0].metadata.reactServerReferences) == null ? void 0 : _contents_artifacts_filter__metadata_reactServerReferences.map((ref)=>fileURLToFilePath(ref));
|
|
228
232
|
if (!reactServerReferences) {
|
|
229
|
-
throw new Error(
|
|
233
|
+
throw new Error('Static server action references were not returned from the Metro SSR bundle for definedRouter');
|
|
230
234
|
}
|
|
231
|
-
debug(
|
|
232
|
-
const reactClientReferences = (
|
|
235
|
+
debug('React client boundaries:', reactServerReferences);
|
|
236
|
+
const reactClientReferences = (_contents_artifacts_filter__metadata_reactClientReferences = contents.artifacts.filter((a)=>a.type === 'js')[0].metadata.reactClientReferences) == null ? void 0 : _contents_artifacts_filter__metadata_reactClientReferences.map((ref)=>fileURLToFilePath(ref));
|
|
233
237
|
if (!reactClientReferences) {
|
|
234
|
-
throw new Error(
|
|
238
|
+
throw new Error('Static client references were not returned from the Metro SSR bundle for definedRouter');
|
|
235
239
|
}
|
|
236
|
-
debug(
|
|
240
|
+
debug('React client boundaries:', reactClientReferences);
|
|
237
241
|
// While we're here, export the router for the server to dynamically render RSC.
|
|
238
242
|
files.set(`_expo/rsc/${platform}/router.js`, {
|
|
239
|
-
targetDomain:
|
|
243
|
+
targetDomain: 'server',
|
|
240
244
|
contents: wrapBundle(contents.src)
|
|
241
245
|
});
|
|
242
246
|
return {
|
|
@@ -246,14 +250,14 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
246
250
|
};
|
|
247
251
|
}
|
|
248
252
|
const routerCache = new Map();
|
|
249
|
-
async function getExpoRouterRscEntriesGetterAsync({ platform
|
|
253
|
+
async function getExpoRouterRscEntriesGetterAsync({ platform }) {
|
|
250
254
|
await ensureMemo();
|
|
251
255
|
// We can only cache this if we're using the client router since it doesn't change or use HMR
|
|
252
256
|
if (routerCache.has(platform) && useClientRouter) {
|
|
253
257
|
return routerCache.get(platform);
|
|
254
258
|
}
|
|
255
259
|
const router = await ssrLoadModule(routerModule, {
|
|
256
|
-
environment:
|
|
260
|
+
environment: 'react-server',
|
|
257
261
|
modulesOnly: true,
|
|
258
262
|
platform
|
|
259
263
|
}, {
|
|
@@ -264,27 +268,27 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
264
268
|
}
|
|
265
269
|
function getResolveClientEntry(context) {
|
|
266
270
|
const serverRoot = getMetroServerRootMemo(projectRoot);
|
|
267
|
-
const { mode
|
|
271
|
+
const { mode, minify = false, isExporting, baseUrl, routerRoot, asyncRoutes, preserveEnvVars, reactCompiler, lazy } = instanceMetroOptions;
|
|
268
272
|
(0, _assert().default)(isExporting != null && baseUrl != null && mode != null && routerRoot != null && asyncRoutes != null, `The server must be started. (isExporting: ${isExporting}, baseUrl: ${baseUrl}, mode: ${mode}, routerRoot: ${routerRoot}, asyncRoutes: ${asyncRoutes})`);
|
|
269
273
|
return (file, isServer)=>{
|
|
270
274
|
if (isExporting) {
|
|
271
|
-
(0, _assert().default)(context.ssrManifest,
|
|
275
|
+
(0, _assert().default)(context.ssrManifest, 'SSR manifest must exist when exporting');
|
|
272
276
|
const relativeFilePath = (0, _filePath.toPosixPath)(_path().default.relative(serverRoot, file));
|
|
273
277
|
(0, _assert().default)(context.ssrManifest.has(relativeFilePath), `SSR manifest is missing client boundary "${relativeFilePath}"`);
|
|
274
278
|
const chunk = context.ssrManifest.get(relativeFilePath);
|
|
275
279
|
return {
|
|
276
280
|
id: String(createModuleId(file, {
|
|
277
281
|
platform: context.platform,
|
|
278
|
-
environment:
|
|
282
|
+
environment: 'client'
|
|
279
283
|
})),
|
|
280
284
|
chunks: chunk != null ? [
|
|
281
285
|
chunk
|
|
282
286
|
] : []
|
|
283
287
|
};
|
|
284
288
|
}
|
|
285
|
-
const environment = isServer ?
|
|
289
|
+
const environment = isServer ? 'react-server' : 'client';
|
|
286
290
|
const searchParams = (0, _metroOptions.createBundleUrlSearchParams)({
|
|
287
|
-
mainModuleName:
|
|
291
|
+
mainModuleName: '',
|
|
288
292
|
platform: context.platform,
|
|
289
293
|
mode,
|
|
290
294
|
minify,
|
|
@@ -303,17 +307,17 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
303
307
|
modulesOnly: true,
|
|
304
308
|
runModule: false
|
|
305
309
|
});
|
|
306
|
-
searchParams.set(
|
|
307
|
-
const clientReferenceUrl = new URL(
|
|
310
|
+
searchParams.set('resolver.clientboundary', String(true));
|
|
311
|
+
const clientReferenceUrl = new URL('http://a');
|
|
308
312
|
// TICKLE: Handshake 1
|
|
309
|
-
searchParams.set(
|
|
313
|
+
searchParams.set('xRSC', '1');
|
|
310
314
|
clientReferenceUrl.search = searchParams.toString();
|
|
311
|
-
const filePath = file.startsWith(
|
|
312
|
-
const
|
|
313
|
-
clientReferenceUrl.pathname =
|
|
315
|
+
const filePath = file.startsWith('file://') ? fileURLToFilePath(file) : file;
|
|
316
|
+
const relativeFilePath = _path().default.relative(serverRoot, filePath);
|
|
317
|
+
clientReferenceUrl.pathname = relativeFilePath;
|
|
314
318
|
// Ensure url.pathname ends with '.bundle'
|
|
315
|
-
if (!clientReferenceUrl.pathname.endsWith(
|
|
316
|
-
clientReferenceUrl.pathname +=
|
|
319
|
+
if (!clientReferenceUrl.pathname.endsWith('.bundle')) {
|
|
320
|
+
clientReferenceUrl.pathname += '.bundle';
|
|
317
321
|
}
|
|
318
322
|
// Return relative URLs to help Android fetch from wherever it was loaded from since it doesn't support localhost.
|
|
319
323
|
const chunkName = clientReferenceUrl.pathname + clientReferenceUrl.search;
|
|
@@ -332,9 +336,9 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
332
336
|
let ensurePromise = null;
|
|
333
337
|
async function ensureSSRReady() {
|
|
334
338
|
// TODO: Extract CSS Modules / Assets from the bundler process
|
|
335
|
-
const runtime = await ssrLoadModule(
|
|
336
|
-
environment:
|
|
337
|
-
platform:
|
|
339
|
+
const runtime = await ssrLoadModule('metro-runtime/src/modules/empty-module.js', {
|
|
340
|
+
environment: 'react-server',
|
|
341
|
+
platform: 'web'
|
|
338
342
|
});
|
|
339
343
|
return runtime;
|
|
340
344
|
}
|
|
@@ -349,8 +353,8 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
349
353
|
return rscRendererCache.get(platform);
|
|
350
354
|
}
|
|
351
355
|
// TODO: Extract CSS Modules / Assets from the bundler process
|
|
352
|
-
const renderer = await ssrLoadModule(
|
|
353
|
-
environment:
|
|
356
|
+
const renderer = await ssrLoadModule('expo-router/build/rsc/rsc-renderer', {
|
|
357
|
+
environment: 'react-server',
|
|
354
358
|
platform
|
|
355
359
|
});
|
|
356
360
|
rscRendererCache.set(platform, renderer);
|
|
@@ -366,14 +370,14 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
366
370
|
rscRenderContext.set(platform, context);
|
|
367
371
|
return context;
|
|
368
372
|
}
|
|
369
|
-
async function renderRscToReadableStream({ input
|
|
370
|
-
(0, _assert().default)(isExporting != null,
|
|
371
|
-
if (method ===
|
|
372
|
-
(0, _assert().default)(body,
|
|
373
|
+
async function renderRscToReadableStream({ input, headers, method, platform, body, engine, contentType, ssrManifest, decodedBody }, isExporting = instanceMetroOptions.isExporting) {
|
|
374
|
+
(0, _assert().default)(isExporting != null, 'The server must be started before calling renderRscToReadableStream.');
|
|
375
|
+
if (method === 'POST') {
|
|
376
|
+
(0, _assert().default)(body, 'Server request must be provided when method is POST (server actions)');
|
|
373
377
|
}
|
|
374
378
|
const context = getRscRenderContext(platform);
|
|
375
|
-
context[
|
|
376
|
-
const { renderRsc
|
|
379
|
+
context['__expo_requestHeaders'] = headers;
|
|
380
|
+
const { renderRsc } = await getRscRendererAsync(platform);
|
|
377
381
|
return renderRsc({
|
|
378
382
|
body,
|
|
379
383
|
decodedBody,
|
|
@@ -393,7 +397,7 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
393
397
|
}),
|
|
394
398
|
async loadServerModuleRsc (urlFragment) {
|
|
395
399
|
const serverRoot = getMetroServerRootMemo(projectRoot);
|
|
396
|
-
debug(
|
|
400
|
+
debug('[SSR] loadServerModuleRsc:', urlFragment);
|
|
397
401
|
const options = (0, _metroOptions.getMetroOptionsFromUrl)(urlFragment);
|
|
398
402
|
return ssrLoadModule(_path().default.join(serverRoot, options.mainModuleName), options, {
|
|
399
403
|
hot: true
|
|
@@ -405,39 +409,39 @@ function createServerComponentsMiddleware(projectRoot, { rscPath , instanceMetro
|
|
|
405
409
|
// Get the static client boundaries (no dead code elimination allowed) for the production export.
|
|
406
410
|
getExpoRouterClientReferencesAsync,
|
|
407
411
|
exportServerActionsAsync,
|
|
408
|
-
async exportRoutesAsync ({ platform
|
|
412
|
+
async exportRoutesAsync ({ platform, ssrManifest }, files) {
|
|
409
413
|
// TODO: When we add web SSR support, we need to extract CSS Modules / Assets from the bundler process to prevent FLOUC.
|
|
410
|
-
const { getBuildConfig
|
|
414
|
+
const { getBuildConfig } = (await getExpoRouterRscEntriesGetterAsync({
|
|
411
415
|
platform
|
|
412
416
|
})).default;
|
|
413
417
|
// Get all the routes to render.
|
|
414
418
|
const buildConfig = await getBuildConfig(async ()=>// TODO: Rework prefetching code to use Metro runtime.
|
|
415
419
|
[]);
|
|
416
|
-
await Promise.all(Array.from(buildConfig).map(async ({ entries
|
|
417
|
-
for (const { input
|
|
420
|
+
await Promise.all(Array.from(buildConfig).map(async ({ entries })=>{
|
|
421
|
+
for (const { input, isStatic } of entries || []){
|
|
418
422
|
if (!isStatic) {
|
|
419
|
-
debug(
|
|
423
|
+
debug('Skipping static export for route', {
|
|
420
424
|
input
|
|
421
425
|
});
|
|
422
426
|
continue;
|
|
423
427
|
}
|
|
424
|
-
const destRscFile = _path().default.join(
|
|
428
|
+
const destRscFile = _path().default.join('_flight', platform, encodeInput(input));
|
|
425
429
|
const pipe = await renderRscToReadableStream({
|
|
426
430
|
input,
|
|
427
|
-
method:
|
|
431
|
+
method: 'GET',
|
|
428
432
|
platform,
|
|
429
433
|
headers: new Headers(),
|
|
430
434
|
ssrManifest
|
|
431
435
|
}, true);
|
|
432
436
|
const rsc = await (0, _stream.streamToStringAsync)(pipe);
|
|
433
|
-
debug(
|
|
437
|
+
debug('RSC Payload', {
|
|
434
438
|
platform,
|
|
435
439
|
input,
|
|
436
440
|
rsc
|
|
437
441
|
});
|
|
438
442
|
files.set(destRscFile, {
|
|
439
443
|
contents: rsc,
|
|
440
|
-
targetDomain:
|
|
444
|
+
targetDomain: 'client',
|
|
441
445
|
rscId: input
|
|
442
446
|
});
|
|
443
447
|
}
|
|
@@ -458,32 +462,32 @@ const getFullUrl = (url)=>{
|
|
|
458
462
|
try {
|
|
459
463
|
return new URL(url);
|
|
460
464
|
} catch {
|
|
461
|
-
return new URL(url,
|
|
465
|
+
return new URL(url, 'http://localhost:0');
|
|
462
466
|
}
|
|
463
467
|
};
|
|
464
468
|
const fileURLToFilePath = (fileURL)=>{
|
|
465
469
|
return _url().default.fileURLToPath(fileURL);
|
|
466
470
|
};
|
|
467
471
|
const encodeInput = (input)=>{
|
|
468
|
-
if (input ===
|
|
469
|
-
return
|
|
472
|
+
if (input === '') {
|
|
473
|
+
return 'index.txt';
|
|
470
474
|
}
|
|
471
|
-
if (input ===
|
|
472
|
-
throw new Error(
|
|
475
|
+
if (input === 'index') {
|
|
476
|
+
throw new Error('Input should not be `index`');
|
|
473
477
|
}
|
|
474
|
-
if (input.startsWith(
|
|
475
|
-
throw new Error(
|
|
478
|
+
if (input.startsWith('/')) {
|
|
479
|
+
throw new Error('Input should not start with `/`');
|
|
476
480
|
}
|
|
477
|
-
if (input.endsWith(
|
|
478
|
-
throw new Error(
|
|
481
|
+
if (input.endsWith('/')) {
|
|
482
|
+
throw new Error('Input should not end with `/`');
|
|
479
483
|
}
|
|
480
|
-
return input +
|
|
484
|
+
return input + '.txt';
|
|
481
485
|
};
|
|
482
486
|
function wrapBundle(str) {
|
|
483
487
|
// Skip the metro runtime so debugging is a bit easier.
|
|
484
488
|
// Replace the __r() call with an export statement.
|
|
485
489
|
// Use gm to apply to the last require line. This is needed when the bundle has side-effects.
|
|
486
|
-
return str.replace(/^(__r\(.*\);)$/gm,
|
|
490
|
+
return str.replace(/^(__r\(.*\);)$/gm, 'module.exports = $1');
|
|
487
491
|
}
|
|
488
492
|
|
|
489
493
|
//# sourceMappingURL=createServerComponentsMiddleware.js.map
|