@expo/cli 0.0.0-canary-20231122-1af9191
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/README.md +144 -0
- package/build/bin/cli +272 -0
- package/build/bin/cli.map +1 -0
- package/build/src/api/endpoint.js +27 -0
- package/build/src/api/endpoint.js.map +1 -0
- package/build/src/api/getExpoGoIntermediateCertificate.js +19 -0
- package/build/src/api/getExpoGoIntermediateCertificate.js.map +1 -0
- package/build/src/api/getExpoSchema.js +69 -0
- package/build/src/api/getExpoSchema.js.map +1 -0
- package/build/src/api/getNativeModuleVersions.js +31 -0
- package/build/src/api/getNativeModuleVersions.js.map +1 -0
- package/build/src/api/getProjectDevelopmentCertificate.js +22 -0
- package/build/src/api/getProjectDevelopmentCertificate.js.map +1 -0
- package/build/src/api/getVersions.js +24 -0
- package/build/src/api/getVersions.js.map +1 -0
- package/build/src/api/graphql/client.js +106 -0
- package/build/src/api/graphql/client.js.map +1 -0
- package/build/src/api/graphql/queries/AppQuery.js +39 -0
- package/build/src/api/graphql/queries/AppQuery.js.map +1 -0
- package/build/src/api/graphql/queries/UserQuery.js +51 -0
- package/build/src/api/graphql/queries/UserQuery.js.map +1 -0
- package/build/src/api/graphql/types/App.js +23 -0
- package/build/src/api/graphql/types/App.js.map +1 -0
- package/build/src/api/rest/cache/FileSystemCache.js +79 -0
- package/build/src/api/rest/cache/FileSystemCache.js.map +1 -0
- package/build/src/api/rest/cache/response.js +31 -0
- package/build/src/api/rest/cache/response.js.map +1 -0
- package/build/src/api/rest/cache/wrapFetchWithCache.js +156 -0
- package/build/src/api/rest/cache/wrapFetchWithCache.js.map +1 -0
- package/build/src/api/rest/client.js +109 -0
- package/build/src/api/rest/client.js.map +1 -0
- package/build/src/api/rest/client.types.js +6 -0
- package/build/src/api/rest/client.types.js.map +1 -0
- package/build/src/api/rest/wrapFetchWithBaseUrl.js +23 -0
- package/build/src/api/rest/wrapFetchWithBaseUrl.js.map +1 -0
- package/build/src/api/rest/wrapFetchWithOffline.js +19 -0
- package/build/src/api/rest/wrapFetchWithOffline.js.map +1 -0
- package/build/src/api/rest/wrapFetchWithProgress.js +64 -0
- package/build/src/api/rest/wrapFetchWithProgress.js.map +1 -0
- package/build/src/api/rest/wrapFetchWithProxy.js +26 -0
- package/build/src/api/rest/wrapFetchWithProxy.js.map +1 -0
- package/build/src/api/settings.js +20 -0
- package/build/src/api/settings.js.map +1 -0
- package/build/src/api/updateDevelopmentSession.js +74 -0
- package/build/src/api/updateDevelopmentSession.js.map +1 -0
- package/build/src/api/user/UserSettings.js +71 -0
- package/build/src/api/user/UserSettings.js.map +1 -0
- package/build/src/api/user/actions.js +107 -0
- package/build/src/api/user/actions.js.map +1 -0
- package/build/src/api/user/expoSsoLauncher.js +127 -0
- package/build/src/api/user/expoSsoLauncher.js.map +1 -0
- package/build/src/api/user/otp.js +139 -0
- package/build/src/api/user/otp.js.map +1 -0
- package/build/src/api/user/user.js +144 -0
- package/build/src/api/user/user.js.map +1 -0
- package/build/src/config/configAsync.js +137 -0
- package/build/src/config/configAsync.js.map +1 -0
- package/build/src/config/index.js +75 -0
- package/build/src/config/index.js.map +1 -0
- package/build/src/customize/customizeAsync.js +43 -0
- package/build/src/customize/customizeAsync.js.map +1 -0
- package/build/src/customize/generate.js +104 -0
- package/build/src/customize/generate.js.map +1 -0
- package/build/src/customize/index.js +41 -0
- package/build/src/customize/index.js.map +1 -0
- package/build/src/customize/resolveOptions.js +18 -0
- package/build/src/customize/resolveOptions.js.map +1 -0
- package/build/src/customize/templates.js +126 -0
- package/build/src/customize/templates.js.map +1 -0
- package/build/src/customize/typescript.js +56 -0
- package/build/src/customize/typescript.js.map +1 -0
- package/build/src/export/createMetadataJson.js +42 -0
- package/build/src/export/createMetadataJson.js.map +1 -0
- package/build/src/export/embed/exportEmbedAsync.js +146 -0
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -0
- package/build/src/export/embed/index.js +115 -0
- package/build/src/export/embed/index.js.map +1 -0
- package/build/src/export/embed/resolveOptions.js +59 -0
- package/build/src/export/embed/resolveOptions.js.map +1 -0
- package/build/src/export/embed/xcodeCompilerLogger.js +97 -0
- package/build/src/export/embed/xcodeCompilerLogger.js.map +1 -0
- package/build/src/export/exportApp.js +192 -0
- package/build/src/export/exportApp.js.map +1 -0
- package/build/src/export/exportAssets.js +176 -0
- package/build/src/export/exportAssets.js.map +1 -0
- package/build/src/export/exportAsync.js +52 -0
- package/build/src/export/exportAsync.js.map +1 -0
- package/build/src/export/exportHermes.js +124 -0
- package/build/src/export/exportHermes.js.map +1 -0
- package/build/src/export/exportStaticAsync.js +278 -0
- package/build/src/export/exportStaticAsync.js.map +1 -0
- package/build/src/export/favicon.js +89 -0
- package/build/src/export/favicon.js.map +1 -0
- package/build/src/export/fork-bundleAsync.js +215 -0
- package/build/src/export/fork-bundleAsync.js.map +1 -0
- package/build/src/export/getPublicExpoManifest.js +28 -0
- package/build/src/export/getPublicExpoManifest.js.map +1 -0
- package/build/src/export/getResolvedLocales.js +35 -0
- package/build/src/export/getResolvedLocales.js.map +1 -0
- package/build/src/export/html.js +21 -0
- package/build/src/export/html.js.map +1 -0
- package/build/src/export/index.js +91 -0
- package/build/src/export/index.js.map +1 -0
- package/build/src/export/metroAssetLocalPath.js +101 -0
- package/build/src/export/metroAssetLocalPath.js.map +1 -0
- package/build/src/export/persistMetroAssets.js +190 -0
- package/build/src/export/persistMetroAssets.js.map +1 -0
- package/build/src/export/publicFolder.js +34 -0
- package/build/src/export/publicFolder.js.map +1 -0
- package/build/src/export/resolveOptions.js +63 -0
- package/build/src/export/resolveOptions.js.map +1 -0
- package/build/src/export/saveAssets.js +189 -0
- package/build/src/export/saveAssets.js.map +1 -0
- package/build/src/export/web/exportWebAsync.js +40 -0
- package/build/src/export/web/exportWebAsync.js.map +1 -0
- package/build/src/export/web/index.js +66 -0
- package/build/src/export/web/index.js.map +1 -0
- package/build/src/export/web/resolveOptions.js +13 -0
- package/build/src/export/web/resolveOptions.js.map +1 -0
- package/build/src/export/writeContents.js +26 -0
- package/build/src/export/writeContents.js.map +1 -0
- package/build/src/graphql/generated.js +486 -0
- package/build/src/graphql/generated.js.map +1 -0
- package/build/src/install/applyPlugins.js +52 -0
- package/build/src/install/applyPlugins.js.map +1 -0
- package/build/src/install/checkPackages.js +78 -0
- package/build/src/install/checkPackages.js.map +1 -0
- package/build/src/install/fixPackages.js +84 -0
- package/build/src/install/fixPackages.js.map +1 -0
- package/build/src/install/index.js +51 -0
- package/build/src/install/index.js.map +1 -0
- package/build/src/install/installAsync.js +134 -0
- package/build/src/install/installAsync.js.map +1 -0
- package/build/src/install/installExpoPackage.js +79 -0
- package/build/src/install/installExpoPackage.js.map +1 -0
- package/build/src/install/resolveOptions.js +53 -0
- package/build/src/install/resolveOptions.js.map +1 -0
- package/build/src/install/utils/autoAddConfigPlugins.js +66 -0
- package/build/src/install/utils/autoAddConfigPlugins.js.map +1 -0
- package/build/src/log.js +74 -0
- package/build/src/log.js.map +1 -0
- package/build/src/login/index.js +67 -0
- package/build/src/login/index.js.map +1 -0
- package/build/src/logout/index.js +48 -0
- package/build/src/logout/index.js.map +1 -0
- package/build/src/prebuild/clearNativeFolder.js +143 -0
- package/build/src/prebuild/clearNativeFolder.js.map +1 -0
- package/build/src/prebuild/configureProjectAsync.js +64 -0
- package/build/src/prebuild/configureProjectAsync.js.map +1 -0
- package/build/src/prebuild/copyTemplateFiles.js +67 -0
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -0
- package/build/src/prebuild/ensureConfigAsync.js +75 -0
- package/build/src/prebuild/ensureConfigAsync.js.map +1 -0
- package/build/src/prebuild/index.js +98 -0
- package/build/src/prebuild/index.js.map +1 -0
- package/build/src/prebuild/prebuildAsync.js +146 -0
- package/build/src/prebuild/prebuildAsync.js.map +1 -0
- package/build/src/prebuild/resolveOptions.js +115 -0
- package/build/src/prebuild/resolveOptions.js.map +1 -0
- package/build/src/prebuild/resolveTemplate.js +163 -0
- package/build/src/prebuild/resolveTemplate.js.map +1 -0
- package/build/src/prebuild/updateFromTemplate.js +103 -0
- package/build/src/prebuild/updateFromTemplate.js.map +1 -0
- package/build/src/prebuild/updatePackageJson.js +227 -0
- package/build/src/prebuild/updatePackageJson.js.map +1 -0
- package/build/src/prebuild/validateTemplatePlatforms.js +48 -0
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -0
- package/build/src/register/index.js +48 -0
- package/build/src/register/index.js.map +1 -0
- package/build/src/register/registerAsync.js +34 -0
- package/build/src/register/registerAsync.js.map +1 -0
- package/build/src/run/android/index.js +97 -0
- package/build/src/run/android/index.js.map +1 -0
- package/build/src/run/android/resolveDevice.js +23 -0
- package/build/src/run/android/resolveDevice.js.map +1 -0
- package/build/src/run/android/resolveGradleProps.js +37 -0
- package/build/src/run/android/resolveGradleProps.js.map +1 -0
- package/build/src/run/android/resolveInstallApkName.js +51 -0
- package/build/src/run/android/resolveInstallApkName.js.map +1 -0
- package/build/src/run/android/resolveLaunchProps.js +32 -0
- package/build/src/run/android/resolveLaunchProps.js.map +1 -0
- package/build/src/run/android/resolveOptions.js +25 -0
- package/build/src/run/android/resolveOptions.js.map +1 -0
- package/build/src/run/android/runAndroidAsync.js +83 -0
- package/build/src/run/android/runAndroidAsync.js.map +1 -0
- package/build/src/run/ensureNativeProject.js +36 -0
- package/build/src/run/ensureNativeProject.js.map +1 -0
- package/build/src/run/hints.js +22 -0
- package/build/src/run/hints.js.map +1 -0
- package/build/src/run/ios/XcodeBuild.js +276 -0
- package/build/src/run/ios/XcodeBuild.js.map +1 -0
- package/build/src/run/ios/XcodeBuild.types.js +6 -0
- package/build/src/run/ios/XcodeBuild.types.js.map +1 -0
- package/build/src/run/ios/appleDevice/AppleDevice.js +195 -0
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -0
- package/build/src/run/ios/appleDevice/ClientManager.js +165 -0
- package/build/src/run/ios/appleDevice/ClientManager.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/AFCClient.js +195 -0
- package/build/src/run/ios/appleDevice/client/AFCClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js +107 -0
- package/build/src/run/ios/appleDevice/client/DebugserverClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js +97 -0
- package/build/src/run/ios/appleDevice/client/InstallationProxyClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js +144 -0
- package/build/src/run/ios/appleDevice/client/LockdowndClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js +91 -0
- package/build/src/run/ios/appleDevice/client/MobileImageMounterClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/ServiceClient.js +21 -0
- package/build/src/run/ios/appleDevice/client/ServiceClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js +117 -0
- package/build/src/run/ios/appleDevice/client/UsbmuxdClient.js.map +1 -0
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js +90 -0
- package/build/src/run/ios/appleDevice/installOnDeviceAsync.js.map +1 -0
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js +332 -0
- package/build/src/run/ios/appleDevice/protocol/AFCProtocol.js.map +1 -0
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js +133 -0
- package/build/src/run/ios/appleDevice/protocol/AbstractProtocol.js.map +1 -0
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js +126 -0
- package/build/src/run/ios/appleDevice/protocol/GDBProtocol.js.map +1 -0
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js +74 -0
- package/build/src/run/ios/appleDevice/protocol/LockdownProtocol.js.map +1 -0
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js +65 -0
- package/build/src/run/ios/appleDevice/protocol/UsbmuxProtocol.js.map +1 -0
- package/build/src/run/ios/codeSigning/Security.js +85 -0
- package/build/src/run/ios/codeSigning/Security.js.map +1 -0
- package/build/src/run/ios/codeSigning/configureCodeSigning.js +77 -0
- package/build/src/run/ios/codeSigning/configureCodeSigning.js.map +1 -0
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js +102 -0
- package/build/src/run/ios/codeSigning/resolveCertificateSigningIdentity.js.map +1 -0
- package/build/src/run/ios/codeSigning/settings.js +21 -0
- package/build/src/run/ios/codeSigning/settings.js.map +1 -0
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js +45 -0
- package/build/src/run/ios/codeSigning/simulatorCodeSigning.js.map +1 -0
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js +79 -0
- package/build/src/run/ios/codeSigning/xcodeCodeSigning.js.map +1 -0
- package/build/src/run/ios/index.js +98 -0
- package/build/src/run/ios/index.js.map +1 -0
- package/build/src/run/ios/launchApp.js +75 -0
- package/build/src/run/ios/launchApp.js.map +1 -0
- package/build/src/run/ios/options/promptDevice.js +50 -0
- package/build/src/run/ios/options/promptDevice.js.map +1 -0
- package/build/src/run/ios/options/resolveDevice.js +92 -0
- package/build/src/run/ios/options/resolveDevice.js.map +1 -0
- package/build/src/run/ios/options/resolveNativeScheme.js +101 -0
- package/build/src/run/ios/options/resolveNativeScheme.js.map +1 -0
- package/build/src/run/ios/options/resolveOptions.js +44 -0
- package/build/src/run/ios/options/resolveOptions.js.map +1 -0
- package/build/src/run/ios/options/resolveXcodeProject.js +39 -0
- package/build/src/run/ios/options/resolveXcodeProject.js.map +1 -0
- package/build/src/run/ios/runIosAsync.js +93 -0
- package/build/src/run/ios/runIosAsync.js.map +1 -0
- package/build/src/run/resolveBundlerProps.js +34 -0
- package/build/src/run/resolveBundlerProps.js.map +1 -0
- package/build/src/run/startBundler.js +82 -0
- package/build/src/run/startBundler.js.map +1 -0
- package/build/src/start/doctor/Prerequisite.js +47 -0
- package/build/src/start/doctor/Prerequisite.js.map +1 -0
- package/build/src/start/doctor/SecurityBinPrerequisite.js +27 -0
- package/build/src/start/doctor/SecurityBinPrerequisite.js.map +1 -0
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js +70 -0
- package/build/src/start/doctor/apple/SimulatorAppPrerequisite.js.map +1 -0
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js +69 -0
- package/build/src/start/doctor/apple/XcodeDeveloperDiskImagePrerequisite.js.map +1 -0
- package/build/src/start/doctor/apple/XcodePrerequisite.js +158 -0
- package/build/src/start/doctor/apple/XcodePrerequisite.js.map +1 -0
- package/build/src/start/doctor/apple/XcrunPrerequisite.js +65 -0
- package/build/src/start/doctor/apple/XcrunPrerequisite.js.map +1 -0
- package/build/src/start/doctor/dependencies/bundledNativeModules.js +69 -0
- package/build/src/start/doctor/dependencies/bundledNativeModules.js.map +1 -0
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js +131 -0
- package/build/src/start/doctor/dependencies/ensureDependenciesAsync.js.map +1 -0
- package/build/src/start/doctor/dependencies/getMissingPackages.js +74 -0
- package/build/src/start/doctor/dependencies/getMissingPackages.js.map +1 -0
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +136 -0
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -0
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +195 -0
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -0
- package/build/src/start/doctor/ngrok/ExternalModule.js +169 -0
- package/build/src/start/doctor/ngrok/ExternalModule.js.map +1 -0
- package/build/src/start/doctor/ngrok/NgrokResolver.js +22 -0
- package/build/src/start/doctor/ngrok/NgrokResolver.js.map +1 -0
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js +165 -0
- package/build/src/start/doctor/typescript/TypeScriptProjectPrerequisite.js.map +1 -0
- package/build/src/start/doctor/typescript/updateTSConfig.js +99 -0
- package/build/src/start/doctor/typescript/updateTSConfig.js.map +1 -0
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js +111 -0
- package/build/src/start/doctor/web/WebSupportProjectPrerequisite.js.map +1 -0
- package/build/src/start/index.js +123 -0
- package/build/src/start/index.js.map +1 -0
- package/build/src/start/interface/KeyPressHandler.js +101 -0
- package/build/src/start/interface/KeyPressHandler.js.map +1 -0
- package/build/src/start/interface/commandsTable.js +195 -0
- package/build/src/start/interface/commandsTable.js.map +1 -0
- package/build/src/start/interface/interactiveActions.js +194 -0
- package/build/src/start/interface/interactiveActions.js.map +1 -0
- package/build/src/start/interface/startInterface.js +227 -0
- package/build/src/start/interface/startInterface.js.map +1 -0
- package/build/src/start/platforms/AppIdResolver.js +44 -0
- package/build/src/start/platforms/AppIdResolver.js.map +1 -0
- package/build/src/start/platforms/DeviceManager.js +43 -0
- package/build/src/start/platforms/DeviceManager.js.map +1 -0
- package/build/src/start/platforms/ExpoGoInstaller.js +127 -0
- package/build/src/start/platforms/ExpoGoInstaller.js.map +1 -0
- package/build/src/start/platforms/PlatformManager.js +131 -0
- package/build/src/start/platforms/PlatformManager.js.map +1 -0
- package/build/src/start/platforms/android/ADBServer.js +114 -0
- package/build/src/start/platforms/android/ADBServer.js.map +1 -0
- package/build/src/start/platforms/android/AndroidAppIdResolver.js +44 -0
- package/build/src/start/platforms/android/AndroidAppIdResolver.js.map +1 -0
- package/build/src/start/platforms/android/AndroidDeviceManager.js +183 -0
- package/build/src/start/platforms/android/AndroidDeviceManager.js.map +1 -0
- package/build/src/start/platforms/android/AndroidPlatformManager.js +35 -0
- package/build/src/start/platforms/android/AndroidPlatformManager.js.map +1 -0
- package/build/src/start/platforms/android/AndroidSdk.js +41 -0
- package/build/src/start/platforms/android/AndroidSdk.js.map +1 -0
- package/build/src/start/platforms/android/activateWindow.js +80 -0
- package/build/src/start/platforms/android/activateWindow.js.map +1 -0
- package/build/src/start/platforms/android/adb.js +269 -0
- package/build/src/start/platforms/android/adb.js.map +1 -0
- package/build/src/start/platforms/android/adbReverse.js +95 -0
- package/build/src/start/platforms/android/adbReverse.js.map +1 -0
- package/build/src/start/platforms/android/emulator.js +126 -0
- package/build/src/start/platforms/android/emulator.js.map +1 -0
- package/build/src/start/platforms/android/getDevices.js +36 -0
- package/build/src/start/platforms/android/getDevices.js.map +1 -0
- package/build/src/start/platforms/android/gradle.js +86 -0
- package/build/src/start/platforms/android/gradle.js.map +1 -0
- package/build/src/start/platforms/android/promptAndroidDevice.js +56 -0
- package/build/src/start/platforms/android/promptAndroidDevice.js.map +1 -0
- package/build/src/start/platforms/ios/AppleAppIdResolver.js +53 -0
- package/build/src/start/platforms/ios/AppleAppIdResolver.js.map +1 -0
- package/build/src/start/platforms/ios/AppleDeviceManager.js +216 -0
- package/build/src/start/platforms/ios/AppleDeviceManager.js.map +1 -0
- package/build/src/start/platforms/ios/ApplePlatformManager.js +31 -0
- package/build/src/start/platforms/ios/ApplePlatformManager.js.map +1 -0
- package/build/src/start/platforms/ios/assertSystemRequirements.js +16 -0
- package/build/src/start/platforms/ios/assertSystemRequirements.js.map +1 -0
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js +85 -0
- package/build/src/start/platforms/ios/ensureSimulatorAppRunning.js.map +1 -0
- package/build/src/start/platforms/ios/getBestSimulator.js +101 -0
- package/build/src/start/platforms/ios/getBestSimulator.js.map +1 -0
- package/build/src/start/platforms/ios/promptAppleDevice.js +56 -0
- package/build/src/start/platforms/ios/promptAppleDevice.js.map +1 -0
- package/build/src/start/platforms/ios/simctl.js +243 -0
- package/build/src/start/platforms/ios/simctl.js.map +1 -0
- package/build/src/start/platforms/ios/simctlLogging.js +220 -0
- package/build/src/start/platforms/ios/simctlLogging.js.map +1 -0
- package/build/src/start/platforms/ios/xcrun.js +46 -0
- package/build/src/start/platforms/ios/xcrun.js.map +1 -0
- package/build/src/start/project/devices.js +79 -0
- package/build/src/start/project/devices.js.map +1 -0
- package/build/src/start/project/dotExpo.js +74 -0
- package/build/src/start/project/dotExpo.js.map +1 -0
- package/build/src/start/project/settings.js +13 -0
- package/build/src/start/project/settings.js.map +1 -0
- package/build/src/start/resolveOptions.js +135 -0
- package/build/src/start/resolveOptions.js.map +1 -0
- package/build/src/start/server/AsyncNgrok.js +220 -0
- package/build/src/start/server/AsyncNgrok.js.map +1 -0
- package/build/src/start/server/BundlerDevServer.js +356 -0
- package/build/src/start/server/BundlerDevServer.js.map +1 -0
- package/build/src/start/server/DevServerManager.js +214 -0
- package/build/src/start/server/DevServerManager.js.map +1 -0
- package/build/src/start/server/DevToolsPluginManager.js +63 -0
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
- package/build/src/start/server/DevelopmentSession.js +114 -0
- package/build/src/start/server/DevelopmentSession.js.map +1 -0
- package/build/src/start/server/ReactDevToolsProxy.js +73 -0
- package/build/src/start/server/ReactDevToolsProxy.js.map +1 -0
- package/build/src/start/server/UrlCreator.js +175 -0
- package/build/src/start/server/UrlCreator.js.map +1 -0
- package/build/src/start/server/getStaticRenderFunctions.js +164 -0
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -0
- package/build/src/start/server/metro/MetroBundlerDevServer.js +485 -0
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -0
- package/build/src/start/server/metro/MetroTerminalReporter.js +165 -0
- package/build/src/start/server/metro/MetroTerminalReporter.js.map +1 -0
- package/build/src/start/server/metro/TerminalReporter.js +92 -0
- package/build/src/start/server/metro/TerminalReporter.js.map +1 -0
- package/build/src/start/server/metro/TerminalReporter.types.js +6 -0
- package/build/src/start/server/metro/TerminalReporter.types.js.map +1 -0
- package/build/src/start/server/metro/bundleApiRoutes.js +52 -0
- package/build/src/start/server/metro/bundleApiRoutes.js.map +1 -0
- package/build/src/start/server/metro/createExpoMetroResolver.js +187 -0
- package/build/src/start/server/metro/createExpoMetroResolver.js.map +1 -0
- package/build/src/start/server/metro/createJResolver.js +149 -0
- package/build/src/start/server/metro/createJResolver.js.map +1 -0
- package/build/src/start/server/metro/createServerRouteMiddleware.js +124 -0
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -0
- package/build/src/start/server/metro/externals.js +94 -0
- package/build/src/start/server/metro/externals.js.map +1 -0
- package/build/src/start/server/metro/fetchRouterManifest.js +60 -0
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -0
- package/build/src/start/server/metro/formatFileCandidates.js +72 -0
- package/build/src/start/server/metro/formatFileCandidates.js.map +1 -0
- package/build/src/start/server/metro/getCssModulesFromBundler.js +77 -0
- package/build/src/start/server/metro/getCssModulesFromBundler.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/device.js +110 -0
- package/build/src/start/server/metro/inspector-proxy/device.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js +29 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/NetworkResponse.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js +22 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/PageReload.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js +21 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js +55 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerScriptParsed.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js +17 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerSetBreakpointByUrl.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js +24 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeCallFunctionOn.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js +39 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeRuntimeGetProperties.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/types.js +6 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/types.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/utils.js +11 -0
- package/build/src/start/server/metro/inspector-proxy/handlers/utils.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/index.js +24 -0
- package/build/src/start/server/metro/inspector-proxy/index.js.map +1 -0
- package/build/src/start/server/metro/inspector-proxy/proxy.js +169 -0
- package/build/src/start/server/metro/inspector-proxy/proxy.js.map +1 -0
- package/build/src/start/server/metro/instantiateMetro.js +194 -0
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -0
- package/build/src/start/server/metro/metroErrorInterface.js +198 -0
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -0
- package/build/src/start/server/metro/metroErrors.js +14 -0
- package/build/src/start/server/metro/metroErrors.js.map +1 -0
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js +51 -0
- package/build/src/start/server/metro/metroWatchTypeScriptFiles.js.map +1 -0
- package/build/src/start/server/metro/router.js +83 -0
- package/build/src/start/server/metro/router.js.map +1 -0
- package/build/src/start/server/metro/runServer-fork.js +96 -0
- package/build/src/start/server/metro/runServer-fork.js.map +1 -0
- package/build/src/start/server/metro/serializeHtml.js +43 -0
- package/build/src/start/server/metro/serializeHtml.js.map +1 -0
- package/build/src/start/server/metro/symbolicate.js +6 -0
- package/build/src/start/server/metro/symbolicate.js.map +1 -0
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js +91 -0
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -0
- package/build/src/start/server/metro/withMetroMultiPlatform.js +402 -0
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -0
- package/build/src/start/server/metro/withMetroResolvers.js +272 -0
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -0
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js +27 -0
- package/build/src/start/server/middleware/ContextModuleSourceMapsMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/CreateFileMiddleware.js +106 -0
- package/build/src/start/server/middleware/CreateFileMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js +61 -0
- package/build/src/start/server/middleware/DevToolsPluginMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js +236 -0
- package/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/ExpoMiddleware.js +83 -0
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/FaviconMiddleware.js +42 -0
- package/build/src/start/server/middleware/FaviconMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js +24 -0
- package/build/src/start/server/middleware/HistoryFallbackMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js +81 -0
- package/build/src/start/server/middleware/InterstitialPageMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/ManifestMiddleware.js +300 -0
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js +35 -0
- package/build/src/start/server/middleware/ReactDevToolsPageMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js +75 -0
- package/build/src/start/server/middleware/RuntimeRedirectMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/ServeStaticMiddleware.js +62 -0
- package/build/src/start/server/middleware/ServeStaticMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/inspector/JsInspector.js +69 -0
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js +61 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +13 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +82 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +79 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +124 -0
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -0
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js +64 -0
- package/build/src/start/server/middleware/inspector/createJsInspectorMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/inspector/middlwareMutations.js +19 -0
- package/build/src/start/server/middleware/inspector/middlwareMutations.js.map +1 -0
- package/build/src/start/server/middleware/metroOptions.js +128 -0
- package/build/src/start/server/middleware/metroOptions.js.map +1 -0
- package/build/src/start/server/middleware/mutations.js +19 -0
- package/build/src/start/server/middleware/mutations.js.map +1 -0
- package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js +31 -0
- package/build/src/start/server/middleware/remoteDevtoolsCorsMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js +17 -0
- package/build/src/start/server/middleware/remoteDevtoolsSecurityHeadersMiddleware.js.map +1 -0
- package/build/src/start/server/middleware/resolveAssets.js +110 -0
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -0
- package/build/src/start/server/middleware/resolvePlatform.js +47 -0
- package/build/src/start/server/middleware/resolvePlatform.js.map +1 -0
- package/build/src/start/server/middleware/server.types.js +6 -0
- package/build/src/start/server/middleware/server.types.js.map +1 -0
- package/build/src/start/server/middleware/suppressErrorMiddleware.js +16 -0
- package/build/src/start/server/middleware/suppressErrorMiddleware.js.map +1 -0
- package/build/src/start/server/openPlatforms.js +30 -0
- package/build/src/start/server/openPlatforms.js.map +1 -0
- package/build/src/start/server/platformBundlers.js +18 -0
- package/build/src/start/server/platformBundlers.js.map +1 -0
- package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js +38 -0
- package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +1 -0
- package/build/src/start/server/type-generation/__typetests__/generateFixtures.js +38 -0
- package/build/src/start/server/type-generation/__typetests__/generateFixtures.js.map +1 -0
- package/build/src/start/server/type-generation/__typetests__/route.test.js +176 -0
- package/build/src/start/server/type-generation/__typetests__/route.test.js.map +1 -0
- package/build/src/start/server/type-generation/expo-env.js +27 -0
- package/build/src/start/server/type-generation/expo-env.js.map +1 -0
- package/build/src/start/server/type-generation/routes.js +474 -0
- package/build/src/start/server/type-generation/routes.js.map +1 -0
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js +56 -0
- package/build/src/start/server/type-generation/startTypescriptTypeGeneration.js.map +1 -0
- package/build/src/start/server/type-generation/tsconfig.js +89 -0
- package/build/src/start/server/type-generation/tsconfig.js.map +1 -0
- package/build/src/start/server/webTemplate.js +84 -0
- package/build/src/start/server/webTemplate.js.map +1 -0
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js +266 -0
- package/build/src/start/server/webpack/WebpackBundlerDevServer.js.map +1 -0
- package/build/src/start/server/webpack/compile.js +64 -0
- package/build/src/start/server/webpack/compile.js.map +1 -0
- package/build/src/start/server/webpack/formatWebpackMessages.js +94 -0
- package/build/src/start/server/webpack/formatWebpackMessages.js.map +1 -0
- package/build/src/start/server/webpack/resolveFromProject.js +43 -0
- package/build/src/start/server/webpack/resolveFromProject.js.map +1 -0
- package/build/src/start/server/webpack/tls.js +72 -0
- package/build/src/start/server/webpack/tls.js.map +1 -0
- package/build/src/start/startAsync.js +154 -0
- package/build/src/start/startAsync.js.map +1 -0
- package/build/src/utils/FileNotifier.js +90 -0
- package/build/src/utils/FileNotifier.js.map +1 -0
- package/build/src/utils/analytics/getDevClientProperties.js +47 -0
- package/build/src/utils/analytics/getDevClientProperties.js.map +1 -0
- package/build/src/utils/analytics/getMetroDebugProperties.js +15 -0
- package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -0
- package/build/src/utils/analytics/getMetroProperties.js +28 -0
- package/build/src/utils/analytics/getMetroProperties.js.map +1 -0
- package/build/src/utils/analytics/metroDebuggerMiddleware.js +55 -0
- package/build/src/utils/analytics/metroDebuggerMiddleware.js.map +1 -0
- package/build/src/utils/analytics/rudderstackClient.js +147 -0
- package/build/src/utils/analytics/rudderstackClient.js.map +1 -0
- package/build/src/utils/ansi.js +17 -0
- package/build/src/utils/ansi.js.map +1 -0
- package/build/src/utils/args.js +79 -0
- package/build/src/utils/args.js.map +1 -0
- package/build/src/utils/array.js +67 -0
- package/build/src/utils/array.js.map +1 -0
- package/build/src/utils/cocoapods.js +191 -0
- package/build/src/utils/cocoapods.js.map +1 -0
- package/build/src/utils/codesigning.js +311 -0
- package/build/src/utils/codesigning.js.map +1 -0
- package/build/src/utils/createFileTransform.js +89 -0
- package/build/src/utils/createFileTransform.js.map +1 -0
- package/build/src/utils/delay.js +39 -0
- package/build/src/utils/delay.js.map +1 -0
- package/build/src/utils/dir.js +63 -0
- package/build/src/utils/dir.js.map +1 -0
- package/build/src/utils/downloadAppAsync.js +73 -0
- package/build/src/utils/downloadAppAsync.js.map +1 -0
- package/build/src/utils/downloadExpoGoAsync.js +116 -0
- package/build/src/utils/downloadExpoGoAsync.js.map +1 -0
- package/build/src/utils/editor.js +69 -0
- package/build/src/utils/editor.js.map +1 -0
- package/build/src/utils/env.js +131 -0
- package/build/src/utils/env.js.map +1 -0
- package/build/src/utils/errors.js +70 -0
- package/build/src/utils/errors.js.map +1 -0
- package/build/src/utils/exit.js +69 -0
- package/build/src/utils/exit.js.map +1 -0
- package/build/src/utils/findUp.js +33 -0
- package/build/src/utils/findUp.js.map +1 -0
- package/build/src/utils/fn.js +32 -0
- package/build/src/utils/fn.js.map +1 -0
- package/build/src/utils/getOrPromptApplicationId.js +181 -0
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -0
- package/build/src/utils/getRunningProcess.js +96 -0
- package/build/src/utils/getRunningProcess.js.map +1 -0
- package/build/src/utils/git.js +89 -0
- package/build/src/utils/git.js.map +1 -0
- package/build/src/utils/glob.js +65 -0
- package/build/src/utils/glob.js.map +1 -0
- package/build/src/utils/interactive.js +11 -0
- package/build/src/utils/interactive.js.map +1 -0
- package/build/src/utils/ip.js +16 -0
- package/build/src/utils/ip.js.map +1 -0
- package/build/src/utils/isModuleSymlinked.js +37 -0
- package/build/src/utils/isModuleSymlinked.js.map +1 -0
- package/build/src/utils/link.js +31 -0
- package/build/src/utils/link.js.map +1 -0
- package/build/src/utils/mergeGitIgnorePaths.js +154 -0
- package/build/src/utils/mergeGitIgnorePaths.js.map +1 -0
- package/build/src/utils/modifyConfigAsync.js +68 -0
- package/build/src/utils/modifyConfigAsync.js.map +1 -0
- package/build/src/utils/modifyConfigPlugins.js +51 -0
- package/build/src/utils/modifyConfigPlugins.js.map +1 -0
- package/build/src/utils/nodeEnv.js +11 -0
- package/build/src/utils/nodeEnv.js.map +1 -0
- package/build/src/utils/nodeModules.js +29 -0
- package/build/src/utils/nodeModules.js.map +1 -0
- package/build/src/utils/npm.js +116 -0
- package/build/src/utils/npm.js.map +1 -0
- package/build/src/utils/obj.js +45 -0
- package/build/src/utils/obj.js.map +1 -0
- package/build/src/utils/open.js +26 -0
- package/build/src/utils/open.js.map +1 -0
- package/build/src/utils/ora.js +91 -0
- package/build/src/utils/ora.js.map +1 -0
- package/build/src/utils/plist.js +59 -0
- package/build/src/utils/plist.js.map +1 -0
- package/build/src/utils/port.js +160 -0
- package/build/src/utils/port.js.map +1 -0
- package/build/src/utils/profile.js +63 -0
- package/build/src/utils/profile.js.map +1 -0
- package/build/src/utils/progress.js +61 -0
- package/build/src/utils/progress.js.map +1 -0
- package/build/src/utils/prompts.js +116 -0
- package/build/src/utils/prompts.js.map +1 -0
- package/build/src/utils/resolveArgs.js +140 -0
- package/build/src/utils/resolveArgs.js.map +1 -0
- package/build/src/utils/scheme.js +128 -0
- package/build/src/utils/scheme.js.map +1 -0
- package/build/src/utils/strings.js +24 -0
- package/build/src/utils/strings.js.map +1 -0
- package/build/src/utils/tar.js +62 -0
- package/build/src/utils/tar.js.map +1 -0
- package/build/src/utils/template.js +21 -0
- package/build/src/utils/template.js.map +1 -0
- package/build/src/utils/terminal.js +10 -0
- package/build/src/utils/terminal.js.map +1 -0
- package/build/src/utils/tsconfig/evaluateTsConfig.js +61 -0
- package/build/src/utils/tsconfig/evaluateTsConfig.js.map +1 -0
- package/build/src/utils/tsconfig/loadTsConfigPaths.js +61 -0
- package/build/src/utils/tsconfig/loadTsConfigPaths.js.map +1 -0
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js +88 -0
- package/build/src/utils/tsconfig/matchTsConfigPathAlias.js.map +1 -0
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js +51 -0
- package/build/src/utils/tsconfig/resolveWithTsConfigPaths.js.map +1 -0
- package/build/src/utils/url.js +67 -0
- package/build/src/utils/url.js.map +1 -0
- package/build/src/utils/validateApplicationId.js +179 -0
- package/build/src/utils/validateApplicationId.js.map +1 -0
- package/build/src/utils/variadic.js +65 -0
- package/build/src/utils/variadic.js.map +1 -0
- package/build/src/whoami/index.js +47 -0
- package/build/src/whoami/index.js.map +1 -0
- package/build/src/whoami/whoamiAsync.js +44 -0
- package/build/src/whoami/whoamiAsync.js.map +1 -0
- package/package.json +163 -0
- package/static/loading-page/index.html +363 -0
- package/static/react-devtools-page/index.html +144 -0
- package/static/shims/react-native-web/dist/cjs/exports/AppRegistry/AppContainer.js +13 -0
- package/static/shims/react-native-web/dist/cjs/exports/BackHandler/index.js +10 -0
- package/static/shims/react-native-web/dist/exports/AppRegistry/AppContainer.js +12 -0
- package/static/shims/react-native-web/dist/exports/BackHandler/index.js +7 -0
- package/static/template/babel.config.js +6 -0
- package/static/template/index.html +36 -0
- package/static/template/metro.config.js +7 -0
- package/static/template/serve.json +13 -0
- package/static/template/webpack.config.js +7 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/isModuleSymlinked.ts"],"sourcesContent":["import path from 'path';\nimport resolveFrom from 'resolve-from';\n\n/**\n * Return true if the parent folder for a given file path is named \"node_modules\".\n *\n * @example\n * isModuleRootPathInNodeModulesFolder('./foo/expo') -> false\n * isModuleRootPathInNodeModulesFolder('./node_modules/expo') -> true\n */\nfunction isModuleRootPathInNodeModulesFolder(moduleRootPath: string): boolean {\n const parentFolderName = path.basename(path.dirname(moduleRootPath));\n return parentFolderName === 'node_modules';\n}\n\n/**\n * Given a node module name, and a project path, this method will:\n *\n * 1. Resolve the module path.\n * 2. Find the module root folder.\n * 3. Return true if the module root folder is in a folder named `node_modules`\n *\n * @param projectRoot\n * @param moduleId\n *\n * @example\n * isModuleSymlinked('./expo/apps/native-component-list', {\n * moduleId: 'react-native'\n * })\n */\nexport function isModuleSymlinked(\n projectRoot: string,\n {\n moduleId,\n isSilent,\n }: {\n moduleId: string;\n isSilent?: boolean;\n }\n): boolean {\n try {\n const moduleRootPath = path.dirname(resolveFrom(projectRoot, `${moduleId}/package.json`));\n return !isModuleRootPathInNodeModulesFolder(moduleRootPath);\n } catch (error) {\n if (!isSilent) {\n throw error;\n }\n // Failed to resolve the package.json relative to the project, not sure what to do here.\n // This is probably not possible due to node module resolution.\n return false;\n }\n}\n"],"names":["isModuleSymlinked","isModuleRootPathInNodeModulesFolder","moduleRootPath","parentFolderName","path","basename","dirname","projectRoot","moduleId","isSilent","resolveFrom","error"],"mappings":"AAAA;;;;QA8BgBA,iBAAiB,GAAjBA,iBAAiB;AA9BhB,IAAA,KAAM,kCAAN,MAAM,EAAA;AACC,IAAA,YAAc,kCAAd,cAAc,EAAA;;;;;;AAEtC;;;;;;GAMG,CACH,SAASC,mCAAmC,CAACC,cAAsB,EAAW;IAC5E,MAAMC,gBAAgB,GAAGC,KAAI,QAAA,CAACC,QAAQ,CAACD,KAAI,QAAA,CAACE,OAAO,CAACJ,cAAc,CAAC,CAAC,AAAC;IACrE,OAAOC,gBAAgB,KAAK,cAAc,CAAC;CAC5C;AAiBM,SAASH,iBAAiB,CAC/BO,WAAmB,EACnB,EACEC,QAAQ,CAAA,EACRC,QAAQ,CAAA,EAIT,EACQ;IACT,IAAI;QACF,MAAMP,cAAc,GAAGE,KAAI,QAAA,CAACE,OAAO,CAACI,CAAAA,GAAAA,YAAW,AAAyC,CAAA,QAAzC,CAACH,WAAW,EAAE,CAAC,EAAEC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,AAAC;QAC1F,OAAO,CAACP,mCAAmC,CAACC,cAAc,CAAC,CAAC;KAC7D,CAAC,OAAOS,KAAK,EAAE;QACd,IAAI,CAACF,QAAQ,EAAE;YACb,MAAME,KAAK,CAAC;SACb;QACD,wFAAwF;QACxF,+DAA+D;QAC/D,OAAO,KAAK,CAAC;KACd;CACF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.link = link;
|
|
6
|
+
exports.learnMore = learnMore;
|
|
7
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
8
|
+
var _terminalLink = _interopRequireDefault(require("terminal-link"));
|
|
9
|
+
function _interopRequireDefault(obj) {
|
|
10
|
+
return obj && obj.__esModule ? obj : {
|
|
11
|
+
default: obj
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function link(url, { text =url , dim =true } = {}) {
|
|
15
|
+
let output;
|
|
16
|
+
// Links can be disabled via env variables https://github.com/jamestalmage/supports-hyperlinks/blob/master/index.js
|
|
17
|
+
if (_terminalLink.default.isSupported) {
|
|
18
|
+
output = (0, _terminalLink).default(text, url);
|
|
19
|
+
} else {
|
|
20
|
+
output = `${text === url ? "" : text + ": "}${_chalk.default.underline(url)}`;
|
|
21
|
+
}
|
|
22
|
+
return dim ? _chalk.default.dim(output) : output;
|
|
23
|
+
}
|
|
24
|
+
function learnMore(url, { learnMoreMessage: maybeLearnMoreMessage , dim =true } = {}) {
|
|
25
|
+
return link(url, {
|
|
26
|
+
text: maybeLearnMoreMessage != null ? maybeLearnMoreMessage : "Learn more",
|
|
27
|
+
dim
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/link.ts"],"sourcesContent":["import chalk from 'chalk';\nimport terminalLink from 'terminal-link';\n\n/**\n * Prints a link for given URL, using text if provided, otherwise text is just the URL.\n * Format links as dim (unless disabled) and with an underline.\n *\n * @example https://expo.dev\n */\nexport function link(\n url: string,\n { text = url, dim = true }: { text?: string; dim?: boolean } = {}\n): string {\n let output: string;\n // Links can be disabled via env variables https://github.com/jamestalmage/supports-hyperlinks/blob/master/index.js\n if (terminalLink.isSupported) {\n output = terminalLink(text, url);\n } else {\n output = `${text === url ? '' : text + ': '}${chalk.underline(url)}`;\n }\n return dim ? chalk.dim(output) : output;\n}\n\n/**\n * Provide a consistent \"Learn more\" link experience.\n * Format links as dim (unless disabled) with an underline.\n *\n * @example [Learn more](https://expo.dev)\n * @example Learn more: https://expo.dev\n */\nexport function learnMore(\n url: string,\n {\n learnMoreMessage: maybeLearnMoreMessage,\n dim = true,\n }: { learnMoreMessage?: string; dim?: boolean } = {}\n): string {\n return link(url, { text: maybeLearnMoreMessage ?? 'Learn more', dim });\n}\n"],"names":["link","learnMore","url","text","dim","output","terminalLink","isSupported","chalk","underline","learnMoreMessage","maybeLearnMoreMessage"],"mappings":"AAAA;;;;QASgBA,IAAI,GAAJA,IAAI;QAqBJC,SAAS,GAATA,SAAS;AA9BP,IAAA,MAAO,kCAAP,OAAO,EAAA;AACA,IAAA,aAAe,kCAAf,eAAe,EAAA;;;;;;AAQjC,SAASD,IAAI,CAClBE,GAAW,EACX,EAAEC,IAAI,EAAGD,GAAG,CAAA,EAAEE,GAAG,EAAG,IAAI,CAAA,EAAoC,GAAG,EAAE,EACzD;IACR,IAAIC,MAAM,AAAQ,AAAC;IACnB,mHAAmH;IACnH,IAAIC,aAAY,QAAA,CAACC,WAAW,EAAE;QAC5BF,MAAM,GAAGC,CAAAA,GAAAA,aAAY,AAAW,CAAA,QAAX,CAACH,IAAI,EAAED,GAAG,CAAC,CAAC;KAClC,MAAM;QACLG,MAAM,GAAG,CAAC,EAAEF,IAAI,KAAKD,GAAG,GAAG,EAAE,GAAGC,IAAI,GAAG,IAAI,CAAC,EAAEK,MAAK,QAAA,CAACC,SAAS,CAACP,GAAG,CAAC,CAAC,CAAC,CAAC;KACtE;IACD,OAAOE,GAAG,GAAGI,MAAK,QAAA,CAACJ,GAAG,CAACC,MAAM,CAAC,GAAGA,MAAM,CAAC;CACzC;AASM,SAASJ,SAAS,CACvBC,GAAW,EACX,EACEQ,gBAAgB,EAAEC,qBAAqB,CAAA,EACvCP,GAAG,EAAG,IAAI,CAAA,EACmC,GAAG,EAAE,EAC5C;IACR,OAAOJ,IAAI,CAACE,GAAG,EAAE;QAAEC,IAAI,EAAEQ,qBAAqB,WAArBA,qBAAqB,GAAI,YAAY;QAAEP,GAAG;KAAE,CAAC,CAAC;CACxE"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.mergeGitIgnorePaths = mergeGitIgnorePaths;
|
|
6
|
+
exports.removeGeneratedGitIgnoreContents = removeGeneratedGitIgnoreContents;
|
|
7
|
+
exports.mergeGitIgnoreContents = mergeGitIgnoreContents;
|
|
8
|
+
exports.upsertGitIgnoreContents = upsertGitIgnoreContents;
|
|
9
|
+
exports.createGeneratedHeaderComment = createGeneratedHeaderComment;
|
|
10
|
+
exports.getSanitizedGitIgnoreLines = getSanitizedGitIgnoreLines;
|
|
11
|
+
exports.createGitIgnoreHash = createGitIgnoreHash;
|
|
12
|
+
exports.removeFromGitIgnore = removeFromGitIgnore;
|
|
13
|
+
exports.generatedFooterComment = void 0;
|
|
14
|
+
var _crypto = _interopRequireDefault(require("crypto"));
|
|
15
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
16
|
+
var _log = require("../log");
|
|
17
|
+
function _interopRequireDefault(obj) {
|
|
18
|
+
return obj && obj.__esModule ? obj : {
|
|
19
|
+
default: obj
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const generatedHeaderPrefix = `# @generated expo-cli`;
|
|
23
|
+
const generatedFooterComment = `# @end expo-cli`;
|
|
24
|
+
exports.generatedFooterComment = generatedFooterComment;
|
|
25
|
+
function mergeGitIgnorePaths(targetGitIgnorePath, sourceGitIgnorePath) {
|
|
26
|
+
if (!_fs.default.existsSync(targetGitIgnorePath)) {
|
|
27
|
+
// No gitignore in the project already, no need to merge anything into anything. I guess they
|
|
28
|
+
// are not using git :O
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (!_fs.default.existsSync(sourceGitIgnorePath)) {
|
|
32
|
+
// Maybe we don't have a gitignore in the template project
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
const targetGitIgnore = _fs.default.readFileSync(targetGitIgnorePath).toString();
|
|
36
|
+
const sourceGitIgnore = _fs.default.readFileSync(sourceGitIgnorePath).toString();
|
|
37
|
+
const merged = mergeGitIgnoreContents(targetGitIgnore, sourceGitIgnore);
|
|
38
|
+
// Only rewrite the file if it was modified.
|
|
39
|
+
if (merged.contents) {
|
|
40
|
+
_fs.default.writeFileSync(targetGitIgnorePath, merged.contents);
|
|
41
|
+
}
|
|
42
|
+
return merged;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Get line indexes for the generated section of a gitignore.
|
|
46
|
+
*
|
|
47
|
+
* @param gitIgnore
|
|
48
|
+
*/ function getGeneratedSectionIndexes(gitIgnore) {
|
|
49
|
+
const contents = gitIgnore.split("\n");
|
|
50
|
+
const start = contents.findIndex((line)=>line.startsWith(generatedHeaderPrefix)
|
|
51
|
+
);
|
|
52
|
+
const end = contents.findIndex((line)=>line.startsWith(generatedFooterComment)
|
|
53
|
+
);
|
|
54
|
+
return {
|
|
55
|
+
contents,
|
|
56
|
+
start,
|
|
57
|
+
end
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function removeGeneratedGitIgnoreContents(gitIgnore) {
|
|
61
|
+
const { contents , start , end } = getGeneratedSectionIndexes(gitIgnore);
|
|
62
|
+
if (start > -1 && end > -1 && start < end) {
|
|
63
|
+
contents.splice(start, end - start + 1);
|
|
64
|
+
// TODO: We could in theory check that the contents we're removing match the hash used in the header,
|
|
65
|
+
// this would ensure that we don't accidentally remove lines that someone added or removed from the generated section.
|
|
66
|
+
return contents.join("\n");
|
|
67
|
+
}
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
function mergeGitIgnoreContents(targetGitIgnore, sourceGitIgnore) {
|
|
71
|
+
const header = createGeneratedHeaderComment(sourceGitIgnore);
|
|
72
|
+
if (!targetGitIgnore.includes(header)) {
|
|
73
|
+
// Ensure the old generated gitignore contents are removed.
|
|
74
|
+
const sanitizedTarget = removeGeneratedGitIgnoreContents(targetGitIgnore);
|
|
75
|
+
return {
|
|
76
|
+
contents: [
|
|
77
|
+
sanitizedTarget != null ? sanitizedTarget : targetGitIgnore,
|
|
78
|
+
header,
|
|
79
|
+
`# The following patterns were generated by expo-cli`,
|
|
80
|
+
``,
|
|
81
|
+
sourceGitIgnore,
|
|
82
|
+
generatedFooterComment,
|
|
83
|
+
].join("\n"),
|
|
84
|
+
didMerge: true,
|
|
85
|
+
didClear: !!sanitizedTarget
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
contents: targetGitIgnore,
|
|
90
|
+
didClear: false,
|
|
91
|
+
didMerge: false
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
function upsertGitIgnoreContents(targetGitIgnorePath, contents) {
|
|
95
|
+
const targetGitIgnore = _fs.default.readFileSync(targetGitIgnorePath, {
|
|
96
|
+
encoding: "utf-8",
|
|
97
|
+
flag: "a+"
|
|
98
|
+
});
|
|
99
|
+
if (targetGitIgnore.match(new RegExp(`^${contents}[\\n\\r\\s]*$`, "m"))) {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
// If there is an existing section, update it with the new content
|
|
103
|
+
if (targetGitIgnore.includes(generatedHeaderPrefix)) {
|
|
104
|
+
const indexes = getGeneratedSectionIndexes(targetGitIgnore);
|
|
105
|
+
contents = `${indexes.contents.slice(indexes.start + 3, indexes.end).join("\n")}\n${contents}`;
|
|
106
|
+
}
|
|
107
|
+
const merged = mergeGitIgnoreContents(targetGitIgnore, contents);
|
|
108
|
+
if (merged.contents) {
|
|
109
|
+
_fs.default.writeFileSync(targetGitIgnorePath, merged.contents);
|
|
110
|
+
}
|
|
111
|
+
return merged;
|
|
112
|
+
}
|
|
113
|
+
function createGeneratedHeaderComment(gitIgnore) {
|
|
114
|
+
const hashKey = createGitIgnoreHash(getSanitizedGitIgnoreLines(gitIgnore).join("\n"));
|
|
115
|
+
return `${generatedHeaderPrefix} ${hashKey}`;
|
|
116
|
+
}
|
|
117
|
+
function getSanitizedGitIgnoreLines(gitIgnore) {
|
|
118
|
+
// filter, trim, and sort the lines.
|
|
119
|
+
return gitIgnore.split("\n").filter((v)=>{
|
|
120
|
+
const line = v.trim();
|
|
121
|
+
// Strip comments
|
|
122
|
+
if (line.startsWith("#")) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
return !!line;
|
|
126
|
+
}).sort();
|
|
127
|
+
}
|
|
128
|
+
function createGitIgnoreHash(gitIgnore) {
|
|
129
|
+
// this doesn't need to be secure, the shorter the better.
|
|
130
|
+
const hash = _crypto.default.createHash("sha1").update(gitIgnore).digest("hex");
|
|
131
|
+
return `sync-${hash}`;
|
|
132
|
+
}
|
|
133
|
+
function removeFromGitIgnore(targetGitIgnorePath, contents) {
|
|
134
|
+
try {
|
|
135
|
+
if (!_fs.default.existsSync(targetGitIgnorePath)) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
let targetGitIgnore = _fs.default.readFileSync(targetGitIgnorePath, "utf-8");
|
|
139
|
+
if (!targetGitIgnore.includes(contents)) {
|
|
140
|
+
return null;
|
|
141
|
+
}
|
|
142
|
+
targetGitIgnore = targetGitIgnore.replace(`${contents}\n`, "");
|
|
143
|
+
const indexes = getGeneratedSectionIndexes(targetGitIgnore);
|
|
144
|
+
if (indexes.start === indexes.end - 3) {
|
|
145
|
+
targetGitIgnore = targetGitIgnore.replace(new RegExp(`^${generatedHeaderPrefix}((.|\n)*)${generatedFooterComment}$`, "m"), "");
|
|
146
|
+
}
|
|
147
|
+
return _fs.default.writeFileSync(targetGitIgnorePath, targetGitIgnore);
|
|
148
|
+
} catch (error) {
|
|
149
|
+
_log.Log.error(`Failed to read/write to .gitignore path: ${targetGitIgnorePath}`);
|
|
150
|
+
throw error;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
//# sourceMappingURL=mergeGitIgnorePaths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/mergeGitIgnorePaths.ts"],"sourcesContent":["import crypto from 'crypto';\nimport fs from 'fs';\n\nimport { Log } from '../log';\n\ntype MergeResults = {\n contents: string;\n didClear: boolean;\n didMerge: boolean;\n};\n\nconst generatedHeaderPrefix = `# @generated expo-cli`;\nexport const generatedFooterComment = `# @end expo-cli`;\n\n/**\n * Merge two gitignore files together and add a generated header.\n *\n * @param targetGitIgnorePath\n * @param sourceGitIgnorePath\n *\n * @returns `null` if one of the gitignore files doesn't exist. Otherwise, returns the merged contents.\n */\nexport function mergeGitIgnorePaths(\n targetGitIgnorePath: string,\n sourceGitIgnorePath: string\n): null | MergeResults {\n if (!fs.existsSync(targetGitIgnorePath)) {\n // No gitignore in the project already, no need to merge anything into anything. I guess they\n // are not using git :O\n return null;\n }\n\n if (!fs.existsSync(sourceGitIgnorePath)) {\n // Maybe we don't have a gitignore in the template project\n return null;\n }\n\n const targetGitIgnore = fs.readFileSync(targetGitIgnorePath).toString();\n const sourceGitIgnore = fs.readFileSync(sourceGitIgnorePath).toString();\n const merged = mergeGitIgnoreContents(targetGitIgnore, sourceGitIgnore);\n // Only rewrite the file if it was modified.\n if (merged.contents) {\n fs.writeFileSync(targetGitIgnorePath, merged.contents);\n }\n\n return merged;\n}\n\n/**\n * Get line indexes for the generated section of a gitignore.\n *\n * @param gitIgnore\n */\nfunction getGeneratedSectionIndexes(gitIgnore: string): {\n contents: string[];\n start: number;\n end: number;\n} {\n const contents = gitIgnore.split('\\n');\n const start = contents.findIndex((line) => line.startsWith(generatedHeaderPrefix));\n const end = contents.findIndex((line) => line.startsWith(generatedFooterComment));\n\n return { contents, start, end };\n}\n\n/**\n * Removes the generated section from a gitignore, returns null when nothing can be removed.\n * This sways heavily towards not removing lines unless it's certain that modifications were not made to the gitignore manually.\n *\n * @param gitIgnore\n */\nexport function removeGeneratedGitIgnoreContents(gitIgnore: string): string | null {\n const { contents, start, end } = getGeneratedSectionIndexes(gitIgnore);\n if (start > -1 && end > -1 && start < end) {\n contents.splice(start, end - start + 1);\n // TODO: We could in theory check that the contents we're removing match the hash used in the header,\n // this would ensure that we don't accidentally remove lines that someone added or removed from the generated section.\n return contents.join('\\n');\n }\n return null;\n}\n\n/**\n * Merge the contents of two gitignores together and add a generated header.\n *\n * @param targetGitIgnore contents of the existing gitignore\n * @param sourceGitIgnore contents of the extra gitignore\n */\nexport function mergeGitIgnoreContents(\n targetGitIgnore: string,\n sourceGitIgnore: string\n): MergeResults {\n const header = createGeneratedHeaderComment(sourceGitIgnore);\n if (!targetGitIgnore.includes(header)) {\n // Ensure the old generated gitignore contents are removed.\n const sanitizedTarget = removeGeneratedGitIgnoreContents(targetGitIgnore);\n return {\n contents: [\n sanitizedTarget ?? targetGitIgnore,\n header,\n `# The following patterns were generated by expo-cli`,\n ``,\n sourceGitIgnore,\n generatedFooterComment,\n ].join('\\n'),\n didMerge: true,\n didClear: !!sanitizedTarget,\n };\n }\n return { contents: targetGitIgnore, didClear: false, didMerge: false };\n}\n\n/**\n * Adds the contents into an existing gitignore \"generated by expo-cli section\"\n * If no section exists, it will be created (hence the name upsert)\n */\nexport function upsertGitIgnoreContents(\n targetGitIgnorePath: string,\n contents: string\n): MergeResults | null {\n const targetGitIgnore = fs.readFileSync(targetGitIgnorePath, {\n encoding: 'utf-8',\n flag: 'a+',\n });\n\n if (targetGitIgnore.match(new RegExp(`^${contents}[\\\\n\\\\r\\\\s]*$`, 'm'))) {\n return null;\n }\n\n // If there is an existing section, update it with the new content\n if (targetGitIgnore.includes(generatedHeaderPrefix)) {\n const indexes = getGeneratedSectionIndexes(targetGitIgnore);\n\n contents = `${indexes.contents.slice(indexes.start + 3, indexes.end).join('\\n')}\\n${contents}`;\n }\n\n const merged = mergeGitIgnoreContents(targetGitIgnore, contents);\n\n if (merged.contents) {\n fs.writeFileSync(targetGitIgnorePath, merged.contents);\n }\n return merged;\n}\n\nexport function createGeneratedHeaderComment(gitIgnore: string): string {\n const hashKey = createGitIgnoreHash(getSanitizedGitIgnoreLines(gitIgnore).join('\\n'));\n\n return `${generatedHeaderPrefix} ${hashKey}`;\n}\n\n/**\n * Normalize the contents of a gitignore to ensure that minor changes like new lines or sort order don't cause a regeneration.\n */\nexport function getSanitizedGitIgnoreLines(gitIgnore: string): string[] {\n // filter, trim, and sort the lines.\n return gitIgnore\n .split('\\n')\n .filter((v) => {\n const line = v.trim();\n // Strip comments\n if (line.startsWith('#')) {\n return false;\n }\n return !!line;\n })\n .sort();\n}\n\nexport function createGitIgnoreHash(gitIgnore: string): string {\n // this doesn't need to be secure, the shorter the better.\n const hash = crypto.createHash('sha1').update(gitIgnore).digest('hex');\n return `sync-${hash}`;\n}\n\nexport function removeFromGitIgnore(targetGitIgnorePath: string, contents: string) {\n try {\n if (!fs.existsSync(targetGitIgnorePath)) {\n return;\n }\n\n let targetGitIgnore = fs.readFileSync(targetGitIgnorePath, 'utf-8');\n\n if (!targetGitIgnore.includes(contents)) {\n return null;\n }\n\n targetGitIgnore = targetGitIgnore.replace(`${contents}\\n`, '');\n\n const indexes = getGeneratedSectionIndexes(targetGitIgnore);\n\n if (indexes.start === indexes.end - 3) {\n targetGitIgnore = targetGitIgnore.replace(\n new RegExp(`^${generatedHeaderPrefix}((.|\\n)*)${generatedFooterComment}$`, 'm'),\n ''\n );\n }\n\n return fs.writeFileSync(targetGitIgnorePath, targetGitIgnore);\n } catch (error) {\n Log.error(`Failed to read/write to .gitignore path: ${targetGitIgnorePath}`);\n throw error;\n }\n}\n"],"names":["mergeGitIgnorePaths","removeGeneratedGitIgnoreContents","mergeGitIgnoreContents","upsertGitIgnoreContents","createGeneratedHeaderComment","getSanitizedGitIgnoreLines","createGitIgnoreHash","removeFromGitIgnore","generatedHeaderPrefix","generatedFooterComment","targetGitIgnorePath","sourceGitIgnorePath","fs","existsSync","targetGitIgnore","readFileSync","toString","sourceGitIgnore","merged","contents","writeFileSync","getGeneratedSectionIndexes","gitIgnore","split","start","findIndex","line","startsWith","end","splice","join","header","includes","sanitizedTarget","didMerge","didClear","encoding","flag","match","RegExp","indexes","slice","hashKey","filter","v","trim","sort","hash","crypto","createHash","update","digest","replace","error","Log"],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.attemptModification = attemptModification;
|
|
6
|
+
exports.warnAboutConfigAndThrow = warnAboutConfigAndThrow;
|
|
7
|
+
var _config = require("@expo/config");
|
|
8
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
9
|
+
var _errors = require("./errors");
|
|
10
|
+
var Log = _interopRequireWildcard(require("../log"));
|
|
11
|
+
function _interopRequireDefault(obj) {
|
|
12
|
+
return obj && obj.__esModule ? obj : {
|
|
13
|
+
default: obj
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function _interopRequireWildcard(obj) {
|
|
17
|
+
if (obj && obj.__esModule) {
|
|
18
|
+
return obj;
|
|
19
|
+
} else {
|
|
20
|
+
var newObj = {};
|
|
21
|
+
if (obj != null) {
|
|
22
|
+
for(var key in obj){
|
|
23
|
+
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
24
|
+
var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
|
|
25
|
+
if (desc.get || desc.set) {
|
|
26
|
+
Object.defineProperty(newObj, key, desc);
|
|
27
|
+
} else {
|
|
28
|
+
newObj[key] = obj[key];
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
newObj.default = obj;
|
|
34
|
+
return newObj;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async function attemptModification(projectRoot, edits, exactEdits) {
|
|
38
|
+
const modification = await (0, _config).modifyConfigAsync(projectRoot, edits, {
|
|
39
|
+
skipSDKVersionRequirement: true
|
|
40
|
+
});
|
|
41
|
+
if (modification.type === "success") {
|
|
42
|
+
Log.log();
|
|
43
|
+
} else {
|
|
44
|
+
warnAboutConfigAndThrow(modification.type, modification.message, exactEdits);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function logNoConfig() {
|
|
48
|
+
Log.log(_chalk.default.yellow(`No Expo config was found. Please create an Expo config (${_chalk.default.bold`app.json`} or ${_chalk.default.bold`app.config.js`}) in your project root.`));
|
|
49
|
+
}
|
|
50
|
+
function warnAboutConfigAndThrow(type, message, edits) {
|
|
51
|
+
Log.log();
|
|
52
|
+
if (type === "warn") {
|
|
53
|
+
// The project is using a dynamic config, give the user a helpful log and bail out.
|
|
54
|
+
Log.log(_chalk.default.yellow(message));
|
|
55
|
+
} else {
|
|
56
|
+
logNoConfig();
|
|
57
|
+
}
|
|
58
|
+
notifyAboutManualConfigEdits(edits);
|
|
59
|
+
throw new _errors.SilentError();
|
|
60
|
+
}
|
|
61
|
+
function notifyAboutManualConfigEdits(edits) {
|
|
62
|
+
Log.log(_chalk.default.cyan(`Please add the following to your Expo config`));
|
|
63
|
+
Log.log();
|
|
64
|
+
Log.log(JSON.stringify(edits, null, 2));
|
|
65
|
+
Log.log();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=modifyConfigAsync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/modifyConfigAsync.ts"],"sourcesContent":["import { ExpoConfig, modifyConfigAsync } from '@expo/config';\nimport chalk from 'chalk';\n\nimport { SilentError } from './errors';\nimport * as Log from '../log';\n\n/** Wraps `[@expo/config] modifyConfigAsync()` and adds additional logging. */\nexport async function attemptModification(\n projectRoot: string,\n edits: Partial<ExpoConfig>,\n exactEdits: Partial<ExpoConfig>\n): Promise<void> {\n const modification = await modifyConfigAsync(projectRoot, edits, {\n skipSDKVersionRequirement: true,\n });\n if (modification.type === 'success') {\n Log.log();\n } else {\n warnAboutConfigAndThrow(modification.type, modification.message!, exactEdits);\n }\n}\n\nfunction logNoConfig() {\n Log.log(\n chalk.yellow(\n `No Expo config was found. Please create an Expo config (${chalk.bold`app.json`} or ${chalk.bold`app.config.js`}) in your project root.`\n )\n );\n}\n\nexport function warnAboutConfigAndThrow(type: string, message: string, edits: Partial<ExpoConfig>) {\n Log.log();\n if (type === 'warn') {\n // The project is using a dynamic config, give the user a helpful log and bail out.\n Log.log(chalk.yellow(message));\n } else {\n logNoConfig();\n }\n\n notifyAboutManualConfigEdits(edits);\n throw new SilentError();\n}\n\nfunction notifyAboutManualConfigEdits(edits: Partial<ExpoConfig>) {\n Log.log(chalk.cyan(`Please add the following to your Expo config`));\n Log.log();\n Log.log(JSON.stringify(edits, null, 2));\n Log.log();\n}\n"],"names":["attemptModification","warnAboutConfigAndThrow","Log","projectRoot","edits","exactEdits","modification","modifyConfigAsync","skipSDKVersionRequirement","type","log","message","logNoConfig","chalk","yellow","bold","notifyAboutManualConfigEdits","SilentError","cyan","JSON","stringify"],"mappings":"AAAA;;;;QAOsBA,mBAAmB,GAAnBA,mBAAmB;QAuBzBC,uBAAuB,GAAvBA,uBAAuB;AA9BO,IAAA,OAAc,WAAd,cAAc,CAAA;AAC1C,IAAA,MAAO,kCAAP,OAAO,EAAA;AAEG,IAAA,OAAU,WAAV,UAAU,CAAA;AAC1BC,IAAAA,GAAG,mCAAM,QAAQ,EAAd;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGR,eAAeF,mBAAmB,CACvCG,WAAmB,EACnBC,KAA0B,EAC1BC,UAA+B,EAChB;IACf,MAAMC,YAAY,GAAG,MAAMC,CAAAA,GAAAA,OAAiB,AAE1C,CAAA,kBAF0C,CAACJ,WAAW,EAAEC,KAAK,EAAE;QAC/DI,yBAAyB,EAAE,IAAI;KAChC,CAAC,AAAC;IACH,IAAIF,YAAY,CAACG,IAAI,KAAK,SAAS,EAAE;QACnCP,GAAG,CAACQ,GAAG,EAAE,CAAC;KACX,MAAM;QACLT,uBAAuB,CAACK,YAAY,CAACG,IAAI,EAAEH,YAAY,CAACK,OAAO,EAAGN,UAAU,CAAC,CAAC;KAC/E;CACF;AAED,SAASO,WAAW,GAAG;IACrBV,GAAG,CAACQ,GAAG,CACLG,MAAK,QAAA,CAACC,MAAM,CACV,CAAC,wDAAwD,EAAED,MAAK,QAAA,CAACE,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAEF,MAAK,QAAA,CAACE,IAAI,CAAC,aAAa,CAAC,CAAC,uBAAuB,CAAC,CACzI,CACF,CAAC;CACH;AAEM,SAASd,uBAAuB,CAACQ,IAAY,EAAEE,OAAe,EAAEP,KAA0B,EAAE;IACjGF,GAAG,CAACQ,GAAG,EAAE,CAAC;IACV,IAAID,IAAI,KAAK,MAAM,EAAE;QACnB,mFAAmF;QACnFP,GAAG,CAACQ,GAAG,CAACG,MAAK,QAAA,CAACC,MAAM,CAACH,OAAO,CAAC,CAAC,CAAC;KAChC,MAAM;QACLC,WAAW,EAAE,CAAC;KACf;IAEDI,4BAA4B,CAACZ,KAAK,CAAC,CAAC;IACpC,MAAM,IAAIa,OAAW,YAAA,EAAE,CAAC;CACzB;AAED,SAASD,4BAA4B,CAACZ,KAA0B,EAAE;IAChEF,GAAG,CAACQ,GAAG,CAACG,MAAK,QAAA,CAACK,IAAI,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,CAAC;IACpEhB,GAAG,CAACQ,GAAG,EAAE,CAAC;IACVR,GAAG,CAACQ,GAAG,CAACS,IAAI,CAACC,SAAS,CAAChB,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxCF,GAAG,CAACQ,GAAG,EAAE,CAAC;CACX"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.attemptAddingPluginsAsync = attemptAddingPluginsAsync;
|
|
6
|
+
var _config = require("@expo/config");
|
|
7
|
+
var _modifyConfigAsync = require("./modifyConfigAsync");
|
|
8
|
+
var Log = _interopRequireWildcard(require("../log"));
|
|
9
|
+
function _interopRequireWildcard(obj) {
|
|
10
|
+
if (obj && obj.__esModule) {
|
|
11
|
+
return obj;
|
|
12
|
+
} else {
|
|
13
|
+
var newObj = {};
|
|
14
|
+
if (obj != null) {
|
|
15
|
+
for(var key in obj){
|
|
16
|
+
if (Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
17
|
+
var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {};
|
|
18
|
+
if (desc.get || desc.set) {
|
|
19
|
+
Object.defineProperty(newObj, key, desc);
|
|
20
|
+
} else {
|
|
21
|
+
newObj[key] = obj[key];
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
newObj.default = obj;
|
|
27
|
+
return newObj;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
async function attemptAddingPluginsAsync(projectRoot, exp, plugins) {
|
|
31
|
+
if (!plugins.length) return;
|
|
32
|
+
const edits = {
|
|
33
|
+
plugins: [
|
|
34
|
+
...new Set((exp.plugins || []).concat(plugins))
|
|
35
|
+
]
|
|
36
|
+
};
|
|
37
|
+
const modification = await (0, _config).modifyConfigAsync(projectRoot, edits, {
|
|
38
|
+
skipSDKVersionRequirement: true,
|
|
39
|
+
skipPlugins: true
|
|
40
|
+
});
|
|
41
|
+
if (modification.type === "success") {
|
|
42
|
+
Log.log(`\u203A Added config plugin${plugins.length === 1 ? "" : "s"}: ${plugins.join(", ")}`);
|
|
43
|
+
} else {
|
|
44
|
+
const exactEdits = {
|
|
45
|
+
plugins
|
|
46
|
+
};
|
|
47
|
+
(0, _modifyConfigAsync).warnAboutConfigAndThrow(modification.type, modification.message, exactEdits);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=modifyConfigPlugins.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/modifyConfigPlugins.ts"],"sourcesContent":["import { ExpoConfig, modifyConfigAsync } from '@expo/config';\n\nimport { warnAboutConfigAndThrow } from './modifyConfigAsync';\nimport * as Log from '../log';\n\nexport async function attemptAddingPluginsAsync(\n projectRoot: string,\n exp: Pick<ExpoConfig, 'plugins'>,\n plugins: string[]\n): Promise<void> {\n if (!plugins.length) return;\n\n const edits = {\n plugins: [...new Set((exp.plugins || []).concat(plugins))],\n };\n const modification = await modifyConfigAsync(projectRoot, edits, {\n skipSDKVersionRequirement: true,\n skipPlugins: true,\n });\n if (modification.type === 'success') {\n Log.log(`\\u203A Added config plugin${plugins.length === 1 ? '' : 's'}: ${plugins.join(', ')}`);\n } else {\n const exactEdits = {\n plugins,\n };\n warnAboutConfigAndThrow(modification.type, modification.message!, exactEdits);\n }\n}\n"],"names":["attemptAddingPluginsAsync","Log","projectRoot","exp","plugins","length","edits","Set","concat","modification","modifyConfigAsync","skipSDKVersionRequirement","skipPlugins","type","log","join","exactEdits","warnAboutConfigAndThrow","message"],"mappings":"AAAA;;;;QAKsBA,yBAAyB,GAAzBA,yBAAyB;AALD,IAAA,OAAc,WAAd,cAAc,CAAA;AAEpB,IAAA,kBAAqB,WAArB,qBAAqB,CAAA;AACjDC,IAAAA,GAAG,mCAAM,QAAQ,EAAd;;;;;;;;;;;;;;;;;;;;;;AAER,eAAeD,yBAAyB,CAC7CE,WAAmB,EACnBC,GAAgC,EAChCC,OAAiB,EACF;IACf,IAAI,CAACA,OAAO,CAACC,MAAM,EAAE,OAAO;IAE5B,MAAMC,KAAK,GAAG;QACZF,OAAO,EAAE;eAAI,IAAIG,GAAG,CAAC,CAACJ,GAAG,CAACC,OAAO,IAAI,EAAE,CAAC,CAACI,MAAM,CAACJ,OAAO,CAAC,CAAC;SAAC;KAC3D,AAAC;IACF,MAAMK,YAAY,GAAG,MAAMC,CAAAA,GAAAA,OAAiB,AAG1C,CAAA,kBAH0C,CAACR,WAAW,EAAEI,KAAK,EAAE;QAC/DK,yBAAyB,EAAE,IAAI;QAC/BC,WAAW,EAAE,IAAI;KAClB,CAAC,AAAC;IACH,IAAIH,YAAY,CAACI,IAAI,KAAK,SAAS,EAAE;QACnCZ,GAAG,CAACa,GAAG,CAAC,CAAC,0BAA0B,EAAEV,OAAO,CAACC,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,EAAED,OAAO,CAACW,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KAChG,MAAM;QACL,MAAMC,UAAU,GAAG;YACjBZ,OAAO;SACR,AAAC;QACFa,CAAAA,GAAAA,kBAAuB,AAAsD,CAAA,wBAAtD,CAACR,YAAY,CAACI,IAAI,EAAEJ,YAAY,CAACS,OAAO,EAAGF,UAAU,CAAC,CAAC;KAC/E;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.setNodeEnv = setNodeEnv;
|
|
6
|
+
function setNodeEnv(mode) {
|
|
7
|
+
process.env.NODE_ENV = process.env.NODE_ENV || mode;
|
|
8
|
+
process.env.BABEL_ENV = process.env.BABEL_ENV || process.env.NODE_ENV;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=nodeEnv.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/nodeEnv.ts"],"sourcesContent":["// Set the environment to production or development\n// lots of tools use this to determine if they should run in a dev mode.\nexport function setNodeEnv(mode: 'development' | 'production') {\n process.env.NODE_ENV = process.env.NODE_ENV || mode;\n process.env.BABEL_ENV = process.env.BABEL_ENV || process.env.NODE_ENV;\n}\n"],"names":["setNodeEnv","mode","process","env","NODE_ENV","BABEL_ENV"],"mappings":"AAEA;;;;QAAgBA,UAAU,GAAVA,UAAU;AAAnB,SAASA,UAAU,CAACC,IAAkC,EAAE;IAC7DC,OAAO,CAACC,GAAG,CAACC,QAAQ,GAAGF,OAAO,CAACC,GAAG,CAACC,QAAQ,IAAIH,IAAI,CAAC;IACpDC,OAAO,CAACC,GAAG,CAACE,SAAS,GAAGH,OAAO,CAACC,GAAG,CAACE,SAAS,IAAIH,OAAO,CAACC,GAAG,CAACC,QAAQ,CAAC;CACvE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.clearNodeModulesAsync = clearNodeModulesAsync;
|
|
6
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
7
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
8
|
+
var _path = _interopRequireDefault(require("path"));
|
|
9
|
+
var _ora = require("./ora");
|
|
10
|
+
function _interopRequireDefault(obj) {
|
|
11
|
+
return obj && obj.__esModule ? obj : {
|
|
12
|
+
default: obj
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
async function clearNodeModulesAsync(projectRoot) {
|
|
16
|
+
// This step can take a couple seconds, if the installation logs are enabled (with EXPO_DEBUG) then it
|
|
17
|
+
// ends up looking odd to see "Installing JavaScript dependencies" for ~5 seconds before the logs start showing up.
|
|
18
|
+
const cleanJsDepsStep = (0, _ora).logNewSection("Cleaning JavaScript dependencies");
|
|
19
|
+
const time = Date.now();
|
|
20
|
+
// nuke the node modules
|
|
21
|
+
// TODO: this is substantially slower, we should find a better alternative to ensuring the modules are installed.
|
|
22
|
+
await _fs.default.promises.rm(_path.default.join(projectRoot, "node_modules"), {
|
|
23
|
+
recursive: true,
|
|
24
|
+
force: true
|
|
25
|
+
});
|
|
26
|
+
cleanJsDepsStep.succeed(`Cleaned JavaScript dependencies ${_chalk.default.gray(Date.now() - time + "ms")}`);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=nodeModules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/nodeModules.ts"],"sourcesContent":["import chalk from 'chalk';\nimport fs from 'fs';\nimport path from 'path';\n\nimport { logNewSection } from './ora';\n\nexport async function clearNodeModulesAsync(projectRoot: string) {\n // This step can take a couple seconds, if the installation logs are enabled (with EXPO_DEBUG) then it\n // ends up looking odd to see \"Installing JavaScript dependencies\" for ~5 seconds before the logs start showing up.\n const cleanJsDepsStep = logNewSection('Cleaning JavaScript dependencies');\n const time = Date.now();\n // nuke the node modules\n // TODO: this is substantially slower, we should find a better alternative to ensuring the modules are installed.\n await fs.promises.rm(path.join(projectRoot, 'node_modules'), { recursive: true, force: true });\n cleanJsDepsStep.succeed(\n `Cleaned JavaScript dependencies ${chalk.gray(Date.now() - time + 'ms')}`\n );\n}\n"],"names":["clearNodeModulesAsync","projectRoot","cleanJsDepsStep","logNewSection","time","Date","now","fs","promises","rm","path","join","recursive","force","succeed","chalk","gray"],"mappings":"AAAA;;;;QAMsBA,qBAAqB,GAArBA,qBAAqB;AANzB,IAAA,MAAO,kCAAP,OAAO,EAAA;AACV,IAAA,GAAI,kCAAJ,IAAI,EAAA;AACF,IAAA,KAAM,kCAAN,MAAM,EAAA;AAEO,IAAA,IAAO,WAAP,OAAO,CAAA;;;;;;AAE9B,eAAeA,qBAAqB,CAACC,WAAmB,EAAE;IAC/D,sGAAsG;IACtG,mHAAmH;IACnH,MAAMC,eAAe,GAAGC,CAAAA,GAAAA,IAAa,AAAoC,CAAA,cAApC,CAAC,kCAAkC,CAAC,AAAC;IAC1E,MAAMC,IAAI,GAAGC,IAAI,CAACC,GAAG,EAAE,AAAC;IACxB,wBAAwB;IACxB,iHAAiH;IACjH,MAAMC,GAAE,QAAA,CAACC,QAAQ,CAACC,EAAE,CAACC,KAAI,QAAA,CAACC,IAAI,CAACV,WAAW,EAAE,cAAc,CAAC,EAAE;QAAEW,SAAS,EAAE,IAAI;QAAEC,KAAK,EAAE,IAAI;KAAE,CAAC,CAAC;IAC/FX,eAAe,CAACY,OAAO,CACrB,CAAC,gCAAgC,EAAEC,MAAK,QAAA,CAACC,IAAI,CAACX,IAAI,CAACC,GAAG,EAAE,GAAGF,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAC1E,CAAC;CACH"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.sanitizeNpmPackageName = sanitizeNpmPackageName;
|
|
6
|
+
exports.npmViewAsync = npmViewAsync;
|
|
7
|
+
exports.getNpmUrlAsync = getNpmUrlAsync;
|
|
8
|
+
exports.downloadAndExtractNpmModuleAsync = downloadAndExtractNpmModuleAsync;
|
|
9
|
+
exports.extractLocalNpmTarballAsync = extractLocalNpmTarballAsync;
|
|
10
|
+
exports.extractNpmTarballFromUrlAsync = extractNpmTarballFromUrlAsync;
|
|
11
|
+
exports.extractNpmTarballAsync = extractNpmTarballAsync;
|
|
12
|
+
var _spawnAsync = _interopRequireDefault(require("@expo/spawn-async"));
|
|
13
|
+
var _assert = _interopRequireDefault(require("assert"));
|
|
14
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
15
|
+
var _slugify = _interopRequireDefault(require("slugify"));
|
|
16
|
+
var _stream = require("stream");
|
|
17
|
+
var _tar = _interopRequireDefault(require("tar"));
|
|
18
|
+
var _util = require("util");
|
|
19
|
+
var _createFileTransform = require("./createFileTransform");
|
|
20
|
+
var _dir = require("./dir");
|
|
21
|
+
var _errors = require("./errors");
|
|
22
|
+
var _client = require("../api/rest/client");
|
|
23
|
+
function _interopRequireDefault(obj) {
|
|
24
|
+
return obj && obj.__esModule ? obj : {
|
|
25
|
+
default: obj
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
const debug = require("debug")("expo:utils:npm");
|
|
29
|
+
const cachedFetch = (0, _client).createCachedFetch({
|
|
30
|
+
cacheDirectory: "template-cache"
|
|
31
|
+
});
|
|
32
|
+
function sanitizeNpmPackageName(name) {
|
|
33
|
+
// https://github.com/npm/validate-npm-package-name/#naming-rules
|
|
34
|
+
return applyKnownNpmPackageNameRules(name) || applyKnownNpmPackageNameRules((0, _slugify).default(name)) || // If nothing is left use 'app' like we do in Xcode projects.
|
|
35
|
+
"app";
|
|
36
|
+
}
|
|
37
|
+
function applyKnownNpmPackageNameRules(name) {
|
|
38
|
+
// https://github.com/npm/validate-npm-package-name/#naming-rules
|
|
39
|
+
// package name cannot start with '.' or '_'.
|
|
40
|
+
while(/^(\.|_)/.test(name)){
|
|
41
|
+
name = name.substring(1);
|
|
42
|
+
}
|
|
43
|
+
name = name.toLowerCase().replace(/[^a-zA-Z._\-/@]/g, "");
|
|
44
|
+
return name// .replace(/![a-z0-9-._~]+/g, '')
|
|
45
|
+
// Remove special characters
|
|
46
|
+
.normalize("NFD").replace(/[\u0300-\u036f]/g, "") || null;
|
|
47
|
+
}
|
|
48
|
+
async function npmViewAsync(...props) {
|
|
49
|
+
var ref;
|
|
50
|
+
const cmd = [
|
|
51
|
+
"view",
|
|
52
|
+
...props,
|
|
53
|
+
"--json"
|
|
54
|
+
];
|
|
55
|
+
const results = (ref = (await (0, _spawnAsync).default("npm", cmd)).stdout) == null ? void 0 : ref.trim();
|
|
56
|
+
const cmdString = `npm ${cmd.join(" ")}`;
|
|
57
|
+
debug("Run:", cmdString);
|
|
58
|
+
if (!results) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
return JSON.parse(results);
|
|
63
|
+
} catch (error) {
|
|
64
|
+
throw new Error(`Could not parse JSON returned from "${cmdString}".\n\n${results}\n\nError: ${error.message}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
async function getNpmUrlAsync(packageName) {
|
|
68
|
+
const results = await npmViewAsync(packageName, "dist.tarball");
|
|
69
|
+
(0, _assert).default(results, `Could not get npm url for package "${packageName}"`);
|
|
70
|
+
// Fully qualified url returns a string.
|
|
71
|
+
// Example:
|
|
72
|
+
// 𝝠 npm view expo-template-bare-minimum@sdk-33 dist.tarball --json
|
|
73
|
+
if (typeof results === "string") {
|
|
74
|
+
return results;
|
|
75
|
+
}
|
|
76
|
+
// When the tag is arbitrary, the tarball url is an array, return the last value as it's the most recent.
|
|
77
|
+
// Example:
|
|
78
|
+
// 𝝠 npm view expo-template-bare-minimum@33 dist.tarball --json
|
|
79
|
+
if (Array.isArray(results)) {
|
|
80
|
+
return results[results.length - 1];
|
|
81
|
+
}
|
|
82
|
+
throw new _errors.CommandError("Expected results of `npm view ...` to be an array or string. Instead found: " + results);
|
|
83
|
+
}
|
|
84
|
+
// @ts-ignore
|
|
85
|
+
const pipeline = (0, _util).promisify(_stream.Stream.pipeline);
|
|
86
|
+
async function downloadAndExtractNpmModuleAsync(npmName, props) {
|
|
87
|
+
const url = await getNpmUrlAsync(npmName);
|
|
88
|
+
debug("Fetch from URL:", url);
|
|
89
|
+
await extractNpmTarballFromUrlAsync(url, props);
|
|
90
|
+
}
|
|
91
|
+
async function extractLocalNpmTarballAsync(tarFilePath, props) {
|
|
92
|
+
const readStream = _fs.default.createReadStream(tarFilePath);
|
|
93
|
+
await extractNpmTarballAsync(readStream, props);
|
|
94
|
+
}
|
|
95
|
+
async function createUrlStreamAsync(url) {
|
|
96
|
+
const response = await cachedFetch(url);
|
|
97
|
+
if (!response.ok) {
|
|
98
|
+
throw new Error(`Unexpected response: ${response.statusText}. From url: ${url}`);
|
|
99
|
+
}
|
|
100
|
+
return response.body;
|
|
101
|
+
}
|
|
102
|
+
async function extractNpmTarballFromUrlAsync(url, props) {
|
|
103
|
+
await extractNpmTarballAsync(await createUrlStreamAsync(url), props);
|
|
104
|
+
}
|
|
105
|
+
async function extractNpmTarballAsync(stream, props) {
|
|
106
|
+
const { cwd , strip , name , fileList =[] } = props;
|
|
107
|
+
await (0, _dir).ensureDirectoryAsync(cwd);
|
|
108
|
+
await pipeline(stream, _tar.default.extract({
|
|
109
|
+
cwd,
|
|
110
|
+
transform: (0, _createFileTransform).createFileTransform(name),
|
|
111
|
+
onentry: (0, _createFileTransform).createEntryResolver(name),
|
|
112
|
+
strip: strip != null ? strip : 1
|
|
113
|
+
}, fileList));
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
//# sourceMappingURL=npm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/npm.ts"],"sourcesContent":["import { JSONValue } from '@expo/json-file';\nimport spawnAsync from '@expo/spawn-async';\nimport assert from 'assert';\nimport fs from 'fs';\nimport slugify from 'slugify';\nimport { Stream } from 'stream';\nimport tar from 'tar';\nimport { promisify } from 'util';\n\nimport { createEntryResolver, createFileTransform } from './createFileTransform';\nimport { ensureDirectoryAsync } from './dir';\nimport { CommandError } from './errors';\nimport { createCachedFetch } from '../api/rest/client';\n\nconst debug = require('debug')('expo:utils:npm') as typeof console.log;\n\nconst cachedFetch = createCachedFetch({\n cacheDirectory: 'template-cache',\n // Time to live. How long (in ms) responses remain cached before being automatically ejected. If undefined, responses are never automatically ejected from the cache.\n // ttl: 1000,\n});\n\nexport function sanitizeNpmPackageName(name: string): string {\n // https://github.com/npm/validate-npm-package-name/#naming-rules\n return (\n applyKnownNpmPackageNameRules(name) ||\n applyKnownNpmPackageNameRules(slugify(name)) ||\n // If nothing is left use 'app' like we do in Xcode projects.\n 'app'\n );\n}\n\nfunction applyKnownNpmPackageNameRules(name: string): string | null {\n // https://github.com/npm/validate-npm-package-name/#naming-rules\n\n // package name cannot start with '.' or '_'.\n while (/^(\\.|_)/.test(name)) {\n name = name.substring(1);\n }\n\n name = name.toLowerCase().replace(/[^a-zA-Z._\\-/@]/g, '');\n\n return (\n name\n // .replace(/![a-z0-9-._~]+/g, '')\n // Remove special characters\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '') || null\n );\n}\n\nexport async function npmViewAsync(...props: string[]): Promise<JSONValue> {\n const cmd = ['view', ...props, '--json'];\n const results = (await spawnAsync('npm', cmd)).stdout?.trim();\n const cmdString = `npm ${cmd.join(' ')}`;\n debug('Run:', cmdString);\n if (!results) {\n return null;\n }\n try {\n return JSON.parse(results);\n } catch (error: any) {\n throw new Error(\n `Could not parse JSON returned from \"${cmdString}\".\\n\\n${results}\\n\\nError: ${error.message}`\n );\n }\n}\n\n/** Given a package name like `expo` or `expo@beta`, return the registry URL if it exists. */\nexport async function getNpmUrlAsync(packageName: string): Promise<string> {\n const results = await npmViewAsync(packageName, 'dist.tarball');\n\n assert(results, `Could not get npm url for package \"${packageName}\"`);\n\n // Fully qualified url returns a string.\n // Example:\n // 𝝠 npm view expo-template-bare-minimum@sdk-33 dist.tarball --json\n if (typeof results === 'string') {\n return results;\n }\n\n // When the tag is arbitrary, the tarball url is an array, return the last value as it's the most recent.\n // Example:\n // 𝝠 npm view expo-template-bare-minimum@33 dist.tarball --json\n if (Array.isArray(results)) {\n return results[results.length - 1] as string;\n }\n\n throw new CommandError(\n 'Expected results of `npm view ...` to be an array or string. Instead found: ' + results\n );\n}\n\n// @ts-ignore\nconst pipeline = promisify(Stream.pipeline);\n\nexport async function downloadAndExtractNpmModuleAsync(\n npmName: string,\n props: ExtractProps\n): Promise<void> {\n const url = await getNpmUrlAsync(npmName);\n\n debug('Fetch from URL:', url);\n await extractNpmTarballFromUrlAsync(url, props);\n}\n\nexport async function extractLocalNpmTarballAsync(\n tarFilePath: string,\n props: ExtractProps\n): Promise<void> {\n const readStream = fs.createReadStream(tarFilePath);\n await extractNpmTarballAsync(readStream, props);\n}\n\ntype ExtractProps = {\n name: string;\n cwd: string;\n strip?: number;\n fileList?: string[];\n};\n\nasync function createUrlStreamAsync(url: string) {\n const response = await cachedFetch(url);\n if (!response.ok) {\n throw new Error(`Unexpected response: ${response.statusText}. From url: ${url}`);\n }\n\n return response.body;\n}\n\nexport async function extractNpmTarballFromUrlAsync(\n url: string,\n props: ExtractProps\n): Promise<void> {\n await extractNpmTarballAsync(await createUrlStreamAsync(url), props);\n}\n\nexport async function extractNpmTarballAsync(\n stream: NodeJS.ReadableStream,\n props: ExtractProps\n): Promise<void> {\n const { cwd, strip, name, fileList = [] } = props;\n\n await ensureDirectoryAsync(cwd);\n\n await pipeline(\n stream,\n tar.extract(\n {\n cwd,\n transform: createFileTransform(name),\n onentry: createEntryResolver(name),\n strip: strip ?? 1,\n },\n fileList\n )\n );\n}\n"],"names":["sanitizeNpmPackageName","npmViewAsync","getNpmUrlAsync","downloadAndExtractNpmModuleAsync","extractLocalNpmTarballAsync","extractNpmTarballFromUrlAsync","extractNpmTarballAsync","debug","require","cachedFetch","createCachedFetch","cacheDirectory","name","applyKnownNpmPackageNameRules","slugify","test","substring","toLowerCase","replace","normalize","props","cmd","results","spawnAsync","stdout","trim","cmdString","join","JSON","parse","error","Error","message","packageName","assert","Array","isArray","length","CommandError","pipeline","promisify","Stream","npmName","url","tarFilePath","readStream","fs","createReadStream","createUrlStreamAsync","response","ok","statusText","body","stream","cwd","strip","fileList","ensureDirectoryAsync","tar","extract","transform","createFileTransform","onentry","createEntryResolver"],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.get = get;
|
|
6
|
+
exports.set = set;
|
|
7
|
+
exports.pickBy = pickBy;
|
|
8
|
+
function get(obj, key) {
|
|
9
|
+
const branches = key.split(".");
|
|
10
|
+
let current = obj;
|
|
11
|
+
let branch;
|
|
12
|
+
while(branch = branches.shift()){
|
|
13
|
+
if (!(branch in current)) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
current = current[branch];
|
|
17
|
+
}
|
|
18
|
+
return current;
|
|
19
|
+
}
|
|
20
|
+
function set(obj, key, value) {
|
|
21
|
+
const branches = key.split(".");
|
|
22
|
+
let current = obj;
|
|
23
|
+
let branch;
|
|
24
|
+
while(branch = branches.shift()){
|
|
25
|
+
if (branches.length === 0) {
|
|
26
|
+
current[branch] = value;
|
|
27
|
+
return obj;
|
|
28
|
+
}
|
|
29
|
+
if (!(branch in current)) {
|
|
30
|
+
current[branch] = {};
|
|
31
|
+
}
|
|
32
|
+
current = current[branch];
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
function pickBy(obj, predicate) {
|
|
37
|
+
return Object.entries(obj).reduce((acc, [key, value])=>{
|
|
38
|
+
if (predicate(value, key)) {
|
|
39
|
+
acc[key] = value;
|
|
40
|
+
}
|
|
41
|
+
return acc;
|
|
42
|
+
}, {});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
//# sourceMappingURL=obj.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/obj.ts"],"sourcesContent":["/** `lodash.get` */\nexport function get(obj: any, key: string): any | null {\n const branches = key.split('.');\n let current: any = obj;\n let branch: string | undefined;\n while ((branch = branches.shift())) {\n if (!(branch in current)) {\n return null;\n }\n current = current[branch];\n }\n return current;\n}\n\n/** `lodash.set` */\nexport function set(obj: any, key: string, value: any): any | null {\n const branches = key.split('.');\n let current: any = obj;\n let branch: string | undefined;\n while ((branch = branches.shift())) {\n if (branches.length === 0) {\n current[branch] = value;\n return obj;\n }\n\n if (!(branch in current)) {\n current[branch] = {};\n }\n\n current = current[branch];\n }\n return null;\n}\n\n/** `lodash.pickBy` */\nexport function pickBy<T>(\n obj: { [key: string]: T },\n predicate: (value: T, key: string) => boolean | undefined\n) {\n return Object.entries(obj).reduce(\n (acc, [key, value]) => {\n if (predicate(value, key)) {\n acc[key] = value;\n }\n return acc;\n },\n {} as { [key: string]: T }\n );\n}\n"],"names":["get","set","pickBy","obj","key","branches","split","current","branch","shift","value","length","predicate","Object","entries","reduce","acc"],"mappings":"AACA;;;;QAAgBA,GAAG,GAAHA,GAAG;QAcHC,GAAG,GAAHA,GAAG;QAoBHC,MAAM,GAANA,MAAM;AAlCf,SAASF,GAAG,CAACG,GAAQ,EAAEC,GAAW,EAAc;IACrD,MAAMC,QAAQ,GAAGD,GAAG,CAACE,KAAK,CAAC,GAAG,CAAC,AAAC;IAChC,IAAIC,OAAO,GAAQJ,GAAG,AAAC;IACvB,IAAIK,MAAM,AAAoB,AAAC;IAC/B,MAAQA,MAAM,GAAGH,QAAQ,CAACI,KAAK,EAAE,CAAG;QAClC,IAAI,CAAC,CAACD,MAAM,IAAID,OAAO,CAAC,EAAE;YACxB,OAAO,IAAI,CAAC;SACb;QACDA,OAAO,GAAGA,OAAO,CAACC,MAAM,CAAC,CAAC;KAC3B;IACD,OAAOD,OAAO,CAAC;CAChB;AAGM,SAASN,GAAG,CAACE,GAAQ,EAAEC,GAAW,EAAEM,KAAU,EAAc;IACjE,MAAML,QAAQ,GAAGD,GAAG,CAACE,KAAK,CAAC,GAAG,CAAC,AAAC;IAChC,IAAIC,OAAO,GAAQJ,GAAG,AAAC;IACvB,IAAIK,MAAM,AAAoB,AAAC;IAC/B,MAAQA,MAAM,GAAGH,QAAQ,CAACI,KAAK,EAAE,CAAG;QAClC,IAAIJ,QAAQ,CAACM,MAAM,KAAK,CAAC,EAAE;YACzBJ,OAAO,CAACC,MAAM,CAAC,GAAGE,KAAK,CAAC;YACxB,OAAOP,GAAG,CAAC;SACZ;QAED,IAAI,CAAC,CAACK,MAAM,IAAID,OAAO,CAAC,EAAE;YACxBA,OAAO,CAACC,MAAM,CAAC,GAAG,EAAE,CAAC;SACtB;QAEDD,OAAO,GAAGA,OAAO,CAACC,MAAM,CAAC,CAAC;KAC3B;IACD,OAAO,IAAI,CAAC;CACb;AAGM,SAASN,MAAM,CACpBC,GAAyB,EACzBS,SAAyD,EACzD;IACA,OAAOC,MAAM,CAACC,OAAO,CAACX,GAAG,CAAC,CAACY,MAAM,CAC/B,CAACC,GAAG,EAAE,CAACZ,GAAG,EAAEM,KAAK,CAAC,GAAK;QACrB,IAAIE,SAAS,CAACF,KAAK,EAAEN,GAAG,CAAC,EAAE;YACzBY,GAAG,CAACZ,GAAG,CAAC,GAAGM,KAAK,CAAC;SAClB;QACD,OAAOM,GAAG,CAAC;KACZ,EACD,EAAE,CACH,CAAC;CACH"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
exports.openBrowserAsync = openBrowserAsync;
|
|
6
|
+
var _betterOpn = _interopRequireDefault(require("better-opn"));
|
|
7
|
+
function _interopRequireDefault(obj) {
|
|
8
|
+
return obj && obj.__esModule ? obj : {
|
|
9
|
+
default: obj
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
async function openBrowserAsync(target, options) {
|
|
13
|
+
if (process.platform !== "win32") {
|
|
14
|
+
return await (0, _betterOpn).default(target, options);
|
|
15
|
+
}
|
|
16
|
+
const oldSystemRoot = process.env.SYSTEMROOT;
|
|
17
|
+
try {
|
|
18
|
+
var _SYSTEMROOT;
|
|
19
|
+
process.env.SYSTEMROOT = (_SYSTEMROOT = process.env.SYSTEMROOT) != null ? _SYSTEMROOT : process.env.SystemRoot;
|
|
20
|
+
return await (0, _betterOpn).default(target, options);
|
|
21
|
+
} finally{
|
|
22
|
+
process.env.SYSTEMROOT = oldSystemRoot;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=open.js.map
|