@vxrn/vite-plugin-metro 2.0.0-beta.51.1 → 2.0.0-beta.53.1

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.
Files changed (50) hide show
  1. package/dist/cjs/env/platformEnv.cjs +2 -0
  2. package/dist/cjs/env/platformEnv.native.cjs +2 -0
  3. package/dist/cjs/env/platformEnv.native.js +2 -0
  4. package/dist/cjs/env/platformEnv.native.js.map +1 -1
  5. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +10 -15
  6. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.cjs +27 -48
  7. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +27 -48
  8. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  9. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +25 -2
  10. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.cjs +26 -2
  11. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +26 -2
  12. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  13. package/dist/cjs/transformer/metroNativeWorker.cjs +12 -9
  14. package/dist/cjs/transformer/metroNativeWorker.native.cjs +16 -10
  15. package/dist/cjs/transformer/metroNativeWorker.native.js +16 -10
  16. package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
  17. package/dist/esm/env/platformEnv.mjs +2 -0
  18. package/dist/esm/env/platformEnv.mjs.map +1 -1
  19. package/dist/esm/env/platformEnv.native.js +2 -0
  20. package/dist/esm/env/platformEnv.native.js.map +1 -1
  21. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +11 -15
  22. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -1
  23. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +28 -48
  24. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  25. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +25 -2
  26. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
  27. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +26 -2
  28. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  29. package/dist/esm/transformer/metroNativeWorker.mjs +12 -9
  30. package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
  31. package/dist/esm/transformer/metroNativeWorker.native.js +16 -10
  32. package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
  33. package/package.json +4 -4
  34. package/src/babel-plugins/import-meta-env-plugin.ts +1 -1
  35. package/src/env/platformEnv.test.ts +12 -2
  36. package/src/env/platformEnv.ts +3 -0
  37. package/src/metro-config/getMetroBabelConfigFromViteConfig.test.ts +19 -25
  38. package/src/metro-config/getMetroBabelConfigFromViteConfig.ts +8 -27
  39. package/src/metro-config/getMetroConfigFromViteConfig.test.ts +55 -0
  40. package/src/metro-config/getMetroConfigFromViteConfig.ts +40 -2
  41. package/src/transformer/metroNativeWorker.test.ts +29 -16
  42. package/src/transformer/metroNativeWorker.ts +31 -18
  43. package/types/babel-plugins/import-meta-env-plugin.d.ts +1 -1
  44. package/types/env/platformEnv.d.ts +1 -0
  45. package/types/env/platformEnv.d.ts.map +1 -1
  46. package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts +1 -1
  47. package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts.map +1 -1
  48. package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
  49. package/types/transformer/metroNativeWorker.d.ts +3 -5
  50. package/types/transformer/metroNativeWorker.d.ts.map +1 -1
@@ -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_child_process = require(\"child_process\");\nvar import_path = require(\"path\");\nvar import_micromatch = __toESM(require(\"micromatch\"), 1);\nvar import_compiler = require(\"@vxrn/compiler\");\nvar import_projectImport = require(\"../utils/projectImport\");\nvar import_getTerminalReporter = require(\"../utils/getTerminalReporter\");\nvar import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require(\"../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName\");\nvar WATCHMAN_PROBE_TIMEOUT_MS = 2e3;\nvar watchmanResponsivePromises = /* @__PURE__ */ new Map();\nvar didWarnAboutWatchmanFallback = false;\nvar rootIndexBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/index\\.bundle(?=$|[?#])/;\nvar metroWatchExclusions = [\n /[/\\\\]dist[/\\\\](?:static|server)(?:[/\\\\]|$)/,\n /[/\\\\]tests[/\\\\][^/\\\\]+[/\\\\]dist(?:[/\\\\]|$)/,\n /[/\\\\]\\.docker(?:[/\\\\]|$)/,\n /[/\\\\]\\.vite(?:[/\\\\]|$)/,\n /[/\\\\]node_modules[/\\\\]\\.vxrn(?:[/\\\\]|$)/\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 (url.includes(\"/.expo/.virtual-metro-entry.bundle?\")) {\n return url.replace(\".expo/.virtual-metro-entry\", resolvedMainModulePath);\n }\n return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\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(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;\n var _metroPluginOptions_argv, _defaultConfig_resolver;\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 { getDefaultConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"@expo/metro-config\");\n var _defaultConfig = getDefaultConfig(projectRoot);\n if (mainModuleName) {\n var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;\n var resolveMainModuleName = await (async function() {\n var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\")).default.ExpoGoManifestHandlerMiddleware;\n var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});\n (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);\n return function(p) {\n return manifestHandlerMiddleware.resolveMainModuleName({\n pkg: {\n main: mainModuleName\n },\n platform: p.platform\n });\n };\n })();\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n if (url.includes(\"/.expo/.virtual-metro-entry.bundle?\") || rootIndexBundleRequestPattern.test(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return origRewriteRequestUrl(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 resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\"\n ],\n // `one` related packages are using `.mjs` extensions. This fixes `.native` files not being resolved correctly when `.mjs` files are present.\n resolveRequest: function(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/vite-plugin-metro/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 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: merged,\n projectRoot,\n extraConfig\n };\n}\nasync function getMetroConfigFromViteConfig(config, metroPluginOptions) {\n var _ref;\n var _metroPluginOptions_argv, _defaultConfig_resolver;\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 { getDefaultConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"@expo/metro-config\");\n var _defaultConfig = getDefaultConfig(projectRoot);\n if (mainModuleName) {\n var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;\n var resolveMainModuleName = await (async function() {\n var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\")).default.ExpoGoManifestHandlerMiddleware;\n var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});\n (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);\n return function(p) {\n return manifestHandlerMiddleware.resolveMainModuleName({\n pkg: {\n main: mainModuleName\n },\n platform: p.platform\n });\n };\n })();\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n if (url.includes(\"/.expo/.virtual-metro-entry.bundle?\") || rootIndexBundleRequestPattern.test(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return origRewriteRequestUrl(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 resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\"\n ],\n // `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.\n resolveRequest: function(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/vite-plugin-metro/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 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 ...metroConfig,\n ...extraConfig\n };\n}\n//# sourceMappingURL=getMetroConfigFromViteConfig.js.map\n"],"mappings":"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"}
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_child_process = require(\"child_process\");\nvar import_path = require(\"path\");\nvar import_micromatch = __toESM(require(\"micromatch\"), 1);\nvar import_compiler = require(\"@vxrn/compiler\");\nvar import_projectImport = require(\"../utils/projectImport\");\nvar import_getTerminalReporter = require(\"../utils/getTerminalReporter\");\nvar import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require(\"../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName\");\nvar WATCHMAN_PROBE_TIMEOUT_MS = 2e3;\nvar watchmanResponsivePromises = /* @__PURE__ */ new Map();\nvar didWarnAboutWatchmanFallback = false;\nvar rootIndexBundleRequestPattern = /^(https?:\\/\\/[^/]+)?\\/index\\.bundle(?=$|[?#])/;\nvar metroWatchExclusions = [\n /[/\\\\]dist[/\\\\](?:static|server)(?:[/\\\\]|$)/,\n /[/\\\\]tests[/\\\\][^/\\\\]+[/\\\\]dist(?:[/\\\\]|$)/,\n /[/\\\\]\\.docker(?:[/\\\\]|$)/,\n /[/\\\\]\\.vite(?:[/\\\\]|$)/,\n /[/\\\\]node_modules[/\\\\]\\.vxrn(?:[/\\\\]|$)/\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 (url.includes(\"/.expo/.virtual-metro-entry.bundle?\")) {\n return url.replace(\".expo/.virtual-metro-entry\", resolvedMainModulePath);\n }\n return url.replace(rootIndexBundleRequestPattern, `$1/${resolvedMainModulePath}.bundle`);\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 enforceBareMainModuleEntry(config, mainModuleName) {\n var _config_resolver;\n if (!mainModuleName || !isBareSpecifier(mainModuleName)) return config;\n var innerResolveRequest = config === null || config === void 0 ? void 0 : (_config_resolver = config.resolver) === null || _config_resolver === void 0 ? void 0 : _config_resolver.resolveRequest;\n return {\n ...config,\n resolver: {\n ...config === null || config === void 0 ? void 0 : config.resolver,\n resolveRequest: function(context, moduleName, platform) {\n var bareMain = bareMainModuleForRequest(moduleName, mainModuleName);\n var resolveRequest = innerResolveRequest || context.resolveRequest;\n return resolveRequest(context, bareMain !== null && bareMain !== void 0 ? bareMain : moduleName, 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(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;\n var _metroPluginOptions_argv, _defaultConfig_resolver;\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 { getDefaultConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"@expo/metro-config\");\n var _defaultConfig = getDefaultConfig(projectRoot);\n if (mainModuleName) {\n var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;\n var resolveMainModuleName = await (async function() {\n var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\")).default.ExpoGoManifestHandlerMiddleware;\n var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});\n (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);\n return function(p) {\n return manifestHandlerMiddleware.resolveMainModuleName({\n pkg: {\n main: mainModuleName\n },\n platform: p.platform\n });\n };\n })();\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n if (url.includes(\"/.expo/.virtual-metro-entry.bundle?\") || rootIndexBundleRequestPattern.test(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return origRewriteRequestUrl(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 resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\"\n ],\n // `one` related packages are using `.mjs` extensions. This fixes `.native` files not being resolved correctly when `.mjs` files are present.\n resolveRequest: function(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/vite-plugin-metro/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 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: enforceBareMainModuleEntry(merged, mainModuleName),\n projectRoot,\n extraConfig\n };\n}\nasync function getMetroConfigFromViteConfig(config, metroPluginOptions) {\n var _ref;\n var _metroPluginOptions_argv, _defaultConfig_resolver;\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 { getDefaultConfig } = await (0, import_projectImport.projectImport)(projectRoot, \"@expo/metro-config\");\n var _defaultConfig = getDefaultConfig(projectRoot);\n if (mainModuleName) {\n var origRewriteRequestUrl = _defaultConfig.server.rewriteRequestUrl;\n var resolveMainModuleName = await (async function() {\n var ExpoGoManifestHandlerMiddleware = (await (0, import_projectImport.projectImport)(projectRoot, \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\")).default.ExpoGoManifestHandlerMiddleware;\n var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {});\n (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, mainModuleName);\n return function(p) {\n return manifestHandlerMiddleware.resolveMainModuleName({\n pkg: {\n main: mainModuleName\n },\n platform: p.platform\n });\n };\n })();\n extraConfig.getResolveMainModuleName = resolveMainModuleName;\n _defaultConfig.server.rewriteRequestUrl = function(url) {\n if (url.includes(\"/.expo/.virtual-metro-entry.bundle?\") || rootIndexBundleRequestPattern.test(url)) {\n return rewriteMainModuleBundleUrl(url, resolveMainModuleName);\n }\n return origRewriteRequestUrl(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 resolver: {\n ..._defaultConfig === null || _defaultConfig === void 0 ? void 0 : _defaultConfig.resolver,\n useWatchman,\n blockList,\n sourceExts: [\n \"js\",\n \"jsx\",\n \"json\",\n \"ts\",\n \"tsx\",\n \"mjs\",\n \"cjs\"\n ],\n // `one` related packages are using `.mjs` extensions. This somehow fixes `.native` files not being resolved correctly when `.mjs` files are present.\n resolveRequest: function(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/vite-plugin-metro/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 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 ...enforceBareMainModuleEntry(metroConfig, mainModuleName),\n ...extraConfig\n };\n}\n//# sourceMappingURL=getMetroConfigFromViteConfig.js.map\n"],"mappings":"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"}
@@ -61,6 +61,7 @@ var import_magic_string = __toESM(require("magic-string"), 1);
61
61
  var import_remapping = __toESM(require("@jridgewell/remapping"), 1);
62
62
  var import_trace_mapping = require("@jridgewell/trace-mapping");
63
63
  var import_compiler = require("@vxrn/compiler");
64
+ var import_publicEnv = require("@vxrn/utils/publicEnv");
64
65
  var import_platformEnv = require("../env/platformEnv.cjs");
65
66
  function collectModuleLiteralBindings(program) {
66
67
  const reassigned = /* @__PURE__ */ new Set();
@@ -293,6 +294,11 @@ function applyInlineEnvVars(code, filename, isProduction, env = {}) {
293
294
  throw new Error(`[vxrn/metro] Failed to parse ${filename} for env inlining: ${parsed.errors[0].message}`);
294
295
  }
295
296
  if (!parsed?.program) return code;
297
+ const processPublicEnv = Object.fromEntries(Object.entries(process.env).filter(([key]) => key.startsWith("ONE_PUBLIC_") || key.startsWith("EXPO_PUBLIC_")));
298
+ const effectiveEnv = (0, import_publicEnv.withExpoPublicEnvAliases)({
299
+ ...processPublicEnv,
300
+ ...env
301
+ });
296
302
  const ms = new import_magic_string.default(code);
297
303
  const edits = [];
298
304
  const known = /* @__PURE__ */ new Map();
@@ -325,27 +331,24 @@ function applyInlineEnvVars(code, filename, isProduction, env = {}) {
325
331
  replace(node, process.env.ONE_SERVER_URL || "");
326
332
  return;
327
333
  }
328
- if (isProcessEnv && !isAssignmentTarget && key?.startsWith("EXPO_PUBLIC_")) {
329
- throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
330
- }
331
- if (isProcessEnv && !isAssignmentTarget && key?.startsWith("ONE_PUBLIC_")) {
332
- replace(node, env[key] ?? process.env[key] ?? void 0);
334
+ if (isProcessEnv && !isAssignmentTarget && (key?.startsWith("ONE_PUBLIC_") || key?.startsWith("EXPO_PUBLIC_"))) {
335
+ replace(node, effectiveEnv[key] ?? void 0);
333
336
  return;
334
337
  }
335
338
  if (!isAssignmentTarget && isMember && isImportMeta(obj.object) && keyOf(obj.property, obj.computed) === "env" && key !== void 0) {
336
- replace(node, env[key]);
339
+ replace(node, effectiveEnv[key]);
337
340
  return;
338
341
  }
339
342
  if (!isAssignmentTarget && isImportMeta(obj) && key === "env") {
340
343
  edits.push({
341
344
  start: node.start,
342
345
  end: node.end,
343
- text: JSON.stringify(env)
346
+ text: JSON.stringify(effectiveEnv)
344
347
  });
345
348
  return;
346
349
  }
347
- if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in env) {
348
- replace(node, env[key]);
350
+ if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in effectiveEnv) {
351
+ replace(node, effectiveEnv[key]);
349
352
  return;
350
353
  }
351
354
  }
@@ -63,6 +63,7 @@ var import_magic_string = __toESM(require("magic-string"), 1);
63
63
  var import_remapping = __toESM(require("@jridgewell/remapping"), 1);
64
64
  var import_trace_mapping = require("@jridgewell/trace-mapping");
65
65
  var import_compiler = require("@vxrn/compiler");
66
+ var import_publicEnv = require("@vxrn/utils/publicEnv");
66
67
  var import_platformEnv = require("../env/platformEnv.native.js");
67
68
  function _class_call_check(instance, Constructor) {
68
69
  if (!(instance instanceof Constructor)) {
@@ -580,6 +581,14 @@ function applyInlineEnvVars(code, filename, isProduction) {
580
581
  throw new Error(`[vxrn/metro] Failed to parse ${filename} for env inlining: ${parsed.errors[0].message}`);
581
582
  }
582
583
  if (!(parsed === null || parsed === void 0 ? void 0 : parsed.program)) return code;
584
+ var processPublicEnv = Object.fromEntries(Object.entries(process.env).filter(function(param) {
585
+ var [key] = param;
586
+ return key.startsWith("ONE_PUBLIC_") || key.startsWith("EXPO_PUBLIC_");
587
+ }));
588
+ var effectiveEnv = (0, import_publicEnv.withExpoPublicEnvAliases)({
589
+ ...processPublicEnv,
590
+ ...env
591
+ });
583
592
  var ms = new import_magic_string.default(code);
584
593
  var edits = [];
585
594
  var known = /* @__PURE__ */ new Map();
@@ -614,28 +623,25 @@ function applyInlineEnvVars(code, filename, isProduction) {
614
623
  replace(node, process.env.ONE_SERVER_URL || "");
615
624
  return;
616
625
  }
617
- if (isProcessEnv && !isAssignmentTarget && (key === null || key === void 0 ? void 0 : key.startsWith("EXPO_PUBLIC_"))) {
618
- throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
619
- }
620
- if (isProcessEnv && !isAssignmentTarget && (key === null || key === void 0 ? void 0 : key.startsWith("ONE_PUBLIC_"))) {
621
- var _ref, _env_key;
622
- replace(node, (_ref = (_env_key = env[key]) !== null && _env_key !== void 0 ? _env_key : process.env[key]) !== null && _ref !== void 0 ? _ref : void 0);
626
+ if (isProcessEnv && !isAssignmentTarget && ((key === null || key === void 0 ? void 0 : key.startsWith("ONE_PUBLIC_")) || (key === null || key === void 0 ? void 0 : key.startsWith("EXPO_PUBLIC_")))) {
627
+ var _effectiveEnv_key;
628
+ replace(node, (_effectiveEnv_key = effectiveEnv[key]) !== null && _effectiveEnv_key !== void 0 ? _effectiveEnv_key : void 0);
623
629
  return;
624
630
  }
625
631
  if (!isAssignmentTarget && isMember && isImportMeta(obj.object) && keyOf(obj.property, obj.computed) === "env" && key !== void 0) {
626
- replace(node, env[key]);
632
+ replace(node, effectiveEnv[key]);
627
633
  return;
628
634
  }
629
635
  if (!isAssignmentTarget && isImportMeta(obj) && key === "env") {
630
636
  edits.push({
631
637
  start: node.start,
632
638
  end: node.end,
633
- text: JSON.stringify(env)
639
+ text: JSON.stringify(effectiveEnv)
634
640
  });
635
641
  return;
636
642
  }
637
- if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in env) {
638
- replace(node, env[key]);
643
+ if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in effectiveEnv) {
644
+ replace(node, effectiveEnv[key]);
639
645
  return;
640
646
  }
641
647
  }
@@ -63,6 +63,7 @@ var import_magic_string = __toESM(require("magic-string"), 1);
63
63
  var import_remapping = __toESM(require("@jridgewell/remapping"), 1);
64
64
  var import_trace_mapping = require("@jridgewell/trace-mapping");
65
65
  var import_compiler = require("@vxrn/compiler");
66
+ var import_publicEnv = require("@vxrn/utils/publicEnv");
66
67
  var import_platformEnv = require("../env/platformEnv.native.js");
67
68
  function _class_call_check(instance, Constructor) {
68
69
  if (!(instance instanceof Constructor)) {
@@ -580,6 +581,14 @@ function applyInlineEnvVars(code, filename, isProduction) {
580
581
  throw new Error(`[vxrn/metro] Failed to parse ${filename} for env inlining: ${parsed.errors[0].message}`);
581
582
  }
582
583
  if (!(parsed === null || parsed === void 0 ? void 0 : parsed.program)) return code;
584
+ var processPublicEnv = Object.fromEntries(Object.entries(process.env).filter(function(param) {
585
+ var [key] = param;
586
+ return key.startsWith("ONE_PUBLIC_") || key.startsWith("EXPO_PUBLIC_");
587
+ }));
588
+ var effectiveEnv = (0, import_publicEnv.withExpoPublicEnvAliases)({
589
+ ...processPublicEnv,
590
+ ...env
591
+ });
583
592
  var ms = new import_magic_string.default(code);
584
593
  var edits = [];
585
594
  var known = /* @__PURE__ */ new Map();
@@ -614,28 +623,25 @@ function applyInlineEnvVars(code, filename, isProduction) {
614
623
  replace(node, process.env.ONE_SERVER_URL || "");
615
624
  return;
616
625
  }
617
- if (isProcessEnv && !isAssignmentTarget && (key === null || key === void 0 ? void 0 : key.startsWith("EXPO_PUBLIC_"))) {
618
- throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
619
- }
620
- if (isProcessEnv && !isAssignmentTarget && (key === null || key === void 0 ? void 0 : key.startsWith("ONE_PUBLIC_"))) {
621
- var _ref, _env_key;
622
- replace(node, (_ref = (_env_key = env[key]) !== null && _env_key !== void 0 ? _env_key : process.env[key]) !== null && _ref !== void 0 ? _ref : void 0);
626
+ if (isProcessEnv && !isAssignmentTarget && ((key === null || key === void 0 ? void 0 : key.startsWith("ONE_PUBLIC_")) || (key === null || key === void 0 ? void 0 : key.startsWith("EXPO_PUBLIC_")))) {
627
+ var _effectiveEnv_key;
628
+ replace(node, (_effectiveEnv_key = effectiveEnv[key]) !== null && _effectiveEnv_key !== void 0 ? _effectiveEnv_key : void 0);
623
629
  return;
624
630
  }
625
631
  if (!isAssignmentTarget && isMember && isImportMeta(obj.object) && keyOf(obj.property, obj.computed) === "env" && key !== void 0) {
626
- replace(node, env[key]);
632
+ replace(node, effectiveEnv[key]);
627
633
  return;
628
634
  }
629
635
  if (!isAssignmentTarget && isImportMeta(obj) && key === "env") {
630
636
  edits.push({
631
637
  start: node.start,
632
638
  end: node.end,
633
- text: JSON.stringify(env)
639
+ text: JSON.stringify(effectiveEnv)
634
640
  });
635
641
  return;
636
642
  }
637
- if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in env) {
638
- replace(node, env[key]);
643
+ if (isProcessEnv && !isAssignmentTarget && key !== void 0 && key in effectiveEnv) {
644
+ replace(node, effectiveEnv[key]);
639
645
  return;
640
646
  }
641
647
  }