@vxrn/vite-plugin-metro 1.17.3 → 1.17.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/metro-config/getMetroConfigFromViteConfig.cjs +18 -15
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +19 -14
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +18 -15
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +19 -14
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/package.json +4 -4
- package/src/metro-config/getMetroConfigFromViteConfig.ts +35 -13
- package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
|
@@ -46,6 +46,20 @@ var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = requir
|
|
|
46
46
|
const WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
47
47
|
const watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
48
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
|
+
}
|
|
49
63
|
async function isWatchmanResponsive(projectRoot) {
|
|
50
64
|
let probe = watchmanResponsivePromises.get(projectRoot);
|
|
51
65
|
if (probe) {
|
|
@@ -111,11 +125,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
111
125
|
})();
|
|
112
126
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
113
127
|
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
114
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
115
|
-
|
|
116
|
-
platform: "ios"
|
|
117
|
-
});
|
|
118
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
128
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
129
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
119
130
|
}
|
|
120
131
|
return origRewriteRequestUrl(url);
|
|
121
132
|
};
|
|
@@ -203,12 +214,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
203
214
|
})();
|
|
204
215
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
205
216
|
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
206
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
207
|
-
|
|
208
|
-
platform: "ios"
|
|
209
|
-
// we probably need to handle android here, but currently in our use case this won't affect the result
|
|
210
|
-
});
|
|
211
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
217
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
218
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
212
219
|
}
|
|
213
220
|
return origRewriteRequestUrl(url);
|
|
214
221
|
};
|
|
@@ -244,10 +251,6 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
244
251
|
transformer: {
|
|
245
252
|
..._defaultConfig?.transformer,
|
|
246
253
|
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
247
|
-
// TODO: This is what Expo is doing, but do we really need this?
|
|
248
|
-
// Doing so seems to make the release build broken since assets will be
|
|
249
|
-
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
250
|
-
// publicPath: '/assets/?unstable_path=.',
|
|
251
254
|
},
|
|
252
255
|
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
253
256
|
};
|
|
@@ -48,6 +48,21 @@ var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = requir
|
|
|
48
48
|
var WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
49
49
|
var watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
50
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
|
+
}
|
|
51
66
|
async function isWatchmanResponsive(projectRoot) {
|
|
52
67
|
var probe = watchmanResponsivePromises.get(projectRoot);
|
|
53
68
|
if (probe) {
|
|
@@ -115,11 +130,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
115
130
|
}();
|
|
116
131
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
117
132
|
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
118
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
119
|
-
|
|
120
|
-
platform: "ios"
|
|
121
|
-
});
|
|
122
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
133
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
134
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
123
135
|
}
|
|
124
136
|
return origRewriteRequestUrl(url);
|
|
125
137
|
};
|
|
@@ -212,11 +224,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
212
224
|
}();
|
|
213
225
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
214
226
|
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
215
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
216
|
-
|
|
217
|
-
platform: "ios"
|
|
218
|
-
});
|
|
219
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
227
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
228
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
220
229
|
}
|
|
221
230
|
return origRewriteRequestUrl(url);
|
|
222
231
|
};
|
|
@@ -256,10 +265,6 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
256
265
|
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer),
|
|
257
266
|
babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
258
267
|
},
|
|
259
|
-
// TODO: This is what Expo is doing, but do we really need this?
|
|
260
|
-
// Doing so seems to make the release build broken since assets will be
|
|
261
|
-
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
262
|
-
// publicPath: '/assets/?unstable_path=.',
|
|
263
268
|
reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)
|
|
264
269
|
};
|
|
265
270
|
var metroConfig = await loadConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","getMetroConfigFromViteConfig_exports","__export","buildMetroConfigInputFromViteConfig","getMetroConfigFromViteConfig","module","exports","import_child_process","require","import_path","import_micromatch","__toESM","import_projectImport","import_getTerminalReporter","import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","clearTimeout","timeout","child","spawn","stdio","setTimeout","kill","once","code","set","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","resolve","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","projectImport","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","getMetroConfigFromViteConfig_exports","__export","buildMetroConfigInputFromViteConfig","getMetroConfigFromViteConfig","module","exports","import_child_process","require","import_path","import_micromatch","__toESM","import_projectImport","import_getTerminalReporter","import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","rootIndexBundleRequestPattern","getPlatformFromBundleUrl","url","_url_match","platform","match","rewriteMainModuleBundleUrl","resolveMainModuleName","resolvedMainModulePath","includes","replace","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","clearTimeout","timeout","child","spawn","stdio","setTimeout","kill","once","code","set","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","resolve","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","projectImport","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","p","pkg","main","getResolveMainModuleName","test","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","sourceExts","resolveRequest","context","moduleName","_defaultConfig_resolver2","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","projectResolve","reporter","getTerminalReporter","merged","loadConfig","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,20 @@ import { patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName } from "..
|
|
|
7
7
|
const WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
8
8
|
const watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
9
9
|
let didWarnAboutWatchmanFallback = false;
|
|
10
|
+
const rootIndexBundleRequestPattern = /^(https?:\/\/[^/]+)?\/index\.bundle(?=$|[?#])/;
|
|
11
|
+
function getPlatformFromBundleUrl(url) {
|
|
12
|
+
const platform = url.match(/[?&]platform=(ios|android)(?:&|$)/)?.[1];
|
|
13
|
+
return platform === "android" ? "android" : "ios";
|
|
14
|
+
}
|
|
15
|
+
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
16
|
+
const resolvedMainModulePath = resolveMainModuleName({
|
|
17
|
+
platform: getPlatformFromBundleUrl(url)
|
|
18
|
+
});
|
|
19
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
20
|
+
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
21
|
+
}
|
|
22
|
+
return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);
|
|
23
|
+
}
|
|
10
24
|
async function isWatchmanResponsive(projectRoot) {
|
|
11
25
|
let probe = watchmanResponsivePromises.get(projectRoot);
|
|
12
26
|
if (probe) {
|
|
@@ -72,11 +86,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
72
86
|
})();
|
|
73
87
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
74
88
|
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
75
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
76
|
-
|
|
77
|
-
platform: "ios"
|
|
78
|
-
});
|
|
79
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
89
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
90
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
80
91
|
}
|
|
81
92
|
return origRewriteRequestUrl(url);
|
|
82
93
|
};
|
|
@@ -164,12 +175,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
164
175
|
})();
|
|
165
176
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
166
177
|
_defaultConfig.server.rewriteRequestUrl = url => {
|
|
167
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
168
|
-
|
|
169
|
-
platform: "ios"
|
|
170
|
-
// we probably need to handle android here, but currently in our use case this won't affect the result
|
|
171
|
-
});
|
|
172
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
178
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
179
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
173
180
|
}
|
|
174
181
|
return origRewriteRequestUrl(url);
|
|
175
182
|
};
|
|
@@ -205,10 +212,6 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
205
212
|
transformer: {
|
|
206
213
|
..._defaultConfig?.transformer,
|
|
207
214
|
babelTransformerPath: projectResolve(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
208
|
-
// TODO: This is what Expo is doing, but do we really need this?
|
|
209
|
-
// Doing so seems to make the release build broken since assets will be
|
|
210
|
-
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
211
|
-
// publicPath: '/assets/?unstable_path=.',
|
|
212
215
|
},
|
|
213
216
|
reporter: await getTerminalReporter(projectRoot)
|
|
214
217
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["spawn","resolve","micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","value","clearTimeout","timeout","child","stdio","setTimeout","kill","once","code","set","buildMetroConfigInputFromViteConfig","config","metroPluginOptions","extraConfig","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","
|
|
1
|
+
{"version":3,"names":["spawn","resolve","micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","rootIndexBundleRequestPattern","getPlatformFromBundleUrl","url","platform","match","rewriteMainModuleBundleUrl","resolveMainModuleName","resolvedMainModulePath","includes","replace","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","value","clearTimeout","timeout","child","stdio","setTimeout","kill","once","code","set","buildMetroConfigInputFromViteConfig","config","metroPluginOptions","extraConfig","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","getResolveMainModuleName","test","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","sourceExts","resolveRequest","context","moduleName","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","merged","getMetroConfigFromViteConfig","loadConfig","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,21 @@ import { patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName } from "..
|
|
|
7
7
|
var WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
8
8
|
var watchmanResponsivePromises = /* @__PURE__ */new Map();
|
|
9
9
|
var didWarnAboutWatchmanFallback = false;
|
|
10
|
+
var rootIndexBundleRequestPattern = /^(https?:\/\/[^/]+)?\/index\.bundle(?=$|[?#])/;
|
|
11
|
+
function getPlatformFromBundleUrl(url) {
|
|
12
|
+
var _url_match;
|
|
13
|
+
var platform = (_url_match = url.match(/[?&]platform=(ios|android)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
14
|
+
return platform === "android" ? "android" : "ios";
|
|
15
|
+
}
|
|
16
|
+
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
17
|
+
var resolvedMainModulePath = resolveMainModuleName({
|
|
18
|
+
platform: getPlatformFromBundleUrl(url)
|
|
19
|
+
});
|
|
20
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
21
|
+
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
22
|
+
}
|
|
23
|
+
return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);
|
|
24
|
+
}
|
|
10
25
|
async function isWatchmanResponsive(projectRoot) {
|
|
11
26
|
var probe = watchmanResponsivePromises.get(projectRoot);
|
|
12
27
|
if (probe) {
|
|
@@ -74,11 +89,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
74
89
|
}();
|
|
75
90
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
76
91
|
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
77
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
78
|
-
|
|
79
|
-
platform: "ios"
|
|
80
|
-
});
|
|
81
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
92
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
93
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
82
94
|
}
|
|
83
95
|
return origRewriteRequestUrl(url);
|
|
84
96
|
};
|
|
@@ -171,11 +183,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
171
183
|
}();
|
|
172
184
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
173
185
|
_defaultConfig.server.rewriteRequestUrl = function (url) {
|
|
174
|
-
if (url.includes("/.expo/.virtual-metro-entry.bundle?")) {
|
|
175
|
-
|
|
176
|
-
platform: "ios"
|
|
177
|
-
});
|
|
178
|
-
return url.replace(".expo/.virtual-metro-entry", resolvedMainModulePath);
|
|
186
|
+
if (url.includes("/.expo/.virtual-metro-entry.bundle?") || rootIndexBundleRequestPattern.test(url)) {
|
|
187
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
179
188
|
}
|
|
180
189
|
return origRewriteRequestUrl(url);
|
|
181
190
|
};
|
|
@@ -215,10 +224,6 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
215
224
|
...(_defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer),
|
|
216
225
|
babelTransformerPath: projectResolve(projectRoot, "@vxrn/vite-plugin-metro/babel-transformer")
|
|
217
226
|
},
|
|
218
|
-
// TODO: This is what Expo is doing, but do we really need this?
|
|
219
|
-
// Doing so seems to make the release build broken since assets will be
|
|
220
|
-
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
221
|
-
// publicPath: '/assets/?unstable_path=.',
|
|
222
227
|
reporter: await getTerminalReporter(projectRoot)
|
|
223
228
|
};
|
|
224
229
|
var metroConfig = await loadConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["spawn","resolve","micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","value","clearTimeout","timeout","child","stdio","setTimeout","kill","once","code","set","buildMetroConfigInputFromViteConfig","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","
|
|
1
|
+
{"version":3,"names":["spawn","resolve","micromatch","projectImport","projectResolve","getTerminalReporter","patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName","WATCHMAN_PROBE_TIMEOUT_MS","watchmanResponsivePromises","Map","didWarnAboutWatchmanFallback","rootIndexBundleRequestPattern","getPlatformFromBundleUrl","url","_url_match","platform","match","rewriteMainModuleBundleUrl","resolveMainModuleName","resolvedMainModulePath","includes","replace","isWatchmanResponsive","projectRoot","probe","get","Promise","resolve2","settled","finish","value","clearTimeout","timeout","child","stdio","setTimeout","kill","once","code","set","buildMetroConfigInputFromViteConfig","config","metroPluginOptions","_ref","_metroPluginOptions_argv","_defaultConfig_resolver","extraConfig","argv","root","mainModuleName","defaultConfigOverrides","watchman","excludeModules","useWatchman","console","warn","getDefaultConfig","_defaultConfig","origRewriteRequestUrl","server","rewriteRequestUrl","ExpoGoManifestHandlerMiddleware","default","manifestHandlerMiddleware","p","pkg","main","getResolveMainModuleName","test","existingBlockList","resolver","blockList","buildOutputExclusions","Array","isArray","defaultConfig","sourceExts","resolveRequest","context","moduleName","_defaultConfig_resolver2","origResolveRequestFn","length","isMatch","startsWith","contextOverride","unstable_conditionNames","filter","c","transformer","babelTransformerPath","reporter","merged","getMetroConfigFromViteConfig","loadConfig","metroConfig","cwd","process","env","METRO_RESET_CACHE"],"sources":["../../../src/metro-config/getMetroConfigFromViteConfig.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,KAAA,QAAa;AACtB,SAASC,OAAA,QAAe;AACxB,OAAOC,UAAA,MAAgB;AAQvB,SAASC,aAAA,EAAeC,cAAA,QAAsB;AAC9C,SAASC,mBAAA,QAA2B;AACpC,SAASC,4DAAA,QAAoE;AAM7E,IAAAC,yBAAM,MAA4B;AAClC,IAAAC,0BAAM,kBAA6B,IAAAC,GAAI;AACvC,IAAIC,4BAAA,GAA+B;AACnC,IAAAC,6BAAM,kDACJ;AAEF,SAASC,yBAAyBC,GAAA,EAAgC;EAChE,IAAAC,UAAM;EACN,IAAAC,QAAO,IAAAD,UAAa,GAAAD,GAAY,CAAAG,KAAA,oCAAY,eAAAF,UAAA,uBAAAA,UAAA;EAC9C,OAAAC,QAAA;AAEA;AAIE,SAAME,0BAAyBA,CAAAJ,GAAA,EAAAK,qBAAsB;EAAA,IACnDC,sBAAU,GAAAD,qBAA4B;IACvCH,QAAA,EAAAH,wBAAA,CAAAC,GAAA;EAED;EACE,IAAAA,GAAA,CAAAO,QAAW,sCAAsC;IACnD,OAAAP,GAAA,CAAAQ,OAAA,+BAAAF,sBAAA;EAEA;EAAW,OACTN,GAAA,CAAAQ,OAAA,CAAAV,6BAAA,QAAAQ,sBAAA;AAAA;AAC4B,eAC9BG,qBAAAC,WAAA;EACF,IAAAC,KAAA,GAAAhB,0BAAA,CAAAiB,GAAA,CAAAF,WAAA;EAEA,IAAAC,KAAA;IACE,OAAIA,KAAQ;EACZ;EACEA,KAAA,OAAOE,OAAA,WAAAC,QAAA;IACT,IAAAC,OAAA;IAEA,IAAAC,MAAY,YAAAA,CAAkBC,KAAA;MAC5B,IAAIF,OAAA,EAAU;MAEdA,OAAM,OAAU;MACdG,YAAa,CAAAC,OAAA;MACbL,QAAA,CAAAG,KAAU;IACV;IACA,IAAAG,KAAA,GAAQjC,KAAK,cACf,iBAEAuB,WAAM,CAA0D,EAC9D;MACDW,KAAA;IAED;IACE,IAAAF,OAAM,GAAKG,UAAA;MACXF,KAAA,CAAAG,IAAO,EAAK;MACdP,MAAG;IAEH,GAAAtB,yBAA0B;IACxB0B,KAAA,CAAAI,IAAO,QAAK;MACbR,MAAA;IAED;IACEI,KAAA,CAAAI,IAAO,SAAU,UAAAC,IAAA;MAClBT,MAAA,CAAAS,IAAA;IACF;EAED;EACA9B,0BAAO,CAAA+B,GAAA,CAAAhB,WAAA,EAAAC,KAAA;EACT,OAAAA,KAAA;AAUA;AAIE,eAAMgB,mCAA4BA,CAAAC,MAAA,EAAAC,kBAAA;EAClC,IAAAC,IAAM;EACN,IAAAC,wBAAwB,EAAAC,uBAAwB;EAEhD,IAAAC,WAAM,KAAc;EAEpB,IAAIvB,WAAA,GAAatB,OAAA,EAAa0C,IAAC,IAAAC,wBAAgB,GAAAF,kBAA8B,CAAAK,IAAA,cAAAH,wBAAA,uBAAAA,wBAAA,CAAArB,WAAA,cAAAoB,IAAA,cAAAA,IAAA,GAAAF,MAAA,CAAAO,IAAA;EAC3E;IAAAC,cAAA;IAAAC,sBAA+B;IAAAC,QAAA;IAAAC;EAAA,IAAAV,kBAAA;EAC/B,IAAAW,WAAQ,GAAAF,QAAA,aAAAA,QAAA,cAAAA,QAAA,SAAA7B,oBAAA,CAAAC,WAAA;EAAA,IACN4B,QAAA,gBAAAE,WAAA,KAAA3C,4BAAA;IACFA,4BAAA;IACF4C,OAAA,CAAAC,IAAA;EAEA;EAIA;IAAMC;EAAmC,UAAArD,aAAiB,CAAAoB,WAAW;EAErE,IAAIkC,cAAA,GAAgBD,gBAAA,CAAAjC,WAAA;EAClB,IAAA0B,cAAM;IAEN,IAAAS,qBAAM,GAAAD,cACG,CAAAE,MAAY,CAAAC,iBAAA;IACjB,IAAA1C,qBAAM,2BACE;MAAA,IACJ2C,+BAAA,UAAA1D,aAAA,CAAAoB,WAAA,qFAAAuC,OAAA,CAAAD,+BAAA;MAAA,IACAE,yBAAA,OAAAF,+BAAA,CAAAtC,WAAA;MACFjB,4DACQ,CAAAyD,yBAAA,EAAAd,cAAA;MAEV,OAAM,UAAAe,CAAA;QACJ,OAAAD,yBAAA,CAAA7C,qBAAA;UACC+C,GAAA;YACHC,IAAA,EAAAjB;UAEA;UACElC,QAAA,EAAAiD,CAAA,CAAAjD;QACA;MACF;IAEA;IACE+B,WAAO,CAAAqB,wBAAA,GAA0BjD,qBAAsB;IAAAuC,cAC9C,CAAAE,MAAM,CAAAC,iBAAe,aAAA/C,GAAA;MAAA,IAC5BA,GAAA,CAAAO,QAAY,2CAAAT,6BAAA,CAAAyD,IAAA,CAAAvD,GAAA;QACd,OAACI,0BAAA,CAAAJ,GAAA,EAAAK,qBAAA;MACH;MACF,OAAGwC,qBAAA,CAAA7C,GAAA;IAEL;EAGA;EACE,IAAAwD,iBACe,GAAAZ,cAAA,aAAAA,cACb,wBAAAZ,uBACA,GAAAY,cAAA,CAAAa,QAAA,cAAAzB,uBAAA,uBAAAA,uBAAA,CAAA0B,SAAA;EACA,IAAAC,qBAAO,IAAqD,4CAC9D,EACA,4CAAgC,EAClC,4BACF,yBAEA;EACA,IAAAD,SAAM,IACJ,IAAAF,iBAAA,GAAAI,KAAA,CAAAC,OAAA,CAAAL,iBAAA,IAAAA,iBAAA,IACAA,iBAAA,CACA,QACA,GAAAG,qBAAA,CACF;EACA,IAAAG,aAAM,GAAsB;IAC1B,GAAIlB,cAAA;IAKJa,QAAG;MACL,IAAAb,cAAA,aAAAA,cAAA,uBAAAA,cAAA,CAAAa,QAAA;MAEAjB,WAAM;MACJkB,SAAG;MACHK,UAAU,GACR,IAAG,EACH,OACA,QACA,MAA2D,OAC3D,OACE,MAGA;MACE;MACEC,cAAO,WAAAA,CAAAC,OAAA,EAAAC,UAAA,EAAAhE,QAAA;QAAA,IAAAiE,wBACL;QAAA,IAAAC,oBACA,IAAAxB,cAAA,aAAAA,cAAA,wBAAAuB,wBAAA,GAAAvB,cAAA,CAAAa,QAAA,cAAAU,wBAAA,uBAAAA,wBAAA,CAAAH,cAAA,KAAAC,OAAA,CAAAD,cAAA;QAAA,IAAAzB,cACA,IAAAA,cAAA,CAAA8B,MAAA;UAAA,IACFhF,UAAA,CAAAiF,OAAA,CAAAJ,UAAA,EAAA3B,cAAA;YACF,OAAA6B,oBAAA,CAAAH,OAAA,mCAAA/D,QAAA;UACF;QAIA;QACE,IAAAgE,UAAM,CAAAK,UAAA,CAAkB;UAAA,IACtBC,eAAG;YACH,GAAAP,OAAA;YAAyDQ,uBAC1C,EAAAR,OAAA,CAAAQ,uBAAA,CAAAC,MAAA,WAAAC,CAAA;cACf,OAAAA,CAAA;YACF;UACA;UACF,OAAAP,oBAAA,CAAAI,eAAA,EAAAN,UAAA,EAAAhE,QAAA;QAEA;QACF,OAAAkE,oBAAA,CAAAH,OAAA,EAAAC,UAAA,EAAAhE,QAAA;MACF;IACA;IAAa0E,WACR;MACH,IAAAhC,cAAA,KAAsB,QAAAA,cAAA,uBAAAA,cAAA,CAAAgC,WAAA;MAAAC,oBACpB,EAAAtF,cAAA,CAAAmB,WAAA;IAAA;IACAoE,QACF,QAAAtF,mBAAA,CAAAkB,WAAA;EAAA;EACF,IACAqE,MAAA,GAAU;IACZ,GAAAjB,aAAA;IAEA,WAAMzB,sBAAS,kBAAAA,sBAAA,CAAAyB,aAAA,IAAAzB,sBAAA;EAAA;EACV,OACC;IAGNyB,aAAA,EAAAiB,MAAA;IAEArE,WAAS;IACXuB;EAEA;AAIE;AAIA,eAAM+C,4BAAsBA,CAAApD,MAAmB,EAAAC,kBAAqB;EACpE,IAAAC,IAAQ;EAER,IAAAC,wBAAoB,EAAAC,uBAAmB;EAEvC,IAAIC,WAAA,GAAa;EACf,IAAAvB,WAAA,GAAAtB,OAAA,EAAA0C,IAAA,GAA+B,CAAAC,wBAAA,GAAAF,kBAAA,CAAAK,IAAA,cAAAH,wBAAA,uBAAAA,wBAAA,CAAArB,WAAA,cAAAoB,IAAA,cAAAA,IAAA,GAAAF,MAAA,CAAAO,IAAA;EAC/B;IAAAC,cAAQ;IAAAF,IAAA;IAAAG,sBAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAV,kBAAA;EAAA,IACNW,WAAA,GAAAF,QAAA,aAAAA,QAAA,cAAAA,QAAA,SAAA7B,oBAAA,CAAAC,WAAA;EAAA,IACF4B,QAAA,gBAAAE,WAAA,KAAA3C,4BAAA;IACFA,4BAAA;IAEA4C,OAAQ,CAAAC,IAAA,4FAEe;EACvB;EAIA;IAAMuC;EAAA,UAAmC3F,aAAiB,CAAAoB,WAAW;EAErE,IAAI;IAAAiC;EAAgB,UAAArD,aAAA,CAAAoB,WAAA;EAClB,IAAAkC,cAAM,GAAAD,gBAAwB,CAAAjC,WAAgB;EAQ9C,IAAA0B,cAAM;IAEF,IAAAS,qBAAM,GAAAD,cAAA,CACJE,MAAM,CAAAC,iBAAA;IAAA,IACJ1C,qBAAA;MAAA,IACA2C,+BAAA,UAAA1D,aAAA,CAAAoB,WAAA,qFAAAuC,OAAA,CAAAD,+BAAA;MACF,IACAE,yBAAQ,OAAAF,+BAAA,CAAAtC,WAAA;MAEVjB,4DAAsC,CAAAyD,yBAAA,EAAAd,cAAA;MAAA,OACpC,UAAAe,CAAA;QACA,OAACD,yBAAA,CAAA7C,qBAAA;UACH+C,GAAA;YAEAC,IAAA,EAAAjB;UACE;UACAlC,QAAA,EAAAiD,CAAA,CAAAjD;QACF;MAEA;IACE;IAAuD+B,WAChD,CAAAqB,wBAAuB,GAAAjD,qBAAA;IAAAuC,cAC5B,CAAAE,MAAY,CAAAC,iBAAA,aAAA/C,GAAA;MAAA,IACbA,GAAA,CAAAO,QAAA,2CAAAT,6BAAA,CAAAyD,IAAA,CAAAvD,GAAA;QACH,OAAAI,0BAAA,CAAAJ,GAAA,EAAAK,qBAAA;MACF;MAEF,OAAAwC,qBAAY,CAAA7C,GAAA;IAGZ;EACE;EAIE,IAAAwD,iBAAO,GAAAZ,cAAA,KAA2B,IAAK,IAAAA,cAAA,KAAqB,mBAAAZ,uBAAA,GAAAY,cAAA,CAAAa,QAAA,cAAAzB,uBAAA,uBAAAA,uBAAA,CAAA0B,SAAA;EAAA,IAC9DC,qBAAA,IAEA,4CAAgC,EAClC,8CACF,4BAMA,wBAA0B,CAC1B;EAA8B,IAC5BD,SAAA,IACA,IAAAF,iBAAA,GAAAI,KAAA,CAAAC,OAAA,CAAAL,iBAAA,IAAAA,iBAAA,IACAA,iBAAA,CACA,QACF,GAAAG,qBAAA,CACA;EAA4B,IAC1BG,aAAI;IAKJ,GAAGlB,cAAA;IACLa,QAAA;MAEA,IAAMb,cAAA,KAAkC,QAAAA,cAAA,uBAAAA,cAAA,CAAAa,QAAA;MACtCjB,WAAG;MACHkB,SAAU;MACRK,UAAG,GACH,MACA,OACA,QAA2D,MAC3D,OACE,OAIA,KAAI,CACF;MACE;MAAOC,cACL,WAAAA,CAAAC,OAAA,EAAAC,UAAA,EAAAhE,QAAA;QAAA,IAAAiE,wBACA;QAAA,IAAAC,oBACA,IAAAxB,cAAA,aAAAA,cAAA,wBAAAuB,wBAAA,GAAAvB,cAAA,CAAAa,QAAA,cAAAU,wBAAA,uBAAAA,wBAAA,CAAAH,cAAA,KAAAC,OAAA,CAAAD,cAAA;QAAA,IACFzB,cAAA,IAAAA,cAAA,CAAA8B,MAAA;UACF,IAAAhF,UAAA,CAAAiF,OAAA,CAAAJ,UAAA,EAAA3B,cAAA;YACF,OAAA6B,oBAAA,CAAAH,OAAA,mCAAA/D,QAAA;UAWA;QACE;QAAwB,IACtBgE,UAAG,CAAAK,UAAA;UAAA,IACHC,eAAA;YAAyD,GACtDP,OAAM;YACTQ,uBAAA,EAAAR,OAAA,CAAAQ,uBAAA,CAAAC,MAAA,WAAAC,CAAA;cACF,OAAAA,CAAA;YACA;UACF;UAEA,OAAOP,oBAAqB,CAAAI,eAAS,EAAAN,UAAoB,EAAAhE,QAAA;QAC3D;QACF,OAAAkE,oBAAA,CAAAH,OAAA,EAAAC,UAAA,EAAAhE,QAAA;MACA;IAAa;IACQ0E,WACnB;MAAsB,IACpBhC,cAAA,aAAAA,cAAA,uBAAAA,cAAA,CAAAgC,WAAA;MAAAC,oBACA,EAAAtF,cAAA,CAAAmB,WAAA;IAAA;IAEJoE,QAAA,QAAAtF,mBAAA,CAAAkB,WAAA;EAAA;EAEF,IAAAwE,WAAA,SAAAD,UAAA;IAEAE,GAAA,EAAMzE,WAAA;IACJA,WAAA;IAAA,aACO,IAAA0E,OAAA,CAAAC,GAAA,CAAAC,iBAAA;IAAA,GACLpD;EAAA;IAC6B,GAC7B4B,aAAG;IACL,WAAAzB,sBAAA,kBAAAA,sBAAA,CAAAyB,aAAA,IAAAzB,sBAAA;EAAA,EACA;EAAA,OACK;IAAA,GACH6C,WAAW;IAGb,GAAAjD;EACF;AAEA;AAAO,SACFN,mCACA,EACLqD,4BAAA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vxrn/vite-plugin-metro",
|
|
3
|
-
"version": "1.17.
|
|
3
|
+
"version": "1.17.5",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/cjs",
|
|
@@ -55,13 +55,13 @@
|
|
|
55
55
|
"metro": "^0.83",
|
|
56
56
|
"metro-config": "*",
|
|
57
57
|
"react-native": "0.83.2",
|
|
58
|
-
"vite": "^8.0.
|
|
58
|
+
"vite": "^8.0.13"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"@babel/core": "^7.28.5",
|
|
62
62
|
"@babel/helper-plugin-utils": "^7.27.1",
|
|
63
63
|
"@babel/types": "^7.28.5",
|
|
64
|
-
"@vxrn/debug": "1.17.
|
|
64
|
+
"@vxrn/debug": "1.17.5",
|
|
65
65
|
"babel-preset-expo": "*",
|
|
66
66
|
"launch-editor": "^2.10.0",
|
|
67
67
|
"micromatch": "^4.0.8",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"metro": "^0.83",
|
|
80
80
|
"metro-config": "*",
|
|
81
81
|
"react-native": "0.83.2",
|
|
82
|
-
"vite": "^8.0.
|
|
82
|
+
"vite": "^8.0.13"
|
|
83
83
|
},
|
|
84
84
|
"publishConfig": {
|
|
85
85
|
"access": "public"
|
|
@@ -20,6 +20,31 @@ type MetroInputConfig = Parameters<typeof loadConfigT>[1]
|
|
|
20
20
|
const WATCHMAN_PROBE_TIMEOUT_MS = 2000
|
|
21
21
|
const watchmanResponsivePromises = new Map<string, Promise<boolean>>()
|
|
22
22
|
let didWarnAboutWatchmanFallback = false
|
|
23
|
+
const rootIndexBundleRequestPattern =
|
|
24
|
+
/^(https?:\/\/[^/]+)?\/index\.bundle(?=$|[?#])/
|
|
25
|
+
|
|
26
|
+
function getPlatformFromBundleUrl(url: string): 'ios' | 'android' {
|
|
27
|
+
const platform = url.match(/[?&]platform=(ios|android)(?:&|$)/)?.[1]
|
|
28
|
+
return platform === 'android' ? 'android' : 'ios'
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function rewriteMainModuleBundleUrl(
|
|
32
|
+
url: string,
|
|
33
|
+
resolveMainModuleName: (p: { platform: 'ios' | 'android' }) => string
|
|
34
|
+
) {
|
|
35
|
+
const resolvedMainModulePath = resolveMainModuleName({
|
|
36
|
+
platform: getPlatformFromBundleUrl(url),
|
|
37
|
+
})
|
|
38
|
+
|
|
39
|
+
if (url.includes('/.expo/.virtual-metro-entry.bundle?')) {
|
|
40
|
+
return url.replace('.expo/.virtual-metro-entry', resolvedMainModulePath)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return url.replace(
|
|
44
|
+
rootIndexBundleRequestPattern,
|
|
45
|
+
`$1/${resolvedMainModulePath}.bundle`
|
|
46
|
+
)
|
|
47
|
+
}
|
|
23
48
|
|
|
24
49
|
async function isWatchmanResponsive(projectRoot: string) {
|
|
25
50
|
let probe = watchmanResponsivePromises.get(projectRoot)
|
|
@@ -124,9 +149,11 @@ export async function buildMetroConfigInputFromViteConfig(
|
|
|
124
149
|
|
|
125
150
|
// @ts-expect-error Metro 0.83 made this read-only in types but we need to patch it
|
|
126
151
|
_defaultConfig!.server!.rewriteRequestUrl = (url) => {
|
|
127
|
-
if (
|
|
128
|
-
|
|
129
|
-
|
|
152
|
+
if (
|
|
153
|
+
url.includes('/.expo/.virtual-metro-entry.bundle?') ||
|
|
154
|
+
rootIndexBundleRequestPattern.test(url)
|
|
155
|
+
) {
|
|
156
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName)
|
|
130
157
|
}
|
|
131
158
|
return origRewriteRequestUrl(url)
|
|
132
159
|
}
|
|
@@ -273,12 +300,11 @@ export async function getMetroConfigFromViteConfig(
|
|
|
273
300
|
|
|
274
301
|
// @ts-expect-error Metro 0.83 made this read-only in types but we need to patch it
|
|
275
302
|
_defaultConfig!.server!.rewriteRequestUrl = (url) => {
|
|
276
|
-
if (
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
return url.replace('.expo/.virtual-metro-entry', resolvedMainModulePath)
|
|
303
|
+
if (
|
|
304
|
+
url.includes('/.expo/.virtual-metro-entry.bundle?') ||
|
|
305
|
+
rootIndexBundleRequestPattern.test(url)
|
|
306
|
+
) {
|
|
307
|
+
return rewriteMainModuleBundleUrl(url, resolveMainModuleName)
|
|
282
308
|
}
|
|
283
309
|
|
|
284
310
|
return origRewriteRequestUrl(url)
|
|
@@ -355,10 +381,6 @@ export async function getMetroConfigFromViteConfig(
|
|
|
355
381
|
projectRoot,
|
|
356
382
|
'@vxrn/vite-plugin-metro/babel-transformer'
|
|
357
383
|
),
|
|
358
|
-
// TODO: This is what Expo is doing, but do we really need this?
|
|
359
|
-
// Doing so seems to make the release build broken since assets will be
|
|
360
|
-
// copied to /.../Xcode/DerivedData/.../Build/Products/Release-iphonesimulator/...app/assets/?unstable_path=.%2Fsrc%2Fimages/logo.png
|
|
361
|
-
// publicPath: '/assets/?unstable_path=.',
|
|
362
384
|
},
|
|
363
385
|
reporter: await getTerminalReporter(projectRoot),
|
|
364
386
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMetroConfigFromViteConfig.d.ts","sourceRoot":"","sources":["../../src/metro-config/getMetroConfigFromViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAc1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"getMetroConfigFromViteConfig.d.ts","sourceRoot":"","sources":["../../src/metro-config/getMetroConfigFromViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAc1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAuE/D;;;;;;;GAOG;AACH,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC;IAAE,aAAa,EAAE,GAAG,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,WAAW,CAAA;CAAE,CAAC,CAsIhF;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC,mBAAmB,CAAC,CA0K9B"}
|