@expo/cli 1.0.0-canary-20250320-7a205d3 → 1.0.0-canary-20250402-161f57b
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 +72 -62
- 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 +68 -64
- 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 +293 -280
- 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 +110 -98
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +34 -30
- 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 +28 -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 +17 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/fetch.ts"],"sourcesContent":["import type { FetchLike } from '../api/rest/client.types';\n\n/**\n * The Node's built-in fetch API, but polyfilled from `undici` if necessary.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const fetch: FetchLike =\n typeof globalThis.fetch !== 'undefined' ? globalThis.fetch : require('undici').fetch;\n\n/**\n * Node's built-in fetch Headers class, or the polyfilled Headers from `undici` when unavailable.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const Headers: typeof import('undici').Headers =\n typeof globalThis.Headers !== 'undefined' ? globalThis.Headers : require('undici').Headers;\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/fetch.ts"],"sourcesContent":["import type { FetchLike } from '../api/rest/client.types';\n\n/**\n * The Node's built-in fetch API, but polyfilled from `undici` if necessary.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const fetch: FetchLike =\n typeof globalThis.fetch !== 'undefined' ? globalThis.fetch : require('undici').fetch;\n\n/**\n * Node's built-in fetch Headers class, or the polyfilled Headers from `undici` when unavailable.\n * @todo(cedric): remove this once we min-support a Node version where fetch can't be disabled\n */\nexport const Headers: typeof import('undici').Headers =\n typeof globalThis.Headers !== 'undefined' ? globalThis.Headers : require('undici').Headers;\n"],"names":["Headers","fetch","globalThis","require"],"mappings":";;;;;;;;;;;IAaaA,OAAO;eAAPA;;IAPAC,KAAK;eAALA;;;AAAN,MAAMA,QACX,OAAOC,WAAWD,KAAK,KAAK,cAAcC,WAAWD,KAAK,GAAGE,QAAQ,UAAUF,KAAK;AAM/E,MAAMD,UACX,OAAOE,WAAWF,OAAO,KAAK,cAAcE,WAAWF,OAAO,GAAGG,QAAQ,UAAUH,OAAO"}
|
|
@@ -9,30 +9,34 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
resolveRealEntryFilePath: ()
|
|
13
|
-
|
|
12
|
+
resolveRealEntryFilePath: function() {
|
|
13
|
+
return resolveRealEntryFilePath;
|
|
14
|
+
},
|
|
15
|
+
toPosixPath: function() {
|
|
16
|
+
return toPosixPath;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
19
|
function _fs() {
|
|
16
|
-
const data = /*#__PURE__*/
|
|
20
|
+
const data = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
17
21
|
_fs = function() {
|
|
18
22
|
return data;
|
|
19
23
|
};
|
|
20
24
|
return data;
|
|
21
25
|
}
|
|
22
|
-
function
|
|
26
|
+
function _interop_require_default(obj) {
|
|
23
27
|
return obj && obj.__esModule ? obj : {
|
|
24
28
|
default: obj
|
|
25
29
|
};
|
|
26
30
|
}
|
|
27
31
|
const REGEXP_REPLACE_SLASHES = /\\/g;
|
|
28
32
|
function resolveRealEntryFilePath(projectRoot, entryFile) {
|
|
29
|
-
if (projectRoot.startsWith(
|
|
33
|
+
if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {
|
|
30
34
|
return _fs().default.realpathSync(entryFile);
|
|
31
35
|
}
|
|
32
36
|
return entryFile;
|
|
33
37
|
}
|
|
34
38
|
function toPosixPath(filePath) {
|
|
35
|
-
return filePath.replace(REGEXP_REPLACE_SLASHES,
|
|
39
|
+
return filePath.replace(REGEXP_REPLACE_SLASHES, '/');
|
|
36
40
|
}
|
|
37
41
|
|
|
38
42
|
//# sourceMappingURL=filePath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/filePath.ts"],"sourcesContent":["import fs from 'fs';\n\nconst REGEXP_REPLACE_SLASHES = /\\\\/g;\n\n/**\n * This is a workaround for Metro not resolving entry file paths to their real location.\n * When running exports through `eas build --local` on macOS, the `/var/folders` path is used instead of `/private/var/folders`.\n *\n * See: https://github.com/expo/expo/issues/28890\n */\nexport function resolveRealEntryFilePath(projectRoot: string, entryFile: string): string {\n if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {\n return fs.realpathSync(entryFile);\n }\n\n return entryFile;\n}\n\n/**\n * Convert any platform-specific path to a POSIX path.\n */\nexport function toPosixPath(filePath: string): string {\n return filePath.replace(REGEXP_REPLACE_SLASHES, '/');\n}\n"],"names":["resolveRealEntryFilePath","toPosixPath","REGEXP_REPLACE_SLASHES","projectRoot","entryFile","startsWith","fs","realpathSync","filePath","replace"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/filePath.ts"],"sourcesContent":["import fs from 'fs';\n\nconst REGEXP_REPLACE_SLASHES = /\\\\/g;\n\n/**\n * This is a workaround for Metro not resolving entry file paths to their real location.\n * When running exports through `eas build --local` on macOS, the `/var/folders` path is used instead of `/private/var/folders`.\n *\n * See: https://github.com/expo/expo/issues/28890\n */\nexport function resolveRealEntryFilePath(projectRoot: string, entryFile: string): string {\n if (projectRoot.startsWith('/private/var') && entryFile.startsWith('/var')) {\n return fs.realpathSync(entryFile);\n }\n\n return entryFile;\n}\n\n/**\n * Convert any platform-specific path to a POSIX path.\n */\nexport function toPosixPath(filePath: string): string {\n return filePath.replace(REGEXP_REPLACE_SLASHES, '/');\n}\n"],"names":["resolveRealEntryFilePath","toPosixPath","REGEXP_REPLACE_SLASHES","projectRoot","entryFile","startsWith","fs","realpathSync","filePath","replace"],"mappings":";;;;;;;;;;;IAUgBA,wBAAwB;eAAxBA;;IAWAC,WAAW;eAAXA;;;;gEArBD;;;;;;;;;;;AAEf,MAAMC,yBAAyB;AAQxB,SAASF,yBAAyBG,WAAmB,EAAEC,SAAiB;IAC7E,IAAID,YAAYE,UAAU,CAAC,mBAAmBD,UAAUC,UAAU,CAAC,SAAS;QAC1E,OAAOC,aAAE,CAACC,YAAY,CAACH;IACzB;IAEA,OAAOA;AACT;AAKO,SAASH,YAAYO,QAAgB;IAC1C,OAAOA,SAASC,OAAO,CAACP,wBAAwB;AAClD"}
|
|
@@ -9,25 +9,29 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
findFileInParents: function() {
|
|
13
|
+
return findFileInParents;
|
|
14
|
+
},
|
|
15
|
+
findUpProjectRootOrAssert: function() {
|
|
16
|
+
return findUpProjectRootOrAssert;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
19
|
function _path() {
|
|
16
|
-
const data = /*#__PURE__*/
|
|
20
|
+
const data = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
17
21
|
_path = function() {
|
|
18
22
|
return data;
|
|
19
23
|
};
|
|
20
24
|
return data;
|
|
21
25
|
}
|
|
22
|
-
function
|
|
23
|
-
const data = /*#__PURE__*/
|
|
24
|
-
|
|
26
|
+
function _resolvefrom() {
|
|
27
|
+
const data = /*#__PURE__*/ _interop_require_default(require("resolve-from"));
|
|
28
|
+
_resolvefrom = function() {
|
|
25
29
|
return data;
|
|
26
30
|
};
|
|
27
31
|
return data;
|
|
28
32
|
}
|
|
29
33
|
const _errors = require("../utils/errors");
|
|
30
|
-
function
|
|
34
|
+
function _interop_require_default(obj) {
|
|
31
35
|
return obj && obj.__esModule ? obj : {
|
|
32
36
|
default: obj
|
|
33
37
|
};
|
|
@@ -40,14 +44,14 @@ function findUpProjectRootOrAssert(cwd) {
|
|
|
40
44
|
return projectRoot;
|
|
41
45
|
}
|
|
42
46
|
function findUpProjectRoot(cwd) {
|
|
43
|
-
const found =
|
|
47
|
+
const found = _resolvefrom().default.silent(cwd, './package.json');
|
|
44
48
|
if (found) return _path().default.dirname(found);
|
|
45
49
|
const parent = _path().default.dirname(cwd);
|
|
46
50
|
if (parent === cwd) return null;
|
|
47
51
|
return findUpProjectRoot(parent);
|
|
48
52
|
}
|
|
49
53
|
function findFileInParents(cwd, fileName) {
|
|
50
|
-
const found =
|
|
54
|
+
const found = _resolvefrom().default.silent(cwd, `./${fileName}`);
|
|
51
55
|
if (found) return found;
|
|
52
56
|
const parent = _path().default.dirname(cwd);
|
|
53
57
|
if (parent === cwd) return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/findUp.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\nimport { CommandError } from '../utils/errors';\n\n/** Look up directories until one with a `package.json` can be found, assert if none can be found. */\nexport function findUpProjectRootOrAssert(cwd: string): string {\n const projectRoot = findUpProjectRoot(cwd);\n if (!projectRoot) {\n throw new CommandError(`Project root directory not found (working directory: ${cwd})`);\n }\n return projectRoot;\n}\n\nfunction findUpProjectRoot(cwd: string): string | null {\n const found = resolveFrom.silent(cwd, './package.json');\n if (found) return path.dirname(found);\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findUpProjectRoot(parent);\n}\n\n/**\n * Find a file in the (closest) parent directories.\n * This will recursively look for the file, until the root directory is reached.\n */\nexport function findFileInParents(cwd: string, fileName: string): string | null {\n const found = resolveFrom.silent(cwd, `./${fileName}`);\n if (found) return found;\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findFileInParents(parent, fileName);\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/findUp.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\nimport { CommandError } from '../utils/errors';\n\n/** Look up directories until one with a `package.json` can be found, assert if none can be found. */\nexport function findUpProjectRootOrAssert(cwd: string): string {\n const projectRoot = findUpProjectRoot(cwd);\n if (!projectRoot) {\n throw new CommandError(`Project root directory not found (working directory: ${cwd})`);\n }\n return projectRoot;\n}\n\nfunction findUpProjectRoot(cwd: string): string | null {\n const found = resolveFrom.silent(cwd, './package.json');\n if (found) return path.dirname(found);\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findUpProjectRoot(parent);\n}\n\n/**\n * Find a file in the (closest) parent directories.\n * This will recursively look for the file, until the root directory is reached.\n */\nexport function findFileInParents(cwd: string, fileName: string): string | null {\n const found = resolveFrom.silent(cwd, `./${fileName}`);\n if (found) return found;\n\n const parent = path.dirname(cwd);\n if (parent === cwd) return null;\n\n return findFileInParents(parent, fileName);\n}\n"],"names":["findFileInParents","findUpProjectRootOrAssert","cwd","projectRoot","findUpProjectRoot","CommandError","found","resolveFrom","silent","path","dirname","parent","fileName"],"mappings":";;;;;;;;;;;IA4BgBA,iBAAiB;eAAjBA;;IAtBAC,yBAAyB;eAAzBA;;;;gEANC;;;;;;;gEACO;;;;;;wBAEK;;;;;;AAGtB,SAASA,0BAA0BC,GAAW;IACnD,MAAMC,cAAcC,kBAAkBF;IACtC,IAAI,CAACC,aAAa;QAChB,MAAM,IAAIE,oBAAY,CAAC,CAAC,qDAAqD,EAAEH,IAAI,CAAC,CAAC;IACvF;IACA,OAAOC;AACT;AAEA,SAASC,kBAAkBF,GAAW;IACpC,MAAMI,QAAQC,sBAAW,CAACC,MAAM,CAACN,KAAK;IACtC,IAAII,OAAO,OAAOG,eAAI,CAACC,OAAO,CAACJ;IAE/B,MAAMK,SAASF,eAAI,CAACC,OAAO,CAACR;IAC5B,IAAIS,WAAWT,KAAK,OAAO;IAE3B,OAAOE,kBAAkBO;AAC3B;AAMO,SAASX,kBAAkBE,GAAW,EAAEU,QAAgB;IAC7D,MAAMN,QAAQC,sBAAW,CAACC,MAAM,CAACN,KAAK,CAAC,EAAE,EAAEU,UAAU;IACrD,IAAIN,OAAO,OAAOA;IAElB,MAAMK,SAASF,eAAI,CAACC,OAAO,CAACR;IAC5B,IAAIS,WAAWT,KAAK,OAAO;IAE3B,OAAOF,kBAAkBW,QAAQC;AACnC"}
|
package/build/src/utils/fn.js
CHANGED
|
@@ -9,8 +9,12 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
guardAsync: function() {
|
|
13
|
+
return guardAsync;
|
|
14
|
+
},
|
|
15
|
+
memoize: function() {
|
|
16
|
+
return memoize;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
19
|
function memoize(fn) {
|
|
16
20
|
const cache = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/fn.ts"],"sourcesContent":["/** `lodash.memoize` */\nexport function memoize<T extends (...args: any[]) => any>(fn: T): T {\n const cache = new Map<string, any>();\n return ((...args: any[]) => {\n const key = JSON.stringify(args);\n if (cache.has(key)) {\n return cache.get(key);\n }\n const result = fn(...args);\n cache.set(key, result);\n return result;\n }) as T;\n}\n\n/** memoizes an async function to prevent subsequent calls that might be invoked before the function has finished resolving. */\nexport function guardAsync<V, T extends (...args: any[]) => Promise<V>>(fn: T): T {\n let invoked = false;\n let returnValue: V;\n\n const guard: any = async (...args: any[]): Promise<V> => {\n if (!invoked) {\n invoked = true;\n returnValue = await fn(...args);\n }\n\n return returnValue;\n };\n\n return guard;\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/fn.ts"],"sourcesContent":["/** `lodash.memoize` */\nexport function memoize<T extends (...args: any[]) => any>(fn: T): T {\n const cache = new Map<string, any>();\n return ((...args: any[]) => {\n const key = JSON.stringify(args);\n if (cache.has(key)) {\n return cache.get(key);\n }\n const result = fn(...args);\n cache.set(key, result);\n return result;\n }) as T;\n}\n\n/** memoizes an async function to prevent subsequent calls that might be invoked before the function has finished resolving. */\nexport function guardAsync<V, T extends (...args: any[]) => Promise<V>>(fn: T): T {\n let invoked = false;\n let returnValue: V;\n\n const guard: any = async (...args: any[]): Promise<V> => {\n if (!invoked) {\n invoked = true;\n returnValue = await fn(...args);\n }\n\n return returnValue;\n };\n\n return guard;\n}\n"],"names":["guardAsync","memoize","fn","cache","Map","args","key","JSON","stringify","has","get","result","set","invoked","returnValue","guard"],"mappings":"AAAA,qBAAqB;;;;;;;;;;;IAeLA,UAAU;eAAVA;;IAdAC,OAAO;eAAPA;;;AAAT,SAASA,QAA2CC,EAAK;IAC9D,MAAMC,QAAQ,IAAIC;IAClB,OAAQ,CAAC,GAAGC;QACV,MAAMC,MAAMC,KAAKC,SAAS,CAACH;QAC3B,IAAIF,MAAMM,GAAG,CAACH,MAAM;YAClB,OAAOH,MAAMO,GAAG,CAACJ;QACnB;QACA,MAAMK,SAAST,MAAMG;QACrBF,MAAMS,GAAG,CAACN,KAAKK;QACf,OAAOA;IACT;AACF;AAGO,SAASX,WAAwDE,EAAK;IAC3E,IAAIW,UAAU;IACd,IAAIC;IAEJ,MAAMC,QAAa,OAAO,GAAGV;QAC3B,IAAI,CAACQ,SAAS;YACZA,UAAU;YACVC,cAAc,MAAMZ,MAAMG;QAC5B;QAEA,OAAOS;IACT;IAEA,OAAOC;AACT"}
|
|
@@ -9,12 +9,16 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
getOrPromptForBundleIdentifierAsync: ()
|
|
13
|
-
|
|
12
|
+
getOrPromptForBundleIdentifierAsync: function() {
|
|
13
|
+
return getOrPromptForBundleIdentifierAsync;
|
|
14
|
+
},
|
|
15
|
+
getOrPromptForPackageAsync: function() {
|
|
16
|
+
return getOrPromptForPackageAsync;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
|
-
function
|
|
19
|
+
function _graphqlweb() {
|
|
16
20
|
const data = require("@0no-co/graphql.web");
|
|
17
|
-
|
|
21
|
+
_graphqlweb = function() {
|
|
18
22
|
return data;
|
|
19
23
|
};
|
|
20
24
|
return data;
|
|
@@ -34,7 +38,7 @@ function _core() {
|
|
|
34
38
|
return data;
|
|
35
39
|
}
|
|
36
40
|
function _chalk() {
|
|
37
|
-
const data = /*#__PURE__*/
|
|
41
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
38
42
|
_chalk = function() {
|
|
39
43
|
return data;
|
|
40
44
|
};
|
|
@@ -43,12 +47,12 @@ function _chalk() {
|
|
|
43
47
|
const _fn = require("./fn");
|
|
44
48
|
const _link = require("./link");
|
|
45
49
|
const _modifyConfigAsync = require("./modifyConfigAsync");
|
|
46
|
-
const _prompts = /*#__PURE__*/
|
|
50
|
+
const _prompts = /*#__PURE__*/ _interop_require_wildcard(require("./prompts"));
|
|
47
51
|
const _validateApplicationId = require("./validateApplicationId");
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
const _log = /*#__PURE__*/
|
|
51
|
-
function
|
|
52
|
+
const _AppQuery = require("../api/graphql/queries/AppQuery");
|
|
53
|
+
const _UserSettings = require("../api/user/UserSettings");
|
|
54
|
+
const _log = /*#__PURE__*/ _interop_require_wildcard(require("../log"));
|
|
55
|
+
function _interop_require_default(obj) {
|
|
52
56
|
return obj && obj.__esModule ? obj : {
|
|
53
57
|
default: obj
|
|
54
58
|
};
|
|
@@ -61,7 +65,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
61
65
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
62
66
|
})(nodeInterop);
|
|
63
67
|
}
|
|
64
|
-
function
|
|
68
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
65
69
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
66
70
|
return obj;
|
|
67
71
|
}
|
|
@@ -74,7 +78,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
74
78
|
if (cache && cache.has(obj)) {
|
|
75
79
|
return cache.get(obj);
|
|
76
80
|
}
|
|
77
|
-
var newObj = {
|
|
81
|
+
var newObj = {
|
|
82
|
+
__proto__: null
|
|
83
|
+
};
|
|
78
84
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
79
85
|
for(var key in obj){
|
|
80
86
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -92,24 +98,24 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
92
98
|
}
|
|
93
99
|
return newObj;
|
|
94
100
|
}
|
|
95
|
-
const debug = require(
|
|
96
|
-
const ANONYMOUS_USERNAME =
|
|
101
|
+
const debug = require('debug')('expo:app-id');
|
|
102
|
+
const ANONYMOUS_USERNAME = 'anonymous';
|
|
97
103
|
async function getRecommendedReverseDomainNameSecondPartAsync(exp) {
|
|
98
|
-
var
|
|
104
|
+
var _getSettings_read_auth, _exp_extra_eas, _exp_extra;
|
|
99
105
|
// Get the cached username.
|
|
100
|
-
const cachedUsername = (
|
|
106
|
+
const cachedUsername = (_getSettings_read_auth = (0, _UserSettings.getSettings)().read().auth) == null ? void 0 : _getSettings_read_auth.username;
|
|
101
107
|
if (cachedUsername) {
|
|
102
108
|
return cachedUsername;
|
|
103
109
|
}
|
|
104
|
-
const easProjectId = (
|
|
110
|
+
const easProjectId = (_exp_extra = exp.extra) == null ? void 0 : (_exp_extra_eas = _exp_extra.eas) == null ? void 0 : _exp_extra_eas.projectId;
|
|
105
111
|
if (!easProjectId) {
|
|
106
112
|
return null;
|
|
107
113
|
}
|
|
108
114
|
try {
|
|
109
|
-
const app = await
|
|
115
|
+
const app = await _AppQuery.AppQuery.byIdAsync(easProjectId);
|
|
110
116
|
return app.ownerAccount.name;
|
|
111
117
|
} catch (e) {
|
|
112
|
-
if (e instanceof
|
|
118
|
+
if (e instanceof _graphqlweb().GraphQLError || e instanceof _core().CombinedError) {
|
|
113
119
|
return null;
|
|
114
120
|
}
|
|
115
121
|
throw e;
|
|
@@ -118,8 +124,8 @@ async function getRecommendedReverseDomainNameSecondPartAsync(exp) {
|
|
|
118
124
|
const NO_BUNDLE_ID_MESSAGE = `Project must have a \`ios.bundleIdentifier\` set in the Expo config (app.json or app.config.js).`;
|
|
119
125
|
const NO_PACKAGE_MESSAGE = `Project must have a \`android.package\` set in the Expo config (app.json or app.config.js).`;
|
|
120
126
|
async function getOrPromptForBundleIdentifierAsync(projectRoot, exp = (0, _config().getConfig)(projectRoot).exp) {
|
|
121
|
-
var
|
|
122
|
-
const current = (
|
|
127
|
+
var _exp_ios;
|
|
128
|
+
const current = (_exp_ios = exp.ios) == null ? void 0 : _exp_ios.bundleIdentifier;
|
|
123
129
|
if (current) {
|
|
124
130
|
(0, _validateApplicationId.assertValidBundleId)(current);
|
|
125
131
|
return current;
|
|
@@ -129,14 +135,14 @@ async function getOrPromptForBundleIdentifierAsync(projectRoot, exp = (0, _confi
|
|
|
129
135
|
const memoLog = (0, _fn.memoize)(_log.log);
|
|
130
136
|
async function promptForBundleIdWithInitialAsync(projectRoot, exp, bundleIdentifier) {
|
|
131
137
|
if (!bundleIdentifier) {
|
|
132
|
-
memoLog((0, _chalk().default)`\n{bold 📝 iOS Bundle Identifier} {dim ${(0, _link.learnMore)(
|
|
138
|
+
memoLog((0, _chalk().default)`\n{bold 📝 iOS Bundle Identifier} {dim ${(0, _link.learnMore)('https://expo.fyi/bundle-identifier')}}\n`);
|
|
133
139
|
// Prompt the user for the bundle ID.
|
|
134
140
|
// Even if the project is using a dynamic config we can still
|
|
135
141
|
// prompt a better error message, recommend a default value, and help the user
|
|
136
142
|
// validate their custom bundle ID upfront.
|
|
137
|
-
const { input
|
|
138
|
-
type:
|
|
139
|
-
name:
|
|
143
|
+
const { input } = await (0, _prompts.default)({
|
|
144
|
+
type: 'text',
|
|
145
|
+
name: 'input',
|
|
140
146
|
// The Apple helps people know this isn't an EAS feature.
|
|
141
147
|
message: `What would you like your iOS bundle identifier to be?`,
|
|
142
148
|
validate: _validateApplicationId.validateBundleId
|
|
@@ -180,8 +186,8 @@ async function warnAndConfirmAsync(warning) {
|
|
|
180
186
|
}
|
|
181
187
|
// Recommend a bundle identifier based on the account name of the owner of the project and project slug.
|
|
182
188
|
async function getRecommendedBundleIdAsync(exp) {
|
|
183
|
-
var
|
|
184
|
-
const possibleIdFromAndroid = ((
|
|
189
|
+
var _exp_android;
|
|
190
|
+
const possibleIdFromAndroid = ((_exp_android = exp.android) == null ? void 0 : _exp_android.package) ? (0, _validateApplicationId.getSanitizedBundleIdentifier)(exp.android.package) : undefined;
|
|
185
191
|
// Attempt to use the android package name first since it's convenient to have them aligned.
|
|
186
192
|
if (possibleIdFromAndroid && (0, _validateApplicationId.validateBundleId)(possibleIdFromAndroid)) {
|
|
187
193
|
return possibleIdFromAndroid;
|
|
@@ -196,8 +202,8 @@ async function getRecommendedBundleIdAsync(exp) {
|
|
|
196
202
|
}
|
|
197
203
|
// Recommend a package name based on the account name of the owner of the project and project slug.
|
|
198
204
|
async function getRecommendedPackageNameAsync(exp) {
|
|
199
|
-
var
|
|
200
|
-
const possibleIdFromApple = ((
|
|
205
|
+
var _exp_ios;
|
|
206
|
+
const possibleIdFromApple = ((_exp_ios = exp.ios) == null ? void 0 : _exp_ios.bundleIdentifier) ? (0, _validateApplicationId.getSanitizedPackage)(exp.ios.bundleIdentifier) : undefined;
|
|
201
207
|
// Attempt to use the ios bundle id first since it's convenient to have them aligned.
|
|
202
208
|
if (possibleIdFromApple && (0, _validateApplicationId.validatePackage)(possibleIdFromApple)) {
|
|
203
209
|
return possibleIdFromApple;
|
|
@@ -213,8 +219,8 @@ async function getRecommendedPackageNameAsync(exp) {
|
|
|
213
219
|
return undefined;
|
|
214
220
|
}
|
|
215
221
|
async function getOrPromptForPackageAsync(projectRoot, exp = (0, _config().getConfig)(projectRoot).exp) {
|
|
216
|
-
var
|
|
217
|
-
const current = (
|
|
222
|
+
var _exp_android;
|
|
223
|
+
const current = (_exp_android = exp.android) == null ? void 0 : _exp_android.package;
|
|
218
224
|
if (current) {
|
|
219
225
|
(0, _validateApplicationId.assertValidPackage)(current);
|
|
220
226
|
return current;
|
|
@@ -226,14 +232,14 @@ async function promptForPackageAsync(projectRoot, exp) {
|
|
|
226
232
|
}
|
|
227
233
|
async function promptForPackageWithInitialAsync(projectRoot, exp, packageName) {
|
|
228
234
|
if (!packageName) {
|
|
229
|
-
memoLog((0, _chalk().default)`\n{bold 📝 Android package} {dim ${(0, _link.learnMore)(
|
|
235
|
+
memoLog((0, _chalk().default)`\n{bold 📝 Android package} {dim ${(0, _link.learnMore)('https://expo.fyi/android-package')}}\n`);
|
|
230
236
|
// Prompt the user for the android package.
|
|
231
237
|
// Even if the project is using a dynamic config we can still
|
|
232
238
|
// prompt a better error message, recommend a default value, and help the user
|
|
233
239
|
// validate their custom android package upfront.
|
|
234
|
-
const { input
|
|
235
|
-
type:
|
|
236
|
-
name:
|
|
240
|
+
const { input } = await (0, _prompts.default)({
|
|
241
|
+
type: 'text',
|
|
242
|
+
name: 'input',
|
|
237
243
|
message: `What would you like your Android package name to be?`,
|
|
238
244
|
validate: _validateApplicationId.validatePackageWithWarning
|
|
239
245
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/getOrPromptApplicationId.ts"],"sourcesContent":["import { GraphQLError } from '@0no-co/graphql.web';\nimport { ExpoConfig, getConfig } from '@expo/config';\nimport { CombinedError } from '@urql/core';\nimport chalk from 'chalk';\n\nimport { memoize } from './fn';\nimport { learnMore } from './link';\nimport { attemptModification } from './modifyConfigAsync';\nimport prompt, { confirmAsync } from './prompts';\nimport {\n assertValidBundleId,\n assertValidPackage,\n getBundleIdWarningAsync,\n getPackageNameWarningAsync,\n getSanitizedBundleIdentifier,\n getSanitizedPackage,\n validateBundleId,\n validatePackage,\n validatePackageWithWarning,\n} from './validateApplicationId';\nimport { AppQuery } from '../api/graphql/queries/AppQuery';\nimport { getSettings } from '../api/user/UserSettings';\nimport * as Log from '../log';\n\nconst debug = require('debug')('expo:app-id') as typeof console.log;\n\nconst ANONYMOUS_USERNAME = 'anonymous';\n\nasync function getRecommendedReverseDomainNameSecondPartAsync(\n exp: ExpoConfig\n): Promise<string | null> {\n // Get the cached username.\n const cachedUsername = getSettings().read().auth?.username;\n if (cachedUsername) {\n return cachedUsername;\n }\n const easProjectId = exp.extra?.eas?.projectId;\n if (!easProjectId) {\n return null;\n }\n\n try {\n const app = await AppQuery.byIdAsync(easProjectId);\n return app.ownerAccount.name;\n } catch (e) {\n if (e instanceof GraphQLError || e instanceof CombinedError) {\n return null;\n }\n throw e;\n }\n}\n\nconst NO_BUNDLE_ID_MESSAGE = `Project must have a \\`ios.bundleIdentifier\\` set in the Expo config (app.json or app.config.js).`;\n\nconst NO_PACKAGE_MESSAGE = `Project must have a \\`android.package\\` set in the Expo config (app.json or app.config.js).`;\n\n/**\n * Get the bundle identifier from the Expo config or prompt the user to choose a new bundle identifier.\n * Prompted value will be validated against the App Store and a local regex.\n * If the project Expo config is a static JSON file, the bundle identifier will be updated in the config automatically.\n */\nexport async function getOrPromptForBundleIdentifierAsync(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.ios?.bundleIdentifier;\n if (current) {\n assertValidBundleId(current);\n return current;\n }\n\n return promptForBundleIdWithInitialAsync(\n projectRoot,\n exp,\n await getRecommendedBundleIdAsync(exp)\n );\n}\n\nconst memoLog = memoize(Log.log);\n\nasync function promptForBundleIdWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n bundleIdentifier?: string\n): Promise<string> {\n if (!bundleIdentifier) {\n memoLog(\n chalk`\\n{bold 📝 iOS Bundle Identifier} {dim ${learnMore(\n 'https://expo.fyi/bundle-identifier'\n )}}\\n`\n );\n\n // Prompt the user for the bundle ID.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom bundle ID upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n // The Apple helps people know this isn't an EAS feature.\n message: `What would you like your iOS bundle identifier to be?`,\n validate: validateBundleId,\n },\n {\n nonInteractiveHelp: NO_BUNDLE_ID_MESSAGE,\n }\n );\n bundleIdentifier = input as string;\n }\n\n // Warn the user if the bundle ID is already in use.\n const warning = await getBundleIdWarningAsync(bundleIdentifier);\n\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Bundle ID prompt to try again.\n return await promptForBundleIdWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n ios: { ...(exp.ios || {}), bundleIdentifier },\n },\n { ios: { bundleIdentifier } }\n )\n ) {\n Log.log(chalk.gray`\\u203A Apple bundle identifier: ${bundleIdentifier}`);\n }\n\n return bundleIdentifier;\n}\n\nasync function warnAndConfirmAsync(warning: string): Promise<boolean> {\n Log.log();\n Log.warn(warning);\n Log.log();\n if (\n !(await confirmAsync({\n message: `Continue?`,\n initial: true,\n }))\n ) {\n return false;\n }\n return true;\n}\n\n// Recommend a bundle identifier based on the account name of the owner of the project and project slug.\nasync function getRecommendedBundleIdAsync(exp: ExpoConfig): Promise<string | undefined> {\n const possibleIdFromAndroid = exp.android?.package\n ? getSanitizedBundleIdentifier(exp.android.package)\n : undefined;\n // Attempt to use the android package name first since it's convenient to have them aligned.\n if (possibleIdFromAndroid && validateBundleId(possibleIdFromAndroid)) {\n return possibleIdFromAndroid;\n } else {\n const recommendedReverseDomainNameSecondPart =\n (await getRecommendedReverseDomainNameSecondPartAsync(exp)) ?? ANONYMOUS_USERNAME;\n const possibleId = getSanitizedBundleIdentifier(\n `com.${recommendedReverseDomainNameSecondPart}.${exp.slug}`\n );\n if (validateBundleId(possibleId)) {\n return possibleId;\n }\n }\n\n return undefined;\n}\n\n// Recommend a package name based on the account name of the owner of the project and project slug.\nasync function getRecommendedPackageNameAsync(exp: ExpoConfig): Promise<string | undefined> {\n const possibleIdFromApple = exp.ios?.bundleIdentifier\n ? getSanitizedPackage(exp.ios.bundleIdentifier)\n : undefined;\n\n // Attempt to use the ios bundle id first since it's convenient to have them aligned.\n if (possibleIdFromApple && validatePackage(possibleIdFromApple)) {\n return possibleIdFromApple;\n } else {\n const recommendedReverseDomainNameSecondPart =\n (await getRecommendedReverseDomainNameSecondPartAsync(exp)) ?? ANONYMOUS_USERNAME;\n\n const possibleId = getSanitizedPackage(\n `com.${recommendedReverseDomainNameSecondPart}.${exp.slug}`\n );\n if (validatePackage(possibleId)) {\n return possibleId;\n } else {\n debug(\n `Recommended package name is invalid: \"${possibleId}\" (owner: ${recommendedReverseDomainNameSecondPart}, slug: ${exp.slug})`\n );\n }\n }\n return undefined;\n}\n\n/**\n * Get the package name from the Expo config or prompt the user to choose a new package name.\n * Prompted value will be validated against the Play Store and a local regex.\n * If the project Expo config is a static JSON file, the package name will be updated in the config automatically.\n */\nexport async function getOrPromptForPackageAsync(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.android?.package;\n if (current) {\n assertValidPackage(current);\n return current;\n }\n\n return await promptForPackageAsync(projectRoot, exp);\n}\n\nasync function promptForPackageAsync(projectRoot: string, exp: ExpoConfig): Promise<string> {\n return promptForPackageWithInitialAsync(\n projectRoot,\n exp,\n await getRecommendedPackageNameAsync(exp)\n );\n}\n\nasync function promptForPackageWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n packageName?: string\n): Promise<string> {\n if (!packageName) {\n memoLog(\n chalk`\\n{bold 📝 Android package} {dim ${learnMore('https://expo.fyi/android-package')}}\\n`\n );\n\n // Prompt the user for the android package.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom android package upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n message: `What would you like your Android package name to be?`,\n validate: validatePackageWithWarning,\n },\n {\n nonInteractiveHelp: NO_PACKAGE_MESSAGE,\n }\n );\n packageName = input as string;\n }\n\n // Warn the user if the package name is already in use.\n const warning = await getPackageNameWarningAsync(packageName);\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Package name prompt to try again.\n return promptForPackageWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n android: { ...(exp.android || {}), package: packageName },\n },\n {\n android: { package: packageName },\n }\n )\n ) {\n Log.log(chalk.gray`\\u203A Android package name: ${packageName}`);\n }\n\n return packageName;\n}\n"],"names":["getOrPromptForBundleIdentifierAsync","getOrPromptForPackageAsync","debug","require","ANONYMOUS_USERNAME","getRecommendedReverseDomainNameSecondPartAsync","exp","getSettings","cachedUsername","read","auth","username","easProjectId","extra","eas","projectId","app","AppQuery","byIdAsync","ownerAccount","name","e","GraphQLError","CombinedError","NO_BUNDLE_ID_MESSAGE","NO_PACKAGE_MESSAGE","projectRoot","getConfig","current","ios","bundleIdentifier","assertValidBundleId","promptForBundleIdWithInitialAsync","getRecommendedBundleIdAsync","memoLog","memoize","Log","log","chalk","learnMore","input","prompt","type","message","validate","validateBundleId","nonInteractiveHelp","warning","getBundleIdWarningAsync","warnAndConfirmAsync","attemptModification","gray","warn","confirmAsync","initial","possibleIdFromAndroid","android","package","getSanitizedBundleIdentifier","undefined","recommendedReverseDomainNameSecondPart","possibleId","slug","getRecommendedPackageNameAsync","possibleIdFromApple","getSanitizedPackage","validatePackage","assertValidPackage","promptForPackageAsync","promptForPackageWithInitialAsync","packageName","validatePackageWithWarning","getPackageNameWarningAsync"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/getOrPromptApplicationId.ts"],"sourcesContent":["import { GraphQLError } from '@0no-co/graphql.web';\nimport { ExpoConfig, getConfig } from '@expo/config';\nimport { CombinedError } from '@urql/core';\nimport chalk from 'chalk';\n\nimport { memoize } from './fn';\nimport { learnMore } from './link';\nimport { attemptModification } from './modifyConfigAsync';\nimport prompt, { confirmAsync } from './prompts';\nimport {\n assertValidBundleId,\n assertValidPackage,\n getBundleIdWarningAsync,\n getPackageNameWarningAsync,\n getSanitizedBundleIdentifier,\n getSanitizedPackage,\n validateBundleId,\n validatePackage,\n validatePackageWithWarning,\n} from './validateApplicationId';\nimport { AppQuery } from '../api/graphql/queries/AppQuery';\nimport { getSettings } from '../api/user/UserSettings';\nimport * as Log from '../log';\n\nconst debug = require('debug')('expo:app-id') as typeof console.log;\n\nconst ANONYMOUS_USERNAME = 'anonymous';\n\nasync function getRecommendedReverseDomainNameSecondPartAsync(\n exp: ExpoConfig\n): Promise<string | null> {\n // Get the cached username.\n const cachedUsername = getSettings().read().auth?.username;\n if (cachedUsername) {\n return cachedUsername;\n }\n const easProjectId = exp.extra?.eas?.projectId;\n if (!easProjectId) {\n return null;\n }\n\n try {\n const app = await AppQuery.byIdAsync(easProjectId);\n return app.ownerAccount.name;\n } catch (e) {\n if (e instanceof GraphQLError || e instanceof CombinedError) {\n return null;\n }\n throw e;\n }\n}\n\nconst NO_BUNDLE_ID_MESSAGE = `Project must have a \\`ios.bundleIdentifier\\` set in the Expo config (app.json or app.config.js).`;\n\nconst NO_PACKAGE_MESSAGE = `Project must have a \\`android.package\\` set in the Expo config (app.json or app.config.js).`;\n\n/**\n * Get the bundle identifier from the Expo config or prompt the user to choose a new bundle identifier.\n * Prompted value will be validated against the App Store and a local regex.\n * If the project Expo config is a static JSON file, the bundle identifier will be updated in the config automatically.\n */\nexport async function getOrPromptForBundleIdentifierAsync(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.ios?.bundleIdentifier;\n if (current) {\n assertValidBundleId(current);\n return current;\n }\n\n return promptForBundleIdWithInitialAsync(\n projectRoot,\n exp,\n await getRecommendedBundleIdAsync(exp)\n );\n}\n\nconst memoLog = memoize(Log.log);\n\nasync function promptForBundleIdWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n bundleIdentifier?: string\n): Promise<string> {\n if (!bundleIdentifier) {\n memoLog(\n chalk`\\n{bold 📝 iOS Bundle Identifier} {dim ${learnMore(\n 'https://expo.fyi/bundle-identifier'\n )}}\\n`\n );\n\n // Prompt the user for the bundle ID.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom bundle ID upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n // The Apple helps people know this isn't an EAS feature.\n message: `What would you like your iOS bundle identifier to be?`,\n validate: validateBundleId,\n },\n {\n nonInteractiveHelp: NO_BUNDLE_ID_MESSAGE,\n }\n );\n bundleIdentifier = input as string;\n }\n\n // Warn the user if the bundle ID is already in use.\n const warning = await getBundleIdWarningAsync(bundleIdentifier);\n\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Bundle ID prompt to try again.\n return await promptForBundleIdWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n ios: { ...(exp.ios || {}), bundleIdentifier },\n },\n { ios: { bundleIdentifier } }\n )\n ) {\n Log.log(chalk.gray`\\u203A Apple bundle identifier: ${bundleIdentifier}`);\n }\n\n return bundleIdentifier;\n}\n\nasync function warnAndConfirmAsync(warning: string): Promise<boolean> {\n Log.log();\n Log.warn(warning);\n Log.log();\n if (\n !(await confirmAsync({\n message: `Continue?`,\n initial: true,\n }))\n ) {\n return false;\n }\n return true;\n}\n\n// Recommend a bundle identifier based on the account name of the owner of the project and project slug.\nasync function getRecommendedBundleIdAsync(exp: ExpoConfig): Promise<string | undefined> {\n const possibleIdFromAndroid = exp.android?.package\n ? getSanitizedBundleIdentifier(exp.android.package)\n : undefined;\n // Attempt to use the android package name first since it's convenient to have them aligned.\n if (possibleIdFromAndroid && validateBundleId(possibleIdFromAndroid)) {\n return possibleIdFromAndroid;\n } else {\n const recommendedReverseDomainNameSecondPart =\n (await getRecommendedReverseDomainNameSecondPartAsync(exp)) ?? ANONYMOUS_USERNAME;\n const possibleId = getSanitizedBundleIdentifier(\n `com.${recommendedReverseDomainNameSecondPart}.${exp.slug}`\n );\n if (validateBundleId(possibleId)) {\n return possibleId;\n }\n }\n\n return undefined;\n}\n\n// Recommend a package name based on the account name of the owner of the project and project slug.\nasync function getRecommendedPackageNameAsync(exp: ExpoConfig): Promise<string | undefined> {\n const possibleIdFromApple = exp.ios?.bundleIdentifier\n ? getSanitizedPackage(exp.ios.bundleIdentifier)\n : undefined;\n\n // Attempt to use the ios bundle id first since it's convenient to have them aligned.\n if (possibleIdFromApple && validatePackage(possibleIdFromApple)) {\n return possibleIdFromApple;\n } else {\n const recommendedReverseDomainNameSecondPart =\n (await getRecommendedReverseDomainNameSecondPartAsync(exp)) ?? ANONYMOUS_USERNAME;\n\n const possibleId = getSanitizedPackage(\n `com.${recommendedReverseDomainNameSecondPart}.${exp.slug}`\n );\n if (validatePackage(possibleId)) {\n return possibleId;\n } else {\n debug(\n `Recommended package name is invalid: \"${possibleId}\" (owner: ${recommendedReverseDomainNameSecondPart}, slug: ${exp.slug})`\n );\n }\n }\n return undefined;\n}\n\n/**\n * Get the package name from the Expo config or prompt the user to choose a new package name.\n * Prompted value will be validated against the Play Store and a local regex.\n * If the project Expo config is a static JSON file, the package name will be updated in the config automatically.\n */\nexport async function getOrPromptForPackageAsync(\n projectRoot: string,\n exp: ExpoConfig = getConfig(projectRoot).exp\n): Promise<string> {\n const current = exp.android?.package;\n if (current) {\n assertValidPackage(current);\n return current;\n }\n\n return await promptForPackageAsync(projectRoot, exp);\n}\n\nasync function promptForPackageAsync(projectRoot: string, exp: ExpoConfig): Promise<string> {\n return promptForPackageWithInitialAsync(\n projectRoot,\n exp,\n await getRecommendedPackageNameAsync(exp)\n );\n}\n\nasync function promptForPackageWithInitialAsync(\n projectRoot: string,\n exp: ExpoConfig,\n packageName?: string\n): Promise<string> {\n if (!packageName) {\n memoLog(\n chalk`\\n{bold 📝 Android package} {dim ${learnMore('https://expo.fyi/android-package')}}\\n`\n );\n\n // Prompt the user for the android package.\n // Even if the project is using a dynamic config we can still\n // prompt a better error message, recommend a default value, and help the user\n // validate their custom android package upfront.\n const { input } = await prompt(\n {\n type: 'text',\n name: 'input',\n message: `What would you like your Android package name to be?`,\n validate: validatePackageWithWarning,\n },\n {\n nonInteractiveHelp: NO_PACKAGE_MESSAGE,\n }\n );\n packageName = input as string;\n }\n\n // Warn the user if the package name is already in use.\n const warning = await getPackageNameWarningAsync(packageName);\n if (warning && !(await warnAndConfirmAsync(warning))) {\n // Cycle the Package name prompt to try again.\n return promptForPackageWithInitialAsync(projectRoot, exp);\n }\n\n // Apply the changes to the config.\n if (\n await attemptModification(\n projectRoot,\n {\n android: { ...(exp.android || {}), package: packageName },\n },\n {\n android: { package: packageName },\n }\n )\n ) {\n Log.log(chalk.gray`\\u203A Android package name: ${packageName}`);\n }\n\n return packageName;\n}\n"],"names":["getOrPromptForBundleIdentifierAsync","getOrPromptForPackageAsync","debug","require","ANONYMOUS_USERNAME","getRecommendedReverseDomainNameSecondPartAsync","exp","getSettings","cachedUsername","read","auth","username","easProjectId","extra","eas","projectId","app","AppQuery","byIdAsync","ownerAccount","name","e","GraphQLError","CombinedError","NO_BUNDLE_ID_MESSAGE","NO_PACKAGE_MESSAGE","projectRoot","getConfig","current","ios","bundleIdentifier","assertValidBundleId","promptForBundleIdWithInitialAsync","getRecommendedBundleIdAsync","memoLog","memoize","Log","log","chalk","learnMore","input","prompt","type","message","validate","validateBundleId","nonInteractiveHelp","warning","getBundleIdWarningAsync","warnAndConfirmAsync","attemptModification","gray","warn","confirmAsync","initial","possibleIdFromAndroid","android","package","getSanitizedBundleIdentifier","undefined","recommendedReverseDomainNameSecondPart","possibleId","slug","getRecommendedPackageNameAsync","possibleIdFromApple","getSanitizedPackage","validatePackage","assertValidPackage","promptForPackageAsync","promptForPackageWithInitialAsync","packageName","validatePackageWithWarning","getPackageNameWarningAsync"],"mappings":"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"}
|
|
@@ -9,19 +9,25 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
getDirectoryOfProcessById: function() {
|
|
13
|
+
return getDirectoryOfProcessById;
|
|
14
|
+
},
|
|
15
|
+
getPID: function() {
|
|
16
|
+
return getPID;
|
|
17
|
+
},
|
|
18
|
+
getRunningProcess: function() {
|
|
19
|
+
return getRunningProcess;
|
|
20
|
+
}
|
|
15
21
|
});
|
|
16
|
-
function
|
|
22
|
+
function _child_process() {
|
|
17
23
|
const data = require("child_process");
|
|
18
|
-
|
|
24
|
+
_child_process = function() {
|
|
19
25
|
return data;
|
|
20
26
|
};
|
|
21
27
|
return data;
|
|
22
28
|
}
|
|
23
29
|
function _path() {
|
|
24
|
-
const data = /*#__PURE__*/
|
|
30
|
+
const data = /*#__PURE__*/ _interop_require_wildcard(require("path"));
|
|
25
31
|
_path = function() {
|
|
26
32
|
return data;
|
|
27
33
|
};
|
|
@@ -35,7 +41,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
35
41
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
36
42
|
})(nodeInterop);
|
|
37
43
|
}
|
|
38
|
-
function
|
|
44
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
39
45
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
40
46
|
return obj;
|
|
41
47
|
}
|
|
@@ -48,7 +54,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
48
54
|
if (cache && cache.has(obj)) {
|
|
49
55
|
return cache.get(obj);
|
|
50
56
|
}
|
|
51
|
-
var newObj = {
|
|
57
|
+
var newObj = {
|
|
58
|
+
__proto__: null
|
|
59
|
+
};
|
|
52
60
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
53
61
|
for(var key in obj){
|
|
54
62
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -66,23 +74,23 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
66
74
|
}
|
|
67
75
|
return newObj;
|
|
68
76
|
}
|
|
69
|
-
const debug = require(
|
|
77
|
+
const debug = require('debug')('expo:utils:getRunningProcess');
|
|
70
78
|
const defaultOptions = {
|
|
71
|
-
encoding:
|
|
79
|
+
encoding: 'utf8',
|
|
72
80
|
stdio: [
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
81
|
+
'pipe',
|
|
82
|
+
'pipe',
|
|
83
|
+
'ignore'
|
|
76
84
|
]
|
|
77
85
|
};
|
|
78
86
|
function getPID(port) {
|
|
79
87
|
try {
|
|
80
|
-
const results = (0,
|
|
88
|
+
const results = (0, _child_process().execFileSync)('lsof', [
|
|
81
89
|
`-i:${port}`,
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
], defaultOptions).split(
|
|
90
|
+
'-P',
|
|
91
|
+
'-t',
|
|
92
|
+
'-sTCP:LISTEN'
|
|
93
|
+
], defaultOptions).split('\n')[0].trim();
|
|
86
94
|
const pid = Number(results);
|
|
87
95
|
debug(`pid: ${pid} for port: ${port}`);
|
|
88
96
|
return pid;
|
|
@@ -92,7 +100,7 @@ function getPID(port) {
|
|
|
92
100
|
}
|
|
93
101
|
}
|
|
94
102
|
/** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */ function getPackageName(packageRoot) {
|
|
95
|
-
const packageJson = _path().join(packageRoot,
|
|
103
|
+
const packageJson = _path().join(packageRoot, 'package.json');
|
|
96
104
|
try {
|
|
97
105
|
return require(packageJson).name || null;
|
|
98
106
|
} catch {
|
|
@@ -104,10 +112,10 @@ function getPID(port) {
|
|
|
104
112
|
if (name) {
|
|
105
113
|
return name;
|
|
106
114
|
}
|
|
107
|
-
return (0,
|
|
115
|
+
return (0, _child_process().execSync)(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\n$/, '').trim();
|
|
108
116
|
}
|
|
109
117
|
function getDirectoryOfProcessById(processId) {
|
|
110
|
-
return (0,
|
|
118
|
+
return (0, _child_process().execSync)(`lsof -p ${processId} | awk '$4=="cwd" {for (i=9; i<=NF; i++) printf "%s ", $i}'`, defaultOptions).trim();
|
|
111
119
|
}
|
|
112
120
|
function getRunningProcess(port) {
|
|
113
121
|
// 63828
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/getRunningProcess.ts"],"sourcesContent":["import { execFileSync, execSync, ExecSyncOptionsWithStringEncoding } from 'child_process';\nimport * as path from 'path';\n\nconst debug = require('debug')('expo:utils:getRunningProcess') as typeof console.log;\n\nconst defaultOptions: ExecSyncOptionsWithStringEncoding = {\n encoding: 'utf8',\n stdio: ['pipe', 'pipe', 'ignore'],\n};\n\n/** Returns a pid value for a running port like `63828` or null if nothing is running on the given port. */\nexport function getPID(port: number): number | null {\n try {\n const results = execFileSync('lsof', [`-i:${port}`, '-P', '-t', '-sTCP:LISTEN'], defaultOptions)\n .split('\\n')[0]\n .trim();\n const pid = Number(results);\n debug(`pid: ${pid} for port: ${port}`);\n return pid;\n } catch (error: any) {\n debug(`No pid found for port: ${port}. Error: ${error}`);\n return null;\n }\n}\n\n/** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */\nfunction getPackageName(packageRoot: string): string | null {\n const packageJson = path.join(packageRoot, 'package.json');\n try {\n return require(packageJson).name || null;\n } catch {\n return null;\n }\n}\n\n/** Returns a command like `node /Users/evanbacon/.../bin/expo start` or the package.json name. */\nfunction getProcessCommand(pid: number, procDirectory: string): string {\n const name = getPackageName(procDirectory);\n\n if (name) {\n return name;\n }\n return execSync(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\\n$/, '').trim();\n}\n\n/** Get directory for a given process ID. */\nexport function getDirectoryOfProcessById(processId: number): string {\n return execSync(\n `lsof -p ${processId} | awk '$4==\"cwd\" {for (i=9; i<=NF; i++) printf \"%s \", $i}'`,\n defaultOptions\n ).trim();\n}\n\n/** Get information about a running process given a port. Returns null if no process is running on the given port. */\nexport function getRunningProcess(port: number): {\n /** The PID value for the port. */\n pid: number;\n /** Get the directory for the running process. */\n directory: string;\n /** The command running the process like `node /Users/evanbacon/.../bin/expo start` or the `package.json` name like `my-app`. */\n command: string;\n} | null {\n // 63828\n const pid = getPID(port);\n if (!pid) {\n return null;\n }\n\n try {\n // /Users/evanbacon/Documents/GitHub/lab/myapp\n const directory = getDirectoryOfProcessById(pid);\n // /Users/evanbacon/Documents/GitHub/lab/myapp/package.json\n const command = getProcessCommand(pid, directory);\n // TODO: Have a better message for reusing another process.\n return { pid, directory, command };\n } catch {\n return null;\n }\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/getRunningProcess.ts"],"sourcesContent":["import { execFileSync, execSync, ExecSyncOptionsWithStringEncoding } from 'child_process';\nimport * as path from 'path';\n\nconst debug = require('debug')('expo:utils:getRunningProcess') as typeof console.log;\n\nconst defaultOptions: ExecSyncOptionsWithStringEncoding = {\n encoding: 'utf8',\n stdio: ['pipe', 'pipe', 'ignore'],\n};\n\n/** Returns a pid value for a running port like `63828` or null if nothing is running on the given port. */\nexport function getPID(port: number): number | null {\n try {\n const results = execFileSync('lsof', [`-i:${port}`, '-P', '-t', '-sTCP:LISTEN'], defaultOptions)\n .split('\\n')[0]\n .trim();\n const pid = Number(results);\n debug(`pid: ${pid} for port: ${port}`);\n return pid;\n } catch (error: any) {\n debug(`No pid found for port: ${port}. Error: ${error}`);\n return null;\n }\n}\n\n/** Get `package.json` `name` field for a given directory. Returns `null` if none exist. */\nfunction getPackageName(packageRoot: string): string | null {\n const packageJson = path.join(packageRoot, 'package.json');\n try {\n return require(packageJson).name || null;\n } catch {\n return null;\n }\n}\n\n/** Returns a command like `node /Users/evanbacon/.../bin/expo start` or the package.json name. */\nfunction getProcessCommand(pid: number, procDirectory: string): string {\n const name = getPackageName(procDirectory);\n\n if (name) {\n return name;\n }\n return execSync(`ps -o command -p ${pid} | sed -n 2p`, defaultOptions).replace(/\\n$/, '').trim();\n}\n\n/** Get directory for a given process ID. */\nexport function getDirectoryOfProcessById(processId: number): string {\n return execSync(\n `lsof -p ${processId} | awk '$4==\"cwd\" {for (i=9; i<=NF; i++) printf \"%s \", $i}'`,\n defaultOptions\n ).trim();\n}\n\n/** Get information about a running process given a port. Returns null if no process is running on the given port. */\nexport function getRunningProcess(port: number): {\n /** The PID value for the port. */\n pid: number;\n /** Get the directory for the running process. */\n directory: string;\n /** The command running the process like `node /Users/evanbacon/.../bin/expo start` or the `package.json` name like `my-app`. */\n command: string;\n} | null {\n // 63828\n const pid = getPID(port);\n if (!pid) {\n return null;\n }\n\n try {\n // /Users/evanbacon/Documents/GitHub/lab/myapp\n const directory = getDirectoryOfProcessById(pid);\n // /Users/evanbacon/Documents/GitHub/lab/myapp/package.json\n const command = getProcessCommand(pid, directory);\n // TODO: Have a better message for reusing another process.\n return { pid, directory, command };\n } catch {\n return null;\n }\n}\n"],"names":["getDirectoryOfProcessById","getPID","getRunningProcess","debug","require","defaultOptions","encoding","stdio","port","results","execFileSync","split","trim","pid","Number","error","getPackageName","packageRoot","packageJson","path","join","name","getProcessCommand","procDirectory","execSync","replace","processId","directory","command"],"mappings":";;;;;;;;;;;IA8CgBA,yBAAyB;eAAzBA;;IAnCAC,MAAM;eAANA;;IA2CAC,iBAAiB;eAAjBA;;;;yBAtD0D;;;;;;;iEACpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtB,MAAMC,QAAQC,QAAQ,SAAS;AAE/B,MAAMC,iBAAoD;IACxDC,UAAU;IACVC,OAAO;QAAC;QAAQ;QAAQ;KAAS;AACnC;AAGO,SAASN,OAAOO,IAAY;IACjC,IAAI;QACF,MAAMC,UAAUC,IAAAA,6BAAY,EAAC,QAAQ;YAAC,CAAC,GAAG,EAAEF,MAAM;YAAE;YAAM;YAAM;SAAe,EAAEH,gBAC9EM,KAAK,CAAC,KAAK,CAAC,EAAE,CACdC,IAAI;QACP,MAAMC,MAAMC,OAAOL;QACnBN,MAAM,CAAC,KAAK,EAAEU,IAAI,WAAW,EAAEL,MAAM;QACrC,OAAOK;IACT,EAAE,OAAOE,OAAY;QACnBZ,MAAM,CAAC,uBAAuB,EAAEK,KAAK,SAAS,EAAEO,OAAO;QACvD,OAAO;IACT;AACF;AAEA,yFAAyF,GACzF,SAASC,eAAeC,WAAmB;IACzC,MAAMC,cAAcC,QAAKC,IAAI,CAACH,aAAa;IAC3C,IAAI;QACF,OAAOb,QAAQc,aAAaG,IAAI,IAAI;IACtC,EAAE,OAAM;QACN,OAAO;IACT;AACF;AAEA,gGAAgG,GAChG,SAASC,kBAAkBT,GAAW,EAAEU,aAAqB;IAC3D,MAAMF,OAAOL,eAAeO;IAE5B,IAAIF,MAAM;QACR,OAAOA;IACT;IACA,OAAOG,IAAAA,yBAAQ,EAAC,CAAC,iBAAiB,EAAEX,IAAI,YAAY,CAAC,EAAER,gBAAgBoB,OAAO,CAAC,OAAO,IAAIb,IAAI;AAChG;AAGO,SAASZ,0BAA0B0B,SAAiB;IACzD,OAAOF,IAAAA,yBAAQ,EACb,CAAC,QAAQ,EAAEE,UAAU,2DAA2D,CAAC,EACjFrB,gBACAO,IAAI;AACR;AAGO,SAASV,kBAAkBM,IAAY;IAQ5C,QAAQ;IACR,MAAMK,MAAMZ,OAAOO;IACnB,IAAI,CAACK,KAAK;QACR,OAAO;IACT;IAEA,IAAI;QACF,8CAA8C;QAC9C,MAAMc,YAAY3B,0BAA0Ba;QAC5C,2DAA2D;QAC3D,MAAMe,UAAUN,kBAAkBT,KAAKc;QACvC,2DAA2D;QAC3D,OAAO;YAAEd;YAAKc;YAAWC;QAAQ;IACnC,EAAE,OAAM;QACN,OAAO;IACT;AACF"}
|