@vxrn/vite-plugin-metro 1.14.4 → 1.14.5
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/dist/cjs/babel-plugins/import-meta-env-plugin.cjs +55 -37
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +111 -94
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
- package/dist/cjs/env/platformEnv.cjs +21 -14
- package/dist/cjs/env/platformEnv.native.js +30 -20
- package/dist/cjs/env/platformEnv.native.js.map +1 -1
- package/dist/cjs/index.cjs +16 -14
- package/dist/cjs/index.native.js +16 -14
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +25 -19
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +39 -29
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +103 -92
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +111 -104
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.cjs +17 -13
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +23 -19
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
- package/dist/cjs/metro-config/types.cjs +7 -5
- package/dist/cjs/metro-config/types.native.js +7 -5
- package/dist/cjs/metro-config/types.native.js.map +1 -1
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +37 -25
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +49 -33
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
- package/dist/cjs/plugins/metroPlugin.cjs +184 -126
- package/dist/cjs/plugins/metroPlugin.native.js +193 -140
- package/dist/cjs/plugins/metroPlugin.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.cjs +34 -30
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js +56 -44
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/assetPathUtils.cjs +26 -15
- package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js +22 -13
- package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/buildBundle.cjs +36 -26
- package/dist/cjs/rn-commands/bundle/buildBundle.native.js +42 -32
- package/dist/cjs/rn-commands/bundle/buildBundle.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.cjs +52 -41
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js +57 -46
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.cjs +23 -15
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js +30 -19
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.cjs +28 -26
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js +28 -26
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.cjs +26 -24
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js +26 -24
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +22 -16
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +16 -14
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/index.cjs +14 -12
- package/dist/cjs/rn-commands/bundle/index.native.js +14 -12
- package/dist/cjs/rn-commands/bundle/index.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/saveAssets.cjs +69 -51
- package/dist/cjs/rn-commands/bundle/saveAssets.native.js +75 -55
- package/dist/cjs/rn-commands/bundle/saveAssets.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/types.cjs +7 -5
- package/dist/cjs/rn-commands/bundle/types.native.js +7 -5
- package/dist/cjs/rn-commands/bundle/types.native.js.map +1 -1
- package/dist/cjs/rn-commands/index.cjs +24 -22
- package/dist/cjs/rn-commands/index.native.js +24 -22
- package/dist/cjs/rn-commands/index.native.js.map +1 -1
- package/dist/cjs/transformer/babel-core.cjs +12 -10
- package/dist/cjs/transformer/babel-core.native.js +12 -10
- package/dist/cjs/transformer/babel-core.native.js.map +1 -1
- package/dist/cjs/transformer/babel-transformer.cjs +106 -89
- package/dist/cjs/transformer/babel-transformer.native.js +106 -96
- package/dist/cjs/transformer/babel-transformer.native.js.map +1 -1
- package/dist/cjs/transformer/loadBabelConfig.cjs +43 -32
- package/dist/cjs/transformer/loadBabelConfig.native.js +51 -41
- package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -1
- package/dist/cjs/transformer/transformSync.cjs +33 -25
- package/dist/cjs/transformer/transformSync.native.js +38 -30
- package/dist/cjs/transformer/transformSync.native.js.map +1 -1
- package/dist/cjs/transformer/types.cjs +7 -5
- package/dist/cjs/transformer/types.native.js +7 -5
- package/dist/cjs/transformer/types.native.js.map +1 -1
- package/dist/cjs/utils/exit.cjs +95 -53
- package/dist/cjs/utils/exit.native.js +138 -81
- package/dist/cjs/utils/exit.native.js.map +1 -1
- package/dist/cjs/utils/getTerminalReporter.cjs +33 -28
- package/dist/cjs/utils/getTerminalReporter.native.js +40 -33
- package/dist/cjs/utils/getTerminalReporter.native.js.map +1 -1
- package/dist/cjs/utils/metroCacheManager.cjs +82 -46
- package/dist/cjs/utils/metroCacheManager.native.js +96 -57
- package/dist/cjs/utils/metroCacheManager.native.js.map +1 -1
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +21 -17
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +12 -10
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
- package/dist/cjs/utils/projectImport.cjs +40 -30
- package/dist/cjs/utils/projectImport.native.js +49 -37
- package/dist/cjs/utils/projectImport.native.js.map +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +28 -12
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +83 -68
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
- package/dist/esm/env/platformEnv.mjs +9 -4
- package/dist/esm/env/platformEnv.mjs.map +1 -1
- package/dist/esm/env/platformEnv.native.js +18 -10
- package/dist/esm/env/platformEnv.native.js.map +1 -1
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +13 -9
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +27 -19
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +75 -66
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +83 -78
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs +5 -3
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs.map +1 -1
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +11 -9
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +22 -12
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +34 -20
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
- package/dist/esm/plugins/metroPlugin.mjs +152 -96
- package/dist/esm/plugins/metroPlugin.mjs.map +1 -1
- package/dist/esm/plugins/metroPlugin.native.js +158 -107
- package/dist/esm/plugins/metroPlugin.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs +7 -5
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js +29 -19
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/assetPathUtils.mjs +14 -5
- package/dist/esm/rn-commands/bundle/assetPathUtils.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/assetPathUtils.native.js +10 -3
- package/dist/esm/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/buildBundle.mjs +19 -11
- package/dist/esm/rn-commands/bundle/buildBundle.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/buildBundle.native.js +25 -17
- package/dist/esm/rn-commands/bundle/buildBundle.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs +23 -14
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js +27 -18
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs +11 -5
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js +18 -9
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs +2 -2
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js +2 -2
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs +2 -2
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js +2 -2
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +8 -4
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +2 -2
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/saveAssets.mjs +39 -23
- package/dist/esm/rn-commands/bundle/saveAssets.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/saveAssets.native.js +45 -27
- package/dist/esm/rn-commands/bundle/saveAssets.native.js.map +1 -1
- package/dist/esm/transformer/babel-transformer.mjs +84 -69
- package/dist/esm/transformer/babel-transformer.mjs.map +1 -1
- package/dist/esm/transformer/babel-transformer.native.js +94 -86
- package/dist/esm/transformer/babel-transformer.native.js.map +1 -1
- package/dist/esm/transformer/loadBabelConfig.mjs +17 -8
- package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -1
- package/dist/esm/transformer/loadBabelConfig.native.js +19 -11
- package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -1
- package/dist/esm/transformer/transformSync.mjs +9 -3
- package/dist/esm/transformer/transformSync.mjs.map +1 -1
- package/dist/esm/transformer/transformSync.native.js +14 -8
- package/dist/esm/transformer/transformSync.native.js.map +1 -1
- package/dist/esm/utils/exit.mjs +68 -28
- package/dist/esm/utils/exit.mjs.map +1 -1
- package/dist/esm/utils/exit.native.js +111 -56
- package/dist/esm/utils/exit.native.js.map +1 -1
- package/dist/esm/utils/getTerminalReporter.mjs +7 -4
- package/dist/esm/utils/getTerminalReporter.mjs.map +1 -1
- package/dist/esm/utils/getTerminalReporter.native.js +14 -9
- package/dist/esm/utils/getTerminalReporter.native.js.map +1 -1
- package/dist/esm/utils/metroCacheManager.mjs +67 -33
- package/dist/esm/utils/metroCacheManager.mjs.map +1 -1
- package/dist/esm/utils/metroCacheManager.native.js +80 -43
- package/dist/esm/utils/metroCacheManager.native.js.map +1 -1
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +9 -7
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +1 -1
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
- package/dist/esm/utils/projectImport.mjs +14 -6
- package/dist/esm/utils/projectImport.mjs.map +1 -1
- package/dist/esm/utils/projectImport.native.js +23 -13
- package/dist/esm/utils/projectImport.native.js.map +1 -1
- package/package.json +3 -3
|
@@ -3,35 +3,39 @@ import { projectImport, projectResolve } from "../utils/projectImport.mjs";
|
|
|
3
3
|
import { getTerminalReporter } from "../utils/getTerminalReporter.mjs";
|
|
4
4
|
import { patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName } from "../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs";
|
|
5
5
|
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
6
|
-
const extraConfig = {}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
6
|
+
const extraConfig = {};
|
|
7
|
+
const projectRoot = metroPluginOptions.argv?.projectRoot ?? config.root;
|
|
8
|
+
const {
|
|
9
|
+
mainModuleName,
|
|
10
|
+
argv,
|
|
11
|
+
defaultConfigOverrides,
|
|
12
|
+
watchman,
|
|
13
|
+
excludeModules
|
|
14
|
+
} = metroPluginOptions;
|
|
15
|
+
const {
|
|
16
|
+
loadConfig
|
|
17
|
+
} = await projectImport(projectRoot, "metro");
|
|
18
|
+
const {
|
|
19
|
+
getDefaultConfig
|
|
20
|
+
} = await projectImport(projectRoot, "@expo/metro-config");
|
|
21
|
+
const _defaultConfig = getDefaultConfig(projectRoot);
|
|
22
22
|
if (mainModuleName) {
|
|
23
|
-
const origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
const origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
24
|
+
const resolveMainModuleName = await (async () => {
|
|
25
|
+
const ExpoGoManifestHandlerMiddleware = (await projectImport(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
26
|
+
const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
27
|
+
patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName(manifestHandlerMiddleware, mainModuleName);
|
|
28
|
+
return p => {
|
|
29
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
28
30
|
pkg: {
|
|
29
31
|
main: mainModuleName
|
|
30
32
|
},
|
|
31
33
|
platform: p.platform
|
|
32
34
|
});
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
38
|
+
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
35
39
|
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
36
40
|
const resolvedMainModulePath = resolveMainModuleName({
|
|
37
41
|
platform: "ios"
|
|
@@ -42,52 +46,57 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
42
46
|
return origRewriteRequestUrl(url);
|
|
43
47
|
};
|
|
44
48
|
}
|
|
45
|
-
const existingBlockList = _defaultConfig?.resolver?.blockList
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if (
|
|
62
|
-
|
|
63
|
-
...context,
|
|
64
|
-
unstable_conditionNames: context.unstable_conditionNames.filter(c => c !== "import")
|
|
65
|
-
};
|
|
66
|
-
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
49
|
+
const existingBlockList = _defaultConfig?.resolver?.blockList;
|
|
50
|
+
const buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
51
|
+
const blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
52
|
+
const defaultConfig = {
|
|
53
|
+
..._defaultConfig,
|
|
54
|
+
resolver: {
|
|
55
|
+
..._defaultConfig?.resolver,
|
|
56
|
+
...(watchman !== void 0 ? {
|
|
57
|
+
useWatchman: watchman
|
|
58
|
+
} : {}),
|
|
59
|
+
blockList,
|
|
60
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
61
|
+
// `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
62
|
+
resolveRequest: (context, moduleName, platform) => {
|
|
63
|
+
const origResolveRequestFn = _defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
64
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
65
|
+
if (micromatch.isMatch(moduleName, excludeModules)) {
|
|
66
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
67
67
|
}
|
|
68
|
-
return origResolveRequestFn(context, moduleName, platform);
|
|
69
68
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
|
|
69
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
70
|
+
const contextOverride = {
|
|
71
|
+
...context,
|
|
72
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(c => c !== "import")
|
|
73
|
+
};
|
|
74
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
75
|
+
}
|
|
76
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
transformer: {
|
|
80
|
+
..._defaultConfig?.transformer,
|
|
81
|
+
babelTransformerPath: projectResolve(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
82
|
+
// TODO: This is what Expo is doing, but do we really need this?
|
|
83
|
+
// Doing so seems to make the release build broken since assets will be
|
|
84
|
+
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
85
|
+
// publicPath: '/assets/?unstable_path=.',
|
|
86
|
+
},
|
|
87
|
+
reporter: await getTerminalReporter(projectRoot)
|
|
88
|
+
};
|
|
89
|
+
const metroConfig = await loadConfig({
|
|
90
|
+
cwd: projectRoot,
|
|
91
|
+
projectRoot,
|
|
92
|
+
"reset-cache": !!process.env.METRO_RESET_CACHE,
|
|
93
|
+
...argv
|
|
94
|
+
}, {
|
|
95
|
+
...defaultConfig,
|
|
96
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
97
|
+
});
|
|
81
98
|
return {
|
|
82
|
-
...
|
|
83
|
-
cwd: projectRoot,
|
|
84
|
-
projectRoot,
|
|
85
|
-
"reset-cache": !!process.env.METRO_RESET_CACHE,
|
|
86
|
-
...argv
|
|
87
|
-
}, {
|
|
88
|
-
...defaultConfig,
|
|
89
|
-
...(typeof defaultConfigOverrides == "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
90
|
-
})),
|
|
99
|
+
...metroConfig,
|
|
91
100
|
...extraConfig
|
|
92
101
|
};
|
|
93
102
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","getMetroConfigFromViteConfig","config","metroPluginOptions","extraConfig","projectRoot","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","loadConfig","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","resolveMainModuleName","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","platform","getResolveMainModuleName","url","includes","resolvedMainModulePath","replace","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","useWatchman","sourceExts","resolveRequest","context","moduleName","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"AACA,OAAOA,UAAA,MAAgB;AAQvB,SAASC,aAAA,EAAeC,cAAA,QAAsB;AAC9C,SAASC,mBAAA,QAA2B;AACpC,SAASC,4DAAA,QAAoE;AAM7E,eAAsBC,6BACpBC,MAAA,EACAC,kBAAA,EAC8B;EAC9B,MAAMC,WAAA,GAA2B,CAAC;
|
|
1
|
+
{"version":3,"names":["micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","getMetroConfigFromViteConfig","config","metroPluginOptions","extraConfig","projectRoot","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","loadConfig","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","resolveMainModuleName","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","platform","getResolveMainModuleName","url","includes","resolvedMainModulePath","replace","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","useWatchman","sourceExts","resolveRequest","context","moduleName","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,40 +3,41 @@ import { projectImport, projectResolve } from "../utils/projectImport.native.js"
|
|
|
3
3
|
import { getTerminalReporter } from "../utils/getTerminalReporter.native.js";
|
|
4
4
|
import { patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName } from "../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js";
|
|
5
5
|
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
6
|
-
var _ref
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
_defaultConfig = getDefaultConfig(projectRoot);
|
|
6
|
+
var _ref;
|
|
7
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver;
|
|
8
|
+
var extraConfig = {};
|
|
9
|
+
var projectRoot = (_ref = (_metroPluginOptions_argv = metroPluginOptions.argv) === null || _metroPluginOptions_argv === void 0 ? void 0 : _metroPluginOptions_argv.projectRoot) !== null && _ref !== void 0 ? _ref : config.root;
|
|
10
|
+
var {
|
|
11
|
+
mainModuleName,
|
|
12
|
+
argv,
|
|
13
|
+
defaultConfigOverrides,
|
|
14
|
+
watchman,
|
|
15
|
+
excludeModules
|
|
16
|
+
} = metroPluginOptions;
|
|
17
|
+
var {
|
|
18
|
+
loadConfig
|
|
19
|
+
} = await projectImport(projectRoot, "metro");
|
|
20
|
+
var {
|
|
21
|
+
getDefaultConfig
|
|
22
|
+
} = await projectImport(projectRoot, "@expo/metro-config");
|
|
23
|
+
var _defaultConfig = getDefaultConfig(projectRoot);
|
|
25
24
|
if (mainModuleName) {
|
|
26
|
-
var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
|
|
25
|
+
var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
26
|
+
var resolveMainModuleName = await async function () {
|
|
27
|
+
var ExpoGoManifestHandlerMiddleware = (await projectImport(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
28
|
+
var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
29
|
+
patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName(manifestHandlerMiddleware, mainModuleName);
|
|
30
|
+
return function (p) {
|
|
31
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
32
|
+
pkg: {
|
|
33
|
+
main: mainModuleName
|
|
34
|
+
},
|
|
35
|
+
platform: p.platform
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
}();
|
|
39
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
40
|
+
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
40
41
|
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
41
42
|
var resolvedMainModulePath = resolveMainModuleName({
|
|
42
43
|
platform: "ios"
|
|
@@ -46,54 +47,58 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
46
47
|
return origRewriteRequestUrl(url);
|
|
47
48
|
};
|
|
48
49
|
}
|
|
49
|
-
var existingBlockList = _defaultConfig
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
if (
|
|
67
|
-
|
|
68
|
-
...context,
|
|
69
|
-
unstable_conditionNames: context.unstable_conditionNames.filter(function (c) {
|
|
70
|
-
return c !== "import";
|
|
71
|
-
})
|
|
72
|
-
};
|
|
73
|
-
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
50
|
+
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
51
|
+
var buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
52
|
+
var blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
53
|
+
var defaultConfig = {
|
|
54
|
+
..._defaultConfig,
|
|
55
|
+
resolver: {
|
|
56
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver),
|
|
57
|
+
...(watchman !== void 0 ? {
|
|
58
|
+
useWatchman: watchman
|
|
59
|
+
} : {}),
|
|
60
|
+
blockList,
|
|
61
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
62
|
+
// `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
63
|
+
resolveRequest: function (context, moduleName, platform) {
|
|
64
|
+
var _defaultConfig_resolver2;
|
|
65
|
+
var origResolveRequestFn = (_defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver2 = _defaultConfig.resolver) === null || _defaultConfig_resolver2 === void 0 ? void 0 : _defaultConfig_resolver2.resolveRequest) || context.resolveRequest;
|
|
66
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
67
|
+
if (micromatch.isMatch(moduleName, excludeModules)) {
|
|
68
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
74
69
|
}
|
|
75
|
-
return origResolveRequestFn(context, moduleName, platform);
|
|
76
70
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
71
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
72
|
+
var contextOverride = {
|
|
73
|
+
...context,
|
|
74
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(function (c) {
|
|
75
|
+
return c !== "import";
|
|
76
|
+
})
|
|
77
|
+
};
|
|
78
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
79
|
+
}
|
|
80
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
81
|
+
}
|
|
87
82
|
},
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
projectRoot,
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
83
|
+
transformer: {
|
|
84
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer),
|
|
85
|
+
babelTransformerPath: projectResolve(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
86
|
+
},
|
|
87
|
+
// TODO: This is what Expo is doing, but do we really need this?
|
|
88
|
+
// Doing so seems to make the release build broken since assets will be
|
|
89
|
+
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
90
|
+
// publicPath: '/assets/?unstable_path=.',
|
|
91
|
+
reporter: await getTerminalReporter(projectRoot)
|
|
92
|
+
};
|
|
93
|
+
var metroConfig = await loadConfig({
|
|
94
|
+
cwd: projectRoot,
|
|
95
|
+
projectRoot,
|
|
96
|
+
"reset-cache": !!process.env.METRO_RESET_CACHE,
|
|
97
|
+
...argv
|
|
98
|
+
}, {
|
|
99
|
+
...defaultConfig,
|
|
100
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
101
|
+
});
|
|
97
102
|
return {
|
|
98
103
|
...metroConfig,
|
|
99
104
|
...extraConfig
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","getMetroConfigFromViteConfig","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","projectRoot","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","loadConfig","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","resolveMainModuleName","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","platform","getResolveMainModuleName","url","includes","resolvedMainModulePath","replace","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","useWatchman","sourceExts","resolveRequest","context","moduleName","_defaultConfig_resolver2","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"AACA,OAAOA,UAAA,MAAgB;AAQvB,SAASC,aAAA,EAAeC,cAAA,QAAsB;AAC9C,SAASC,mBAAA,QAA2B;AACpC,SAASC,4DAAA,QAAoE;AAM7E,eAAsBC,6BACpBC,MAAA,EACAC,kBAAA,EAC8B;EAC9B,IAAAC,IAAM;IAAAC,
|
|
1
|
+
{"version":3,"names":["micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","getMetroConfigFromViteConfig","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","projectRoot","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","loadConfig","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","resolveMainModuleName","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","platform","getResolveMainModuleName","url","includes","resolvedMainModulePath","replace","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","useWatchman","sourceExts","resolveRequest","context","moduleName","_defaultConfig_resolver2","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { getMetroBabelConfigFromViteConfig } from "./getMetroBabelConfigFromViteConfig.mjs";
|
|
2
2
|
function patchMetroServerWithViteConfigAndMetroPluginOptions(metroServer, config, options) {
|
|
3
|
-
const originalTransformFile = metroServer.getBundler().getBundler().transformFile.bind(metroServer.getBundler().getBundler())
|
|
4
|
-
|
|
3
|
+
const originalTransformFile = metroServer.getBundler().getBundler().transformFile.bind(metroServer.getBundler().getBundler());
|
|
4
|
+
const defaultBabelConfig = getMetroBabelConfigFromViteConfig(config);
|
|
5
5
|
metroServer.getBundler().getBundler().transformFile = async (filePath, transformOptions, fileBuffer) => {
|
|
6
6
|
let babelConfig = {
|
|
7
7
|
...defaultBabelConfig,
|
|
8
8
|
...options.babelConfig,
|
|
9
9
|
plugins: [...(defaultBabelConfig.plugins || []), ...(options.babelConfig?.plugins || [])]
|
|
10
10
|
};
|
|
11
|
-
|
|
11
|
+
if (options.babelConfigOverrides) {
|
|
12
|
+
babelConfig = options.babelConfigOverrides(babelConfig);
|
|
13
|
+
}
|
|
12
14
|
const viteCustomTransformOptions = {
|
|
13
15
|
// config: server.config,
|
|
14
16
|
babelConfig
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getMetroBabelConfigFromViteConfig","patchMetroServerWithViteConfigAndMetroPluginOptions","metroServer","config","options","originalTransformFile","getBundler","transformFile","bind","defaultBabelConfig","filePath","transformOptions","fileBuffer","babelConfig","plugins","babelConfigOverrides","viteCustomTransformOptions","customTransformOptions","vite"],"sources":["../../../src/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,iCAAA,QAAyC;AAE3C,SAASC,oDACdC,WAAA,EACAC,MAAA,EACAC,OAAA,EACA;EAEA,MAAMC,qBAAA,GAAwBH,WAAA,CAC3BI,UAAA,CAAW,EACXA,UAAA,CAAW,EACXC,aAAA,CAAcC,IAAA,CAAKN,WAAA,CAAYI,UAAA,CAAW,EAAEA,UAAA,CAAW,CAAC;
|
|
1
|
+
{"version":3,"names":["getMetroBabelConfigFromViteConfig","patchMetroServerWithViteConfigAndMetroPluginOptions","metroServer","config","options","originalTransformFile","getBundler","transformFile","bind","defaultBabelConfig","filePath","transformOptions","fileBuffer","babelConfig","plugins","babelConfigOverrides","viteCustomTransformOptions","customTransformOptions","vite"],"sources":["../../../src/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,iCAAA,QAAyC;AAE3C,SAASC,oDACdC,WAAA,EACAC,MAAA,EACAC,OAAA,EACA;EAEA,MAAMC,qBAAA,GAAwBH,WAAA,CAC3BI,UAAA,CAAW,EACXA,UAAA,CAAW,EACXC,aAAA,CAAcC,IAAA,CAAKN,WAAA,CAAYI,UAAA,CAAW,EAAEA,UAAA,CAAW,CAAC;EAE3D,MAAMG,kBAAA,GAAqBT,iCAAA,CAAkCG,MAAM;EAEnED,WAAA,CAAYI,UAAA,CAAW,EAAEA,UAAA,CAAW,EAAEC,aAAA,GAAgB,OACpDG,QAAA,EACAC,gBAAA,EACAC,UAAA,KACG;IACH,IAAIC,WAAA,GAAgC;MAClC,GAAGJ,kBAAA;MACH,GAAGL,OAAA,CAAQS,WAAA;MACXC,OAAA,EAAS,CACP,IAAIL,kBAAA,CAAmBK,OAAA,IAAW,EAAC,GACnC,IAAIV,OAAA,CAAQS,WAAA,EAAaC,OAAA,IAAW,EAAC;IAEzC;IAEA,IAAIV,OAAA,CAAQW,oBAAA,EAAsB;MAChCF,WAAA,GAAcT,OAAA,CAAQW,oBAAA,CAAqBF,WAAW;IACxD;IAEA,MAAMG,0BAAA,GAAyD;MAAA;MAE7DH;IACF;IACA,OAAOR,qBAAA,CACLK,QAAA,EACA;MACE,GAAGC,gBAAA;MACHM,sBAAA,EAAwB;QACtB,GAAGN,gBAAA,CAAiBM,sBAAA;QAAA;QAEpBC,IAAA,EAAMF;MACR;IACF,GACAJ,UACF;EACF;AACF","ignoreList":[]}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { getMetroBabelConfigFromViteConfig } from "./getMetroBabelConfigFromViteConfig.native.js";
|
|
2
2
|
function patchMetroServerWithViteConfigAndMetroPluginOptions(metroServer, config, options) {
|
|
3
|
-
var originalTransformFile = metroServer.getBundler().getBundler().transformFile.bind(metroServer.getBundler().getBundler())
|
|
4
|
-
|
|
3
|
+
var originalTransformFile = metroServer.getBundler().getBundler().transformFile.bind(metroServer.getBundler().getBundler());
|
|
4
|
+
var defaultBabelConfig = getMetroBabelConfigFromViteConfig(config);
|
|
5
5
|
metroServer.getBundler().getBundler().transformFile = async function (filePath, transformOptions, fileBuffer) {
|
|
6
|
-
var _options_babelConfig
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
var _options_babelConfig;
|
|
7
|
+
var babelConfig = {
|
|
8
|
+
...defaultBabelConfig,
|
|
9
|
+
...options.babelConfig,
|
|
10
|
+
plugins: [...(defaultBabelConfig.plugins || []), ...(((_options_babelConfig = options.babelConfig) === null || _options_babelConfig === void 0 ? void 0 : _options_babelConfig.plugins) || [])]
|
|
11
|
+
};
|
|
12
|
+
if (options.babelConfigOverrides) {
|
|
13
|
+
babelConfig = options.babelConfigOverrides(babelConfig);
|
|
14
|
+
}
|
|
13
15
|
var viteCustomTransformOptions = {
|
|
14
16
|
// config: server.config,
|
|
15
17
|
babelConfig
|
package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getMetroBabelConfigFromViteConfig","patchMetroServerWithViteConfigAndMetroPluginOptions","metroServer","config","options","originalTransformFile","getBundler","transformFile","bind","defaultBabelConfig","filePath","transformOptions","fileBuffer","_options_babelConfig","babelConfig","plugins","babelConfigOverrides","viteCustomTransformOptions","customTransformOptions","vite"],"sources":["../../../src/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,iCAAA,QAAyC;AAE3C,SAASC,oDACdC,WAAA,EACAC,MAAA,EACAC,OAAA,EACA;EAEA,IAAAC,qBAAM,GAAAH,WAAwB,CAAAI,UAC3B,GAAWA,UACX,GAAWC,aACX,CAAAC,IAAc,CAAAN,WAAK,CAAAI,UAAY,GAAWA,UAAE,GAAW;
|
|
1
|
+
{"version":3,"names":["getMetroBabelConfigFromViteConfig","patchMetroServerWithViteConfigAndMetroPluginOptions","metroServer","config","options","originalTransformFile","getBundler","transformFile","bind","defaultBabelConfig","filePath","transformOptions","fileBuffer","_options_babelConfig","babelConfig","plugins","babelConfigOverrides","viteCustomTransformOptions","customTransformOptions","vite"],"sources":["../../../src/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,iCAAA,QAAyC;AAE3C,SAASC,oDACdC,WAAA,EACAC,MAAA,EACAC,OAAA,EACA;EAEA,IAAAC,qBAAM,GAAAH,WAAwB,CAAAI,UAC3B,GAAWA,UACX,GAAWC,aACX,CAAAC,IAAc,CAAAN,WAAK,CAAAI,UAAY,GAAWA,UAAE,GAAW;EAE1D,IAAAG,kBAAM,GAAAT,iCAAqB,CAAAG,MAAkC;EAE7DD,WAAA,CAAYI,UAAA,CAAW,EAAEA,UAAA,CAAW,EAAEC,aAAA,GAAgB,gBACpDG,QACA,EAAAC,gBACA,EAAAC,UACG;IACH,IAAIC,oBAAgC;IAAA,IAClCC,WAAG;MACH,GAAGL,kBAAQ;MACX,GAAAL,OAAS,CAAAU,WAAA;MAAAC,OACH,GACJ,IAAIN,kBAAQ,CAAAM,OAAa,MAAW,GACtC,MAAAF,oBAAA,GAAAT,OAAA,CAAAU,WAAA,cAAAD,oBAAA,uBAAAA,oBAAA,CAAAE,OAAA;IAGF;IACE,IAAAX,OAAA,CAAAY,oBAAsB;MACxBF,WAAA,GAAAV,OAAA,CAAAY,oBAAA,CAAAF,WAAA;IAEA;IAA+D,IAAAG,0BAAA;MAE7D;MACFH;IACA;IAAO,OACLT,qBAAA,CAAAK,QAAA;MACA,GAAAC,gBAAA;MAAAO,sBACK;QACH,GAAAP,gBAAA,CAAAO,sBAAwB;QAAA;QACFC,IAAA,EAAAF;MAAA;IAEd,GAAAL,UACR;EAAA;AACF;AACA,SAEJX,mDAAA","ignoreList":[]}
|
|
@@ -16,19 +16,29 @@ function expoManifestRequestHandlerPlugin(options) {
|
|
|
16
16
|
ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;
|
|
17
17
|
});
|
|
18
18
|
server.middlewares.use(async (req, res, next) => {
|
|
19
|
-
if (!req.headers["expo-platform"])
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
19
|
+
if (!req.headers["expo-platform"]) {
|
|
20
|
+
return next();
|
|
21
|
+
}
|
|
22
|
+
if (!ExpoGoManifestHandlerMiddleware) {
|
|
23
|
+
await importPromise;
|
|
24
|
+
}
|
|
25
|
+
const protocol = req.socket instanceof TLSSocket && req.socket.encrypted ? "https" : "http";
|
|
26
|
+
const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {
|
|
27
|
+
constructUrl: ({
|
|
28
|
+
scheme,
|
|
29
|
+
hostname
|
|
30
|
+
}) => {
|
|
31
|
+
const host = req.headers["x-forwarded-host"] || req.headers.host || hostname;
|
|
32
|
+
if (!scheme) {
|
|
33
|
+
return host;
|
|
29
34
|
}
|
|
30
|
-
|
|
31
|
-
|
|
35
|
+
return `${protocol || scheme}://${host}`;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
if (options?.mainModuleName) {
|
|
39
|
+
patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName(manifestHandlerMiddleware, options.mainModuleName);
|
|
40
|
+
}
|
|
41
|
+
manifestHandlerMiddleware.handleRequestAsync(req, res, next);
|
|
32
42
|
});
|
|
33
43
|
}
|
|
34
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TLSSocket","projectImport","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","expoManifestRequestHandlerPlugin","options","name","configureServer","server","root","projectRoot","config","ExpoGoManifestHandlerMiddleware","importPromise","then","mod","default","middlewares","use","req","res","next","headers","protocol","socket","encrypted","manifestHandlerMiddleware","constructUrl","scheme","hostname","host","mainModuleName","handleRequestAsync"],"sources":["../../../src/plugins/expoManifestRequestHandlerPlugin.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAG1B,SAASC,aAAA,QAAqB;AAC9B,SAASC,4DAAA,QAAoE;AActE,SAASC,iCACdC,OAAA,EACc;EAGd,OAAO;IACLC,IAAA,EAAM;IAAA;IAAA;IAAA;IAINC,gBAAgBC,MAAA,EAAQ;MACtB,MAAM;QAAEC,IAAA,EAAMC;MAAY,IAAIF,MAAA,CAAOG,MAAA;MAGrC,IAAIC,+BAAA;MACJ,MAAMC,aAAA,GAAgBX,aAAA,CACpBQ,WAAA,EACA,gFACF,EAAEI,IAAA,CAAMC,GAAA,IAAQ;QACdH,+BAAA,GAAkCG,GAAA,CAAIC,OAAA,CAAQJ,+BAAA;MAChD,CAAC;MAEDJ,MAAA,CAAOS,WAAA,CAAYC,GAAA,CAAI,OAAOC,GAAA,EAAKC,GAAA,EAAKC,IAAA,KAAS;QAC/C,IAAI,CAACF,GAAA,CAAIG,OAAA,CAAQ,eAAe,
|
|
1
|
+
{"version":3,"names":["TLSSocket","projectImport","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","expoManifestRequestHandlerPlugin","options","name","configureServer","server","root","projectRoot","config","ExpoGoManifestHandlerMiddleware","importPromise","then","mod","default","middlewares","use","req","res","next","headers","protocol","socket","encrypted","manifestHandlerMiddleware","constructUrl","scheme","hostname","host","mainModuleName","handleRequestAsync"],"sources":["../../../src/plugins/expoManifestRequestHandlerPlugin.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AAG1B,SAASC,aAAA,QAAqB;AAC9B,SAASC,4DAAA,QAAoE;AActE,SAASC,iCACdC,OAAA,EACc;EAGd,OAAO;IACLC,IAAA,EAAM;IAAA;IAAA;IAAA;IAINC,gBAAgBC,MAAA,EAAQ;MACtB,MAAM;QAAEC,IAAA,EAAMC;MAAY,IAAIF,MAAA,CAAOG,MAAA;MAGrC,IAAIC,+BAAA;MACJ,MAAMC,aAAA,GAAgBX,aAAA,CACpBQ,WAAA,EACA,gFACF,EAAEI,IAAA,CAAMC,GAAA,IAAQ;QACdH,+BAAA,GAAkCG,GAAA,CAAIC,OAAA,CAAQJ,+BAAA;MAChD,CAAC;MAEDJ,MAAA,CAAOS,WAAA,CAAYC,GAAA,CAAI,OAAOC,GAAA,EAAKC,GAAA,EAAKC,IAAA,KAAS;QAC/C,IAAI,CAACF,GAAA,CAAIG,OAAA,CAAQ,eAAe,GAAG;UAEjC,OAAOD,IAAA,CAAK;QACd;QAGA,IAAI,CAACT,+BAAA,EAAiC;UACpC,MAAMC,aAAA;QACR;QAEA,MAAMU,QAAA,GACJJ,GAAA,CAAIK,MAAA,YAAkBvB,SAAA,IAAakB,GAAA,CAAIK,MAAA,CAAOC,SAAA,GAAY,UAAU;QAEtE,MAAMC,yBAAA,GAA4B,IAAId,+BAAA,CACpCF,WAAA,EACA;UACEiB,YAAA,EAAcA,CAAC;YAAEC,MAAA;YAAQC;UAAS,MAAM;YAEtC,MAAMC,IAAA,GAAOX,GAAA,CAAIG,OAAA,CAAQ,kBAAkB,KAAKH,GAAA,CAAIG,OAAA,CAAQQ,IAAA,IAAQD,QAAA;YAEpE,IAAI,CAACD,MAAA,EAAQ;cAIX,OAAOE,IAAA;YACT;YAEA,OAAO,GAAGP,QAAA,IAAYK,MAAM,MAAME,IAAI;UACxC;QACF,CACF;QAEA,IAAIzB,OAAA,EAAS0B,cAAA,EAAgB;UAC3B5B,4DAAA,CACEuB,yBAAA,EACArB,OAAA,CAAQ0B,cACV;QACF;QAGAL,yBAAA,CAA0BM,kBAAA,CAAmBb,GAAA,EAAKC,GAAA,EAAKC,IAAI;MAC7D,CAAC;IACH;EACF;AACF","ignoreList":[]}
|
|
@@ -2,7 +2,11 @@ import { TLSSocket } from "tls";
|
|
|
2
2
|
import { projectImport } from "../utils/projectImport.native.js";
|
|
3
3
|
import { patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName } from "../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js";
|
|
4
4
|
function _instanceof(left, right) {
|
|
5
|
-
|
|
5
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
6
|
+
return !!right[Symbol.hasInstance](left);
|
|
7
|
+
} else {
|
|
8
|
+
return left instanceof right;
|
|
9
|
+
}
|
|
6
10
|
}
|
|
7
11
|
function expoManifestRequestHandlerPlugin(options) {
|
|
8
12
|
return {
|
|
@@ -12,27 +16,37 @@ function expoManifestRequestHandlerPlugin(options) {
|
|
|
12
16
|
// },
|
|
13
17
|
configureServer(server) {
|
|
14
18
|
var {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
root: projectRoot
|
|
20
|
+
} = server.config;
|
|
21
|
+
var ExpoGoManifestHandlerMiddleware;
|
|
22
|
+
var importPromise = projectImport(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js").then(function (mod) {
|
|
23
|
+
ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;
|
|
24
|
+
});
|
|
21
25
|
server.middlewares.use(async function (req, res, next) {
|
|
22
|
-
if (!req.headers["expo-platform"])
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
if (!req.headers["expo-platform"]) {
|
|
27
|
+
return next();
|
|
28
|
+
}
|
|
29
|
+
if (!ExpoGoManifestHandlerMiddleware) {
|
|
30
|
+
await importPromise;
|
|
31
|
+
}
|
|
32
|
+
var protocol = _instanceof(req.socket, TLSSocket) && req.socket.encrypted ? "https" : "http";
|
|
33
|
+
var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {
|
|
34
|
+
constructUrl: function (param) {
|
|
35
|
+
var {
|
|
36
|
+
scheme,
|
|
37
|
+
hostname
|
|
38
|
+
} = param;
|
|
39
|
+
var host = req.headers["x-forwarded-host"] || req.headers.host || hostname;
|
|
40
|
+
if (!scheme) {
|
|
41
|
+
return host;
|
|
33
42
|
}
|
|
34
|
-
|
|
35
|
-
|
|
43
|
+
return `${protocol || scheme}://${host}`;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
if (options === null || options === void 0 ? void 0 : options.mainModuleName) {
|
|
47
|
+
patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName(manifestHandlerMiddleware, options.mainModuleName);
|
|
48
|
+
}
|
|
49
|
+
manifestHandlerMiddleware.handleRequestAsync(req, res, next);
|
|
36
50
|
});
|
|
37
51
|
}
|
|
38
52
|
};
|