@vxrn/vite-plugin-metro 2.9.2 → 2.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +36 -2
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.cjs +46 -12
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +46 -12
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/transformer/babel-transformer.cjs +3 -1
- package/dist/cjs/transformer/babel-transformer.native.cjs +3 -1
- package/dist/cjs/transformer/babel-transformer.native.js +3 -1
- package/dist/cjs/transformer/babel-transformer.native.js.map +1 -1
- package/dist/cjs/transformer/metroNativeWorker.cjs +4 -2
- package/dist/cjs/transformer/metroNativeWorker.native.cjs +4 -2
- package/dist/cjs/transformer/metroNativeWorker.native.js +4 -2
- package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
- package/dist/cjs/transformer/rejectDOMDirective.cjs +34 -0
- package/dist/cjs/transformer/rejectDOMDirective.native.cjs +53 -0
- package/dist/cjs/transformer/rejectDOMDirective.native.js +55 -0
- package/dist/cjs/transformer/rejectDOMDirective.native.js.map +1 -0
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +36 -2
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +46 -12
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/transformer/babel-transformer.mjs +3 -1
- package/dist/esm/transformer/babel-transformer.mjs.map +1 -1
- package/dist/esm/transformer/babel-transformer.native.js +3 -1
- package/dist/esm/transformer/babel-transformer.native.js.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.mjs +4 -2
- package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.native.js +4 -2
- package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
- package/dist/esm/transformer/rejectDOMDirective.mjs +15 -0
- package/dist/esm/transformer/rejectDOMDirective.mjs.map +1 -0
- package/dist/esm/transformer/rejectDOMDirective.native.js +32 -0
- package/dist/esm/transformer/rejectDOMDirective.native.js.map +1 -0
- package/package.json +6 -6
- package/src/metro-config/getMetroConfigFromViteConfig.ts +71 -4
- package/src/metro-config/types.ts +1 -1
- package/src/rn-commands/bundle/types.ts +1 -1
- package/src/transformer/babel-transformer.ts +4 -3
- package/src/transformer/metroNativeWorker.ts +4 -3
- package/src/transformer/rejectDOMDirective.ts +32 -0
- package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
- package/types/metro-config/types.d.ts +1 -1
- package/types/metro-config/types.d.ts.map +1 -1
- package/types/rn-commands/bundle/types.d.ts +1 -1
- package/types/rn-commands/bundle/types.d.ts.map +1 -1
- package/types/transformer/babel-transformer.d.ts.map +1 -1
- package/types/transformer/metroNativeWorker.d.ts.map +1 -1
- package/types/transformer/rejectDOMDirective.d.ts +3 -0
- package/types/transformer/rejectDOMDirective.d.ts.map +1 -0
|
@@ -36,6 +36,7 @@ var import_node_path = require("node:path");
|
|
|
36
36
|
var import_micromatch = __toESM(require("micromatch"), 1);
|
|
37
37
|
var import_metro_config = require("@react-native/metro-config");
|
|
38
38
|
var import_compiler = require("@vxrn/compiler");
|
|
39
|
+
var import_desktopReactNativeResolve = require("@vxrn/utils/desktopReactNativeResolve");
|
|
39
40
|
var import_projectImport = require("../utils/projectImport.cjs");
|
|
40
41
|
var import_getTerminalReporter = require("../utils/getTerminalReporter.cjs");
|
|
41
42
|
const WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
@@ -92,9 +93,28 @@ function getReactNativeDefaultConfig(projectRoot) {
|
|
|
92
93
|
}
|
|
93
94
|
};
|
|
94
95
|
}
|
|
96
|
+
const oneRoots = /* @__PURE__ */ new Map();
|
|
97
|
+
function redirectDesktopReactNative(projectRoot, origin, moduleName, platform) {
|
|
98
|
+
if (platform !== "macos" && platform !== "linux") return null;
|
|
99
|
+
const file = (0, import_desktopReactNativeResolve.desktopReactNativeFile)(origin, moduleName, oneRootFor(projectRoot, platform), platform);
|
|
100
|
+
if (!file) return null;
|
|
101
|
+
return {
|
|
102
|
+
type: "sourceFile",
|
|
103
|
+
filePath: file
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
function oneRootFor(projectRoot, platform) {
|
|
107
|
+
let root = oneRoots.get(projectRoot);
|
|
108
|
+
if (!root) {
|
|
109
|
+
root = (0, import_desktopReactNativeResolve.requireOnePackageRoot)(projectRoot, platform);
|
|
110
|
+
oneRoots.set(projectRoot, root);
|
|
111
|
+
}
|
|
112
|
+
return root;
|
|
113
|
+
}
|
|
95
114
|
function getPlatformFromBundleUrl(url) {
|
|
96
|
-
const platform = url.match(/[?&]platform=(ios|android)(?:&|$)/)?.[1];
|
|
97
|
-
|
|
115
|
+
const platform = url.match(/[?&]platform=(ios|android|macos|linux)(?:&|$)/)?.[1];
|
|
116
|
+
if (platform === "ios" || platform === "android" || platform === "macos" || platform === "linux") return platform;
|
|
117
|
+
return "ios";
|
|
98
118
|
}
|
|
99
119
|
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
100
120
|
const resolvedMainModulePath = resolveMainModuleName({ platform: getPlatformFromBundleUrl(url) });
|
|
@@ -219,6 +239,11 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
219
239
|
useWatchman,
|
|
220
240
|
blockList,
|
|
221
241
|
sourceExts: metroSourceExts,
|
|
242
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
243
|
+
..._defaultConfig?.resolver?.platforms ?? [],
|
|
244
|
+
"macos",
|
|
245
|
+
"linux"
|
|
246
|
+
])],
|
|
222
247
|
resolveRequest: (context, moduleName, platform) => {
|
|
223
248
|
const origResolveRequestFn = _defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
224
249
|
if (excludeModules && excludeModules.length > 0) {
|
|
@@ -233,6 +258,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
233
258
|
};
|
|
234
259
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
235
260
|
}
|
|
261
|
+
const desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
262
|
+
if (desktopRedirect) return desktopRedirect;
|
|
236
263
|
return origResolveRequestFn(context, moduleName, platform);
|
|
237
264
|
}
|
|
238
265
|
},
|
|
@@ -294,6 +321,11 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
294
321
|
useWatchman,
|
|
295
322
|
blockList,
|
|
296
323
|
sourceExts: metroSourceExts,
|
|
324
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
325
|
+
..._defaultConfig?.resolver?.platforms ?? [],
|
|
326
|
+
"macos",
|
|
327
|
+
"linux"
|
|
328
|
+
])],
|
|
297
329
|
resolveRequest: (context, moduleName, platform) => {
|
|
298
330
|
const origResolveRequestFn = _defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
299
331
|
if (excludeModules && excludeModules.length > 0) {
|
|
@@ -308,6 +340,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
308
340
|
};
|
|
309
341
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
310
342
|
}
|
|
343
|
+
const desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
344
|
+
if (desktopRedirect) return desktopRedirect;
|
|
311
345
|
return origResolveRequestFn(context, moduleName, platform);
|
|
312
346
|
}
|
|
313
347
|
},
|
|
@@ -38,6 +38,7 @@ var import_path = require("path");
|
|
|
38
38
|
var import_micromatch = __toESM(require("micromatch"), 1);
|
|
39
39
|
var import_metro_config = require("@react-native/metro-config");
|
|
40
40
|
var import_compiler = require("@vxrn/compiler");
|
|
41
|
+
var import_desktopReactNativeResolve = require("@vxrn/utils/desktopReactNativeResolve");
|
|
41
42
|
var import_projectImport = require("../utils/projectImport.native.js");
|
|
42
43
|
var import_getTerminalReporter = require("../utils/getTerminalReporter.native.js");
|
|
43
44
|
var WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
@@ -98,10 +99,29 @@ function getReactNativeDefaultConfig(projectRoot) {
|
|
|
98
99
|
}
|
|
99
100
|
};
|
|
100
101
|
}
|
|
102
|
+
var oneRoots = /* @__PURE__ */ new Map();
|
|
103
|
+
function redirectDesktopReactNative(projectRoot, origin, moduleName, platform) {
|
|
104
|
+
if (platform !== "macos" && platform !== "linux") return null;
|
|
105
|
+
var file = (0, import_desktopReactNativeResolve.desktopReactNativeFile)(origin, moduleName, oneRootFor(projectRoot, platform), platform);
|
|
106
|
+
if (!file) return null;
|
|
107
|
+
return {
|
|
108
|
+
type: "sourceFile",
|
|
109
|
+
filePath: file
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
function oneRootFor(projectRoot, platform) {
|
|
113
|
+
var root = oneRoots.get(projectRoot);
|
|
114
|
+
if (!root) {
|
|
115
|
+
root = (0, import_desktopReactNativeResolve.requireOnePackageRoot)(projectRoot, platform);
|
|
116
|
+
oneRoots.set(projectRoot, root);
|
|
117
|
+
}
|
|
118
|
+
return root;
|
|
119
|
+
}
|
|
101
120
|
function getPlatformFromBundleUrl(url) {
|
|
102
121
|
var _url_match;
|
|
103
|
-
var platform = (_url_match = url.match(/[?&]platform=(ios|android)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
104
|
-
|
|
122
|
+
var platform = (_url_match = url.match(/[?&]platform=(ios|android|macos|linux)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
123
|
+
if (platform === "ios" || platform === "android" || platform === "macos" || platform === "linux") return platform;
|
|
124
|
+
return "ios";
|
|
105
125
|
}
|
|
106
126
|
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
107
127
|
var resolvedMainModulePath = resolveMainModuleName({ platform: getPlatformFromBundleUrl(url) });
|
|
@@ -189,8 +209,8 @@ function resolveNativeTransforms(projectRoot, metroPluginOptions) {
|
|
|
189
209
|
};
|
|
190
210
|
}
|
|
191
211
|
async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
192
|
-
var _ref, _ref1, _ref2;
|
|
193
|
-
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;
|
|
212
|
+
var _ref, _ref1, _ref2, _ref3;
|
|
213
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;
|
|
194
214
|
var extraConfig = {};
|
|
195
215
|
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);
|
|
196
216
|
var { mainModuleName, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;
|
|
@@ -208,11 +228,11 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
208
228
|
};
|
|
209
229
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
210
230
|
_defaultConfig.server.rewriteRequestUrl = function(url) {
|
|
211
|
-
var
|
|
231
|
+
var _ref4;
|
|
212
232
|
if (isMainModuleBundleRequest(url)) {
|
|
213
233
|
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
214
234
|
}
|
|
215
|
-
return (
|
|
235
|
+
return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;
|
|
216
236
|
};
|
|
217
237
|
}
|
|
218
238
|
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
@@ -233,6 +253,11 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
233
253
|
useWatchman,
|
|
234
254
|
blockList,
|
|
235
255
|
sourceExts: metroSourceExts,
|
|
256
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
257
|
+
...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],
|
|
258
|
+
"macos",
|
|
259
|
+
"linux"
|
|
260
|
+
])],
|
|
236
261
|
resolveRequest: function resolveRequest(context, moduleName, platform) {
|
|
237
262
|
var _defaultConfig_resolver2;
|
|
238
263
|
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;
|
|
@@ -250,6 +275,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
250
275
|
};
|
|
251
276
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
252
277
|
}
|
|
278
|
+
var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
279
|
+
if (desktopRedirect) return desktopRedirect;
|
|
253
280
|
return origResolveRequestFn(context, moduleName, platform);
|
|
254
281
|
}
|
|
255
282
|
},
|
|
@@ -266,14 +293,14 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
266
293
|
...typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides
|
|
267
294
|
};
|
|
268
295
|
return {
|
|
269
|
-
defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (
|
|
296
|
+
defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),
|
|
270
297
|
projectRoot,
|
|
271
298
|
extraConfig
|
|
272
299
|
};
|
|
273
300
|
}
|
|
274
301
|
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
275
|
-
var _ref, _ref1, _ref2;
|
|
276
|
-
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;
|
|
302
|
+
var _ref, _ref1, _ref2, _ref3;
|
|
303
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;
|
|
277
304
|
var extraConfig = {};
|
|
278
305
|
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);
|
|
279
306
|
var { mainModuleName, argv, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;
|
|
@@ -292,11 +319,11 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
292
319
|
};
|
|
293
320
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
294
321
|
_defaultConfig.server.rewriteRequestUrl = function(url) {
|
|
295
|
-
var
|
|
322
|
+
var _ref4;
|
|
296
323
|
if (isMainModuleBundleRequest(url)) {
|
|
297
324
|
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
298
325
|
}
|
|
299
|
-
return (
|
|
326
|
+
return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;
|
|
300
327
|
};
|
|
301
328
|
}
|
|
302
329
|
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
@@ -317,6 +344,11 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
317
344
|
useWatchman,
|
|
318
345
|
blockList,
|
|
319
346
|
sourceExts: metroSourceExts,
|
|
347
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
348
|
+
...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],
|
|
349
|
+
"macos",
|
|
350
|
+
"linux"
|
|
351
|
+
])],
|
|
320
352
|
resolveRequest: function resolveRequest(context, moduleName, platform) {
|
|
321
353
|
var _defaultConfig_resolver2;
|
|
322
354
|
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;
|
|
@@ -334,6 +366,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
334
366
|
};
|
|
335
367
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
336
368
|
}
|
|
369
|
+
var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
370
|
+
if (desktopRedirect) return desktopRedirect;
|
|
337
371
|
return origResolveRequestFn(context, moduleName, platform);
|
|
338
372
|
}
|
|
339
373
|
},
|
|
@@ -355,7 +389,7 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
355
389
|
...typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides
|
|
356
390
|
});
|
|
357
391
|
return {
|
|
358
|
-
...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (
|
|
392
|
+
...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),
|
|
359
393
|
...extraConfig
|
|
360
394
|
};
|
|
361
395
|
}
|
|
@@ -38,6 +38,7 @@ var import_path = require("path");
|
|
|
38
38
|
var import_micromatch = __toESM(require("micromatch"), 1);
|
|
39
39
|
var import_metro_config = require("@react-native/metro-config");
|
|
40
40
|
var import_compiler = require("@vxrn/compiler");
|
|
41
|
+
var import_desktopReactNativeResolve = require("@vxrn/utils/desktopReactNativeResolve");
|
|
41
42
|
var import_projectImport = require("../utils/projectImport.native.js");
|
|
42
43
|
var import_getTerminalReporter = require("../utils/getTerminalReporter.native.js");
|
|
43
44
|
var WATCHMAN_PROBE_TIMEOUT_MS = 2e3;
|
|
@@ -98,10 +99,29 @@ function getReactNativeDefaultConfig(projectRoot) {
|
|
|
98
99
|
}
|
|
99
100
|
};
|
|
100
101
|
}
|
|
102
|
+
var oneRoots = /* @__PURE__ */ new Map();
|
|
103
|
+
function redirectDesktopReactNative(projectRoot, origin, moduleName, platform) {
|
|
104
|
+
if (platform !== "macos" && platform !== "linux") return null;
|
|
105
|
+
var file = (0, import_desktopReactNativeResolve.desktopReactNativeFile)(origin, moduleName, oneRootFor(projectRoot, platform), platform);
|
|
106
|
+
if (!file) return null;
|
|
107
|
+
return {
|
|
108
|
+
type: "sourceFile",
|
|
109
|
+
filePath: file
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
function oneRootFor(projectRoot, platform) {
|
|
113
|
+
var root = oneRoots.get(projectRoot);
|
|
114
|
+
if (!root) {
|
|
115
|
+
root = (0, import_desktopReactNativeResolve.requireOnePackageRoot)(projectRoot, platform);
|
|
116
|
+
oneRoots.set(projectRoot, root);
|
|
117
|
+
}
|
|
118
|
+
return root;
|
|
119
|
+
}
|
|
101
120
|
function getPlatformFromBundleUrl(url) {
|
|
102
121
|
var _url_match;
|
|
103
|
-
var platform = (_url_match = url.match(/[?&]platform=(ios|android)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
104
|
-
|
|
122
|
+
var platform = (_url_match = url.match(/[?&]platform=(ios|android|macos|linux)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];
|
|
123
|
+
if (platform === "ios" || platform === "android" || platform === "macos" || platform === "linux") return platform;
|
|
124
|
+
return "ios";
|
|
105
125
|
}
|
|
106
126
|
function rewriteMainModuleBundleUrl(url, resolveMainModuleName) {
|
|
107
127
|
var resolvedMainModulePath = resolveMainModuleName({ platform: getPlatformFromBundleUrl(url) });
|
|
@@ -189,8 +209,8 @@ function resolveNativeTransforms(projectRoot, metroPluginOptions) {
|
|
|
189
209
|
};
|
|
190
210
|
}
|
|
191
211
|
async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
192
|
-
var _ref, _ref1, _ref2;
|
|
193
|
-
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;
|
|
212
|
+
var _ref, _ref1, _ref2, _ref3;
|
|
213
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;
|
|
194
214
|
var extraConfig = {};
|
|
195
215
|
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);
|
|
196
216
|
var { mainModuleName, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;
|
|
@@ -208,11 +228,11 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
208
228
|
};
|
|
209
229
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
210
230
|
_defaultConfig.server.rewriteRequestUrl = function(url) {
|
|
211
|
-
var
|
|
231
|
+
var _ref4;
|
|
212
232
|
if (isMainModuleBundleRequest(url)) {
|
|
213
233
|
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
214
234
|
}
|
|
215
|
-
return (
|
|
235
|
+
return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;
|
|
216
236
|
};
|
|
217
237
|
}
|
|
218
238
|
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
@@ -233,6 +253,11 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
233
253
|
useWatchman,
|
|
234
254
|
blockList,
|
|
235
255
|
sourceExts: metroSourceExts,
|
|
256
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
257
|
+
...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],
|
|
258
|
+
"macos",
|
|
259
|
+
"linux"
|
|
260
|
+
])],
|
|
236
261
|
resolveRequest: function resolveRequest(context, moduleName, platform) {
|
|
237
262
|
var _defaultConfig_resolver2;
|
|
238
263
|
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;
|
|
@@ -250,6 +275,8 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
250
275
|
};
|
|
251
276
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
252
277
|
}
|
|
278
|
+
var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
279
|
+
if (desktopRedirect) return desktopRedirect;
|
|
253
280
|
return origResolveRequestFn(context, moduleName, platform);
|
|
254
281
|
}
|
|
255
282
|
},
|
|
@@ -266,14 +293,14 @@ async function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {
|
|
|
266
293
|
...typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides
|
|
267
294
|
};
|
|
268
295
|
return {
|
|
269
|
-
defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (
|
|
296
|
+
defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),
|
|
270
297
|
projectRoot,
|
|
271
298
|
extraConfig
|
|
272
299
|
};
|
|
273
300
|
}
|
|
274
301
|
async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
275
|
-
var _ref, _ref1, _ref2;
|
|
276
|
-
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;
|
|
302
|
+
var _ref, _ref1, _ref2, _ref3;
|
|
303
|
+
var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;
|
|
277
304
|
var extraConfig = {};
|
|
278
305
|
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);
|
|
279
306
|
var { mainModuleName, argv, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;
|
|
@@ -292,11 +319,11 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
292
319
|
};
|
|
293
320
|
extraConfig.getResolveMainModuleName = resolveMainModuleName;
|
|
294
321
|
_defaultConfig.server.rewriteRequestUrl = function(url) {
|
|
295
|
-
var
|
|
322
|
+
var _ref4;
|
|
296
323
|
if (isMainModuleBundleRequest(url)) {
|
|
297
324
|
return rewriteMainModuleBundleUrl(url, resolveMainModuleName);
|
|
298
325
|
}
|
|
299
|
-
return (
|
|
326
|
+
return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;
|
|
300
327
|
};
|
|
301
328
|
}
|
|
302
329
|
var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;
|
|
@@ -317,6 +344,11 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
317
344
|
useWatchman,
|
|
318
345
|
blockList,
|
|
319
346
|
sourceExts: metroSourceExts,
|
|
347
|
+
platforms: [.../* @__PURE__ */ new Set([
|
|
348
|
+
...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],
|
|
349
|
+
"macos",
|
|
350
|
+
"linux"
|
|
351
|
+
])],
|
|
320
352
|
resolveRequest: function resolveRequest(context, moduleName, platform) {
|
|
321
353
|
var _defaultConfig_resolver2;
|
|
322
354
|
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;
|
|
@@ -334,6 +366,8 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
334
366
|
};
|
|
335
367
|
return origResolveRequestFn(contextOverride, moduleName, platform);
|
|
336
368
|
}
|
|
369
|
+
var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);
|
|
370
|
+
if (desktopRedirect) return desktopRedirect;
|
|
337
371
|
return origResolveRequestFn(context, moduleName, platform);
|
|
338
372
|
}
|
|
339
373
|
},
|
|
@@ -355,7 +389,7 @@ async function getMetroConfigFromViteConfig(config, metroPluginOptions) {
|
|
|
355
389
|
...typeof defaultConfigOverrides === "function" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides
|
|
356
390
|
});
|
|
357
391
|
return {
|
|
358
|
-
...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (
|
|
392
|
+
...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),
|
|
359
393
|
...extraConfig
|
|
360
394
|
};
|
|
361
395
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMetroConfigFromViteConfig.native.js","names":[],"sources":["cjs/metro-config/getMetroConfigFromViteConfig.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar getMetroConfigFromViteConfig_exports = {};\n__export(getMetroConfigFromViteConfig_exports, {\n buildMetroConfigInputFromViteConfig: () => buildMetroConfigInputFromViteConfig,\n getMetroConfigFromViteConfig: () => getMetroConfigFromViteConfig\n});\nmodule.exports = __toCommonJS(getMetroConfigFromViteConfig_exports);\nvar import_vite = require(\"vite\");\nvar import_child_process = require(\"child_process\");\nvar import_path = require(\"path\");\nvar import_micromatch = __toESM(require(\"micromatch\"), 1);\nvar import_metro_config = require(\"@react-native/metro-config\");\nvar import_compiler = require(\"@vxrn/compiler\");\nvar import_projectImport = require(\"../utils/projectImport\");\nvar import_getTerminalReporter = require(\"../utils/getTerminalReporter\");\nvar WATCHMAN_PROBE_TIMEOUT_MS = 2e3;\nvar expoEnvAdditionalExts = [\n \"env\",\n \"local\",\n \"development\"\n];\nvar metroSourceExts = [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\",\n \"swift\",\n \"kt\"\n];\nvar watchmanResponsivePromises = /* @__PURE__ */ new Map();\nvar didWarnAboutWatchmanFallback = false;\nvar rootIndexBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/index\\.bundle(?=$|[?#])/;\nvar expoVirtualEntryBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/\\.expo\\/\\.virtual-metro-entry\\.bundle(?=$|[?#])/;\nvar metroWatchExclusions = [\n /^(?!.*[/\\\\]node_modules[/\\\\]).*[/\\\\]dist[/\\\\](?:static|server)(?:[/\\\\]|$)/,\n /[/\\\\]tests[/\\\\][^/\\\\]+[/\\\\]dist(?:[/\\\\]|$)/,\n /[/\\\\]\\.docker(?:[/\\\\]|$)/,\n /[/\\\\]\\.vite(?:[/\\\\]|$)/,\n /[/\\\\]node_modules[/\\\\]\\.vxrn(?:[/\\\\]|$)/\n];\nfunction enforceWorkspaceVisibility(config, projectRoot) {\n var _config_watchFolders, _ref;\n var _config_resolver;\n var workspaceRoot = (0, import_vite.searchForWorkspaceRoot)(projectRoot);\n if (workspaceRoot === projectRoot) return config;\n return {\n ...config,\n watchFolders: [\n .../* @__PURE__ */ new Set([\n ...(_config_watchFolders = config.watchFolders) !== null && _config_watchFolders !== void 0 ? _config_watchFolders : [],\n workspaceRoot\n ])\n ],\n resolver: {\n ...config.resolver,\n nodeModulesPaths: [\n .../* @__PURE__ */ new Set([\n ...(_ref = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.nodeModulesPaths) !== null && _ref !== void 0 ? _ref : [],\n (0, import_path.resolve)(projectRoot, \"node_modules\"),\n (0, import_path.resolve)(workspaceRoot, \"node_modules\")\n ])\n ]\n }\n };\n}\nfunction getReactNativeDefaultConfig(projectRoot) {\n var _ref;\n var _config_resolver;\n var config = enforceWorkspaceVisibility((0, import_metro_config.getDefaultConfig)(projectRoot), projectRoot);\n return {\n ...config,\n resolver: {\n ...config.resolver,\n assetExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.assetExts) !== null && _ref !== void 0 ? _ref : [],\n \"glb\"\n ])\n ]\n }\n };\n}\nfunction getPlatformFromBundleUrl(url) {\n var _url_match;\n var platform = (_url_match = url.match(/[?&]platform=(ios|android)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];\n return platform === \"android\" ? \"android\" : \"ios\";\n}\nfunction rewriteMainModuleBundleUrl(url, resolveMainModuleName) {\n var resolvedMainModulePath = resolveMainModuleName({\n platform: getPlatformFromBundleUrl(url)\n });\n if (rootIndexBundleRequestPattern.test(url)) {\n return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\n }\n return url.replace(expoVirtualEntryBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\n}\nfunction isMainModuleBundleRequest(url) {\n return rootIndexBundleRequestPattern.test(url) || expoVirtualEntryBundleRequestPattern.test(url);\n}\nfunction isBareSpecifier(name) {\n return name !== \"\" && !name.startsWith(\".\") && !name.startsWith(\"/\");\n}\nfunction bareMainModuleForRequest(moduleName, mainModuleName) {\n if (!mainModuleName || !isBareSpecifier(mainModuleName)) return void 0;\n if (moduleName === `./${mainModuleName}`) return mainModuleName;\n return void 0;\n}\nfunction enforcePackageResolution(config, mainModuleName, dedupe, projectRoot) {\n var _config_resolver;\n var dedupedPackages = new Set(dedupe);\n if ((!mainModuleName || !isBareSpecifier(mainModuleName)) && !dedupedPackages.size) {\n return config;\n }\n var rootOrigin = (0, import_path.resolve)(projectRoot, \"package.json\");\n var innerResolveRequest = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.resolveRequest;\n return {\n ...config,\n resolver: {\n ...config.resolver,\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var bareMain = bareMainModuleForRequest(moduleName, mainModuleName);\n var request = bareMain !== null && bareMain !== void 0 ? bareMain : moduleName;\n var packageEnd = request.indexOf(\"/\", request.startsWith(\"@\") ? request.indexOf(\"/\") + 1 : 0);\n var packageName = packageEnd === -1 ? request : request.slice(0, packageEnd);\n var resolutionContext = isBareSpecifier(request) && dedupedPackages.has(packageName) ? {\n ...context,\n originModulePath: rootOrigin\n } : context;\n var resolveRequest2 = innerResolveRequest || context.resolveRequest;\n return resolveRequest2(resolutionContext, request, platform);\n }\n }\n };\n}\nasync function isWatchmanResponsive(projectRoot) {\n var probe = watchmanResponsivePromises.get(projectRoot);\n if (probe) {\n return probe;\n }\n probe = new Promise(function(resolve2) {\n var settled = false;\n var finish = function finish2(value) {\n if (settled) return;\n settled = true;\n clearTimeout(timeout);\n resolve2(value);\n };\n var child = (0, import_child_process.spawn)(\"watchman\", [\n \"watch-project\",\n projectRoot\n ], {\n stdio: \"ignore\"\n });\n var timeout = setTimeout(function() {\n child.kill();\n finish(false);\n }, WATCHMAN_PROBE_TIMEOUT_MS);\n child.once(\"error\", function() {\n finish(false);\n });\n child.once(\"exit\", function(code) {\n finish(code === 0);\n });\n });\n watchmanResponsivePromises.set(projectRoot, probe);\n return probe;\n}\nfunction resolveNativeTransforms(projectRoot, metroPluginOptions) {\n var userBabelConfigPath = projectRoot ? (0, import_compiler.findUserBabelConfig)(projectRoot) : null;\n var hasUserBabelConfig = Boolean(userBabelConfigPath);\n var isNativeTransforms = process.env.ONE_METRO_NATIVE_TRANSFORMS === \"0\" ? false : process.env.ONE_METRO_NATIVE_TRANSFORMS === \"1\" ? true : metroPluginOptions.nativeTransforms === false ? false : metroPluginOptions.nativeTransforms === true ? true : hasUserBabelConfig ? false : true;\n if (userBabelConfigPath && isNativeTransforms) {\n console.warn(`[vxrn/metro] Ignoring user babel config at ${userBabelConfigPath} because native transforms are explicitly enabled (nativeTransforms: true or ONE_METRO_NATIVE_TRANSFORMS=1). Port its plugins to nativeTransformModules, or set nativeTransforms: false (or ONE_METRO_NATIVE_TRANSFORMS=0) to use the babel transformer.`);\n }\n return {\n isNativeTransforms,\n userBabelConfigPath\n };\n}\nasync function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {\n var _ref, _ref1, _ref2;\n var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;\n var extraConfig = {};\n 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);\n var { mainModuleName, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;\n var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);\n if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {\n didWarnAboutWatchmanFallback = true;\n console.warn(\"[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.\");\n }\n var _defaultConfig = getReactNativeDefaultConfig(projectRoot);\n if (mainModuleName) {\n var _defaultConfig_server;\n var origRewriteRequestUrl = (_defaultConfig_server = _defaultConfig.server) === null || _defaultConfig_server === void 0 ? void 0 : _defaultConfig_server.rewriteRequestUrl;\n var resolveMainModuleName = function resolveMainModuleName2() {\n return mainModuleName;\n };\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n var _ref3;\n if (isMainModuleBundleRequest(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return (_ref3 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref3 !== void 0 ? _ref3 : url;\n };\n }\n var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;\n var blockList = [\n ...existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [\n existingBlockList\n ] : [],\n ...metroWatchExclusions\n ];\n var { isNativeTransforms } = resolveNativeTransforms(projectRoot, metroPluginOptions);\n var nativeWorkerPath;\n if (isNativeTransforms) {\n nativeWorkerPath = (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/transformer/metroNativeWorker\");\n }\n var defaultConfig = {\n ..._defaultConfig,\n watcher: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.watcher,\n additionalExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref1 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_watcher = _defaultConfig.watcher) === null || _defaultConfig_watcher === void 0 ? void 0 : _defaultConfig_watcher.additionalExts) !== null && _ref1 !== void 0 ? _ref1 : [],\n ...expoEnvAdditionalExts\n ])\n ]\n },\n resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: metroSourceExts,\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var _defaultConfig_resolver2;\n 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;\n if (excludeModules && excludeModules.length > 0) {\n if (import_micromatch.default.isMatch(moduleName, excludeModules)) {\n return origResolveRequestFn(context, \"@vxrn/utils/empty\", platform);\n }\n }\n if (moduleName.startsWith(\"@babel/runtime\")) {\n var contextOverride = {\n ...context,\n unstable_conditionNames: context.unstable_conditionNames.filter(function(c) {\n return c !== \"import\";\n })\n };\n return origResolveRequestFn(contextOverride, moduleName, platform);\n }\n return origResolveRequestFn(context, moduleName, platform);\n }\n },\n transformer: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer,\n // one's router and Expo's optional development env module both use\n // require.context. Metro installs a throwing runtime stub unless this\n // graph feature is enabled.\n unstable_allowRequireContext: true,\n babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/babel-transformer\")\n },\n // transformerPath is a TOP-LEVEL metro config key, not a transformer option.\n // nesting it under transformer silently leaves metro on its default worker.\n ...nativeWorkerPath ? {\n transformerPath: nativeWorkerPath\n } : {},\n reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)\n };\n var merged = {\n ...defaultConfig,\n ...typeof defaultConfigOverrides === \"function\" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides\n };\n return {\n defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (_ref2 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref2 !== void 0 ? _ref2 : [], projectRoot),\n projectRoot,\n extraConfig\n };\n}\nasync function getMetroConfigFromViteConfig(config, metroPluginOptions) {\n var _ref, _ref1, _ref2;\n var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _config_resolve;\n var extraConfig = {};\n 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);\n var { mainModuleName, argv, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;\n var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);\n if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {\n didWarnAboutWatchmanFallback = true;\n console.warn(\"[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.\");\n }\n var { loadConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"metro\");\n var _defaultConfig = getReactNativeDefaultConfig(projectRoot);\n if (mainModuleName) {\n var _defaultConfig_server;\n var origRewriteRequestUrl = (_defaultConfig_server = _defaultConfig.server) === null || _defaultConfig_server === void 0 ? void 0 : _defaultConfig_server.rewriteRequestUrl;\n var resolveMainModuleName = function resolveMainModuleName2() {\n return mainModuleName;\n };\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n var _ref3;\n if (isMainModuleBundleRequest(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return (_ref3 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref3 !== void 0 ? _ref3 : url;\n };\n }\n var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;\n var blockList = [\n ...existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [\n existingBlockList\n ] : [],\n ...metroWatchExclusions\n ];\n var { isNativeTransforms } = resolveNativeTransforms(projectRoot, metroPluginOptions);\n var nativeWorkerPath;\n if (isNativeTransforms) {\n nativeWorkerPath = (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/transformer/metroNativeWorker\");\n }\n var defaultConfig = {\n ..._defaultConfig,\n watcher: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.watcher,\n additionalExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref1 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_watcher = _defaultConfig.watcher) === null || _defaultConfig_watcher === void 0 ? void 0 : _defaultConfig_watcher.additionalExts) !== null && _ref1 !== void 0 ? _ref1 : [],\n ...expoEnvAdditionalExts\n ])\n ]\n },\n resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: metroSourceExts,\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var _defaultConfig_resolver2;\n 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;\n if (excludeModules && excludeModules.length > 0) {\n if (import_micromatch.default.isMatch(moduleName, excludeModules)) {\n return origResolveRequestFn(context, \"@vxrn/utils/empty\", platform);\n }\n }\n if (moduleName.startsWith(\"@babel/runtime\")) {\n var contextOverride = {\n ...context,\n unstable_conditionNames: context.unstable_conditionNames.filter(function(c) {\n return c !== \"import\";\n })\n };\n return origResolveRequestFn(contextOverride, moduleName, platform);\n }\n return origResolveRequestFn(context, moduleName, platform);\n }\n },\n transformer: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer,\n // one's router and Expo's optional development env module both use\n // require.context. Metro installs a throwing runtime stub unless this\n // graph feature is enabled.\n unstable_allowRequireContext: true,\n babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/babel-transformer\")\n },\n // transformerPath is a TOP-LEVEL metro config key, not a transformer option.\n // nesting it under transformer silently leaves metro on its default worker.\n ...nativeWorkerPath ? {\n transformerPath: nativeWorkerPath\n } : {},\n reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)\n };\n var metroConfig = await loadConfig({\n cwd: projectRoot,\n projectRoot,\n \"reset-cache\": !!process.env.METRO_RESET_CACHE,\n ...argv\n }, {\n ...defaultConfig,\n ...typeof defaultConfigOverrides === \"function\" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides\n });\n return {\n ...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (_ref2 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref2 !== void 0 ? _ref2 : [], projectRoot),\n ...extraConfig\n };\n}\n//# sourceMappingURL=getMetroConfigFromViteConfig.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,uCAAuC,CAAC;AAC5C,SAAS,sCAAsC;CAC7C,2CAA2C;CAC3C,oCAAoC;AACtC,CAAC;AACD,OAAO,UAAU,aAAa,oCAAoC;AAClE,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,uBAAuB,QAAQ,eAAe;AAClD,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,oBAAoB,QAAQ,QAAQ,YAAY,GAAG,CAAC;AACxD,IAAI,sBAAsB,QAAQ,4BAA4B;AAC9D,IAAI,kBAAkB,QAAQ,gBAAgB;AAC9C,IAAI,uBAAuB,QAAQ,kCAAwB;AAC3D,IAAI,6BAA6B,QAAQ,wCAA8B;AACvE,IAAI,4BAA4B;AAChC,IAAI,wBAAwB;CAC1B;CACA;CACA;AACF;AACA,IAAI,kBAAkB;CACpB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AACA,IAAI,6CAA6C,IAAI,IAAI;AACzD,IAAI,+BAA+B;AACnC,IAAI,gCAAgC;AACpC,IAAI,uCAAuC;AAC3C,IAAI,uBAAuB;CACzB;CACA;CACA;CACA;CACA;AACF;AACA,SAAS,2BAA2B,QAAQ,aAAa;CACvD,IAAI,sBAAsB;CAC1B,IAAI;CACJ,IAAI,iBAAiB,GAAG,YAAY,uBAAsB,CAAE,WAAW;CACvE,IAAI,kBAAkB,aAAa,OAAO;CAC1C,OAAO;EACL,GAAG;EACH,cAAc,CACZ,mBAAmB,IAAI,IAAI,CACzB,IAAI,uBAAuB,OAAO,kBAAkB,QAAQ,yBAAyB,KAAK,IAAI,uBAAuB,CAAC,GACtH,aACF,CAAC,CACH;EACA,UAAU;GACR,GAAG,OAAO;GACV,kBAAkB,CAChB,mBAAmB,IAAI,IAAI;IACzB,IAAI,QAAQ,mBAAmB,OAAO,cAAc,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB,sBAAsB,QAAQ,SAAS,KAAK,IAAI,OAAO,CAAC;KAC3K,GAAG,YAAY,QAAO,CAAE,aAAa,cAAc;KACnD,GAAG,YAAY,QAAO,CAAE,eAAe,cAAc;GACxD,CAAC,CACH;EACF;CACF;AACF;AACA,SAAS,4BAA4B,aAAa;CAChD,IAAI;CACJ,IAAI;CACJ,IAAI,SAAS,4BAA4B,GAAG,oBAAoB,iBAAgB,CAAE,WAAW,GAAG,WAAW;CAC3G,OAAO;EACL,GAAG;EACH,UAAU;GACR,GAAG,OAAO;GACV,WAAW,CACT,mBAAmB,IAAI,IAAI,CACzB,IAAI,QAAQ,mBAAmB,OAAO,cAAc,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB,eAAe,QAAQ,SAAS,KAAK,IAAI,OAAO,CAAC,GACrK,KACF,CAAC,CACH;EACF;CACF;AACF;AACA,SAAS,yBAAyB,KAAK;CACrC,IAAI;CACJ,IAAI,YAAY,aAAa,IAAI,MAAM,mCAAmC,OAAO,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CACrI,OAAO,aAAa,YAAY,YAAY;AAC9C;AACA,SAAS,2BAA2B,KAAK,uBAAuB;CAC9D,IAAI,yBAAyB,sBAAsB,EACjD,UAAU,yBAAyB,GAAG,EACxC,CAAC;CACD,IAAI,8BAA8B,KAAK,GAAG,GAAG;EAC3C,OAAO,IAAI,QAAQ,+BAA+B,MAAM,uBAAuB,QAAQ;CACzF;CACA,OAAO,IAAI,QAAQ,sCAAsC,MAAM,uBAAuB,QAAQ;AAChG;AACA,SAAS,0BAA0B,KAAK;CACtC,OAAO,8BAA8B,KAAK,GAAG,KAAK,qCAAqC,KAAK,GAAG;AACjG;AACA,SAAS,gBAAgB,MAAM;CAC7B,OAAO,SAAS,MAAM,CAAC,KAAK,WAAW,GAAG,KAAK,CAAC,KAAK,WAAW,GAAG;AACrE;AACA,SAAS,yBAAyB,YAAY,gBAAgB;CAC5D,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,cAAc,GAAG,OAAO,KAAK;CACrE,IAAI,eAAe,KAAK,kBAAkB,OAAO;CACjD,OAAO,KAAK;AACd;AACA,SAAS,yBAAyB,QAAQ,gBAAgB,QAAQ,aAAa;CAC7E,IAAI;CACJ,IAAI,kBAAkB,IAAI,IAAI,MAAM;CACpC,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,cAAc,MAAM,CAAC,gBAAgB,MAAM;EAClF,OAAO;CACT;CACA,IAAI,cAAc,GAAG,YAAY,QAAO,CAAE,aAAa,cAAc;CACrE,IAAI,uBAAuB,mBAAmB,OAAO,cAAc,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB;CACnI,OAAO;EACL,GAAG;EACH,UAAU;GACR,GAAG,OAAO;GACV,gBAAgB,SAAS,eAAe,SAAS,YAAY,UAAU;IACrE,IAAI,WAAW,yBAAyB,YAAY,cAAc;IAClE,IAAI,UAAU,aAAa,QAAQ,aAAa,KAAK,IAAI,WAAW;IACpE,IAAI,aAAa,QAAQ,QAAQ,KAAK,QAAQ,WAAW,GAAG,IAAI,QAAQ,QAAQ,GAAG,IAAI,IAAI,CAAC;IAC5F,IAAI,cAAc,eAAe,CAAC,IAAI,UAAU,QAAQ,MAAM,GAAG,UAAU;IAC3E,IAAI,oBAAoB,gBAAgB,OAAO,KAAK,gBAAgB,IAAI,WAAW,IAAI;KACrF,GAAG;KACH,kBAAkB;IACpB,IAAI;IACJ,IAAI,kBAAkB,uBAAuB,QAAQ;IACrD,OAAO,gBAAgB,mBAAmB,SAAS,QAAQ;GAC7D;EACF;CACF;AACF;AACA,eAAe,qBAAqB,aAAa;CAC/C,IAAI,QAAQ,2BAA2B,IAAI,WAAW;CACtD,IAAI,OAAO;EACT,OAAO;CACT;CACA,QAAQ,IAAI,QAAQ,SAAS,UAAU;EACrC,IAAI,UAAU;EACd,IAAI,SAAS,SAAS,QAAQ,OAAO;GACnC,IAAI,SAAS;GACb,UAAU;GACV,aAAa,OAAO;GACpB,SAAS,KAAK;EAChB;EACA,IAAI,SAAS,GAAG,qBAAqB,MAAK,CAAE,YAAY,CACtD,iBACA,WACF,GAAG,EACD,OAAO,SACT,CAAC;EACD,IAAI,UAAU,WAAW,WAAW;GAClC,MAAM,KAAK;GACX,OAAO,KAAK;EACd,GAAG,yBAAyB;EAC5B,MAAM,KAAK,SAAS,WAAW;GAC7B,OAAO,KAAK;EACd,CAAC;EACD,MAAM,KAAK,QAAQ,SAAS,MAAM;GAChC,OAAO,SAAS,CAAC;EACnB,CAAC;CACH,CAAC;CACD,2BAA2B,IAAI,aAAa,KAAK;CACjD,OAAO;AACT;AACA,SAAS,wBAAwB,aAAa,oBAAoB;CAChE,IAAI,sBAAsB,eAAe,GAAG,gBAAgB,oBAAmB,CAAE,WAAW,IAAI;CAChG,IAAI,qBAAqB,QAAQ,mBAAmB;CACpD,IAAI,qBAAqB,QAAQ,IAAI,gCAAgC,MAAM,QAAQ,QAAQ,IAAI,gCAAgC,MAAM,OAAO,mBAAmB,qBAAqB,QAAQ,QAAQ,mBAAmB,qBAAqB,OAAO,OAAO,qBAAqB,QAAQ;CACvR,IAAI,uBAAuB,oBAAoB;EAC7C,QAAQ,KAAK,8CAA8C,oBAAoB,yPAAyP;CAC1U;CACA,OAAO;EACL;EACA;CACF;AACF;AACA,eAAe,oCAAoC,QAAQ,oBAAoB;CAC7E,IAAI,MAAM,OAAO;CACjB,IAAI,0BAA0B,yBAAyB,wBAAwB;CAC/E,IAAI,cAAc,CAAC;CACnB,IAAI,eAAe,GAAG,YAAY,QAAO,EAAG,QAAQ,2BAA2B,mBAAmB,UAAU,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,iBAAiB,QAAQ,SAAS,KAAK,IAAI,OAAO,OAAO,IAAI;CACzP,IAAI,EAAE,gBAAgB,wBAAwB,UAAU,mBAAmB;CAC3E,IAAI,cAAc,aAAa,QAAQ,aAAa,KAAK,IAAI,WAAW,MAAM,qBAAqB,WAAW;CAC9G,IAAI,aAAa,KAAK,KAAK,CAAC,eAAe,CAAC,8BAA8B;EACxE,+BAA+B;EAC/B,QAAQ,KAAK,2FAA2F;CAC1G;CACA,IAAI,iBAAiB,4BAA4B,WAAW;CAC5D,IAAI,gBAAgB;EAClB,IAAI;EACJ,IAAI,yBAAyB,wBAAwB,eAAe,YAAY,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB;EAC1J,IAAI,wBAAwB,SAAS,yBAAyB;GAC5D,OAAO;EACT;EACA,YAAY,2BAA2B;EACvC,eAAe,OAAO,oBAAoB,SAAS,KAAK;GACtD,IAAI;GACJ,IAAI,0BAA0B,GAAG,GAAG;IAClC,OAAO,2BAA2B,KAAK,qBAAqB;GAC9D;GACA,QAAQ,QAAQ,0BAA0B,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB,GAAG,OAAO,QAAQ,UAAU,KAAK,IAAI,QAAQ;EACnK;CACF;CACA,IAAI,oBAAoB,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,0BAA0B,eAAe,cAAc,QAAQ,4BAA4B,KAAK,IAAI,KAAK,IAAI,wBAAwB;CAC9N,IAAI,YAAY,CACd,GAAG,oBAAoB,MAAM,QAAQ,iBAAiB,IAAI,oBAAoB,CAC5E,iBACF,IAAI,CAAC,GACL,GAAG,oBACL;CACA,IAAI,EAAE,uBAAuB,wBAAwB,aAAa,kBAAkB;CACpF,IAAI;CACJ,IAAI,oBAAoB;EACtB,oBAAoB,GAAG,qBAAqB,eAAc,CAAE,aAAa,uDAAuD;CAClI;CACA,IAAI,gBAAgB;EAClB,GAAG;EACH,SAAS;GACP,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAClF,gBAAgB,CACd,mBAAmB,IAAI,IAAI,CACzB,IAAI,QAAQ,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,yBAAyB,eAAe,aAAa,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB,oBAAoB,QAAQ,UAAU,KAAK,IAAI,QAAQ,CAAC,GACtQ,GAAG,qBACL,CAAC,CACH;EACF;EACA,UAAU;GACR,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAClF;GACA;GACA,YAAY;GACZ,gBAAgB,SAAS,eAAe,SAAS,YAAY,UAAU;IACrE,IAAI;IACJ,IAAI,wBAAwB,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,2BAA2B,eAAe,cAAc,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,mBAAmB,QAAQ;IAChQ,IAAI,kBAAkB,eAAe,SAAS,GAAG;KAC/C,IAAI,kBAAkB,QAAQ,QAAQ,YAAY,cAAc,GAAG;MACjE,OAAO,qBAAqB,SAAS,qBAAqB,QAAQ;KACpE;IACF;IACA,IAAI,WAAW,WAAW,gBAAgB,GAAG;KAC3C,IAAI,kBAAkB;MACpB,GAAG;MACH,yBAAyB,QAAQ,wBAAwB,OAAO,SAAS,GAAG;OAC1E,OAAO,MAAM;MACf,CAAC;KACH;KACA,OAAO,qBAAqB,iBAAiB,YAAY,QAAQ;IACnE;IACA,OAAO,qBAAqB,SAAS,YAAY,QAAQ;GAC3D;EACF;EACA,aAAa;GACX,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAIlF,8BAA8B;GAC9B,uBAAuB,GAAG,qBAAqB,eAAc,CAAE,aAAa,2CAA2C;EACzH;EAGA,GAAG,mBAAmB,EACpB,iBAAiB,iBACnB,IAAI,CAAC;EACL,UAAU,OAAO,GAAG,2BAA2B,oBAAmB,CAAE,WAAW;CACjF;CACA,IAAI,SAAS;EACX,GAAG;EACH,GAAG,OAAO,2BAA2B,aAAa,uBAAuB,aAAa,IAAI;CAC5F;CACA,OAAO;EACL,eAAe,yBAAyB,2BAA2B,QAAQ,WAAW,GAAG,iBAAiB,SAAS,kBAAkB,OAAO,aAAa,QAAQ,oBAAoB,KAAK,IAAI,KAAK,IAAI,gBAAgB,YAAY,QAAQ,UAAU,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW;EACrR;EACA;CACF;AACF;AACA,eAAe,6BAA6B,QAAQ,oBAAoB;CACtE,IAAI,MAAM,OAAO;CACjB,IAAI,0BAA0B,yBAAyB,wBAAwB;CAC/E,IAAI,cAAc,CAAC;CACnB,IAAI,eAAe,GAAG,YAAY,QAAO,EAAG,QAAQ,2BAA2B,mBAAmB,UAAU,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,iBAAiB,QAAQ,SAAS,KAAK,IAAI,OAAO,OAAO,IAAI;CACzP,IAAI,EAAE,gBAAgB,MAAM,wBAAwB,UAAU,mBAAmB;CACjF,IAAI,cAAc,aAAa,QAAQ,aAAa,KAAK,IAAI,WAAW,MAAM,qBAAqB,WAAW;CAC9G,IAAI,aAAa,KAAK,KAAK,CAAC,eAAe,CAAC,8BAA8B;EACxE,+BAA+B;EAC/B,QAAQ,KAAK,2FAA2F;CAC1G;CACA,IAAI,EAAE,eAAe,OAAO,GAAG,qBAAqB,cAAa,CAAE,aAAa,OAAO;CACvF,IAAI,iBAAiB,4BAA4B,WAAW;CAC5D,IAAI,gBAAgB;EAClB,IAAI;EACJ,IAAI,yBAAyB,wBAAwB,eAAe,YAAY,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB;EAC1J,IAAI,wBAAwB,SAAS,yBAAyB;GAC5D,OAAO;EACT;EACA,YAAY,2BAA2B;EACvC,eAAe,OAAO,oBAAoB,SAAS,KAAK;GACtD,IAAI;GACJ,IAAI,0BAA0B,GAAG,GAAG;IAClC,OAAO,2BAA2B,KAAK,qBAAqB;GAC9D;GACA,QAAQ,QAAQ,0BAA0B,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB,GAAG,OAAO,QAAQ,UAAU,KAAK,IAAI,QAAQ;EACnK;CACF;CACA,IAAI,oBAAoB,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,0BAA0B,eAAe,cAAc,QAAQ,4BAA4B,KAAK,IAAI,KAAK,IAAI,wBAAwB;CAC9N,IAAI,YAAY,CACd,GAAG,oBAAoB,MAAM,QAAQ,iBAAiB,IAAI,oBAAoB,CAC5E,iBACF,IAAI,CAAC,GACL,GAAG,oBACL;CACA,IAAI,EAAE,uBAAuB,wBAAwB,aAAa,kBAAkB;CACpF,IAAI;CACJ,IAAI,oBAAoB;EACtB,oBAAoB,GAAG,qBAAqB,eAAc,CAAE,aAAa,uDAAuD;CAClI;CACA,IAAI,gBAAgB;EAClB,GAAG;EACH,SAAS;GACP,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAClF,gBAAgB,CACd,mBAAmB,IAAI,IAAI,CACzB,IAAI,QAAQ,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,yBAAyB,eAAe,aAAa,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB,oBAAoB,QAAQ,UAAU,KAAK,IAAI,QAAQ,CAAC,GACtQ,GAAG,qBACL,CAAC,CACH;EACF;EACA,UAAU;GACR,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAClF;GACA;GACA,YAAY;GACZ,gBAAgB,SAAS,eAAe,SAAS,YAAY,UAAU;IACrE,IAAI;IACJ,IAAI,wBAAwB,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,2BAA2B,eAAe,cAAc,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,mBAAmB,QAAQ;IAChQ,IAAI,kBAAkB,eAAe,SAAS,GAAG;KAC/C,IAAI,kBAAkB,QAAQ,QAAQ,YAAY,cAAc,GAAG;MACjE,OAAO,qBAAqB,SAAS,qBAAqB,QAAQ;KACpE;IACF;IACA,IAAI,WAAW,WAAW,gBAAgB,GAAG;KAC3C,IAAI,kBAAkB;MACpB,GAAG;MACH,yBAAyB,QAAQ,wBAAwB,OAAO,SAAS,GAAG;OAC1E,OAAO,MAAM;MACf,CAAC;KACH;KACA,OAAO,qBAAqB,iBAAiB,YAAY,QAAQ;IACnE;IACA,OAAO,qBAAqB,SAAS,YAAY,QAAQ;GAC3D;EACF;EACA,aAAa;GACX,GAAG,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,IAAI,eAAe;GAIlF,8BAA8B;GAC9B,uBAAuB,GAAG,qBAAqB,eAAc,CAAE,aAAa,2CAA2C;EACzH;EAGA,GAAG,mBAAmB,EACpB,iBAAiB,iBACnB,IAAI,CAAC;EACL,UAAU,OAAO,GAAG,2BAA2B,oBAAmB,CAAE,WAAW;CACjF;CACA,IAAI,cAAc,MAAM,WAAW;EACjC,KAAK;EACL;EACA,eAAe,CAAC,CAAC,QAAQ,IAAI;EAC7B,GAAG;CACL,GAAG;EACD,GAAG;EACH,GAAG,OAAO,2BAA2B,aAAa,uBAAuB,aAAa,IAAI;CAC5F,CAAC;CACD,OAAO;EACL,GAAG,yBAAyB,2BAA2B,aAAa,WAAW,GAAG,iBAAiB,SAAS,kBAAkB,OAAO,aAAa,QAAQ,oBAAoB,KAAK,IAAI,KAAK,IAAI,gBAAgB,YAAY,QAAQ,UAAU,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW;EAC9Q,GAAG;CACL;AACF"}
|
|
1
|
+
{"version":3,"file":"getMetroConfigFromViteConfig.native.js","names":[],"sources":["cjs/metro-config/getMetroConfigFromViteConfig.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar getMetroConfigFromViteConfig_exports = {};\n__export(getMetroConfigFromViteConfig_exports, {\n buildMetroConfigInputFromViteConfig: () => buildMetroConfigInputFromViteConfig,\n getMetroConfigFromViteConfig: () => getMetroConfigFromViteConfig\n});\nmodule.exports = __toCommonJS(getMetroConfigFromViteConfig_exports);\nvar import_vite = require(\"vite\");\nvar import_child_process = require(\"child_process\");\nvar import_path = require(\"path\");\nvar import_micromatch = __toESM(require(\"micromatch\"), 1);\nvar import_metro_config = require(\"@react-native/metro-config\");\nvar import_compiler = require(\"@vxrn/compiler\");\nvar import_desktopReactNativeResolve = require(\"@vxrn/utils/desktopReactNativeResolve\");\nvar import_projectImport = require(\"../utils/projectImport\");\nvar import_getTerminalReporter = require(\"../utils/getTerminalReporter\");\nvar WATCHMAN_PROBE_TIMEOUT_MS = 2e3;\nvar expoEnvAdditionalExts = [\n \"env\",\n \"local\",\n \"development\"\n];\nvar metroSourceExts = [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\",\n \"swift\",\n \"kt\"\n];\nvar watchmanResponsivePromises = /* @__PURE__ */ new Map();\nvar didWarnAboutWatchmanFallback = false;\nvar rootIndexBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/index\\.bundle(?=$|[?#])/;\nvar expoVirtualEntryBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/\\.expo\\/\\.virtual-metro-entry\\.bundle(?=$|[?#])/;\nvar metroWatchExclusions = [\n /^(?!.*[/\\\\]node_modules[/\\\\]).*[/\\\\]dist[/\\\\](?:static|server)(?:[/\\\\]|$)/,\n /[/\\\\]tests[/\\\\][^/\\\\]+[/\\\\]dist(?:[/\\\\]|$)/,\n /[/\\\\]\\.docker(?:[/\\\\]|$)/,\n /[/\\\\]\\.vite(?:[/\\\\]|$)/,\n /[/\\\\]node_modules[/\\\\]\\.vxrn(?:[/\\\\]|$)/\n];\nfunction enforceWorkspaceVisibility(config, projectRoot) {\n var _config_watchFolders, _ref;\n var _config_resolver;\n var workspaceRoot = (0, import_vite.searchForWorkspaceRoot)(projectRoot);\n if (workspaceRoot === projectRoot) return config;\n return {\n ...config,\n watchFolders: [\n .../* @__PURE__ */ new Set([\n ...(_config_watchFolders = config.watchFolders) !== null && _config_watchFolders !== void 0 ? _config_watchFolders : [],\n workspaceRoot\n ])\n ],\n resolver: {\n ...config.resolver,\n nodeModulesPaths: [\n .../* @__PURE__ */ new Set([\n ...(_ref = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.nodeModulesPaths) !== null && _ref !== void 0 ? _ref : [],\n (0, import_path.resolve)(projectRoot, \"node_modules\"),\n (0, import_path.resolve)(workspaceRoot, \"node_modules\")\n ])\n ]\n }\n };\n}\nfunction getReactNativeDefaultConfig(projectRoot) {\n var _ref;\n var _config_resolver;\n var config = enforceWorkspaceVisibility((0, import_metro_config.getDefaultConfig)(projectRoot), projectRoot);\n return {\n ...config,\n resolver: {\n ...config.resolver,\n assetExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.assetExts) !== null && _ref !== void 0 ? _ref : [],\n \"glb\"\n ])\n ]\n }\n };\n}\nvar oneRoots = /* @__PURE__ */ new Map();\nfunction redirectDesktopReactNative(projectRoot, origin, moduleName, platform) {\n if (platform !== \"macos\" && platform !== \"linux\") return null;\n var file = (0, import_desktopReactNativeResolve.desktopReactNativeFile)(origin, moduleName, oneRootFor(projectRoot, platform), platform);\n if (!file) return null;\n return {\n type: \"sourceFile\",\n filePath: file\n };\n}\nfunction oneRootFor(projectRoot, platform) {\n var root = oneRoots.get(projectRoot);\n if (!root) {\n root = (0, import_desktopReactNativeResolve.requireOnePackageRoot)(projectRoot, platform);\n oneRoots.set(projectRoot, root);\n }\n return root;\n}\nfunction getPlatformFromBundleUrl(url) {\n var _url_match;\n var platform = (_url_match = url.match(/[?&]platform=(ios|android|macos|linux)(?:&|$)/)) === null || _url_match === void 0 ? void 0 : _url_match[1];\n if (platform === \"ios\" || platform === \"android\" || platform === \"macos\" || platform === \"linux\") return platform;\n return \"ios\";\n}\nfunction rewriteMainModuleBundleUrl(url, resolveMainModuleName) {\n var resolvedMainModulePath = resolveMainModuleName({\n platform: getPlatformFromBundleUrl(url)\n });\n if (rootIndexBundleRequestPattern.test(url)) {\n return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\n }\n return url.replace(expoVirtualEntryBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\n}\nfunction isMainModuleBundleRequest(url) {\n return rootIndexBundleRequestPattern.test(url) || expoVirtualEntryBundleRequestPattern.test(url);\n}\nfunction isBareSpecifier(name) {\n return name !== \"\" && !name.startsWith(\".\") && !name.startsWith(\"/\");\n}\nfunction bareMainModuleForRequest(moduleName, mainModuleName) {\n if (!mainModuleName || !isBareSpecifier(mainModuleName)) return void 0;\n if (moduleName === `./${mainModuleName}`) return mainModuleName;\n return void 0;\n}\nfunction enforcePackageResolution(config, mainModuleName, dedupe, projectRoot) {\n var _config_resolver;\n var dedupedPackages = new Set(dedupe);\n if ((!mainModuleName || !isBareSpecifier(mainModuleName)) && !dedupedPackages.size) {\n return config;\n }\n var rootOrigin = (0, import_path.resolve)(projectRoot, \"package.json\");\n var innerResolveRequest = (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.resolveRequest;\n return {\n ...config,\n resolver: {\n ...config.resolver,\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var bareMain = bareMainModuleForRequest(moduleName, mainModuleName);\n var request = bareMain !== null && bareMain !== void 0 ? bareMain : moduleName;\n var packageEnd = request.indexOf(\"/\", request.startsWith(\"@\") ? request.indexOf(\"/\") + 1 : 0);\n var packageName = packageEnd === -1 ? request : request.slice(0, packageEnd);\n var resolutionContext = isBareSpecifier(request) && dedupedPackages.has(packageName) ? {\n ...context,\n originModulePath: rootOrigin\n } : context;\n var resolveRequest2 = innerResolveRequest || context.resolveRequest;\n return resolveRequest2(resolutionContext, request, platform);\n }\n }\n };\n}\nasync function isWatchmanResponsive(projectRoot) {\n var probe = watchmanResponsivePromises.get(projectRoot);\n if (probe) {\n return probe;\n }\n probe = new Promise(function(resolve2) {\n var settled = false;\n var finish = function finish2(value) {\n if (settled) return;\n settled = true;\n clearTimeout(timeout);\n resolve2(value);\n };\n var child = (0, import_child_process.spawn)(\"watchman\", [\n \"watch-project\",\n projectRoot\n ], {\n stdio: \"ignore\"\n });\n var timeout = setTimeout(function() {\n child.kill();\n finish(false);\n }, WATCHMAN_PROBE_TIMEOUT_MS);\n child.once(\"error\", function() {\n finish(false);\n });\n child.once(\"exit\", function(code) {\n finish(code === 0);\n });\n });\n watchmanResponsivePromises.set(projectRoot, probe);\n return probe;\n}\nfunction resolveNativeTransforms(projectRoot, metroPluginOptions) {\n var userBabelConfigPath = projectRoot ? (0, import_compiler.findUserBabelConfig)(projectRoot) : null;\n var hasUserBabelConfig = Boolean(userBabelConfigPath);\n var isNativeTransforms = process.env.ONE_METRO_NATIVE_TRANSFORMS === \"0\" ? false : process.env.ONE_METRO_NATIVE_TRANSFORMS === \"1\" ? true : metroPluginOptions.nativeTransforms === false ? false : metroPluginOptions.nativeTransforms === true ? true : hasUserBabelConfig ? false : true;\n if (userBabelConfigPath && isNativeTransforms) {\n console.warn(`[vxrn/metro] Ignoring user babel config at ${userBabelConfigPath} because native transforms are explicitly enabled (nativeTransforms: true or ONE_METRO_NATIVE_TRANSFORMS=1). Port its plugins to nativeTransformModules, or set nativeTransforms: false (or ONE_METRO_NATIVE_TRANSFORMS=0) to use the babel transformer.`);\n }\n return {\n isNativeTransforms,\n userBabelConfigPath\n };\n}\nasync function buildMetroConfigInputFromViteConfig(config, metroPluginOptions) {\n var _ref, _ref1, _ref2, _ref3;\n var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;\n var extraConfig = {};\n 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);\n var { mainModuleName, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;\n var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);\n if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {\n didWarnAboutWatchmanFallback = true;\n console.warn(\"[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.\");\n }\n var _defaultConfig = getReactNativeDefaultConfig(projectRoot);\n if (mainModuleName) {\n var _defaultConfig_server;\n var origRewriteRequestUrl = (_defaultConfig_server = _defaultConfig.server) === null || _defaultConfig_server === void 0 ? void 0 : _defaultConfig_server.rewriteRequestUrl;\n var resolveMainModuleName = function resolveMainModuleName2() {\n return mainModuleName;\n };\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n var _ref4;\n if (isMainModuleBundleRequest(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;\n };\n }\n var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;\n var blockList = [\n ...existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [\n existingBlockList\n ] : [],\n ...metroWatchExclusions\n ];\n var { isNativeTransforms } = resolveNativeTransforms(projectRoot, metroPluginOptions);\n var nativeWorkerPath;\n if (isNativeTransforms) {\n nativeWorkerPath = (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/transformer/metroNativeWorker\");\n }\n var defaultConfig = {\n ..._defaultConfig,\n watcher: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.watcher,\n additionalExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref1 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_watcher = _defaultConfig.watcher) === null || _defaultConfig_watcher === void 0 ? void 0 : _defaultConfig_watcher.additionalExts) !== null && _ref1 !== void 0 ? _ref1 : [],\n ...expoEnvAdditionalExts\n ])\n ]\n },\n resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: metroSourceExts,\n platforms: [\n .../* @__PURE__ */ new Set([\n ...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],\n \"macos\",\n \"linux\"\n ])\n ],\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var _defaultConfig_resolver2;\n 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;\n if (excludeModules && excludeModules.length > 0) {\n if (import_micromatch.default.isMatch(moduleName, excludeModules)) {\n return origResolveRequestFn(context, \"@vxrn/utils/empty\", platform);\n }\n }\n if (moduleName.startsWith(\"@babel/runtime\")) {\n var contextOverride = {\n ...context,\n unstable_conditionNames: context.unstable_conditionNames.filter(function(c) {\n return c !== \"import\";\n })\n };\n return origResolveRequestFn(contextOverride, moduleName, platform);\n }\n var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);\n if (desktopRedirect) return desktopRedirect;\n return origResolveRequestFn(context, moduleName, platform);\n }\n },\n transformer: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer,\n // one's router and Expo's optional development env module both use\n // require.context. Metro installs a throwing runtime stub unless this\n // graph feature is enabled.\n unstable_allowRequireContext: true,\n babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/babel-transformer\")\n },\n // transformerPath is a TOP-LEVEL metro config key, not a transformer option.\n // nesting it under transformer silently leaves metro on its default worker.\n ...nativeWorkerPath ? {\n transformerPath: nativeWorkerPath\n } : {},\n reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)\n };\n var merged = {\n ...defaultConfig,\n ...typeof defaultConfigOverrides === \"function\" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides\n };\n return {\n defaultConfig: enforcePackageResolution(enforceWorkspaceVisibility(merged, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),\n projectRoot,\n extraConfig\n };\n}\nasync function getMetroConfigFromViteConfig(config, metroPluginOptions) {\n var _ref, _ref1, _ref2, _ref3;\n var _metroPluginOptions_argv, _defaultConfig_resolver, _defaultConfig_watcher, _defaultConfig_resolver1, _config_resolve;\n var extraConfig = {};\n 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);\n var { mainModuleName, argv, defaultConfigOverrides, watchman, excludeModules } = metroPluginOptions;\n var useWatchman = watchman !== null && watchman !== void 0 ? watchman : await isWatchmanResponsive(projectRoot);\n if (watchman === void 0 && !useWatchman && !didWarnAboutWatchmanFallback) {\n didWarnAboutWatchmanFallback = true;\n console.warn(\"[vxrn/metro] Watchman is unavailable or unresponsive; falling back to Node file watching.\");\n }\n var { loadConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"metro\");\n var _defaultConfig = getReactNativeDefaultConfig(projectRoot);\n if (mainModuleName) {\n var _defaultConfig_server;\n var origRewriteRequestUrl = (_defaultConfig_server = _defaultConfig.server) === null || _defaultConfig_server === void 0 ? void 0 : _defaultConfig_server.rewriteRequestUrl;\n var resolveMainModuleName = function resolveMainModuleName2() {\n return mainModuleName;\n };\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n var _ref4;\n if (isMainModuleBundleRequest(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return (_ref4 = origRewriteRequestUrl === null || origRewriteRequestUrl === void 0 ? void 0 : origRewriteRequestUrl(url)) !== null && _ref4 !== void 0 ? _ref4 : url;\n };\n }\n var existingBlockList = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver = _defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.blockList;\n var blockList = [\n ...existingBlockList ? Array.isArray(existingBlockList) ? existingBlockList : [\n existingBlockList\n ] : [],\n ...metroWatchExclusions\n ];\n var { isNativeTransforms } = resolveNativeTransforms(projectRoot, metroPluginOptions);\n var nativeWorkerPath;\n if (isNativeTransforms) {\n nativeWorkerPath = (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/transformer/metroNativeWorker\");\n }\n var defaultConfig = {\n ..._defaultConfig,\n watcher: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.watcher,\n additionalExts: [\n .../* @__PURE__ */ new Set([\n ...(_ref1 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_watcher = _defaultConfig.watcher) === null || _defaultConfig_watcher === void 0 ? void 0 : _defaultConfig_watcher.additionalExts) !== null && _ref1 !== void 0 ? _ref1 : [],\n ...expoEnvAdditionalExts\n ])\n ]\n },\n resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: metroSourceExts,\n platforms: [\n .../* @__PURE__ */ new Set([\n ...(_ref2 = _defaultConfig === null || _defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = _defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.platforms) !== null && _ref2 !== void 0 ? _ref2 : [],\n \"macos\",\n \"linux\"\n ])\n ],\n resolveRequest: function resolveRequest(context, moduleName, platform) {\n var _defaultConfig_resolver2;\n 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;\n if (excludeModules && excludeModules.length > 0) {\n if (import_micromatch.default.isMatch(moduleName, excludeModules)) {\n return origResolveRequestFn(context, \"@vxrn/utils/empty\", platform);\n }\n }\n if (moduleName.startsWith(\"@babel/runtime\")) {\n var contextOverride = {\n ...context,\n unstable_conditionNames: context.unstable_conditionNames.filter(function(c) {\n return c !== \"import\";\n })\n };\n return origResolveRequestFn(contextOverride, moduleName, platform);\n }\n var desktopRedirect = redirectDesktopReactNative(projectRoot, context.originModulePath, moduleName, platform);\n if (desktopRedirect) return desktopRedirect;\n return origResolveRequestFn(context, moduleName, platform);\n }\n },\n transformer: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.transformer,\n // one's router and Expo's optional development env module both use\n // require.context. Metro installs a throwing runtime stub unless this\n // graph feature is enabled.\n unstable_allowRequireContext: true,\n babelTransformerPath: (0, import_projectImport.projectResolve)(projectRoot, \"@vxrn/vite-plugin-metro/babel-transformer\")\n },\n // transformerPath is a TOP-LEVEL metro config key, not a transformer option.\n // nesting it under transformer silently leaves metro on its default worker.\n ...nativeWorkerPath ? {\n transformerPath: nativeWorkerPath\n } : {},\n reporter: await (0, import_getTerminalReporter.getTerminalReporter)(projectRoot)\n };\n var metroConfig = await loadConfig({\n cwd: projectRoot,\n projectRoot,\n \"reset-cache\": !!process.env.METRO_RESET_CACHE,\n ...argv\n }, {\n ...defaultConfig,\n ...typeof defaultConfigOverrides === \"function\" ? defaultConfigOverrides(defaultConfig) : defaultConfigOverrides\n });\n return {\n ...enforcePackageResolution(enforceWorkspaceVisibility(metroConfig, projectRoot), mainModuleName, (_ref3 = (_config_resolve = config.resolve) === null || _config_resolve === void 0 ? void 0 : _config_resolve.dedupe) !== null && _ref3 !== void 0 ? _ref3 : [], projectRoot),\n ...extraConfig\n };\n}\n//# sourceMappingURL=getMetroConfigFromViteConfig.js.map\n"],"mappings":"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"}
|
|
@@ -34,6 +34,7 @@ var import_node_module = require("node:module");
|
|
|
34
34
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
35
35
|
var import_expoVirtualEnv = require("./expoVirtualEnv.cjs");
|
|
36
36
|
var import_loadBabelConfig = require("./loadBabelConfig.cjs");
|
|
37
|
+
var import_rejectDOMDirective = require("./rejectDOMDirective.cjs");
|
|
37
38
|
var import_transformSync = require("./transformSync.cjs");
|
|
38
39
|
const debug = require("debug")("vxrn:metro-config:babel-transformer");
|
|
39
40
|
function isCustomTruthy(value) {
|
|
@@ -87,6 +88,7 @@ function stringOrUndefined(value) {
|
|
|
87
88
|
return typeof value === "string" ? value : void 0;
|
|
88
89
|
}
|
|
89
90
|
const transform = ({ filename, src: originalSrc, options, plugins }) => {
|
|
91
|
+
(0, import_rejectDOMDirective.rejectDOMDirective)(originalSrc, filename, options.platform);
|
|
90
92
|
if (/\.(swift|kt)$/.test(filename)) {
|
|
91
93
|
const requireFromProject = (0, import_node_module.createRequire)(import_node_path.default.resolve(options.projectRoot, "package.json"));
|
|
92
94
|
const oneTransforms = requireFromProject("one/native-transforms");
|
|
@@ -147,7 +149,7 @@ const transform = ({ filename, src: originalSrc, options, plugins }) => {
|
|
|
147
149
|
};
|
|
148
150
|
function getCacheKey(options) {
|
|
149
151
|
const hash = (0, import_node_crypto.createHash)("sha256");
|
|
150
|
-
hash.update("vxrn-metro-babel-transformer-
|
|
152
|
+
hash.update("vxrn-metro-babel-transformer-v3");
|
|
151
153
|
const projectRoot = options?.projectRoot;
|
|
152
154
|
if (!projectRoot) {
|
|
153
155
|
return hash.digest("hex");
|
|
@@ -36,6 +36,7 @@ var import_module = require("module");
|
|
|
36
36
|
var import_path = __toESM(require("path"), 1);
|
|
37
37
|
var import_expoVirtualEnv = require("./expoVirtualEnv.native.js");
|
|
38
38
|
var import_loadBabelConfig = require("./loadBabelConfig.native.js");
|
|
39
|
+
var import_rejectDOMDirective = require("./rejectDOMDirective.native.js");
|
|
39
40
|
var import_transformSync = require("./transformSync.native.js");
|
|
40
41
|
var debug = require("debug")("vxrn:metro-config:babel-transformer");
|
|
41
42
|
function isCustomTruthy(value) {
|
|
@@ -96,6 +97,7 @@ function stringOrUndefined(value) {
|
|
|
96
97
|
var transform = function transform2(param) {
|
|
97
98
|
var { filename, src: originalSrc, options, plugins } = param;
|
|
98
99
|
var _options_customTransformOptions, _options_customTransformOptions1;
|
|
100
|
+
(0, import_rejectDOMDirective.rejectDOMDirective)(originalSrc, filename, options.platform);
|
|
99
101
|
if (/\.(swift|kt)$/.test(filename)) {
|
|
100
102
|
var _options_platform;
|
|
101
103
|
var requireFromProject = (0, import_module.createRequire)(import_path.default.resolve(options.projectRoot, "package.json"));
|
|
@@ -157,7 +159,7 @@ var transform = function transform2(param) {
|
|
|
157
159
|
};
|
|
158
160
|
function getCacheKey(options) {
|
|
159
161
|
var hash = (0, import_crypto.createHash)("sha256");
|
|
160
|
-
hash.update("vxrn-metro-babel-transformer-
|
|
162
|
+
hash.update("vxrn-metro-babel-transformer-v3");
|
|
161
163
|
var projectRoot = options === null || options === void 0 ? void 0 : options.projectRoot;
|
|
162
164
|
if (!projectRoot) {
|
|
163
165
|
return hash.digest("hex");
|
|
@@ -36,6 +36,7 @@ var import_module = require("module");
|
|
|
36
36
|
var import_path = __toESM(require("path"), 1);
|
|
37
37
|
var import_expoVirtualEnv = require("./expoVirtualEnv.native.js");
|
|
38
38
|
var import_loadBabelConfig = require("./loadBabelConfig.native.js");
|
|
39
|
+
var import_rejectDOMDirective = require("./rejectDOMDirective.native.js");
|
|
39
40
|
var import_transformSync = require("./transformSync.native.js");
|
|
40
41
|
var debug = require("debug")("vxrn:metro-config:babel-transformer");
|
|
41
42
|
function isCustomTruthy(value) {
|
|
@@ -96,6 +97,7 @@ function stringOrUndefined(value) {
|
|
|
96
97
|
var transform = function transform2(param) {
|
|
97
98
|
var { filename, src: originalSrc, options, plugins } = param;
|
|
98
99
|
var _options_customTransformOptions, _options_customTransformOptions1;
|
|
100
|
+
(0, import_rejectDOMDirective.rejectDOMDirective)(originalSrc, filename, options.platform);
|
|
99
101
|
if (/\.(swift|kt)$/.test(filename)) {
|
|
100
102
|
var _options_platform;
|
|
101
103
|
var requireFromProject = (0, import_module.createRequire)(import_path.default.resolve(options.projectRoot, "package.json"));
|
|
@@ -157,7 +159,7 @@ var transform = function transform2(param) {
|
|
|
157
159
|
};
|
|
158
160
|
function getCacheKey(options) {
|
|
159
161
|
var hash = (0, import_crypto.createHash)("sha256");
|
|
160
|
-
hash.update("vxrn-metro-babel-transformer-
|
|
162
|
+
hash.update("vxrn-metro-babel-transformer-v3");
|
|
161
163
|
var projectRoot = options === null || options === void 0 ? void 0 : options.projectRoot;
|
|
162
164
|
if (!projectRoot) {
|
|
163
165
|
return hash.digest("hex");
|