@expo/cli 1.0.0-canary-20250320-7a205d3 → 1.0.0-canary-20250402-161f57b
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bin/cli +93 -91
- package/build/bin/cli.map +1 -1
- package/build/metro-require/require.js +53 -52
- package/build/src/api/endpoint.js +6 -2
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoGoIntermediateCertificate.js +5 -3
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
- package/build/src/api/getExpoSchema.js +16 -12
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/getNativeModuleVersions.js +6 -4
- package/build/src/api/getNativeModuleVersions.js.map +1 -1
- package/build/src/api/getProjectDevelopmentCertificate.js +5 -3
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
- package/build/src/api/getVersions.js +7 -5
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/graphql/client.js +32 -26
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +6 -4
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +5 -3
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +3 -1
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemResponseCache.js +36 -32
- package/build/src/api/rest/cache/FileSystemResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/ResponseCache.js +20 -12
- package/build/src/api/rest/cache/ResponseCache.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +13 -11
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +55 -37
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/client.types.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +5 -3
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js +5 -3
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js +11 -7
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +5 -3
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithUserAgent.js +8 -6
- package/build/src/api/rest/wrapFetchWithUserAgent.js.map +1 -1
- package/build/src/api/settings.js +7 -5
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +23 -17
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +53 -31
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +27 -21
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +30 -26
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +35 -29
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +44 -30
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +29 -23
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +25 -21
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +8 -6
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +20 -16
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +14 -12
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/resolveOptions.js +4 -2
- package/build/src/customize/resolveOptions.js.map +1 -1
- package/build/src/customize/templates.js +58 -54
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +11 -7
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +11 -9
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEager.js +8 -6
- package/build/src/export/embed/exportEager.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +72 -62
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/exportServer.js +57 -55
- package/build/src/export/embed/exportServer.js.map +1 -1
- package/build/src/export/embed/index.js +44 -40
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +44 -36
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +39 -27
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +68 -64
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +34 -26
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +13 -9
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportDomComponents.js +53 -45
- package/build/src/export/exportDomComponents.js.map +1 -1
- package/build/src/export/exportHermes.js +75 -53
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +73 -62
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +33 -27
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +7 -5
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +11 -9
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +10 -6
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +32 -28
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +36 -30
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +64 -34
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +10 -6
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +28 -24
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +50 -46
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +13 -11
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +19 -15
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/web/resolveOptions.js +5 -3
- package/build/src/export/web/resolveOptions.js.map +1 -1
- package/build/src/export/writeContents.js +4 -2
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/graphql/generated.js +705 -479
- package/build/src/graphql/generated.js.map +1 -1
- package/build/src/install/applyPlugins.js +11 -7
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +26 -22
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +16 -12
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +18 -16
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +32 -26
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +22 -18
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js +21 -19
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +18 -14
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/install/utils/checkPackagesCompatibility.js +14 -12
- package/build/src/install/utils/checkPackagesCompatibility.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js +50 -44
- package/build/src/lint/ESlintPrerequisite.js.map +1 -1
- package/build/src/lint/index.js +12 -8
- package/build/src/lint/index.js.map +1 -1
- package/build/src/lint/lintAsync.js +10 -8
- package/build/src/lint/lintAsync.js.map +1 -1
- package/build/src/log.js +36 -16
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +24 -20
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +11 -7
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +38 -26
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +18 -14
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +17 -13
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +6 -4
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +36 -32
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +29 -25
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +43 -37
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +70 -53
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +36 -32
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +19 -13
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +53 -39
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +12 -8
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +11 -7
- package/build/src/register/index.js.map +1 -1
- package/build/src/register/registerAsync.js +5 -3
- package/build/src/register/registerAsync.js.map +1 -1
- package/build/src/run/android/index.js +36 -32
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveDevice.js +10 -8
- package/build/src/run/android/resolveDevice.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +18 -16
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +17 -15
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +12 -10
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +4 -2
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +23 -21
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +7 -5
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +13 -7
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +27 -23
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +80 -60
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.types.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +69 -63
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +29 -26
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +28 -25
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +29 -26
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +22 -21
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +32 -29
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +28 -24
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +7 -4
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +28 -27
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +23 -17
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +146 -132
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +29 -21
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +29 -21
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +34 -22
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +27 -17
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +53 -39
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +13 -9
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +27 -19
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +9 -5
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +14 -12
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +27 -21
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +40 -36
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +23 -17
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/appleDestinations.js +38 -36
- package/build/src/run/ios/options/appleDestinations.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +20 -16
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +30 -24
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +31 -23
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +7 -5
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +7 -5
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +48 -44
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/ios/validateExternalBinary.js +24 -22
- package/build/src/run/ios/validateExternalBinary.js.map +1 -1
- package/build/src/run/resolveBundlerProps.js +4 -2
- package/build/src/run/resolveBundlerProps.js.map +1 -1
- package/build/src/run/startBundler.js +16 -12
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/serve/index.js +20 -16
- package/build/src/serve/index.js.map +1 -1
- package/build/src/serve/serveAsync.js +36 -32
- package/build/src/serve/serveAsync.js.map +1 -1
- package/build/src/start/detectDevClient.js +13 -9
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +12 -7
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/SecurityBinPrerequisite.js +13 -11
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +23 -19
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +23 -19
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +51 -45
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +18 -16
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +23 -19
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +31 -25
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +25 -17
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +40 -32
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +32 -26
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +41 -31
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +34 -29
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -8
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +32 -28
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +23 -17
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +33 -27
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +46 -42
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js +18 -14
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +94 -80
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +44 -40
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +65 -61
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +6 -4
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +10 -6
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +25 -20
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +17 -15
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +39 -35
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +18 -16
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +24 -20
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidPlatformManager.js +17 -17
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidSdk.js +11 -9
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +26 -22
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +121 -83
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +20 -12
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +36 -26
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js +7 -5
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +36 -28
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +19 -15
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +21 -19
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +37 -31
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/ApplePlatformManager.js +12 -12
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
- package/build/src/start/platforms/ios/assertSystemRequirements.js +9 -7
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/devicectl.js +88 -74
- package/build/src/start/platforms/ios/devicectl.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +22 -18
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +29 -19
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +14 -10
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +102 -74
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +57 -52
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +22 -18
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +19 -9
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +15 -11
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/project/settings.js +4 -2
- package/build/src/start/project/settings.js.map +1 -1
- package/build/src/start/resolveOptions.js +48 -40
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +55 -51
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/AsyncWsTunnel.js +37 -33
- package/build/src/start/server/AsyncWsTunnel.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +81 -79
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +42 -38
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +18 -14
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +18 -14
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +16 -10
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +36 -33
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +30 -22
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js +9 -5
- package/build/src/start/server/metro/DevToolsPluginWebsocketEndpoint.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +293 -280
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +63 -56
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +39 -33
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -1
- package/build/src/start/server/metro/createExpoFallbackResolver.js +13 -11
- package/build/src/start/server/metro/createExpoFallbackResolver.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +47 -41
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +31 -27
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerComponentsMiddleware.js +110 -98
- package/build/src/start/server/metro/createServerComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +34 -30
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js +13 -11
- package/build/src/start/server/metro/debugging/AtlasPrerequisite.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +3 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/attachAtlas.js +26 -22
- package/build/src/start/server/metro/debugging/attachAtlas.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +19 -17
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +25 -31
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/getDebuggerType.js +6 -4
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +14 -8
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -5
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +8 -6
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -5
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js +14 -12
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeEvaluate.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +14 -10
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js +6 -4
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
- package/build/src/start/server/metro/debugging/types.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createEventSocket.js +18 -16
- package/build/src/start/server/metro/dev-server/createEventSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMessageSocket.js +23 -21
- package/build/src/start/server/metro/dev-server/createMessageSocket.js.map +1 -1
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js +23 -21
- package/build/src/start/server/metro/dev-server/createMetroMiddleware.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js +4 -2
- package/build/src/start/server/metro/dev-server/utils/createSocketBroadcaster.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js +4 -2
- package/build/src/start/server/metro/dev-server/utils/createSocketMap.js.map +1 -1
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js +8 -4
- package/build/src/start/server/metro/dev-server/utils/socketMessages.js.map +1 -1
- package/build/src/start/server/metro/externals.js +33 -25
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +28 -12
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +11 -9
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +24 -20
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +87 -81
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxLog.js +40 -36
- package/build/src/start/server/metro/log-box/LogBoxLog.js.map +1 -1
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js +20 -14
- package/build/src/start/server/metro/log-box/LogBoxSymbolication.js.map +1 -1
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js +10 -6
- package/build/src/start/server/metro/log-box/formatProjectFilePath.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +88 -78
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +8 -4
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroPrivateServer.js +9 -7
- package/build/src/start/server/metro/metroPrivateServer.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +10 -8
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +24 -22
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +48 -32
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +24 -22
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +24 -22
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/symbolicate.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +35 -29
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +150 -140
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +49 -39
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +8 -6
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +17 -15
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +32 -31
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +22 -19
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DomComponentsMiddleware.js +33 -27
- package/build/src/start/server/middleware/DomComponentsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +61 -57
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +15 -9
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js +16 -15
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +4 -2
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +34 -31
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +64 -56
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +23 -19
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +20 -19
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -9
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js +17 -11
- package/build/src/start/server/middleware/createBuiltinAPIRequestHandler.js.map +1 -1
- package/build/src/start/server/middleware/inspector/CdpClient.js +12 -10
- package/build/src/start/server/middleware/inspector/CdpClient.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +35 -27
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +21 -19
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +6 -2
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +120 -96
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +7 -3
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +26 -18
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +23 -15
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js +11 -9
- package/build/src/start/server/middleware/resolveRuntimeVersionWithExpoUpdatesAsync.js.map +1 -1
- package/build/src/start/server/middleware/server.types.js.map +1 -1
- package/build/src/start/server/openPlatforms.js +10 -8
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +13 -11
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +58 -50
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +11 -7
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +72 -50
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +21 -19
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +36 -28
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +28 -24
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +52 -46
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +15 -11
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js +28 -26
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +18 -12
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +18 -12
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +31 -27
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +20 -17
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/ansi.js +7 -5
- package/build/src/utils/ansi.js.map +1 -1
- package/build/src/utils/args.js +24 -14
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +18 -6
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/cocoapods.js +54 -46
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +79 -69
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +16 -12
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/createTempPath.js +12 -8
- package/build/src/utils/createTempPath.js.map +1 -1
- package/build/src/utils/delay.js +12 -6
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +40 -22
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +10 -8
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +27 -23
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +41 -35
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +63 -59
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +37 -30
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +35 -31
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/expoUpdatesCli.js +32 -22
- package/build/src/utils/expoUpdatesCli.js.map +1 -1
- package/build/src/utils/fetch.js +8 -4
- package/build/src/utils/fetch.js.map +1 -1
- package/build/src/utils/filePath.js +10 -6
- package/build/src/utils/filePath.js.map +1 -1
- package/build/src/utils/findUp.js +13 -9
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +6 -2
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +41 -35
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +29 -21
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +26 -20
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +8 -4
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/interactive.js +3 -1
- package/build/src/utils/interactive.js.map +1 -1
- package/build/src/utils/ip.js +21 -19
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +11 -9
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/jsonSchemaDeref.js +20 -18
- package/build/src/utils/jsonSchemaDeref.js.map +1 -1
- package/build/src/utils/link.js +17 -13
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +46 -28
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +16 -10
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +10 -6
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/multipartMixed.js +13 -11
- package/build/src/utils/multipartMixed.js.map +1 -1
- package/build/src/utils/nodeEnv.js +12 -6
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +10 -8
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +49 -35
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +11 -5
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +10 -8
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +13 -7
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +21 -15
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +43 -33
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +11 -7
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +11 -5
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +47 -29
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/resolveArgs.js +36 -24
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +40 -32
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/stream.js +5 -3
- package/build/src/utils/stream.js.map +1 -1
- package/build/src/utils/strings.js +6 -4
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +18 -14
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/Telemetry.js +29 -27
- package/build/src/utils/telemetry/Telemetry.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchClient.js +15 -13
- package/build/src/utils/telemetry/clients/FetchClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js +26 -22
- package/build/src/utils/telemetry/clients/FetchDetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/clients/flushFetchDetached.js +10 -10
- package/build/src/utils/telemetry/clients/flushFetchDetached.js.map +1 -1
- package/build/src/utils/telemetry/events.js +4 -2
- package/build/src/utils/telemetry/events.js.map +1 -1
- package/build/src/utils/telemetry/index.js +25 -29
- package/build/src/utils/telemetry/index.js.map +1 -1
- package/build/src/utils/telemetry/types.js.map +1 -1
- package/build/src/utils/telemetry/utils/constants.js +8 -4
- package/build/src/utils/telemetry/utils/constants.js.map +1 -1
- package/build/src/utils/telemetry/utils/context.js +18 -14
- package/build/src/utils/telemetry/utils/context.js.map +1 -1
- package/build/src/utils/template.js +6 -4
- package/build/src/utils/template.js.map +1 -1
- package/build/src/utils/terminal.js +4 -2
- package/build/src/utils/terminal.js.map +1 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +21 -17
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -14
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +7 -5
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +14 -12
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +23 -13
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +108 -86
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +22 -16
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js +11 -7
- package/build/src/whoami/index.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +11 -7
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +17 -16
|
@@ -9,19 +9,27 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
getBestBootedSimulatorAsync: ()
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
getBestSimulatorAsync: ()
|
|
12
|
+
getBestBootedSimulatorAsync: function() {
|
|
13
|
+
return getBestBootedSimulatorAsync;
|
|
14
|
+
},
|
|
15
|
+
getBestSimulatorAsync: function() {
|
|
16
|
+
return getBestSimulatorAsync;
|
|
17
|
+
},
|
|
18
|
+
getBestUnbootedSimulatorAsync: function() {
|
|
19
|
+
return getBestUnbootedSimulatorAsync;
|
|
20
|
+
},
|
|
21
|
+
getSelectableSimulatorsAsync: function() {
|
|
22
|
+
return getSelectableSimulatorsAsync;
|
|
23
|
+
}
|
|
16
24
|
});
|
|
17
|
-
function
|
|
25
|
+
function _child_process() {
|
|
18
26
|
const data = require("child_process");
|
|
19
|
-
|
|
27
|
+
_child_process = function() {
|
|
20
28
|
return data;
|
|
21
29
|
};
|
|
22
30
|
return data;
|
|
23
31
|
}
|
|
24
|
-
const _simctl = /*#__PURE__*/
|
|
32
|
+
const _simctl = /*#__PURE__*/ _interop_require_wildcard(require("./simctl"));
|
|
25
33
|
const _errors = require("../../../utils/errors");
|
|
26
34
|
function _getRequireWildcardCache(nodeInterop) {
|
|
27
35
|
if (typeof WeakMap !== "function") return null;
|
|
@@ -31,7 +39,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
31
39
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
32
40
|
})(nodeInterop);
|
|
33
41
|
}
|
|
34
|
-
function
|
|
42
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
35
43
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
36
44
|
return obj;
|
|
37
45
|
}
|
|
@@ -44,7 +52,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
44
52
|
if (cache && cache.has(obj)) {
|
|
45
53
|
return cache.get(obj);
|
|
46
54
|
}
|
|
47
|
-
var newObj = {
|
|
55
|
+
var newObj = {
|
|
56
|
+
__proto__: null
|
|
57
|
+
};
|
|
48
58
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
49
59
|
for(var key in obj){
|
|
50
60
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -62,21 +72,21 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
62
72
|
}
|
|
63
73
|
return newObj;
|
|
64
74
|
}
|
|
65
|
-
const debug = require(
|
|
75
|
+
const debug = require('debug')('expo:start:platforms:ios:getBestSimulator');
|
|
66
76
|
/**
|
|
67
77
|
* Returns the default device stored in the Simulator.app settings.
|
|
68
78
|
* This helps us to get the device that the user opened most recently regardless of which tool they used.
|
|
69
79
|
*/ function getDefaultSimulatorDeviceUDID() {
|
|
70
80
|
try {
|
|
71
|
-
const defaultDeviceUDID = (0,
|
|
72
|
-
stdio:
|
|
81
|
+
const defaultDeviceUDID = (0, _child_process().execSync)(`defaults read com.apple.iphonesimulator CurrentDeviceUDID`, {
|
|
82
|
+
stdio: 'pipe'
|
|
73
83
|
}).toString();
|
|
74
84
|
return defaultDeviceUDID.trim();
|
|
75
85
|
} catch {
|
|
76
86
|
return null;
|
|
77
87
|
}
|
|
78
88
|
}
|
|
79
|
-
async function getBestBootedSimulatorAsync({ osType
|
|
89
|
+
async function getBestBootedSimulatorAsync({ osType } = {}) {
|
|
80
90
|
const [simulatorOpenedByApp] = await _simctl.getBootedSimulatorsAsync();
|
|
81
91
|
// This should prevent opening a second simulator in the chance that default
|
|
82
92
|
// simulator doesn't match what the Simulator app would open by default.
|
|
@@ -87,8 +97,8 @@ async function getBestBootedSimulatorAsync({ osType } = {}) {
|
|
|
87
97
|
debug(`No booted simulator matching requirements (osType: ${osType}).`);
|
|
88
98
|
return null;
|
|
89
99
|
}
|
|
90
|
-
async function getBestUnbootedSimulatorAsync({ osType
|
|
91
|
-
var
|
|
100
|
+
async function getBestUnbootedSimulatorAsync({ osType } = {}) {
|
|
101
|
+
var _simulators_;
|
|
92
102
|
const defaultId = getDefaultSimulatorDeviceUDID();
|
|
93
103
|
debug(`Default simulator ID: ${defaultId}`);
|
|
94
104
|
if (defaultId && !osType) {
|
|
@@ -99,7 +109,7 @@ async function getBestUnbootedSimulatorAsync({ osType } = {}) {
|
|
|
99
109
|
});
|
|
100
110
|
if (!simulators.length) {
|
|
101
111
|
// TODO: Prompt to install the simulators
|
|
102
|
-
throw new _errors.CommandError(
|
|
112
|
+
throw new _errors.CommandError('UNSUPPORTED_OS_TYPE', `No ${osType || 'iOS'} devices available in Simulator.app`);
|
|
103
113
|
}
|
|
104
114
|
// If the default udid is defined, then check to ensure its osType matches the required os.
|
|
105
115
|
if (defaultId) {
|
|
@@ -109,13 +119,13 @@ async function getBestUnbootedSimulatorAsync({ osType } = {}) {
|
|
|
109
119
|
}
|
|
110
120
|
}
|
|
111
121
|
// Return first selectable device.
|
|
112
|
-
return ((
|
|
122
|
+
return ((_simulators_ = simulators[0]) == null ? void 0 : _simulators_.udid) ?? null;
|
|
113
123
|
}
|
|
114
|
-
async function getSelectableSimulatorsAsync({ osType =
|
|
124
|
+
async function getSelectableSimulatorsAsync({ osType = 'iOS' } = {}) {
|
|
115
125
|
const simulators = await _simctl.getDevicesAsync();
|
|
116
126
|
return simulators.filter((device)=>device.isAvailable && device.osType === osType);
|
|
117
127
|
}
|
|
118
|
-
async function getBestSimulatorAsync({ osType
|
|
128
|
+
async function getBestSimulatorAsync({ osType }) {
|
|
119
129
|
const simulatorOpenedByApp = await getBestBootedSimulatorAsync({
|
|
120
130
|
osType
|
|
121
131
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/platforms/ios/getBestSimulator.ts"],"sourcesContent":["import { execSync } from 'child_process';\n\nimport * as SimControl from './simctl';\nimport { CommandError } from '../../../utils/errors';\n\nconst debug = require('debug')('expo:start:platforms:ios:getBestSimulator') as typeof console.log;\n\ntype DeviceContext = Partial<Pick<SimControl.Device, 'osType'>>;\n\n/**\n * Returns the default device stored in the Simulator.app settings.\n * This helps us to get the device that the user opened most recently regardless of which tool they used.\n */\nfunction getDefaultSimulatorDeviceUDID() {\n try {\n const defaultDeviceUDID = execSync(\n `defaults read com.apple.iphonesimulator CurrentDeviceUDID`,\n { stdio: 'pipe' }\n ).toString();\n return defaultDeviceUDID.trim();\n } catch {\n return null;\n }\n}\n\nexport async function getBestBootedSimulatorAsync({\n osType,\n}: DeviceContext = {}): Promise<SimControl.Device | null> {\n const [simulatorOpenedByApp] = await SimControl.getBootedSimulatorsAsync();\n // This should prevent opening a second simulator in the chance that default\n // simulator doesn't match what the Simulator app would open by default.\n if (\n simulatorOpenedByApp?.udid &&\n (!osType || (osType && simulatorOpenedByApp.osType === osType))\n ) {\n debug(`First booted simulator: ${simulatorOpenedByApp?.windowName}`);\n return simulatorOpenedByApp;\n }\n\n debug(`No booted simulator matching requirements (osType: ${osType}).`);\n return null;\n}\n\n/**\n * Returns the most preferred simulator UDID without booting anything.\n *\n * 1. If the simulator app defines a default simulator and the osType is not defined.\n * 2. If the osType is defined, then check if the default udid matches the osType.\n * 3. If all else fails, return the first found simulator.\n */\nexport async function getBestUnbootedSimulatorAsync({ osType }: DeviceContext = {}): Promise<\n string | null\n> {\n const defaultId = getDefaultSimulatorDeviceUDID();\n debug(`Default simulator ID: ${defaultId}`);\n\n if (defaultId && !osType) {\n return defaultId;\n }\n\n const simulators = await getSelectableSimulatorsAsync({ osType });\n\n if (!simulators.length) {\n // TODO: Prompt to install the simulators\n throw new CommandError(\n 'UNSUPPORTED_OS_TYPE',\n `No ${osType || 'iOS'} devices available in Simulator.app`\n );\n }\n\n // If the default udid is defined, then check to ensure its osType matches the required os.\n if (defaultId) {\n const defaultSimulator = simulators.find((device) => device.udid === defaultId);\n if (defaultSimulator?.osType === osType) {\n return defaultId;\n }\n }\n\n // Return first selectable device.\n return simulators[0]?.udid ?? null;\n}\n\n/**\n * Get all simulators supported by Expo Go (iOS only).\n */\nexport async function getSelectableSimulatorsAsync({ osType = 'iOS' }: DeviceContext = {}): Promise<\n SimControl.Device[]\n> {\n const simulators = await SimControl.getDevicesAsync();\n return simulators.filter((device) => device.isAvailable && device.osType === osType);\n}\n\n/**\n * Get 'best' simulator for the user based on:\n * 1. Currently booted simulator.\n * 2. Last simulator that was opened.\n * 3. First simulator that was opened.\n */\nexport async function getBestSimulatorAsync({ osType }: DeviceContext): Promise<string | null> {\n const simulatorOpenedByApp = await getBestBootedSimulatorAsync({ osType });\n\n if (simulatorOpenedByApp) {\n return simulatorOpenedByApp.udid;\n }\n\n return await getBestUnbootedSimulatorAsync({ osType });\n}\n"],"names":["getBestBootedSimulatorAsync","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/platforms/ios/getBestSimulator.ts"],"sourcesContent":["import { execSync } from 'child_process';\n\nimport * as SimControl from './simctl';\nimport { CommandError } from '../../../utils/errors';\n\nconst debug = require('debug')('expo:start:platforms:ios:getBestSimulator') as typeof console.log;\n\ntype DeviceContext = Partial<Pick<SimControl.Device, 'osType'>>;\n\n/**\n * Returns the default device stored in the Simulator.app settings.\n * This helps us to get the device that the user opened most recently regardless of which tool they used.\n */\nfunction getDefaultSimulatorDeviceUDID() {\n try {\n const defaultDeviceUDID = execSync(\n `defaults read com.apple.iphonesimulator CurrentDeviceUDID`,\n { stdio: 'pipe' }\n ).toString();\n return defaultDeviceUDID.trim();\n } catch {\n return null;\n }\n}\n\nexport async function getBestBootedSimulatorAsync({\n osType,\n}: DeviceContext = {}): Promise<SimControl.Device | null> {\n const [simulatorOpenedByApp] = await SimControl.getBootedSimulatorsAsync();\n // This should prevent opening a second simulator in the chance that default\n // simulator doesn't match what the Simulator app would open by default.\n if (\n simulatorOpenedByApp?.udid &&\n (!osType || (osType && simulatorOpenedByApp.osType === osType))\n ) {\n debug(`First booted simulator: ${simulatorOpenedByApp?.windowName}`);\n return simulatorOpenedByApp;\n }\n\n debug(`No booted simulator matching requirements (osType: ${osType}).`);\n return null;\n}\n\n/**\n * Returns the most preferred simulator UDID without booting anything.\n *\n * 1. If the simulator app defines a default simulator and the osType is not defined.\n * 2. If the osType is defined, then check if the default udid matches the osType.\n * 3. If all else fails, return the first found simulator.\n */\nexport async function getBestUnbootedSimulatorAsync({ osType }: DeviceContext = {}): Promise<\n string | null\n> {\n const defaultId = getDefaultSimulatorDeviceUDID();\n debug(`Default simulator ID: ${defaultId}`);\n\n if (defaultId && !osType) {\n return defaultId;\n }\n\n const simulators = await getSelectableSimulatorsAsync({ osType });\n\n if (!simulators.length) {\n // TODO: Prompt to install the simulators\n throw new CommandError(\n 'UNSUPPORTED_OS_TYPE',\n `No ${osType || 'iOS'} devices available in Simulator.app`\n );\n }\n\n // If the default udid is defined, then check to ensure its osType matches the required os.\n if (defaultId) {\n const defaultSimulator = simulators.find((device) => device.udid === defaultId);\n if (defaultSimulator?.osType === osType) {\n return defaultId;\n }\n }\n\n // Return first selectable device.\n return simulators[0]?.udid ?? null;\n}\n\n/**\n * Get all simulators supported by Expo Go (iOS only).\n */\nexport async function getSelectableSimulatorsAsync({ osType = 'iOS' }: DeviceContext = {}): Promise<\n SimControl.Device[]\n> {\n const simulators = await SimControl.getDevicesAsync();\n return simulators.filter((device) => device.isAvailable && device.osType === osType);\n}\n\n/**\n * Get 'best' simulator for the user based on:\n * 1. Currently booted simulator.\n * 2. Last simulator that was opened.\n * 3. First simulator that was opened.\n */\nexport async function getBestSimulatorAsync({ osType }: DeviceContext): Promise<string | null> {\n const simulatorOpenedByApp = await getBestBootedSimulatorAsync({ osType });\n\n if (simulatorOpenedByApp) {\n return simulatorOpenedByApp.udid;\n }\n\n return await getBestUnbootedSimulatorAsync({ osType });\n}\n"],"names":["getBestBootedSimulatorAsync","getBestSimulatorAsync","getBestUnbootedSimulatorAsync","getSelectableSimulatorsAsync","debug","require","getDefaultSimulatorDeviceUDID","defaultDeviceUDID","execSync","stdio","toString","trim","osType","simulatorOpenedByApp","SimControl","getBootedSimulatorsAsync","udid","windowName","simulators","defaultId","length","CommandError","defaultSimulator","find","device","getDevicesAsync","filter","isAvailable"],"mappings":";;;;;;;;;;;IAyBsBA,2BAA2B;eAA3BA;;IAyEAC,qBAAqB;eAArBA;;IAhDAC,6BAA6B;eAA7BA;;IAmCAC,4BAA4B;eAA5BA;;;;yBArFG;;;;;;gEAEG;wBACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE7B,MAAMC,QAAQC,QAAQ,SAAS;AAI/B;;;CAGC,GACD,SAASC;IACP,IAAI;QACF,MAAMC,oBAAoBC,IAAAA,yBAAQ,EAChC,CAAC,yDAAyD,CAAC,EAC3D;YAAEC,OAAO;QAAO,GAChBC,QAAQ;QACV,OAAOH,kBAAkBI,IAAI;IAC/B,EAAE,OAAM;QACN,OAAO;IACT;AACF;AAEO,eAAeX,4BAA4B,EAChDY,MAAM,EACQ,GAAG,CAAC,CAAC;IACnB,MAAM,CAACC,qBAAqB,GAAG,MAAMC,QAAWC,wBAAwB;IACxE,4EAA4E;IAC5E,wEAAwE;IACxE,IACEF,CAAAA,wCAAAA,qBAAsBG,IAAI,KACzB,CAAA,CAACJ,UAAWA,UAAUC,qBAAqBD,MAAM,KAAKA,MAAM,GAC7D;QACAR,MAAM,CAAC,wBAAwB,EAAES,wCAAAA,qBAAsBI,UAAU,EAAE;QACnE,OAAOJ;IACT;IAEAT,MAAM,CAAC,mDAAmD,EAAEQ,OAAO,EAAE,CAAC;IACtE,OAAO;AACT;AASO,eAAeV,8BAA8B,EAAEU,MAAM,EAAiB,GAAG,CAAC,CAAC;QA6BzEM;IA1BP,MAAMC,YAAYb;IAClBF,MAAM,CAAC,sBAAsB,EAAEe,WAAW;IAE1C,IAAIA,aAAa,CAACP,QAAQ;QACxB,OAAOO;IACT;IAEA,MAAMD,aAAa,MAAMf,6BAA6B;QAAES;IAAO;IAE/D,IAAI,CAACM,WAAWE,MAAM,EAAE;QACtB,yCAAyC;QACzC,MAAM,IAAIC,oBAAY,CACpB,uBACA,CAAC,GAAG,EAAET,UAAU,MAAM,mCAAmC,CAAC;IAE9D;IAEA,2FAA2F;IAC3F,IAAIO,WAAW;QACb,MAAMG,mBAAmBJ,WAAWK,IAAI,CAAC,CAACC,SAAWA,OAAOR,IAAI,KAAKG;QACrE,IAAIG,CAAAA,oCAAAA,iBAAkBV,MAAM,MAAKA,QAAQ;YACvC,OAAOO;QACT;IACF;IAEA,kCAAkC;IAClC,OAAOD,EAAAA,eAAAA,UAAU,CAAC,EAAE,qBAAbA,aAAeF,IAAI,KAAI;AAChC;AAKO,eAAeb,6BAA6B,EAAES,SAAS,KAAK,EAAiB,GAAG,CAAC,CAAC;IAGvF,MAAMM,aAAa,MAAMJ,QAAWW,eAAe;IACnD,OAAOP,WAAWQ,MAAM,CAAC,CAACF,SAAWA,OAAOG,WAAW,IAAIH,OAAOZ,MAAM,KAAKA;AAC/E;AAQO,eAAeX,sBAAsB,EAAEW,MAAM,EAAiB;IACnE,MAAMC,uBAAuB,MAAMb,4BAA4B;QAAEY;IAAO;IAExE,IAAIC,sBAAsB;QACxB,OAAOA,qBAAqBG,IAAI;IAClC;IAEA,OAAO,MAAMd,8BAA8B;QAAEU;IAAO;AACtD"}
|
|
@@ -9,11 +9,15 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
promptAppleDeviceAsync: function() {
|
|
13
|
+
return promptAppleDeviceAsync;
|
|
14
|
+
},
|
|
15
|
+
sortDefaultDeviceToBeginningAsync: function() {
|
|
16
|
+
return sortDefaultDeviceToBeginningAsync;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
19
|
function _chalk() {
|
|
16
|
-
const data = /*#__PURE__*/
|
|
20
|
+
const data = /*#__PURE__*/ _interop_require_default(require("chalk"));
|
|
17
21
|
_chalk = function() {
|
|
18
22
|
return data;
|
|
19
23
|
};
|
|
@@ -21,7 +25,7 @@ function _chalk() {
|
|
|
21
25
|
}
|
|
22
26
|
const _getBestSimulator = require("./getBestSimulator");
|
|
23
27
|
const _prompts = require("../../../utils/prompts");
|
|
24
|
-
function
|
|
28
|
+
function _interop_require_default(obj) {
|
|
25
29
|
return obj && obj.__esModule ? obj : {
|
|
26
30
|
default: obj
|
|
27
31
|
};
|
|
@@ -42,18 +46,18 @@ async function sortDefaultDeviceToBeginningAsync(devices, osType) {
|
|
|
42
46
|
async function promptAppleDeviceAsync(devices, osType) {
|
|
43
47
|
devices = await sortDefaultDeviceToBeginningAsync(devices, osType);
|
|
44
48
|
const results = await promptAppleDeviceInternalAsync(devices);
|
|
45
|
-
return devices.find(({ udid
|
|
49
|
+
return devices.find(({ udid })=>results === udid);
|
|
46
50
|
}
|
|
47
51
|
async function promptAppleDeviceInternalAsync(devices) {
|
|
48
52
|
// TODO: provide an option to add or download more simulators
|
|
49
53
|
// TODO: Add support for physical devices too.
|
|
50
|
-
const { value
|
|
51
|
-
type:
|
|
52
|
-
name:
|
|
54
|
+
const { value } = await (0, _prompts.promptAsync)({
|
|
55
|
+
type: 'autocomplete',
|
|
56
|
+
name: 'value',
|
|
53
57
|
limit: 11,
|
|
54
|
-
message:
|
|
58
|
+
message: 'Select a simulator',
|
|
55
59
|
choices: devices.map((item)=>{
|
|
56
|
-
const isActive = item.state ===
|
|
60
|
+
const isActive = item.state === 'Booted';
|
|
57
61
|
const format = isActive ? _chalk().default.bold : (text)=>text;
|
|
58
62
|
return {
|
|
59
63
|
title: `${format(item.name)} ${_chalk().default.dim(`(${item.osVersion})`)}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/platforms/ios/promptAppleDevice.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport { getBestSimulatorAsync } from './getBestSimulator';\nimport { Device } from './simctl';\nimport { createSelectionFilter, promptAsync } from '../../../utils/prompts';\n\n/**\n * Sort the devices so the last simulator that was opened (user's default) is the first suggested.\n *\n * @param devices list of devices to sort.\n * @param osType optional sort by operating system.\n */\nexport async function sortDefaultDeviceToBeginningAsync<T extends { udid: string }>(\n devices: T[],\n osType?: Device['osType']\n): Promise<T[]> {\n const defaultId = await getBestSimulatorAsync({ osType });\n if (defaultId) {\n let iterations = 0;\n while (devices[0].udid !== defaultId && iterations < devices.length) {\n devices.push(devices.shift()!);\n iterations++;\n }\n }\n return devices;\n}\n\n/** Prompt the user to select an Apple device, sorting the most likely option to the beginning. */\nexport async function promptAppleDeviceAsync(\n devices: Device[],\n osType?: Device['osType']\n): Promise<Device> {\n devices = await sortDefaultDeviceToBeginningAsync(devices, osType);\n const results = await promptAppleDeviceInternalAsync(devices);\n return devices.find(({ udid }) => results === udid)!;\n}\n\nasync function promptAppleDeviceInternalAsync(devices: Device[]): Promise<string> {\n // TODO: provide an option to add or download more simulators\n // TODO: Add support for physical devices too.\n\n const { value } = await promptAsync({\n type: 'autocomplete',\n name: 'value',\n limit: 11,\n message: 'Select a simulator',\n choices: devices.map((item) => {\n const isActive = item.state === 'Booted';\n const format = isActive ? chalk.bold : (text: string) => text;\n return {\n title: `${format(item.name)} ${chalk.dim(`(${item.osVersion})`)}`,\n value: item.udid,\n };\n }),\n suggest: createSelectionFilter(),\n });\n\n return value;\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/platforms/ios/promptAppleDevice.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport { getBestSimulatorAsync } from './getBestSimulator';\nimport { Device } from './simctl';\nimport { createSelectionFilter, promptAsync } from '../../../utils/prompts';\n\n/**\n * Sort the devices so the last simulator that was opened (user's default) is the first suggested.\n *\n * @param devices list of devices to sort.\n * @param osType optional sort by operating system.\n */\nexport async function sortDefaultDeviceToBeginningAsync<T extends { udid: string }>(\n devices: T[],\n osType?: Device['osType']\n): Promise<T[]> {\n const defaultId = await getBestSimulatorAsync({ osType });\n if (defaultId) {\n let iterations = 0;\n while (devices[0].udid !== defaultId && iterations < devices.length) {\n devices.push(devices.shift()!);\n iterations++;\n }\n }\n return devices;\n}\n\n/** Prompt the user to select an Apple device, sorting the most likely option to the beginning. */\nexport async function promptAppleDeviceAsync(\n devices: Device[],\n osType?: Device['osType']\n): Promise<Device> {\n devices = await sortDefaultDeviceToBeginningAsync(devices, osType);\n const results = await promptAppleDeviceInternalAsync(devices);\n return devices.find(({ udid }) => results === udid)!;\n}\n\nasync function promptAppleDeviceInternalAsync(devices: Device[]): Promise<string> {\n // TODO: provide an option to add or download more simulators\n // TODO: Add support for physical devices too.\n\n const { value } = await promptAsync({\n type: 'autocomplete',\n name: 'value',\n limit: 11,\n message: 'Select a simulator',\n choices: devices.map((item) => {\n const isActive = item.state === 'Booted';\n const format = isActive ? chalk.bold : (text: string) => text;\n return {\n title: `${format(item.name)} ${chalk.dim(`(${item.osVersion})`)}`,\n value: item.udid,\n };\n }),\n suggest: createSelectionFilter(),\n });\n\n return value;\n}\n"],"names":["promptAppleDeviceAsync","sortDefaultDeviceToBeginningAsync","devices","osType","defaultId","getBestSimulatorAsync","iterations","udid","length","push","shift","results","promptAppleDeviceInternalAsync","find","value","promptAsync","type","name","limit","message","choices","map","item","isActive","state","format","chalk","bold","text","title","dim","osVersion","suggest","createSelectionFilter"],"mappings":";;;;;;;;;;;IA4BsBA,sBAAsB;eAAtBA;;IAhBAC,iCAAiC;eAAjCA;;;;gEAZJ;;;;;;kCAEoB;yBAEa;;;;;;AAQ5C,eAAeA,kCACpBC,OAAY,EACZC,MAAyB;IAEzB,MAAMC,YAAY,MAAMC,IAAAA,uCAAqB,EAAC;QAAEF;IAAO;IACvD,IAAIC,WAAW;QACb,IAAIE,aAAa;QACjB,MAAOJ,OAAO,CAAC,EAAE,CAACK,IAAI,KAAKH,aAAaE,aAAaJ,QAAQM,MAAM,CAAE;YACnEN,QAAQO,IAAI,CAACP,QAAQQ,KAAK;YAC1BJ;QACF;IACF;IACA,OAAOJ;AACT;AAGO,eAAeF,uBACpBE,OAAiB,EACjBC,MAAyB;IAEzBD,UAAU,MAAMD,kCAAkCC,SAASC;IAC3D,MAAMQ,UAAU,MAAMC,+BAA+BV;IACrD,OAAOA,QAAQW,IAAI,CAAC,CAAC,EAAEN,IAAI,EAAE,GAAKI,YAAYJ;AAChD;AAEA,eAAeK,+BAA+BV,OAAiB;IAC7D,6DAA6D;IAC7D,8CAA8C;IAE9C,MAAM,EAAEY,KAAK,EAAE,GAAG,MAAMC,IAAAA,oBAAW,EAAC;QAClCC,MAAM;QACNC,MAAM;QACNC,OAAO;QACPC,SAAS;QACTC,SAASlB,QAAQmB,GAAG,CAAC,CAACC;YACpB,MAAMC,WAAWD,KAAKE,KAAK,KAAK;YAChC,MAAMC,SAASF,WAAWG,gBAAK,CAACC,IAAI,GAAG,CAACC,OAAiBA;YACzD,OAAO;gBACLC,OAAO,GAAGJ,OAAOH,KAAKL,IAAI,EAAE,CAAC,EAAES,gBAAK,CAACI,GAAG,CAAC,CAAC,CAAC,EAAER,KAAKS,SAAS,CAAC,CAAC,CAAC,GAAG;gBACjEjB,OAAOQ,KAAKf,IAAI;YAClB;QACF;QACAyB,SAASC,IAAAA,8BAAqB;IAChC;IAEA,OAAOnB;AACT"}
|
|
@@ -9,62 +9,88 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
getBootedSimulatorsAsync: ()
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
12
|
+
bootAsync: function() {
|
|
13
|
+
return bootAsync;
|
|
14
|
+
},
|
|
15
|
+
bootDeviceAsync: function() {
|
|
16
|
+
return bootDeviceAsync;
|
|
17
|
+
},
|
|
18
|
+
getBootedSimulatorsAsync: function() {
|
|
19
|
+
return getBootedSimulatorsAsync;
|
|
20
|
+
},
|
|
21
|
+
getContainerPathAsync: function() {
|
|
22
|
+
return getContainerPathAsync;
|
|
23
|
+
},
|
|
24
|
+
getDevicesAsync: function() {
|
|
25
|
+
return getDevicesAsync;
|
|
26
|
+
},
|
|
27
|
+
getInfoPlistValueAsync: function() {
|
|
28
|
+
return getInfoPlistValueAsync;
|
|
29
|
+
},
|
|
30
|
+
installAsync: function() {
|
|
31
|
+
return installAsync;
|
|
32
|
+
},
|
|
33
|
+
isDeviceBootedAsync: function() {
|
|
34
|
+
return isDeviceBootedAsync;
|
|
35
|
+
},
|
|
36
|
+
isOSType: function() {
|
|
37
|
+
return isOSType;
|
|
38
|
+
},
|
|
39
|
+
openAppIdAsync: function() {
|
|
40
|
+
return openAppIdAsync;
|
|
41
|
+
},
|
|
42
|
+
openUrlAsync: function() {
|
|
43
|
+
return openUrlAsync;
|
|
44
|
+
},
|
|
45
|
+
simctlAsync: function() {
|
|
46
|
+
return simctlAsync;
|
|
47
|
+
},
|
|
48
|
+
uninstallAsync: function() {
|
|
49
|
+
return uninstallAsync;
|
|
50
|
+
}
|
|
25
51
|
});
|
|
26
|
-
function
|
|
27
|
-
const data = /*#__PURE__*/
|
|
28
|
-
|
|
52
|
+
function _spawnasync() {
|
|
53
|
+
const data = /*#__PURE__*/ _interop_require_default(require("@expo/spawn-async"));
|
|
54
|
+
_spawnasync = function() {
|
|
29
55
|
return data;
|
|
30
56
|
};
|
|
31
57
|
return data;
|
|
32
58
|
}
|
|
33
|
-
function
|
|
34
|
-
const data = /*#__PURE__*/
|
|
35
|
-
|
|
59
|
+
function _bplistcreator() {
|
|
60
|
+
const data = /*#__PURE__*/ _interop_require_default(require("bplist-creator"));
|
|
61
|
+
_bplistcreator = function() {
|
|
36
62
|
return data;
|
|
37
63
|
};
|
|
38
64
|
return data;
|
|
39
65
|
}
|
|
40
66
|
function _fs() {
|
|
41
|
-
const data = /*#__PURE__*/
|
|
67
|
+
const data = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
42
68
|
_fs = function() {
|
|
43
69
|
return data;
|
|
44
70
|
};
|
|
45
71
|
return data;
|
|
46
72
|
}
|
|
47
73
|
function _os() {
|
|
48
|
-
const data = /*#__PURE__*/
|
|
74
|
+
const data = /*#__PURE__*/ _interop_require_default(require("os"));
|
|
49
75
|
_os = function() {
|
|
50
76
|
return data;
|
|
51
77
|
};
|
|
52
78
|
return data;
|
|
53
79
|
}
|
|
54
80
|
function _path() {
|
|
55
|
-
const data = /*#__PURE__*/
|
|
81
|
+
const data = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
56
82
|
_path = function() {
|
|
57
83
|
return data;
|
|
58
84
|
};
|
|
59
85
|
return data;
|
|
60
86
|
}
|
|
61
87
|
const _xcrun = require("./xcrun");
|
|
62
|
-
const _log = /*#__PURE__*/
|
|
88
|
+
const _log = /*#__PURE__*/ _interop_require_wildcard(require("../../../log"));
|
|
63
89
|
const _errors = require("../../../utils/errors");
|
|
64
90
|
const _fn = require("../../../utils/fn");
|
|
65
91
|
const _plist = require("../../../utils/plist");
|
|
66
92
|
const _profile = require("../../../utils/profile");
|
|
67
|
-
function
|
|
93
|
+
function _interop_require_default(obj) {
|
|
68
94
|
return obj && obj.__esModule ? obj : {
|
|
69
95
|
default: obj
|
|
70
96
|
};
|
|
@@ -77,7 +103,7 @@ function _getRequireWildcardCache(nodeInterop) {
|
|
|
77
103
|
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
78
104
|
})(nodeInterop);
|
|
79
105
|
}
|
|
80
|
-
function
|
|
106
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
81
107
|
if (!nodeInterop && obj && obj.__esModule) {
|
|
82
108
|
return obj;
|
|
83
109
|
}
|
|
@@ -90,7 +116,9 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
90
116
|
if (cache && cache.has(obj)) {
|
|
91
117
|
return cache.get(obj);
|
|
92
118
|
}
|
|
93
|
-
var newObj = {
|
|
119
|
+
var newObj = {
|
|
120
|
+
__proto__: null
|
|
121
|
+
};
|
|
94
122
|
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
95
123
|
for(var key in obj){
|
|
96
124
|
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
@@ -108,66 +136,66 @@ function _interopRequireWildcard(obj, nodeInterop) {
|
|
|
108
136
|
}
|
|
109
137
|
return newObj;
|
|
110
138
|
}
|
|
111
|
-
const debug = require(
|
|
139
|
+
const debug = require('debug')('expo:simctl');
|
|
112
140
|
function isOSType(value) {
|
|
113
|
-
if (!value || typeof value !==
|
|
141
|
+
if (!value || typeof value !== 'string') return false;
|
|
114
142
|
const knownTypes = [
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
143
|
+
'iOS',
|
|
144
|
+
'tvOS',
|
|
145
|
+
'watchOS',
|
|
146
|
+
'macOS'
|
|
119
147
|
];
|
|
120
148
|
if (!knownTypes.includes(value)) {
|
|
121
|
-
_log.warn(`Unknown OS type: ${value}. Expected one of: ${knownTypes.join(
|
|
149
|
+
_log.warn(`Unknown OS type: ${value}. Expected one of: ${knownTypes.join(', ')}`);
|
|
122
150
|
}
|
|
123
151
|
return true;
|
|
124
152
|
}
|
|
125
|
-
async function getContainerPathAsync(device, { appId
|
|
153
|
+
async function getContainerPathAsync(device, { appId }) {
|
|
126
154
|
try {
|
|
127
|
-
const { stdout
|
|
128
|
-
|
|
155
|
+
const { stdout } = await simctlAsync([
|
|
156
|
+
'get_app_container',
|
|
129
157
|
resolveId(device),
|
|
130
158
|
appId
|
|
131
159
|
]);
|
|
132
160
|
return stdout.trim();
|
|
133
161
|
} catch (error) {
|
|
134
|
-
var
|
|
135
|
-
if ((
|
|
162
|
+
var _error_stderr;
|
|
163
|
+
if ((_error_stderr = error.stderr) == null ? void 0 : _error_stderr.match(/No such file or directory/)) {
|
|
136
164
|
return null;
|
|
137
165
|
}
|
|
138
166
|
throw error;
|
|
139
167
|
}
|
|
140
168
|
}
|
|
141
|
-
async function getInfoPlistValueAsync(device, { appId
|
|
169
|
+
async function getInfoPlistValueAsync(device, { appId, key, containerPath }) {
|
|
142
170
|
const ensuredContainerPath = containerPath ?? await getContainerPathAsync(device, {
|
|
143
171
|
appId
|
|
144
172
|
});
|
|
145
173
|
if (ensuredContainerPath) {
|
|
146
174
|
try {
|
|
147
|
-
const { output
|
|
148
|
-
|
|
175
|
+
const { output } = await (0, _spawnasync().default)('defaults', [
|
|
176
|
+
'read',
|
|
149
177
|
`${ensuredContainerPath}/Info`,
|
|
150
178
|
key
|
|
151
179
|
], {
|
|
152
|
-
stdio:
|
|
180
|
+
stdio: 'pipe'
|
|
153
181
|
});
|
|
154
|
-
return output.join(
|
|
182
|
+
return output.join('\n').trim();
|
|
155
183
|
} catch {
|
|
156
184
|
return null;
|
|
157
185
|
}
|
|
158
186
|
}
|
|
159
187
|
return null;
|
|
160
188
|
}
|
|
161
|
-
/** Rewrite the simulator permissions to allow opening deep links without needing to prompt the user first. */ async function updateSimulatorLinkingPermissionsAsync(device, { url
|
|
189
|
+
/** Rewrite the simulator permissions to allow opening deep links without needing to prompt the user first. */ async function updateSimulatorLinkingPermissionsAsync(device, { url, appId }) {
|
|
162
190
|
if (!device.udid || !appId) {
|
|
163
|
-
debug(
|
|
191
|
+
debug('Skipping deep link permissions as missing properties could not be found:', {
|
|
164
192
|
url,
|
|
165
193
|
appId,
|
|
166
194
|
udid: device.udid
|
|
167
195
|
});
|
|
168
196
|
return;
|
|
169
197
|
}
|
|
170
|
-
debug(
|
|
198
|
+
debug('Rewriting simulator permissions to support deep linking:', {
|
|
171
199
|
url,
|
|
172
200
|
appId,
|
|
173
201
|
udid: device.udid
|
|
@@ -184,39 +212,39 @@ async function getInfoPlistValueAsync(device, { appId , key , containerPath })
|
|
|
184
212
|
const plistPath = _path().default.join(_os().default.homedir(), `Library/Developer/CoreSimulator/Devices`, device.udid, `data/Library/Preferences/com.apple.launchservices.schemeapproval.plist`);
|
|
185
213
|
const plistData = _fs().default.existsSync(plistPath) ? await (0, _plist.parsePlistAsync)(plistPath) : // Can be tested by launching a new simulator or by deleting the file and relaunching the simulator.
|
|
186
214
|
{};
|
|
187
|
-
debug(
|
|
215
|
+
debug('Allowed links:', plistData);
|
|
188
216
|
const key = `com.apple.CoreSimulator.CoreSimulatorBridge-->${scheme}`;
|
|
189
217
|
// Replace any existing value for the scheme with the new appId.
|
|
190
218
|
plistData[key] = appId;
|
|
191
|
-
debug(
|
|
219
|
+
debug('Allowing deep link:', {
|
|
192
220
|
key,
|
|
193
221
|
appId
|
|
194
222
|
});
|
|
195
223
|
try {
|
|
196
|
-
const data = (0,
|
|
224
|
+
const data = (0, _bplistcreator().default)(plistData);
|
|
197
225
|
// Write the updated plist back to disk
|
|
198
226
|
await _fs().default.promises.writeFile(plistPath, data);
|
|
199
|
-
} catch (
|
|
200
|
-
_log.warn(`Could not update simulator linking permissions: ${
|
|
227
|
+
} catch (error) {
|
|
228
|
+
_log.warn(`Could not update simulator linking permissions: ${error.message}`);
|
|
201
229
|
}
|
|
202
230
|
}
|
|
203
231
|
const updateSimulatorLinkingPermissionsAsyncMemo = (0, _fn.memoize)(updateSimulatorLinkingPermissionsAsync);
|
|
204
232
|
async function openUrlAsync(device, options) {
|
|
205
233
|
if (options.appId) {
|
|
206
|
-
await (0, _profile.profile)(updateSimulatorLinkingPermissionsAsyncMemo,
|
|
234
|
+
await (0, _profile.profile)(updateSimulatorLinkingPermissionsAsyncMemo, 'updateSimulatorLinkingPermissionsAsync')({
|
|
207
235
|
udid: device.udid
|
|
208
236
|
}, options);
|
|
209
237
|
}
|
|
210
238
|
try {
|
|
211
239
|
// Skip logging since this is likely to fail.
|
|
212
240
|
await simctlAsync([
|
|
213
|
-
|
|
241
|
+
'openurl',
|
|
214
242
|
resolveId(device),
|
|
215
243
|
options.url
|
|
216
244
|
]);
|
|
217
245
|
} catch (error) {
|
|
218
|
-
var
|
|
219
|
-
if (!((
|
|
246
|
+
var _error_stderr;
|
|
247
|
+
if (!((_error_stderr = error.stderr) == null ? void 0 : _error_stderr.match(/Unable to lookup in current state: Shut/))) {
|
|
220
248
|
throw error;
|
|
221
249
|
}
|
|
222
250
|
// If the device was in a weird in-between state ("Shutting Down" or "Shutdown"), then attempt to reboot it and try again.
|
|
@@ -233,19 +261,19 @@ async function openAppIdAsync(device, options) {
|
|
|
233
261
|
const results = await openAppIdInternalAsync(device, options);
|
|
234
262
|
// Similar to 194, this is a conformance issue which indicates that the given device has no app that can handle our launch request.
|
|
235
263
|
if (results.status === 4) {
|
|
236
|
-
throw new _errors.CommandError(
|
|
264
|
+
throw new _errors.CommandError('APP_NOT_INSTALLED', results.stderr);
|
|
237
265
|
}
|
|
238
266
|
return results;
|
|
239
267
|
}
|
|
240
268
|
async function openAppIdInternalAsync(device, options) {
|
|
241
269
|
try {
|
|
242
270
|
return await simctlAsync([
|
|
243
|
-
|
|
271
|
+
'launch',
|
|
244
272
|
resolveId(device),
|
|
245
273
|
options.appId
|
|
246
274
|
]);
|
|
247
275
|
} catch (error) {
|
|
248
|
-
if (
|
|
276
|
+
if ('status' in error) {
|
|
249
277
|
return error;
|
|
250
278
|
}
|
|
251
279
|
throw error;
|
|
@@ -256,8 +284,8 @@ async function bootAsync(device) {
|
|
|
256
284
|
return isDeviceBootedAsync(device);
|
|
257
285
|
}
|
|
258
286
|
async function getBootedSimulatorsAsync() {
|
|
259
|
-
const simulatorDeviceInfo = await getRuntimesAsync(
|
|
260
|
-
return Object.values(simulatorDeviceInfo.devices).flatMap((runtime)=>runtime.filter((device)=>device.state ===
|
|
287
|
+
const simulatorDeviceInfo = await getRuntimesAsync('devices');
|
|
288
|
+
return Object.values(simulatorDeviceInfo.devices).flatMap((runtime)=>runtime.filter((device)=>device.state === 'Booted'));
|
|
261
289
|
}
|
|
262
290
|
async function isDeviceBootedAsync(device) {
|
|
263
291
|
// Simulators can be booted even if the app isn't running :(
|
|
@@ -271,26 +299,26 @@ async function bootDeviceAsync(device) {
|
|
|
271
299
|
try {
|
|
272
300
|
// Skip logging since this is likely to fail.
|
|
273
301
|
await simctlAsync([
|
|
274
|
-
|
|
302
|
+
'boot',
|
|
275
303
|
device.udid
|
|
276
304
|
]);
|
|
277
305
|
} catch (error) {
|
|
278
|
-
var
|
|
279
|
-
if (!((
|
|
306
|
+
var _error_stderr;
|
|
307
|
+
if (!((_error_stderr = error.stderr) == null ? void 0 : _error_stderr.match(/Unable to boot device in current state: Booted/))) {
|
|
280
308
|
throw error;
|
|
281
309
|
}
|
|
282
310
|
}
|
|
283
311
|
}
|
|
284
312
|
async function installAsync(device, options) {
|
|
285
313
|
return simctlAsync([
|
|
286
|
-
|
|
314
|
+
'install',
|
|
287
315
|
resolveId(device),
|
|
288
316
|
options.filePath
|
|
289
317
|
]);
|
|
290
318
|
}
|
|
291
319
|
async function uninstallAsync(device, options) {
|
|
292
320
|
return simctlAsync([
|
|
293
|
-
|
|
321
|
+
'uninstall',
|
|
294
322
|
resolveId(device),
|
|
295
323
|
options.appId
|
|
296
324
|
]);
|
|
@@ -301,7 +329,7 @@ function parseSimControlJSONResults(input) {
|
|
|
301
329
|
} catch (error) {
|
|
302
330
|
// Nov 15, 2020: Observed this can happen when opening the simulator and the simulator prompts the user to update the xcode command line tools.
|
|
303
331
|
// Unexpected token I in JSON at position 0
|
|
304
|
-
if (error.message.includes(
|
|
332
|
+
if (error.message.includes('Unexpected token')) {
|
|
305
333
|
_log.error(`Apple's simctl returned malformed JSON:\n${input}`);
|
|
306
334
|
}
|
|
307
335
|
throw error;
|
|
@@ -309,19 +337,19 @@ function parseSimControlJSONResults(input) {
|
|
|
309
337
|
}
|
|
310
338
|
/** Get all runtime devices given a certain type. */ async function getRuntimesAsync(type, query) {
|
|
311
339
|
const result = await simctlAsync([
|
|
312
|
-
|
|
340
|
+
'list',
|
|
313
341
|
type,
|
|
314
|
-
|
|
342
|
+
'--json',
|
|
315
343
|
query
|
|
316
344
|
]);
|
|
317
345
|
const info = parseSimControlJSONResults(result.stdout);
|
|
318
346
|
for (const runtime of Object.keys(info.devices)){
|
|
319
347
|
// Given a string like 'com.apple.CoreSimulator.SimRuntime.tvOS-13-4'
|
|
320
|
-
const runtimeSuffix = runtime.split(
|
|
348
|
+
const runtimeSuffix = runtime.split('com.apple.CoreSimulator.SimRuntime.').pop();
|
|
321
349
|
// Create an array [tvOS, 13, 4]
|
|
322
|
-
const [osType, ...osVersionComponents] = runtimeSuffix.split(
|
|
350
|
+
const [osType, ...osVersionComponents] = runtimeSuffix.split('-');
|
|
323
351
|
// Join the end components [13, 4] -> '13.4'
|
|
324
|
-
const osVersion = osVersionComponents.join(
|
|
352
|
+
const osVersion = osVersionComponents.join('.');
|
|
325
353
|
const sims = info.devices[runtime];
|
|
326
354
|
for (const device of sims){
|
|
327
355
|
device.runtime = runtime;
|
|
@@ -333,13 +361,13 @@ function parseSimControlJSONResults(input) {
|
|
|
333
361
|
return info;
|
|
334
362
|
}
|
|
335
363
|
async function getDevicesAsync() {
|
|
336
|
-
const simulatorDeviceInfo = await getRuntimesAsync(
|
|
364
|
+
const simulatorDeviceInfo = await getRuntimesAsync('devices');
|
|
337
365
|
return Object.values(simulatorDeviceInfo.devices).flat();
|
|
338
366
|
}
|
|
339
367
|
async function simctlAsync(args, options) {
|
|
340
368
|
try {
|
|
341
369
|
return await (0, _xcrun.xcrunAsync)([
|
|
342
|
-
|
|
370
|
+
'simctl',
|
|
343
371
|
...args
|
|
344
372
|
], options);
|
|
345
373
|
} catch (error) {
|
|
@@ -352,7 +380,7 @@ async function simctlAsync(args, options) {
|
|
|
352
380
|
}
|
|
353
381
|
}
|
|
354
382
|
function resolveId(device) {
|
|
355
|
-
return device.udid ??
|
|
383
|
+
return device.udid ?? 'booted';
|
|
356
384
|
}
|
|
357
385
|
|
|
358
386
|
//# sourceMappingURL=simctl.js.map
|