@expo/cli 0.13.2 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/bin/cli +30 -27
- package/build/bin/cli.map +1 -1
- package/build/src/api/getVersions.js.map +1 -1
- package/build/src/api/rest/cache/response.js.map +1 -1
- package/build/src/api/rest/client.js +2 -2
- package/build/src/api/rest/client.js.map +1 -1
- package/build/src/config/configAsync.js +1 -1
- package/build/src/config/configAsync.js.map +1 -1
- package/build/src/config/index.js +2 -2
- package/build/src/config/index.js.map +1 -1
- package/build/src/customize/generate.js +1 -1
- package/build/src/customize/generate.js.map +1 -1
- package/build/src/customize/typescript.js +6 -4
- package/build/src/customize/typescript.js.map +1 -1
- package/build/src/export/createMetadataJson.js +3 -2
- package/build/src/export/createMetadataJson.js.map +1 -1
- package/build/src/export/embed/exportEmbedAsync.js +44 -17
- package/build/src/export/embed/exportEmbedAsync.js.map +1 -1
- package/build/src/export/embed/index.js +4 -4
- package/build/src/export/embed/index.js.map +1 -1
- package/build/src/export/embed/resolveOptions.js +3 -3
- package/build/src/export/embed/resolveOptions.js.map +1 -1
- package/build/src/export/exportApp.js +74 -83
- package/build/src/export/exportApp.js.map +1 -1
- package/build/src/export/exportAssets.js +81 -21
- package/build/src/export/exportAssets.js.map +1 -1
- package/build/src/export/exportHermes.js +24 -14
- package/build/src/export/exportHermes.js.map +1 -1
- package/build/src/export/exportStaticAsync.js +109 -58
- package/build/src/export/exportStaticAsync.js.map +1 -1
- package/build/src/export/favicon.js +2 -2
- package/build/src/export/favicon.js.map +1 -1
- package/build/src/export/fork-bundleAsync.js +56 -23
- package/build/src/export/fork-bundleAsync.js.map +1 -1
- package/build/src/export/index.js +11 -9
- package/build/src/export/index.js.map +1 -1
- package/build/src/export/metroAssetLocalPath.js +101 -0
- package/build/src/export/metroAssetLocalPath.js.map +1 -0
- package/build/src/export/persistMetroAssets.js +94 -21
- package/build/src/export/persistMetroAssets.js.map +1 -1
- package/build/src/export/resolveOptions.js +1 -1
- package/build/src/export/resolveOptions.js.map +1 -1
- package/build/src/export/saveAssets.js +9 -48
- package/build/src/export/saveAssets.js.map +1 -1
- package/build/src/export/web/exportWebAsync.js +1 -1
- package/build/src/export/web/exportWebAsync.js.map +1 -1
- package/build/src/export/web/index.js +2 -2
- package/build/src/export/web/index.js.map +1 -1
- package/build/src/export/writeContents.js +6 -3
- package/build/src/export/writeContents.js.map +1 -1
- package/build/src/install/applyPlugins.js +52 -0
- package/build/src/install/applyPlugins.js.map +1 -0
- package/build/src/install/checkPackages.js +2 -2
- package/build/src/install/checkPackages.js.map +1 -1
- package/build/src/install/fixPackages.js +84 -0
- package/build/src/install/fixPackages.js.map +1 -0
- package/build/src/install/installAsync.js +32 -61
- package/build/src/install/installAsync.js.map +1 -1
- package/build/src/install/installExpoPackage.js +79 -0
- package/build/src/install/installExpoPackage.js.map +1 -0
- package/build/src/login/index.js +1 -1
- package/build/src/login/index.js.map +1 -1
- package/build/src/logout/index.js +1 -1
- package/build/src/logout/index.js.map +1 -1
- package/build/src/prebuild/clearNativeFolder.js +1 -1
- package/build/src/prebuild/clearNativeFolder.js.map +1 -1
- package/build/src/prebuild/configureProjectAsync.js +3 -3
- package/build/src/prebuild/configureProjectAsync.js.map +1 -1
- package/build/src/prebuild/copyTemplateFiles.js +21 -30
- package/build/src/prebuild/copyTemplateFiles.js.map +1 -1
- package/build/src/prebuild/index.js +3 -3
- package/build/src/prebuild/index.js.map +1 -1
- package/build/src/prebuild/prebuildAsync.js +39 -17
- package/build/src/prebuild/prebuildAsync.js.map +1 -1
- package/build/src/prebuild/resolveOptions.js +2 -2
- package/build/src/prebuild/resolveOptions.js.map +1 -1
- package/build/src/prebuild/updateFromTemplate.js +6 -6
- package/build/src/prebuild/updateFromTemplate.js.map +1 -1
- package/build/src/prebuild/updatePackageJson.js +49 -36
- package/build/src/prebuild/updatePackageJson.js.map +1 -1
- package/build/src/prebuild/validateTemplatePlatforms.js +2 -2
- package/build/src/prebuild/validateTemplatePlatforms.js.map +1 -1
- package/build/src/register/index.js +1 -1
- package/build/src/register/index.js.map +1 -1
- package/build/src/run/android/index.js +2 -2
- package/build/src/run/android/index.js.map +1 -1
- package/build/src/run/ios/appleDevice/AppleDevice.js +35 -2
- package/build/src/run/ios/appleDevice/AppleDevice.js.map +1 -1
- package/build/src/run/ios/index.js +2 -2
- package/build/src/run/ios/index.js.map +1 -1
- package/build/src/start/doctor/dependencies/getVersionedPackages.js +12 -4
- package/build/src/start/doctor/dependencies/getVersionedPackages.js.map +1 -1
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js +20 -3
- package/build/src/start/doctor/dependencies/validateDependenciesVersions.js.map +1 -1
- package/build/src/start/index.js +3 -3
- package/build/src/start/index.js.map +1 -1
- package/build/src/start/interface/interactiveActions.js +30 -11
- package/build/src/start/interface/interactiveActions.js.map +1 -1
- package/build/src/start/server/BundlerDevServer.js +14 -10
- package/build/src/start/server/BundlerDevServer.js.map +1 -1
- package/build/src/start/server/DevServerManager.js +6 -1
- package/build/src/start/server/DevServerManager.js.map +1 -1
- package/build/src/start/server/DevToolsPluginManager.js +63 -0
- package/build/src/start/server/DevToolsPluginManager.js.map +1 -0
- package/build/src/start/server/getStaticRenderFunctions.js +21 -20
- package/build/src/start/server/getStaticRenderFunctions.js.map +1 -1
- package/build/src/start/server/metro/MetroBundlerDevServer.js +67 -64
- package/build/src/start/server/metro/MetroBundlerDevServer.js.map +1 -1
- package/build/src/start/server/metro/bundleApiRoutes.js +4 -19
- package/build/src/start/server/metro/bundleApiRoutes.js.map +1 -1
- 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 +13 -1
- package/build/src/start/server/metro/createServerRouteMiddleware.js.map +1 -1
- package/build/src/start/server/metro/externals.js +25 -3
- package/build/src/start/server/metro/externals.js.map +1 -1
- package/build/src/start/server/metro/fetchRouterManifest.js.map +1 -1
- 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/inspector-proxy/device.js +3 -1
- package/build/src/start/server/metro/inspector-proxy/device.js.map +1 -1
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js +3 -4
- package/build/src/start/server/metro/inspector-proxy/handlers/VscodeDebuggerGetPossibleBreakpoints.js.map +1 -1
- 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/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 +10 -7
- package/build/src/start/server/metro/inspector-proxy/index.js.map +1 -1
- package/build/src/start/server/metro/instantiateMetro.js +37 -16
- package/build/src/start/server/metro/instantiateMetro.js.map +1 -1
- package/build/src/start/server/metro/metroErrorInterface.js +3 -2
- package/build/src/start/server/metro/metroErrorInterface.js.map +1 -1
- package/build/src/start/server/metro/router.js +6 -3
- package/build/src/start/server/metro/router.js.map +1 -1
- package/build/src/start/server/metro/runServer-fork.js +19 -10
- package/build/src/start/server/metro/runServer-fork.js.map +1 -1
- 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/waitForMetroToObserveTypeScriptFile.js +1 -2
- package/build/src/start/server/metro/waitForMetroToObserveTypeScriptFile.js.map +1 -1
- package/build/src/start/server/metro/withMetroMultiPlatform.js +268 -191
- package/build/src/start/server/metro/withMetroMultiPlatform.js.map +1 -1
- package/build/src/start/server/metro/withMetroResolvers.js +114 -40
- package/build/src/start/server/metro/withMetroResolvers.js.map +1 -1
- 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/ExpoMiddleware.js +2 -2
- package/build/src/start/server/middleware/ExpoMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/ManifestMiddleware.js +45 -68
- package/build/src/start/server/middleware/ManifestMiddleware.js.map +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js +1 -1
- package/build/src/start/server/middleware/inspector/JsInspector.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js +30 -26
- package/build/src/start/server/middleware/inspector/LaunchBrowser.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js +7 -7
- package/build/src/start/server/middleware/inspector/LaunchBrowser.types.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js +5 -2
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplLinux.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js +3 -2
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplMacOS.js.map +1 -1
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js +8 -7
- package/build/src/start/server/middleware/inspector/LaunchBrowserImplWindows.js.map +1 -1
- package/build/src/start/server/middleware/metroOptions.js +123 -0
- package/build/src/start/server/middleware/metroOptions.js.map +1 -0
- package/build/src/start/server/middleware/resolveAssets.js.map +1 -1
- package/build/src/start/server/type-generation/__typetests__/fixtures/basic.js.map +1 -1
- package/build/src/start/server/type-generation/expo-env.js +1 -1
- package/build/src/start/server/type-generation/expo-env.js.map +1 -1
- package/build/src/start/server/type-generation/routes.js +1 -0
- package/build/src/start/server/type-generation/routes.js.map +1 -1
- package/build/src/utils/analytics/getMetroDebugProperties.js +1 -2
- package/build/src/utils/analytics/getMetroDebugProperties.js.map +1 -1
- package/build/src/utils/analytics/getMetroProperties.js +1 -2
- package/build/src/utils/analytics/getMetroProperties.js.map +1 -1
- package/build/src/utils/analytics/rudderstackClient.js +2 -2
- package/build/src/utils/args.js +4 -2
- package/build/src/utils/args.js.map +1 -1
- package/build/src/utils/cocoapods.js +2 -1
- package/build/src/utils/cocoapods.js.map +1 -1
- package/build/src/utils/dir.js +18 -8
- package/build/src/utils/dir.js.map +1 -1
- package/build/src/utils/env.js +6 -0
- package/build/src/utils/env.js.map +1 -1
- package/build/src/utils/getOrPromptApplicationId.js +2 -4
- package/build/src/utils/getOrPromptApplicationId.js.map +1 -1
- package/build/src/utils/prompts.js +1 -28
- package/build/src/utils/prompts.js.map +1 -1
- package/build/src/whoami/index.js +1 -1
- package/build/src/whoami/index.js.map +1 -1
- package/package.json +16 -16
- 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/build/src/export/createBundles.js +0 -37
- package/build/src/export/createBundles.js.map +0 -1
- package/build/src/start/server/metro/resolveFromProject.js +0 -90
- package/build/src/start/server/metro/resolveFromProject.js.map +0 -1
- package/build/src/start/server/middleware/resolveEntryPoint.js +0 -42
- package/build/src/start/server/middleware/resolveEntryPoint.js.map +0 -1
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
exports.createBundlesAsync = createBundlesAsync;
|
|
6
|
-
var _config = require("@expo/config");
|
|
7
|
-
var _forkBundleAsync = require("./fork-bundleAsync");
|
|
8
|
-
var _manifestMiddleware = require("../start/server/middleware/ManifestMiddleware");
|
|
9
|
-
async function createBundlesAsync(projectRoot, publishOptions = {}, bundleOptions) {
|
|
10
|
-
if (!bundleOptions.platforms.length) {
|
|
11
|
-
return {};
|
|
12
|
-
}
|
|
13
|
-
const projectConfig = (0, _config).getConfig(projectRoot, {
|
|
14
|
-
skipSDKVersionRequirement: true
|
|
15
|
-
});
|
|
16
|
-
const { exp } = projectConfig;
|
|
17
|
-
const bundles = await (0, _forkBundleAsync).bundleAsync(projectRoot, exp, {
|
|
18
|
-
// If not legacy, ignore the target option to prevent warnings from being thrown.
|
|
19
|
-
resetCache: publishOptions.resetCache,
|
|
20
|
-
maxWorkers: publishOptions.maxWorkers,
|
|
21
|
-
quiet: false
|
|
22
|
-
}, bundleOptions.platforms.map((platform)=>({
|
|
23
|
-
platform,
|
|
24
|
-
entryPoint: (0, _manifestMiddleware).getEntryWithServerRoot(projectRoot, projectConfig, platform),
|
|
25
|
-
minify: bundleOptions.minify,
|
|
26
|
-
dev: bundleOptions.dev
|
|
27
|
-
})
|
|
28
|
-
));
|
|
29
|
-
// { ios: bundle, android: bundle }
|
|
30
|
-
return bundleOptions.platforms.reduce((prev, platform, index)=>({
|
|
31
|
-
...prev,
|
|
32
|
-
[platform]: bundles[index]
|
|
33
|
-
})
|
|
34
|
-
, {});
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
//# sourceMappingURL=createBundles.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/export/createBundles.ts"],"sourcesContent":["import { getConfig, Platform, ProjectTarget } from '@expo/config';\n\nimport { bundleAsync, BundleOutput } from './fork-bundleAsync';\nimport { getEntryWithServerRoot } from '../start/server/middleware/ManifestMiddleware';\n\nexport type PublishOptions = {\n releaseChannel?: string;\n target?: ProjectTarget;\n resetCache?: boolean;\n maxWorkers?: number;\n};\n\n// TODO: Reduce layers of indirection\nexport async function createBundlesAsync(\n projectRoot: string,\n publishOptions: PublishOptions = {},\n bundleOptions: { platforms: Platform[]; dev?: boolean; minify?: boolean }\n): Promise<Partial<Record<Platform, BundleOutput>>> {\n if (!bundleOptions.platforms.length) {\n return {};\n }\n const projectConfig = getConfig(projectRoot, { skipSDKVersionRequirement: true });\n const { exp } = projectConfig;\n\n const bundles = await bundleAsync(\n projectRoot,\n exp,\n {\n // If not legacy, ignore the target option to prevent warnings from being thrown.\n resetCache: publishOptions.resetCache,\n maxWorkers: publishOptions.maxWorkers,\n quiet: false,\n },\n bundleOptions.platforms.map((platform: Platform) => ({\n platform,\n entryPoint: getEntryWithServerRoot(projectRoot, projectConfig, platform),\n minify: bundleOptions.minify,\n dev: bundleOptions.dev,\n }))\n );\n\n // { ios: bundle, android: bundle }\n return bundleOptions.platforms.reduce<Partial<Record<Platform, BundleOutput>>>(\n (prev, platform, index) => ({\n ...prev,\n [platform]: bundles[index],\n }),\n {}\n );\n}\n"],"names":["createBundlesAsync","projectRoot","publishOptions","bundleOptions","platforms","length","projectConfig","getConfig","skipSDKVersionRequirement","exp","bundles","bundleAsync","resetCache","maxWorkers","quiet","map","platform","entryPoint","getEntryWithServerRoot","minify","dev","reduce","prev","index"],"mappings":"AAAA;;;;QAasBA,kBAAkB,GAAlBA,kBAAkB;AAbW,IAAA,OAAc,WAAd,cAAc,CAAA;AAEvB,IAAA,gBAAoB,WAApB,oBAAoB,CAAA;AACvB,IAAA,mBAA+C,WAA/C,+CAA+C,CAAA;AAU/E,eAAeA,kBAAkB,CACtCC,WAAmB,EACnBC,cAA8B,GAAG,EAAE,EACnCC,aAAyE,EACvB;IAClD,IAAI,CAACA,aAAa,CAACC,SAAS,CAACC,MAAM,EAAE;QACnC,OAAO,EAAE,CAAC;KACX;IACD,MAAMC,aAAa,GAAGC,CAAAA,GAAAA,OAAS,AAAkD,CAAA,UAAlD,CAACN,WAAW,EAAE;QAAEO,yBAAyB,EAAE,IAAI;KAAE,CAAC,AAAC;IAClF,MAAM,EAAEC,GAAG,CAAA,EAAE,GAAGH,aAAa,AAAC;IAE9B,MAAMI,OAAO,GAAG,MAAMC,CAAAA,GAAAA,gBAAW,AAehC,CAAA,YAfgC,CAC/BV,WAAW,EACXQ,GAAG,EACH;QACE,iFAAiF;QACjFG,UAAU,EAAEV,cAAc,CAACU,UAAU;QACrCC,UAAU,EAAEX,cAAc,CAACW,UAAU;QACrCC,KAAK,EAAE,KAAK;KACb,EACDX,aAAa,CAACC,SAAS,CAACW,GAAG,CAAC,CAACC,QAAkB,GAAK,CAAC;YACnDA,QAAQ;YACRC,UAAU,EAAEC,CAAAA,GAAAA,mBAAsB,AAAsC,CAAA,uBAAtC,CAACjB,WAAW,EAAEK,aAAa,EAAEU,QAAQ,CAAC;YACxEG,MAAM,EAAEhB,aAAa,CAACgB,MAAM;YAC5BC,GAAG,EAAEjB,aAAa,CAACiB,GAAG;SACvB,CAAC;IAAA,CAAC,CACJ,AAAC;IAEF,mCAAmC;IACnC,OAAOjB,aAAa,CAACC,SAAS,CAACiB,MAAM,CACnC,CAACC,IAAI,EAAEN,QAAQ,EAAEO,KAAK,GAAK,CAAC;YAC1B,GAAGD,IAAI;YACP,CAACN,QAAQ,CAAC,EAAEN,OAAO,CAACa,KAAK,CAAC;SAC3B,CAAC;IAAA,EACF,EAAE,CACH,CAAC;CACH"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
exports.importCliServerApiFromProject = importCliServerApiFromProject;
|
|
6
|
-
exports.importMetroSourceMapComposeSourceMapsFromProject = importMetroSourceMapComposeSourceMapsFromProject;
|
|
7
|
-
exports.resolveFromProject = resolveFromProject;
|
|
8
|
-
exports.importMetroFromProject = importMetroFromProject;
|
|
9
|
-
exports.importMetroServerFromProject = importMetroServerFromProject;
|
|
10
|
-
exports.importMetroCreateWebsocketServerFromProject = importMetroCreateWebsocketServerFromProject;
|
|
11
|
-
exports.importMetroHmrServerFromProject = importMetroHmrServerFromProject;
|
|
12
|
-
exports.importExpoMetroConfig = importExpoMetroConfig;
|
|
13
|
-
exports.importFromProjectOrFallback = importFromProjectOrFallback;
|
|
14
|
-
exports.importMetroResolverFromProject = importMetroResolverFromProject;
|
|
15
|
-
exports.importMetroInspectorProxyFromProject = importMetroInspectorProxyFromProject;
|
|
16
|
-
exports.importMetroInspectorDeviceFromProject = importMetroInspectorDeviceFromProject;
|
|
17
|
-
exports.importCliSaveAssetsFromProject = importCliSaveAssetsFromProject;
|
|
18
|
-
exports.resolveMetroVersionFromProject = resolveMetroVersionFromProject;
|
|
19
|
-
var _resolveFrom = _interopRequireDefault(require("resolve-from"));
|
|
20
|
-
function _interopRequireDefault(obj) {
|
|
21
|
-
return obj && obj.__esModule ? obj : {
|
|
22
|
-
default: obj
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
const debug = require("debug")("expo:metro:import");
|
|
26
|
-
// These resolvers enable us to test the CLI in older projects.
|
|
27
|
-
// We may be able to get rid of this in the future.
|
|
28
|
-
// TODO: Maybe combine with AsyncResolver?
|
|
29
|
-
class MetroImportError extends Error {
|
|
30
|
-
constructor(projectRoot, moduleId){
|
|
31
|
-
super(`Missing package "${moduleId}" in the project at: ${projectRoot}\n` + 'This usually means "react-native" is not installed. ' + 'Please verify that dependencies in package.json include "react-native" ' + "and run `yarn` or `npm install`.");
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
function importCliServerApiFromProject(projectRoot) {
|
|
35
|
-
return importFromProject(projectRoot, "@react-native-community/cli-server-api");
|
|
36
|
-
}
|
|
37
|
-
function importMetroSourceMapComposeSourceMapsFromProject(projectRoot) {
|
|
38
|
-
return importFromProject(projectRoot, "metro-source-map/src/composeSourceMaps");
|
|
39
|
-
}
|
|
40
|
-
function resolveFromProject(projectRoot, moduleId) {
|
|
41
|
-
const resolvedPath = _resolveFrom.default.silent(projectRoot, moduleId);
|
|
42
|
-
if (!resolvedPath) {
|
|
43
|
-
throw new MetroImportError(projectRoot, moduleId);
|
|
44
|
-
}
|
|
45
|
-
return resolvedPath;
|
|
46
|
-
}
|
|
47
|
-
function importFromProject(projectRoot, moduleId) {
|
|
48
|
-
return require(resolveFromProject(projectRoot, moduleId));
|
|
49
|
-
}
|
|
50
|
-
function importMetroFromProject(projectRoot) {
|
|
51
|
-
return importFromProject(projectRoot, "metro");
|
|
52
|
-
}
|
|
53
|
-
function importMetroServerFromProject(projectRoot) {
|
|
54
|
-
return importFromProject(projectRoot, "metro/src/Server");
|
|
55
|
-
}
|
|
56
|
-
function importMetroCreateWebsocketServerFromProject(projectRoot) {
|
|
57
|
-
return importFromProject(projectRoot, "metro/src/lib/createWebsocketServer");
|
|
58
|
-
}
|
|
59
|
-
function importMetroHmrServerFromProject(projectRoot) {
|
|
60
|
-
return importFromProject(projectRoot, "metro/src/HmrServer");
|
|
61
|
-
}
|
|
62
|
-
function importExpoMetroConfig(projectRoot) {
|
|
63
|
-
return importFromProjectOrFallback(projectRoot, "@expo/metro-config");
|
|
64
|
-
}
|
|
65
|
-
function importFromProjectOrFallback(projectRoot, moduleId) {
|
|
66
|
-
const resolvedPath = _resolveFrom.default.silent(projectRoot, moduleId);
|
|
67
|
-
if (!resolvedPath) {
|
|
68
|
-
debug(`requiring "${moduleId}" relative to the CLI`);
|
|
69
|
-
return require(require.resolve(moduleId));
|
|
70
|
-
}
|
|
71
|
-
debug(`requiring "${moduleId}" from the project:`, resolvedPath);
|
|
72
|
-
return require(resolvedPath);
|
|
73
|
-
}
|
|
74
|
-
function importMetroResolverFromProject(projectRoot) {
|
|
75
|
-
return importFromProject(projectRoot, "metro-resolver");
|
|
76
|
-
}
|
|
77
|
-
function importMetroInspectorProxyFromProject(projectRoot) {
|
|
78
|
-
return importFromProject(projectRoot, "metro-inspector-proxy");
|
|
79
|
-
}
|
|
80
|
-
function importMetroInspectorDeviceFromProject(projectRoot) {
|
|
81
|
-
return importFromProject(projectRoot, "metro-inspector-proxy/src/Device");
|
|
82
|
-
}
|
|
83
|
-
function importCliSaveAssetsFromProject(projectRoot) {
|
|
84
|
-
return importFromProject(projectRoot, "@react-native-community/cli-plugin-metro/build/commands/bundle/saveAssets").default;
|
|
85
|
-
}
|
|
86
|
-
function resolveMetroVersionFromProject(projectRoot) {
|
|
87
|
-
return importFromProject(projectRoot, "metro/package.json").version;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
//# sourceMappingURL=resolveFromProject.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/server/metro/resolveFromProject.ts"],"sourcesContent":["import resolveFrom from 'resolve-from';\n\nconst debug = require('debug')('expo:metro:import');\n\n// These resolvers enable us to test the CLI in older projects.\n// We may be able to get rid of this in the future.\n// TODO: Maybe combine with AsyncResolver?\nclass MetroImportError extends Error {\n constructor(projectRoot: string, moduleId: string) {\n super(\n `Missing package \"${moduleId}\" in the project at: ${projectRoot}\\n` +\n 'This usually means \"react-native\" is not installed. ' +\n 'Please verify that dependencies in package.json include \"react-native\" ' +\n 'and run `yarn` or `npm install`.'\n );\n }\n}\n\nexport function importCliServerApiFromProject(\n projectRoot: string\n): typeof import('@react-native-community/cli-server-api') {\n return importFromProject(projectRoot, '@react-native-community/cli-server-api');\n}\n\nexport function importMetroSourceMapComposeSourceMapsFromProject(\n projectRoot: string\n): typeof import('metro-source-map').composeSourceMaps {\n return importFromProject(projectRoot, 'metro-source-map/src/composeSourceMaps');\n}\n\nexport function resolveFromProject(projectRoot: string, moduleId: string) {\n const resolvedPath = resolveFrom.silent(projectRoot, moduleId);\n if (!resolvedPath) {\n throw new MetroImportError(projectRoot, moduleId);\n }\n return resolvedPath;\n}\n\nfunction importFromProject(projectRoot: string, moduleId: string) {\n return require(resolveFromProject(projectRoot, moduleId));\n}\n\n/** Import `metro` from the project. */\nexport function importMetroFromProject(projectRoot: string): typeof import('metro') {\n return importFromProject(projectRoot, 'metro');\n}\nexport function importMetroServerFromProject(projectRoot: string): typeof import('metro').Server {\n return importFromProject(projectRoot, 'metro/src/Server');\n}\nexport function importMetroCreateWebsocketServerFromProject(\n projectRoot: string\n): typeof import('metro/src/lib/createWebsocketServer').createWebsocketServer {\n return importFromProject(projectRoot, 'metro/src/lib/createWebsocketServer');\n}\nexport function importMetroHmrServerFromProject(\n projectRoot: string\n): typeof import('metro/src/HmrServer').MetroHmrServer {\n return importFromProject(projectRoot, 'metro/src/HmrServer');\n}\n\nexport function importExpoMetroConfig(projectRoot: string) {\n return importFromProjectOrFallback<typeof import('@expo/metro-config')>(\n projectRoot,\n '@expo/metro-config'\n );\n}\n\n/**\n * Attempt to use the local version of a module or fallback on the CLI version.\n * This should only ever happen when testing Expo CLI in development.\n */\nexport function importFromProjectOrFallback<TModule>(\n projectRoot: string,\n moduleId: string\n): TModule {\n const resolvedPath = resolveFrom.silent(projectRoot, moduleId);\n if (!resolvedPath) {\n debug(`requiring \"${moduleId}\" relative to the CLI`);\n return require(require.resolve(moduleId));\n }\n debug(`requiring \"${moduleId}\" from the project:`, resolvedPath);\n return require(resolvedPath);\n}\n\n/** Import `metro-resolver` from the project. */\nexport function importMetroResolverFromProject(\n projectRoot: string\n): typeof import('metro-resolver') {\n return importFromProject(projectRoot, 'metro-resolver');\n}\n\n/** Import `metro-inspector-proxy` from the project. */\nexport function importMetroInspectorProxyFromProject(\n projectRoot: string\n): typeof import('metro-inspector-proxy') {\n return importFromProject(projectRoot, 'metro-inspector-proxy');\n}\n\n/** Import `metro-inspector-proxy/src/Device` from the project. */\nexport function importMetroInspectorDeviceFromProject(\n projectRoot: string\n): typeof import('metro-inspector-proxy/src/Device') {\n return importFromProject(projectRoot, 'metro-inspector-proxy/src/Device');\n}\n\n/**\n * Import the internal `saveAssets()` function from `react-native` for the purpose\n * of saving production assets as-is instead of converting them to a hash.\n */\nexport function importCliSaveAssetsFromProject(\n projectRoot: string\n): typeof import('@react-native-community/cli-plugin-metro/build/commands/bundle/saveAssets').default {\n return importFromProject(\n projectRoot,\n '@react-native-community/cli-plugin-metro/build/commands/bundle/saveAssets'\n ).default;\n}\n\n/** Resolve the installed Metro version from project */\nexport function resolveMetroVersionFromProject(projectRoot: string): string {\n return importFromProject(projectRoot, 'metro/package.json').version;\n}\n"],"names":["importCliServerApiFromProject","importMetroSourceMapComposeSourceMapsFromProject","resolveFromProject","importMetroFromProject","importMetroServerFromProject","importMetroCreateWebsocketServerFromProject","importMetroHmrServerFromProject","importExpoMetroConfig","importFromProjectOrFallback","importMetroResolverFromProject","importMetroInspectorProxyFromProject","importMetroInspectorDeviceFromProject","importCliSaveAssetsFromProject","resolveMetroVersionFromProject","debug","require","MetroImportError","Error","constructor","projectRoot","moduleId","importFromProject","resolvedPath","resolveFrom","silent","resolve","default","version"],"mappings":"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"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
exports.resolveEntryPoint = resolveEntryPoint;
|
|
6
|
-
exports.resolveAbsoluteEntryPoint = resolveAbsoluteEntryPoint;
|
|
7
|
-
var _paths = require("@expo/config/paths");
|
|
8
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
9
|
-
var _path = _interopRequireDefault(require("path"));
|
|
10
|
-
var _errors = require("../../../utils/errors");
|
|
11
|
-
function _interopRequireDefault(obj) {
|
|
12
|
-
return obj && obj.__esModule ? obj : {
|
|
13
|
-
default: obj
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
const supportedPlatforms = [
|
|
17
|
-
"ios",
|
|
18
|
-
"android",
|
|
19
|
-
"web",
|
|
20
|
-
"none"
|
|
21
|
-
];
|
|
22
|
-
function resolveEntryPoint(projectRoot, platform, projectConfig) {
|
|
23
|
-
return _path.default.relative(projectRoot, resolveAbsoluteEntryPoint(projectRoot, platform, projectConfig));
|
|
24
|
-
}
|
|
25
|
-
function resolveAbsoluteEntryPoint(projectRoot, platform, projectConfig) {
|
|
26
|
-
if (platform && !supportedPlatforms.includes(platform)) {
|
|
27
|
-
throw new _errors.CommandError(`Failed to resolve the project's entry file: The platform "${platform}" is not supported.`);
|
|
28
|
-
}
|
|
29
|
-
// TODO(Bacon): support platform extension resolution like .ios, .native
|
|
30
|
-
// const platforms = [platform, 'native'].filter(Boolean) as string[];
|
|
31
|
-
const platforms = [];
|
|
32
|
-
const entry = (0, _paths).getEntryPoint(projectRoot, [
|
|
33
|
-
"./index"
|
|
34
|
-
], platforms, projectConfig);
|
|
35
|
-
if (!entry) {
|
|
36
|
-
// NOTE(Bacon): I purposefully don't mention all possible resolutions here since the package.json is the most standard and users should opt towards that.
|
|
37
|
-
throw new _errors.CommandError(_chalk.default`The project entry file could not be resolved. Please define it in the {bold package.json} "main" field.`);
|
|
38
|
-
}
|
|
39
|
-
return entry;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
//# sourceMappingURL=resolveEntryPoint.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/start/server/middleware/resolveEntryPoint.ts"],"sourcesContent":["import { ProjectConfig } from '@expo/config';\nimport { getEntryPoint } from '@expo/config/paths';\nimport chalk from 'chalk';\nimport path from 'path';\n\nimport { CommandError } from '../../../utils/errors';\n\nconst supportedPlatforms = ['ios', 'android', 'web', 'none'];\n\n/** @returns the relative entry file for the project. */\nexport function resolveEntryPoint(\n projectRoot: string,\n platform?: string,\n projectConfig?: ProjectConfig\n): string {\n return path.relative(\n projectRoot,\n resolveAbsoluteEntryPoint(projectRoot, platform, projectConfig)\n );\n}\n\n/** @returns the absolute entry file for the project. */\nexport function resolveAbsoluteEntryPoint(\n projectRoot: string,\n platform?: string,\n projectConfig?: ProjectConfig\n): string {\n if (platform && !supportedPlatforms.includes(platform)) {\n throw new CommandError(\n `Failed to resolve the project's entry file: The platform \"${platform}\" is not supported.`\n );\n }\n // TODO(Bacon): support platform extension resolution like .ios, .native\n // const platforms = [platform, 'native'].filter(Boolean) as string[];\n const platforms: string[] = [];\n\n const entry = getEntryPoint(projectRoot, ['./index'], platforms, projectConfig);\n if (!entry) {\n // NOTE(Bacon): I purposefully don't mention all possible resolutions here since the package.json is the most standard and users should opt towards that.\n throw new CommandError(\n chalk`The project entry file could not be resolved. Please define it in the {bold package.json} \"main\" field.`\n );\n }\n\n return entry;\n}\n"],"names":["resolveEntryPoint","resolveAbsoluteEntryPoint","supportedPlatforms","projectRoot","platform","projectConfig","path","relative","includes","CommandError","platforms","entry","getEntryPoint","chalk"],"mappings":"AAAA;;;;QAUgBA,iBAAiB,GAAjBA,iBAAiB;QAYjBC,yBAAyB,GAAzBA,yBAAyB;AArBX,IAAA,MAAoB,WAApB,oBAAoB,CAAA;AAChC,IAAA,MAAO,kCAAP,OAAO,EAAA;AACR,IAAA,KAAM,kCAAN,MAAM,EAAA;AAEM,IAAA,OAAuB,WAAvB,uBAAuB,CAAA;;;;;;AAEpD,MAAMC,kBAAkB,GAAG;IAAC,KAAK;IAAE,SAAS;IAAE,KAAK;IAAE,MAAM;CAAC,AAAC;AAGtD,SAASF,iBAAiB,CAC/BG,WAAmB,EACnBC,QAAiB,EACjBC,aAA6B,EACrB;IACR,OAAOC,KAAI,QAAA,CAACC,QAAQ,CAClBJ,WAAW,EACXF,yBAAyB,CAACE,WAAW,EAAEC,QAAQ,EAAEC,aAAa,CAAC,CAChE,CAAC;CACH;AAGM,SAASJ,yBAAyB,CACvCE,WAAmB,EACnBC,QAAiB,EACjBC,aAA6B,EACrB;IACR,IAAID,QAAQ,IAAI,CAACF,kBAAkB,CAACM,QAAQ,CAACJ,QAAQ,CAAC,EAAE;QACtD,MAAM,IAAIK,OAAY,aAAA,CACpB,CAAC,0DAA0D,EAAEL,QAAQ,CAAC,mBAAmB,CAAC,CAC3F,CAAC;KACH;IACD,wEAAwE;IACxE,sEAAsE;IACtE,MAAMM,SAAS,GAAa,EAAE,AAAC;IAE/B,MAAMC,KAAK,GAAGC,CAAAA,GAAAA,MAAa,AAAoD,CAAA,cAApD,CAACT,WAAW,EAAE;QAAC,SAAS;KAAC,EAAEO,SAAS,EAAEL,aAAa,CAAC,AAAC;IAChF,IAAI,CAACM,KAAK,EAAE;QACV,yJAAyJ;QACzJ,MAAM,IAAIF,OAAY,aAAA,CACpBI,MAAK,QAAA,CAAC,uGAAuG,CAAC,CAC/G,CAAC;KACH;IAED,OAAOF,KAAK,CAAC;CACd"}
|