@expo/cli 0.22.25 → 0.22.26
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 +91 -93
- package/build/bin/cli.map +1 -1
- package/build/metro-require/require.js +52 -53
- package/build/src/api/endpoint.js +2 -6
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoGoIntermediateCertificate.js +3 -5
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
- package/build/src/api/getExpoSchema.js +12 -16
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/getNativeModuleVersions.js +4 -6
- package/build/src/api/getNativeModuleVersions.js.map +1 -1
- package/build/src/api/getProjectDevelopmentCertificate.js +3 -5
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
- package/build/src/api/getVersions.js +5 -7
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/graphql/client.js +26 -32
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +4 -6
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +3 -5
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +1 -3
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemResponseCache.js +8 -10
- package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/ResponseCache.js +12 -20
- package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +11 -13
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +35 -53
- 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 +3 -5
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js +3 -5
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js +7 -11
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +3 -5
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithUserAgent.js +6 -8
- package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
- package/build/src/api/settings.js +5 -7
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +17 -23
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +21 -39
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +21 -27
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +26 -30
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +29 -35
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +30 -44
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +23 -29
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +21 -25
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +6 -8
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +16 -20
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +12 -14
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/resolveOptions.js +2 -4
- package/build/src/customize/resolveOptions.js.map +1 -1
- package/build/src/customize/templates.js +54 -58
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +7 -11
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +9 -11
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEager.js +6 -8
- package/build/src/export/embed/exportEager.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +61 -71
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/exportServer.js +55 -57
- package/build/src/export/embed/exportServer.js.map +1 -1
- package/build/src/export/embed/index.js +40 -44
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +36 -44
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +27 -39
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +63 -67
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +27 -35
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +9 -13
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportDomComponents.js +45 -53
- package/build/src/export/exportDomComponents.js.map +1 -1
- package/build/src/export/exportHermes.js +63 -85
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +62 -72
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +27 -33
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +5 -7
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +9 -11
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +6 -10
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +28 -32
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +30 -36
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +34 -42
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +6 -10
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +24 -28
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +46 -50
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +11 -13
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +15 -19
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/web/resolveOptions.js +3 -5
- package/build/src/export/web/resolveOptions.js.map +1 -1
- package/build/src/export/writeContents.js +2 -4
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/graphql/generated.js +274 -400
- package/build/src/graphql/generated.js.map +1 -1
- package/build/src/install/applyPlugins.js +7 -11
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +22 -26
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +12 -16
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +16 -18
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +26 -32
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +18 -22
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js +19 -21
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +14 -18
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/install/utils/checkPackagesCompatibility.js +11 -13
- package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js +44 -50
- package/build/src/lint/ESlintPrerequisite.js.map +1 -1
- package/build/src/lint/index.js +8 -12
- package/build/src/lint/index.js.map +1 -1
- package/build/src/lint/lintAsync.js +8 -10
- package/build/src/lint/lintAsync.js.map +1 -1
- package/build/src/log.js +16 -36
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +20 -24
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +7 -11
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +26 -38
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +14 -18
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +13 -17
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +4 -6
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +32 -36
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +25 -29
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +40 -46
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +52 -66
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +32 -36
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +13 -19
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +39 -53
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +8 -12
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +7 -11
- package/build/src/register/index.js.map +1 -1
- package/build/src/register/registerAsync.js +3 -5
- package/build/src/register/registerAsync.js.map +1 -1
- package/build/src/run/android/index.js +32 -36
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveDevice.js +8 -10
- package/build/src/run/android/resolveDevice.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +16 -18
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +15 -17
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +10 -12
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +2 -4
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +21 -23
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +5 -7
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +7 -13
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +23 -27
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +56 -74
- 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 +63 -69
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +26 -29
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +25 -28
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +26 -29
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +21 -22
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +29 -32
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +24 -28
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +4 -7
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +27 -28
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +17 -23
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +132 -146
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +21 -29
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +21 -29
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +22 -34
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +17 -27
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +39 -53
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +9 -13
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +19 -27
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +5 -9
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +12 -14
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +21 -27
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +36 -40
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +17 -23
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/appleDestinations.js +36 -38
- package/build/src/run/ios/options/appleDestinations.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +16 -20
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +24 -30
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +23 -31
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +5 -7
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +5 -7
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +44 -48
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/ios/validateExternalBinary.js +22 -24
- package/build/src/run/ios/validateExternalBinary.js.map +1 -1
- package/build/src/run/resolveBundlerProps.js +2 -4
- package/build/src/run/resolveBundlerProps.js.map +1 -1
- package/build/src/run/startBundler.js +12 -16
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/serve/index.js +16 -20
- package/build/src/serve/index.js.map +1 -1
- package/build/src/serve/serveAsync.js +32 -36
- package/build/src/serve/serveAsync.js.map +1 -1
- package/build/src/start/detectDevClient.js +9 -13
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +7 -12
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/SecurityBinPrerequisite.js +11 -13
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +19 -23
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +19 -23
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +45 -51
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +16 -18
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +19 -23
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +25 -31
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +17 -25
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +32 -40
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +26 -32
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +31 -41
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +29 -34
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +8 -12
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +28 -32
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +17 -23
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +27 -33
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +42 -46
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js +14 -18
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +80 -94
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +40 -44
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +61 -65
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +4 -6
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +6 -10
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +20 -25
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +15 -17
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +35 -39
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +16 -18
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +20 -24
- 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 +9 -11
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +22 -26
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +83 -121
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +12 -20
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +26 -36
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js +5 -7
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +28 -36
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +15 -19
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +19 -21
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +31 -37
- 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 +7 -9
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/devicectl.js +73 -87
- package/build/src/start/platforms/ios/devicectl.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +18 -22
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +19 -29
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +10 -14
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +74 -102
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +52 -57
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +18 -22
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +9 -19
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +11 -15
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/project/settings.js +2 -4
- package/build/src/start/project/settings.js.map +1 -1
- package/build/src/start/resolveOptions.js +40 -48
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +51 -55
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/AsyncWsTunnel.js +36 -40
- package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +79 -81
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +38 -42
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +14 -18
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +14 -18
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +10 -16
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +33 -36
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +21 -29
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +4 -6
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +271 -269
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +56 -63
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +33 -39
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +40 -46
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +28 -32
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerComponentsMiddleware.js +92 -96
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +30 -32
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +11 -13
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +1 -3
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/attachAtlas.js +22 -26
- package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +17 -19
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +31 -25
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/getDebuggerType.js +4 -6
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +8 -14
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +5 -7
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +6 -8
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +5 -7
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +12 -14
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +10 -14
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js +4 -6
- 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 +16 -18
- package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +21 -23
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +21 -23
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +2 -4
- 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 +2 -4
- 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 +4 -8
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
- package/build/src/start/server/metro/externals.js +25 -33
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +12 -16
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +9 -11
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +18 -22
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +79 -85
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxLog.js +36 -40
- package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +14 -20
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js +6 -10
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +78 -88
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +4 -8
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroPrivateServer.js +7 -9
- package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +8 -10
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +22 -24
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +32 -48
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +22 -24
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +22 -24
- 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 +29 -35
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +139 -149
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +39 -49
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +6 -8
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +15 -17
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +31 -32
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +19 -22
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DomComponentsMiddleware.js +27 -33
- package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +60 -64
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +9 -15
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js +14 -15
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +2 -4
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +31 -34
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +56 -64
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +19 -23
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +19 -20
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +9 -11
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +11 -17
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
- package/build/src/start/server/middleware/inspector/CdpClient.js +10 -12
- package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +27 -35
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +19 -21
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +2 -6
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +96 -120
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +3 -7
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +18 -26
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +15 -23
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +9 -11
- 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 +8 -10
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +11 -13
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +50 -58
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +7 -11
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +54 -76
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +19 -21
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +28 -36
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +24 -28
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +46 -52
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +11 -15
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js +26 -28
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +12 -18
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +12 -18
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +27 -31
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +17 -20
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/ansi.js +5 -7
- package/build/src/utils/ansi.js.map +1 -1
- package/build/src/utils/args.js +14 -24
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +6 -18
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/cocoapods.js +46 -54
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +68 -78
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +12 -16
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/createTempPath.js +13 -17
- package/build/src/utils/createTempPath.js.map +1 -1
- package/build/src/utils/delay.js +6 -12
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +28 -46
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +8 -10
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +21 -25
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +35 -41
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +59 -63
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +30 -37
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +31 -35
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/expoUpdatesCli.js +22 -32
- package/build/src/utils/expoUpdatesCli.js.map +1 -1
- package/build/src/utils/fetch.js +4 -8
- package/build/src/utils/fetch.js.map +1 -1
- package/build/src/utils/filePath.js +6 -10
- package/build/src/utils/filePath.js.map +1 -1
- package/build/src/utils/findUp.js +9 -13
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +2 -6
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +26 -32
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +21 -29
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +20 -26
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +4 -8
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/interactive.js +1 -3
- package/build/src/utils/interactive.js.map +1 -1
- package/build/src/utils/ip.js +19 -21
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +9 -11
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/jsonSchemaDeref.js +18 -20
- package/build/src/utils/jsonSchemaDeref.js.map +1 -1
- package/build/src/utils/link.js +13 -17
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +28 -46
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +10 -16
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +6 -10
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/nodeEnv.js +6 -12
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +8 -10
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +36 -50
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +5 -11
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +8 -10
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +7 -13
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +15 -21
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +33 -43
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +7 -11
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +5 -11
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +29 -47
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/resolveArgs.js +24 -36
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +32 -40
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/stream.js +3 -5
- package/build/src/utils/stream.js.map +1 -1
- package/build/src/utils/strings.js +4 -6
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +15 -19
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/Telemetry.js +27 -29
- package/build/src/utils/telemetry/Telemetry.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +13 -15
- package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js +22 -26
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/RudderClient.js +8 -10
- package/build/src/utils/telemetry/clients/RudderClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/RudderDetachedClient.js +22 -26
- package/build/src/utils/telemetry/clients/RudderDetachedClient.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/clients/flushRudderDetached.js +10 -10
- package/build/src/utils/telemetry/clients/flushRudderDetached.js.map +1 -1
- package/build/src/utils/telemetry/events.js +2 -4
- package/build/src/utils/telemetry/events.js.map +1 -1
- package/build/src/utils/telemetry/flushDetached.js.map +1 -1
- package/build/src/utils/telemetry/index.js +29 -25
- 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 +4 -8
- package/build/src/utils/telemetry/utils/constants.js.map +1 -1
- package/build/src/utils/telemetry/utils/context.js +14 -18
- package/build/src/utils/telemetry/utils/context.js.map +1 -1
- package/build/src/utils/template.js +4 -6
- package/build/src/utils/template.js.map +1 -1
- package/build/src/utils/terminal.js +2 -4
- package/build/src/utils/terminal.js.map +1 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +17 -21
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +14 -18
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +5 -7
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +12 -14
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +13 -23
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +86 -108
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +16 -22
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js +7 -11
- package/build/src/whoami/index.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +7 -11
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/prebuild/updatePackageJson.ts"],"sourcesContent":["import { getPackageJson, PackageJSONConfig } from '@expo/config';\nimport chalk from 'chalk';\nimport crypto from 'crypto';\nimport fs from 'fs';\nimport path from 'path';\nimport { intersects as semverIntersects, Range as SemverRange } from 'semver';\n\nimport * as Log from '../log';\nimport { isModuleSymlinked } from '../utils/isModuleSymlinked';\nimport { logNewSection } from '../utils/ora';\n\nexport type DependenciesMap = { [key: string]: string | number };\n\nexport type DependenciesModificationResults = {\n /** A list of new values were added to the `dependencies` object in the `package.json`. */\n changedDependencies: string[];\n};\n\n/** Modifies the `package.json` with `modifyPackageJson` and format/displays the results. */\nexport async function updatePackageJSONAsync(\n projectRoot: string,\n {\n templateDirectory,\n templatePkg = getPackageJson(templateDirectory),\n pkg,\n skipDependencyUpdate,\n }: {\n templateDirectory: string;\n templatePkg?: PackageJSONConfig;\n pkg: PackageJSONConfig;\n skipDependencyUpdate?: string[];\n }\n): Promise<DependenciesModificationResults> {\n const updatingPackageJsonStep = logNewSection('Updating package.json');\n\n const results = modifyPackageJson(projectRoot, {\n templatePkg,\n pkg,\n skipDependencyUpdate,\n });\n\n const hasChanges = results.changedDependencies.length || results.scriptsChanged;\n\n // NOTE: This is effectively bundler caching and subject to breakage if the inputs don't match the mutations.\n if (hasChanges) {\n await fs.promises.writeFile(\n path.resolve(projectRoot, 'package.json'),\n // Add new line to match the format of running yarn.\n // This prevents the `package.json` from changing when running `prebuild --no-install` multiple times.\n JSON.stringify(pkg, null, 2) + '\\n'\n );\n }\n\n updatingPackageJsonStep.succeed(\n 'Updated package.json' + (hasChanges ? '' : chalk.dim(` | no changes`))\n );\n\n return results;\n}\n\n/**\n * Make required modifications to the `package.json` file as a JSON object.\n *\n * 1. Update `package.json` `scripts`.\n * 2. Update `package.json` `dependencies` (not `devDependencies`).\n * 3. Update `package.json` `main`.\n *\n * @param projectRoot The root directory of the project.\n * @param templatePkg Template project package.json as JSON.\n * @param pkg Current package.json as JSON.\n * @param skipDependencyUpdate Array of dependencies to skip updating.\n * @returns\n */\nfunction modifyPackageJson(\n projectRoot: string,\n {\n templatePkg,\n pkg,\n skipDependencyUpdate,\n }: {\n templatePkg: PackageJSONConfig;\n pkg: PackageJSONConfig;\n /** @deprecated Required packages are not overwritten, only added when missing */\n skipDependencyUpdate?: string[];\n }\n) {\n const scriptsChanged = updatePkgScripts({ pkg });\n\n // TODO: Move to `npx expo-doctor`\n return {\n scriptsChanged,\n ...updatePkgDependencies(projectRoot, {\n pkg,\n templatePkg,\n skipDependencyUpdate,\n }),\n };\n}\n\n/**\n * Update `package.json` dependencies by combining the `dependencies` in the\n * project we are creating with the dependencies in the template project.\n *\n * > Exposed for testing.\n */\nexport function updatePkgDependencies(\n projectRoot: string,\n {\n pkg,\n templatePkg,\n skipDependencyUpdate = [],\n }: {\n pkg: PackageJSONConfig;\n templatePkg: PackageJSONConfig;\n /** @deprecated Required packages are not overwritten, only added when missing */\n skipDependencyUpdate?: string[];\n }\n): DependenciesModificationResults {\n const { dependencies } = templatePkg;\n // The default values come from the bare-minimum template's package.json.\n // Users can change this by using different templates with the `--template` flag.\n // The main reason for allowing the changing of dependencies would be to include\n // dependencies that are required for the native project to build. For example,\n // it does not need to include dependencies that are used in the JS-code only.\n const defaultDependencies = createDependenciesMap(dependencies);\n\n // NOTE: This is a hack to ensure this doesn't trigger an extraneous change in the `package.json`\n // it isn't required for anything in the `ios` and `android` folders.\n delete defaultDependencies['expo-status-bar'];\n // NOTE: Expo splash screen is installed by default in the template but the config plugin also lives in prebuild-config\n // so we can delete it to prevent an extraneous change in the `package.json`.\n delete defaultDependencies['expo-splash-screen'];\n\n const combinedDependencies: DependenciesMap = createDependenciesMap({\n ...defaultDependencies,\n ...pkg.dependencies,\n });\n\n // These dependencies are only added, not overwritten from the project\n const requiredDependencies = [\n // TODO: This is no longer required because it's this same package.\n 'expo',\n // TODO: Drop this somehow.\n 'react-native',\n ].filter((depKey) => !!defaultDependencies[depKey]);\n\n const symlinkedPackages: string[] = [];\n const nonRecommendedPackages: string[] = [];\n\n for (const dependenciesKey of requiredDependencies) {\n // If the local package.json defined the dependency that we want to overwrite...\n if (pkg.dependencies?.[dependenciesKey]) {\n // Then ensure it isn't symlinked (i.e. the user has a custom version in their yarn workspace).\n if (isModuleSymlinked(projectRoot, { moduleId: dependenciesKey, isSilent: true })) {\n // If the package is in the project's package.json and it's symlinked, then skip overwriting it.\n symlinkedPackages.push(dependenciesKey);\n continue;\n }\n\n // Do not modify manually skipped dependencies\n if (skipDependencyUpdate.includes(dependenciesKey)) {\n continue;\n }\n\n // Warn users for outdated dependencies when prebuilding\n const hasRecommendedVersion = versionRangesIntersect(\n pkg.dependencies[dependenciesKey],\n String(defaultDependencies[dependenciesKey])\n );\n if (!hasRecommendedVersion) {\n nonRecommendedPackages.push(`${dependenciesKey}@${defaultDependencies[dependenciesKey]}`);\n }\n }\n }\n\n if (symlinkedPackages.length) {\n Log.log(\n `\\u203A Using symlinked ${symlinkedPackages\n .map((pkg) => chalk.bold(pkg))\n .join(', ')} instead of recommended version(s).`\n );\n }\n\n if (nonRecommendedPackages.length) {\n Log.warn(\n `\\u203A Using current versions instead of recommended ${nonRecommendedPackages\n .map((pkg) => chalk.bold(pkg))\n .join(', ')}.`\n );\n }\n\n // Only change the dependencies if the normalized hash changes, this helps to reduce meaningless changes.\n const hasNewDependencies =\n hashForDependencyMap(pkg.dependencies) !== hashForDependencyMap(combinedDependencies);\n // Save the dependencies\n let changedDependencies: string[] = [];\n if (hasNewDependencies) {\n changedDependencies = diffKeys(combinedDependencies, pkg.dependencies ?? {}).sort();\n // Use Object.assign to preserve the original order of dependencies, this makes it easier to see what changed in the git diff.\n pkg.dependencies = Object.assign(pkg.dependencies ?? {}, combinedDependencies);\n }\n\n return {\n changedDependencies,\n };\n}\n\nfunction diffKeys(a: Record<string, any>, b: Record<string, any>): string[] {\n return Object.keys(a).filter((key) => a[key] !== b[key]);\n}\n\n/**\n * Create an object of type DependenciesMap a dependencies object or throw if not valid.\n *\n * @param dependencies - ideally an object of type {[key]: string} - if not then this will error.\n */\nexport function createDependenciesMap(dependencies: any): DependenciesMap {\n if (typeof dependencies !== 'object') {\n throw new Error(`Dependency map is invalid, expected object but got ${typeof dependencies}`);\n } else if (!dependencies) {\n return {};\n }\n\n const outputMap: DependenciesMap = {};\n\n for (const key of Object.keys(dependencies)) {\n const value = dependencies[key];\n if (typeof value === 'string') {\n outputMap[key] = value;\n } else {\n throw new Error(\n `Dependency for key \\`${key}\\` should be a \\`string\\`, instead got: \\`{ ${key}: ${JSON.stringify(\n value\n )} }\\``\n );\n }\n }\n return outputMap;\n}\n\n/**\n * Updates the package.json scripts for prebuild if the scripts match\n * the default values used in project templates.\n */\nexport function updatePkgScripts({ pkg }: { pkg: PackageJSONConfig }) {\n let hasChanged = false;\n if (!pkg.scripts) {\n pkg.scripts = {};\n }\n if (\n !pkg.scripts.android ||\n pkg.scripts.android === 'expo start --android' ||\n pkg.scripts.android === 'react-native run-android'\n ) {\n pkg.scripts.android = 'expo run:android';\n hasChanged = true;\n }\n if (\n !pkg.scripts.ios ||\n pkg.scripts.ios === 'expo start --ios' ||\n pkg.scripts.ios === 'react-native run-ios'\n ) {\n pkg.scripts.ios = 'expo run:ios';\n hasChanged = true;\n }\n return hasChanged;\n}\n\nfunction normalizeDependencyMap(deps: DependenciesMap): string[] {\n return Object.keys(deps)\n .map((dependency) => `${dependency}@${deps[dependency]}`)\n .sort();\n}\n\nexport function hashForDependencyMap(deps: DependenciesMap = {}): string {\n const depsList = normalizeDependencyMap(deps);\n const depsString = depsList.join('\\n');\n return createFileHash(depsString);\n}\n\nexport function createFileHash(contents: string): string {\n // this doesn't need to be secure, the shorter the better.\n return crypto.createHash('sha1').update(contents).digest('hex');\n}\n\n/**\n * Determine if two semver ranges are overlapping or intersecting.\n * This is a safe version of `semver.intersects` that does not throw.\n */\nfunction versionRangesIntersect(rangeA: string | SemverRange, rangeB: string | SemverRange) {\n try {\n return semverIntersects(rangeA, rangeB);\n } catch {\n return false;\n }\n}\n"],"names":["createDependenciesMap","createFileHash","hashForDependencyMap","updatePackageJSONAsync","updatePkgDependencies","updatePkgScripts","projectRoot","templateDirectory","templatePkg","getPackageJson","pkg","skipDependencyUpdate","updatingPackageJsonStep","logNewSection","results","modifyPackageJson","hasChanges","changedDependencies","length","scriptsChanged","fs","promises","writeFile","path","resolve","JSON","stringify","succeed","chalk","dim","dependencies","defaultDependencies","combinedDependencies","requiredDependencies","filter","depKey","symlinkedPackages","nonRecommendedPackages","dependenciesKey","isModuleSymlinked","moduleId","isSilent","push","includes","hasRecommendedVersion","versionRangesIntersect","String","Log","log","map","bold","join","warn","hasNewDependencies","diffKeys","sort","Object","assign","a","b","keys","key","Error","outputMap","value","hasChanged","scripts","android","ios","normalizeDependencyMap","deps","dependency","depsList","depsString","contents","crypto","createHash","update","digest","rangeA","rangeB","semverIntersects"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/prebuild/updatePackageJson.ts"],"sourcesContent":["import { getPackageJson, PackageJSONConfig } from '@expo/config';\nimport chalk from 'chalk';\nimport crypto from 'crypto';\nimport fs from 'fs';\nimport path from 'path';\nimport { intersects as semverIntersects, Range as SemverRange } from 'semver';\n\nimport * as Log from '../log';\nimport { isModuleSymlinked } from '../utils/isModuleSymlinked';\nimport { logNewSection } from '../utils/ora';\n\nexport type DependenciesMap = { [key: string]: string | number };\n\nexport type DependenciesModificationResults = {\n /** A list of new values were added to the `dependencies` object in the `package.json`. */\n changedDependencies: string[];\n};\n\n/** Modifies the `package.json` with `modifyPackageJson` and format/displays the results. */\nexport async function updatePackageJSONAsync(\n projectRoot: string,\n {\n templateDirectory,\n templatePkg = getPackageJson(templateDirectory),\n pkg,\n skipDependencyUpdate,\n }: {\n templateDirectory: string;\n templatePkg?: PackageJSONConfig;\n pkg: PackageJSONConfig;\n skipDependencyUpdate?: string[];\n }\n): Promise<DependenciesModificationResults> {\n const updatingPackageJsonStep = logNewSection('Updating package.json');\n\n const results = modifyPackageJson(projectRoot, {\n templatePkg,\n pkg,\n skipDependencyUpdate,\n });\n\n const hasChanges = results.changedDependencies.length || results.scriptsChanged;\n\n // NOTE: This is effectively bundler caching and subject to breakage if the inputs don't match the mutations.\n if (hasChanges) {\n await fs.promises.writeFile(\n path.resolve(projectRoot, 'package.json'),\n // Add new line to match the format of running yarn.\n // This prevents the `package.json` from changing when running `prebuild --no-install` multiple times.\n JSON.stringify(pkg, null, 2) + '\\n'\n );\n }\n\n updatingPackageJsonStep.succeed(\n 'Updated package.json' + (hasChanges ? '' : chalk.dim(` | no changes`))\n );\n\n return results;\n}\n\n/**\n * Make required modifications to the `package.json` file as a JSON object.\n *\n * 1. Update `package.json` `scripts`.\n * 2. Update `package.json` `dependencies` (not `devDependencies`).\n * 3. Update `package.json` `main`.\n *\n * @param projectRoot The root directory of the project.\n * @param templatePkg Template project package.json as JSON.\n * @param pkg Current package.json as JSON.\n * @param skipDependencyUpdate Array of dependencies to skip updating.\n * @returns\n */\nfunction modifyPackageJson(\n projectRoot: string,\n {\n templatePkg,\n pkg,\n skipDependencyUpdate,\n }: {\n templatePkg: PackageJSONConfig;\n pkg: PackageJSONConfig;\n /** @deprecated Required packages are not overwritten, only added when missing */\n skipDependencyUpdate?: string[];\n }\n) {\n const scriptsChanged = updatePkgScripts({ pkg });\n\n // TODO: Move to `npx expo-doctor`\n return {\n scriptsChanged,\n ...updatePkgDependencies(projectRoot, {\n pkg,\n templatePkg,\n skipDependencyUpdate,\n }),\n };\n}\n\n/**\n * Update `package.json` dependencies by combining the `dependencies` in the\n * project we are creating with the dependencies in the template project.\n *\n * > Exposed for testing.\n */\nexport function updatePkgDependencies(\n projectRoot: string,\n {\n pkg,\n templatePkg,\n skipDependencyUpdate = [],\n }: {\n pkg: PackageJSONConfig;\n templatePkg: PackageJSONConfig;\n /** @deprecated Required packages are not overwritten, only added when missing */\n skipDependencyUpdate?: string[];\n }\n): DependenciesModificationResults {\n const { dependencies } = templatePkg;\n // The default values come from the bare-minimum template's package.json.\n // Users can change this by using different templates with the `--template` flag.\n // The main reason for allowing the changing of dependencies would be to include\n // dependencies that are required for the native project to build. For example,\n // it does not need to include dependencies that are used in the JS-code only.\n const defaultDependencies = createDependenciesMap(dependencies);\n\n // NOTE: This is a hack to ensure this doesn't trigger an extraneous change in the `package.json`\n // it isn't required for anything in the `ios` and `android` folders.\n delete defaultDependencies['expo-status-bar'];\n // NOTE: Expo splash screen is installed by default in the template but the config plugin also lives in prebuild-config\n // so we can delete it to prevent an extraneous change in the `package.json`.\n delete defaultDependencies['expo-splash-screen'];\n\n const combinedDependencies: DependenciesMap = createDependenciesMap({\n ...defaultDependencies,\n ...pkg.dependencies,\n });\n\n // These dependencies are only added, not overwritten from the project\n const requiredDependencies = [\n // TODO: This is no longer required because it's this same package.\n 'expo',\n // TODO: Drop this somehow.\n 'react-native',\n ].filter((depKey) => !!defaultDependencies[depKey]);\n\n const symlinkedPackages: string[] = [];\n const nonRecommendedPackages: string[] = [];\n\n for (const dependenciesKey of requiredDependencies) {\n // If the local package.json defined the dependency that we want to overwrite...\n if (pkg.dependencies?.[dependenciesKey]) {\n // Then ensure it isn't symlinked (i.e. the user has a custom version in their yarn workspace).\n if (isModuleSymlinked(projectRoot, { moduleId: dependenciesKey, isSilent: true })) {\n // If the package is in the project's package.json and it's symlinked, then skip overwriting it.\n symlinkedPackages.push(dependenciesKey);\n continue;\n }\n\n // Do not modify manually skipped dependencies\n if (skipDependencyUpdate.includes(dependenciesKey)) {\n continue;\n }\n\n // Warn users for outdated dependencies when prebuilding\n const hasRecommendedVersion = versionRangesIntersect(\n pkg.dependencies[dependenciesKey],\n String(defaultDependencies[dependenciesKey])\n );\n if (!hasRecommendedVersion) {\n nonRecommendedPackages.push(`${dependenciesKey}@${defaultDependencies[dependenciesKey]}`);\n }\n }\n }\n\n if (symlinkedPackages.length) {\n Log.log(\n `\\u203A Using symlinked ${symlinkedPackages\n .map((pkg) => chalk.bold(pkg))\n .join(', ')} instead of recommended version(s).`\n );\n }\n\n if (nonRecommendedPackages.length) {\n Log.warn(\n `\\u203A Using current versions instead of recommended ${nonRecommendedPackages\n .map((pkg) => chalk.bold(pkg))\n .join(', ')}.`\n );\n }\n\n // Only change the dependencies if the normalized hash changes, this helps to reduce meaningless changes.\n const hasNewDependencies =\n hashForDependencyMap(pkg.dependencies) !== hashForDependencyMap(combinedDependencies);\n // Save the dependencies\n let changedDependencies: string[] = [];\n if (hasNewDependencies) {\n changedDependencies = diffKeys(combinedDependencies, pkg.dependencies ?? {}).sort();\n // Use Object.assign to preserve the original order of dependencies, this makes it easier to see what changed in the git diff.\n pkg.dependencies = Object.assign(pkg.dependencies ?? {}, combinedDependencies);\n }\n\n return {\n changedDependencies,\n };\n}\n\nfunction diffKeys(a: Record<string, any>, b: Record<string, any>): string[] {\n return Object.keys(a).filter((key) => a[key] !== b[key]);\n}\n\n/**\n * Create an object of type DependenciesMap a dependencies object or throw if not valid.\n *\n * @param dependencies - ideally an object of type {[key]: string} - if not then this will error.\n */\nexport function createDependenciesMap(dependencies: any): DependenciesMap {\n if (typeof dependencies !== 'object') {\n throw new Error(`Dependency map is invalid, expected object but got ${typeof dependencies}`);\n } else if (!dependencies) {\n return {};\n }\n\n const outputMap: DependenciesMap = {};\n\n for (const key of Object.keys(dependencies)) {\n const value = dependencies[key];\n if (typeof value === 'string') {\n outputMap[key] = value;\n } else {\n throw new Error(\n `Dependency for key \\`${key}\\` should be a \\`string\\`, instead got: \\`{ ${key}: ${JSON.stringify(\n value\n )} }\\``\n );\n }\n }\n return outputMap;\n}\n\n/**\n * Updates the package.json scripts for prebuild if the scripts match\n * the default values used in project templates.\n */\nexport function updatePkgScripts({ pkg }: { pkg: PackageJSONConfig }) {\n let hasChanged = false;\n if (!pkg.scripts) {\n pkg.scripts = {};\n }\n if (\n !pkg.scripts.android ||\n pkg.scripts.android === 'expo start --android' ||\n pkg.scripts.android === 'react-native run-android'\n ) {\n pkg.scripts.android = 'expo run:android';\n hasChanged = true;\n }\n if (\n !pkg.scripts.ios ||\n pkg.scripts.ios === 'expo start --ios' ||\n pkg.scripts.ios === 'react-native run-ios'\n ) {\n pkg.scripts.ios = 'expo run:ios';\n hasChanged = true;\n }\n return hasChanged;\n}\n\nfunction normalizeDependencyMap(deps: DependenciesMap): string[] {\n return Object.keys(deps)\n .map((dependency) => `${dependency}@${deps[dependency]}`)\n .sort();\n}\n\nexport function hashForDependencyMap(deps: DependenciesMap = {}): string {\n const depsList = normalizeDependencyMap(deps);\n const depsString = depsList.join('\\n');\n return createFileHash(depsString);\n}\n\nexport function createFileHash(contents: string): string {\n // this doesn't need to be secure, the shorter the better.\n return crypto.createHash('sha1').update(contents).digest('hex');\n}\n\n/**\n * Determine if two semver ranges are overlapping or intersecting.\n * This is a safe version of `semver.intersects` that does not throw.\n */\nfunction versionRangesIntersect(rangeA: string | SemverRange, rangeB: string | SemverRange) {\n try {\n return semverIntersects(rangeA, rangeB);\n } catch {\n return false;\n }\n}\n"],"names":["updatePackageJSONAsync","updatePkgDependencies","createDependenciesMap","updatePkgScripts","hashForDependencyMap","createFileHash","projectRoot","templateDirectory","templatePkg","getPackageJson","pkg","skipDependencyUpdate","updatingPackageJsonStep","logNewSection","results","modifyPackageJson","hasChanges","changedDependencies","length","scriptsChanged","fs","promises","writeFile","path","resolve","JSON","stringify","succeed","chalk","dim","dependencies","defaultDependencies","combinedDependencies","requiredDependencies","filter","depKey","symlinkedPackages","nonRecommendedPackages","dependenciesKey","isModuleSymlinked","moduleId","isSilent","push","includes","hasRecommendedVersion","versionRangesIntersect","String","Log","log","map","bold","join","warn","hasNewDependencies","diffKeys","sort","Object","assign","a","b","keys","key","Error","outputMap","value","hasChanged","scripts","android","ios","normalizeDependencyMap","deps","dependency","depsList","depsString","contents","crypto","createHash","update","digest","rangeA","rangeB","semverIntersects"],"mappings":"AAAA;;;;;;;;;;;IAmBsBA,sBAAsB,MAAtBA,sBAAsB;IAsF5BC,qBAAqB,MAArBA,qBAAqB;IA+GrBC,qBAAqB,MAArBA,qBAAqB;IA4BrBC,gBAAgB,MAAhBA,gBAAgB;IA8BhBC,oBAAoB,MAApBA,oBAAoB;IAMpBC,cAAc,MAAdA,cAAc;;;yBAxRoB,cAAc;;;;;;;8DAC9C,OAAO;;;;;;;8DACN,QAAQ;;;;;;;8DACZ,IAAI;;;;;;;8DACF,MAAM;;;;;;;yBAC8C,QAAQ;;;;;;2DAExD,QAAQ;mCACK,4BAA4B;qBAChC,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUrC,eAAeL,sBAAsB,CAC1CM,WAAmB,EACnB,EACEC,iBAAiB,CAAA,EACjBC,WAAW,EAAGC,IAAAA,OAAc,EAAA,eAAA,EAACF,iBAAiB,CAAC,CAAA,EAC/CG,GAAG,CAAA,EACHC,oBAAoB,CAAA,EAMrB,EACyC;IAC1C,MAAMC,uBAAuB,GAAGC,IAAAA,IAAa,cAAA,EAAC,uBAAuB,CAAC,AAAC;IAEvE,MAAMC,OAAO,GAAGC,iBAAiB,CAACT,WAAW,EAAE;QAC7CE,WAAW;QACXE,GAAG;QACHC,oBAAoB;KACrB,CAAC,AAAC;IAEH,MAAMK,UAAU,GAAGF,OAAO,CAACG,mBAAmB,CAACC,MAAM,IAAIJ,OAAO,CAACK,cAAc,AAAC;IAEhF,6GAA6G;IAC7G,IAAIH,UAAU,EAAE;QACd,MAAMI,GAAE,EAAA,QAAA,CAACC,QAAQ,CAACC,SAAS,CACzBC,KAAI,EAAA,QAAA,CAACC,OAAO,CAAClB,WAAW,EAAE,cAAc,CAAC,EACzC,oDAAoD;QACpD,sGAAsG;QACtGmB,IAAI,CAACC,SAAS,CAAChB,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACpC,CAAC;IACJ,CAAC;IAEDE,uBAAuB,CAACe,OAAO,CAC7B,sBAAsB,GAAG,CAACX,UAAU,GAAG,EAAE,GAAGY,MAAK,EAAA,QAAA,CAACC,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CACxE,CAAC;IAEF,OAAOf,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;CAYC,GACD,SAASC,iBAAiB,CACxBT,WAAmB,EACnB,EACEE,WAAW,CAAA,EACXE,GAAG,CAAA,EACHC,oBAAoB,CAAA,EAMrB,EACD;IACA,MAAMQ,cAAc,GAAGhB,gBAAgB,CAAC;QAAEO,GAAG;KAAE,CAAC,AAAC;IAEjD,kCAAkC;IAClC,OAAO;QACLS,cAAc;QACd,GAAGlB,qBAAqB,CAACK,WAAW,EAAE;YACpCI,GAAG;YACHF,WAAW;YACXG,oBAAoB;SACrB,CAAC;KACH,CAAC;AACJ,CAAC;AAQM,SAASV,qBAAqB,CACnCK,WAAmB,EACnB,EACEI,GAAG,CAAA,EACHF,WAAW,CAAA,EACXG,oBAAoB,EAAG,EAAE,CAAA,EAM1B,EACgC;IACjC,MAAM,EAAEmB,YAAY,CAAA,EAAE,GAAGtB,WAAW,AAAC;IACrC,yEAAyE;IACzE,iFAAiF;IACjF,gFAAgF;IAChF,+EAA+E;IAC/E,8EAA8E;IAC9E,MAAMuB,mBAAmB,GAAG7B,qBAAqB,CAAC4B,YAAY,CAAC,AAAC;IAEhE,iGAAiG;IACjG,qEAAqE;IACrE,OAAOC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IAC9C,uHAAuH;IACvH,6EAA6E;IAC7E,OAAOA,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;IAEjD,MAAMC,oBAAoB,GAAoB9B,qBAAqB,CAAC;QAClE,GAAG6B,mBAAmB;QACtB,GAAGrB,GAAG,CAACoB,YAAY;KACpB,CAAC,AAAC;IAEH,sEAAsE;IACtE,MAAMG,oBAAoB,GAAG;QAC3B,mEAAmE;QACnE,MAAM;QACN,2BAA2B;QAC3B,cAAc;KACf,CAACC,MAAM,CAAC,CAACC,MAAM,GAAK,CAAC,CAACJ,mBAAmB,CAACI,MAAM,CAAC,CAAC,AAAC;IAEpD,MAAMC,iBAAiB,GAAa,EAAE,AAAC;IACvC,MAAMC,sBAAsB,GAAa,EAAE,AAAC;IAE5C,KAAK,MAAMC,eAAe,IAAIL,oBAAoB,CAAE;YAE9CvB,GAAgB;QADpB,gFAAgF;QAChF,IAAIA,CAAAA,GAAgB,GAAhBA,GAAG,CAACoB,YAAY,SAAmB,GAAnCpB,KAAAA,CAAmC,GAAnCA,GAAgB,AAAE,CAAC4B,eAAe,CAAC,EAAE;YACvC,+FAA+F;YAC/F,IAAIC,IAAAA,kBAAiB,kBAAA,EAACjC,WAAW,EAAE;gBAAEkC,QAAQ,EAAEF,eAAe;gBAAEG,QAAQ,EAAE,IAAI;aAAE,CAAC,EAAE;gBACjF,gGAAgG;gBAChGL,iBAAiB,CAACM,IAAI,CAACJ,eAAe,CAAC,CAAC;gBACxC,SAAS;YACX,CAAC;YAED,8CAA8C;YAC9C,IAAI3B,oBAAoB,CAACgC,QAAQ,CAACL,eAAe,CAAC,EAAE;gBAClD,SAAS;YACX,CAAC;YAED,wDAAwD;YACxD,MAAMM,qBAAqB,GAAGC,sBAAsB,CAClDnC,GAAG,CAACoB,YAAY,CAACQ,eAAe,CAAC,EACjCQ,MAAM,CAACf,mBAAmB,CAACO,eAAe,CAAC,CAAC,CAC7C,AAAC;YACF,IAAI,CAACM,qBAAqB,EAAE;gBAC1BP,sBAAsB,CAACK,IAAI,CAAC,CAAC,EAAEJ,eAAe,CAAC,CAAC,EAAEP,mBAAmB,CAACO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAIF,iBAAiB,CAAClB,MAAM,EAAE;QAC5B6B,IAAG,CAACC,GAAG,CACL,CAAC,uBAAuB,EAAEZ,iBAAiB,CACxCa,GAAG,CAAC,CAACvC,GAAG,GAAKkB,MAAK,EAAA,QAAA,CAACsB,IAAI,CAACxC,GAAG,CAAC,CAAC,CAC7ByC,IAAI,CAAC,IAAI,CAAC,CAAC,mCAAmC,CAAC,CACnD,CAAC;IACJ,CAAC;IAED,IAAId,sBAAsB,CAACnB,MAAM,EAAE;QACjC6B,IAAG,CAACK,IAAI,CACN,CAAC,qDAAqD,EAAEf,sBAAsB,CAC3EY,GAAG,CAAC,CAACvC,GAAG,GAAKkB,MAAK,EAAA,QAAA,CAACsB,IAAI,CAACxC,GAAG,CAAC,CAAC,CAC7ByC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACjB,CAAC;IACJ,CAAC;IAED,yGAAyG;IACzG,MAAME,kBAAkB,GACtBjD,oBAAoB,CAACM,GAAG,CAACoB,YAAY,CAAC,KAAK1B,oBAAoB,CAAC4B,oBAAoB,CAAC,AAAC;IACxF,wBAAwB;IACxB,IAAIf,mBAAmB,GAAa,EAAE,AAAC;IACvC,IAAIoC,kBAAkB,EAAE;QACtBpC,mBAAmB,GAAGqC,QAAQ,CAACtB,oBAAoB,EAAEtB,GAAG,CAACoB,YAAY,IAAI,EAAE,CAAC,CAACyB,IAAI,EAAE,CAAC;QACpF,8HAA8H;QAC9H7C,GAAG,CAACoB,YAAY,GAAG0B,MAAM,CAACC,MAAM,CAAC/C,GAAG,CAACoB,YAAY,IAAI,EAAE,EAAEE,oBAAoB,CAAC,CAAC;IACjF,CAAC;IAED,OAAO;QACLf,mBAAmB;KACpB,CAAC;AACJ,CAAC;AAED,SAASqC,QAAQ,CAACI,CAAsB,EAAEC,CAAsB,EAAY;IAC1E,OAAOH,MAAM,CAACI,IAAI,CAACF,CAAC,CAAC,CAACxB,MAAM,CAAC,CAAC2B,GAAG,GAAKH,CAAC,CAACG,GAAG,CAAC,KAAKF,CAAC,CAACE,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC;AAOM,SAAS3D,qBAAqB,CAAC4B,YAAiB,EAAmB;IACxE,IAAI,OAAOA,YAAY,KAAK,QAAQ,EAAE;QACpC,MAAM,IAAIgC,KAAK,CAAC,CAAC,mDAAmD,EAAE,OAAOhC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/F,OAAO,IAAI,CAACA,YAAY,EAAE;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAMiC,SAAS,GAAoB,EAAE,AAAC;IAEtC,KAAK,MAAMF,GAAG,IAAIL,MAAM,CAACI,IAAI,CAAC9B,YAAY,CAAC,CAAE;QAC3C,MAAMkC,KAAK,GAAGlC,YAAY,CAAC+B,GAAG,CAAC,AAAC;QAChC,IAAI,OAAOG,KAAK,KAAK,QAAQ,EAAE;YAC7BD,SAAS,CAACF,GAAG,CAAC,GAAGG,KAAK,CAAC;QACzB,OAAO;YACL,MAAM,IAAIF,KAAK,CACb,CAAC,qBAAqB,EAAED,GAAG,CAAC,4CAA4C,EAAEA,GAAG,CAAC,EAAE,EAAEpC,IAAI,CAACC,SAAS,CAC9FsC,KAAK,CACN,CAAC,IAAI,CAAC,CACR,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAOD,SAAS,CAAC;AACnB,CAAC;AAMM,SAAS5D,gBAAgB,CAAC,EAAEO,GAAG,CAAA,EAA8B,EAAE;IACpE,IAAIuD,UAAU,GAAG,KAAK,AAAC;IACvB,IAAI,CAACvD,GAAG,CAACwD,OAAO,EAAE;QAChBxD,GAAG,CAACwD,OAAO,GAAG,EAAE,CAAC;IACnB,CAAC;IACD,IACE,CAACxD,GAAG,CAACwD,OAAO,CAACC,OAAO,IACpBzD,GAAG,CAACwD,OAAO,CAACC,OAAO,KAAK,sBAAsB,IAC9CzD,GAAG,CAACwD,OAAO,CAACC,OAAO,KAAK,0BAA0B,EAClD;QACAzD,GAAG,CAACwD,OAAO,CAACC,OAAO,GAAG,kBAAkB,CAAC;QACzCF,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC;IACD,IACE,CAACvD,GAAG,CAACwD,OAAO,CAACE,GAAG,IAChB1D,GAAG,CAACwD,OAAO,CAACE,GAAG,KAAK,kBAAkB,IACtC1D,GAAG,CAACwD,OAAO,CAACE,GAAG,KAAK,sBAAsB,EAC1C;QACA1D,GAAG,CAACwD,OAAO,CAACE,GAAG,GAAG,cAAc,CAAC;QACjCH,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC;IACD,OAAOA,UAAU,CAAC;AACpB,CAAC;AAED,SAASI,sBAAsB,CAACC,IAAqB,EAAY;IAC/D,OAAOd,MAAM,CAACI,IAAI,CAACU,IAAI,CAAC,CACrBrB,GAAG,CAAC,CAACsB,UAAU,GAAK,CAAC,EAAEA,UAAU,CAAC,CAAC,EAAED,IAAI,CAACC,UAAU,CAAC,CAAC,CAAC,CAAC,CACxDhB,IAAI,EAAE,CAAC;AACZ,CAAC;AAEM,SAASnD,oBAAoB,CAACkE,IAAqB,GAAG,EAAE,EAAU;IACvE,MAAME,QAAQ,GAAGH,sBAAsB,CAACC,IAAI,CAAC,AAAC;IAC9C,MAAMG,UAAU,GAAGD,QAAQ,CAACrB,IAAI,CAAC,IAAI,CAAC,AAAC;IACvC,OAAO9C,cAAc,CAACoE,UAAU,CAAC,CAAC;AACpC,CAAC;AAEM,SAASpE,cAAc,CAACqE,QAAgB,EAAU;IACvD,0DAA0D;IAC1D,OAAOC,OAAM,EAAA,QAAA,CAACC,UAAU,CAAC,MAAM,CAAC,CAACC,MAAM,CAACH,QAAQ,CAAC,CAACI,MAAM,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED;;;CAGC,GACD,SAASjC,sBAAsB,CAACkC,MAA4B,EAAEC,MAA4B,EAAE;IAC1F,IAAI;QACF,OAAOC,IAAAA,OAAgB,EAAA,WAAA,EAACF,MAAM,EAAEC,MAAM,CAAC,CAAC;IAC1C,EAAE,OAAM;QACN,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -4,27 +4,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "validateTemplatePlatforms", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get:
|
|
8
|
-
return validateTemplatePlatforms;
|
|
9
|
-
}
|
|
7
|
+
get: ()=>validateTemplatePlatforms
|
|
10
8
|
});
|
|
11
9
|
function _chalk() {
|
|
12
|
-
const data = /*#__PURE__*/
|
|
10
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
|
|
13
11
|
_chalk = function() {
|
|
14
12
|
return data;
|
|
15
13
|
};
|
|
16
14
|
return data;
|
|
17
15
|
}
|
|
18
16
|
function _path() {
|
|
19
|
-
const data = /*#__PURE__*/
|
|
17
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
|
|
20
18
|
_path = function() {
|
|
21
19
|
return data;
|
|
22
20
|
};
|
|
23
21
|
return data;
|
|
24
22
|
}
|
|
25
|
-
const _log = /*#__PURE__*/
|
|
23
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../log"));
|
|
26
24
|
const _dir = require("../utils/dir");
|
|
27
|
-
function
|
|
25
|
+
function _interopRequireDefault(obj) {
|
|
28
26
|
return obj && obj.__esModule ? obj : {
|
|
29
27
|
default: obj
|
|
30
28
|
};
|
|
@@ -37,7 +35,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
37
35
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
38
36
|
})(nodeInterop);
|
|
39
37
|
}
|
|
40
|
-
function
|
|
38
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
41
39
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
42
40
|
return obj;
|
|
43
41
|
}
|
|
@@ -50,9 +48,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
50
48
|
if (cache && cache.has(obj)) {
|
|
51
49
|
return cache.get(obj);
|
|
52
50
|
}
|
|
53
|
-
var newObj = {
|
|
54
|
-
__proto__: null
|
|
55
|
-
};
|
|
51
|
+
var newObj = {};
|
|
56
52
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
57
53
|
for(var key in obj){
|
|
58
54
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -70,7 +66,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
70
66
|
}
|
|
71
67
|
return newObj;
|
|
72
68
|
}
|
|
73
|
-
function validateTemplatePlatforms({ templateDirectory, platforms
|
|
69
|
+
function validateTemplatePlatforms({ templateDirectory , platforms }) {
|
|
74
70
|
const existingPlatforms = [];
|
|
75
71
|
for (const platform of platforms){
|
|
76
72
|
if ((0, _dir.directoryExistsSync)(_path().default.join(templateDirectory, platform))) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/prebuild/validateTemplatePlatforms.ts"],"sourcesContent":["import { ModPlatform } from '@expo/config-plugins';\nimport chalk from 'chalk';\nimport path from 'path';\n\nimport * as Log from '../log';\nimport { directoryExistsSync } from '../utils/dir';\n\nexport function validateTemplatePlatforms({\n templateDirectory,\n platforms,\n}: {\n templateDirectory: string;\n platforms: ModPlatform[];\n}) {\n const existingPlatforms: ModPlatform[] = [];\n\n for (const platform of platforms) {\n if (directoryExistsSync(path.join(templateDirectory, platform))) {\n existingPlatforms.push(platform);\n } else {\n Log.warn(\n chalk`⚠️ Skipping platform ${platform}. Use a template that contains native files for ${platform} (./${platform}).`\n );\n }\n }\n\n return existingPlatforms;\n}\n"],"names":["validateTemplatePlatforms","templateDirectory","platforms","existingPlatforms","platform","directoryExistsSync","path","join","push","Log","warn","chalk"],"mappings":";;;;+BAOgBA;;;
|
|
1
|
+
{"version":3,"sources":["../../../src/prebuild/validateTemplatePlatforms.ts"],"sourcesContent":["import { ModPlatform } from '@expo/config-plugins';\nimport chalk from 'chalk';\nimport path from 'path';\n\nimport * as Log from '../log';\nimport { directoryExistsSync } from '../utils/dir';\n\nexport function validateTemplatePlatforms({\n templateDirectory,\n platforms,\n}: {\n templateDirectory: string;\n platforms: ModPlatform[];\n}) {\n const existingPlatforms: ModPlatform[] = [];\n\n for (const platform of platforms) {\n if (directoryExistsSync(path.join(templateDirectory, platform))) {\n existingPlatforms.push(platform);\n } else {\n Log.warn(\n chalk`⚠️ Skipping platform ${platform}. Use a template that contains native files for ${platform} (./${platform}).`\n );\n }\n }\n\n return existingPlatforms;\n}\n"],"names":["validateTemplatePlatforms","templateDirectory","platforms","existingPlatforms","platform","directoryExistsSync","path","join","push","Log","warn","chalk"],"mappings":"AAAA;;;;+BAOgBA,2BAAyB;;aAAzBA,yBAAyB;;;8DANvB,OAAO;;;;;;;8DACR,MAAM;;;;;;2DAEF,QAAQ;qBACO,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE3C,SAASA,yBAAyB,CAAC,EACxCC,iBAAiB,CAAA,EACjBC,SAAS,CAAA,EAIV,EAAE;IACD,MAAMC,iBAAiB,GAAkB,EAAE,AAAC;IAE5C,KAAK,MAAMC,QAAQ,IAAIF,SAAS,CAAE;QAChC,IAAIG,IAAAA,IAAmB,oBAAA,EAACC,KAAI,EAAA,QAAA,CAACC,IAAI,CAACN,iBAAiB,EAAEG,QAAQ,CAAC,CAAC,EAAE;YAC/DD,iBAAiB,CAACK,IAAI,CAACJ,QAAQ,CAAC,CAAC;QACnC,OAAO;YACLK,IAAG,CAACC,IAAI,CACNC,IAAAA,MAAK,EAAA,QAAA,CAAA,CAAC,sBAAsB,EAAEP,QAAQ,CAAC,gDAAgD,EAAEA,QAAQ,CAAC,IAAI,EAAEA,QAAQ,CAAC,EAAE,CAAC,CACrH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAOD,iBAAiB,CAAC;AAC3B,CAAC"}
|
|
@@ -5,9 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "expoRegister", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get:
|
|
9
|
-
return expoRegister;
|
|
10
|
-
}
|
|
8
|
+
get: ()=>expoRegister
|
|
11
9
|
});
|
|
12
10
|
const _args = require("../utils/args");
|
|
13
11
|
const _errors = require("../utils/errors");
|
|
@@ -19,7 +17,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
19
17
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
20
18
|
})(nodeInterop);
|
|
21
19
|
}
|
|
22
|
-
function
|
|
20
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
23
21
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
24
22
|
return obj;
|
|
25
23
|
}
|
|
@@ -32,9 +30,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
32
30
|
if (cache && cache.has(obj)) {
|
|
33
31
|
return cache.get(obj);
|
|
34
32
|
}
|
|
35
|
-
var newObj = {
|
|
36
|
-
__proto__: null
|
|
37
|
-
};
|
|
33
|
+
var newObj = {};
|
|
38
34
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
39
35
|
for(var key in obj){
|
|
40
36
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -55,15 +51,15 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
55
51
|
const expoRegister = async (argv)=>{
|
|
56
52
|
const args = (0, _args.assertArgs)({
|
|
57
53
|
// Types
|
|
58
|
-
|
|
54
|
+
"--help": Boolean,
|
|
59
55
|
// Aliases
|
|
60
|
-
|
|
56
|
+
"-h": "--help"
|
|
61
57
|
}, argv);
|
|
62
|
-
if (args[
|
|
58
|
+
if (args["--help"]) {
|
|
63
59
|
(0, _args.printHelp)(`Sign up for a new Expo account`, `npx expo register`, // Options
|
|
64
60
|
`-h, --help Usage info`);
|
|
65
61
|
}
|
|
66
|
-
const { registerAsync
|
|
62
|
+
const { registerAsync } = await Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("./registerAsync.js")));
|
|
67
63
|
return registerAsync().catch(_errors.logCmdError);
|
|
68
64
|
};
|
|
69
65
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/register/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { Command } from '../../bin/cli';\nimport { assertArgs, printHelp } from '../utils/args';\nimport { logCmdError } from '../utils/errors';\n\nexport const expoRegister: Command = async (argv) => {\n const args = assertArgs(\n {\n // Types\n '--help': Boolean,\n // Aliases\n '-h': '--help',\n },\n argv\n );\n\n if (args['--help']) {\n printHelp(\n `Sign up for a new Expo account`,\n `npx expo register`,\n // Options\n `-h, --help Usage info`\n );\n }\n\n const { registerAsync } = await import('./registerAsync.js');\n return registerAsync().catch(logCmdError);\n};\n"],"names":["expoRegister","argv","args","assertArgs","Boolean","printHelp","registerAsync","catch","logCmdError"],"mappings":";;;;;+BAKaA
|
|
1
|
+
{"version":3,"sources":["../../../src/register/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport { Command } from '../../bin/cli';\nimport { assertArgs, printHelp } from '../utils/args';\nimport { logCmdError } from '../utils/errors';\n\nexport const expoRegister: Command = async (argv) => {\n const args = assertArgs(\n {\n // Types\n '--help': Boolean,\n // Aliases\n '-h': '--help',\n },\n argv\n );\n\n if (args['--help']) {\n printHelp(\n `Sign up for a new Expo account`,\n `npx expo register`,\n // Options\n `-h, --help Usage info`\n );\n }\n\n const { registerAsync } = await import('./registerAsync.js');\n return registerAsync().catch(logCmdError);\n};\n"],"names":["expoRegister","argv","args","assertArgs","Boolean","printHelp","registerAsync","catch","logCmdError"],"mappings":"AAAA;;;;;+BAKaA,cAAY;;aAAZA,YAAY;;sBAHa,eAAe;wBACzB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtC,MAAMA,YAAY,GAAY,OAAOC,IAAI,GAAK;IACnD,MAAMC,IAAI,GAAGC,IAAAA,KAAU,WAAA,EACrB;QACE,QAAQ;QACR,QAAQ,EAAEC,OAAO;QACjB,UAAU;QACV,IAAI,EAAE,QAAQ;KACf,EACDH,IAAI,CACL,AAAC;IAEF,IAAIC,IAAI,CAAC,QAAQ,CAAC,EAAE;QAClBG,IAAAA,KAAS,UAAA,EACP,CAAC,8BAA8B,CAAC,EAChC,CAAC,iBAAiB,CAAC,EACnB,UAAU;QACV,CAAC,wBAAwB,CAAC,CAC3B,CAAC;IACJ,CAAC;IAED,MAAM,EAAEC,aAAa,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,oBAAoB,GAAC,AAAC;IAC7D,OAAOA,aAAa,EAAE,CAACC,KAAK,CAACC,OAAW,YAAA,CAAC,CAAC;AAC5C,CAAC,AAAC"}
|
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "registerAsync", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get:
|
|
8
|
-
return registerAsync;
|
|
9
|
-
}
|
|
7
|
+
get: ()=>registerAsync
|
|
10
8
|
});
|
|
11
9
|
const _env = require("../utils/env");
|
|
12
10
|
const _errors = require("../utils/errors");
|
|
@@ -16,9 +14,9 @@ const _open = require("../utils/open");
|
|
|
16
14
|
const _ora = require("../utils/ora");
|
|
17
15
|
async function registerAsync() {
|
|
18
16
|
if (!(0, _interactive.isInteractive)()) {
|
|
19
|
-
throw new _errors.CommandError(
|
|
17
|
+
throw new _errors.CommandError("NON_INTERACTIVE", `Cannot register an account in CI. Use the EXPO_TOKEN environment variable to authenticate in CI (${(0, _link.learnMore)("https://docs.expo.dev/accounts/programmatic-access/")})`);
|
|
20
18
|
} else if (_env.env.EXPO_OFFLINE) {
|
|
21
|
-
throw new _errors.CommandError(
|
|
19
|
+
throw new _errors.CommandError("OFFLINE", `Cannot register an account in offline-mode`);
|
|
22
20
|
}
|
|
23
21
|
const registrationUrl = `https://expo.dev/signup`;
|
|
24
22
|
const failedMessage = `Unable to open a web browser. Register an account at: ${registrationUrl}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/register/registerAsync.ts"],"sourcesContent":["import { env } from '../utils/env';\nimport { CommandError } from '../utils/errors';\nimport { isInteractive } from '../utils/interactive';\nimport { learnMore } from '../utils/link';\nimport { openBrowserAsync } from '../utils/open';\nimport { ora } from '../utils/ora';\n\nexport async function registerAsync() {\n if (!isInteractive()) {\n throw new CommandError(\n 'NON_INTERACTIVE',\n `Cannot register an account in CI. Use the EXPO_TOKEN environment variable to authenticate in CI (${learnMore(\n 'https://docs.expo.dev/accounts/programmatic-access/'\n )})`\n );\n } else if (env.EXPO_OFFLINE) {\n throw new CommandError('OFFLINE', `Cannot register an account in offline-mode`);\n }\n\n const registrationUrl = `https://expo.dev/signup`;\n const failedMessage = `Unable to open a web browser. Register an account at: ${registrationUrl}`;\n const spinner = ora(`Opening ${registrationUrl}`).start();\n try {\n const opened = await openBrowserAsync(registrationUrl);\n\n if (opened) {\n spinner.succeed(`Opened ${registrationUrl}`);\n } else {\n spinner.fail(failedMessage);\n }\n } catch (error) {\n spinner.fail(failedMessage);\n throw error;\n }\n}\n"],"names":["registerAsync","isInteractive","CommandError","learnMore","env","EXPO_OFFLINE","registrationUrl","failedMessage","spinner","ora","start","opened","openBrowserAsync","succeed","fail","error"],"mappings":";;;;+BAOsBA
|
|
1
|
+
{"version":3,"sources":["../../../src/register/registerAsync.ts"],"sourcesContent":["import { env } from '../utils/env';\nimport { CommandError } from '../utils/errors';\nimport { isInteractive } from '../utils/interactive';\nimport { learnMore } from '../utils/link';\nimport { openBrowserAsync } from '../utils/open';\nimport { ora } from '../utils/ora';\n\nexport async function registerAsync() {\n if (!isInteractive()) {\n throw new CommandError(\n 'NON_INTERACTIVE',\n `Cannot register an account in CI. Use the EXPO_TOKEN environment variable to authenticate in CI (${learnMore(\n 'https://docs.expo.dev/accounts/programmatic-access/'\n )})`\n );\n } else if (env.EXPO_OFFLINE) {\n throw new CommandError('OFFLINE', `Cannot register an account in offline-mode`);\n }\n\n const registrationUrl = `https://expo.dev/signup`;\n const failedMessage = `Unable to open a web browser. Register an account at: ${registrationUrl}`;\n const spinner = ora(`Opening ${registrationUrl}`).start();\n try {\n const opened = await openBrowserAsync(registrationUrl);\n\n if (opened) {\n spinner.succeed(`Opened ${registrationUrl}`);\n } else {\n spinner.fail(failedMessage);\n }\n } catch (error) {\n spinner.fail(failedMessage);\n throw error;\n }\n}\n"],"names":["registerAsync","isInteractive","CommandError","learnMore","env","EXPO_OFFLINE","registrationUrl","failedMessage","spinner","ora","start","opened","openBrowserAsync","succeed","fail","error"],"mappings":"AAAA;;;;+BAOsBA,eAAa;;aAAbA,aAAa;;qBAPf,cAAc;wBACL,iBAAiB;6BAChB,sBAAsB;sBAC1B,eAAe;sBACR,eAAe;qBAC5B,cAAc;AAE3B,eAAeA,aAAa,GAAG;IACpC,IAAI,CAACC,IAAAA,YAAa,cAAA,GAAE,EAAE;QACpB,MAAM,IAAIC,OAAY,aAAA,CACpB,iBAAiB,EACjB,CAAC,iGAAiG,EAAEC,IAAAA,KAAS,UAAA,EAC3G,qDAAqD,CACtD,CAAC,CAAC,CAAC,CACL,CAAC;IACJ,OAAO,IAAIC,IAAG,IAAA,CAACC,YAAY,EAAE;QAC3B,MAAM,IAAIH,OAAY,aAAA,CAAC,SAAS,EAAE,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,MAAMI,eAAe,GAAG,CAAC,uBAAuB,CAAC,AAAC;IAClD,MAAMC,aAAa,GAAG,CAAC,sDAAsD,EAAED,eAAe,CAAC,CAAC,AAAC;IACjG,MAAME,OAAO,GAAGC,IAAAA,IAAG,IAAA,EAAC,CAAC,QAAQ,EAAEH,eAAe,CAAC,CAAC,CAAC,CAACI,KAAK,EAAE,AAAC;IAC1D,IAAI;QACF,MAAMC,MAAM,GAAG,MAAMC,IAAAA,KAAgB,iBAAA,EAACN,eAAe,CAAC,AAAC;QAEvD,IAAIK,MAAM,EAAE;YACVH,OAAO,CAACK,OAAO,CAAC,CAAC,OAAO,EAAEP,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO;YACLE,OAAO,CAACM,IAAI,CAACP,aAAa,CAAC,CAAC;QAC9B,CAAC;IACH,EAAE,OAAOQ,KAAK,EAAE;QACdP,OAAO,CAACM,IAAI,CAACP,aAAa,CAAC,CAAC;QAC5B,MAAMQ,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -5,28 +5,26 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
Object.defineProperty(exports, "expoRunAndroid", {
|
|
7
7
|
enumerable: true,
|
|
8
|
-
get:
|
|
9
|
-
return expoRunAndroid;
|
|
10
|
-
}
|
|
8
|
+
get: ()=>expoRunAndroid
|
|
11
9
|
});
|
|
12
10
|
function _chalk() {
|
|
13
|
-
const data = /*#__PURE__*/
|
|
11
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
|
|
14
12
|
_chalk = function() {
|
|
15
13
|
return data;
|
|
16
14
|
};
|
|
17
15
|
return data;
|
|
18
16
|
}
|
|
19
17
|
function _path() {
|
|
20
|
-
const data = /*#__PURE__*/
|
|
18
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
|
|
21
19
|
_path = function() {
|
|
22
20
|
return data;
|
|
23
21
|
};
|
|
24
22
|
return data;
|
|
25
23
|
}
|
|
26
|
-
const _log = /*#__PURE__*/
|
|
24
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../log"));
|
|
27
25
|
const _args = require("../../utils/args");
|
|
28
26
|
const _errors = require("../../utils/errors");
|
|
29
|
-
function
|
|
27
|
+
function _interopRequireDefault(obj) {
|
|
30
28
|
return obj && obj.__esModule ? obj : {
|
|
31
29
|
default: obj
|
|
32
30
|
};
|
|
@@ -39,7 +37,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
39
37
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
40
38
|
})(nodeInterop);
|
|
41
39
|
}
|
|
42
|
-
function
|
|
40
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
43
41
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
44
42
|
return obj;
|
|
45
43
|
}
|
|
@@ -52,9 +50,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
52
50
|
if (cache && cache.has(obj)) {
|
|
53
51
|
return cache.get(obj);
|
|
54
52
|
}
|
|
55
|
-
var newObj = {
|
|
56
|
-
__proto__: null
|
|
57
|
-
};
|
|
53
|
+
var newObj = {};
|
|
58
54
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
59
55
|
for(var key in obj){
|
|
60
56
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -75,27 +71,27 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
75
71
|
const expoRunAndroid = async (argv)=>{
|
|
76
72
|
const rawArgsMap = {
|
|
77
73
|
// Types
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
74
|
+
"--help": Boolean,
|
|
75
|
+
"--no-build-cache": Boolean,
|
|
76
|
+
"--no-install": Boolean,
|
|
77
|
+
"--no-bundler": Boolean,
|
|
78
|
+
"--variant": String,
|
|
79
|
+
"--binary": String,
|
|
80
|
+
"--app-id": String,
|
|
85
81
|
// Unstable, temporary fallback to disable active archs only behavior
|
|
86
82
|
// TODO: replace with better fallback option, like free-form passing gradle props
|
|
87
|
-
|
|
88
|
-
|
|
83
|
+
"--all-arch": Boolean,
|
|
84
|
+
"--port": Number,
|
|
89
85
|
// Aliases
|
|
90
|
-
|
|
91
|
-
|
|
86
|
+
"-p": "--port",
|
|
87
|
+
"-h": "--help"
|
|
92
88
|
};
|
|
93
89
|
const args = (0, _args.assertWithOptionsArgs)(rawArgsMap, {
|
|
94
90
|
argv,
|
|
95
91
|
permissive: true
|
|
96
92
|
});
|
|
97
93
|
// '-d' -> '--device': Boolean,
|
|
98
|
-
if (args[
|
|
94
|
+
if (args["--help"]) {
|
|
99
95
|
_log.exit((0, _chalk().default)`
|
|
100
96
|
{bold Description}
|
|
101
97
|
Run the native Android app locally
|
|
@@ -115,24 +111,24 @@ const expoRunAndroid = async (argv)=>{
|
|
|
115
111
|
-h, --help Output usage information
|
|
116
112
|
`, 0);
|
|
117
113
|
}
|
|
118
|
-
const { resolveStringOrBooleanArgsAsync
|
|
114
|
+
const { resolveStringOrBooleanArgsAsync } = await Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("../../utils/resolveArgs.js")));
|
|
119
115
|
const parsed = await resolveStringOrBooleanArgsAsync(argv ?? [], rawArgsMap, {
|
|
120
|
-
|
|
121
|
-
|
|
116
|
+
"--device": Boolean,
|
|
117
|
+
"-d": "--device"
|
|
122
118
|
}).catch(_errors.logCmdError);
|
|
123
|
-
const { runAndroidAsync
|
|
119
|
+
const { runAndroidAsync } = await Promise.resolve().then(()=>/*#__PURE__*/ _interopRequireWildcard(require("./runAndroidAsync.js")));
|
|
124
120
|
return runAndroidAsync(_path().default.resolve(parsed.projectRoot), {
|
|
125
121
|
// Parsed options
|
|
126
|
-
buildCache: !args[
|
|
127
|
-
install: !args[
|
|
128
|
-
bundler: !args[
|
|
129
|
-
port: args[
|
|
130
|
-
variant: args[
|
|
131
|
-
allArch: args[
|
|
132
|
-
binary: args[
|
|
133
|
-
appId: args[
|
|
122
|
+
buildCache: !args["--no-build-cache"],
|
|
123
|
+
install: !args["--no-install"],
|
|
124
|
+
bundler: !args["--no-bundler"],
|
|
125
|
+
port: args["--port"],
|
|
126
|
+
variant: args["--variant"],
|
|
127
|
+
allArch: args["--all-arch"],
|
|
128
|
+
binary: args["--binary"],
|
|
129
|
+
appId: args["--app-id"],
|
|
134
130
|
// Custom parsed args
|
|
135
|
-
device: parsed.args[
|
|
131
|
+
device: parsed.args["--device"]
|
|
136
132
|
}).catch(_errors.logCmdError);
|
|
137
133
|
};
|
|
138
134
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/run/android/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport arg from 'arg';\nimport chalk from 'chalk';\nimport path from 'path';\n\nimport { Command } from '../../../bin/cli';\nimport * as Log from '../../log';\nimport { assertWithOptionsArgs } from '../../utils/args';\nimport { logCmdError } from '../../utils/errors';\n\nexport const expoRunAndroid: Command = async (argv) => {\n const rawArgsMap: arg.Spec = {\n // Types\n '--help': Boolean,\n '--no-build-cache': Boolean,\n '--no-install': Boolean,\n '--no-bundler': Boolean,\n '--variant': String,\n '--binary': String,\n '--app-id': String,\n // Unstable, temporary fallback to disable active archs only behavior\n // TODO: replace with better fallback option, like free-form passing gradle props\n '--all-arch': Boolean,\n\n '--port': Number,\n // Aliases\n '-p': '--port',\n\n '-h': '--help',\n };\n const args = assertWithOptionsArgs(rawArgsMap, {\n argv,\n\n permissive: true,\n });\n\n // '-d' -> '--device': Boolean,\n\n if (args['--help']) {\n Log.exit(\n chalk`\n {bold Description}\n Run the native Android app locally\n\n {bold Usage}\n $ npx expo run:android <dir>\n\n {bold Options} \n --no-build-cache Clear the native build cache\n --no-install Skip installing dependencies\n --no-bundler Skip starting the bundler\n --app-id <appId> Custom Android application ID to launch.\n --variant <name> Build variant or product flavor and build variant. {dim Default: debug}\n --binary <path> Path to existing .apk or .aab to install.\n -d, --device [device] Device name to run the app on\n -p, --port <port> Port to start the dev server on. {dim Default: 8081}\n -h, --help Output usage information\n`,\n 0\n );\n }\n\n const { resolveStringOrBooleanArgsAsync } = await import('../../utils/resolveArgs.js');\n const parsed = await resolveStringOrBooleanArgsAsync(argv ?? [], rawArgsMap, {\n '--device': Boolean,\n '-d': '--device',\n }).catch(logCmdError);\n\n const { runAndroidAsync } = await import('./runAndroidAsync.js');\n\n return runAndroidAsync(path.resolve(parsed.projectRoot), {\n // Parsed options\n buildCache: !args['--no-build-cache'],\n install: !args['--no-install'],\n bundler: !args['--no-bundler'],\n port: args['--port'],\n variant: args['--variant'],\n allArch: args['--all-arch'],\n binary: args['--binary'],\n appId: args['--app-id'],\n // Custom parsed args\n device: parsed.args['--device'],\n }).catch(logCmdError);\n};\n"],"names":["expoRunAndroid","argv","rawArgsMap","Boolean","String","Number","args","assertWithOptionsArgs","permissive","Log","exit","chalk","resolveStringOrBooleanArgsAsync","parsed","catch","logCmdError","runAndroidAsync","path","resolve","projectRoot","buildCache","install","bundler","port","variant","allArch","binary","appId","device"],"mappings":";;;;;+BAUaA;;;
|
|
1
|
+
{"version":3,"sources":["../../../../src/run/android/index.ts"],"sourcesContent":["#!/usr/bin/env node\nimport arg from 'arg';\nimport chalk from 'chalk';\nimport path from 'path';\n\nimport { Command } from '../../../bin/cli';\nimport * as Log from '../../log';\nimport { assertWithOptionsArgs } from '../../utils/args';\nimport { logCmdError } from '../../utils/errors';\n\nexport const expoRunAndroid: Command = async (argv) => {\n const rawArgsMap: arg.Spec = {\n // Types\n '--help': Boolean,\n '--no-build-cache': Boolean,\n '--no-install': Boolean,\n '--no-bundler': Boolean,\n '--variant': String,\n '--binary': String,\n '--app-id': String,\n // Unstable, temporary fallback to disable active archs only behavior\n // TODO: replace with better fallback option, like free-form passing gradle props\n '--all-arch': Boolean,\n\n '--port': Number,\n // Aliases\n '-p': '--port',\n\n '-h': '--help',\n };\n const args = assertWithOptionsArgs(rawArgsMap, {\n argv,\n\n permissive: true,\n });\n\n // '-d' -> '--device': Boolean,\n\n if (args['--help']) {\n Log.exit(\n chalk`\n {bold Description}\n Run the native Android app locally\n\n {bold Usage}\n $ npx expo run:android <dir>\n\n {bold Options} \n --no-build-cache Clear the native build cache\n --no-install Skip installing dependencies\n --no-bundler Skip starting the bundler\n --app-id <appId> Custom Android application ID to launch.\n --variant <name> Build variant or product flavor and build variant. {dim Default: debug}\n --binary <path> Path to existing .apk or .aab to install.\n -d, --device [device] Device name to run the app on\n -p, --port <port> Port to start the dev server on. {dim Default: 8081}\n -h, --help Output usage information\n`,\n 0\n );\n }\n\n const { resolveStringOrBooleanArgsAsync } = await import('../../utils/resolveArgs.js');\n const parsed = await resolveStringOrBooleanArgsAsync(argv ?? [], rawArgsMap, {\n '--device': Boolean,\n '-d': '--device',\n }).catch(logCmdError);\n\n const { runAndroidAsync } = await import('./runAndroidAsync.js');\n\n return runAndroidAsync(path.resolve(parsed.projectRoot), {\n // Parsed options\n buildCache: !args['--no-build-cache'],\n install: !args['--no-install'],\n bundler: !args['--no-bundler'],\n port: args['--port'],\n variant: args['--variant'],\n allArch: args['--all-arch'],\n binary: args['--binary'],\n appId: args['--app-id'],\n // Custom parsed args\n device: parsed.args['--device'],\n }).catch(logCmdError);\n};\n"],"names":["expoRunAndroid","argv","rawArgsMap","Boolean","String","Number","args","assertWithOptionsArgs","permissive","Log","exit","chalk","resolveStringOrBooleanArgsAsync","parsed","catch","logCmdError","runAndroidAsync","path","resolve","projectRoot","buildCache","install","bundler","port","variant","allArch","binary","appId","device"],"mappings":"AAAA;;;;;+BAUaA,gBAAc;;aAAdA,cAAc;;;8DART,OAAO;;;;;;;8DACR,MAAM;;;;;;2DAGF,WAAW;sBACM,kBAAkB;wBAC5B,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzC,MAAMA,cAAc,GAAY,OAAOC,IAAI,GAAK;IACrD,MAAMC,UAAU,GAAa;QAC3B,QAAQ;QACR,QAAQ,EAAEC,OAAO;QACjB,kBAAkB,EAAEA,OAAO;QAC3B,cAAc,EAAEA,OAAO;QACvB,cAAc,EAAEA,OAAO;QACvB,WAAW,EAAEC,MAAM;QACnB,UAAU,EAAEA,MAAM;QAClB,UAAU,EAAEA,MAAM;QAClB,qEAAqE;QACrE,iFAAiF;QACjF,YAAY,EAAED,OAAO;QAErB,QAAQ,EAAEE,MAAM;QAChB,UAAU;QACV,IAAI,EAAE,QAAQ;QAEd,IAAI,EAAE,QAAQ;KACf,AAAC;IACF,MAAMC,IAAI,GAAGC,IAAAA,KAAqB,sBAAA,EAACL,UAAU,EAAE;QAC7CD,IAAI;QAEJO,UAAU,EAAE,IAAI;KACjB,CAAC,AAAC;IAEH,+BAA+B;IAE/B,IAAIF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAClBG,IAAG,CAACC,IAAI,CACNC,IAAAA,MAAK,EAAA,QAAA,CAAA,CAAC;;;;;;;;;;;;;;;;;AAiBZ,CAAC,EACK,CAAC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,EAAEC,+BAA+B,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,4BAA4B,GAAC,AAAC;IACvF,MAAMC,MAAM,GAAG,MAAMD,+BAA+B,CAACX,IAAI,IAAI,EAAE,EAAEC,UAAU,EAAE;QAC3E,UAAU,EAAEC,OAAO;QACnB,IAAI,EAAE,UAAU;KACjB,CAAC,CAACW,KAAK,CAACC,OAAW,YAAA,CAAC,AAAC;IAEtB,MAAM,EAAEC,eAAe,CAAA,EAAE,GAAG,MAAM,iEAAA,OAAM,CAAC,sBAAsB,GAAC,AAAC;IAEjE,OAAOA,eAAe,CAACC,KAAI,EAAA,QAAA,CAACC,OAAO,CAACL,MAAM,CAACM,WAAW,CAAC,EAAE;QACvD,iBAAiB;QACjBC,UAAU,EAAE,CAACd,IAAI,CAAC,kBAAkB,CAAC;QACrCe,OAAO,EAAE,CAACf,IAAI,CAAC,cAAc,CAAC;QAC9BgB,OAAO,EAAE,CAAChB,IAAI,CAAC,cAAc,CAAC;QAC9BiB,IAAI,EAAEjB,IAAI,CAAC,QAAQ,CAAC;QACpBkB,OAAO,EAAElB,IAAI,CAAC,WAAW,CAAC;QAC1BmB,OAAO,EAAEnB,IAAI,CAAC,YAAY,CAAC;QAC3BoB,MAAM,EAAEpB,IAAI,CAAC,UAAU,CAAC;QACxBqB,KAAK,EAAErB,IAAI,CAAC,UAAU,CAAC;QACvB,qBAAqB;QACrBsB,MAAM,EAAEf,MAAM,CAACP,IAAI,CAAC,UAAU,CAAC;KAChC,CAAC,CAACQ,KAAK,CAACC,OAAW,YAAA,CAAC,CAAC;AACxB,CAAC,AAAC"}
|
|
@@ -4,25 +4,23 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "resolveDeviceAsync", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get:
|
|
8
|
-
return resolveDeviceAsync;
|
|
9
|
-
}
|
|
7
|
+
get: ()=>resolveDeviceAsync
|
|
10
8
|
});
|
|
11
|
-
const
|
|
9
|
+
const _androidDeviceManager = require("../../start/platforms/android/AndroidDeviceManager");
|
|
12
10
|
const _hints = require("../hints");
|
|
13
|
-
const debug = require(
|
|
11
|
+
const debug = require("debug")("expo:android:resolveDevice");
|
|
14
12
|
async function resolveDeviceAsync(device) {
|
|
15
13
|
if (!device) {
|
|
16
|
-
const manager = await
|
|
14
|
+
const manager = await _androidDeviceManager.AndroidDeviceManager.resolveAsync();
|
|
17
15
|
debug(`Resolved default device (name: ${manager.device.name}, pid: ${manager.device.pid})`);
|
|
18
16
|
return manager;
|
|
19
17
|
}
|
|
20
18
|
debug(`Resolving device from argument: ${device}`);
|
|
21
|
-
const
|
|
19
|
+
const manager1 = device === true ? await _androidDeviceManager.AndroidDeviceManager.resolveAsync({
|
|
22
20
|
shouldPrompt: true
|
|
23
|
-
}) : await
|
|
24
|
-
(0, _hints.logDeviceArgument)(
|
|
25
|
-
return
|
|
21
|
+
}) : await _androidDeviceManager.AndroidDeviceManager.resolveFromNameAsync(device);
|
|
22
|
+
(0, _hints.logDeviceArgument)(manager1.device.name);
|
|
23
|
+
return manager1;
|
|
26
24
|
}
|
|
27
25
|
|
|
28
26
|
//# sourceMappingURL=resolveDevice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/run/android/resolveDevice.ts"],"sourcesContent":["import { AndroidDeviceManager } from '../../start/platforms/android/AndroidDeviceManager';\nimport { logDeviceArgument } from '../hints';\n\nconst debug = require('debug')('expo:android:resolveDevice');\n\n/** Given a `device` argument from the CLI, parse and prompt our way to a usable device for building. */\nexport async function resolveDeviceAsync(device?: string | boolean) {\n if (!device) {\n const manager = await AndroidDeviceManager.resolveAsync();\n debug(`Resolved default device (name: ${manager.device.name}, pid: ${manager.device.pid})`);\n return manager;\n }\n\n debug(`Resolving device from argument: ${device}`);\n const manager =\n device === true\n ? // `--device` (no props after)\n await AndroidDeviceManager.resolveAsync({ shouldPrompt: true })\n : // `--device <name>`\n await AndroidDeviceManager.resolveFromNameAsync(device);\n logDeviceArgument(manager.device.name);\n return manager;\n}\n"],"names":["resolveDeviceAsync","debug","require","device","manager","AndroidDeviceManager","resolveAsync","name","pid","shouldPrompt","resolveFromNameAsync","logDeviceArgument"],"mappings":";;;;+BAMsBA
|
|
1
|
+
{"version":3,"sources":["../../../../src/run/android/resolveDevice.ts"],"sourcesContent":["import { AndroidDeviceManager } from '../../start/platforms/android/AndroidDeviceManager';\nimport { logDeviceArgument } from '../hints';\n\nconst debug = require('debug')('expo:android:resolveDevice');\n\n/** Given a `device` argument from the CLI, parse and prompt our way to a usable device for building. */\nexport async function resolveDeviceAsync(device?: string | boolean) {\n if (!device) {\n const manager = await AndroidDeviceManager.resolveAsync();\n debug(`Resolved default device (name: ${manager.device.name}, pid: ${manager.device.pid})`);\n return manager;\n }\n\n debug(`Resolving device from argument: ${device}`);\n const manager =\n device === true\n ? // `--device` (no props after)\n await AndroidDeviceManager.resolveAsync({ shouldPrompt: true })\n : // `--device <name>`\n await AndroidDeviceManager.resolveFromNameAsync(device);\n logDeviceArgument(manager.device.name);\n return manager;\n}\n"],"names":["resolveDeviceAsync","debug","require","device","manager","AndroidDeviceManager","resolveAsync","name","pid","shouldPrompt","resolveFromNameAsync","logDeviceArgument"],"mappings":"AAAA;;;;+BAMsBA,oBAAkB;;aAAlBA,kBAAkB;;sCANH,oDAAoD;uBACvD,UAAU;AAE5C,MAAMC,KAAK,GAAGC,OAAO,CAAC,OAAO,CAAC,CAAC,4BAA4B,CAAC,AAAC;AAGtD,eAAeF,kBAAkB,CAACG,MAAyB,EAAE;IAClE,IAAI,CAACA,MAAM,EAAE;QACX,MAAMC,OAAO,GAAG,MAAMC,qBAAoB,qBAAA,CAACC,YAAY,EAAE,AAAC;QAC1DL,KAAK,CAAC,CAAC,+BAA+B,EAAEG,OAAO,CAACD,MAAM,CAACI,IAAI,CAAC,OAAO,EAAEH,OAAO,CAACD,MAAM,CAACK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,OAAOJ,OAAO,CAAC;IACjB,CAAC;IAEDH,KAAK,CAAC,CAAC,gCAAgC,EAAEE,MAAM,CAAC,CAAC,CAAC,CAAC;IACnD,MAAMC,QAAO,GACXD,MAAM,KAAK,IAAI,GAEX,MAAME,qBAAoB,qBAAA,CAACC,YAAY,CAAC;QAAEG,YAAY,EAAE,IAAI;KAAE,CAAC,GAE/D,MAAMJ,qBAAoB,qBAAA,CAACK,oBAAoB,CAACP,MAAM,CAAC,AAAC;IAC9DQ,IAAAA,MAAiB,kBAAA,EAACP,QAAO,CAACD,MAAM,CAACI,IAAI,CAAC,CAAC;IACvC,OAAOH,QAAO,CAAC;AACjB,CAAC"}
|
|
@@ -4,12 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "resolveGradlePropsAsync", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get:
|
|
8
|
-
return resolveGradlePropsAsync;
|
|
9
|
-
}
|
|
7
|
+
get: ()=>resolveGradlePropsAsync
|
|
10
8
|
});
|
|
11
9
|
function _path() {
|
|
12
|
-
const data = /*#__PURE__*/
|
|
10
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
|
|
13
11
|
_path = function() {
|
|
14
12
|
return data;
|
|
15
13
|
};
|
|
@@ -17,35 +15,35 @@ function _path() {
|
|
|
17
15
|
}
|
|
18
16
|
const _adb = require("../../start/platforms/android/adb");
|
|
19
17
|
const _errors = require("../../utils/errors");
|
|
20
|
-
function
|
|
18
|
+
function _interopRequireDefault(obj) {
|
|
21
19
|
return obj && obj.__esModule ? obj : {
|
|
22
20
|
default: obj
|
|
23
21
|
};
|
|
24
22
|
}
|
|
25
23
|
// Supported ABIs for Android. see https://developer.android.com/ndk/guides/abis
|
|
26
24
|
const VALID_ARCHITECTURES = [
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
"armeabi-v7a",
|
|
26
|
+
"arm64-v8a",
|
|
27
|
+
"x86",
|
|
28
|
+
"x86_64"
|
|
31
29
|
];
|
|
32
30
|
function assertVariant(variant) {
|
|
33
|
-
if (variant && typeof variant !==
|
|
34
|
-
throw new _errors.CommandError(
|
|
31
|
+
if (variant && typeof variant !== "string") {
|
|
32
|
+
throw new _errors.CommandError("BAD_ARGS", "--variant must be a string");
|
|
35
33
|
}
|
|
36
|
-
return variant ??
|
|
34
|
+
return variant ?? "debug";
|
|
37
35
|
}
|
|
38
36
|
async function resolveGradlePropsAsync(projectRoot, options, device) {
|
|
39
37
|
const variant = assertVariant(options.variant);
|
|
40
38
|
// NOTE(EvanBacon): Why would this be different? Can we get the different name?
|
|
41
|
-
const appName =
|
|
42
|
-
const apkDirectory = _path().default.join(projectRoot,
|
|
39
|
+
const appName = "app";
|
|
40
|
+
const apkDirectory = _path().default.join(projectRoot, "android", appName, "build", "outputs", "apk");
|
|
43
41
|
// buildDeveloperTrust -> buildtype: trust, flavors: build, developer
|
|
44
42
|
// developmentDebug -> buildType: debug, flavors: development
|
|
45
43
|
// productionRelease -> buildType: release, flavors: production
|
|
46
44
|
// This won't work for non-standard flavor names like "myFlavor" would be treated as "my", "flavor".
|
|
47
45
|
const flavors = variant.split(/(?=[A-Z])/).map((v)=>v.toLowerCase());
|
|
48
|
-
const buildType = flavors.pop() ??
|
|
46
|
+
const buildType = flavors.pop() ?? "debug";
|
|
49
47
|
const apkVariantDirectory = _path().default.join(apkDirectory, ...flavors, buildType);
|
|
50
48
|
const architectures = await getConnectedDeviceABIS(buildType, device, options.allArch);
|
|
51
49
|
return {
|
|
@@ -58,12 +56,12 @@ async function resolveGradlePropsAsync(projectRoot, options, device) {
|
|
|
58
56
|
}
|
|
59
57
|
async function getConnectedDeviceABIS(buildType, device, allArch) {
|
|
60
58
|
// Follow the same behavior as iOS, only enable this for debug builds
|
|
61
|
-
if (allArch || buildType !==
|
|
62
|
-
return
|
|
59
|
+
if (allArch || buildType !== "debug") {
|
|
60
|
+
return "";
|
|
63
61
|
}
|
|
64
62
|
const abis = await (0, _adb.getDeviceABIsAsync)(device);
|
|
65
63
|
const validAbis = abis.filter((abi)=>VALID_ARCHITECTURES.includes(abi));
|
|
66
|
-
return validAbis.filter((abi, i, arr)=>arr.indexOf(abi) === i).join(
|
|
64
|
+
return validAbis.filter((abi, i, arr)=>arr.indexOf(abi) === i).join(",");
|
|
67
65
|
}
|
|
68
66
|
|
|
69
67
|
//# sourceMappingURL=resolveGradlePropsAsync.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/run/android/resolveGradlePropsAsync.ts"],"sourcesContent":["import path from 'path';\n\nimport { Device, getDeviceABIsAsync } from '../../start/platforms/android/adb';\nimport { CommandError } from '../../utils/errors';\n\n// Supported ABIs for Android. see https://developer.android.com/ndk/guides/abis\nconst VALID_ARCHITECTURES = ['armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'];\n\nexport type GradleProps = {\n /** Directory for the APK based on the `variant`. */\n apkVariantDirectory: string;\n /** Name of the app, used in the `apkVariantDirectory`. */\n appName: string;\n /** Last section of the provided `variant`, indicates the starting directory of the file name for the output APK. E.g. \"debug\" or \"release\" */\n buildType: string;\n /** Used to assemble the APK, also included in the output APK filename. */\n flavors?: string[];\n /** Architectures to build for. */\n architectures?: string;\n};\n\nfunction assertVariant(variant?: string) {\n if (variant && typeof variant !== 'string') {\n throw new CommandError('BAD_ARGS', '--variant must be a string');\n }\n return variant ?? 'debug';\n}\n\nexport async function resolveGradlePropsAsync(\n projectRoot: string,\n options: { variant?: string; allArch?: boolean },\n device: Device\n): Promise<GradleProps> {\n const variant = assertVariant(options.variant);\n // NOTE(EvanBacon): Why would this be different? Can we get the different name?\n const appName = 'app';\n\n const apkDirectory = path.join(projectRoot, 'android', appName, 'build', 'outputs', 'apk');\n\n // buildDeveloperTrust -> buildtype: trust, flavors: build, developer\n // developmentDebug -> buildType: debug, flavors: development\n // productionRelease -> buildType: release, flavors: production\n // This won't work for non-standard flavor names like \"myFlavor\" would be treated as \"my\", \"flavor\".\n const flavors = variant.split(/(?=[A-Z])/).map((v) => v.toLowerCase());\n const buildType = flavors.pop() ?? 'debug';\n\n const apkVariantDirectory = path.join(apkDirectory, ...flavors, buildType);\n const architectures = await getConnectedDeviceABIS(buildType, device, options.allArch);\n\n return {\n appName,\n buildType,\n flavors,\n apkVariantDirectory,\n architectures,\n };\n}\n\nasync function getConnectedDeviceABIS(\n buildType: string,\n device: Device,\n allArch?: boolean\n): Promise<string> {\n // Follow the same behavior as iOS, only enable this for debug builds\n if (allArch || buildType !== 'debug') {\n return '';\n }\n\n const abis = await getDeviceABIsAsync(device);\n\n const validAbis = abis.filter((abi) => VALID_ARCHITECTURES.includes(abi));\n return validAbis.filter((abi, i, arr) => arr.indexOf(abi) === i).join(',');\n}\n"],"names":["resolveGradlePropsAsync","VALID_ARCHITECTURES","assertVariant","variant","CommandError","projectRoot","options","device","appName","apkDirectory","path","join","flavors","split","map","v","toLowerCase","buildType","pop","apkVariantDirectory","architectures","getConnectedDeviceABIS","allArch","abis","getDeviceABIsAsync","validAbis","filter","abi","includes","i","arr","indexOf"],"mappings":";;;;+BA4BsBA;;;
|
|
1
|
+
{"version":3,"sources":["../../../../src/run/android/resolveGradlePropsAsync.ts"],"sourcesContent":["import path from 'path';\n\nimport { Device, getDeviceABIsAsync } from '../../start/platforms/android/adb';\nimport { CommandError } from '../../utils/errors';\n\n// Supported ABIs for Android. see https://developer.android.com/ndk/guides/abis\nconst VALID_ARCHITECTURES = ['armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'];\n\nexport type GradleProps = {\n /** Directory for the APK based on the `variant`. */\n apkVariantDirectory: string;\n /** Name of the app, used in the `apkVariantDirectory`. */\n appName: string;\n /** Last section of the provided `variant`, indicates the starting directory of the file name for the output APK. E.g. \"debug\" or \"release\" */\n buildType: string;\n /** Used to assemble the APK, also included in the output APK filename. */\n flavors?: string[];\n /** Architectures to build for. */\n architectures?: string;\n};\n\nfunction assertVariant(variant?: string) {\n if (variant && typeof variant !== 'string') {\n throw new CommandError('BAD_ARGS', '--variant must be a string');\n }\n return variant ?? 'debug';\n}\n\nexport async function resolveGradlePropsAsync(\n projectRoot: string,\n options: { variant?: string; allArch?: boolean },\n device: Device\n): Promise<GradleProps> {\n const variant = assertVariant(options.variant);\n // NOTE(EvanBacon): Why would this be different? Can we get the different name?\n const appName = 'app';\n\n const apkDirectory = path.join(projectRoot, 'android', appName, 'build', 'outputs', 'apk');\n\n // buildDeveloperTrust -> buildtype: trust, flavors: build, developer\n // developmentDebug -> buildType: debug, flavors: development\n // productionRelease -> buildType: release, flavors: production\n // This won't work for non-standard flavor names like \"myFlavor\" would be treated as \"my\", \"flavor\".\n const flavors = variant.split(/(?=[A-Z])/).map((v) => v.toLowerCase());\n const buildType = flavors.pop() ?? 'debug';\n\n const apkVariantDirectory = path.join(apkDirectory, ...flavors, buildType);\n const architectures = await getConnectedDeviceABIS(buildType, device, options.allArch);\n\n return {\n appName,\n buildType,\n flavors,\n apkVariantDirectory,\n architectures,\n };\n}\n\nasync function getConnectedDeviceABIS(\n buildType: string,\n device: Device,\n allArch?: boolean\n): Promise<string> {\n // Follow the same behavior as iOS, only enable this for debug builds\n if (allArch || buildType !== 'debug') {\n return '';\n }\n\n const abis = await getDeviceABIsAsync(device);\n\n const validAbis = abis.filter((abi) => VALID_ARCHITECTURES.includes(abi));\n return validAbis.filter((abi, i, arr) => arr.indexOf(abi) === i).join(',');\n}\n"],"names":["resolveGradlePropsAsync","VALID_ARCHITECTURES","assertVariant","variant","CommandError","projectRoot","options","device","appName","apkDirectory","path","join","flavors","split","map","v","toLowerCase","buildType","pop","apkVariantDirectory","architectures","getConnectedDeviceABIS","allArch","abis","getDeviceABIsAsync","validAbis","filter","abi","includes","i","arr","indexOf"],"mappings":"AAAA;;;;+BA4BsBA,yBAAuB;;aAAvBA,uBAAuB;;;8DA5B5B,MAAM;;;;;;qBAEoB,mCAAmC;wBACjD,oBAAoB;;;;;;AAEjD,gFAAgF;AAChF,MAAMC,mBAAmB,GAAG;IAAC,aAAa;IAAE,WAAW;IAAE,KAAK;IAAE,QAAQ;CAAC,AAAC;AAe1E,SAASC,aAAa,CAACC,OAAgB,EAAE;IACvC,IAAIA,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;QAC1C,MAAM,IAAIC,OAAY,aAAA,CAAC,UAAU,EAAE,4BAA4B,CAAC,CAAC;IACnE,CAAC;IACD,OAAOD,OAAO,IAAI,OAAO,CAAC;AAC5B,CAAC;AAEM,eAAeH,uBAAuB,CAC3CK,WAAmB,EACnBC,OAAgD,EAChDC,MAAc,EACQ;IACtB,MAAMJ,OAAO,GAAGD,aAAa,CAACI,OAAO,CAACH,OAAO,CAAC,AAAC;IAC/C,+EAA+E;IAC/E,MAAMK,OAAO,GAAG,KAAK,AAAC;IAEtB,MAAMC,YAAY,GAAGC,KAAI,EAAA,QAAA,CAACC,IAAI,CAACN,WAAW,EAAE,SAAS,EAAEG,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,AAAC;IAE3F,qEAAqE;IACrE,6DAA6D;IAC7D,+DAA+D;IAC/D,oGAAoG;IACpG,MAAMI,OAAO,GAAGT,OAAO,CAACU,KAAK,aAAa,CAACC,GAAG,CAAC,CAACC,CAAC,GAAKA,CAAC,CAACC,WAAW,EAAE,CAAC,AAAC;IACvE,MAAMC,SAAS,GAAGL,OAAO,CAACM,GAAG,EAAE,IAAI,OAAO,AAAC;IAE3C,MAAMC,mBAAmB,GAAGT,KAAI,EAAA,QAAA,CAACC,IAAI,CAACF,YAAY,KAAKG,OAAO,EAAEK,SAAS,CAAC,AAAC;IAC3E,MAAMG,aAAa,GAAG,MAAMC,sBAAsB,CAACJ,SAAS,EAAEV,MAAM,EAAED,OAAO,CAACgB,OAAO,CAAC,AAAC;IAEvF,OAAO;QACLd,OAAO;QACPS,SAAS;QACTL,OAAO;QACPO,mBAAmB;QACnBC,aAAa;KACd,CAAC;AACJ,CAAC;AAED,eAAeC,sBAAsB,CACnCJ,SAAiB,EACjBV,MAAc,EACde,OAAiB,EACA;IACjB,qEAAqE;IACrE,IAAIA,OAAO,IAAIL,SAAS,KAAK,OAAO,EAAE;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAMM,IAAI,GAAG,MAAMC,IAAAA,IAAkB,mBAAA,EAACjB,MAAM,CAAC,AAAC;IAE9C,MAAMkB,SAAS,GAAGF,IAAI,CAACG,MAAM,CAAC,CAACC,GAAG,GAAK1B,mBAAmB,CAAC2B,QAAQ,CAACD,GAAG,CAAC,CAAC,AAAC;IAC1E,OAAOF,SAAS,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEE,CAAC,EAAEC,GAAG,GAAKA,GAAG,CAACC,OAAO,CAACJ,GAAG,CAAC,KAAKE,CAAC,CAAC,CAAClB,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7E,CAAC"}
|