@expo/cli 0.18.0 → 0.18.2
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 +90 -114
- package/build/bin/cli.map +1 -1
- package/build/src/api/endpoint.js +11 -3
- package/build/src/api/endpoint.js.map +1 -1
- package/build/src/api/getExpoGoIntermediateCertificate.js +7 -4
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -1
- package/build/src/api/getExpoSchema.js +13 -11
- package/build/src/api/getExpoSchema.js.map +1 -1
- package/build/src/api/getNativeModuleVersions.js +7 -4
- package/build/src/api/getNativeModuleVersions.js.map +1 -1
- package/build/src/api/getProjectDevelopmentCertificate.js +7 -4
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -1
- package/build/src/api/getVersions.js +7 -4
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/graphql/client.js +55 -35
- package/build/src/api/graphql/client.js.map +1 -1
- package/build/src/api/graphql/queries/AppQuery.js +9 -7
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -1
- package/build/src/api/graphql/queries/UserQuery.js +7 -5
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -1
- package/build/src/api/graphql/types/App.js +6 -4
- package/build/src/api/graphql/types/App.js.map +1 -1
- package/build/src/api/rest/cache/FileSystemCache.js +6 -4
- package/build/src/api/rest/cache/FileSystemCache.js.map +1 -1
- package/build/src/api/rest/cache/response.js +4 -1
- package/build/src/api/rest/cache/response.js.map +1 -1
- package/build/src/api/rest/cache/wrapFetchWithCache.js +21 -12
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -1
- package/build/src/api/rest/client.js +36 -29
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +4 -1
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithOffline.js +5 -2
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProgress.js +40 -19
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -1
- package/build/src/api/rest/wrapFetchWithProxy.js +7 -4
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -1
- package/build/src/api/settings.js +9 -4
- package/build/src/api/settings.js.map +1 -1
- package/build/src/api/updateDevelopmentSession.js +16 -8
- package/build/src/api/updateDevelopmentSession.js.map +1 -1
- package/build/src/api/user/UserSettings.js +10 -8
- package/build/src/api/user/UserSettings.js.map +1 -1
- package/build/src/api/user/actions.js +66 -41
- package/build/src/api/user/actions.js.map +1 -1
- package/build/src/api/user/expoSsoLauncher.js +46 -25
- package/build/src/api/user/expoSsoLauncher.js.map +1 -1
- package/build/src/api/user/otp.js +70 -50
- package/build/src/api/user/otp.js.map +1 -1
- package/build/src/api/user/user.js +66 -41
- package/build/src/api/user/user.js.map +1 -1
- package/build/src/config/configAsync.js +62 -43
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +46 -30
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/customizeAsync.js +14 -11
- package/build/src/customize/customizeAsync.js.map +1 -1
- package/build/src/customize/generate.js +61 -46
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/index.js +10 -8
- package/build/src/customize/index.js.map +1 -1
- package/build/src/customize/resolveOptions.js +7 -4
- package/build/src/customize/resolveOptions.js.map +1 -1
- package/build/src/customize/templates.js +31 -34
- package/build/src/customize/templates.js.map +1 -1
- package/build/src/customize/typescript.js +43 -28
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +7 -6
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +51 -38
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/index.js +48 -36
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +7 -4
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/embed/xcodeCompilerLogger.js +20 -8
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -1
- package/build/src/export/exportApp.js +84 -67
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +62 -43
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportAsync.js +47 -26
- package/build/src/export/exportAsync.js.map +1 -1
- package/build/src/export/exportHermes.js +19 -11
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +49 -38
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +19 -11
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/fork-bundleAsync.js +42 -39
- package/build/src/export/fork-bundleAsync.js.map +1 -1
- package/build/src/export/getPublicExpoManifest.js +9 -6
- package/build/src/export/getPublicExpoManifest.js.map +1 -1
- package/build/src/export/getResolvedLocales.js +7 -4
- package/build/src/export/getResolvedLocales.js.map +1 -1
- package/build/src/export/html.js +12 -4
- package/build/src/export/html.js.map +1 -1
- package/build/src/export/index.js +49 -33
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +22 -6
- package/build/src/export/metroAssetLocalPath.js.map +1 -1
- package/build/src/export/persistMetroAssets.js +38 -24
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/publicFolder.js +15 -7
- package/build/src/export/publicFolder.js.map +1 -1
- package/build/src/export/resolveOptions.js +19 -15
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +42 -38
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +15 -12
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +47 -31
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/web/resolveOptions.js +4 -1
- package/build/src/export/web/resolveOptions.js.map +1 -1
- package/build/src/export/writeContents.js +12 -7
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/graphql/generated.js +141 -128
- package/build/src/graphql/generated.js.map +1 -1
- package/build/src/install/applyPlugins.js +43 -25
- package/build/src/install/applyPlugins.js.map +1 -1
- package/build/src/install/checkPackages.js +55 -35
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +52 -35
- package/build/src/install/fixPackages.js.map +1 -1
- package/build/src/install/index.js +15 -13
- package/build/src/install/index.js.map +1 -1
- package/build/src/install/installAsync.js +90 -65
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +48 -27
- package/build/src/install/installExpoPackage.js.map +1 -1
- package/build/src/install/resolveOptions.js +8 -5
- package/build/src/install/resolveOptions.js.map +1 -1
- package/build/src/install/utils/autoAddConfigPlugins.js +15 -7
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -1
- package/build/src/lint/ESlintPrerequisite.js +174 -0
- package/build/src/lint/ESlintPrerequisite.js.map +1 -0
- package/build/src/lint/index.js +66 -0
- package/build/src/lint/index.js.map +1 -0
- package/build/src/lint/lintAsync.js +33 -0
- package/build/src/lint/lintAsync.js.map +1 -0
- package/build/src/log.js +20 -14
- package/build/src/log.js.map +1 -1
- package/build/src/login/index.js +43 -25
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +43 -25
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +65 -42
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +50 -29
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +19 -13
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/ensureConfigAsync.js +54 -28
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -1
- package/build/src/prebuild/index.js +52 -38
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +68 -51
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/renameTemplateAppName.js +15 -10
- package/build/src/prebuild/renameTemplateAppName.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +60 -35
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/resolveTemplate.js +66 -40
- package/build/src/prebuild/resolveTemplate.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +67 -44
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +70 -49
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +44 -23
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +43 -25
- package/build/src/register/index.js.map +1 -1
- package/build/src/register/registerAsync.js +14 -11
- package/build/src/register/registerAsync.js.map +1 -1
- package/build/src/run/android/index.js +47 -31
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/android/resolveDevice.js +9 -6
- package/build/src/run/android/resolveDevice.js.map +1 -1
- package/build/src/run/android/resolveGradlePropsAsync.js +10 -9
- package/build/src/run/android/resolveGradlePropsAsync.js.map +1 -1
- package/build/src/run/android/resolveInstallApkName.js +14 -12
- package/build/src/run/android/resolveInstallApkName.js.map +1 -1
- package/build/src/run/android/resolveLaunchProps.js +6 -3
- package/build/src/run/android/resolveLaunchProps.js.map +1 -1
- package/build/src/run/android/resolveOptions.js +12 -9
- package/build/src/run/android/resolveOptions.js.map +1 -1
- package/build/src/run/android/runAndroidAsync.js +27 -24
- package/build/src/run/android/runAndroidAsync.js.map +1 -1
- package/build/src/run/ensureNativeProject.js +11 -8
- package/build/src/run/ensureNativeProject.js.map +1 -1
- package/build/src/run/hints.js +15 -7
- package/build/src/run/hints.js.map +1 -1
- package/build/src/run/index.js +49 -35
- package/build/src/run/index.js.map +1 -1
- package/build/src/run/ios/XcodeBuild.js +75 -51
- package/build/src/run/ios/XcodeBuild.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +31 -24
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/appleDevice/ClientManager.js +66 -33
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/AFCClient.js +73 -47
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +53 -26
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +15 -6
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +54 -27
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +56 -30
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +18 -4
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +22 -13
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -1
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +57 -31
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +79 -66
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +28 -14
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +24 -11
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +26 -13
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -1
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +23 -10
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -1
- package/build/src/run/ios/codeSigning/Security.js +27 -20
- package/build/src/run/ios/codeSigning/Security.js.map +1 -1
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +49 -28
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +61 -36
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -1
- package/build/src/run/ios/codeSigning/settings.js +11 -3
- package/build/src/run/ios/codeSigning/settings.js.map +1 -1
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +7 -5
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -1
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +14 -8
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -1
- package/build/src/run/ios/index.js +50 -34
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/run/ios/launchApp.js +52 -31
- package/build/src/run/ios/launchApp.js.map +1 -1
- package/build/src/run/ios/options/promptDevice.js +17 -13
- package/build/src/run/ios/options/promptDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveDevice.js +63 -39
- package/build/src/run/ios/options/resolveDevice.js.map +1 -1
- package/build/src/run/ios/options/resolveNativeScheme.js +57 -34
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -1
- package/build/src/run/ios/options/resolveOptions.js +15 -12
- package/build/src/run/ios/options/resolveOptions.js.map +1 -1
- package/build/src/run/ios/options/resolveXcodeProject.js +6 -3
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -1
- package/build/src/run/ios/runIosAsync.js +63 -42
- package/build/src/run/ios/runIosAsync.js.map +1 -1
- package/build/src/run/resolveBundlerProps.js +8 -5
- package/build/src/run/resolveBundlerProps.js.map +1 -1
- package/build/src/run/startBundler.js +47 -26
- package/build/src/run/startBundler.js.map +1 -1
- package/build/src/start/detectDevClient.js +6 -3
- package/build/src/start/detectDevClient.js.map +1 -1
- package/build/src/start/doctor/Prerequisite.js +15 -7
- package/build/src/start/doctor/Prerequisite.js.map +1 -1
- package/build/src/start/doctor/SecurityBinPrerequisite.js +7 -4
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +44 -23
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +44 -23
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcodePrerequisite.js +61 -36
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -1
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +15 -12
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -1
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +49 -28
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -1
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +98 -53
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -1
- package/build/src/start/doctor/dependencies/getMissingPackages.js +17 -9
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +23 -15
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/resolvePackages.js +19 -13
- package/build/src/start/doctor/dependencies/resolvePackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +63 -41
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/doctor/ngrok/ExternalModule.js +64 -39
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -1
- package/build/src/start/doctor/ngrok/NgrokResolver.js +12 -5
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -1
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +59 -41
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -1
- package/build/src/start/doctor/typescript/updateTSConfig.js +59 -36
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -1
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +57 -31
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -1
- package/build/src/start/index.js +56 -42
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/KeyPressHandler.js +43 -22
- package/build/src/start/interface/KeyPressHandler.js.map +1 -1
- package/build/src/start/interface/commandsTable.js +60 -38
- package/build/src/start/interface/commandsTable.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +85 -68
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/interface/startInterface.js +78 -57
- package/build/src/start/interface/startInterface.js.map +1 -1
- package/build/src/start/platforms/AppIdResolver.js +9 -6
- package/build/src/start/platforms/AppIdResolver.js.map +1 -1
- package/build/src/start/platforms/DeviceManager.js +41 -20
- package/build/src/start/platforms/DeviceManager.js.map +1 -1
- package/build/src/start/platforms/ExpoGoInstaller.js +55 -35
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -1
- package/build/src/start/platforms/PlatformManager.js +19 -17
- package/build/src/start/platforms/PlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/ADBServer.js +15 -12
- package/build/src/start/platforms/android/ADBServer.js.map +1 -1
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +6 -4
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/android/AndroidDeviceManager.js +70 -50
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidPlatformManager.js +9 -6
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -1
- package/build/src/start/platforms/android/AndroidSdk.js +11 -8
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -1
- package/build/src/start/platforms/android/activateWindow.js +43 -22
- package/build/src/start/platforms/android/activateWindow.js.map +1 -1
- package/build/src/start/platforms/android/adb.js +73 -52
- package/build/src/start/platforms/android/adb.js.map +1 -1
- package/build/src/start/platforms/android/adbReverse.js +57 -31
- package/build/src/start/platforms/android/adbReverse.js.map +1 -1
- package/build/src/start/platforms/android/emulator.js +63 -42
- package/build/src/start/platforms/android/emulator.js.map +1 -1
- package/build/src/start/platforms/android/getDevices.js +11 -10
- package/build/src/start/platforms/android/getDevices.js.map +1 -1
- package/build/src/start/platforms/android/gradle.js +18 -11
- package/build/src/start/platforms/android/gradle.js.map +1 -1
- package/build/src/start/platforms/android/promptAndroidDevice.js +14 -14
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -1
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +7 -4
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -1
- package/build/src/start/platforms/ios/AppleDeviceManager.js +80 -54
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -1
- package/build/src/start/platforms/ios/ApplePlatformManager.js +7 -4
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -1
- package/build/src/start/platforms/ios/assertSystemRequirements.js +11 -8
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -1
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +50 -29
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -1
- package/build/src/start/platforms/ios/getBestSimulator.js +53 -29
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -1
- package/build/src/start/platforms/ios/promptAppleDevice.js +18 -12
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -1
- package/build/src/start/platforms/ios/simctl.js +65 -42
- package/build/src/start/platforms/ios/simctl.js.map +1 -1
- package/build/src/start/platforms/ios/simctlLogging.js +67 -44
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -1
- package/build/src/start/platforms/ios/xcrun.js +8 -5
- package/build/src/start/platforms/ios/xcrun.js.map +1 -1
- package/build/src/start/project/devices.js +19 -16
- package/build/src/start/project/devices.js.map +1 -1
- package/build/src/start/project/dotExpo.js +13 -5
- package/build/src/start/project/dotExpo.js.map +1 -1
- package/build/src/start/project/settings.js +6 -4
- package/build/src/start/project/settings.js.map +1 -1
- package/build/src/start/resolveOptions.js +26 -19
- package/build/src/start/resolveOptions.js.map +1 -1
- package/build/src/start/server/AsyncNgrok.js +66 -46
- package/build/src/start/server/AsyncNgrok.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +64 -44
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +81 -69
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +21 -16
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -1
- package/build/src/start/server/DevelopmentSession.js +49 -31
- package/build/src/start/server/DevelopmentSession.js.map +1 -1
- package/build/src/start/server/ReactDevToolsProxy.js +14 -6
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -1
- package/build/src/start/server/UrlCreator.js +44 -23
- package/build/src/start/server/UrlCreator.js.map +1 -1
- package/build/src/start/server/getStaticRenderFunctions.js +46 -34
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +135 -108
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/MetroTerminalReporter.js +24 -17
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/TerminalReporter.js +18 -8
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -1
- package/build/src/start/server/metro/createExpoMetroResolver.js +31 -20
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -1
- package/build/src/start/server/metro/createJResolver.js +76 -51
- package/build/src/start/server/metro/createJResolver.js.map +1 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js +22 -14
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js +4 -1
- package/build/src/start/server/metro/debugging/MessageHandler.js.map +1 -1
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js +10 -9
- package/build/src/start/server/metro/debugging/createDebugMiddleware.js.map +1 -1
- package/build/src/start/server/metro/debugging/createHandlersFactory.js +14 -13
- package/build/src/start/server/metro/debugging/createHandlersFactory.js.map +1 -1
- package/build/src/start/server/metro/debugging/getDebuggerType.js +5 -2
- package/build/src/start/server/metro/debugging/getDebuggerType.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js +5 -2
- package/build/src/start/server/metro/debugging/messageHandlers/NetworkResponse.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js +5 -2
- package/build/src/start/server/metro/debugging/messageHandlers/PageReload.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js +7 -4
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js +7 -4
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js +7 -4
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeCallFunctionOn.js.map +1 -1
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js +7 -4
- package/build/src/start/server/metro/debugging/messageHandlers/VscodeRuntimeGetProperties.js.map +1 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js +4 -1
- package/build/src/start/server/metro/debugging/pageIsSupported.js.map +1 -1
- package/build/src/start/server/metro/externals.js +21 -10
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js +20 -7
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- package/build/src/start/server/metro/formatFileCandidates.js +21 -17
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -1
- package/build/src/start/server/metro/getCssModulesFromBundler.js +15 -7
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +57 -44
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +43 -34
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/metroErrors.js +11 -2
- package/build/src/start/server/metro/metroErrors.js.map +1 -1
- package/build/src/start/server/metro/metroVirtualModules.js +10 -2
- package/build/src/start/server/metro/metroVirtualModules.js.map +1 -1
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +5 -2
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -1
- package/build/src/start/server/metro/router.js +27 -20
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +21 -14
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- package/build/src/start/server/metro/serializeHtml.js +7 -7
- package/build/src/start/server/metro/serializeHtml.js.map +1 -1
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +12 -4
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +107 -81
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +72 -42
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +4 -1
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CorsMiddleware.js +4 -1
- package/build/src/start/server/middleware/CorsMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/CreateFileMiddleware.js +13 -5
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +15 -12
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +30 -23
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ExpoMiddleware.js +47 -21
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/FaviconMiddleware.js +8 -5
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +6 -3
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +23 -16
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +84 -60
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +14 -7
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +47 -26
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +11 -8
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +30 -24
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js +16 -8
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +4 -2
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +16 -12
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +59 -37
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +22 -16
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -1
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +9 -6
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +11 -4
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +26 -18
- package/build/src/start/server/middleware/metroOptions.js.map +1 -1
- package/build/src/start/server/middleware/mutations.js +11 -4
- package/build/src/start/server/middleware/mutations.js.map +1 -1
- package/build/src/start/server/middleware/resolveAssets.js +65 -41
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/middleware/resolvePlatform.js +14 -6
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -1
- package/build/src/start/server/middleware/suppressErrorMiddleware.js +4 -1
- package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -1
- package/build/src/start/server/openPlatforms.js +7 -6
- package/build/src/start/server/openPlatforms.js.map +1 -1
- package/build/src/start/server/platformBundlers.js +5 -2
- package/build/src/start/server/platformBundlers.js.map +1 -1
- package/build/src/start/server/serverLogLikeMetro.js +62 -33
- package/build/src/start/server/serverLogLikeMetro.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +12 -4
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +52 -51
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +22 -19
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -1
- package/build/src/start/server/type-generation/tsconfig.js +18 -11
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -1
- package/build/src/start/server/webTemplate.js +21 -15
- package/build/src/start/server/webTemplate.js.map +1 -1
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +81 -56
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -1
- package/build/src/start/server/webpack/compile.js +47 -26
- package/build/src/start/server/webpack/compile.js.map +1 -1
- package/build/src/start/server/webpack/formatWebpackMessages.js +35 -25
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -1
- package/build/src/start/server/webpack/resolveFromProject.js +13 -5
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -1
- package/build/src/start/server/webpack/tls.js +54 -28
- package/build/src/start/server/webpack/tls.js.map +1 -1
- package/build/src/start/startAsync.js +73 -52
- package/build/src/start/startAsync.js.map +1 -1
- package/build/src/utils/FileNotifier.js +46 -25
- package/build/src/utils/FileNotifier.js.map +1 -1
- package/build/src/utils/analytics/getDevClientProperties.js +29 -21
- package/build/src/utils/analytics/getDevClientProperties.js.map +1 -1
- package/build/src/utils/analytics/getMetroDebugProperties.js +4 -1
- package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -1
- package/build/src/utils/analytics/getMetroProperties.js +4 -1
- package/build/src/utils/analytics/getMetroProperties.js.map +1 -1
- package/build/src/utils/analytics/metroDebuggerMiddleware.js +14 -6
- package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -1
- package/build/src/utils/ansi.js +5 -2
- package/build/src/utils/ansi.js.map +1 -1
- package/build/src/utils/args.js +57 -29
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/array.js +16 -9
- package/build/src/utils/array.js.map +1 -1
- package/build/src/utils/cocoapods.js +77 -53
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/codesigning.js +80 -58
- package/build/src/utils/codesigning.js.map +1 -1
- package/build/src/utils/createFileTransform.js +13 -5
- package/build/src/utils/createFileTransform.js.map +1 -1
- package/build/src/utils/delay.js +13 -6
- package/build/src/utils/delay.js.map +1 -1
- package/build/src/utils/dir.js +24 -21
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/downloadAppAsync.js +16 -13
- package/build/src/utils/downloadAppAsync.js.map +1 -1
- package/build/src/utils/downloadExpoGoAsync.js +26 -20
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -1
- package/build/src/utils/editor.js +50 -24
- package/build/src/utils/editor.js.map +1 -1
- package/build/src/utils/env.js +35 -33
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/errors.js +17 -9
- package/build/src/utils/errors.js.map +1 -1
- package/build/src/utils/exit.js +10 -7
- package/build/src/utils/exit.js.map +1 -1
- package/build/src/utils/findUp.js +22 -4
- package/build/src/utils/findUp.js.map +1 -1
- package/build/src/utils/fn.js +11 -3
- package/build/src/utils/fn.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +71 -45
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/getRunningProcess.js +52 -26
- package/build/src/utils/getRunningProcess.js.map +1 -1
- package/build/src/utils/git.js +64 -38
- package/build/src/utils/git.js.map +1 -1
- package/build/src/utils/glob.js +14 -9
- package/build/src/utils/glob.js.map +1 -1
- package/build/src/utils/interactive.js +5 -2
- package/build/src/utils/interactive.js.map +1 -1
- package/build/src/utils/ip.js +5 -2
- package/build/src/utils/ip.js.map +1 -1
- package/build/src/utils/isModuleSymlinked.js +7 -4
- package/build/src/utils/isModuleSymlinked.js.map +1 -1
- package/build/src/utils/link.js +13 -5
- package/build/src/utils/link.js.map +1 -1
- package/build/src/utils/mergeGitIgnorePaths.js +22 -17
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -1
- package/build/src/utils/modifyConfigAsync.js +56 -30
- package/build/src/utils/modifyConfigAsync.js.map +1 -1
- package/build/src/utils/modifyConfigPlugins.js +43 -22
- package/build/src/utils/modifyConfigPlugins.js.map +1 -1
- package/build/src/utils/nodeEnv.js +6 -1
- package/build/src/utils/nodeEnv.js.map +1 -1
- package/build/src/utils/nodeModules.js +9 -6
- package/build/src/utils/nodeModules.js.map +1 -1
- package/build/src/utils/npm.js +32 -24
- package/build/src/utils/npm.js.map +1 -1
- package/build/src/utils/obj.js +12 -4
- package/build/src/utils/obj.js.map +1 -1
- package/build/src/utils/open.js +7 -4
- package/build/src/utils/open.js.map +1 -1
- package/build/src/utils/ora.js +25 -21
- package/build/src/utils/ora.js.map +1 -1
- package/build/src/utils/plist.js +53 -27
- package/build/src/utils/plist.js.map +1 -1
- package/build/src/utils/port.js +58 -32
- package/build/src/utils/port.js.map +1 -1
- package/build/src/utils/profile.js +49 -28
- package/build/src/utils/profile.js.map +1 -1
- package/build/src/utils/progress.js +16 -12
- package/build/src/utils/progress.js.map +1 -1
- package/build/src/utils/prompts.js +33 -28
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/utils/resolveArgs.js +23 -20
- package/build/src/utils/resolveArgs.js.map +1 -1
- package/build/src/utils/scheme.js +61 -37
- package/build/src/utils/scheme.js.map +1 -1
- package/build/src/utils/strings.js +11 -4
- package/build/src/utils/strings.js.map +1 -1
- package/build/src/utils/tar.js +43 -22
- package/build/src/utils/tar.js.map +1 -1
- package/build/src/utils/telemetry/DetachedClient.js +8 -5
- package/build/src/utils/telemetry/DetachedClient.js.map +1 -1
- package/build/src/utils/telemetry/RudderClient.js +12 -9
- package/build/src/utils/telemetry/RudderClient.js.map +1 -1
- package/build/src/utils/telemetry/flushDetached.js +8 -7
- package/build/src/utils/telemetry/flushDetached.js.map +1 -1
- package/build/src/utils/telemetry/getContext.js +48 -28
- package/build/src/utils/telemetry/getContext.js.map +1 -1
- package/build/src/utils/telemetry/index.js +16 -11
- package/build/src/utils/telemetry/index.js.map +1 -1
- package/build/src/utils/template.js +27 -2
- package/build/src/utils/template.js.map +1 -1
- package/build/src/utils/terminal.js +5 -2
- package/build/src/utils/terminal.js.map +1 -1
- package/build/src/utils/tsconfig/evaluateTsConfig.js +18 -12
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -1
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +18 -10
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -1
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +8 -4
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -1
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +12 -9
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -1
- package/build/src/utils/url.js +17 -10
- package/build/src/utils/url.js.map +1 -1
- package/build/src/utils/validateApplicationId.js +32 -25
- package/build/src/utils/validateApplicationId.js.map +1 -1
- package/build/src/utils/variadic.js +15 -11
- package/build/src/utils/variadic.js.map +1 -1
- package/build/src/whoami/index.js +43 -25
- package/build/src/whoami/index.js.map +1 -1
- package/build/src/whoami/whoamiAsync.js +44 -23
- package/build/src/whoami/whoamiAsync.js.map +1 -1
- package/package.json +4 -4
|
@@ -2,57 +2,79 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
+
Object.defineProperty(exports, "TypeScriptProjectPrerequisite", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: ()=>TypeScriptProjectPrerequisite
|
|
8
|
+
});
|
|
5
9
|
function _promises() {
|
|
6
|
-
const data = _interopRequireDefault(require("fs/promises"));
|
|
10
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("fs/promises"));
|
|
7
11
|
_promises = function() {
|
|
8
12
|
return data;
|
|
9
13
|
};
|
|
10
14
|
return data;
|
|
11
15
|
}
|
|
12
16
|
function _path() {
|
|
13
|
-
const data = _interopRequireDefault(require("path"));
|
|
17
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("path"));
|
|
14
18
|
_path = function() {
|
|
15
19
|
return data;
|
|
16
20
|
};
|
|
17
21
|
return data;
|
|
18
22
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
const _updateTSConfig = require("./updateTSConfig");
|
|
24
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../../log"));
|
|
25
|
+
const _dir = require("../../../utils/dir");
|
|
26
|
+
const _env = require("../../../utils/env");
|
|
27
|
+
const _fn = require("../../../utils/fn");
|
|
28
|
+
const _glob = require("../../../utils/glob");
|
|
29
|
+
const _prerequisite = require("../Prerequisite");
|
|
30
|
+
const _ensureDependenciesAsync = require("../dependencies/ensureDependenciesAsync");
|
|
27
31
|
function _interopRequireDefault(obj) {
|
|
28
32
|
return obj && obj.__esModule ? obj : {
|
|
29
33
|
default: obj
|
|
30
34
|
};
|
|
31
35
|
}
|
|
32
|
-
function
|
|
33
|
-
if (
|
|
36
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
37
|
+
if (typeof WeakMap !== "function") return null;
|
|
38
|
+
var cacheBabelInterop = new WeakMap();
|
|
39
|
+
var cacheNodeInterop = new WeakMap();
|
|
40
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
41
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
42
|
+
})(nodeInterop);
|
|
43
|
+
}
|
|
44
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
45
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
34
46
|
return obj;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
}
|
|
48
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
49
|
+
return {
|
|
50
|
+
default: obj
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
54
|
+
if (cache && cache.has(obj)) {
|
|
55
|
+
return cache.get(obj);
|
|
56
|
+
}
|
|
57
|
+
var newObj = {};
|
|
58
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
59
|
+
for(var key in obj){
|
|
60
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
61
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
62
|
+
if (desc && (desc.get || desc.set)) {
|
|
63
|
+
Object.defineProperty(newObj, key, desc);
|
|
64
|
+
} else {
|
|
65
|
+
newObj[key] = obj[key];
|
|
47
66
|
}
|
|
48
67
|
}
|
|
49
|
-
newObj.default = obj;
|
|
50
|
-
return newObj;
|
|
51
68
|
}
|
|
69
|
+
newObj.default = obj;
|
|
70
|
+
if (cache) {
|
|
71
|
+
cache.set(obj, newObj);
|
|
72
|
+
}
|
|
73
|
+
return newObj;
|
|
52
74
|
}
|
|
53
75
|
const debug = require("debug")("expo:doctor:typescriptSupport");
|
|
54
|
-
const warnDisabled = (0, _fn
|
|
55
|
-
|
|
76
|
+
const warnDisabled = (0, _fn.memoize)(()=>{
|
|
77
|
+
_log.warn("Skipping TypeScript setup: EXPO_NO_TYPESCRIPT_SETUP is enabled.");
|
|
56
78
|
});
|
|
57
79
|
class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
58
80
|
/**
|
|
@@ -74,7 +96,7 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
74
96
|
// Ensure TypeScript packages are installed
|
|
75
97
|
await this._ensureDependenciesInstalledAsync();
|
|
76
98
|
// Update the config
|
|
77
|
-
await (0, _updateTSConfig
|
|
99
|
+
await (0, _updateTSConfig.updateTSConfigAsync)({
|
|
78
100
|
tsConfigPath
|
|
79
101
|
});
|
|
80
102
|
return true;
|
|
@@ -91,7 +113,7 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
91
113
|
});
|
|
92
114
|
const tsConfigPath = _path().default.join(this.projectRoot, "tsconfig.json");
|
|
93
115
|
// Update the config
|
|
94
|
-
await (0, _updateTSConfig
|
|
116
|
+
await (0, _updateTSConfig.updateTSConfigAsync)({
|
|
95
117
|
tsConfigPath
|
|
96
118
|
});
|
|
97
119
|
}
|
|
@@ -101,10 +123,8 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
101
123
|
if (tsConfigPath) {
|
|
102
124
|
const content = await _promises().default.readFile(tsConfigPath, {
|
|
103
125
|
encoding: "utf8"
|
|
104
|
-
}).then((txt)=>txt.trim()
|
|
105
|
-
|
|
106
|
-
()=>null
|
|
107
|
-
);
|
|
126
|
+
}).then((txt)=>txt.trim(), // null when the file doesn't exist.
|
|
127
|
+
()=>null);
|
|
108
128
|
const isBlankConfig = content === "" || content === "{}";
|
|
109
129
|
return {
|
|
110
130
|
isBootstrapping: isBlankConfig
|
|
@@ -122,7 +142,7 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
122
142
|
}
|
|
123
143
|
/** Exposed for testing. */ async _ensureDependenciesInstalledAsync({ exp , skipPrompt , isProjectMutable } = {}) {
|
|
124
144
|
try {
|
|
125
|
-
return await (0, _ensureDependenciesAsync
|
|
145
|
+
return await (0, _ensureDependenciesAsync.ensureDependenciesAsync)(this.projectRoot, {
|
|
126
146
|
exp,
|
|
127
147
|
skipPrompt,
|
|
128
148
|
isProjectMutable,
|
|
@@ -148,16 +168,15 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
148
168
|
}
|
|
149
169
|
}
|
|
150
170
|
/** Return the first TypeScript file in the project. */ async _queryFirstTypeScriptFileAsync() {
|
|
151
|
-
const results = await (0, _glob
|
|
152
|
-
(0, _glob
|
|
171
|
+
const results = await (0, _glob.wrapGlobWithTimeout)(()=>// TODO(Bacon): Use `everyMatch` since a bug causes `anyMatch` to return inaccurate results when used multiple times.
|
|
172
|
+
(0, _glob.everyMatchAsync)("**/*.@(ts|tsx)", {
|
|
153
173
|
cwd: this.projectRoot,
|
|
154
174
|
ignore: [
|
|
155
175
|
"**/@(Carthage|Pods|node_modules)/**",
|
|
156
176
|
"**/*.d.ts",
|
|
157
177
|
"@(ios|android|web|web-build|dist)/**",
|
|
158
178
|
]
|
|
159
|
-
})
|
|
160
|
-
, 5000);
|
|
179
|
+
}), 5000);
|
|
161
180
|
if (results === false) {
|
|
162
181
|
return null;
|
|
163
182
|
}
|
|
@@ -166,12 +185,11 @@ class TypeScriptProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
166
185
|
}
|
|
167
186
|
async _hasTSConfig() {
|
|
168
187
|
const tsConfigPath = _path().default.join(this.projectRoot, "tsconfig.json");
|
|
169
|
-
if (await (0, _dir
|
|
188
|
+
if (await (0, _dir.fileExistsAsync)(tsConfigPath)) {
|
|
170
189
|
return tsConfigPath;
|
|
171
190
|
}
|
|
172
191
|
return null;
|
|
173
192
|
}
|
|
174
193
|
}
|
|
175
|
-
exports.TypeScriptProjectPrerequisite = TypeScriptProjectPrerequisite;
|
|
176
194
|
|
|
177
195
|
//# sourceMappingURL=TypeScriptProjectPrerequisite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/doctor/typescript/TypeScriptProjectPrerequisite.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport fs from 'fs/promises';\nimport path from 'path';\n\nimport { updateTSConfigAsync } from './updateTSConfig';\nimport * as Log from '../../../log';\nimport { fileExistsAsync } from '../../../utils/dir';\nimport { env } from '../../../utils/env';\nimport { memoize } from '../../../utils/fn';\nimport { everyMatchAsync, wrapGlobWithTimeout } from '../../../utils/glob';\nimport { ProjectPrerequisite } from '../Prerequisite';\nimport { ensureDependenciesAsync } from '../dependencies/ensureDependenciesAsync';\n\nconst debug = require('debug')('expo:doctor:typescriptSupport') as typeof console.log;\n\nconst warnDisabled = memoize(() => {\n Log.warn('Skipping TypeScript setup: EXPO_NO_TYPESCRIPT_SETUP is enabled.');\n});\n\n/** Ensure the project has the required TypeScript support settings. */\nexport class TypeScriptProjectPrerequisite extends ProjectPrerequisite<boolean> {\n /**\n * Ensure a project that hasn't explicitly disabled typescript support has all the required packages for running in the browser.\n *\n * @returns `true` if the setup finished and no longer needs to be run again.\n */\n async assertImplementation(): Promise<boolean> {\n if (env.EXPO_NO_TYPESCRIPT_SETUP) {\n warnDisabled();\n return true;\n }\n debug('Ensuring TypeScript support is setup');\n\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n\n // Ensure the project is TypeScript before continuing.\n const intent = await this._getSetupRequirements();\n if (!intent) {\n return false;\n }\n\n // Ensure TypeScript packages are installed\n await this._ensureDependenciesInstalledAsync();\n\n // Update the config\n await updateTSConfigAsync({ tsConfigPath });\n\n return true;\n }\n\n async bootstrapAsync(): Promise<void> {\n if (env.EXPO_NO_TYPESCRIPT_SETUP) {\n warnDisabled();\n return;\n }\n // Ensure TypeScript packages are installed\n await this._ensureDependenciesInstalledAsync({\n skipPrompt: true,\n isProjectMutable: true,\n });\n\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n\n // Update the config\n await updateTSConfigAsync({ tsConfigPath });\n }\n\n /** Exposed for testing. */\n async _getSetupRequirements(): Promise<{\n /** Indicates that TypeScript support is being bootstrapped. */\n isBootstrapping: boolean;\n } | null> {\n const tsConfigPath = await this._hasTSConfig();\n\n // Enable TS setup if the project has a `tsconfig.json`\n if (tsConfigPath) {\n const content = await fs.readFile(tsConfigPath, { encoding: 'utf8' }).then(\n (txt) => txt.trim(),\n // null when the file doesn't exist.\n () => null\n );\n const isBlankConfig = content === '' || content === '{}';\n return { isBootstrapping: isBlankConfig };\n }\n // This is a somewhat heavy check in larger projects.\n // Test that this is reasonably paced by running expo start in `expo/apps/native-component-list`\n const typescriptFile = await this._queryFirstTypeScriptFileAsync();\n if (typescriptFile) {\n return { isBootstrapping: true };\n }\n\n return null;\n }\n\n /** Exposed for testing. */\n async _ensureDependenciesInstalledAsync({\n exp,\n skipPrompt,\n isProjectMutable,\n }: {\n exp?: ExpoConfig;\n skipPrompt?: boolean;\n isProjectMutable?: boolean;\n } = {}): Promise<boolean> {\n try {\n return await ensureDependenciesAsync(this.projectRoot, {\n exp,\n skipPrompt,\n isProjectMutable,\n installMessage: `It looks like you're trying to use TypeScript but don't have the required dependencies installed.`,\n warningMessage:\n \"If you're not using TypeScript, please remove the TypeScript files from your project\",\n requiredPackages: [\n // use typescript/package.json to skip node module cache issues when the user installs\n // the package and attempts to resolve the module in the same process.\n { file: 'typescript/package.json', pkg: 'typescript' },\n { file: '@types/react/package.json', pkg: '@types/react' },\n ],\n });\n } catch (error) {\n // Reset the cached check so we can re-run the check if the user re-runs the command by pressing 'w' in the Terminal UI.\n this.resetAssertion();\n throw error;\n }\n }\n\n /** Return the first TypeScript file in the project. */\n async _queryFirstTypeScriptFileAsync(): Promise<null | string> {\n const results = await wrapGlobWithTimeout(\n () =>\n // TODO(Bacon): Use `everyMatch` since a bug causes `anyMatch` to return inaccurate results when used multiple times.\n everyMatchAsync('**/*.@(ts|tsx)', {\n cwd: this.projectRoot,\n ignore: [\n '**/@(Carthage|Pods|node_modules)/**',\n '**/*.d.ts',\n '@(ios|android|web|web-build|dist)/**',\n ],\n }),\n 5000\n );\n\n if (results === false) {\n return null;\n }\n return results[0] ?? null;\n }\n\n async _hasTSConfig(): Promise<string | null> {\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n if (await fileExistsAsync(tsConfigPath)) {\n return tsConfigPath;\n }\n return null;\n }\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/doctor/typescript/TypeScriptProjectPrerequisite.ts"],"sourcesContent":["import { ExpoConfig } from '@expo/config';\nimport fs from 'fs/promises';\nimport path from 'path';\n\nimport { updateTSConfigAsync } from './updateTSConfig';\nimport * as Log from '../../../log';\nimport { fileExistsAsync } from '../../../utils/dir';\nimport { env } from '../../../utils/env';\nimport { memoize } from '../../../utils/fn';\nimport { everyMatchAsync, wrapGlobWithTimeout } from '../../../utils/glob';\nimport { ProjectPrerequisite } from '../Prerequisite';\nimport { ensureDependenciesAsync } from '../dependencies/ensureDependenciesAsync';\n\nconst debug = require('debug')('expo:doctor:typescriptSupport') as typeof console.log;\n\nconst warnDisabled = memoize(() => {\n Log.warn('Skipping TypeScript setup: EXPO_NO_TYPESCRIPT_SETUP is enabled.');\n});\n\n/** Ensure the project has the required TypeScript support settings. */\nexport class TypeScriptProjectPrerequisite extends ProjectPrerequisite<boolean> {\n /**\n * Ensure a project that hasn't explicitly disabled typescript support has all the required packages for running in the browser.\n *\n * @returns `true` if the setup finished and no longer needs to be run again.\n */\n async assertImplementation(): Promise<boolean> {\n if (env.EXPO_NO_TYPESCRIPT_SETUP) {\n warnDisabled();\n return true;\n }\n debug('Ensuring TypeScript support is setup');\n\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n\n // Ensure the project is TypeScript before continuing.\n const intent = await this._getSetupRequirements();\n if (!intent) {\n return false;\n }\n\n // Ensure TypeScript packages are installed\n await this._ensureDependenciesInstalledAsync();\n\n // Update the config\n await updateTSConfigAsync({ tsConfigPath });\n\n return true;\n }\n\n async bootstrapAsync(): Promise<void> {\n if (env.EXPO_NO_TYPESCRIPT_SETUP) {\n warnDisabled();\n return;\n }\n // Ensure TypeScript packages are installed\n await this._ensureDependenciesInstalledAsync({\n skipPrompt: true,\n isProjectMutable: true,\n });\n\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n\n // Update the config\n await updateTSConfigAsync({ tsConfigPath });\n }\n\n /** Exposed for testing. */\n async _getSetupRequirements(): Promise<{\n /** Indicates that TypeScript support is being bootstrapped. */\n isBootstrapping: boolean;\n } | null> {\n const tsConfigPath = await this._hasTSConfig();\n\n // Enable TS setup if the project has a `tsconfig.json`\n if (tsConfigPath) {\n const content = await fs.readFile(tsConfigPath, { encoding: 'utf8' }).then(\n (txt) => txt.trim(),\n // null when the file doesn't exist.\n () => null\n );\n const isBlankConfig = content === '' || content === '{}';\n return { isBootstrapping: isBlankConfig };\n }\n // This is a somewhat heavy check in larger projects.\n // Test that this is reasonably paced by running expo start in `expo/apps/native-component-list`\n const typescriptFile = await this._queryFirstTypeScriptFileAsync();\n if (typescriptFile) {\n return { isBootstrapping: true };\n }\n\n return null;\n }\n\n /** Exposed for testing. */\n async _ensureDependenciesInstalledAsync({\n exp,\n skipPrompt,\n isProjectMutable,\n }: {\n exp?: ExpoConfig;\n skipPrompt?: boolean;\n isProjectMutable?: boolean;\n } = {}): Promise<boolean> {\n try {\n return await ensureDependenciesAsync(this.projectRoot, {\n exp,\n skipPrompt,\n isProjectMutable,\n installMessage: `It looks like you're trying to use TypeScript but don't have the required dependencies installed.`,\n warningMessage:\n \"If you're not using TypeScript, please remove the TypeScript files from your project\",\n requiredPackages: [\n // use typescript/package.json to skip node module cache issues when the user installs\n // the package and attempts to resolve the module in the same process.\n { file: 'typescript/package.json', pkg: 'typescript' },\n { file: '@types/react/package.json', pkg: '@types/react' },\n ],\n });\n } catch (error) {\n // Reset the cached check so we can re-run the check if the user re-runs the command by pressing 'w' in the Terminal UI.\n this.resetAssertion();\n throw error;\n }\n }\n\n /** Return the first TypeScript file in the project. */\n async _queryFirstTypeScriptFileAsync(): Promise<null | string> {\n const results = await wrapGlobWithTimeout(\n () =>\n // TODO(Bacon): Use `everyMatch` since a bug causes `anyMatch` to return inaccurate results when used multiple times.\n everyMatchAsync('**/*.@(ts|tsx)', {\n cwd: this.projectRoot,\n ignore: [\n '**/@(Carthage|Pods|node_modules)/**',\n '**/*.d.ts',\n '@(ios|android|web|web-build|dist)/**',\n ],\n }),\n 5000\n );\n\n if (results === false) {\n return null;\n }\n return results[0] ?? null;\n }\n\n async _hasTSConfig(): Promise<string | null> {\n const tsConfigPath = path.join(this.projectRoot, 'tsconfig.json');\n if (await fileExistsAsync(tsConfigPath)) {\n return tsConfigPath;\n }\n return null;\n }\n}\n"],"names":["TypeScriptProjectPrerequisite","debug","require","warnDisabled","memoize","Log","warn","ProjectPrerequisite","assertImplementation","env","EXPO_NO_TYPESCRIPT_SETUP","tsConfigPath","path","join","projectRoot","intent","_getSetupRequirements","_ensureDependenciesInstalledAsync","updateTSConfigAsync","bootstrapAsync","skipPrompt","isProjectMutable","_hasTSConfig","content","fs","readFile","encoding","then","txt","trim","isBlankConfig","isBootstrapping","typescriptFile","_queryFirstTypeScriptFileAsync","exp","ensureDependenciesAsync","installMessage","warningMessage","requiredPackages","file","pkg","error","resetAssertion","results","wrapGlobWithTimeout","everyMatchAsync","cwd","ignore","fileExistsAsync"],"mappings":"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"}
|
|
@@ -2,59 +2,84 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
baseTSConfigName: ()=>baseTSConfigName,
|
|
13
|
+
updateTSConfigAsync: ()=>updateTSConfigAsync
|
|
14
|
+
});
|
|
7
15
|
function _jsonFile() {
|
|
8
|
-
const data = _interopRequireDefault(require("@expo/json-file"));
|
|
16
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("@expo/json-file"));
|
|
9
17
|
_jsonFile = function() {
|
|
10
18
|
return data;
|
|
11
19
|
};
|
|
12
20
|
return data;
|
|
13
21
|
}
|
|
14
22
|
function _chalk() {
|
|
15
|
-
const data = _interopRequireDefault(require("chalk"));
|
|
23
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
|
|
16
24
|
_chalk = function() {
|
|
17
25
|
return data;
|
|
18
26
|
};
|
|
19
27
|
return data;
|
|
20
28
|
}
|
|
21
29
|
function _fs() {
|
|
22
|
-
const data = _interopRequireDefault(require("fs"));
|
|
30
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("fs"));
|
|
23
31
|
_fs = function() {
|
|
24
32
|
return data;
|
|
25
33
|
};
|
|
26
34
|
return data;
|
|
27
35
|
}
|
|
28
|
-
|
|
36
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../../log"));
|
|
29
37
|
function _interopRequireDefault(obj) {
|
|
30
38
|
return obj && obj.__esModule ? obj : {
|
|
31
39
|
default: obj
|
|
32
40
|
};
|
|
33
41
|
}
|
|
34
|
-
function
|
|
35
|
-
if (
|
|
42
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
43
|
+
if (typeof WeakMap !== "function") return null;
|
|
44
|
+
var cacheBabelInterop = new WeakMap();
|
|
45
|
+
var cacheNodeInterop = new WeakMap();
|
|
46
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
47
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
48
|
+
})(nodeInterop);
|
|
49
|
+
}
|
|
50
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
51
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
36
52
|
return obj;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
}
|
|
54
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
55
|
+
return {
|
|
56
|
+
default: obj
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
60
|
+
if (cache && cache.has(obj)) {
|
|
61
|
+
return cache.get(obj);
|
|
62
|
+
}
|
|
63
|
+
var newObj = {};
|
|
64
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
65
|
+
for(var key in obj){
|
|
66
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
67
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
68
|
+
if (desc && (desc.get || desc.set)) {
|
|
69
|
+
Object.defineProperty(newObj, key, desc);
|
|
70
|
+
} else {
|
|
71
|
+
newObj[key] = obj[key];
|
|
49
72
|
}
|
|
50
73
|
}
|
|
51
|
-
newObj.default = obj;
|
|
52
|
-
return newObj;
|
|
53
74
|
}
|
|
75
|
+
newObj.default = obj;
|
|
76
|
+
if (cache) {
|
|
77
|
+
cache.set(obj, newObj);
|
|
78
|
+
}
|
|
79
|
+
return newObj;
|
|
54
80
|
}
|
|
55
81
|
var _projectTSConfig;
|
|
56
82
|
const baseTSConfigName = "expo/tsconfig.base";
|
|
57
|
-
exports.baseTSConfigName = baseTSConfigName;
|
|
58
83
|
async function updateTSConfigAsync({ tsConfigPath }) {
|
|
59
84
|
const shouldGenerate = !_fs().default.existsSync(tsConfigPath) || _fs().default.statSync(tsConfigPath).size === 0;
|
|
60
85
|
if (shouldGenerate) {
|
|
@@ -88,29 +113,27 @@ async function updateTSConfigAsync({ tsConfigPath }) {
|
|
|
88
113
|
if (modifications.length === 0) {
|
|
89
114
|
return;
|
|
90
115
|
}
|
|
91
|
-
|
|
116
|
+
_log.log();
|
|
92
117
|
if (shouldGenerate) {
|
|
93
|
-
|
|
118
|
+
_log.log((0, _chalk().default)`{bold TypeScript}: A {cyan tsconfig.json} has been auto-generated`);
|
|
94
119
|
} else {
|
|
95
|
-
|
|
120
|
+
_log.log((0, _chalk().default)`{bold TypeScript}: The {cyan tsconfig.json} has been updated {dim (Use EXPO_NO_TYPESCRIPT_SETUP to skip)}`);
|
|
96
121
|
logModifications(modifications);
|
|
97
122
|
}
|
|
98
|
-
|
|
123
|
+
_log.log();
|
|
99
124
|
}
|
|
100
125
|
function logModifications(modifications) {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
126
|
+
_log.log();
|
|
127
|
+
_log.log((0, _chalk().default)`\u203A {bold Required} modifications made to the {cyan tsconfig.json}:`);
|
|
128
|
+
_log.log();
|
|
104
129
|
// Sort the items based on key name length
|
|
105
|
-
printTable(modifications.sort((a, b)=>a[0].length - b[0].length
|
|
106
|
-
)
|
|
107
|
-
Log.log();
|
|
130
|
+
printTable(modifications.sort((a, b)=>a[0].length - b[0].length));
|
|
131
|
+
_log.log();
|
|
108
132
|
}
|
|
109
133
|
function printTable(items) {
|
|
110
|
-
const tableFormat = (name, msg)=>` ${_chalk().default.bold`${name}`} is now ${_chalk().default.cyan(msg)}
|
|
111
|
-
;
|
|
134
|
+
const tableFormat = (name, msg)=>` ${_chalk().default.bold`${name}`} is now ${_chalk().default.cyan(msg)}`;
|
|
112
135
|
for (const [key, value] of items){
|
|
113
|
-
|
|
136
|
+
_log.log(tableFormat(key, value));
|
|
114
137
|
}
|
|
115
138
|
}
|
|
116
139
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/doctor/typescript/updateTSConfig.ts"],"sourcesContent":["import JsonFile from '@expo/json-file';\nimport chalk from 'chalk';\nimport fs from 'fs';\n\nimport * as Log from '../../../log';\n\nexport const baseTSConfigName = 'expo/tsconfig.base';\n\nexport async function updateTSConfigAsync({\n tsConfigPath,\n}: {\n tsConfigPath: string;\n}): Promise<void> {\n const shouldGenerate = !fs.existsSync(tsConfigPath) || fs.statSync(tsConfigPath).size === 0;\n if (shouldGenerate) {\n await JsonFile.writeAsync(tsConfigPath, { compilerOptions: {} });\n }\n\n const projectTSConfig = JsonFile.read(tsConfigPath, {\n // Some tsconfig.json files have a generated comment in the file.\n json5: true,\n });\n\n projectTSConfig.compilerOptions ??= {};\n\n const modifications: [string, string][] = [];\n\n // If the extends field isn't defined, set it to the expo default\n if (!projectTSConfig.extends) {\n // if (projectTSConfig.extends !== baseTSConfigName) {\n projectTSConfig.extends = baseTSConfigName;\n modifications.push(['extends', baseTSConfigName]);\n }\n\n // If no changes, then quietly bail out\n if (!modifications.length) {\n return;\n }\n\n // Write changes and log out a summary of what changed\n await JsonFile.writeAsync(tsConfigPath, projectTSConfig);\n\n // If no changes, then quietly bail out\n if (modifications.length === 0) {\n return;\n }\n\n Log.log();\n\n if (shouldGenerate) {\n Log.log(chalk`{bold TypeScript}: A {cyan tsconfig.json} has been auto-generated`);\n } else {\n Log.log(\n chalk`{bold TypeScript}: The {cyan tsconfig.json} has been updated {dim (Use EXPO_NO_TYPESCRIPT_SETUP to skip)}`\n );\n logModifications(modifications);\n }\n Log.log();\n}\n\nfunction logModifications(modifications: string[][]) {\n Log.log();\n\n Log.log(chalk`\\u203A {bold Required} modifications made to the {cyan tsconfig.json}:`);\n\n Log.log();\n\n // Sort the items based on key name length\n printTable(modifications.sort((a, b) => a[0].length - b[0].length));\n\n Log.log();\n}\n\nfunction printTable(items: string[][]) {\n const tableFormat = (name: string, msg: string) =>\n ` ${chalk.bold`${name}`} is now ${chalk.cyan(msg)}`;\n for (const [key, value] of items) {\n Log.log(tableFormat(key, value));\n }\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/doctor/typescript/updateTSConfig.ts"],"sourcesContent":["import JsonFile from '@expo/json-file';\nimport chalk from 'chalk';\nimport fs from 'fs';\n\nimport * as Log from '../../../log';\n\nexport const baseTSConfigName = 'expo/tsconfig.base';\n\nexport async function updateTSConfigAsync({\n tsConfigPath,\n}: {\n tsConfigPath: string;\n}): Promise<void> {\n const shouldGenerate = !fs.existsSync(tsConfigPath) || fs.statSync(tsConfigPath).size === 0;\n if (shouldGenerate) {\n await JsonFile.writeAsync(tsConfigPath, { compilerOptions: {} });\n }\n\n const projectTSConfig = JsonFile.read(tsConfigPath, {\n // Some tsconfig.json files have a generated comment in the file.\n json5: true,\n });\n\n projectTSConfig.compilerOptions ??= {};\n\n const modifications: [string, string][] = [];\n\n // If the extends field isn't defined, set it to the expo default\n if (!projectTSConfig.extends) {\n // if (projectTSConfig.extends !== baseTSConfigName) {\n projectTSConfig.extends = baseTSConfigName;\n modifications.push(['extends', baseTSConfigName]);\n }\n\n // If no changes, then quietly bail out\n if (!modifications.length) {\n return;\n }\n\n // Write changes and log out a summary of what changed\n await JsonFile.writeAsync(tsConfigPath, projectTSConfig);\n\n // If no changes, then quietly bail out\n if (modifications.length === 0) {\n return;\n }\n\n Log.log();\n\n if (shouldGenerate) {\n Log.log(chalk`{bold TypeScript}: A {cyan tsconfig.json} has been auto-generated`);\n } else {\n Log.log(\n chalk`{bold TypeScript}: The {cyan tsconfig.json} has been updated {dim (Use EXPO_NO_TYPESCRIPT_SETUP to skip)}`\n );\n logModifications(modifications);\n }\n Log.log();\n}\n\nfunction logModifications(modifications: string[][]) {\n Log.log();\n\n Log.log(chalk`\\u203A {bold Required} modifications made to the {cyan tsconfig.json}:`);\n\n Log.log();\n\n // Sort the items based on key name length\n printTable(modifications.sort((a, b) => a[0].length - b[0].length));\n\n Log.log();\n}\n\nfunction printTable(items: string[][]) {\n const tableFormat = (name: string, msg: string) =>\n ` ${chalk.bold`${name}`} is now ${chalk.cyan(msg)}`;\n for (const [key, value] of items) {\n Log.log(tableFormat(key, value));\n }\n}\n"],"names":["baseTSConfigName","updateTSConfigAsync","projectTSConfig","tsConfigPath","shouldGenerate","fs","existsSync","statSync","size","JsonFile","writeAsync","compilerOptions","read","json5","modifications","extends","push","length","Log","log","chalk","logModifications","printTable","sort","a","b","items","tableFormat","name","msg","bold","cyan","key","value"],"mappings":"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"}
|
|
@@ -2,7 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", {
|
|
3
3
|
value: true
|
|
4
4
|
});
|
|
5
|
-
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
WebSupportProjectPrerequisite: ()=>WebSupportProjectPrerequisite,
|
|
13
|
+
isWebPlatformExcluded: ()=>isWebPlatformExcluded
|
|
14
|
+
});
|
|
6
15
|
function _config() {
|
|
7
16
|
const data = require("@expo/config");
|
|
8
17
|
_config = function() {
|
|
@@ -11,48 +20,66 @@ function _config() {
|
|
|
11
20
|
return data;
|
|
12
21
|
}
|
|
13
22
|
function _chalk() {
|
|
14
|
-
const data = _interopRequireDefault(require("chalk"));
|
|
23
|
+
const data = /*#__PURE__*/ _interopRequireDefault(require("chalk"));
|
|
15
24
|
_chalk = function() {
|
|
16
25
|
return data;
|
|
17
26
|
};
|
|
18
27
|
return data;
|
|
19
28
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
29
|
+
const _log = /*#__PURE__*/ _interopRequireWildcard(require("../../../log"));
|
|
30
|
+
const _env = require("../../../utils/env");
|
|
31
|
+
const _platformBundlers = require("../../server/platformBundlers");
|
|
32
|
+
const _prerequisite = require("../Prerequisite");
|
|
33
|
+
const _ensureDependenciesAsync = require("../dependencies/ensureDependenciesAsync");
|
|
25
34
|
function _interopRequireDefault(obj) {
|
|
26
35
|
return obj && obj.__esModule ? obj : {
|
|
27
36
|
default: obj
|
|
28
37
|
};
|
|
29
38
|
}
|
|
30
|
-
function
|
|
31
|
-
if (
|
|
39
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
40
|
+
if (typeof WeakMap !== "function") return null;
|
|
41
|
+
var cacheBabelInterop = new WeakMap();
|
|
42
|
+
var cacheNodeInterop = new WeakMap();
|
|
43
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
44
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
45
|
+
})(nodeInterop);
|
|
46
|
+
}
|
|
47
|
+
function _interopRequireWildcard(obj, nodeInterop) {
|
|
48
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
32
49
|
return obj;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
50
|
+
}
|
|
51
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
52
|
+
return {
|
|
53
|
+
default: obj
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
57
|
+
if (cache && cache.has(obj)) {
|
|
58
|
+
return cache.get(obj);
|
|
59
|
+
}
|
|
60
|
+
var newObj = {};
|
|
61
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
62
|
+
for(var key in obj){
|
|
63
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
64
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
65
|
+
if (desc && (desc.get || desc.set)) {
|
|
66
|
+
Object.defineProperty(newObj, key, desc);
|
|
67
|
+
} else {
|
|
68
|
+
newObj[key] = obj[key];
|
|
45
69
|
}
|
|
46
70
|
}
|
|
47
|
-
newObj.default = obj;
|
|
48
|
-
return newObj;
|
|
49
71
|
}
|
|
72
|
+
newObj.default = obj;
|
|
73
|
+
if (cache) {
|
|
74
|
+
cache.set(obj, newObj);
|
|
75
|
+
}
|
|
76
|
+
return newObj;
|
|
50
77
|
}
|
|
51
78
|
const debug = require("debug")("expo:doctor:webSupport");
|
|
52
79
|
class WebSupportProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
53
80
|
/** Ensure a project that hasn't explicitly disabled web support has all the required packages for running in the browser. */ async assertImplementation() {
|
|
54
81
|
if (_env.env.EXPO_NO_WEB_SETUP) {
|
|
55
|
-
|
|
82
|
+
_log.warn("Skipping web setup: EXPO_NO_WEB_SETUP is enabled.");
|
|
56
83
|
return;
|
|
57
84
|
}
|
|
58
85
|
debug("Ensuring web support is setup");
|
|
@@ -63,12 +90,12 @@ class WebSupportProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
63
90
|
});
|
|
64
91
|
}
|
|
65
92
|
/** Exposed for testing. */ async _shouldSetupWebSupportAsync() {
|
|
66
|
-
const config = _config().getConfig(this.projectRoot);
|
|
93
|
+
const config = (0, _config().getConfig)(this.projectRoot);
|
|
67
94
|
// Detect if the 'web' string is purposefully missing from the platforms array.
|
|
68
95
|
if (isWebPlatformExcluded(config.rootConfig)) {
|
|
69
96
|
// Get exact config description with paths.
|
|
70
|
-
const configName = _config().getProjectConfigDescriptionWithPaths(this.projectRoot, config);
|
|
71
|
-
throw new _prerequisite.PrerequisiteCommandError("WEB_SUPPORT", _chalk().default`Skipping web setup: {bold "web"} is not included in the project ${configName} {bold "platforms"} array.`);
|
|
97
|
+
const configName = (0, _config().getProjectConfigDescriptionWithPaths)(this.projectRoot, config);
|
|
98
|
+
throw new _prerequisite.PrerequisiteCommandError("WEB_SUPPORT", (0, _chalk().default)`Skipping web setup: {bold "web"} is not included in the project ${configName} {bold "platforms"} array.`);
|
|
72
99
|
}
|
|
73
100
|
return config;
|
|
74
101
|
}
|
|
@@ -85,7 +112,7 @@ class WebSupportProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
85
112
|
pkg: "react-dom"
|
|
86
113
|
},
|
|
87
114
|
];
|
|
88
|
-
const bundler = (0, _platformBundlers
|
|
115
|
+
const bundler = (0, _platformBundlers.getPlatformBundlers)(this.projectRoot, exp).web;
|
|
89
116
|
// Only include webpack-config if bundler is webpack.
|
|
90
117
|
if (bundler === "webpack") {
|
|
91
118
|
requiredPackages.push(// `webpack` and `webpack-dev-server` should be installed in the `@expo/webpack-config`
|
|
@@ -101,13 +128,13 @@ class WebSupportProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
101
128
|
});
|
|
102
129
|
}
|
|
103
130
|
try {
|
|
104
|
-
return await (0, _ensureDependenciesAsync
|
|
131
|
+
return await (0, _ensureDependenciesAsync.ensureDependenciesAsync)(this.projectRoot, {
|
|
105
132
|
// This never seems to work when prompting, installing, and running -- instead just inform the user to run the install command and try again.
|
|
106
133
|
skipPrompt: true,
|
|
107
134
|
isProjectMutable: false,
|
|
108
135
|
exp,
|
|
109
136
|
installMessage: `It looks like you're trying to use web support but don't have the required dependencies installed.`,
|
|
110
|
-
warningMessage: _chalk().default`If you're not using web, please ensure you remove the {bold "web"} string from the platforms array in the project Expo config.`,
|
|
137
|
+
warningMessage: (0, _chalk().default)`If you're not using web, please ensure you remove the {bold "web"} string from the platforms array in the project Expo config.`,
|
|
111
138
|
requiredPackages
|
|
112
139
|
});
|
|
113
140
|
} catch (error) {
|
|
@@ -117,7 +144,6 @@ class WebSupportProjectPrerequisite extends _prerequisite.ProjectPrerequisite {
|
|
|
117
144
|
}
|
|
118
145
|
}
|
|
119
146
|
}
|
|
120
|
-
exports.WebSupportProjectPrerequisite = WebSupportProjectPrerequisite;
|
|
121
147
|
function isWebPlatformExcluded(rootConfig) {
|
|
122
148
|
var ref, ref1, ref2;
|
|
123
149
|
// Detect if the 'web' string is purposefully missing from the platforms array.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/doctor/web/WebSupportProjectPrerequisite.ts"],"sourcesContent":["import {\n AppJSONConfig,\n ExpoConfig,\n getConfig,\n getProjectConfigDescriptionWithPaths,\n ProjectConfig,\n} from '@expo/config';\nimport chalk from 'chalk';\n\nimport * as Log from '../../../log';\nimport { env } from '../../../utils/env';\nimport { getPlatformBundlers } from '../../server/platformBundlers';\nimport { PrerequisiteCommandError, ProjectPrerequisite } from '../Prerequisite';\nimport { ensureDependenciesAsync } from '../dependencies/ensureDependenciesAsync';\nimport { ResolvedPackage } from '../dependencies/getMissingPackages';\n\nconst debug = require('debug')('expo:doctor:webSupport') as typeof console.log;\n\n/** Ensure the project has the required web support settings. */\nexport class WebSupportProjectPrerequisite extends ProjectPrerequisite {\n /** Ensure a project that hasn't explicitly disabled web support has all the required packages for running in the browser. */\n async assertImplementation(): Promise<void> {\n if (env.EXPO_NO_WEB_SETUP) {\n Log.warn('Skipping web setup: EXPO_NO_WEB_SETUP is enabled.');\n return;\n }\n debug('Ensuring web support is setup');\n\n const result = await this._shouldSetupWebSupportAsync();\n\n // Ensure web packages are installed\n await this._ensureWebDependenciesInstalledAsync({ exp: result.exp });\n }\n\n /** Exposed for testing. */\n async _shouldSetupWebSupportAsync(): Promise<ProjectConfig> {\n const config = getConfig(this.projectRoot);\n\n // Detect if the 'web' string is purposefully missing from the platforms array.\n if (isWebPlatformExcluded(config.rootConfig)) {\n // Get exact config description with paths.\n const configName = getProjectConfigDescriptionWithPaths(this.projectRoot, config);\n throw new PrerequisiteCommandError(\n 'WEB_SUPPORT',\n chalk`Skipping web setup: {bold \"web\"} is not included in the project ${configName} {bold \"platforms\"} array.`\n );\n }\n\n return config;\n }\n\n /** Exposed for testing. */\n async _ensureWebDependenciesInstalledAsync({ exp }: { exp: ExpoConfig }): Promise<boolean> {\n const requiredPackages: ResolvedPackage[] = [\n // use react-native-web/package.json to skip node module cache issues when the user installs\n // the package and attempts to resolve the module in the same process.\n { file: 'react-native-web/package.json', pkg: 'react-native-web' },\n { file: 'react-dom/package.json', pkg: 'react-dom' },\n ];\n\n const bundler = getPlatformBundlers(this.projectRoot, exp).web;\n // Only include webpack-config if bundler is webpack.\n if (bundler === 'webpack') {\n requiredPackages.push(\n // `webpack` and `webpack-dev-server` should be installed in the `@expo/webpack-config`\n {\n file: '@expo/webpack-config/package.json',\n pkg: '@expo/webpack-config',\n dev: true,\n }\n );\n } else if (bundler === 'metro') {\n requiredPackages.push({\n file: '@expo/metro-runtime/package.json',\n pkg: '@expo/metro-runtime',\n });\n }\n\n try {\n return await ensureDependenciesAsync(this.projectRoot, {\n // This never seems to work when prompting, installing, and running -- instead just inform the user to run the install command and try again.\n skipPrompt: true,\n isProjectMutable: false,\n exp,\n installMessage: `It looks like you're trying to use web support but don't have the required dependencies installed.`,\n warningMessage: chalk`If you're not using web, please ensure you remove the {bold \"web\"} string from the platforms array in the project Expo config.`,\n requiredPackages,\n });\n } catch (error) {\n // Reset the cached check so we can re-run the check if the user re-runs the command by pressing 'w' in the Terminal UI.\n this.resetAssertion();\n throw error;\n }\n }\n}\n\n/** Return `true` if the `web` platform is purposefully excluded from the project Expo config. */\nexport function isWebPlatformExcluded(rootConfig: AppJSONConfig): boolean {\n // Detect if the 'web' string is purposefully missing from the platforms array.\n const isWebExcluded =\n Array.isArray(rootConfig?.expo?.platforms) &&\n !!rootConfig.expo?.platforms.length &&\n !rootConfig.expo?.platforms.includes('web');\n return isWebExcluded;\n}\n"],"names":["
|
|
1
|
+
{"version":3,"sources":["../../../../../src/start/doctor/web/WebSupportProjectPrerequisite.ts"],"sourcesContent":["import {\n AppJSONConfig,\n ExpoConfig,\n getConfig,\n getProjectConfigDescriptionWithPaths,\n ProjectConfig,\n} from '@expo/config';\nimport chalk from 'chalk';\n\nimport * as Log from '../../../log';\nimport { env } from '../../../utils/env';\nimport { getPlatformBundlers } from '../../server/platformBundlers';\nimport { PrerequisiteCommandError, ProjectPrerequisite } from '../Prerequisite';\nimport { ensureDependenciesAsync } from '../dependencies/ensureDependenciesAsync';\nimport { ResolvedPackage } from '../dependencies/getMissingPackages';\n\nconst debug = require('debug')('expo:doctor:webSupport') as typeof console.log;\n\n/** Ensure the project has the required web support settings. */\nexport class WebSupportProjectPrerequisite extends ProjectPrerequisite {\n /** Ensure a project that hasn't explicitly disabled web support has all the required packages for running in the browser. */\n async assertImplementation(): Promise<void> {\n if (env.EXPO_NO_WEB_SETUP) {\n Log.warn('Skipping web setup: EXPO_NO_WEB_SETUP is enabled.');\n return;\n }\n debug('Ensuring web support is setup');\n\n const result = await this._shouldSetupWebSupportAsync();\n\n // Ensure web packages are installed\n await this._ensureWebDependenciesInstalledAsync({ exp: result.exp });\n }\n\n /** Exposed for testing. */\n async _shouldSetupWebSupportAsync(): Promise<ProjectConfig> {\n const config = getConfig(this.projectRoot);\n\n // Detect if the 'web' string is purposefully missing from the platforms array.\n if (isWebPlatformExcluded(config.rootConfig)) {\n // Get exact config description with paths.\n const configName = getProjectConfigDescriptionWithPaths(this.projectRoot, config);\n throw new PrerequisiteCommandError(\n 'WEB_SUPPORT',\n chalk`Skipping web setup: {bold \"web\"} is not included in the project ${configName} {bold \"platforms\"} array.`\n );\n }\n\n return config;\n }\n\n /** Exposed for testing. */\n async _ensureWebDependenciesInstalledAsync({ exp }: { exp: ExpoConfig }): Promise<boolean> {\n const requiredPackages: ResolvedPackage[] = [\n // use react-native-web/package.json to skip node module cache issues when the user installs\n // the package and attempts to resolve the module in the same process.\n { file: 'react-native-web/package.json', pkg: 'react-native-web' },\n { file: 'react-dom/package.json', pkg: 'react-dom' },\n ];\n\n const bundler = getPlatformBundlers(this.projectRoot, exp).web;\n // Only include webpack-config if bundler is webpack.\n if (bundler === 'webpack') {\n requiredPackages.push(\n // `webpack` and `webpack-dev-server` should be installed in the `@expo/webpack-config`\n {\n file: '@expo/webpack-config/package.json',\n pkg: '@expo/webpack-config',\n dev: true,\n }\n );\n } else if (bundler === 'metro') {\n requiredPackages.push({\n file: '@expo/metro-runtime/package.json',\n pkg: '@expo/metro-runtime',\n });\n }\n\n try {\n return await ensureDependenciesAsync(this.projectRoot, {\n // This never seems to work when prompting, installing, and running -- instead just inform the user to run the install command and try again.\n skipPrompt: true,\n isProjectMutable: false,\n exp,\n installMessage: `It looks like you're trying to use web support but don't have the required dependencies installed.`,\n warningMessage: chalk`If you're not using web, please ensure you remove the {bold \"web\"} string from the platforms array in the project Expo config.`,\n requiredPackages,\n });\n } catch (error) {\n // Reset the cached check so we can re-run the check if the user re-runs the command by pressing 'w' in the Terminal UI.\n this.resetAssertion();\n throw error;\n }\n }\n}\n\n/** Return `true` if the `web` platform is purposefully excluded from the project Expo config. */\nexport function isWebPlatformExcluded(rootConfig: AppJSONConfig): boolean {\n // Detect if the 'web' string is purposefully missing from the platforms array.\n const isWebExcluded =\n Array.isArray(rootConfig?.expo?.platforms) &&\n !!rootConfig.expo?.platforms.length &&\n !rootConfig.expo?.platforms.includes('web');\n return isWebExcluded;\n}\n"],"names":["WebSupportProjectPrerequisite","isWebPlatformExcluded","debug","require","ProjectPrerequisite","assertImplementation","env","EXPO_NO_WEB_SETUP","Log","warn","result","_shouldSetupWebSupportAsync","_ensureWebDependenciesInstalledAsync","exp","config","getConfig","projectRoot","rootConfig","configName","getProjectConfigDescriptionWithPaths","PrerequisiteCommandError","chalk","requiredPackages","file","pkg","bundler","getPlatformBundlers","web","push","dev","ensureDependenciesAsync","skipPrompt","isProjectMutable","installMessage","warningMessage","error","resetAssertion","isWebExcluded","Array","isArray","expo","platforms","length","includes"],"mappings":"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"}
|