@vxrn/vite-plugin-metro 1.25.5 → 1.25.6
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 +130 -0
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +138 -0
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -0
- package/dist/cjs/env/platformEnv.cjs +76 -0
- package/dist/cjs/env/platformEnv.native.js +98 -0
- package/dist/cjs/env/platformEnv.native.js.map +1 -0
- package/dist/cjs/index.cjs +41 -0
- package/dist/cjs/index.native.js +44 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +62 -0
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +109 -0
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -0
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +270 -0
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +284 -0
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -0
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.cjs +55 -0
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +59 -0
- package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -0
- package/dist/cjs/metro-config/types.cjs +18 -0
- package/dist/cjs/metro-config/types.native.js +21 -0
- package/dist/cjs/metro-config/types.native.js.map +1 -0
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +71 -0
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +82 -0
- package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -0
- package/dist/cjs/plugins/metroPlugin.cjs +272 -0
- package/dist/cjs/plugins/metroPlugin.native.js +281 -0
- package/dist/cjs/plugins/metroPlugin.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.cjs +90 -0
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js +135 -0
- package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/assetPathUtils.cjs +74 -0
- package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js +77 -0
- package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/buildBundle.cjs +62 -0
- package/dist/cjs/rn-commands/bundle/buildBundle.native.js +67 -0
- package/dist/cjs/rn-commands/bundle/buildBundle.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.cjs +87 -0
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js +94 -0
- package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.cjs +51 -0
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js +75 -0
- package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.cjs +46 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js +49 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.cjs +49 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js +52 -0
- package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +45 -0
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +48 -0
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/index.cjs +30 -0
- package/dist/cjs/rn-commands/bundle/index.native.js +33 -0
- package/dist/cjs/rn-commands/bundle/index.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/saveAssets.cjs +121 -0
- package/dist/cjs/rn-commands/bundle/saveAssets.native.js +143 -0
- package/dist/cjs/rn-commands/bundle/saveAssets.native.js.map +1 -0
- package/dist/cjs/rn-commands/bundle/types.cjs +18 -0
- package/dist/cjs/rn-commands/bundle/types.native.js +21 -0
- package/dist/cjs/rn-commands/bundle/types.native.js.map +1 -0
- package/dist/cjs/rn-commands/index.cjs +39 -0
- package/dist/cjs/rn-commands/index.native.js +42 -0
- package/dist/cjs/rn-commands/index.native.js.map +1 -0
- package/dist/cjs/transformer/babel-core.cjs +30 -0
- package/dist/cjs/transformer/babel-core.native.js +33 -0
- package/dist/cjs/transformer/babel-core.native.js.map +1 -0
- package/dist/cjs/transformer/babel-transformer.cjs +176 -0
- package/dist/cjs/transformer/babel-transformer.native.js +186 -0
- package/dist/cjs/transformer/babel-transformer.native.js.map +1 -0
- package/dist/cjs/transformer/loadBabelConfig.cjs +64 -0
- package/dist/cjs/transformer/loadBabelConfig.native.js +70 -0
- package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -0
- package/dist/cjs/transformer/transformSync.cjs +85 -0
- package/dist/cjs/transformer/transformSync.native.js +91 -0
- package/dist/cjs/transformer/transformSync.native.js.map +1 -0
- package/dist/cjs/transformer/transformSync.test.cjs +36 -0
- package/dist/cjs/transformer/transformSync.test.native.js +49 -0
- package/dist/cjs/transformer/transformSync.test.native.js.map +1 -0
- package/dist/cjs/transformer/types.cjs +18 -0
- package/dist/cjs/transformer/types.native.js +21 -0
- package/dist/cjs/transformer/types.native.js.map +1 -0
- package/dist/cjs/utils/exit.cjs +174 -0
- package/dist/cjs/utils/exit.native.js +281 -0
- package/dist/cjs/utils/exit.native.js.map +1 -0
- package/dist/cjs/utils/getTerminalReporter.cjs +64 -0
- package/dist/cjs/utils/getTerminalReporter.native.js +70 -0
- package/dist/cjs/utils/getTerminalReporter.native.js.map +1 -0
- package/dist/cjs/utils/metroCacheManager.cjs +125 -0
- package/dist/cjs/utils/metroCacheManager.native.js +148 -0
- package/dist/cjs/utils/metroCacheManager.native.js.map +1 -0
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +39 -0
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +42 -0
- package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -0
- package/dist/cjs/utils/projectImport.cjs +72 -0
- package/dist/cjs/utils/projectImport.native.js +83 -0
- package/dist/cjs/utils/projectImport.native.js.map +1 -0
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +93 -0
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -0
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +98 -0
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -0
- package/dist/esm/env/platformEnv.mjs +49 -0
- package/dist/esm/env/platformEnv.mjs.map +1 -0
- package/dist/esm/env/platformEnv.native.js +68 -0
- package/dist/esm/env/platformEnv.native.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/index.mjs +8 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +8 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +37 -0
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -0
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +81 -0
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -0
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +233 -0
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -0
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +244 -0
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -0
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs +30 -0
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs.map +1 -0
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +31 -0
- package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -0
- package/dist/esm/metro-config/types.mjs +2 -0
- package/dist/esm/metro-config/types.mjs.map +1 -0
- package/dist/esm/metro-config/types.native.js +2 -0
- package/dist/esm/metro-config/types.native.js.map +1 -0
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +46 -0
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -0
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +54 -0
- package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -0
- package/dist/esm/plugins/metroPlugin.mjs +236 -0
- package/dist/esm/plugins/metroPlugin.mjs.map +1 -0
- package/dist/esm/plugins/metroPlugin.native.js +242 -0
- package/dist/esm/plugins/metroPlugin.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs +51 -0
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js +93 -0
- package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/assetPathUtils.mjs +49 -0
- package/dist/esm/rn-commands/bundle/assetPathUtils.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/assetPathUtils.native.js +49 -0
- package/dist/esm/rn-commands/bundle/assetPathUtils.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/buildBundle.mjs +37 -0
- package/dist/esm/rn-commands/bundle/buildBundle.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/buildBundle.native.js +39 -0
- package/dist/esm/rn-commands/bundle/buildBundle.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs +51 -0
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js +55 -0
- package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs +26 -0
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js +47 -0
- package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs +10 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js +10 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs +13 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js +13 -0
- package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +20 -0
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +20 -0
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/index.mjs +4 -0
- package/dist/esm/rn-commands/bundle/index.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/index.native.js +4 -0
- package/dist/esm/rn-commands/bundle/index.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/saveAssets.mjs +85 -0
- package/dist/esm/rn-commands/bundle/saveAssets.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/saveAssets.native.js +104 -0
- package/dist/esm/rn-commands/bundle/saveAssets.native.js.map +1 -0
- package/dist/esm/rn-commands/bundle/types.mjs +2 -0
- package/dist/esm/rn-commands/bundle/types.mjs.map +1 -0
- package/dist/esm/rn-commands/bundle/types.native.js +2 -0
- package/dist/esm/rn-commands/bundle/types.native.js.map +1 -0
- package/dist/esm/rn-commands/index.mjs +3 -0
- package/dist/esm/rn-commands/index.mjs.map +1 -0
- package/dist/esm/rn-commands/index.native.js +3 -0
- package/dist/esm/rn-commands/index.native.js.map +1 -0
- package/dist/esm/transformer/babel-core.mjs +3 -0
- package/dist/esm/transformer/babel-core.mjs.map +1 -0
- package/dist/esm/transformer/babel-core.native.js +3 -0
- package/dist/esm/transformer/babel-core.native.js.map +1 -0
- package/dist/esm/transformer/babel-transformer.mjs +148 -0
- package/dist/esm/transformer/babel-transformer.mjs.map +1 -0
- package/dist/esm/transformer/babel-transformer.native.js +160 -0
- package/dist/esm/transformer/babel-transformer.native.js.map +1 -0
- package/dist/esm/transformer/loadBabelConfig.mjs +28 -0
- package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -0
- package/dist/esm/transformer/loadBabelConfig.native.js +31 -0
- package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -0
- package/dist/esm/transformer/transformSync.mjs +49 -0
- package/dist/esm/transformer/transformSync.mjs.map +1 -0
- package/dist/esm/transformer/transformSync.native.js +52 -0
- package/dist/esm/transformer/transformSync.native.js.map +1 -0
- package/dist/esm/transformer/transformSync.test.mjs +37 -0
- package/dist/esm/transformer/transformSync.test.mjs.map +1 -0
- package/dist/esm/transformer/transformSync.test.native.js +47 -0
- package/dist/esm/transformer/transformSync.test.native.js.map +1 -0
- package/dist/esm/transformer/types.mjs +2 -0
- package/dist/esm/transformer/types.mjs.map +1 -0
- package/dist/esm/transformer/types.native.js +2 -0
- package/dist/esm/transformer/types.native.js.map +1 -0
- package/dist/esm/utils/exit.mjs +135 -0
- package/dist/esm/utils/exit.mjs.map +1 -0
- package/dist/esm/utils/exit.native.js +239 -0
- package/dist/esm/utils/exit.native.js.map +1 -0
- package/dist/esm/utils/getTerminalReporter.mjs +28 -0
- package/dist/esm/utils/getTerminalReporter.mjs.map +1 -0
- package/dist/esm/utils/getTerminalReporter.native.js +31 -0
- package/dist/esm/utils/getTerminalReporter.native.js.map +1 -0
- package/dist/esm/utils/metroCacheManager.mjs +100 -0
- package/dist/esm/utils/metroCacheManager.mjs.map +1 -0
- package/dist/esm/utils/metroCacheManager.native.js +120 -0
- package/dist/esm/utils/metroCacheManager.native.js.map +1 -0
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +14 -0
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +1 -0
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +14 -0
- package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -0
- package/dist/esm/utils/projectImport.mjs +34 -0
- package/dist/esm/utils/projectImport.mjs.map +1 -0
- package/dist/esm/utils/projectImport.native.js +42 -0
- package/dist/esm/utils/projectImport.native.js.map +1 -0
- package/package.json +3 -3
- package/types/babel-plugins/import-meta-env-plugin.d.ts.map +1 -0
- package/types/env/platformEnv.d.ts.map +1 -0
- package/types/index.d.ts.map +1 -0
- package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts.map +1 -0
- package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -0
- package/types/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.d.ts.map +1 -0
- package/types/metro-config/types.d.ts.map +1 -0
- package/types/plugins/expoManifestRequestHandlerPlugin.d.ts.map +1 -0
- package/types/plugins/metroPlugin.d.ts.map +1 -0
- package/types/rn-commands/bundle/assetCatalogIOS.d.ts.map +1 -0
- package/types/rn-commands/bundle/assetPathUtils.d.ts.map +1 -0
- package/types/rn-commands/bundle/buildBundle.d.ts.map +1 -0
- package/types/rn-commands/bundle/buildBundleWithConfig.d.ts.map +1 -0
- package/types/rn-commands/bundle/filterPlatformAssetScales.d.ts.map +1 -0
- package/types/rn-commands/bundle/getAssetDestPathAndroid.d.ts.map +1 -0
- package/types/rn-commands/bundle/getAssetDestPathIOS.d.ts.map +1 -0
- package/types/rn-commands/bundle/getBuildBundleFn.d.ts.map +1 -0
- package/types/rn-commands/bundle/index.d.ts.map +1 -0
- package/types/rn-commands/bundle/saveAssets.d.ts.map +1 -0
- package/types/rn-commands/bundle/types.d.ts.map +1 -0
- package/types/rn-commands/index.d.ts.map +1 -0
- package/types/transformer/babel-core.d.ts.map +1 -0
- package/types/transformer/babel-transformer.d.ts.map +1 -0
- package/types/transformer/loadBabelConfig.d.ts.map +1 -0
- package/types/transformer/transformSync.d.ts.map +1 -0
- package/types/transformer/transformSync.test.d.ts.map +1 -0
- package/types/transformer/types.d.ts.map +1 -0
- package/types/utils/exit.d.ts.map +1 -0
- package/types/utils/getTerminalReporter.d.ts.map +1 -0
- package/types/utils/metroCacheManager.d.ts.map +1 -0
- package/types/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.d.ts.map +1 -0
- package/types/utils/projectImport.d.ts.map +1 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
}), mod);
|
|
25
|
+
var getMetroBabelConfigFromViteConfig_exports = {};
|
|
26
|
+
__export(getMetroBabelConfigFromViteConfig_exports, {
|
|
27
|
+
getMetroBabelConfigFromViteConfig: () => getMetroBabelConfigFromViteConfig
|
|
28
|
+
});
|
|
29
|
+
module.exports = __toCommonJS(getMetroBabelConfigFromViteConfig_exports);
|
|
30
|
+
function getMetroBabelConfigFromViteConfig(config) {
|
|
31
|
+
var importMetaEnv = {
|
|
32
|
+
MODE: config.mode,
|
|
33
|
+
BASE_URL: config.base,
|
|
34
|
+
PROD: config.mode === "production",
|
|
35
|
+
DEV: config.mode === "development",
|
|
36
|
+
SSR: false
|
|
37
|
+
};
|
|
38
|
+
var envPrefix = config.envPrefix || ["VITE_", "EXPO_PUBLIC_"];
|
|
39
|
+
var prefixes = Array.isArray(envPrefix) ? envPrefix : [envPrefix];
|
|
40
|
+
var _iteratorNormalCompletion = true,
|
|
41
|
+
_didIteratorError = false,
|
|
42
|
+
_iteratorError = void 0;
|
|
43
|
+
try {
|
|
44
|
+
var _loop = function () {
|
|
45
|
+
var key = _step.value;
|
|
46
|
+
if (prefixes.some(function (p) {
|
|
47
|
+
return key.startsWith(p);
|
|
48
|
+
})) {
|
|
49
|
+
importMetaEnv[key] = process.env[key];
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
for (var _iterator = Object.keys(config.env)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
|
|
53
|
+
} catch (err) {
|
|
54
|
+
_didIteratorError = true;
|
|
55
|
+
_iteratorError = err;
|
|
56
|
+
} finally {
|
|
57
|
+
try {
|
|
58
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
59
|
+
_iterator.return();
|
|
60
|
+
}
|
|
61
|
+
} finally {
|
|
62
|
+
if (_didIteratorError) {
|
|
63
|
+
throw _iteratorError;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
var definePrefixes = Array.from(/* @__PURE__ */new Set([...prefixes, "VITE_", "ONE_", "EXPO_PUBLIC_"]));
|
|
68
|
+
var _iteratorNormalCompletion1 = true,
|
|
69
|
+
_didIteratorError1 = false,
|
|
70
|
+
_iteratorError1 = void 0;
|
|
71
|
+
try {
|
|
72
|
+
var _loop1 = function () {
|
|
73
|
+
var defineKey = _step1.value;
|
|
74
|
+
var m = defineKey.match(/^process\.env\.([A-Z][A-Z0-9_]*)$/);
|
|
75
|
+
if (!m) return "continue";
|
|
76
|
+
var key = m[1];
|
|
77
|
+
if (key in importMetaEnv) return "continue";
|
|
78
|
+
if (!definePrefixes.some(function (p) {
|
|
79
|
+
return key.startsWith(p);
|
|
80
|
+
})) return "continue";
|
|
81
|
+
var raw = config.define[defineKey];
|
|
82
|
+
try {
|
|
83
|
+
importMetaEnv[key] = typeof raw === "string" ? JSON.parse(raw) : raw;
|
|
84
|
+
} catch (unused) {
|
|
85
|
+
importMetaEnv[key] = raw;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
for (var _iterator1 = Object.keys(config.define || {})[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _loop1();
|
|
89
|
+
} catch (err) {
|
|
90
|
+
_didIteratorError1 = true;
|
|
91
|
+
_iteratorError1 = err;
|
|
92
|
+
} finally {
|
|
93
|
+
try {
|
|
94
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
95
|
+
_iterator1.return();
|
|
96
|
+
}
|
|
97
|
+
} finally {
|
|
98
|
+
if (_didIteratorError1) {
|
|
99
|
+
throw _iteratorError1;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
return {
|
|
104
|
+
plugins: [["@vxrn/vite-plugin-metro/babel-plugins/import-meta-env-plugin", {
|
|
105
|
+
env: importMetaEnv
|
|
106
|
+
}]]
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=getMetroBabelConfigFromViteConfig.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","getMetroBabelConfigFromViteConfig_exports","__export","getMetroBabelConfigFromViteConfig","module","exports","config","importMetaEnv","MODE","mode","BASE_URL","base","PROD","DEV","SSR","envPrefix","prefixes","Array","isArray","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","key","_step","some","p","startsWith","process","env","_iterator","Object","keys","Symbol","iterator","next","done","err","return"],"sources":["../../../src/metro-config/getMetroBabelConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,yCAAA;AAAAC,QAAA,CAAAD,yCAAA;EAAAE,iCAAA,EAAAA,CAAA,KAAAA;AAAA;AASOC,MAAA,CAAAC,OAAS,GAAAT,YAAA,CAAAK,yCAEI;AAClB,SAAME,iCAA8DA,CAAAG,MAAA;EAAA,IAClEC,aAAa;IACbC,IAAA,EAAAF,MAAU,CAAAG,IAAO;IACjBC,QAAM,EAAAJ,MAAO,CAAAK,IAAA;IACbC,IAAA,EAAKN,MAAO,CAAAG,IAAA,KAAS;IACrBI,GAAA,EAAKP,MAAA,CAAAG,IAAA;IACPK,GAAA;EAEA;EACA,IAAAC,SAAM,GAAAT,MAAW,CAAMS,SAAQ,KAE/B,SACE,cAAa,CACX;EAAoC,IACtCC,QAAA,GAAAC,KAAA,CAAAC,OAAA,CAAAH,SAAA,IAAAA,SAAA,IACFA,SAAA,CAMA;EAA6B,IAC3BI,yBAAS,GAAG;IAAAC,iBAAmB,GAAQ;IAAAC,cAAe;EACxD;IACA,IAAAC,KAAW,YAAAA,CAAA,EAAa;MACtB,IAAMC,GAAA,GAAIC,KAAA,CAAAxB,KAAU;MACpB,IAAKgB,QAAG,CAAAS,IAAA,WAAAC,CAAA;QACR,OAAMH,GAAQ,CAACI,UAAA,CAAAD,CAAA;MACf,EAAI;QACAnB,aAAC,CAAAgB,GAAe,IAAKK,OAAO,CAAAC,GAAI,CAAAN,GAAA;MACpC;IACA;IACE,SAAAO,SAAc,GAAGC,MAAI,CAAAC,IAAO,CAAA1B,MAAQ,CAAAuB,GAAA,EAAAI,MAAW,CAAAC,QAAW,GAAG,EAAAV,KAAI,IAAAL,yBAAA,IAAAK,KAAA,GAAAM,SAAA,CAAAK,IAAA,IAAAC,IAAA,GAAAjB,yBAAA,SAAAG,KAAA;EAAA,EACnE,OAAAe,GAAQ;IACNjB,iBAAc,GAAG,IAAI;IACvBC,cAAA,GAAAgB,GAAA;EACF;IAEA;MACE,KAAAlB,yBAAS,IAAAW,SAAA,CAAAQ,MAAA;QACPR,SAAA,CAAAQ,MAAA;MAAA;IACE,UACE;MACJ,IAAAlB,iBAAA;QACF,MAAAC,cAAA;MACF;IACF","ignoreList":[]}
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: true
|
|
30
|
+
}) : target, mod));
|
|
31
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
32
|
+
value: true
|
|
33
|
+
}), mod);
|
|
34
|
+
var getMetroConfigFromViteConfig_exports = {};
|
|
35
|
+
__export(getMetroConfigFromViteConfig_exports, {
|
|
36
|
+
buildMetroConfigInputFromViteConfig: () => buildMetroConfigInputFromViteConfig,
|
|
37
|
+
getMetroConfigFromViteConfig: () => getMetroConfigFromViteConfig
|
|
38
|
+
});
|
|
39
|
+
module.exports = __toCommonJS(getMetroConfigFromViteConfig_exports);
|
|
40
|
+
var import_node_child_process = require("node:child_process");
|
|
41
|
+
var import_node_path = require("node:path");
|
|
42
|
+
var import_micromatch = __toESM(require("micromatch"), 1);
|
|
43
|
+
var import_projectImport = require("../utils/projectImport.cjs");
|
|
44
|
+
var import_getTerminalReporter = require("../utils/getTerminalReporter.cjs");
|
|
45
|
+
var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require("../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs");
|
|
46
|
+
const WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
47
|
+
const watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
48
|
+
let didWarnAboutWatchmanFallback = false;
|
|
49
|
+
const rootIndexBundleRequestPattern = /^(https?:\/\/[^/]+)?\/index\.bundle(?=$|[?#])/;
|
|
50
|
+
function getPlatformFromBundleUrl(url) {
|
|
51
|
+
const platform = url.match(/[?&]platform=(ios|android)(?:&|$)/)?.[1];
|
|
52
|
+
return platform === "android" ? "android" : "ios";
|
|
53
|
+
}
|
|
54
|
+
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
55
|
+
const resolvedMainModulePath = resolveMainModuleName({
|
|
56
|
+
platform: getPlatformFromBundleUrl(url)
|
|
57
|
+
});
|
|
58
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
59
|
+
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
60
|
+
}
|
|
61
|
+
return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);
|
|
62
|
+
}
|
|
63
|
+
async function isWatchmanResponsive(projectRoot) {
|
|
64
|
+
let probe = watchmanResponsivePromises.get(projectRoot);
|
|
65
|
+
if (probe) {
|
|
66
|
+
return probe;
|
|
67
|
+
}
|
|
68
|
+
probe = new Promise(resolve2 => {
|
|
69
|
+
let settled = false;
|
|
70
|
+
const finish = value => {
|
|
71
|
+
if (settled) return;
|
|
72
|
+
settled = true;
|
|
73
|
+
clearTimeout(timeout);
|
|
74
|
+
resolve2(value);
|
|
75
|
+
};
|
|
76
|
+
const child = (0, import_node_child_process.spawn)("watchman", ["watch-project", projectRoot], {
|
|
77
|
+
stdio: "ignore"
|
|
78
|
+
});
|
|
79
|
+
const timeout = setTimeout(() => {
|
|
80
|
+
child.kill();
|
|
81
|
+
finish(false);
|
|
82
|
+
}, WATCHMAN_PROBE_TIMEOUT_MS);
|
|
83
|
+
child.once("error", () => {
|
|
84
|
+
finish(false);
|
|
85
|
+
});
|
|
86
|
+
child.once("exit", code => {
|
|
87
|
+
finish(code === 0);
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
watchmanResponsivePromises.set(projectRoot, probe);
|
|
91
|
+
return probe;
|
|
92
|
+
}
|
|
93
|
+
async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
94
|
+
const extraConfig = {};
|
|
95
|
+
const projectRoot = (0, import_node_path.resolve)(metroPluginOptions.argv?.projectRoot ?? config.root);
|
|
96
|
+
const {
|
|
97
|
+
mainModuleName,
|
|
98
|
+
defaultConfigOverrides,
|
|
99
|
+
watchman,
|
|
100
|
+
excludeModules
|
|
101
|
+
} = metroPluginOptions;
|
|
102
|
+
const useWatchman = watchman ?? (await isWatchmanResponsive(projectRoot));
|
|
103
|
+
if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {
|
|
104
|
+
didWarnAboutWatchmanFallback = true;
|
|
105
|
+
console.warn("[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.");
|
|
106
|
+
}
|
|
107
|
+
const {
|
|
108
|
+
getDefaultConfig
|
|
109
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "@expo/metro-config");
|
|
110
|
+
const _defaultConfig = getDefaultConfig(projectRoot);
|
|
111
|
+
if (mainModuleName) {
|
|
112
|
+
const origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
113
|
+
const resolveMainModuleName = await (async () => {
|
|
114
|
+
const ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
115
|
+
const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
116
|
+
(0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);
|
|
117
|
+
return p => {
|
|
118
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
119
|
+
pkg: {
|
|
120
|
+
main: mainModuleName
|
|
121
|
+
},
|
|
122
|
+
platform: p.platform
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
})();
|
|
126
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
127
|
+
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
128
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
129
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
130
|
+
}
|
|
131
|
+
return origRewriteRequestUrl(url);
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
const existingBlockList = _defaultConfig?.resolver?.blockList;
|
|
135
|
+
const buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
136
|
+
const blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
137
|
+
const defaultConfig = {
|
|
138
|
+
..._defaultConfig,
|
|
139
|
+
resolver: {
|
|
140
|
+
..._defaultConfig?.resolver,
|
|
141
|
+
useWatchman,
|
|
142
|
+
blockList,
|
|
143
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
144
|
+
// `one` related packages are using `.mjs` extensions. This fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
145
|
+
resolveRequest: (context, moduleName, platform) => {
|
|
146
|
+
const origResolveRequestFn = _defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
147
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
148
|
+
if (import_micromatch.default.isMatch(moduleName, excludeModules)) {
|
|
149
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
153
|
+
const contextOverride = {
|
|
154
|
+
...context,
|
|
155
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(c => c !== "import")
|
|
156
|
+
};
|
|
157
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
158
|
+
}
|
|
159
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
transformer: {
|
|
163
|
+
..._defaultConfig?.transformer,
|
|
164
|
+
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
165
|
+
},
|
|
166
|
+
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
167
|
+
};
|
|
168
|
+
const merged = {
|
|
169
|
+
...defaultConfig,
|
|
170
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
171
|
+
};
|
|
172
|
+
return {
|
|
173
|
+
defaultConfig: merged,
|
|
174
|
+
projectRoot,
|
|
175
|
+
extraConfig
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
179
|
+
const extraConfig = {};
|
|
180
|
+
const projectRoot = (0, import_node_path.resolve)(metroPluginOptions.argv?.projectRoot ?? config.root);
|
|
181
|
+
const {
|
|
182
|
+
mainModuleName,
|
|
183
|
+
argv,
|
|
184
|
+
defaultConfigOverrides,
|
|
185
|
+
watchman,
|
|
186
|
+
excludeModules
|
|
187
|
+
} = metroPluginOptions;
|
|
188
|
+
const useWatchman = watchman ?? (await isWatchmanResponsive(projectRoot));
|
|
189
|
+
if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {
|
|
190
|
+
didWarnAboutWatchmanFallback = true;
|
|
191
|
+
console.warn("[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.");
|
|
192
|
+
}
|
|
193
|
+
const {
|
|
194
|
+
loadConfig
|
|
195
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "metro");
|
|
196
|
+
const {
|
|
197
|
+
getDefaultConfig
|
|
198
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "@expo/metro-config");
|
|
199
|
+
const _defaultConfig = getDefaultConfig(projectRoot);
|
|
200
|
+
if (mainModuleName) {
|
|
201
|
+
const origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
202
|
+
const resolveMainModuleName = await (async () => {
|
|
203
|
+
const ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
204
|
+
const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
205
|
+
(0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);
|
|
206
|
+
return p => {
|
|
207
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
208
|
+
pkg: {
|
|
209
|
+
main: mainModuleName
|
|
210
|
+
},
|
|
211
|
+
platform: p.platform
|
|
212
|
+
});
|
|
213
|
+
};
|
|
214
|
+
})();
|
|
215
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
216
|
+
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
217
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
218
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
219
|
+
}
|
|
220
|
+
return origRewriteRequestUrl(url);
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
const existingBlockList = _defaultConfig?.resolver?.blockList;
|
|
224
|
+
const buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
225
|
+
const blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
226
|
+
const defaultConfig = {
|
|
227
|
+
..._defaultConfig,
|
|
228
|
+
resolver: {
|
|
229
|
+
..._defaultConfig?.resolver,
|
|
230
|
+
useWatchman,
|
|
231
|
+
blockList,
|
|
232
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
233
|
+
// `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
234
|
+
resolveRequest: (context, moduleName, platform) => {
|
|
235
|
+
const origResolveRequestFn = _defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
236
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
237
|
+
if (import_micromatch.default.isMatch(moduleName, excludeModules)) {
|
|
238
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
242
|
+
const contextOverride = {
|
|
243
|
+
...context,
|
|
244
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(c => c !== "import")
|
|
245
|
+
};
|
|
246
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
247
|
+
}
|
|
248
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
transformer: {
|
|
252
|
+
..._defaultConfig?.transformer,
|
|
253
|
+
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
254
|
+
},
|
|
255
|
+
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
256
|
+
};
|
|
257
|
+
const metroConfig = await loadConfig({
|
|
258
|
+
cwd: projectRoot,
|
|
259
|
+
projectRoot,
|
|
260
|
+
"reset-cache": !!process.env.METRO_RESET_CACHE,
|
|
261
|
+
...argv
|
|
262
|
+
}, {
|
|
263
|
+
...defaultConfig,
|
|
264
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
265
|
+
});
|
|
266
|
+
return {
|
|
267
|
+
...metroConfig,
|
|
268
|
+
...extraConfig
|
|
269
|
+
};
|
|
270
|
+
}
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
var __copyProps = (to, from, except, desc) => {
|
|
16
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
17
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
18
|
+
get: () => from[key],
|
|
19
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
26
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
27
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
+
value: mod,
|
|
31
|
+
enumerable: true
|
|
32
|
+
}) : target, mod));
|
|
33
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
34
|
+
value: true
|
|
35
|
+
}), mod);
|
|
36
|
+
var getMetroConfigFromViteConfig_exports = {};
|
|
37
|
+
__export(getMetroConfigFromViteConfig_exports, {
|
|
38
|
+
buildMetroConfigInputFromViteConfig: () => buildMetroConfigInputFromViteConfig,
|
|
39
|
+
getMetroConfigFromViteConfig: () => getMetroConfigFromViteConfig
|
|
40
|
+
});
|
|
41
|
+
module.exports = __toCommonJS(getMetroConfigFromViteConfig_exports);
|
|
42
|
+
var import_child_process = require("child_process");
|
|
43
|
+
var import_path = require("path");
|
|
44
|
+
var import_micromatch = __toESM(require("micromatch"), 1);
|
|
45
|
+
var import_projectImport = require("../utils/projectImport.native.js");
|
|
46
|
+
var import_getTerminalReporter = require("../utils/getTerminalReporter.native.js");
|
|
47
|
+
var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require("../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js");
|
|
48
|
+
var WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
49
|
+
var watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
50
|
+
var didWarnAboutWatchmanFallback = false;
|
|
51
|
+
var rootIndexBundleRequestPattern = /^(https?:\/\/[^/]+)?\/index\.bundle(?=$|[?#])/;
|
|
52
|
+
function getPlatformFromBundleUrl(url) {
|
|
53
|
+
var _url_match;
|
|
54
|
+
var platform = (_url_match = url.match(/[?&]platform=(ios|android)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
55
|
+
return platform === "android" ? "android" : "ios";
|
|
56
|
+
}
|
|
57
|
+
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
58
|
+
var resolvedMainModulePath = resolveMainModuleName({
|
|
59
|
+
platform: getPlatformFromBundleUrl(url)
|
|
60
|
+
});
|
|
61
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
62
|
+
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
63
|
+
}
|
|
64
|
+
return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);
|
|
65
|
+
}
|
|
66
|
+
async function isWatchmanResponsive(projectRoot) {
|
|
67
|
+
var probe = watchmanResponsivePromises.get(projectRoot);
|
|
68
|
+
if (probe) {
|
|
69
|
+
return probe;
|
|
70
|
+
}
|
|
71
|
+
probe = new Promise(function (resolve2) {
|
|
72
|
+
var settled = false;
|
|
73
|
+
var finish = function (value) {
|
|
74
|
+
if (settled) return;
|
|
75
|
+
settled = true;
|
|
76
|
+
clearTimeout(timeout);
|
|
77
|
+
resolve2(value);
|
|
78
|
+
};
|
|
79
|
+
var child = (0, import_child_process.spawn)("watchman", ["watch-project", projectRoot], {
|
|
80
|
+
stdio: "ignore"
|
|
81
|
+
});
|
|
82
|
+
var timeout = setTimeout(function () {
|
|
83
|
+
child.kill();
|
|
84
|
+
finish(false);
|
|
85
|
+
}, WATCHMAN_PROBE_TIMEOUT_MS);
|
|
86
|
+
child.once("error", function () {
|
|
87
|
+
finish(false);
|
|
88
|
+
});
|
|
89
|
+
child.once("exit", function (code) {
|
|
90
|
+
finish(code === 0);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
watchmanResponsivePromises.set(projectRoot, probe);
|
|
94
|
+
return probe;
|
|
95
|
+
}
|
|
96
|
+
async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
97
|
+
var _ref;
|
|
98
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver;
|
|
99
|
+
var extraConfig = {};
|
|
100
|
+
var projectRoot = (0, import_path.resolve)((_ref = (_metroPluginOptions_argv = metroPluginOptions.argv) === null || _metroPluginOptions_argv === void 0 ? void 0 : _metroPluginOptions_argv.projectRoot) !== null && _ref !== void 0 ? _ref : config.root);
|
|
101
|
+
var {
|
|
102
|
+
mainModuleName,
|
|
103
|
+
defaultConfigOverrides,
|
|
104
|
+
watchman,
|
|
105
|
+
excludeModules
|
|
106
|
+
} = metroPluginOptions;
|
|
107
|
+
var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);
|
|
108
|
+
if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {
|
|
109
|
+
didWarnAboutWatchmanFallback = true;
|
|
110
|
+
console.warn("[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.");
|
|
111
|
+
}
|
|
112
|
+
var {
|
|
113
|
+
getDefaultConfig
|
|
114
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "@expo/metro-config");
|
|
115
|
+
var _defaultConfig = getDefaultConfig(projectRoot);
|
|
116
|
+
if (mainModuleName) {
|
|
117
|
+
var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
118
|
+
var resolveMainModuleName = await async function () {
|
|
119
|
+
var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
120
|
+
var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
121
|
+
(0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);
|
|
122
|
+
return function (p) {
|
|
123
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
124
|
+
pkg: {
|
|
125
|
+
main: mainModuleName
|
|
126
|
+
},
|
|
127
|
+
platform: p.platform
|
|
128
|
+
});
|
|
129
|
+
};
|
|
130
|
+
}();
|
|
131
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
132
|
+
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
133
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
134
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
135
|
+
}
|
|
136
|
+
return origRewriteRequestUrl(url);
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
140
|
+
var buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
141
|
+
var blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
142
|
+
var defaultConfig = {
|
|
143
|
+
..._defaultConfig,
|
|
144
|
+
resolver: {
|
|
145
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver),
|
|
146
|
+
useWatchman,
|
|
147
|
+
blockList,
|
|
148
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
149
|
+
// `one` related packages are using `.mjs` extensions. This fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
150
|
+
resolveRequest: function (context, moduleName, platform) {
|
|
151
|
+
var _defaultConfig_resolver2;
|
|
152
|
+
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;
|
|
153
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
154
|
+
if (import_micromatch.default.isMatch(moduleName, excludeModules)) {
|
|
155
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
159
|
+
var contextOverride = {
|
|
160
|
+
...context,
|
|
161
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(function (c) {
|
|
162
|
+
return c !== "import";
|
|
163
|
+
})
|
|
164
|
+
};
|
|
165
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
166
|
+
}
|
|
167
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
transformer: {
|
|
171
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer),
|
|
172
|
+
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
173
|
+
},
|
|
174
|
+
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
175
|
+
};
|
|
176
|
+
var merged = {
|
|
177
|
+
...defaultConfig,
|
|
178
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
179
|
+
};
|
|
180
|
+
return {
|
|
181
|
+
defaultConfig: merged,
|
|
182
|
+
projectRoot,
|
|
183
|
+
extraConfig
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
187
|
+
var _ref;
|
|
188
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver;
|
|
189
|
+
var extraConfig = {};
|
|
190
|
+
var projectRoot = (0, import_path.resolve)((_ref = (_metroPluginOptions_argv = metroPluginOptions.argv) === null || _metroPluginOptions_argv === void 0 ? void 0 : _metroPluginOptions_argv.projectRoot) !== null && _ref !== void 0 ? _ref : config.root);
|
|
191
|
+
var {
|
|
192
|
+
mainModuleName,
|
|
193
|
+
argv,
|
|
194
|
+
defaultConfigOverrides,
|
|
195
|
+
watchman,
|
|
196
|
+
excludeModules
|
|
197
|
+
} = metroPluginOptions;
|
|
198
|
+
var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);
|
|
199
|
+
if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {
|
|
200
|
+
didWarnAboutWatchmanFallback = true;
|
|
201
|
+
console.warn("[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.");
|
|
202
|
+
}
|
|
203
|
+
var {
|
|
204
|
+
loadConfig
|
|
205
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "metro");
|
|
206
|
+
var {
|
|
207
|
+
getDefaultConfig
|
|
208
|
+
} = await (0, import_projectImport.projectImport)(projectRoot, "@expo/metro-config");
|
|
209
|
+
var _defaultConfig = getDefaultConfig(projectRoot);
|
|
210
|
+
if (mainModuleName) {
|
|
211
|
+
var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;
|
|
212
|
+
var resolveMainModuleName = await async function () {
|
|
213
|
+
var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js")).default.ExpoGoManifestHandlerMiddleware;
|
|
214
|
+
var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});
|
|
215
|
+
(0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);
|
|
216
|
+
return function (p) {
|
|
217
|
+
return manifestHandlerMiddleware.resolveMainModuleName({
|
|
218
|
+
pkg: {
|
|
219
|
+
main: mainModuleName
|
|
220
|
+
},
|
|
221
|
+
platform: p.platform
|
|
222
|
+
});
|
|
223
|
+
};
|
|
224
|
+
}();
|
|
225
|
+
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
226
|
+
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
227
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
228
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
229
|
+
}
|
|
230
|
+
return origRewriteRequestUrl(url);
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
234
|
+
var buildOutputExclusions = [/[/\\]dist[/\\](?:static|server)(?:[/\\]|$)/, /[/\\]tests[/\\][^/\\]+[/\\]dist(?:[/\\]|$)/, /[/\\]\.docker(?:[/\\]|$)/, /[/\\]\.vite(?:[/\\]|$)/];
|
|
235
|
+
var blockList = [...(existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [existingBlockList] : []), ...buildOutputExclusions];
|
|
236
|
+
var defaultConfig = {
|
|
237
|
+
..._defaultConfig,
|
|
238
|
+
resolver: {
|
|
239
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver),
|
|
240
|
+
useWatchman,
|
|
241
|
+
blockList,
|
|
242
|
+
sourceExts: ["js", "jsx", "json", "ts", "tsx", "mjs", "cjs"],
|
|
243
|
+
// `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.
|
|
244
|
+
resolveRequest: function (context, moduleName, platform) {
|
|
245
|
+
var _defaultConfig_resolver2;
|
|
246
|
+
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;
|
|
247
|
+
if (excludeModules && excludeModules.length > 0) {
|
|
248
|
+
if (import_micromatch.default.isMatch(moduleName, excludeModules)) {
|
|
249
|
+
return origResolveRequestFn(context, "@vxrn/vite-plugin-metro/empty", platform);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
if (moduleName.startsWith("@babel/runtime")) {
|
|
253
|
+
var contextOverride = {
|
|
254
|
+
...context,
|
|
255
|
+
unstable_conditionNames: context.unstable_conditionNames.filter(function (c) {
|
|
256
|
+
return c !== "import";
|
|
257
|
+
})
|
|
258
|
+
};
|
|
259
|
+
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
260
|
+
}
|
|
261
|
+
return origResolveRequestFn(context, moduleName, platform);
|
|
262
|
+
}
|
|
263
|
+
},
|
|
264
|
+
transformer: {
|
|
265
|
+
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer),
|
|
266
|
+
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
267
|
+
},
|
|
268
|
+
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
269
|
+
};
|
|
270
|
+
var metroConfig = await loadConfig({
|
|
271
|
+
cwd: projectRoot,
|
|
272
|
+
projectRoot,
|
|
273
|
+
"reset-cache": !!process.env.METRO_RESET_CACHE,
|
|
274
|
+
...argv
|
|
275
|
+
}, {
|
|
276
|
+
...defaultConfig,
|
|
277
|
+
...(typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides)
|
|
278
|
+
});
|
|
279
|
+
return {
|
|
280
|
+
...metroConfig,
|
|
281
|
+
...extraConfig
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
//# sourceMappingURL=getMetroConfigFromViteConfig.native.js.map
|