vxrn 2.11.3 → 2.11.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/utils/createNativeDevEngine.mjs +50 -37
- package/dist/utils/createNativeDevEngine.mjs.map +1 -1
- package/dist/utils/createNativeDevEngine.native.js +58 -44
- package/dist/utils/createNativeDevEngine.native.js.map +1 -1
- package/package.json +13 -13
- package/src/utils/createNativeDevEngine.ts +11 -0
- package/types/utils/createNativeDevEngine.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createNativeDevEngine.js","names":[],"sources":["utils/createNativeDevEngine.js"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { basename, dirname, extname, join, relative, resolve } from \"node:path\";\nimport { copyFileSync, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, statSync, watch, writeFileSync } from \"node:fs\";\nimport { pathToFileURL } from \"node:url\";\nimport micromatch from \"micromatch\";\nimport { parseSync } from \"oxc-parser\";\nimport { loadEnv, normalizePath } from \"vite\";\nimport { shouldStripFlow, transformHermesAsync } from \"@vxrn/compiler\";\nimport { resolvePath } from \"@vxrn/resolve\";\nimport { desktopReactNativeFile, requireOnePackageRoot } from \"@vxrn/utils/desktopReactNativeResolve\";\nimport { nativeAppDefines } from \"@vxrn/utils/nativeAppManifest\";\nimport { withExpoPublicEnvAliases } from \"@vxrn/utils/publicEnv\";\nimport { DEFAULT_ASSET_EXTS } from \"../constants/defaults\";\nimport { getNativePrelude } from \"../runtime/native-prelude\";\nimport { rnCodegenPlugin } from \"../plugins/rnCodegenPlugin\";\nimport { dedupe } from \"../config/getBaseViteConfigOnly\";\n\nconst HERMES_CLASS_TRANSFORMS = [\n\t\"transform-classes\",\n\t\"transform-parameters\",\n\t\"transform-block-scoping\",\n\t\"transform-class-properties\",\n\t\"transform-class-static-block\",\n\t\"transform-private-methods\",\n\t\"transform-private-property-in-object\"\n];\nconst HERMES_ASYNC_TRANSFORMS = [\"transform-async-to-generator\"];\nfunction getHermesSWCIncludes(dev) {\n\treturn [...HERMES_CLASS_TRANSFORMS, ...HERMES_ASYNC_TRANSFORMS];\n}\nconst NATIVE_PLATFORM_EXTENSIONS = {\n\tios: [\n\t\t\".ios.tsx\",\n\t\t\".ios.ts\",\n\t\t\".ios.jsx\",\n\t\t\".ios.js\"\n\t],\n\tandroid: [\n\t\t\".android.tsx\",\n\t\t\".android.ts\",\n\t\t\".android.jsx\",\n\t\t\".android.js\"\n\t],\n\tmacos: [\n\t\t\".macos.tsx\",\n\t\t\".macos.ts\",\n\t\t\".macos.jsx\",\n\t\t\".macos.js\"\n\t],\n\tlinux: [\n\t\t\".linux.tsx\",\n\t\t\".linux.ts\",\n\t\t\".linux.jsx\",\n\t\t\".linux.js\"\n\t]\n};\nconst NATIVE_SHARED_EXTENSIONS = [\n\t\".native.tsx\",\n\t\".native.ts\",\n\t\".native.jsx\",\n\t\".native.js\"\n];\nconst PLAIN_EXTENSIONS = [\n\t\".tsx\",\n\t\".ts\",\n\t\".jsx\",\n\t\".js\",\n\t\".mjs\",\n\t\".cjs\",\n\t\".json\"\n];\nfunction getResolveExtensions(platform) {\n\treturn [\n\t\t...NATIVE_PLATFORM_EXTENSIONS[platform],\n\t\t...NATIVE_SHARED_EXTENSIONS,\n\t\t...PLAIN_EXTENSIONS\n\t];\n}\nfunction getNativeResolveConfig(platform) {\n\treturn {\n\t\textensions: getResolveExtensions(platform),\n\t\tconditionNames: [\"react-native\", \"browser\"],\n\t\tmainFields: [\n\t\t\t\"react-native\",\n\t\t\t\"browser\",\n\t\t\t\"main\",\n\t\t\t\"module\"\n\t\t],\n\t\taliasFields: [[\"react-native\"], [\"browser\"]]\n\t};\n}\nfunction getNativeTransformConfig(platform, dev, root) {\n\tconst entryConfig = globalThis.__vxrnNativeEntryConfig || {};\n\tconst setupFileDefines = (() => {\n\t\tconst sf = entryConfig.setupFile;\n\t\tif (!sf) return {};\n\t\tconst files = typeof sf === \"string\" ? {\n\t\t\tclient: sf,\n\t\t\tserver: sf,\n\t\t\tios: sf,\n\t\t\tandroid: sf\n\t\t} : \"native\" in sf ? {\n\t\t\tclient: sf.client,\n\t\t\tserver: sf.server,\n\t\t\tios: sf.native,\n\t\t\tandroid: sf.native\n\t\t} : sf;\n\t\treturn {\n\t\t\t...files.client && { \"process.env.ONE_SETUP_FILE_CLIENT\": JSON.stringify(files.client) },\n\t\t\t...files.server && { \"process.env.ONE_SETUP_FILE_SERVER\": JSON.stringify(files.server) },\n\t\t\t...files.ios && { \"process.env.ONE_SETUP_FILE_IOS\": JSON.stringify(files.ios) },\n\t\t\t...files.android && { \"process.env.ONE_SETUP_FILE_ANDROID\": JSON.stringify(files.android) }\n\t\t};\n\t})();\n\tconst userDefines = {};\n\tfor (const [key, value] of Object.entries(globalThis.__vxrnNativeUserDefine || {})) userDefines[key] = typeof value === \"string\" ? value : JSON.stringify(value);\n\tconst mode = dev ? \"development\" : \"production\";\n\tconst publicEnv = withExpoPublicEnvAliases(loadEnv(mode, root, [\n\t\t\"VITE_\",\n\t\t\"ONE_PUBLIC_\",\n\t\t\"EXPO_PUBLIC_\"\n\t]));\n\tconst envDefines = {};\n\tfor (const [key, value] of Object.entries(publicEnv)) {\n\t\tenvDefines[`import.meta.env.${key}`] = JSON.stringify(value);\n\t\tenvDefines[`process.env.${key}`] = JSON.stringify(value);\n\t}\n\tconst envObject = {\n\t\t...publicEnv,\n\t\tMODE: mode,\n\t\tDEV: dev,\n\t\tPROD: !dev,\n\t\tSSR: false,\n\t\tVITE_ENVIRONMENT: platform,\n\t\tVITE_NATIVE: \"1\",\n\t\tONE_PLATFORM: platform,\n\t\tEXPO_OS: platform,\n\t\tTAMAGUI_TARGET: \"native\",\n\t\tTAMAGUI_ENVIRONMENT: platform\n\t};\n\treturn {\n\t\tjsx: { runtime: \"classic\" },\n\t\tdefine: {\n\t\t\t...userDefines,\n\t\t\t...nativeAppDefines(entryConfig.app),\n\t\t\t...envDefines,\n\t\t\t\"process.env.NODE_ENV\": JSON.stringify(mode),\n\t\t\t\"process.env.VXRN_REACT_19\": \"false\",\n\t\t\t\"process.env.VITE_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t\"process.env.VITE_NATIVE\": \"\\\"1\\\"\",\n\t\t\t\"process.env.ONE_PLATFORM\": JSON.stringify(platform),\n\t\t\t\"process.env.EXPO_OS\": JSON.stringify(platform),\n\t\t\t\"process.env.TAMAGUI_TARGET\": \"\\\"native\\\"\",\n\t\t\t\"process.env.TAMAGUI_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t__DEV__: dev ? \"true\" : \"false\",\n\t\t\t\"import.meta.env\": JSON.stringify(envObject),\n\t\t\t\"import.meta.env.MODE\": JSON.stringify(mode),\n\t\t\t\"import.meta.env.DEV\": dev ? \"true\" : \"false\",\n\t\t\t\"import.meta.env.PROD\": dev ? \"false\" : \"true\",\n\t\t\t\"import.meta.env.SSR\": \"false\",\n\t\t\t\"import.meta.env.VITE_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.VITE_NATIVE\": \"\\\"1\\\"\",\n\t\t\t\"import.meta.env.ONE_PLATFORM\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.EXPO_OS\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.TAMAGUI_TARGET\": \"\\\"native\\\"\",\n\t\t\t\"import.meta.env.TAMAGUI_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t...setupFileDefines\n\t\t},\n\t\tinject: { React: \"react\" }\n\t};\n}\nfunction desktopReactNativeResolvePlugin(root, platform) {\n\tconst oneRoot = requireOnePackageRoot(root, platform);\n\treturn {\n\t\tname: `vxrn:${platform}-react-native-resolve`,\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer) return;\n\t\t\tconst file = desktopReactNativeFile(importer, source, oneRoot, platform);\n\t\t\tif (file) return file;\n\t\t}\n\t};\n}\nconst PLATFORM_VARIANT_EXTS = [\n\t\".ios.tsx\",\n\t\".ios.ts\",\n\t\".ios.jsx\",\n\t\".ios.js\",\n\t\".android.tsx\",\n\t\".android.ts\",\n\t\".android.jsx\",\n\t\".android.js\",\n\t\".web.tsx\",\n\t\".web.ts\",\n\t\".web.jsx\",\n\t\".web.js\"\n];\nfunction desktopNormalFile(target, source, platform) {\n\tif (/\\.(?:tsx|ts|jsx|js|mjs|cjs|json)$/.test(source)) return existsSync(target);\n\tconst extensions = getResolveExtensions(platform);\n\tfor (const ext of extensions) {\n\t\tif (existsSync(target + ext)) return true;\n\t\tif (existsSync(join(target, \"index\" + ext))) return true;\n\t}\n\treturn false;\n}\nfunction desktopVariantSource(target) {\n\tfor (const ext of PLATFORM_VARIANT_EXTS) {\n\t\tconst file = target + ext;\n\t\tif (existsSync(file)) return file;\n\t}\n\treturn null;\n}\nfunction desktopPackageImportLabel(variantFile) {\n\tlet dir = dirname(variantFile);\n\tfor (let i = 0; i < 8; i++) {\n\t\tconst manifest = join(dir, \"package.json\");\n\t\tif (existsSync(manifest)) try {\n\t\t\tconst name = JSON.parse(readFileSync(manifest, \"utf8\")).name;\n\t\t\tif (typeof name === \"string\" && name.length > 0) return `${name}/${relative(dir, variantFile).split(\"\\\\\").join(\"/\").replace(/\\.(?:ios|android|web)\\.(?:tsx|ts|jsx|js)$/, \"\")}`;\n\t\t} catch {}\n\t\tconst parent = dirname(dir);\n\t\tif (parent === dir) break;\n\t\tdir = parent;\n\t}\n\treturn variantFile;\n}\nfunction desktopUnsupportedImportPlugin(platform) {\n\tconst label = platform === \"macos\" ? \"macOS\" : \"Linux\";\n\treturn {\n\t\tname: `vxrn:${platform}-unsupported-import`,\n\t\tonLog(_level, log) {\n\t\t\tif (log.code === \"UNRESOLVED_IMPORT\") this.error({\n\t\t\t\t...log,\n\t\t\t\tmessage: `[vxrn] ${label} bundle cannot resolve an import: ${log.message}`\n\t\t\t});\n\t\t},\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\") || source.includes(\"\\0\")) return;\n\t\t\tif (source.includes(\"?\") || source.includes(\"#\")) return;\n\t\t\tconst target = resolve(dirname(importer), source);\n\t\t\tif (desktopNormalFile(target, source, platform)) return;\n\t\t\tconst variant = desktopVariantSource(target);\n\t\t\tif (!variant) return;\n\t\t\tthis.error(`[vxrn] ${desktopPackageImportLabel(variant)} has no ${label} implementation: cannot resolve import \"${source}\" from \"${importer}\". Add a .${platform}, .native or plain file.`);\n\t\t}\n\t};\n}\nfunction desktopDistVariantPlugin(platform) {\n\treturn {\n\t\tname: `vxrn:${platform}-dist-variant`,\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\") || !source.endsWith(\".native.js\")) return;\n\t\t\tif (source.endsWith(`.${platform}.native.js`)) return;\n\t\t\tconst variant = resolve(dirname(importer), source).replace(/\\.native\\.js$/, `.${platform}.native.js`);\n\t\t\tif (variant === importer || !existsSync(variant)) return;\n\t\t\treturn variant;\n\t\t}\n\t};\n}\nfunction getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, onAsset, sourceMaps = false, userPlugins = [], minify = false, command = \"serve\") {\n\tconst context = {\n\t\troot,\n\t\tplatform,\n\t\tdev,\n\t\tcommand,\n\t\tassetsDest\n\t};\n\tconst desktopPlugins = platform === \"macos\" || platform === \"linux\" ? [\n\t\tdesktopReactNativeResolvePlugin(root, platform),\n\t\tdesktopDistVariantPlugin(platform),\n\t\tdesktopUnsupportedImportPlugin(platform)\n\t] : [];\n\tconst globalPlugins = globalThis.__vxrnAddNativePlugins?.(platform) || [];\n\tconst trace = dev && command === \"serve\" ? [...globalPlugins, ...userPlugins].find((plugin) => plugin.api?.vxrnNativeCompilerTrace)?.api.vxrnNativeCompilerTrace : void 0;\n\tconst plugins = [\n\t\t...desktopPlugins,\n\t\t...globalPlugins,\n\t\tserverFileExclusionPlugin(),\n\t\tenvironmentGuardPlugin(),\n\t\tmissingDynamicImportPlugin(),\n\t\thmrClientNoopPlugin(),\n\t\tnativeIdentityAliasPlugin(platform),\n\t\tnativeAssetRegistryPlugin(root),\n\t\treactNativeDedupePlugin(root),\n\t\tnativePackageDedupePlugin(root),\n\t\tcssStubPlugin(),\n\t\tviteImportGlobPlugin({ root }),\n\t\trnCodegenPlugin({ projectRoot: root }),\n\t\tflowStripPlugin(),\n\t\tvxrnCompilerPlugin(platform, dev, root, sourceMaps, trace),\n\t\tmixedNativeModulePlugin(sourceMaps),\n\t\tnativeAnimatedGuardPlugin(),\n\t\tassetPlugin({\n\t\t\troot,\n\t\t\tplatform,\n\t\t\tassetsDest,\n\t\t\tonAsset\n\t\t}),\n\t\thermesCompatSWCPlugin(dev, sourceMaps, !minify),\n\t\thermesLoopsPlugin(sourceMaps),\n\t\t...userPlugins,\n\t\tnativeExportsPrecedencePlugin(root, platform),\n\t\tnativeDeclarationAliasPlugin(root, platform)\n\t].map((plugin) => plugin.api?.vxrnNative ? plugin.api.vxrnNative(context) : plugin);\n\tif (!trace) return plugins;\n\tconst start = (id, stage) => {\n\t\ttry {\n\t\t\tconst record = trace(id);\n\t\t\tif (!record) return;\n\t\t\tconst mark = (status) => {\n\t\t\t\ttry {\n\t\t\t\t\trecord(stage, status);\n\t\t\t\t} catch {}\n\t\t\t};\n\t\t\tmark(\"start\");\n\t\t\treturn mark;\n\t\t} catch {}\n\t};\n\treturn [{\n\t\tname: \"test-native-hmr-trace-first-pre\",\n\t\tload: {\n\t\t\torder: \"pre\",\n\t\t\thandler(id) {\n\t\t\t\tstart(id, \"load:first\")?.(\"end\");\n\t\t\t\treturn null;\n\t\t\t}\n\t\t},\n\t\ttransform: {\n\t\t\torder: \"pre\",\n\t\t\thandler(_code, id) {\n\t\t\t\tstart(id, \"pre:first\")?.(\"end\");\n\t\t\t\treturn null;\n\t\t\t}\n\t\t}\n\t}, ...plugins.map((plugin, index) => {\n\t\tif (plugin.name !== \"one:use-dom-native\" && plugin.name !== \"vxrn:rn-codegen\" && plugin.name !== \"one:background-computation:native\" && plugin.name !== \"one-client-tree-shake\") return plugin;\n\t\tconst hook = plugin.transform;\n\t\tif (!hook || typeof hook === \"function\" || hook.order !== \"pre\") return plugin;\n\t\treturn {\n\t\t\t...plugin,\n\t\t\ttransform: {\n\t\t\t\t...hook,\n\t\t\t\thandler(...args) {\n\t\t\t\t\tconst mark = start(args[1], `pre:${index}:${plugin.name}`);\n\t\t\t\t\tif (!mark) return hook.handler.apply(this, args);\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst result = hook.handler.apply(this, args);\n\t\t\t\t\t\tif (result instanceof Promise) try {\n\t\t\t\t\t\t\tPromise.prototype.then.call(result, () => mark(\"end\"), () => mark(\"error\"));\n\t\t\t\t\t\t} catch {}\n\t\t\t\t\t\telse mark(\"end\");\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tmark(\"error\");\n\t\t\t\t\t\tthrow error;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t})];\n}\nfunction getNativeOutputOptions(prelude, sourcemap, minify) {\n\treturn {\n\t\tformat: \"esm\",\n\t\tsourcemap,\n\t\tsourcemapPathTransform: (relativeSourcePath, sourcemapPath) => normalizePath(resolve(dirname(sourcemapPath), relativeSourcePath)),\n\t\tintro: prelude,\n\t\tcodeSplitting: false,\n\t\tstrictExecutionOrder: true,\n\t\tminify: minify || \"dce-only\",\n\t\tkeepNames: !minify\n\t};\n}\nfunction normalizeNativeCommonJSInterop(code) {\n\tif (!code.includes(\"__toESM\")) return code;\n\tconst { program, errors } = parseSync(\"native-bundle.js\", code, { lang: \"js\" });\n\tif (errors.length) throw new Error(`[vxrn] cannot normalize native CommonJS interop: the bundle does not parse (${errors[0].message})`);\n\tconst deletions = [];\n\tconst stack = [program];\n\twhile (stack.length) {\n\t\tconst node = stack.pop();\n\t\tif (Array.isArray(node)) {\n\t\t\tfor (let index = node.length - 1; index >= 0; index--) stack.push(node[index]);\n\t\t\tcontinue;\n\t\t}\n\t\tif (!isInteropSyntaxNode(node)) continue;\n\t\tif (node.type === \"CallExpression\") {\n\t\t\tconst span = interopNodeModeSpan(code, node);\n\t\t\tif (span) deletions.push(span);\n\t\t}\n\t\tfor (const key of Object.keys(node)) stack.push(node[key]);\n\t}\n\tif (!deletions.length) return code;\n\tdeletions.sort((a, b) => a[0] - b[0]);\n\tconst parts = [];\n\tlet copied = 0;\n\tfor (const [start, end] of deletions) {\n\t\tparts.push(code.slice(copied, start));\n\t\tcopied = end;\n\t}\n\tparts.push(code.slice(copied));\n\treturn parts.join(\"\");\n}\nfunction isInteropSyntaxNode(node) {\n\tif (!node || typeof node !== \"object\") return false;\n\tconst candidate = node;\n\treturn typeof candidate.type === \"string\" && typeof candidate.start === \"number\" && typeof candidate.end === \"number\";\n}\nconst NATIVE_INTEROP_HELPER = /^__toESM(?:\\$\\d+)?$/;\nconst NATIVE_INTEROP_REQUIRE = /^require[\\w$]*$/;\nfunction interopNodeModeSpan(code, node) {\n\tconst callee = node[\"callee\"];\n\tif (!isInteropSyntaxNode(callee) || !isInteropHelperCallee(callee) || node[\"optional\"] === true) return;\n\tconst args = node[\"arguments\"];\n\tif (!Array.isArray(args) || args.length !== 2) return void 0;\n\tconst [first, second] = args;\n\tif (!isInteropSyntaxNode(first) || !isInteropSyntaxNode(second)) return void 0;\n\tif (!isInteropFirstArgument(first)) return void 0;\n\tif (second.type !== \"Literal\" || second[\"raw\"] !== \"1\") return void 0;\n\tconst between = code.slice(first.end, second.start);\n\tif (!/^\\s*,\\s*$/.test(between)) return void 0;\n\tif (!/^\\s*\\)/.test(code.slice(second.end))) return void 0;\n\treturn [first.end + between.indexOf(\",\"), second.end];\n}\nfunction isInteropHelperCallee(callee) {\n\tif (callee.type === \"Identifier\") return typeof callee[\"name\"] === \"string\" && NATIVE_INTEROP_HELPER.test(callee[\"name\"]);\n\tif ((callee.type === \"MemberExpression\" || callee.type === \"StaticMemberExpression\") && callee[\"computed\"] !== true) {\n\t\tconst property = callee[\"property\"];\n\t\treturn isInteropSyntaxNode(property) && property.type === \"Identifier\" && typeof property[\"name\"] === \"string\" && NATIVE_INTEROP_HELPER.test(property[\"name\"]);\n\t}\n\treturn false;\n}\nfunction isInteropFirstArgument(node) {\n\tif (node.type === \"Identifier\") return true;\n\tif (node.type !== \"CallExpression\" || node[\"optional\"] === true) return false;\n\tconst callee = node[\"callee\"];\n\tif (!isInteropSyntaxNode(callee)) return false;\n\tconst args = node[\"arguments\"];\n\tif (!Array.isArray(args)) return false;\n\tif (callee.type === \"Identifier\") return typeof callee[\"name\"] === \"string\" && NATIVE_INTEROP_REQUIRE.test(callee[\"name\"]) && args.length === 0;\n\tif ((callee.type === \"MemberExpression\" || callee.type === \"StaticMemberExpression\") && callee[\"computed\"] !== true && callee[\"optional\"] !== true) {\n\t\tconst object = callee[\"object\"];\n\t\tconst property = callee[\"property\"];\n\t\treturn isInteropSyntaxNode(object) && object.type === \"Identifier\" && object[\"name\"] === \"__rolldown_runtime__\" && isInteropSyntaxNode(property) && property.type === \"Identifier\" && property[\"name\"] === \"loadExports\" && args.length === 1 && isInteropSyntaxNode(args[0]) && args[0].type === \"Literal\" && typeof args[0][\"value\"] === \"string\";\n\t}\n\treturn false;\n}\nfunction blankPreservingLines(match) {\n\treturn \"\\n\".repeat(match.match(/\\n/g)?.length ?? 0);\n}\nfunction countLines(code) {\n\treturn (code.match(/\\n/g)?.length ?? 0) + 1;\n}\nfunction assertBundleLinesPreserved(before, after, stage) {\n\tconst beforeLines = countLines(before);\n\tconst afterLines = countLines(after);\n\tif (beforeLines !== afterLines) throw new Error(`[vxrn] native bundle post-processing (${stage}) changed the line count (${beforeLines} -> ${afterLines}), which invalidates the source map. Every pass after Rolldown emits the map must preserve lines.`);\n}\nfunction postProcessNativeBundle(code) {\n\tcode = normalizeNativeCommonJSInterop(code);\n\tcode = code.replace(/\\btypeof\\s+import\\.meta\\b/g, \"\\\"object\\\"\");\n\tcode = code.replace(/^[^\\S\\n]*export[^\\S\\n]*\\{[^}]*\\}[^\\S\\n]*;?[^\\S\\n]*$/gm, blankPreservingLines);\n\tcode = code.replace(/^([^\\S\\n]*)export[^\\S\\n]+default[^\\S\\n]+([^;\\n]+);?[^\\S\\n]*$/gm, \"$1$2;\");\n\tcode = code.replace(/^if \\(import\\.meta\\.hot\\).*$/gm, \"\");\n\t{\n\t\tconst idx = code.indexOf(\"NativeAnimatedModule_default ?? NativeAnimatedTurboModule_default;\");\n\t\tif (idx !== -1) {\n\t\t\tconst beforeMarker = code.lastIndexOf(\"NativeAnimatedModule = \", idx);\n\t\t\tif (beforeMarker !== -1) {\n\t\t\t\tconst lineStart = code.lastIndexOf(\"\\n\", beforeMarker);\n\t\t\t\tconst snippet = code.slice(lineStart + 1, beforeMarker + 50);\n\t\t\t\tif (snippet.includes(\"(function()\") || snippet.includes(\"new Proxy\")) {\n\t\t\t\t\tconst afterMarker = code.indexOf(\"})();\", idx);\n\t\t\t\t\tif (afterMarker !== -1) {\n\t\t\t\t\t\tconst end = afterMarker + 5;\n\t\t\t\t\t\tconst removed = code.slice(beforeMarker, end);\n\t\t\t\t\t\tcode = code.slice(0, beforeMarker) + \"NativeAnimatedModule = NativeAnimatedModule_default ?? NativeAnimatedTurboModule_default;\" + blankPreservingLines(removed) + code.slice(end);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn code;\n}\nconst NATIVE_MODULE_SCOPE_MARKER = \"// vxrn: native module scope\";\nconst NATIVE_DEV_RUNTIME_END = \"globalThis.__rolldown_runtime__ = new ReactNativeDevRuntime();\";\nfunction wrapNativeBundleModuleScope(code) {\n\tconst idx = code.indexOf(NATIVE_MODULE_SCOPE_MARKER);\n\tif (idx === -1) throw new Error(\"[vxrn] the dev bundle lost the end of its prelude, so its modules would run at script scope\");\n\treturn code.slice(0, idx) + \";(function() {\" + code.slice(idx) + \"\\n})();\\n\";\n}\nasync function downlevelClassFieldsInBundle(code) {\n\tconst markerIdx = code.indexOf(NATIVE_MODULE_SCOPE_MARKER);\n\tconst endIdx = markerIdx === -1 ? -1 : code.indexOf(NATIVE_DEV_RUNTIME_END, markerIdx);\n\tif (endIdx === -1) throw new Error(\"[vxrn] could not locate the rolldown runtime in the dev bundle\");\n\tconst startIdx = code.indexOf(\"\\n\", markerIdx) + 1;\n\tconst runtimeEnd = endIdx + 62;\n\tconst runtimeSection = code.slice(startIdx, runtimeEnd);\n\tconst originalNewlines = runtimeSection.match(/\\n/g)?.length ?? 0;\n\tconst { transformSync } = await import(\"oxc-transform\");\n\tconst result = transformSync(\"rolldown-runtime.js\", runtimeSection, {\n\t\ttarget: \"es2020\",\n\t\tassumptions: { setPublicClassFields: true }\n\t});\n\tif (result.errors?.length) throw new Error(result.errors.map((e) => e.message).join(\"\\n\"));\n\tconst transformed = result.code.trimEnd();\n\tconst transformedNewlines = transformed.match(/\\n/g)?.length ?? 0;\n\tif (transformedNewlines > originalNewlines) throw new Error(\"[vxrn] Hermes runtime transform added lines and would invalidate the dev source map\");\n\tconst linePreservingRuntime = transformed + \"\\n\".repeat(originalNewlines - transformedNewlines);\n\treturn code.slice(0, startIdx) + linePreservingRuntime + code.slice(runtimeEnd);\n}\nfunction nativeBundlePostProcessPlugin() {\n\treturn {\n\t\tname: \"vxrn:native-post-process\",\n\t\trenderChunk(code) {\n\t\t\tconst processed = postProcessNativeBundle(code);\n\t\t\tassertBundleLinesPreserved(code, processed, \"production\");\n\t\t\treturn {\n\t\t\t\tcode: processed,\n\t\t\t\tmap: null\n\t\t\t};\n\t\t}\n\t};\n}\nasync function createNativeDevEngine(options) {\n\tconst { root, port, host = \"localhost\", platform, serverUrl, plugins: userPlugins = [], onHmrUpdate } = options;\n\tconst { dev, viteImportGlobPlugin } = await import(\"rolldown/experimental\");\n\tconst hmrRuntimeSource = getHmrRuntimeSource();\n\tconst prelude = getNativePrelude({\n\t\tdev: true,\n\t\tplatform,\n\t\tserverUrl: serverUrl || `http://${host}:${port}`\n\t});\n\tconst assetRegistry = createNativeDevAssetRegistry();\n\tlet currentBundle = null;\n\tlet firstBuildError = null;\n\tlet bundleResolve = null;\n\tlet bundleReject = null;\n\tlet bundlePromise = null;\n\tconst virtualEntry = nativeVirtualEntryPlugin(root, {\n\t\tdev: true,\n\t\tplatform,\n\t\tdynamicRoutes: true\n\t});\n\tlet engineWork = Promise.resolve();\n\tconst queueEngineWork = (work) => {\n\t\tconst result = engineWork.then(work, work);\n\t\tengineWork = result.catch(() => {});\n\t\treturn result;\n\t};\n\tconst inputOptions = {\n\t\tinput: VIRTUAL_NATIVE_ENTRY,\n\t\tcwd: root,\n\t\tplatform: \"neutral\",\n\t\tresolve: getNativeResolveConfig(platform),\n\t\ttransform: getNativeTransformConfig(platform, true, root),\n\t\texperimental: {\n\t\t\tdevMode: {\n\t\t\t\timplement: hmrRuntimeSource,\n\t\t\t\thost,\n\t\t\t\tport\n\t\t\t},\n\t\t\tincrementalBuild: true,\n\t\t\tlazyBarrel: true\n\t\t},\n\t\ttreeshake: false,\n\t\tshimMissingExports: true,\n\t\tmoduleTypes: { \".js\": \"jsx\" },\n\t\tplugins: [virtualEntry.plugin, ...getNativePlugins(root, platform, viteImportGlobPlugin, true, void 0, assetRegistry.register, true, userPlugins)]\n\t};\n\tconst outputOptions = {\n\t\t...getNativeOutputOptions(`${prelude}\n${NATIVE_MODULE_SCOPE_MARKER}`, true, false),\n\t\toutro: `\ntry {\n var __WS = (init_WebSocket(), __toCommonJS(WebSocket_exports)).default;\n var __devServer = (init_getDevServer(), __toCommonJS(getDevServer_exports)).default();\n var __hmrUrl = __devServer.url.replace(/^http/, 'ws') + 'hot?platform=${platform}&clientId=' + encodeURIComponent(__rolldown_runtime__.clientId);\n __rolldown_runtime__.setup(new __WS(__hmrUrl));\n} catch(e) {\n // a swallowed failure here leaves the app permanently without Fast Refresh and\n // nothing on screen or in the terminal says so.\n console.error('[vxrn] HMR client failed to start:', (e && e.message) || e);\n}\n`\n\t};\n\tlet outputProcessed = Promise.resolve();\n\tlet engine;\n\tlet routeWatcher;\n\tconst rebuildIfRouteGraphChanged = () => queueEngineWork(async () => {\n\t\tconst { files: knownRoutes, scanFiles, updateFiles } = virtualEntry.routes;\n\t\tconst currentRoutes = scanFiles();\n\t\tif (!(currentRoutes.size !== knownRoutes.size || [...currentRoutes].some((route) => !knownRoutes.has(route)))) return false;\n\t\tupdateFiles(currentRoutes);\n\t\treturn true;\n\t});\n\tengine = await dev(inputOptions, outputOptions, {\n\t\tonOutput: async (result) => {\n\t\t\tlet finishOutput = () => {};\n\t\t\toutputProcessed = new Promise((resolve2) => {\n\t\t\t\tfinishOutput = resolve2;\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait handleOutput(result);\n\t\t\t} finally {\n\t\t\t\tfinishOutput();\n\t\t\t}\n\t\t},\n\t\tonHmrUpdates: async (result) => {\n\t\t\tawait engine?.ensureCurrentBuildFinish();\n\t\t\tif (await rebuildIfRouteGraphChanged()) return;\n\t\t\tif (result instanceof Error) {\n\t\t\t\tconst { removedFiles, registryId } = virtualEntry.routes;\n\t\t\t\tconst errors = result.errors ?? [];\n\t\t\t\tif (registryId && errors.length && errors.every((e) => {\n\t\t\t\t\tif (e.code !== \"UNRESOLVED_IMPORT\" || e.id !== registryId || !e.exporter) return false;\n\t\t\t\t\tconst file = normalizePath(resolve(dirname(e.id), e.exporter));\n\t\t\t\t\treturn removedFiles.has(file);\n\t\t\t\t})) return;\n\t\t\t\tconsole.error(\"[vxrn] HMR error:\", result.message);\n\t\t\t\tonHmrUpdate?.({ type: \"hmr:error\" });\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfor (const { clientId, update } of result.updates) if (update.type === \"Patch\" && update.code) {\n\t\t\t\tawait engine.notifyPayloadDelivered(update.filename);\n\t\t\t\tonHmrUpdate?.({\n\t\t\t\t\ttype: \"hmr:update\",\n\t\t\t\t\tclientId,\n\t\t\t\t\tcode: normalizeNativeCommonJSInterop(update.code),\n\t\t\t\t\tchangedIds: update.changedIds,\n\t\t\t\t\tseq: update.seq\n\t\t\t\t});\n\t\t\t} else if (update.type === \"FullReload\") onHmrUpdate?.({\n\t\t\t\ttype: \"hmr:reload\",\n\t\t\t\tclientId\n\t\t\t});\n\t\t},\n\t\trebuildStrategy: \"never\",\n\t\twatch: { exclude: [\"**/node_modules/.test/**\", \"**/.git/**\"] }\n\t});\n\tasync function handleOutput(result) {\n\t\tif (result instanceof Error) {\n\t\t\tconsole.error(\"[vxrn] native bundle error:\", result.message);\n\t\t\tif (/panic/i.test(result.message)) console.error(\"[vxrn] rolldown itself panicked. Fast Refresh will full-reload until you restart the dev server.\");\n\t\t\tif (!currentBundle) {\n\t\t\t\tfirstBuildError ||= result;\n\t\t\t\tif (bundleReject) {\n\t\t\t\t\tconst reject = bundleReject;\n\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\tbundleReject = null;\n\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\treject(firstBuildError);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tconst chunk = result.output.find((o) => o.type === \"chunk\" && o.isEntry);\n\t\tif (chunk && \"code\" in chunk) {\n\t\t\tfirstBuildError = null;\n\t\t\tlet code;\n\t\t\ttry {\n\t\t\t\tcode = postProcessNativeBundle(chunk.code);\n\t\t\t\tcode = await downlevelClassFieldsInBundle(code);\n\t\t\t\tassertBundleLinesPreserved(chunk.code, code, \"dev\");\n\t\t\t\tcode = wrapNativeBundleModuleScope(code);\n\t\t\t} catch (error) {\n\t\t\t\tconst failure = error instanceof Error ? error : new Error(String(error));\n\t\t\t\tconsole.error(\"[vxrn] native bundle post-processing failed:\", failure.message);\n\t\t\t\tif (!currentBundle) {\n\t\t\t\t\tfirstBuildError = failure;\n\t\t\t\t\tif (bundleReject) {\n\t\t\t\t\t\tconst reject = bundleReject;\n\t\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\t\tbundleReject = null;\n\t\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\t\treject(failure);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!chunk.map) throw new Error(\"[vxrn] rolldown produced no source map for the dev bundle, so /symbolicate cannot resolve a frame\");\n\t\t\tcurrentBundle = {\n\t\t\t\tcode,\n\t\t\t\tmap: chunk.map.toString()\n\t\t\t};\n\t\t\tconsole.info(`[vxrn] native bundle ready (${Math.round(code.length / 1024)}KB)`);\n\t\t\tif (bundleResolve) {\n\t\t\t\tbundleResolve(currentBundle);\n\t\t\t\tbundleResolve = null;\n\t\t\t\tbundleReject = null;\n\t\t\t\tbundlePromise = null;\n\t\t\t}\n\t\t}\n\t}\n\tawait engine.run();\n\tlet routeWatchTarget = virtualEntry.routes.routeRoot;\n\twhile (!statSync(routeWatchTarget, { throwIfNoEntry: false })?.isDirectory()) {\n\t\tconst parent = dirname(routeWatchTarget);\n\t\tif (parent === routeWatchTarget) break;\n\t\trouteWatchTarget = parent;\n\t}\n\tconst normalizedRouteRoot = normalizePath(virtualEntry.routes.routeRoot);\n\trouteWatcher = watch(routeWatchTarget, { recursive: true }, (_eventType, file) => {\n\t\tif (file === null) return;\n\t\tconst changed = normalizePath(resolve(routeWatchTarget, file.toString()));\n\t\tif (changed !== normalizedRouteRoot && !changed.startsWith(`${normalizedRouteRoot}/`)) return;\n\t\trebuildIfRouteGraphChanged().catch((error) => {\n\t\t\tconsole.error(`[vxrn] rebuilding the native route map failed`, error);\n\t\t});\n\t});\n\trouteWatcher.on(\"error\", (error) => {\n\t\tconsole.error(`[vxrn] watching the native route map failed`, error);\n\t});\n\tawait rebuildIfRouteGraphChanged();\n\tconst getBundle = async () => {\n\t\tawait queueEngineWork(async () => {\n\t\t\tawait engine.ensureLatestBuildOutput();\n\t\t\tawait outputProcessed;\n\t\t});\n\t\tif (currentBundle) return currentBundle;\n\t\tif (firstBuildError) throw firstBuildError;\n\t\tif (!bundlePromise) {\n\t\t\tlet timeoutId;\n\t\t\tbundlePromise = new Promise((resolve2, reject) => {\n\t\t\t\tbundleResolve = (value) => {\n\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\tresolve2(value);\n\t\t\t\t};\n\t\t\t\tbundleReject = (error) => {\n\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\treject(error);\n\t\t\t\t};\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\tbundleReject = null;\n\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\treject(/* @__PURE__ */ new Error(\"[vxrn] bundle build timed out after 120s\"));\n\t\t\t\t}, 12e4);\n\t\t\t});\n\t\t}\n\t\treturn bundlePromise;\n\t};\n\treturn {\n\t\tengine,\n\t\tgetBundle,\n\t\tasync getSourceMap() {\n\t\t\tawait outputProcessed;\n\t\t\tif (currentBundle) return currentBundle.map;\n\t\t\treturn (await getBundle()).map;\n\t\t},\n\t\tgetAsset(pathname, hash) {\n\t\t\treturn assetRegistry.resolve(pathname, hash);\n\t\t},\n\t\tasync close() {\n\t\t\trouteWatcher?.close();\n\t\t\tawait engine.close();\n\t\t}\n\t};\n}\nasync function buildNativeBundle(options) {\n\tconst { root, platform, dev = false, serverUrl, entryFile, assetsDest, plugins: userPlugins = [], sourcemap = false, minify = !dev } = options;\n\tconst { build } = await import(\"rolldown\");\n\tconst { viteImportGlobPlugin } = await import(\"rolldown/experimental\");\n\tconst prelude = getNativePrelude({\n\t\tdev,\n\t\tplatform,\n\t\tserverUrl\n\t});\n\tconst chunk = (await build({\n\t\tinput: entryFile ? normalizePath(resolve(root, entryFile)) : VIRTUAL_NATIVE_ENTRY,\n\t\tcwd: root,\n\t\tplatform: \"neutral\",\n\t\tresolve: getNativeResolveConfig(platform),\n\t\ttransform: getNativeTransformConfig(platform, dev, root),\n\t\ttreeshake: !dev,\n\t\texperimental: { lazyBarrel: false },\n\t\tshimMissingExports: true,\n\t\tmoduleTypes: { \".js\": \"jsx\" },\n\t\tplugins: [\n\t\t\t...entryFile ? [] : [nativeVirtualEntryPlugin(root, {\n\t\t\t\tdev,\n\t\t\t\tplatform\n\t\t\t}).plugin],\n\t\t\t...getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, void 0, sourcemap, userPlugins, minify, \"build\"),\n\t\t\tnativeBundlePostProcessPlugin()\n\t\t],\n\t\toutput: {\n\t\t\t...getNativeOutputOptions(prelude, sourcemap, minify),\n\t\t\tformat: \"iife\"\n\t\t}\n\t})).output.find((o) => o.type === \"chunk\" && o.isEntry);\n\tif (!chunk || !(\"code\" in chunk)) throw new Error(\"[vxrn] production build produced no output\");\n\tif (sourcemap && !chunk.map) throw new Error(\"[vxrn] a source map was requested but rolldown produced none for the production bundle\");\n\treturn {\n\t\tcode: chunk.code,\n\t\tmap: sourcemap ? chunk.map?.toString() : void 0\n\t};\n}\nconst VIRTUAL_NATIVE_ENTRY = \"virtual:native-entry\";\nfunction nativeVirtualEntryPlugin(root, opts) {\n\tconst isDev = opts?.dev !== false;\n\tconst useDynamicRouteRegistry = opts.dynamicRoutes === true;\n\tconst resolvedId = normalizePath(resolve(root, \"__virtual-native-entry.tsx\"));\n\tconst entryConfig = globalThis.__vxrnNativeEntryConfig || {};\n\tconst routerRoot = entryConfig.routerRoot || \"app\";\n\tconst flags = entryConfig.flags || {};\n\tconst linking = entryConfig.linking;\n\tconst setupFileImport = (() => {\n\t\tconst sf = entryConfig.setupFile;\n\t\tif (!sf) return \"\";\n\t\tconst perPlatform = sf;\n\t\tconst file = typeof sf === \"string\" ? sf : \"native\" in sf ? sf.native : opts.platform === \"macos\" || opts.platform === \"linux\" ? perPlatform[opts.platform] : sf.ios;\n\t\tif (!file) return \"\";\n\t\tconst resolved = pathToFileURL(resolve(root, file)).href;\n\t\treturn `import ${JSON.stringify(resolved)};`;\n\t})();\n\tconst routeGlobs = [\n\t\t`./${routerRoot}/**/*.tsx`,\n\t\t`./${routerRoot}/**/*.ts`,\n\t\t`!./${routerRoot}/**/*+api.*`,\n\t\t`!./${routerRoot}/**/*.test.*`,\n\t\t`!./${routerRoot}/**/*.d.ts`,\n\t\t`!./${routerRoot}/**/*.server.*`,\n\t\t`!./${routerRoot}/**/_middleware.*`,\n\t\t`!./${routerRoot}/**/*.web.*`,\n\t\t...(entryConfig.ignoredRouteFiles || []).map((pattern) => `!./${routerRoot}/${pattern}`)\n\t];\n\tconst refreshSetup = isDev ? `\n// react-refresh/runtime MUST initialize before React loads\nimport RefreshRuntime from 'react-refresh/runtime';\nRefreshRuntime.injectIntoGlobalHook(globalThis);\nglobalThis.__ReactRefresh = RefreshRuntime;\nglobalThis.$RefreshReg$ = function(type, id) {\n RefreshRuntime.register(type, id);\n};\nglobalThis.$RefreshSig$ = RefreshRuntime.createSignatureFunctionForTransform;\n` : \"\";\n\tconst entryCode = () => `\n${refreshSetup}\n// retain the namespace so rolldown dev eagerly initializes the RN environment\n// before app modules, even when the renderer also requires this entry.\nimport * as ReactNativeEnvironment from 'react-native/setup-env';\nimport NativeWebSocket from 'react-native/Libraries/WebSocket/WebSocket';\nimport DevSettings from 'react-native/Libraries/Utilities/DevSettings';\n${setupFileImport}\n${routeImports}\nimport { createApp } from 'one';\n\nvoid ReactNativeEnvironment;\nglobalThis.WebSocket = NativeWebSocket;\nglobalThis.__VXRN_RELOAD_NATIVE_DEV_BUNDLE__ = function(reason) {\n DevSettings.reload(reason);\n};\n\n// React Native reloads a dev bundle in the existing JS runtime. Advance One's\n// route-cache version so a full reload cannot reuse the previous context.\nglobalThis.__vxrnVersion = (globalThis.__vxrnVersion || 0) + 1;\n\ncreateApp({\n routes: routes,\n routerRoot: ${JSON.stringify(routerRoot)},\n flags: ${JSON.stringify(flags)},\n linking: ${JSON.stringify(linking)},\n});\n\n${routeHmr}\n`;\n\tconst routeRoot = resolve(root, routerRoot);\n\tconst stripDot = (pattern) => pattern.replace(/^\\.\\//, \"\");\n\tconst includeGlobs = routeGlobs.filter((p) => !p.startsWith(\"!\")).map(stripDot);\n\tconst excludeGlobs = routeGlobs.filter((p) => p.startsWith(\"!\")).map((p) => stripDot(p.slice(1)));\n\tconst isRouteFile = (file) => {\n\t\tconst relativeToRoot = normalizePath(relative(root, file));\n\t\treturn micromatch.isMatch(relativeToRoot, includeGlobs) && !micromatch.isMatch(relativeToRoot, excludeGlobs);\n\t};\n\tconst scanFiles = () => {\n\t\tconst files = /* @__PURE__ */ new Set();\n\t\tconst walkRouteRoot = (dir) => {\n\t\t\tfor (const entry of readdirSync(dir, { withFileTypes: true })) {\n\t\t\t\tconst child = resolve(dir, entry.name);\n\t\t\t\tif (entry.isDirectory()) walkRouteRoot(child);\n\t\t\t\telse if (isRouteFile(child)) files.add(normalizePath(child));\n\t\t\t}\n\t\t};\n\t\tif (statSync(routeRoot, { throwIfNoEntry: false })?.isDirectory()) walkRouteRoot(routeRoot);\n\t\treturn files;\n\t};\n\tconst registrySpecifier = `./node_modules/.vxrn/native-routes-${opts.platform}.mjs`;\n\tconst registryPath = resolve(root, registrySpecifier);\n\tconst routes = {\n\t\trouteRoot,\n\t\tfiles: /* @__PURE__ */ new Set(),\n\t\tremovedFiles: /* @__PURE__ */ new Set(),\n\t\tisRouteFile,\n\t\tscanFiles,\n\t\tupdateFiles(files) {\n\t\t\tfor (const file of routes.files) if (!files.has(file)) routes.removedFiles.add(file);\n\t\t\tfor (const file of files) routes.removedFiles.delete(file);\n\t\t\troutes.files = files;\n\t\t\tif (!useDynamicRouteRegistry) return;\n\t\t\tmkdirSync(dirname(registryPath), { recursive: true });\n\t\t\tconst registryDir = realpathSync(dirname(registryPath));\n\t\t\troutes.registryId = join(registryDir, basename(registryPath));\n\t\t\tconst source = `export const routes = {\n${[...files].sort().map((file) => {\n\t\t\t\tconst routeKey = `/${normalizePath(relative(root, file))}`;\n\t\t\t\tlet importPath = normalizePath(relative(registryDir, file));\n\t\t\t\tif (!importPath.startsWith(\".\")) importPath = `./${importPath}`;\n\t\t\t\treturn ` ${JSON.stringify(routeKey)}: () => import(${JSON.stringify(importPath)})`;\n\t\t\t}).join(\",\\n\")}\n}\n`;\n\t\t\tif (!existsSync(registryPath) || readFileSync(registryPath, \"utf8\") !== source) writeFileSync(registryPath, source);\n\t\t}\n\t};\n\troutes.updateFiles(routes.scanFiles());\n\tconst routeImports = useDynamicRouteRegistry ? `import { routes } from ${JSON.stringify(registrySpecifier)};` : `var _routes = import.meta.glob(${JSON.stringify(routeGlobs)}, { exhaustive: true });\n// fix route keys: One expects '/${routerRoot}/...' prefix but import.meta.glob returns './${routerRoot}/...'\nvar routes = {};\nObject.keys(_routes).forEach(function(key) {\n var normalizedKey = key.replace(/^\\\\.\\\\//, '');\n routes['/' + normalizedKey] = _routes[key];\n});`;\n\tconst routeHmr = useDynamicRouteRegistry ? `if (import.meta.hot) {\n import.meta.hot.accept(${JSON.stringify(registrySpecifier)}, function(next) {\n if (globalThis.__VXRN_UPDATE_NATIVE_ROUTES__) {\n globalThis.__VXRN_UPDATE_NATIVE_ROUTES__(next.routes);\n }\n });\n}` : \"\";\n\treturn {\n\t\troutes,\n\t\tplugin: {\n\t\t\tname: \"vxrn:native-virtual-entry\",\n\t\t\tresolveId(id) {\n\t\t\t\tif (id === VIRTUAL_NATIVE_ENTRY) return resolvedId;\n\t\t\t},\n\t\t\tload(id) {\n\t\t\t\tif (id !== resolvedId) return;\n\t\t\t\treturn entryCode();\n\t\t\t}\n\t\t}\n\t};\n}\nfunction nativeAnimatedGuardPlugin() {\n\treturn {\n\t\tname: \"vxrn:native-animated-guard\",\n\t\ttransform(code, id) {\n\t\t\tif (!id.includes(\"animated/NativeAnimatedHelper\")) return;\n\t\t\tconst target = \"const method = nullthrows(NativeAnimatedModule)[methodName];\";\n\t\t\tif (!code.includes(target)) return;\n\t\t\treturn {\n\t\t\t\tcode: code.replace(target, `${target} if (typeof method !== 'function') return;`),\n\t\t\t\tmap: {\n\t\t\t\t\tversion: 3,\n\t\t\t\t\tsources: [id],\n\t\t\t\t\tsourcesContent: [code],\n\t\t\t\t\tnames: [],\n\t\t\t\t\tmappings: code.split(\"\\n\").map((_, index) => index === 0 ? \"AAAA\" : \"AACA\").join(\";\")\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t};\n}\nfunction serverFileExclusionPlugin() {\n\treturn {\n\t\tname: \"vxrn:server-file-exclusion\",\n\t\tload(id) {\n\t\t\tif (/\\.server\\.\\w+$/.test(id)) return {\n\t\t\t\tcode: \"export default undefined;\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t\tif (/[\\\\/]_middleware\\.\\w+$/.test(id)) return {\n\t\t\t\tcode: \"export default undefined;\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction missingDynamicImportPlugin() {\n\tconst PREFIX = \"\\0vxrn-missing-module:\";\n\treturn {\n\t\tname: \"vxrn:missing-dynamic-import\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (options.kind !== \"dynamic-import\") return;\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tif (source.startsWith(\"\\0\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (resolved) return resolved;\n\t\t\treturn {\n\t\t\t\tid: `${PREFIX}${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (!id.startsWith(PREFIX)) return;\n\t\t\treturn {\n\t\t\t\tcode: `throw new Error(${JSON.stringify(`Cannot find module '${id.slice(21)}'`)});`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction environmentGuardPlugin() {\n\tconst THROWING = [\n\t\t\"server-only\",\n\t\t\"client-only\",\n\t\t\"web-only\"\n\t];\n\tconst NOOP = [\"native-only\"];\n\treturn {\n\t\tname: \"vxrn:environment-guard\",\n\t\tresolveId(source) {\n\t\t\tif (THROWING.includes(source)) return {\n\t\t\t\tid: `\\0env-guard-throw:${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t\tif (NOOP.includes(source)) return {\n\t\t\t\tid: `\\0env-guard-noop:${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (id.startsWith(\"\\0env-guard-throw:\")) return {\n\t\t\t\tcode: `throw new Error(\"Cannot import '${id.slice(17)}' in a native bundle.\");`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t\tif (id.startsWith(\"\\0env-guard-noop:\")) return {\n\t\t\t\tcode: \"\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction hmrClientNoopPlugin() {\n\tconst RN_HMR_CLIENT_RE = /(^|[\\\\/])Utilities[\\\\/]HMRClient(\\.[cm]?[jt]sx?)?$/;\n\treturn {\n\t\tname: \"vxrn:hmr-client-noop\",\n\t\tresolveId(source, importer) {\n\t\t\tif ((source.startsWith(\"react-native/\") || importer != null && /(^|[\\\\/])react-native[\\\\/]/.test(importer)) && RN_HMR_CLIENT_RE.test(source)) return {\n\t\t\t\tid: \"\\0vxrn-hmr-client-noop\",\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (id === \"\\0vxrn-hmr-client-noop\") return {\n\t\t\t\tcode: `const HMRClient = { setup() {}, enable() {}, disable() {}, registerBundle() {}, log() {}, isEnabled() { return false } }\nexport default HMRClient`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction nativeIdentityAliasPlugin(platform) {\n\tconst packages = /* @__PURE__ */ new Map();\n\tlet resolver;\n\tconst findPackage = (directory) => {\n\t\tif (packages.has(directory)) return packages.get(directory);\n\t\tlet result = null;\n\t\tconst manifest = join(directory, \"package.json\");\n\t\tif (existsSync(manifest)) try {\n\t\t\tconst field = JSON.parse(readFileSync(manifest, \"utf8\"))[\"react-native\"];\n\t\t\tresult = {\n\t\t\t\troot: directory,\n\t\t\t\taliases: field && typeof field === \"object\" ? field : {}\n\t\t\t};\n\t\t} catch {}\n\t\telse {\n\t\t\tconst parent = dirname(directory);\n\t\t\tif (parent !== directory) result = findPackage(parent);\n\t\t}\n\t\tpackages.set(directory, result);\n\t\treturn result;\n\t};\n\treturn {\n\t\tname: \"vxrn:native-identity-alias\",\n\t\tasync resolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\")) return;\n\t\t\tconst pkg = findPackage(dirname(importer));\n\t\t\tif (!pkg) return;\n\t\t\tconst key = `./${normalizePath(relative(pkg.root, resolve(dirname(importer), source)))}`;\n\t\t\tif (pkg.aliases[key] !== key) return;\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\taliasFields: []\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst result = resolver.sync(dirname(importer), source);\n\t\t\tif (result.path) return result.path;\n\t\t}\n\t};\n}\nfunction nativeExportsPrecedencePlugin(root, platform) {\n\tconst manifests = /* @__PURE__ */ new Map();\n\tconst readManifest = (directory) => {\n\t\tif (!manifests.has(directory)) {\n\t\t\tlet manifest = null;\n\t\t\ttry {\n\t\t\t\tmanifest = JSON.parse(readFileSync(join(directory, \"package.json\"), \"utf8\"));\n\t\t\t} catch {}\n\t\t\tmanifests.set(directory, manifest);\n\t\t}\n\t\treturn manifests.get(directory);\n\t};\n\tconst resolvers = /* @__PURE__ */ new Map();\n\treturn {\n\t\tname: \"vxrn:native-exports-precedence\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (!resolved || resolved.external || resolved.id.startsWith(\"\\0\")) return resolved;\n\t\t\tconst name = source.split(\"/\").slice(0, source.startsWith(\"@\") ? 2 : 1).join(\"/\");\n\t\t\tlet directory = dirname(resolved.id);\n\t\t\twhile (readManifest(directory)?.name !== name) {\n\t\t\t\tif (dirname(directory) === directory) return resolved;\n\t\t\t\tdirectory = dirname(directory);\n\t\t\t}\n\t\t\tconst exportsMap = JSON.stringify(readManifest(directory)?.exports ?? null);\n\t\t\tif (!exportsMap.includes(\"\\\"react-native\\\"\") || !exportsMap.includes(\"\\\"browser\\\"\")) return resolved;\n\t\t\tconst kind = options.kind === \"require-call\" ? \"require\" : \"import\";\n\t\t\tlet resolver = resolvers.get(kind);\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\tconditionNames: [\n\t\t\t\t\t\t\"react-native\",\n\t\t\t\t\t\tkind,\n\t\t\t\t\t\t\"default\"\n\t\t\t\t\t]\n\t\t\t\t});\n\t\t\t\tresolvers.set(kind, resolver);\n\t\t\t}\n\t\t\tconst native = resolver.sync(importer ? dirname(importer) : root, source);\n\t\t\tif (!native.path || native.path === resolved.id) return resolved;\n\t\t\treturn this.resolve(native.path, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t}\n\t};\n}\nfunction nativeDeclarationAliasPlugin(root, platform) {\n\tconst resolvers = /* @__PURE__ */ new Map();\n\treturn {\n\t\tname: \"vxrn:declaration-alias\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (!resolved || resolved.external || !/\\.d\\.[cm]?ts$/.test(resolved.id)) return resolved;\n\t\t\tconst kind = options.kind === \"require-call\" ? \"require\" : \"import\";\n\t\t\tlet resolver = resolvers.get(kind);\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\tconditionNames: [\n\t\t\t\t\t\t\"react-native\",\n\t\t\t\t\t\t\"browser\",\n\t\t\t\t\t\tkind,\n\t\t\t\t\t\t\"default\"\n\t\t\t\t\t]\n\t\t\t\t});\n\t\t\t\tresolvers.set(kind, resolver);\n\t\t\t}\n\t\t\tconst runtime = resolver.sync(importer ? dirname(importer) : root, source);\n\t\t\tif (!runtime.path || /\\.d\\.[cm]?ts$/.test(runtime.path)) this.error(`Native import ${source} resolves to a declaration without a runtime export`);\n\t\t\treturn this.resolve(runtime.path, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t}\n\t};\n}\nfunction nativeAssetRegistryPlugin(root) {\n\tlet registryPath;\n\treturn {\n\t\tname: \"vxrn:asset-registry\",\n\t\tasync resolveId(source, importer) {\n\t\t\tif (source !== \"react-native/asset-registry\" && source !== \"@react-native/assets-registry/registry\") return;\n\t\t\tif (registryPath === void 0) try {\n\t\t\t\tconst reactNativeRoot = dirname(resolvePath(\"react-native/package.json\", root));\n\t\t\t\tconst exportedRegistry = join(reactNativeRoot, \"src/asset-registry.js\");\n\t\t\t\tregistryPath = existsSync(exportedRegistry) ? exportedRegistry : resolvePath(\"@react-native/assets-registry/registry\", reactNativeRoot);\n\t\t\t} catch {\n\t\t\t\tregistryPath = null;\n\t\t\t}\n\t\t\tif (registryPath) return this.resolve(normalizePath(registryPath), importer, { skipSelf: true });\n\t\t}\n\t};\n}\nfunction nativePackageDedupePlugin(root) {\n\tconst packages = /* @__PURE__ */ new Set([\n\t\t...dedupe,\n\t\t\"react-native-worklets\",\n\t\t\"react-native-nitro-modules\"\n\t]);\n\treturn {\n\t\tname: \"vxrn:native-package-dedupe\",\n\t\tasync resolveId(source) {\n\t\t\tconst parts = source.split(\"/\");\n\t\t\tconst packageName = source.startsWith(\"@\") ? parts.slice(0, 2).join(\"/\") : parts[0];\n\t\t\tif (!packages.has(packageName)) return;\n\t\t\treturn this.resolve(source, join(root, \"package.json\"), { skipSelf: true });\n\t\t}\n\t};\n}\nfunction reactNativeDedupePlugin(root) {\n\tlet reactNativeRoot;\n\treturn {\n\t\tname: \"vxrn:react-native-dedupe\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source !== \"react-native\" && !source.startsWith(\"react-native/\")) return;\n\t\t\tif (reactNativeRoot === void 0) try {\n\t\t\t\treactNativeRoot = realpathSync(dirname(resolvePath(\"react-native/package.json\", root)));\n\t\t\t} catch {\n\t\t\t\treactNativeRoot = null;\n\t\t\t}\n\t\t\tif (!reactNativeRoot) return;\n\t\t\tconst exported = await this.resolve(source, join(root, \"package.json\"), {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (exported) return exported;\n\t\t\tconst subpath = source === \"react-native\" ? \"index.js\" : source.slice(13);\n\t\t\tconst unified = await this.resolve(normalizePath(resolve(reactNativeRoot, subpath)), importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (unified) return unified;\n\t\t\tthis.error(`[vxrn] '${source}' is missing from the app's react-native (${reactNativeRoot}), imported by '${importer}'. refusing the nested copy so the native runtime stays a singleton.`);\n\t\t}\n\t};\n}\nfunction cssStubPlugin() {\n\treturn {\n\t\tname: \"vxrn:css-stub\",\n\t\tload: { handler(id) {\n\t\t\tif (id.endsWith(\".css\")) return {\n\t\t\t\tcode: \"\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction vxrnCompilerPlugin(platform, dev, projectRoot = process.cwd(), sourceMaps = false, trace) {\n\tlet compiler = null;\n\tconst isRefreshCandidate = (id) => dev && !id.includes(\"node_modules\") && !id.includes(\"__virtual-native-entry\") && /\\.[tj]sx?$/.test(id);\n\treturn {\n\t\tname: \"vxrn:compiler\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tlet active = \"transform\";\n\t\t\tlet failed = false;\n\t\t\tlet mark;\n\t\t\tif (trace) try {\n\t\t\t\tconst record = trace(id);\n\t\t\t\tif (record) mark = (stage, status) => {\n\t\t\t\t\tactive = status === \"start\" ? stage : \"transform\";\n\t\t\t\t\ttry {\n\t\t\t\t\t\trecord(stage, status);\n\t\t\t\t\t} catch {}\n\t\t\t\t};\n\t\t\t} catch {}\n\t\t\tmark?.(\"transform\", \"start\");\n\t\t\ttry {\n\t\t\t\tconst needsRefresh = isRefreshCandidate(id);\n\t\t\t\tif (!compiler) {\n\t\t\t\t\tmark?.(\"compiler-import\", \"start\");\n\t\t\t\t\tcompiler = await import(\"@vxrn/compiler\");\n\t\t\t\t\tmark?.(\"compiler-import\", \"end\");\n\t\t\t\t}\n\t\t\t\tconst props = {\n\t\t\t\t\tid,\n\t\t\t\t\tcode,\n\t\t\t\t\tprojectRoot,\n\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\tenvironment: platform === \"android\" ? \"android\" : \"ios\",\n\t\t\t\t\treactForRNVersion: \"19\"\n\t\t\t\t};\n\t\t\t\tmark?.(\"options\", \"start\");\n\t\t\t\tlet babelOptions = compiler.getBabelOptions(props);\n\t\t\t\tmark?.(\"options\", \"end\");\n\t\t\t\tlet curCode = code;\n\t\t\t\tconst intermediateMaps = [];\n\t\t\t\tconst isWorkletPlugin = (entry) => {\n\t\t\t\t\tif (!entry) return false;\n\t\t\t\t\tconst name = typeof entry === \"string\" ? entry : Array.isArray(entry) ? entry[0] : null;\n\t\t\t\t\treturn typeof name === \"string\" && (name.includes(\"react-native-worklets\") || name.includes(\"react-native-reanimated\"));\n\t\t\t\t};\n\t\t\t\tconst workletEntry = babelOptions?.plugins?.find(isWorkletPlugin);\n\t\t\t\tconst workletPluginOptions = Array.isArray(workletEntry) ? workletEntry[1] : void 0;\n\t\t\t\tconst useWorklets = compiler.isNativeWorkletsEnabled() && (Boolean(workletEntry) || compiler.shouldTransformWorklets({\n\t\t\t\t\tid,\n\t\t\t\t\tcode\n\t\t\t\t}));\n\t\t\t\tconst compilerPluginIndex = babelOptions?.plugins?.findIndex((x) => Array.isArray(x) && x[0] === \"babel-plugin-react-compiler\") ?? -1;\n\t\t\t\tif (compilerPluginIndex !== -1) {\n\t\t\t\t\tif (useWorklets) {\n\t\t\t\t\t\tmark?.(\"worklets-prepare\", \"start\");\n\t\t\t\t\t\tconst prepared = compiler.prepareWorkletsForReactCompiler(id, curCode, sourceMaps);\n\t\t\t\t\t\tmark?.(\"worklets-prepare\", \"end\");\n\t\t\t\t\t\tif (prepared) {\n\t\t\t\t\t\t\tcurCode = prepared.code;\n\t\t\t\t\t\t\tif (prepared.map) intermediateMaps.push(prepared.map);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst compilerPluginOptions = babelOptions.plugins[compilerPluginIndex][1] || {};\n\t\t\t\t\tif (!(compilerPluginOptions.compiler === \"babel\" || process.env.ONE_REACT_COMPILER === \"babel\" || process.env.VXRN_REACT_COMPILER === \"babel\")) {\n\t\t\t\t\t\tmark?.(\"oxc-react-compiler\", \"start\");\n\t\t\t\t\t\tconst compilerOut = await compiler.transformOxcReactCompiler(id, curCode, compilerPluginOptions, sourceMaps);\n\t\t\t\t\t\tmark?.(\"oxc-react-compiler\", \"end\");\n\t\t\t\t\t\tif (compilerOut?.code) {\n\t\t\t\t\t\t\tcurCode = compilerOut.code;\n\t\t\t\t\t\t\tif (sourceMaps && compilerOut.map) intermediateMaps.push(compilerOut.map);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbabelOptions.plugins.splice(compilerPluginIndex, 1);\n\t\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (useWorklets) {\n\t\t\t\t\tmark?.(\"worklets\", \"start\");\n\t\t\t\t\tconst workletOut = await compiler.transformWorklets(id, curCode, sourceMaps, {\n\t\t\t\t\t\tprojectRoot,\n\t\t\t\t\t\t...workletPluginOptions\n\t\t\t\t\t});\n\t\t\t\t\tmark?.(\"worklets\", \"end\");\n\t\t\t\t\tif (workletOut?.code) {\n\t\t\t\t\t\tcurCode = workletOut.code;\n\t\t\t\t\t\tif (sourceMaps && workletOut.map) intermediateMaps.push(workletOut.map);\n\t\t\t\t\t}\n\t\t\t\t\tif (babelOptions?.plugins) {\n\t\t\t\t\t\tbabelOptions.plugins = babelOptions.plugins.filter((entry) => !isWorkletPlugin(entry));\n\t\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!babelOptions && !needsRefresh) {\n\t\t\t\t\tif (curCode !== code) {\n\t\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (sourceMaps && babelOptions) {\n\t\t\t\t\tbabelOptions = {\n\t\t\t\t\t\t...babelOptions,\n\t\t\t\t\t\tsourceMaps: true,\n\t\t\t\t\t\tsourceFileName: id\n\t\t\t\t\t};\n\t\t\t\t\tdelete babelOptions.inputSourceMap;\n\t\t\t\t}\n\t\t\t\tif (babelOptions) {\n\t\t\t\t\tmark?.(\"babel\", \"start\");\n\t\t\t\t\tconst result = await compiler.transformBabel(id, curCode, babelOptions);\n\t\t\t\t\tmark?.(\"babel\", \"end\");\n\t\t\t\t\tif (result?.code) {\n\t\t\t\t\t\tcurCode = result.code;\n\t\t\t\t\t\tif (sourceMaps && result.map) intermediateMaps.push(result.map);\n\t\t\t\t\t\tif (!needsRefresh) {\n\t\t\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (needsRefresh) {\n\t\t\t\t\tmark?.(\"refresh-import\", \"start\");\n\t\t\t\t\tconst { transformSync } = await import(\"oxc-transform-react\");\n\t\t\t\t\tmark?.(\"refresh-import\", \"end\");\n\t\t\t\t\tconst jsxImportSource = compiler.configuration?.enableNativewind && !id.includes(\"node_modules\") ? \"nativewind\" : \"react\";\n\t\t\t\t\tmark?.(\"refresh\", \"start\");\n\t\t\t\t\tconst res = transformSync(id, curCode, {\n\t\t\t\t\t\tjsx: {\n\t\t\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\t\t\truntime: \"automatic\",\n\t\t\t\t\t\t\timportSource: jsxImportSource,\n\t\t\t\t\t\t\trefresh: {\n\t\t\t\t\t\t\t\trefreshReg: \"__vxrnRefreshReg\",\n\t\t\t\t\t\t\t\trefreshSig: \"__vxrnRefreshSig\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\treactCompiler: false,\n\t\t\t\t\t\tsourcemap: sourceMaps\n\t\t\t\t\t});\n\t\t\t\t\tif (res.fatal) throw new Error(`[vxrn:compiler] oxc react transform failed on ${id}: ${(res.errors ?? []).map((e) => e.message ?? String(e)).join(\", \")}`);\n\t\t\t\t\tmark?.(\"refresh\", \"end\");\n\t\t\t\t\tconst header = `var __prevRefreshReg = globalThis.$RefreshReg$;\nvar __prevRefreshSig = globalThis.$RefreshSig$;\nif (globalThis.__ReactRefresh) {\n globalThis.$RefreshReg$ = function(type, id) {\n globalThis.__ReactRefresh.register(type, \"${id.replace(/\\\\/g, \"\\\\\\\\\").replace(/\"/g, \"\\\\\\\"\")}\" + \" \" + id);\n };\n globalThis.$RefreshSig$ = globalThis.__ReactRefresh.createSignatureFunctionForTransform;\n}\n// keep registration calls local so rolldown retains them in the initial bundle.\nvar __vxrnRefreshReg = globalThis.$RefreshReg$;\nvar __vxrnRefreshSig = globalThis.$RefreshSig$;\n\n`;\n\t\t\t\t\tconst footer = `\n\nglobalThis.$RefreshReg$ = __prevRefreshReg;\nglobalThis.$RefreshSig$ = __prevRefreshSig;\nif (import.meta.hot) {\n import.meta.hot.acceptReactRefresh(function() {\n if (globalThis.__ReactRefresh) {\n setTimeout(function() { globalThis.__ReactRefresh.performReactRefresh(); }, 30);\n }\n });\n}\n`;\n\t\t\t\t\tlet out;\n\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\tif (sourceMaps) {\n\t\t\t\t\t\tconst MagicString = (await import(\"magic-string\")).default;\n\t\t\t\t\t\tconst ms = new MagicString(res.code);\n\t\t\t\t\t\tms.prepend(header);\n\t\t\t\t\t\tms.append(footer);\n\t\t\t\t\t\tout = ms.toString();\n\t\t\t\t\t\tconst allMaps = [\n\t\t\t\t\t\t\tms.generateMap({\n\t\t\t\t\t\t\t\tsource: id,\n\t\t\t\t\t\t\t\thires: true\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tres.map,\n\t\t\t\t\t\t\t...intermediateMaps.slice().reverse()\n\t\t\t\t\t\t].filter(Boolean);\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tfinalMap = remapping(allMaps, () => null);\n\t\t\t\t\t} else out = header + res.code + footer;\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcode: out,\n\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tfailed = true;\n\t\t\t\tif (active !== \"transform\") mark?.(active, \"error\");\n\t\t\t\tthrow error;\n\t\t\t} finally {\n\t\t\t\tmark?.(\"transform\", failed ? \"error\" : \"end\");\n\t\t\t}\n\t\t}\n\t};\n}\nfunction mixedNativeModulePlugin(sourceMaps) {\n\treturn {\n\t\tname: \"vxrn:mixed-native-module\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id) || id.includes(\"\\0\")) return;\n\t\t\tconst { transformMixedNativeModule } = await import(\"@vxrn/compiler\");\n\t\t\treturn transformMixedNativeModule(code, id, sourceMaps);\n\t\t}\n\t};\n}\nfunction flowStripPlugin() {\n\treturn {\n\t\tname: \"vxrn:flow-strip\",\n\t\ttransform: { async handler(code, id) {\n\t\t\tif (!shouldStripFlow(id, code)) return;\n\t\t\tconst { stripFlowTypes } = await import(\"@vxrn/compiler\");\n\t\t\tconst result = await stripFlowTypes(id, code);\n\t\t\treturn {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: result.map\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction assetPlugin(opts) {\n\tconst assetRegex = new RegExp(`\\\\.(?:${DEFAULT_ASSET_EXTS.join(\"|\")})$`);\n\treturn {\n\t\tname: \"vxrn:asset\",\n\t\tload: { async handler(id) {\n\t\t\tif (!assetRegex.test(id)) return;\n\t\t\tconst assetData = await getNativeAssetData(id, opts.root, opts.platform);\n\t\t\topts.onAsset?.(assetData);\n\t\t\tif (opts.assetsDest) copyNativeAssetFiles(assetData, opts.assetsDest, opts.platform);\n\t\t\treturn {\n\t\t\t\tcode: `module.exports = require('react-native/asset-registry').registerAsset(${JSON.stringify(assetData)});`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction createNativeDevAssetRegistry() {\n\tconst assets = /* @__PURE__ */ new Map();\n\treturn {\n\t\tregister(asset) {\n\t\t\tfor (const [index, scale] of asset.scales.entries()) {\n\t\t\t\tconst filePath = asset.files[index];\n\t\t\t\tif (!filePath) continue;\n\t\t\t\tconst fileName = `${asset.name}${scale === 1 ? \"\" : `@${scale}x`}.${asset.type}`;\n\t\t\t\tassets.set(`${asset.httpServerLocation}/${fileName}`, {\n\t\t\t\t\tfilePath,\n\t\t\t\t\thash: asset.hash,\n\t\t\t\t\ttype: asset.type\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresolve(pathname, hash) {\n\t\t\tconst asset = assets.get(pathname);\n\t\t\tif (!asset || hash !== void 0 && hash !== asset.hash) return;\n\t\t\treturn asset;\n\t\t}\n\t};\n}\nconst NATIVE_IMAGE_EXTS = /* @__PURE__ */ new Set([\n\t\"png\",\n\t\"jpg\",\n\t\"jpeg\",\n\t\"gif\",\n\t\"webp\",\n\t\"bmp\",\n\t\"psd\",\n\t\"svg\",\n\t\"tiff\",\n\t\"ktx\"\n]);\nfunction parseNativeAssetName(filePath) {\n\tconst type = extname(filePath).slice(1);\n\tif (!type) return;\n\tconst stem = basename(filePath, `.${type}`);\n\tconst platformMatch = stem.match(/^(.*)\\.(ios|android)$/);\n\tconst platform = platformMatch?.[2];\n\tconst scaleMatch = (platformMatch?.[1] ?? stem).match(/^(.+?)(?:@([\\d.]+)x)?$/);\n\tif (!scaleMatch) return;\n\tconst scale = scaleMatch[2] === void 0 ? 1 : Number.parseFloat(scaleMatch[2]);\n\tif (!Number.isFinite(scale) || scale <= 0) return;\n\treturn {\n\t\tname: scaleMatch[1],\n\t\tscale,\n\t\tplatform,\n\t\ttype\n\t};\n}\nfunction getNativeAssetUrlDirectory(root, assetDirectory) {\n\tconst safeDirectory = relative(realpathSync(root), realpathSync(assetDirectory)).replace(/\\\\/g, \"/\").split(\"/\").filter((segment) => segment && segment !== \".\").map((segment) => segment === \"..\" ? \"_\" : segment).join(\"/\");\n\treturn safeDirectory ? `/assets/${safeDirectory}` : \"/assets\";\n}\nasync function getNativeAssetData(id, root, platform) {\n\tconst requested = parseNativeAssetName(id);\n\tif (!requested) throw new Error(`[vxrn] invalid native asset path: ${id}`);\n\tconst assetDirectory = dirname(id);\n\tconst filesByScale = /* @__PURE__ */ new Map();\n\tfor (const fileName of readdirSync(assetDirectory)) {\n\t\tconst candidate = parseNativeAssetName(fileName);\n\t\tif (!candidate || candidate.name !== requested.name || candidate.type !== requested.type || candidate.platform !== void 0 && candidate.platform !== platform) continue;\n\t\tconst platformSpecific = candidate.platform === platform;\n\t\tconst existing = filesByScale.get(candidate.scale);\n\t\tif (!existing || platformSpecific && !existing.platformSpecific) filesByScale.set(candidate.scale, {\n\t\t\tfile: join(assetDirectory, fileName),\n\t\t\tplatformSpecific\n\t\t});\n\t}\n\tconst scales = [...filesByScale.keys()].sort((a, b) => a - b);\n\tconst files = scales.map((scale) => filesByScale.get(scale).file);\n\tif (files.length === 0) throw new Error(`[vxrn] native asset has no files for ${platform}: ${id}`);\n\tconst hash = createHash(\"md5\");\n\tfor (const file of files) hash.update(readFileSync(file));\n\tconst assetData = {\n\t\t__packager_asset: true,\n\t\tname: requested.name,\n\t\ttype: requested.type,\n\t\tscales,\n\t\tfiles,\n\t\thttpServerLocation: getNativeAssetUrlDirectory(root, assetDirectory),\n\t\tfileSystemLocation: assetDirectory,\n\t\thash: hash.digest(\"hex\")\n\t};\n\tif (NATIVE_IMAGE_EXTS.has(requested.type)) try {\n\t\tconst { imageSize } = await import(\"image-size\");\n\t\tconst dims = imageSize(readFileSync(files[0]));\n\t\tassetData.width = dims.width === void 0 ? void 0 : dims.width / scales[0];\n\t\tassetData.height = dims.height === void 0 ? void 0 : dims.height / scales[0];\n\t} catch {}\n\treturn assetData;\n}\nfunction getIOSAssetScales(scales) {\n\tconst supported = scales.filter((scale) => scale === 1 || scale === 2 || scale === 3);\n\tif (supported.length > 0 || scales.length === 0) return supported;\n\treturn [scales.find((scale) => scale > 3) ?? scales[scales.length - 1]];\n}\nfunction getAndroidAssetDirectory(type, scale) {\n\tif (!(/* @__PURE__ */ new Set([\n\t\t\"gif\",\n\t\t\"heic\",\n\t\t\"heif\",\n\t\t\"jpeg\",\n\t\t\"jpg\",\n\t\t\"ktx\",\n\t\t\"png\",\n\t\t\"webp\",\n\t\t\"xml\"\n\t])).has(type)) return \"raw\";\n\tconst density = (/* @__PURE__ */ new Map([\n\t\t[.75, \"ldpi\"],\n\t\t[1, \"mdpi\"],\n\t\t[1.5, \"hdpi\"],\n\t\t[2, \"xhdpi\"],\n\t\t[3, \"xxhdpi\"],\n\t\t[4, \"xxxhdpi\"]\n\t])).get(scale);\n\tif (density) return `drawable-${density}`;\n\treturn `drawable-${Math.round(scale * 160)}dpi`;\n}\nfunction getAndroidAssetName(asset) {\n\treturn `${asset.httpServerLocation}/${asset.name}`.toLowerCase().replace(/^\\//, \"\").replace(/\\//g, \"_\").replace(/([^a-z0-9_])/g, \"\").replace(/^assets_/, \"\");\n}\nfunction copyNativeAssetFiles(asset, assetsDest, platform) {\n\tconst validIOSScales = new Set(getIOSAssetScales(asset.scales));\n\tfor (const [index, scale] of asset.scales.entries()) {\n\t\tif (platform === \"ios\" && !validIOSScales.has(scale)) continue;\n\t\tconst destination = platform === \"android\" ? join(assetsDest, getAndroidAssetDirectory(asset.type, scale), `${getAndroidAssetName(asset)}.${asset.type}`) : join(assetsDest, asset.httpServerLocation.slice(1), `${asset.name}${scale === 1 ? \"\" : `@${scale}x`}.${asset.type}`);\n\t\tmkdirSync(dirname(destination), { recursive: true });\n\t\tcopyFileSync(asset.files[index], destination);\n\t}\n}\nfunction hermesCompatSWCPlugin(dev, sourceMaps = false, keepNames = false) {\n\tlet oxc = null;\n\treturn {\n\t\tname: \"vxrn:hermes-compat\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tconst hasClass = /\\bclass(?:\\s|\\{)/.test(code);\n\t\t\tconst hasAsync = code.includes(\"async\");\n\t\t\tconst hasBlockScopedBinding = /\\b(?:const|let)\\s/.test(code);\n\t\t\tif (!hasClass && !hasAsync && !hasBlockScopedBinding) return;\n\t\t\tlet output;\n\t\t\tif (code.length <= 5e5 || hasClass) {\n\t\t\t\tif (!oxc) oxc = await import(\"oxc-transform\");\n\t\t\t\tconst lang = /\\.[cm]?ts$/.test(id) ? \"ts\" : id.endsWith(\".tsx\") ? \"tsx\" : \"jsx\";\n\t\t\t\tconst result = oxc.transformSync(id, code, {\n\t\t\t\t\tlang,\n\t\t\t\t\ttarget: \"es2020\",\n\t\t\t\t\tassumptions: { setPublicClassFields: true },\n\t\t\t\t\tjsx: \"preserve\",\n\t\t\t\t\tsourcemap: sourceMaps,\n\t\t\t\t\tsourceType: id.endsWith(\".cjs\") ? \"script\" : \"module\"\n\t\t\t\t});\n\t\t\t\tif (result.errors?.length) {\n\t\t\t\t\tconst err = result.errors[0];\n\t\t\t\t\tthrow new Error(err.message + (err.codeframe ? `\n${err.codeframe}` : \"\"));\n\t\t\t\t}\n\t\t\t\toutput = {\n\t\t\t\t\tcode: result.code,\n\t\t\t\t\tmap: sourceMaps ? result.map : void 0\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (hasClass || hasBlockScopedBinding) {\n\t\t\t\tconst { transformHermesClasses } = await import(\"@vxrn/compiler\");\n\t\t\t\tconst classes = await transformHermesClasses(output?.code ?? code, id, sourceMaps);\n\t\t\t\tif (classes) {\n\t\t\t\t\tif (classes.map && output?.map) {\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tclasses.map = remapping([classes.map, output.map], () => null);\n\t\t\t\t\t}\n\t\t\t\t\toutput = classes;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst lowered = await transformHermesAsync(output?.code ?? code, id, sourceMaps, void 0, keepNames);\n\t\t\tif (!lowered) return output;\n\t\t\tif (lowered.map && output?.map) {\n\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\tlowered.map = remapping([lowered.map, output.map], () => null);\n\t\t\t}\n\t\t\treturn lowered;\n\t\t}\n\t};\n}\nconst hermesCompatPlugin = hermesCompatSWCPlugin;\nfunction hermesLoopsPlugin(sourceMaps = false) {\n\tlet compiler = null;\n\treturn {\n\t\tname: \"vxrn:hermes-loops\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tif (!compiler) compiler = await import(\"@vxrn/compiler\");\n\t\t\tconst result = compiler.transformHermesLoops(code, id);\n\t\t\tif (!result) return;\n\t\t\tif (!sourceMaps) return {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: null\n\t\t\t};\n\t\t\tif (result.maps.length === 1) return {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: result.maps[0]\n\t\t\t};\n\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\treturn {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: remapping(result.maps.slice().reverse(), () => null)\n\t\t\t};\n\t\t}\n\t};\n}\nfunction getHmrRuntimeSource() {\n\treturn `\n// vxrn HMR runtime for rolldown devMode\nvar BaseDevRuntime = DevRuntime;\n\nclass ReactNativeDevRuntime extends BaseDevRuntime {\n constructor() {\n var clientId = 'rn-' + Date.now() + '-' + Math.random().toString(36).slice(2);\n super(clientId);\n this._socket = null;\n this.moduleHotContexts = {};\n this.lastSeq = 0;\n }\n\n createModuleHotContext(moduleId) {\n var runtime = this;\n var ctx = {\n acceptCallbacks: [],\n reactRefreshAcceptCallback: null,\n accept: function(deps, callback) {\n if (typeof deps === 'function' || !deps) {\n ctx.acceptCallbacks.push({\n deps: [moduleId],\n fn: function(modules) { if (typeof deps === 'function') deps(modules[0]); }\n });\n } else if (typeof deps === 'string') {\n ctx.acceptCallbacks.push({\n deps: [deps],\n fn: function(modules) { if (callback) callback(modules[0]); }\n });\n } else if (Array.isArray(deps)) {\n ctx.acceptCallbacks.push({ deps: deps, fn: callback || function() {} });\n }\n },\n acceptReactRefresh: function(callback) {\n ctx.reactRefreshAcceptCallback = callback;\n },\n invalidate: function() { runtime.requestReload('module invalidated: ' + moduleId); },\n on: function() {},\n off: function() {},\n send: function() {},\n get refresh() { return globalThis.__ReactRefresh; },\n get refreshUtils() {\n return {\n isReactRefreshBoundary: function(exports) {\n if (!globalThis.__ReactRefresh) return false;\n if (globalThis.__ReactRefresh.isLikelyComponentType(exports)) return true;\n if (!exports || typeof exports !== 'object') return false;\n var hasExports = false, allComponents = true;\n for (var key in exports) {\n hasExports = true;\n if (key === '__esModule') continue;\n if (!globalThis.__ReactRefresh.isLikelyComponentType(exports[key])) allComponents = false;\n }\n return hasExports && allComponents;\n },\n enqueueUpdate: function() {\n if (globalThis.__ReactRefresh) {\n setTimeout(function() { globalThis.__ReactRefresh.performReactRefresh(); }, 50);\n }\n }\n };\n }\n };\n this.moduleHotContexts[moduleId] = ctx;\n return ctx;\n }\n\n isSelfAccepted(moduleId) {\n var ctx = this.moduleHotContexts[moduleId];\n var explicitlyAccepted = !!(ctx && ctx.acceptCallbacks.some(function(callback) {\n return callback.deps.indexOf(moduleId) !== -1;\n }));\n if (explicitlyAccepted) return { accepted: true, reactRefresh: false };\n if (!ctx || !ctx.reactRefreshAcceptCallback || !globalThis.__ReactRefresh) {\n return { accepted: false, reactRefresh: false };\n }\n var exports = this.loadExports(moduleId);\n return {\n accepted: ctx.refreshUtils.isReactRefreshBoundary(exports),\n reactRefresh: true\n };\n }\n\n acceptsDependency(parentId, moduleId) {\n var ctx = this.moduleHotContexts[parentId];\n return !!(ctx && ctx.acceptCallbacks.some(function(callback) {\n return callback.deps.indexOf(moduleId) !== -1;\n }));\n }\n\n findBoundaries(moduleId, traversed, updateSet, boundaries) {\n if (traversed.has(moduleId)) return true;\n traversed.add(moduleId);\n updateSet.add(moduleId);\n\n var selfAcceptance = this.isSelfAccepted(moduleId);\n if (selfAcceptance.accepted) {\n boundaries.push({\n boundary: moduleId,\n acceptedVia: moduleId,\n reactRefresh: selfAcceptance.reactRefresh\n });\n return true;\n }\n\n var importers = this.getImporters(moduleId).filter(function(importer) {\n return this.isExecuted(importer);\n }, this);\n if (importers.length === 0) return false;\n\n for (var i = 0; i < importers.length; i++) {\n var importer = importers[i];\n if (this.acceptsDependency(importer, moduleId)) {\n boundaries.push({ boundary: importer, acceptedVia: moduleId });\n } else if (!this.findBoundaries(importer, traversed, updateSet, boundaries)) {\n return false;\n }\n }\n return true;\n }\n\n applyHmrUpdate(code, changedIds, seq) {\n if (seq !== this.lastSeq + 1) return false;\n this.lastSeq = seq;\n\n var traversed = new Set();\n var updateSet = new Set();\n var boundaries = [];\n for (var i = 0; i < changedIds.length; i++) {\n var changedId = changedIds[i];\n if (!this.isExecuted(changedId)) continue;\n if (!this.findBoundaries(changedId, traversed, updateSet, boundaries)) return false;\n }\n // register the patch's factories even when no changed module has run yet,\n // so a later first import executes the edited code rather than a stale one\n if (globalThis.globalEvalWithSourceUrl) globalThis.globalEvalWithSourceUrl(code);\n else (0, eval)(code);\n if (boundaries.length === 0) return true;\n\n var callbacks = boundaries.map(function(item) {\n var ctx = this.moduleHotContexts[item.boundary];\n var selectedCallbacks = ctx ? ctx.acceptCallbacks.filter(function(callback) {\n return callback.deps.indexOf(item.acceptedVia) !== -1;\n }) : [];\n if (item.reactRefresh && ctx && ctx.reactRefreshAcceptCallback) {\n selectedCallbacks.push({\n deps: [item.acceptedVia],\n fn: function() { ctx.reactRefreshAcceptCallback(); }\n });\n }\n return {\n boundary: item.boundary,\n acceptedVia: item.acceptedVia,\n callbacks: selectedCallbacks\n };\n }, this);\n\n var modulesToReplace = Array.from(updateSet);\n for (var j = 0; j < modulesToReplace.length; j++) {\n if (!this.hasFactory(modulesToReplace[j])) return false;\n }\n for (var k = 0; k < modulesToReplace.length; k++) {\n this.removeModuleCache(modulesToReplace[k]);\n }\n\n for (var m = 0; m < callbacks.length; m++) {\n var apply = callbacks[m];\n this.initModule(apply.acceptedVia);\n var freshExports = this.loadExports(apply.acceptedVia);\n for (var n = 0; n < apply.callbacks.length; n++) {\n apply.callbacks[n].fn([freshExports]);\n }\n }\n\n for (var p = 0; p < changedIds.length; p++) {\n try {\n if (globalThis.__VXRN_ON_MODULE_UPDATED__) {\n globalThis.__VXRN_ON_MODULE_UPDATED__(changedIds[p]);\n }\n } catch (error) {\n console.error('[vxrn HMR]: module update hook failed', error);\n }\n }\n return true;\n }\n\n requestReload(reason) {\n if (this._socket && this._socket.readyState === 1) {\n this._socket.send(JSON.stringify({ type: 'hmr:invalidate', reason: reason }));\n }\n }\n\n reload(reason) {\n var reloadNativeBundle = globalThis.__VXRN_RELOAD_NATIVE_DEV_BUNDLE__;\n if (typeof reloadNativeBundle === 'function') {\n reloadNativeBundle(reason);\n return;\n }\n console.error('[vxrn HMR]: DevSettings.reload is unavailable');\n }\n\n setup(socket) {\n if (this._socket) return;\n this._socket = socket;\n var runtime = this;\n // addEventListener rather than socket.onmessage: the bundle's WebSocket is\n // whatever the host platform provides, and a host that does not honor on*\n // property assignment would otherwise leave the app permanently without\n // Fast Refresh and say nothing.\n socket.addEventListener('message', function(event) {\n var message;\n try {\n message = JSON.parse(event.data);\n } catch (error) {\n return;\n }\n try {\n if (message.type === 'hmr:update') {\n // a patch that cannot be applied in place is the reload signal\n if (!runtime.applyHmrUpdate(message.code, message.changedIds, message.seq)) {\n runtime.reload('native HMR update could not be applied');\n }\n } else if (message.type === 'hmr:reload') {\n runtime.reload('native route map changed');\n }\n } catch (error) {\n console.error('[vxrn HMR]: failed to apply update', error);\n }\n });\n socket.addEventListener('error', function(event) {\n console.warn('[vxrn HMR]: connection error', (event && event.message) || event);\n });\n }\n}\n\n${NATIVE_DEV_RUNTIME_END}\n`;\n}\n\nexport { NATIVE_DEV_RUNTIME_END, NATIVE_MODULE_SCOPE_MARKER, buildNativeBundle, createNativeDevAssetRegistry, createNativeDevEngine, getHermesSWCIncludes, getHmrRuntimeSource, getNativeAssetData, getNativeTransformConfig, hermesCompatPlugin, hermesCompatSWCPlugin, hermesLoopsPlugin, hmrClientNoopPlugin, nativeAnimatedGuardPlugin, normalizeNativeCommonJSInterop, postProcessNativeBundle, vxrnCompilerPlugin, wrapNativeBundleModuleScope };"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"createNativeDevEngine.js","names":[],"sources":["utils/createNativeDevEngine.js"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { basename, dirname, extname, join, relative, resolve } from \"node:path\";\nimport { copyFileSync, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, statSync, watch, writeFileSync } from \"node:fs\";\nimport { pathToFileURL } from \"node:url\";\nimport micromatch from \"micromatch\";\nimport { parseSync } from \"oxc-parser\";\nimport { loadEnv, normalizePath } from \"vite\";\nimport { shouldStripFlow, transformHermesAsync } from \"@vxrn/compiler\";\nimport { resolvePath } from \"@vxrn/resolve\";\nimport { desktopReactNativeFile, requireOnePackageRoot } from \"@vxrn/utils/desktopReactNativeResolve\";\nimport { nativeAppDefines } from \"@vxrn/utils/nativeAppManifest\";\nimport { withExpoPublicEnvAliases } from \"@vxrn/utils/publicEnv\";\nimport { DEFAULT_ASSET_EXTS } from \"../constants/defaults\";\nimport { getNativePrelude } from \"../runtime/native-prelude\";\nimport { rnCodegenPlugin } from \"../plugins/rnCodegenPlugin\";\nimport { dedupe } from \"../config/getBaseViteConfigOnly\";\n\nconst HERMES_CLASS_TRANSFORMS = [\n\t\"transform-classes\",\n\t\"transform-parameters\",\n\t\"transform-block-scoping\",\n\t\"transform-class-properties\",\n\t\"transform-class-static-block\",\n\t\"transform-private-methods\",\n\t\"transform-private-property-in-object\"\n];\nconst HERMES_ASYNC_TRANSFORMS = [\"transform-async-to-generator\"];\nfunction getHermesSWCIncludes(dev) {\n\treturn [...HERMES_CLASS_TRANSFORMS, ...HERMES_ASYNC_TRANSFORMS];\n}\nconst NATIVE_PLATFORM_EXTENSIONS = {\n\tios: [\n\t\t\".ios.tsx\",\n\t\t\".ios.ts\",\n\t\t\".ios.jsx\",\n\t\t\".ios.js\"\n\t],\n\tandroid: [\n\t\t\".android.tsx\",\n\t\t\".android.ts\",\n\t\t\".android.jsx\",\n\t\t\".android.js\"\n\t],\n\tmacos: [\n\t\t\".macos.tsx\",\n\t\t\".macos.ts\",\n\t\t\".macos.jsx\",\n\t\t\".macos.js\"\n\t],\n\tlinux: [\n\t\t\".linux.tsx\",\n\t\t\".linux.ts\",\n\t\t\".linux.jsx\",\n\t\t\".linux.js\"\n\t]\n};\nconst NATIVE_SHARED_EXTENSIONS = [\n\t\".native.tsx\",\n\t\".native.ts\",\n\t\".native.jsx\",\n\t\".native.js\"\n];\nconst PLAIN_EXTENSIONS = [\n\t\".tsx\",\n\t\".ts\",\n\t\".jsx\",\n\t\".js\",\n\t\".mjs\",\n\t\".cjs\",\n\t\".json\"\n];\nfunction getResolveExtensions(platform) {\n\treturn [\n\t\t...NATIVE_PLATFORM_EXTENSIONS[platform],\n\t\t...NATIVE_SHARED_EXTENSIONS,\n\t\t...PLAIN_EXTENSIONS\n\t];\n}\nfunction getNativeResolveConfig(platform) {\n\treturn {\n\t\textensions: getResolveExtensions(platform),\n\t\tconditionNames: [\"react-native\", \"browser\"],\n\t\tmainFields: [\n\t\t\t\"react-native\",\n\t\t\t\"browser\",\n\t\t\t\"main\",\n\t\t\t\"module\"\n\t\t],\n\t\taliasFields: [[\"react-native\"], [\"browser\"]]\n\t};\n}\nfunction getNativeTransformConfig(platform, dev, root) {\n\tconst entryConfig = globalThis.__vxrnNativeEntryConfig || {};\n\tconst setupFileDefines = (() => {\n\t\tconst sf = entryConfig.setupFile;\n\t\tif (!sf) return {};\n\t\tconst files = typeof sf === \"string\" ? {\n\t\t\tclient: sf,\n\t\t\tserver: sf,\n\t\t\tios: sf,\n\t\t\tandroid: sf\n\t\t} : \"native\" in sf ? {\n\t\t\tclient: sf.client,\n\t\t\tserver: sf.server,\n\t\t\tios: sf.native,\n\t\t\tandroid: sf.native\n\t\t} : sf;\n\t\treturn {\n\t\t\t...files.client && { \"process.env.ONE_SETUP_FILE_CLIENT\": JSON.stringify(files.client) },\n\t\t\t...files.server && { \"process.env.ONE_SETUP_FILE_SERVER\": JSON.stringify(files.server) },\n\t\t\t...files.ios && { \"process.env.ONE_SETUP_FILE_IOS\": JSON.stringify(files.ios) },\n\t\t\t...files.android && { \"process.env.ONE_SETUP_FILE_ANDROID\": JSON.stringify(files.android) }\n\t\t};\n\t})();\n\tconst userDefines = {};\n\tfor (const [key, value] of Object.entries(globalThis.__vxrnNativeUserDefine || {})) userDefines[key] = typeof value === \"string\" ? value : JSON.stringify(value);\n\tconst mode = dev ? \"development\" : \"production\";\n\tconst publicEnv = withExpoPublicEnvAliases(loadEnv(mode, root, [\n\t\t\"VITE_\",\n\t\t\"ONE_PUBLIC_\",\n\t\t\"EXPO_PUBLIC_\"\n\t]));\n\tconst envDefines = {};\n\tfor (const [key, value] of Object.entries(publicEnv)) {\n\t\tenvDefines[`import.meta.env.${key}`] = JSON.stringify(value);\n\t\tenvDefines[`process.env.${key}`] = JSON.stringify(value);\n\t}\n\tconst envObject = {\n\t\t...publicEnv,\n\t\tMODE: mode,\n\t\tDEV: dev,\n\t\tPROD: !dev,\n\t\tSSR: false,\n\t\tVITE_ENVIRONMENT: platform,\n\t\tVITE_NATIVE: \"1\",\n\t\tONE_PLATFORM: platform,\n\t\tEXPO_OS: platform,\n\t\tTAMAGUI_TARGET: \"native\",\n\t\tTAMAGUI_ENVIRONMENT: platform\n\t};\n\treturn {\n\t\tjsx: { runtime: \"classic\" },\n\t\tdefine: {\n\t\t\t...userDefines,\n\t\t\t...nativeAppDefines(entryConfig.app),\n\t\t\t...envDefines,\n\t\t\t\"process.env.NODE_ENV\": JSON.stringify(mode),\n\t\t\t\"process.env.VXRN_REACT_19\": \"false\",\n\t\t\t\"process.env.VITE_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t\"process.env.VITE_NATIVE\": \"\\\"1\\\"\",\n\t\t\t\"process.env.ONE_PLATFORM\": JSON.stringify(platform),\n\t\t\t\"process.env.EXPO_OS\": JSON.stringify(platform),\n\t\t\t\"process.env.TAMAGUI_TARGET\": \"\\\"native\\\"\",\n\t\t\t\"process.env.TAMAGUI_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t__DEV__: dev ? \"true\" : \"false\",\n\t\t\t\"import.meta.env\": JSON.stringify(envObject),\n\t\t\t\"import.meta.env.MODE\": JSON.stringify(mode),\n\t\t\t\"import.meta.env.DEV\": dev ? \"true\" : \"false\",\n\t\t\t\"import.meta.env.PROD\": dev ? \"false\" : \"true\",\n\t\t\t\"import.meta.env.SSR\": \"false\",\n\t\t\t\"import.meta.env.VITE_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.VITE_NATIVE\": \"\\\"1\\\"\",\n\t\t\t\"import.meta.env.ONE_PLATFORM\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.EXPO_OS\": JSON.stringify(platform),\n\t\t\t\"import.meta.env.TAMAGUI_TARGET\": \"\\\"native\\\"\",\n\t\t\t\"import.meta.env.TAMAGUI_ENVIRONMENT\": JSON.stringify(platform),\n\t\t\t...setupFileDefines\n\t\t},\n\t\tinject: { React: \"react\" }\n\t};\n}\nfunction desktopReactNativeResolvePlugin(root, platform) {\n\tconst oneRoot = requireOnePackageRoot(root, platform);\n\treturn {\n\t\tname: `vxrn:${platform}-react-native-resolve`,\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer) return;\n\t\t\tconst file = desktopReactNativeFile(importer, source, oneRoot, platform);\n\t\t\tif (file) return file;\n\t\t}\n\t};\n}\nconst PLATFORM_VARIANT_EXTS = [\n\t\".ios.tsx\",\n\t\".ios.ts\",\n\t\".ios.jsx\",\n\t\".ios.js\",\n\t\".android.tsx\",\n\t\".android.ts\",\n\t\".android.jsx\",\n\t\".android.js\",\n\t\".web.tsx\",\n\t\".web.ts\",\n\t\".web.jsx\",\n\t\".web.js\"\n];\nfunction desktopNormalFile(target, source, platform) {\n\tif (/\\.(?:tsx|ts|jsx|js|mjs|cjs|json)$/.test(source)) return existsSync(target);\n\tconst extensions = getResolveExtensions(platform);\n\tfor (const ext of extensions) {\n\t\tif (existsSync(target + ext)) return true;\n\t\tif (existsSync(join(target, \"index\" + ext))) return true;\n\t}\n\treturn false;\n}\nfunction desktopVariantSource(target) {\n\tfor (const ext of PLATFORM_VARIANT_EXTS) {\n\t\tconst file = target + ext;\n\t\tif (existsSync(file)) return file;\n\t}\n\treturn null;\n}\nfunction desktopPackageImportLabel(variantFile) {\n\tlet dir = dirname(variantFile);\n\tfor (let i = 0; i < 8; i++) {\n\t\tconst manifest = join(dir, \"package.json\");\n\t\tif (existsSync(manifest)) try {\n\t\t\tconst name = JSON.parse(readFileSync(manifest, \"utf8\")).name;\n\t\t\tif (typeof name === \"string\" && name.length > 0) return `${name}/${relative(dir, variantFile).split(\"\\\\\").join(\"/\").replace(/\\.(?:ios|android|web)\\.(?:tsx|ts|jsx|js)$/, \"\")}`;\n\t\t} catch {}\n\t\tconst parent = dirname(dir);\n\t\tif (parent === dir) break;\n\t\tdir = parent;\n\t}\n\treturn variantFile;\n}\nfunction desktopUnsupportedImportPlugin(platform) {\n\tconst label = platform === \"macos\" ? \"macOS\" : \"Linux\";\n\treturn {\n\t\tname: `vxrn:${platform}-unsupported-import`,\n\t\tonLog(_level, log) {\n\t\t\tif (log.code === \"UNRESOLVED_IMPORT\") this.error({\n\t\t\t\t...log,\n\t\t\t\tmessage: `[vxrn] ${label} bundle cannot resolve an import: ${log.message}`\n\t\t\t});\n\t\t},\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\") || source.includes(\"\\0\")) return;\n\t\t\tif (source.includes(\"?\") || source.includes(\"#\")) return;\n\t\t\tconst target = resolve(dirname(importer), source);\n\t\t\tif (desktopNormalFile(target, source, platform)) return;\n\t\t\tconst variant = desktopVariantSource(target);\n\t\t\tif (!variant) return;\n\t\t\tthis.error(`[vxrn] ${desktopPackageImportLabel(variant)} has no ${label} implementation: cannot resolve import \"${source}\" from \"${importer}\". Add a .${platform}, .native or plain file.`);\n\t\t}\n\t};\n}\nfunction desktopDistVariantPlugin(platform) {\n\treturn {\n\t\tname: `vxrn:${platform}-dist-variant`,\n\t\tresolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\") || !source.endsWith(\".native.js\")) return;\n\t\t\tif (source.endsWith(`.${platform}.native.js`)) return;\n\t\t\tconst variant = resolve(dirname(importer), source).replace(/\\.native\\.js$/, `.${platform}.native.js`);\n\t\t\tif (variant === importer || !existsSync(variant)) return;\n\t\t\treturn variant;\n\t\t}\n\t};\n}\nfunction getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, onAsset, sourceMaps = false, userPlugins = [], minify = false, command = \"serve\") {\n\tconst context = {\n\t\troot,\n\t\tplatform,\n\t\tdev,\n\t\tcommand,\n\t\tassetsDest\n\t};\n\tconst desktopPlugins = platform === \"macos\" || platform === \"linux\" ? [\n\t\tdesktopReactNativeResolvePlugin(root, platform),\n\t\tdesktopDistVariantPlugin(platform),\n\t\tdesktopUnsupportedImportPlugin(platform)\n\t] : [];\n\tconst globalPlugins = globalThis.__vxrnAddNativePlugins?.(platform) || [];\n\tconst trace = dev && command === \"serve\" ? [...globalPlugins, ...userPlugins].find((plugin) => plugin.api?.vxrnNativeCompilerTrace)?.api.vxrnNativeCompilerTrace : void 0;\n\tconst plugins = [\n\t\t...desktopPlugins,\n\t\t...globalPlugins,\n\t\tserverFileExclusionPlugin(),\n\t\tenvironmentGuardPlugin(),\n\t\tmissingDynamicImportPlugin(),\n\t\thmrClientNoopPlugin(),\n\t\tnativeIdentityAliasPlugin(platform),\n\t\tnativeAssetRegistryPlugin(root),\n\t\treactNativeDedupePlugin(root),\n\t\tnativePackageDedupePlugin(root),\n\t\tcssStubPlugin(),\n\t\tviteImportGlobPlugin({ root }),\n\t\trnCodegenPlugin({ projectRoot: root }),\n\t\tflowStripPlugin(),\n\t\tvxrnCompilerPlugin(platform, dev, root, sourceMaps, trace),\n\t\tmixedNativeModulePlugin(sourceMaps),\n\t\tnativeAnimatedGuardPlugin(),\n\t\tassetPlugin({\n\t\t\troot,\n\t\t\tplatform,\n\t\t\tassetsDest,\n\t\t\tonAsset\n\t\t}),\n\t\thermesCompatSWCPlugin(dev, sourceMaps, !minify),\n\t\thermesLoopsPlugin(sourceMaps),\n\t\t...userPlugins,\n\t\tnativeExportsPrecedencePlugin(root, platform),\n\t\tnativeDeclarationAliasPlugin(root, platform)\n\t].map((plugin) => plugin.api?.vxrnNative ? plugin.api.vxrnNative(context) : plugin);\n\tif (!trace) return plugins;\n\tconst start = (id, stage) => {\n\t\ttry {\n\t\t\tconst record = trace(id);\n\t\t\tif (!record) return;\n\t\t\tconst mark = (status) => {\n\t\t\t\ttry {\n\t\t\t\t\trecord(stage, status);\n\t\t\t\t} catch {}\n\t\t\t};\n\t\t\tmark(\"start\");\n\t\t\treturn mark;\n\t\t} catch {}\n\t};\n\treturn [\n\t\t{\n\t\t\tname: \"test-native-hmr-trace-first-pre\",\n\t\t\tload: {\n\t\t\t\torder: \"pre\",\n\t\t\t\thandler(id) {\n\t\t\t\t\tstart(id, \"load:first\")?.(\"end\");\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t},\n\t\t\ttransform: {\n\t\t\t\torder: \"pre\",\n\t\t\t\thandler(_code, id) {\n\t\t\t\t\tstart(id, \"pre:first\")?.(\"end\");\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t...plugins.map((plugin, index) => {\n\t\t\tif (plugin.name !== \"one:use-dom-native\" && plugin.name !== \"vxrn:rn-codegen\" && plugin.name !== \"one:background-computation:native\" && plugin.name !== \"one-client-tree-shake\") return plugin;\n\t\t\tconst hook = plugin.transform;\n\t\t\tif (!hook || typeof hook === \"function\" || hook.order !== \"pre\") return plugin;\n\t\t\treturn {\n\t\t\t\t...plugin,\n\t\t\t\ttransform: {\n\t\t\t\t\t...hook,\n\t\t\t\t\thandler(...args) {\n\t\t\t\t\t\tconst mark = start(args[1], `pre:${index}:${plugin.name}`);\n\t\t\t\t\t\tif (!mark) return hook.handler.apply(this, args);\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst result = hook.handler.apply(this, args);\n\t\t\t\t\t\t\tif (result instanceof Promise) try {\n\t\t\t\t\t\t\t\tPromise.prototype.then.call(result, () => mark(\"end\"), () => mark(\"error\"));\n\t\t\t\t\t\t\t} catch {}\n\t\t\t\t\t\t\telse mark(\"end\");\n\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\tmark(\"error\");\n\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t}),\n\t\t{\n\t\t\tname: \"test-native-hmr-trace-load-fallthrough\",\n\t\t\tload: {\n\t\t\t\torder: \"post\",\n\t\t\t\thandler(id) {\n\t\t\t\t\tstart(id, \"load:fallthrough\")?.(\"end\");\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t];\n}\nfunction getNativeOutputOptions(prelude, sourcemap, minify) {\n\treturn {\n\t\tformat: \"esm\",\n\t\tsourcemap,\n\t\tsourcemapPathTransform: (relativeSourcePath, sourcemapPath) => normalizePath(resolve(dirname(sourcemapPath), relativeSourcePath)),\n\t\tintro: prelude,\n\t\tcodeSplitting: false,\n\t\tstrictExecutionOrder: true,\n\t\tminify: minify || \"dce-only\",\n\t\tkeepNames: !minify\n\t};\n}\nfunction normalizeNativeCommonJSInterop(code) {\n\tif (!code.includes(\"__toESM\")) return code;\n\tconst { program, errors } = parseSync(\"native-bundle.js\", code, { lang: \"js\" });\n\tif (errors.length) throw new Error(`[vxrn] cannot normalize native CommonJS interop: the bundle does not parse (${errors[0].message})`);\n\tconst deletions = [];\n\tconst stack = [program];\n\twhile (stack.length) {\n\t\tconst node = stack.pop();\n\t\tif (Array.isArray(node)) {\n\t\t\tfor (let index = node.length - 1; index >= 0; index--) stack.push(node[index]);\n\t\t\tcontinue;\n\t\t}\n\t\tif (!isInteropSyntaxNode(node)) continue;\n\t\tif (node.type === \"CallExpression\") {\n\t\t\tconst span = interopNodeModeSpan(code, node);\n\t\t\tif (span) deletions.push(span);\n\t\t}\n\t\tfor (const key of Object.keys(node)) stack.push(node[key]);\n\t}\n\tif (!deletions.length) return code;\n\tdeletions.sort((a, b) => a[0] - b[0]);\n\tconst parts = [];\n\tlet copied = 0;\n\tfor (const [start, end] of deletions) {\n\t\tparts.push(code.slice(copied, start));\n\t\tcopied = end;\n\t}\n\tparts.push(code.slice(copied));\n\treturn parts.join(\"\");\n}\nfunction isInteropSyntaxNode(node) {\n\tif (!node || typeof node !== \"object\") return false;\n\tconst candidate = node;\n\treturn typeof candidate.type === \"string\" && typeof candidate.start === \"number\" && typeof candidate.end === \"number\";\n}\nconst NATIVE_INTEROP_HELPER = /^__toESM(?:\\$\\d+)?$/;\nconst NATIVE_INTEROP_REQUIRE = /^require[\\w$]*$/;\nfunction interopNodeModeSpan(code, node) {\n\tconst callee = node[\"callee\"];\n\tif (!isInteropSyntaxNode(callee) || !isInteropHelperCallee(callee) || node[\"optional\"] === true) return;\n\tconst args = node[\"arguments\"];\n\tif (!Array.isArray(args) || args.length !== 2) return void 0;\n\tconst [first, second] = args;\n\tif (!isInteropSyntaxNode(first) || !isInteropSyntaxNode(second)) return void 0;\n\tif (!isInteropFirstArgument(first)) return void 0;\n\tif (second.type !== \"Literal\" || second[\"raw\"] !== \"1\") return void 0;\n\tconst between = code.slice(first.end, second.start);\n\tif (!/^\\s*,\\s*$/.test(between)) return void 0;\n\tif (!/^\\s*\\)/.test(code.slice(second.end))) return void 0;\n\treturn [first.end + between.indexOf(\",\"), second.end];\n}\nfunction isInteropHelperCallee(callee) {\n\tif (callee.type === \"Identifier\") return typeof callee[\"name\"] === \"string\" && NATIVE_INTEROP_HELPER.test(callee[\"name\"]);\n\tif ((callee.type === \"MemberExpression\" || callee.type === \"StaticMemberExpression\") && callee[\"computed\"] !== true) {\n\t\tconst property = callee[\"property\"];\n\t\treturn isInteropSyntaxNode(property) && property.type === \"Identifier\" && typeof property[\"name\"] === \"string\" && NATIVE_INTEROP_HELPER.test(property[\"name\"]);\n\t}\n\treturn false;\n}\nfunction isInteropFirstArgument(node) {\n\tif (node.type === \"Identifier\") return true;\n\tif (node.type !== \"CallExpression\" || node[\"optional\"] === true) return false;\n\tconst callee = node[\"callee\"];\n\tif (!isInteropSyntaxNode(callee)) return false;\n\tconst args = node[\"arguments\"];\n\tif (!Array.isArray(args)) return false;\n\tif (callee.type === \"Identifier\") return typeof callee[\"name\"] === \"string\" && NATIVE_INTEROP_REQUIRE.test(callee[\"name\"]) && args.length === 0;\n\tif ((callee.type === \"MemberExpression\" || callee.type === \"StaticMemberExpression\") && callee[\"computed\"] !== true && callee[\"optional\"] !== true) {\n\t\tconst object = callee[\"object\"];\n\t\tconst property = callee[\"property\"];\n\t\treturn isInteropSyntaxNode(object) && object.type === \"Identifier\" && object[\"name\"] === \"__rolldown_runtime__\" && isInteropSyntaxNode(property) && property.type === \"Identifier\" && property[\"name\"] === \"loadExports\" && args.length === 1 && isInteropSyntaxNode(args[0]) && args[0].type === \"Literal\" && typeof args[0][\"value\"] === \"string\";\n\t}\n\treturn false;\n}\nfunction blankPreservingLines(match) {\n\treturn \"\\n\".repeat(match.match(/\\n/g)?.length ?? 0);\n}\nfunction countLines(code) {\n\treturn (code.match(/\\n/g)?.length ?? 0) + 1;\n}\nfunction assertBundleLinesPreserved(before, after, stage) {\n\tconst beforeLines = countLines(before);\n\tconst afterLines = countLines(after);\n\tif (beforeLines !== afterLines) throw new Error(`[vxrn] native bundle post-processing (${stage}) changed the line count (${beforeLines} -> ${afterLines}), which invalidates the source map. Every pass after Rolldown emits the map must preserve lines.`);\n}\nfunction postProcessNativeBundle(code) {\n\tcode = normalizeNativeCommonJSInterop(code);\n\tcode = code.replace(/\\btypeof\\s+import\\.meta\\b/g, \"\\\"object\\\"\");\n\tcode = code.replace(/^[^\\S\\n]*export[^\\S\\n]*\\{[^}]*\\}[^\\S\\n]*;?[^\\S\\n]*$/gm, blankPreservingLines);\n\tcode = code.replace(/^([^\\S\\n]*)export[^\\S\\n]+default[^\\S\\n]+([^;\\n]+);?[^\\S\\n]*$/gm, \"$1$2;\");\n\tcode = code.replace(/^if \\(import\\.meta\\.hot\\).*$/gm, \"\");\n\t{\n\t\tconst idx = code.indexOf(\"NativeAnimatedModule_default ?? NativeAnimatedTurboModule_default;\");\n\t\tif (idx !== -1) {\n\t\t\tconst beforeMarker = code.lastIndexOf(\"NativeAnimatedModule = \", idx);\n\t\t\tif (beforeMarker !== -1) {\n\t\t\t\tconst lineStart = code.lastIndexOf(\"\\n\", beforeMarker);\n\t\t\t\tconst snippet = code.slice(lineStart + 1, beforeMarker + 50);\n\t\t\t\tif (snippet.includes(\"(function()\") || snippet.includes(\"new Proxy\")) {\n\t\t\t\t\tconst afterMarker = code.indexOf(\"})();\", idx);\n\t\t\t\t\tif (afterMarker !== -1) {\n\t\t\t\t\t\tconst end = afterMarker + 5;\n\t\t\t\t\t\tconst removed = code.slice(beforeMarker, end);\n\t\t\t\t\t\tcode = code.slice(0, beforeMarker) + \"NativeAnimatedModule = NativeAnimatedModule_default ?? NativeAnimatedTurboModule_default;\" + blankPreservingLines(removed) + code.slice(end);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn code;\n}\nconst NATIVE_MODULE_SCOPE_MARKER = \"// vxrn: native module scope\";\nconst NATIVE_DEV_RUNTIME_END = \"globalThis.__rolldown_runtime__ = new ReactNativeDevRuntime();\";\nfunction wrapNativeBundleModuleScope(code) {\n\tconst idx = code.indexOf(NATIVE_MODULE_SCOPE_MARKER);\n\tif (idx === -1) throw new Error(\"[vxrn] the dev bundle lost the end of its prelude, so its modules would run at script scope\");\n\treturn code.slice(0, idx) + \";(function() {\" + code.slice(idx) + \"\\n})();\\n\";\n}\nasync function downlevelClassFieldsInBundle(code) {\n\tconst markerIdx = code.indexOf(NATIVE_MODULE_SCOPE_MARKER);\n\tconst endIdx = markerIdx === -1 ? -1 : code.indexOf(NATIVE_DEV_RUNTIME_END, markerIdx);\n\tif (endIdx === -1) throw new Error(\"[vxrn] could not locate the rolldown runtime in the dev bundle\");\n\tconst startIdx = code.indexOf(\"\\n\", markerIdx) + 1;\n\tconst runtimeEnd = endIdx + 62;\n\tconst runtimeSection = code.slice(startIdx, runtimeEnd);\n\tconst originalNewlines = runtimeSection.match(/\\n/g)?.length ?? 0;\n\tconst { transformSync } = await import(\"oxc-transform\");\n\tconst result = transformSync(\"rolldown-runtime.js\", runtimeSection, {\n\t\ttarget: \"es2020\",\n\t\tassumptions: { setPublicClassFields: true }\n\t});\n\tif (result.errors?.length) throw new Error(result.errors.map((e) => e.message).join(\"\\n\"));\n\tconst transformed = result.code.trimEnd();\n\tconst transformedNewlines = transformed.match(/\\n/g)?.length ?? 0;\n\tif (transformedNewlines > originalNewlines) throw new Error(\"[vxrn] Hermes runtime transform added lines and would invalidate the dev source map\");\n\tconst linePreservingRuntime = transformed + \"\\n\".repeat(originalNewlines - transformedNewlines);\n\treturn code.slice(0, startIdx) + linePreservingRuntime + code.slice(runtimeEnd);\n}\nfunction nativeBundlePostProcessPlugin() {\n\treturn {\n\t\tname: \"vxrn:native-post-process\",\n\t\trenderChunk(code) {\n\t\t\tconst processed = postProcessNativeBundle(code);\n\t\t\tassertBundleLinesPreserved(code, processed, \"production\");\n\t\t\treturn {\n\t\t\t\tcode: processed,\n\t\t\t\tmap: null\n\t\t\t};\n\t\t}\n\t};\n}\nasync function createNativeDevEngine(options) {\n\tconst { root, port, host = \"localhost\", platform, serverUrl, plugins: userPlugins = [], onHmrUpdate } = options;\n\tconst { dev, viteImportGlobPlugin } = await import(\"rolldown/experimental\");\n\tconst hmrRuntimeSource = getHmrRuntimeSource();\n\tconst prelude = getNativePrelude({\n\t\tdev: true,\n\t\tplatform,\n\t\tserverUrl: serverUrl || `http://${host}:${port}`\n\t});\n\tconst assetRegistry = createNativeDevAssetRegistry();\n\tlet currentBundle = null;\n\tlet firstBuildError = null;\n\tlet bundleResolve = null;\n\tlet bundleReject = null;\n\tlet bundlePromise = null;\n\tconst virtualEntry = nativeVirtualEntryPlugin(root, {\n\t\tdev: true,\n\t\tplatform,\n\t\tdynamicRoutes: true\n\t});\n\tlet engineWork = Promise.resolve();\n\tconst queueEngineWork = (work) => {\n\t\tconst result = engineWork.then(work, work);\n\t\tengineWork = result.catch(() => {});\n\t\treturn result;\n\t};\n\tconst inputOptions = {\n\t\tinput: VIRTUAL_NATIVE_ENTRY,\n\t\tcwd: root,\n\t\tplatform: \"neutral\",\n\t\tresolve: getNativeResolveConfig(platform),\n\t\ttransform: getNativeTransformConfig(platform, true, root),\n\t\texperimental: {\n\t\t\tdevMode: {\n\t\t\t\timplement: hmrRuntimeSource,\n\t\t\t\thost,\n\t\t\t\tport\n\t\t\t},\n\t\t\tincrementalBuild: true,\n\t\t\tlazyBarrel: true\n\t\t},\n\t\ttreeshake: false,\n\t\tshimMissingExports: true,\n\t\tmoduleTypes: { \".js\": \"jsx\" },\n\t\tplugins: [virtualEntry.plugin, ...getNativePlugins(root, platform, viteImportGlobPlugin, true, void 0, assetRegistry.register, true, userPlugins)]\n\t};\n\tconst outputOptions = {\n\t\t...getNativeOutputOptions(`${prelude}\n${NATIVE_MODULE_SCOPE_MARKER}`, true, false),\n\t\toutro: `\ntry {\n var __WS = (init_WebSocket(), __toCommonJS(WebSocket_exports)).default;\n var __devServer = (init_getDevServer(), __toCommonJS(getDevServer_exports)).default();\n var __hmrUrl = __devServer.url.replace(/^http/, 'ws') + 'hot?platform=${platform}&clientId=' + encodeURIComponent(__rolldown_runtime__.clientId);\n __rolldown_runtime__.setup(new __WS(__hmrUrl));\n} catch(e) {\n // a swallowed failure here leaves the app permanently without Fast Refresh and\n // nothing on screen or in the terminal says so.\n console.error('[vxrn] HMR client failed to start:', (e && e.message) || e);\n}\n`\n\t};\n\tlet outputProcessed = Promise.resolve();\n\tlet engine;\n\tlet routeWatcher;\n\tconst rebuildIfRouteGraphChanged = () => queueEngineWork(async () => {\n\t\tconst { files: knownRoutes, scanFiles, updateFiles } = virtualEntry.routes;\n\t\tconst currentRoutes = scanFiles();\n\t\tif (!(currentRoutes.size !== knownRoutes.size || [...currentRoutes].some((route) => !knownRoutes.has(route)))) return false;\n\t\tupdateFiles(currentRoutes);\n\t\treturn true;\n\t});\n\tengine = await dev(inputOptions, outputOptions, {\n\t\tonOutput: async (result) => {\n\t\t\tlet finishOutput = () => {};\n\t\t\toutputProcessed = new Promise((resolve2) => {\n\t\t\t\tfinishOutput = resolve2;\n\t\t\t});\n\t\t\ttry {\n\t\t\t\tawait handleOutput(result);\n\t\t\t} finally {\n\t\t\t\tfinishOutput();\n\t\t\t}\n\t\t},\n\t\tonHmrUpdates: async (result) => {\n\t\t\tawait engine?.ensureCurrentBuildFinish();\n\t\t\tif (await rebuildIfRouteGraphChanged()) return;\n\t\t\tif (result instanceof Error) {\n\t\t\t\tconst { removedFiles, registryId } = virtualEntry.routes;\n\t\t\t\tconst errors = result.errors ?? [];\n\t\t\t\tif (registryId && errors.length && errors.every((e) => {\n\t\t\t\t\tif (e.code !== \"UNRESOLVED_IMPORT\" || e.id !== registryId || !e.exporter) return false;\n\t\t\t\t\tconst file = normalizePath(resolve(dirname(e.id), e.exporter));\n\t\t\t\t\treturn removedFiles.has(file);\n\t\t\t\t})) return;\n\t\t\t\tconsole.error(\"[vxrn] HMR error:\", result.message);\n\t\t\t\tonHmrUpdate?.({ type: \"hmr:error\" });\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tfor (const { clientId, update } of result.updates) if (update.type === \"Patch\" && update.code) {\n\t\t\t\tawait engine.notifyPayloadDelivered(update.filename);\n\t\t\t\tonHmrUpdate?.({\n\t\t\t\t\ttype: \"hmr:update\",\n\t\t\t\t\tclientId,\n\t\t\t\t\tcode: normalizeNativeCommonJSInterop(update.code),\n\t\t\t\t\tchangedIds: update.changedIds,\n\t\t\t\t\tseq: update.seq\n\t\t\t\t});\n\t\t\t} else if (update.type === \"FullReload\") onHmrUpdate?.({\n\t\t\t\ttype: \"hmr:reload\",\n\t\t\t\tclientId\n\t\t\t});\n\t\t},\n\t\trebuildStrategy: \"never\",\n\t\twatch: { exclude: [\"**/node_modules/.test/**\", \"**/.git/**\"] }\n\t});\n\tasync function handleOutput(result) {\n\t\tif (result instanceof Error) {\n\t\t\tconsole.error(\"[vxrn] native bundle error:\", result.message);\n\t\t\tif (/panic/i.test(result.message)) console.error(\"[vxrn] rolldown itself panicked. Fast Refresh will full-reload until you restart the dev server.\");\n\t\t\tif (!currentBundle) {\n\t\t\t\tfirstBuildError ||= result;\n\t\t\t\tif (bundleReject) {\n\t\t\t\t\tconst reject = bundleReject;\n\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\tbundleReject = null;\n\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\treject(firstBuildError);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tconst chunk = result.output.find((o) => o.type === \"chunk\" && o.isEntry);\n\t\tif (chunk && \"code\" in chunk) {\n\t\t\tfirstBuildError = null;\n\t\t\tlet code;\n\t\t\ttry {\n\t\t\t\tcode = postProcessNativeBundle(chunk.code);\n\t\t\t\tcode = await downlevelClassFieldsInBundle(code);\n\t\t\t\tassertBundleLinesPreserved(chunk.code, code, \"dev\");\n\t\t\t\tcode = wrapNativeBundleModuleScope(code);\n\t\t\t} catch (error) {\n\t\t\t\tconst failure = error instanceof Error ? error : new Error(String(error));\n\t\t\t\tconsole.error(\"[vxrn] native bundle post-processing failed:\", failure.message);\n\t\t\t\tif (!currentBundle) {\n\t\t\t\t\tfirstBuildError = failure;\n\t\t\t\t\tif (bundleReject) {\n\t\t\t\t\t\tconst reject = bundleReject;\n\t\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\t\tbundleReject = null;\n\t\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\t\treject(failure);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!chunk.map) throw new Error(\"[vxrn] rolldown produced no source map for the dev bundle, so /symbolicate cannot resolve a frame\");\n\t\t\tcurrentBundle = {\n\t\t\t\tcode,\n\t\t\t\tmap: chunk.map.toString()\n\t\t\t};\n\t\t\tconsole.info(`[vxrn] native bundle ready (${Math.round(code.length / 1024)}KB)`);\n\t\t\tif (bundleResolve) {\n\t\t\t\tbundleResolve(currentBundle);\n\t\t\t\tbundleResolve = null;\n\t\t\t\tbundleReject = null;\n\t\t\t\tbundlePromise = null;\n\t\t\t}\n\t\t}\n\t}\n\tawait engine.run();\n\tlet routeWatchTarget = virtualEntry.routes.routeRoot;\n\twhile (!statSync(routeWatchTarget, { throwIfNoEntry: false })?.isDirectory()) {\n\t\tconst parent = dirname(routeWatchTarget);\n\t\tif (parent === routeWatchTarget) break;\n\t\trouteWatchTarget = parent;\n\t}\n\tconst normalizedRouteRoot = normalizePath(virtualEntry.routes.routeRoot);\n\trouteWatcher = watch(routeWatchTarget, { recursive: true }, (_eventType, file) => {\n\t\tif (file === null) return;\n\t\tconst changed = normalizePath(resolve(routeWatchTarget, file.toString()));\n\t\tif (changed !== normalizedRouteRoot && !changed.startsWith(`${normalizedRouteRoot}/`)) return;\n\t\trebuildIfRouteGraphChanged().catch((error) => {\n\t\t\tconsole.error(`[vxrn] rebuilding the native route map failed`, error);\n\t\t});\n\t});\n\trouteWatcher.on(\"error\", (error) => {\n\t\tconsole.error(`[vxrn] watching the native route map failed`, error);\n\t});\n\tawait rebuildIfRouteGraphChanged();\n\tconst getBundle = async () => {\n\t\tawait queueEngineWork(async () => {\n\t\t\tawait engine.ensureLatestBuildOutput();\n\t\t\tawait outputProcessed;\n\t\t});\n\t\tif (currentBundle) return currentBundle;\n\t\tif (firstBuildError) throw firstBuildError;\n\t\tif (!bundlePromise) {\n\t\t\tlet timeoutId;\n\t\t\tbundlePromise = new Promise((resolve2, reject) => {\n\t\t\t\tbundleResolve = (value) => {\n\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\tresolve2(value);\n\t\t\t\t};\n\t\t\t\tbundleReject = (error) => {\n\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\treject(error);\n\t\t\t\t};\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tbundleResolve = null;\n\t\t\t\t\tbundleReject = null;\n\t\t\t\t\tbundlePromise = null;\n\t\t\t\t\treject(/* @__PURE__ */ new Error(\"[vxrn] bundle build timed out after 120s\"));\n\t\t\t\t}, 12e4);\n\t\t\t});\n\t\t}\n\t\treturn bundlePromise;\n\t};\n\treturn {\n\t\tengine,\n\t\tgetBundle,\n\t\tasync getSourceMap() {\n\t\t\tawait outputProcessed;\n\t\t\tif (currentBundle) return currentBundle.map;\n\t\t\treturn (await getBundle()).map;\n\t\t},\n\t\tgetAsset(pathname, hash) {\n\t\t\treturn assetRegistry.resolve(pathname, hash);\n\t\t},\n\t\tasync close() {\n\t\t\trouteWatcher?.close();\n\t\t\tawait engine.close();\n\t\t}\n\t};\n}\nasync function buildNativeBundle(options) {\n\tconst { root, platform, dev = false, serverUrl, entryFile, assetsDest, plugins: userPlugins = [], sourcemap = false, minify = !dev } = options;\n\tconst { build } = await import(\"rolldown\");\n\tconst { viteImportGlobPlugin } = await import(\"rolldown/experimental\");\n\tconst prelude = getNativePrelude({\n\t\tdev,\n\t\tplatform,\n\t\tserverUrl\n\t});\n\tconst chunk = (await build({\n\t\tinput: entryFile ? normalizePath(resolve(root, entryFile)) : VIRTUAL_NATIVE_ENTRY,\n\t\tcwd: root,\n\t\tplatform: \"neutral\",\n\t\tresolve: getNativeResolveConfig(platform),\n\t\ttransform: getNativeTransformConfig(platform, dev, root),\n\t\ttreeshake: !dev,\n\t\texperimental: { lazyBarrel: false },\n\t\tshimMissingExports: true,\n\t\tmoduleTypes: { \".js\": \"jsx\" },\n\t\tplugins: [\n\t\t\t...entryFile ? [] : [nativeVirtualEntryPlugin(root, {\n\t\t\t\tdev,\n\t\t\t\tplatform\n\t\t\t}).plugin],\n\t\t\t...getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, void 0, sourcemap, userPlugins, minify, \"build\"),\n\t\t\tnativeBundlePostProcessPlugin()\n\t\t],\n\t\toutput: {\n\t\t\t...getNativeOutputOptions(prelude, sourcemap, minify),\n\t\t\tformat: \"iife\"\n\t\t}\n\t})).output.find((o) => o.type === \"chunk\" && o.isEntry);\n\tif (!chunk || !(\"code\" in chunk)) throw new Error(\"[vxrn] production build produced no output\");\n\tif (sourcemap && !chunk.map) throw new Error(\"[vxrn] a source map was requested but rolldown produced none for the production bundle\");\n\treturn {\n\t\tcode: chunk.code,\n\t\tmap: sourcemap ? chunk.map?.toString() : void 0\n\t};\n}\nconst VIRTUAL_NATIVE_ENTRY = \"virtual:native-entry\";\nfunction nativeVirtualEntryPlugin(root, opts) {\n\tconst isDev = opts?.dev !== false;\n\tconst useDynamicRouteRegistry = opts.dynamicRoutes === true;\n\tconst resolvedId = normalizePath(resolve(root, \"__virtual-native-entry.tsx\"));\n\tconst entryConfig = globalThis.__vxrnNativeEntryConfig || {};\n\tconst routerRoot = entryConfig.routerRoot || \"app\";\n\tconst flags = entryConfig.flags || {};\n\tconst linking = entryConfig.linking;\n\tconst setupFileImport = (() => {\n\t\tconst sf = entryConfig.setupFile;\n\t\tif (!sf) return \"\";\n\t\tconst perPlatform = sf;\n\t\tconst file = typeof sf === \"string\" ? sf : \"native\" in sf ? sf.native : opts.platform === \"macos\" || opts.platform === \"linux\" ? perPlatform[opts.platform] : sf.ios;\n\t\tif (!file) return \"\";\n\t\tconst resolved = pathToFileURL(resolve(root, file)).href;\n\t\treturn `import ${JSON.stringify(resolved)};`;\n\t})();\n\tconst routeGlobs = [\n\t\t`./${routerRoot}/**/*.tsx`,\n\t\t`./${routerRoot}/**/*.ts`,\n\t\t`!./${routerRoot}/**/*+api.*`,\n\t\t`!./${routerRoot}/**/*.test.*`,\n\t\t`!./${routerRoot}/**/*.d.ts`,\n\t\t`!./${routerRoot}/**/*.server.*`,\n\t\t`!./${routerRoot}/**/_middleware.*`,\n\t\t`!./${routerRoot}/**/*.web.*`,\n\t\t...(entryConfig.ignoredRouteFiles || []).map((pattern) => `!./${routerRoot}/${pattern}`)\n\t];\n\tconst refreshSetup = isDev ? `\n// react-refresh/runtime MUST initialize before React loads\nimport RefreshRuntime from 'react-refresh/runtime';\nRefreshRuntime.injectIntoGlobalHook(globalThis);\nglobalThis.__ReactRefresh = RefreshRuntime;\nglobalThis.$RefreshReg$ = function(type, id) {\n RefreshRuntime.register(type, id);\n};\nglobalThis.$RefreshSig$ = RefreshRuntime.createSignatureFunctionForTransform;\n` : \"\";\n\tconst entryCode = () => `\n${refreshSetup}\n// retain the namespace so rolldown dev eagerly initializes the RN environment\n// before app modules, even when the renderer also requires this entry.\nimport * as ReactNativeEnvironment from 'react-native/setup-env';\nimport NativeWebSocket from 'react-native/Libraries/WebSocket/WebSocket';\nimport DevSettings from 'react-native/Libraries/Utilities/DevSettings';\n${setupFileImport}\n${routeImports}\nimport { createApp } from 'one';\n\nvoid ReactNativeEnvironment;\nglobalThis.WebSocket = NativeWebSocket;\nglobalThis.__VXRN_RELOAD_NATIVE_DEV_BUNDLE__ = function(reason) {\n DevSettings.reload(reason);\n};\n\n// React Native reloads a dev bundle in the existing JS runtime. Advance One's\n// route-cache version so a full reload cannot reuse the previous context.\nglobalThis.__vxrnVersion = (globalThis.__vxrnVersion || 0) + 1;\n\ncreateApp({\n routes: routes,\n routerRoot: ${JSON.stringify(routerRoot)},\n flags: ${JSON.stringify(flags)},\n linking: ${JSON.stringify(linking)},\n});\n\n${routeHmr}\n`;\n\tconst routeRoot = resolve(root, routerRoot);\n\tconst stripDot = (pattern) => pattern.replace(/^\\.\\//, \"\");\n\tconst includeGlobs = routeGlobs.filter((p) => !p.startsWith(\"!\")).map(stripDot);\n\tconst excludeGlobs = routeGlobs.filter((p) => p.startsWith(\"!\")).map((p) => stripDot(p.slice(1)));\n\tconst isRouteFile = (file) => {\n\t\tconst relativeToRoot = normalizePath(relative(root, file));\n\t\treturn micromatch.isMatch(relativeToRoot, includeGlobs) && !micromatch.isMatch(relativeToRoot, excludeGlobs);\n\t};\n\tconst scanFiles = () => {\n\t\tconst files = /* @__PURE__ */ new Set();\n\t\tconst walkRouteRoot = (dir) => {\n\t\t\tfor (const entry of readdirSync(dir, { withFileTypes: true })) {\n\t\t\t\tconst child = resolve(dir, entry.name);\n\t\t\t\tif (entry.isDirectory()) walkRouteRoot(child);\n\t\t\t\telse if (isRouteFile(child)) files.add(normalizePath(child));\n\t\t\t}\n\t\t};\n\t\tif (statSync(routeRoot, { throwIfNoEntry: false })?.isDirectory()) walkRouteRoot(routeRoot);\n\t\treturn files;\n\t};\n\tconst registrySpecifier = `./node_modules/.vxrn/native-routes-${opts.platform}.mjs`;\n\tconst registryPath = resolve(root, registrySpecifier);\n\tconst routes = {\n\t\trouteRoot,\n\t\tfiles: /* @__PURE__ */ new Set(),\n\t\tremovedFiles: /* @__PURE__ */ new Set(),\n\t\tisRouteFile,\n\t\tscanFiles,\n\t\tupdateFiles(files) {\n\t\t\tfor (const file of routes.files) if (!files.has(file)) routes.removedFiles.add(file);\n\t\t\tfor (const file of files) routes.removedFiles.delete(file);\n\t\t\troutes.files = files;\n\t\t\tif (!useDynamicRouteRegistry) return;\n\t\t\tmkdirSync(dirname(registryPath), { recursive: true });\n\t\t\tconst registryDir = realpathSync(dirname(registryPath));\n\t\t\troutes.registryId = join(registryDir, basename(registryPath));\n\t\t\tconst source = `export const routes = {\n${[...files].sort().map((file) => {\n\t\t\t\tconst routeKey = `/${normalizePath(relative(root, file))}`;\n\t\t\t\tlet importPath = normalizePath(relative(registryDir, file));\n\t\t\t\tif (!importPath.startsWith(\".\")) importPath = `./${importPath}`;\n\t\t\t\treturn ` ${JSON.stringify(routeKey)}: () => import(${JSON.stringify(importPath)})`;\n\t\t\t}).join(\",\\n\")}\n}\n`;\n\t\t\tif (!existsSync(registryPath) || readFileSync(registryPath, \"utf8\") !== source) writeFileSync(registryPath, source);\n\t\t}\n\t};\n\troutes.updateFiles(routes.scanFiles());\n\tconst routeImports = useDynamicRouteRegistry ? `import { routes } from ${JSON.stringify(registrySpecifier)};` : `var _routes = import.meta.glob(${JSON.stringify(routeGlobs)}, { exhaustive: true });\n// fix route keys: One expects '/${routerRoot}/...' prefix but import.meta.glob returns './${routerRoot}/...'\nvar routes = {};\nObject.keys(_routes).forEach(function(key) {\n var normalizedKey = key.replace(/^\\\\.\\\\//, '');\n routes['/' + normalizedKey] = _routes[key];\n});`;\n\tconst routeHmr = useDynamicRouteRegistry ? `if (import.meta.hot) {\n import.meta.hot.accept(${JSON.stringify(registrySpecifier)}, function(next) {\n if (globalThis.__VXRN_UPDATE_NATIVE_ROUTES__) {\n globalThis.__VXRN_UPDATE_NATIVE_ROUTES__(next.routes);\n }\n });\n}` : \"\";\n\treturn {\n\t\troutes,\n\t\tplugin: {\n\t\t\tname: \"vxrn:native-virtual-entry\",\n\t\t\tresolveId(id) {\n\t\t\t\tif (id === VIRTUAL_NATIVE_ENTRY) return resolvedId;\n\t\t\t},\n\t\t\tload(id) {\n\t\t\t\tif (id !== resolvedId) return;\n\t\t\t\treturn entryCode();\n\t\t\t}\n\t\t}\n\t};\n}\nfunction nativeAnimatedGuardPlugin() {\n\treturn {\n\t\tname: \"vxrn:native-animated-guard\",\n\t\ttransform(code, id) {\n\t\t\tif (!id.includes(\"animated/NativeAnimatedHelper\")) return;\n\t\t\tconst target = \"const method = nullthrows(NativeAnimatedModule)[methodName];\";\n\t\t\tif (!code.includes(target)) return;\n\t\t\treturn {\n\t\t\t\tcode: code.replace(target, `${target} if (typeof method !== 'function') return;`),\n\t\t\t\tmap: {\n\t\t\t\t\tversion: 3,\n\t\t\t\t\tsources: [id],\n\t\t\t\t\tsourcesContent: [code],\n\t\t\t\t\tnames: [],\n\t\t\t\t\tmappings: code.split(\"\\n\").map((_, index) => index === 0 ? \"AAAA\" : \"AACA\").join(\";\")\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t};\n}\nfunction serverFileExclusionPlugin() {\n\treturn {\n\t\tname: \"vxrn:server-file-exclusion\",\n\t\tload(id) {\n\t\t\tif (/\\.server\\.\\w+$/.test(id)) return {\n\t\t\t\tcode: \"export default undefined;\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t\tif (/[\\\\/]_middleware\\.\\w+$/.test(id)) return {\n\t\t\t\tcode: \"export default undefined;\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction missingDynamicImportPlugin() {\n\tconst PREFIX = \"\\0vxrn-missing-module:\";\n\treturn {\n\t\tname: \"vxrn:missing-dynamic-import\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (options.kind !== \"dynamic-import\") return;\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tif (source.startsWith(\"\\0\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (resolved) return resolved;\n\t\t\treturn {\n\t\t\t\tid: `${PREFIX}${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (!id.startsWith(PREFIX)) return;\n\t\t\treturn {\n\t\t\t\tcode: `throw new Error(${JSON.stringify(`Cannot find module '${id.slice(21)}'`)});`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction environmentGuardPlugin() {\n\tconst THROWING = [\n\t\t\"server-only\",\n\t\t\"client-only\",\n\t\t\"web-only\"\n\t];\n\tconst NOOP = [\"native-only\"];\n\treturn {\n\t\tname: \"vxrn:environment-guard\",\n\t\tresolveId(source) {\n\t\t\tif (THROWING.includes(source)) return {\n\t\t\t\tid: `\\0env-guard-throw:${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t\tif (NOOP.includes(source)) return {\n\t\t\t\tid: `\\0env-guard-noop:${source}`,\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (id.startsWith(\"\\0env-guard-throw:\")) return {\n\t\t\t\tcode: `throw new Error(\"Cannot import '${id.slice(17)}' in a native bundle.\");`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t\tif (id.startsWith(\"\\0env-guard-noop:\")) return {\n\t\t\t\tcode: \"\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction hmrClientNoopPlugin() {\n\tconst RN_HMR_CLIENT_RE = /(^|[\\\\/])Utilities[\\\\/]HMRClient(\\.[cm]?[jt]sx?)?$/;\n\treturn {\n\t\tname: \"vxrn:hmr-client-noop\",\n\t\tresolveId(source, importer) {\n\t\t\tif ((source.startsWith(\"react-native/\") || importer != null && /(^|[\\\\/])react-native[\\\\/]/.test(importer)) && RN_HMR_CLIENT_RE.test(source)) return {\n\t\t\t\tid: \"\\0vxrn-hmr-client-noop\",\n\t\t\t\texternal: false\n\t\t\t};\n\t\t},\n\t\tload(id) {\n\t\t\tif (id === \"\\0vxrn-hmr-client-noop\") return {\n\t\t\t\tcode: `const HMRClient = { setup() {}, enable() {}, disable() {}, registerBundle() {}, log() {}, isEnabled() { return false } }\nexport default HMRClient`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t}\n\t};\n}\nfunction nativeIdentityAliasPlugin(platform) {\n\tconst packages = /* @__PURE__ */ new Map();\n\tlet resolver;\n\tconst findPackage = (directory) => {\n\t\tif (packages.has(directory)) return packages.get(directory);\n\t\tlet result = null;\n\t\tconst manifest = join(directory, \"package.json\");\n\t\tif (existsSync(manifest)) try {\n\t\t\tconst field = JSON.parse(readFileSync(manifest, \"utf8\"))[\"react-native\"];\n\t\t\tresult = {\n\t\t\t\troot: directory,\n\t\t\t\taliases: field && typeof field === \"object\" ? field : {}\n\t\t\t};\n\t\t} catch {}\n\t\telse {\n\t\t\tconst parent = dirname(directory);\n\t\t\tif (parent !== directory) result = findPackage(parent);\n\t\t}\n\t\tpackages.set(directory, result);\n\t\treturn result;\n\t};\n\treturn {\n\t\tname: \"vxrn:native-identity-alias\",\n\t\tasync resolveId(source, importer) {\n\t\t\tif (!importer || !source.startsWith(\".\")) return;\n\t\t\tconst pkg = findPackage(dirname(importer));\n\t\t\tif (!pkg) return;\n\t\t\tconst key = `./${normalizePath(relative(pkg.root, resolve(dirname(importer), source)))}`;\n\t\t\tif (pkg.aliases[key] !== key) return;\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\taliasFields: []\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst result = resolver.sync(dirname(importer), source);\n\t\t\tif (result.path) return result.path;\n\t\t}\n\t};\n}\nfunction nativeExportsPrecedencePlugin(root, platform) {\n\tconst manifests = /* @__PURE__ */ new Map();\n\tconst readManifest = (directory) => {\n\t\tif (!manifests.has(directory)) {\n\t\t\tlet manifest = null;\n\t\t\ttry {\n\t\t\t\tmanifest = JSON.parse(readFileSync(join(directory, \"package.json\"), \"utf8\"));\n\t\t\t} catch {}\n\t\t\tmanifests.set(directory, manifest);\n\t\t}\n\t\treturn manifests.get(directory);\n\t};\n\tconst resolvers = /* @__PURE__ */ new Map();\n\treturn {\n\t\tname: \"vxrn:native-exports-precedence\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (!resolved || resolved.external || resolved.id.startsWith(\"\\0\")) return resolved;\n\t\t\tconst name = source.split(\"/\").slice(0, source.startsWith(\"@\") ? 2 : 1).join(\"/\");\n\t\t\tlet directory = dirname(resolved.id);\n\t\t\twhile (readManifest(directory)?.name !== name) {\n\t\t\t\tif (dirname(directory) === directory) return resolved;\n\t\t\t\tdirectory = dirname(directory);\n\t\t\t}\n\t\t\tconst exportsMap = JSON.stringify(readManifest(directory)?.exports ?? null);\n\t\t\tif (!exportsMap.includes(\"\\\"react-native\\\"\") || !exportsMap.includes(\"\\\"browser\\\"\")) return resolved;\n\t\t\tconst kind = options.kind === \"require-call\" ? \"require\" : \"import\";\n\t\t\tlet resolver = resolvers.get(kind);\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\tconditionNames: [\n\t\t\t\t\t\t\"react-native\",\n\t\t\t\t\t\tkind,\n\t\t\t\t\t\t\"default\"\n\t\t\t\t\t]\n\t\t\t\t});\n\t\t\t\tresolvers.set(kind, resolver);\n\t\t\t}\n\t\t\tconst native = resolver.sync(importer ? dirname(importer) : root, source);\n\t\t\tif (!native.path || native.path === resolved.id) return resolved;\n\t\t\treturn this.resolve(native.path, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t}\n\t};\n}\nfunction nativeDeclarationAliasPlugin(root, platform) {\n\tconst resolvers = /* @__PURE__ */ new Map();\n\treturn {\n\t\tname: \"vxrn:declaration-alias\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source.startsWith(\".\") || source.startsWith(\"/\") || source.includes(\":\")) return;\n\t\t\tconst resolved = await this.resolve(source, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (!resolved || resolved.external || !/\\.d\\.[cm]?ts$/.test(resolved.id)) return resolved;\n\t\t\tconst kind = options.kind === \"require-call\" ? \"require\" : \"import\";\n\t\t\tlet resolver = resolvers.get(kind);\n\t\t\tif (!resolver) {\n\t\t\t\tconst { ResolverFactory } = await import(\"rolldown/experimental\");\n\t\t\t\tresolver = new ResolverFactory({\n\t\t\t\t\t...getNativeResolveConfig(platform),\n\t\t\t\t\tconditionNames: [\n\t\t\t\t\t\t\"react-native\",\n\t\t\t\t\t\t\"browser\",\n\t\t\t\t\t\tkind,\n\t\t\t\t\t\t\"default\"\n\t\t\t\t\t]\n\t\t\t\t});\n\t\t\t\tresolvers.set(kind, resolver);\n\t\t\t}\n\t\t\tconst runtime = resolver.sync(importer ? dirname(importer) : root, source);\n\t\t\tif (!runtime.path || /\\.d\\.[cm]?ts$/.test(runtime.path)) this.error(`Native import ${source} resolves to a declaration without a runtime export`);\n\t\t\treturn this.resolve(runtime.path, importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t}\n\t};\n}\nfunction nativeAssetRegistryPlugin(root) {\n\tlet registryPath;\n\treturn {\n\t\tname: \"vxrn:asset-registry\",\n\t\tasync resolveId(source, importer) {\n\t\t\tif (source !== \"react-native/asset-registry\" && source !== \"@react-native/assets-registry/registry\") return;\n\t\t\tif (registryPath === void 0) try {\n\t\t\t\tconst reactNativeRoot = dirname(resolvePath(\"react-native/package.json\", root));\n\t\t\t\tconst exportedRegistry = join(reactNativeRoot, \"src/asset-registry.js\");\n\t\t\t\tregistryPath = existsSync(exportedRegistry) ? exportedRegistry : resolvePath(\"@react-native/assets-registry/registry\", reactNativeRoot);\n\t\t\t} catch {\n\t\t\t\tregistryPath = null;\n\t\t\t}\n\t\t\tif (registryPath) return this.resolve(normalizePath(registryPath), importer, { skipSelf: true });\n\t\t}\n\t};\n}\nfunction nativePackageDedupePlugin(root) {\n\tconst packages = /* @__PURE__ */ new Set([\n\t\t...dedupe,\n\t\t\"react-native-worklets\",\n\t\t\"react-native-nitro-modules\"\n\t]);\n\treturn {\n\t\tname: \"vxrn:native-package-dedupe\",\n\t\tasync resolveId(source) {\n\t\t\tconst parts = source.split(\"/\");\n\t\t\tconst packageName = source.startsWith(\"@\") ? parts.slice(0, 2).join(\"/\") : parts[0];\n\t\t\tif (!packages.has(packageName)) return;\n\t\t\treturn this.resolve(source, join(root, \"package.json\"), { skipSelf: true });\n\t\t}\n\t};\n}\nfunction reactNativeDedupePlugin(root) {\n\tlet reactNativeRoot;\n\treturn {\n\t\tname: \"vxrn:react-native-dedupe\",\n\t\tasync resolveId(source, importer, options) {\n\t\t\tif (source !== \"react-native\" && !source.startsWith(\"react-native/\")) return;\n\t\t\tif (reactNativeRoot === void 0) try {\n\t\t\t\treactNativeRoot = realpathSync(dirname(resolvePath(\"react-native/package.json\", root)));\n\t\t\t} catch {\n\t\t\t\treactNativeRoot = null;\n\t\t\t}\n\t\t\tif (!reactNativeRoot) return;\n\t\t\tconst exported = await this.resolve(source, join(root, \"package.json\"), {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (exported) return exported;\n\t\t\tconst subpath = source === \"react-native\" ? \"index.js\" : source.slice(13);\n\t\t\tconst unified = await this.resolve(normalizePath(resolve(reactNativeRoot, subpath)), importer, {\n\t\t\t\tskipSelf: true,\n\t\t\t\tkind: options.kind\n\t\t\t});\n\t\t\tif (unified) return unified;\n\t\t\tthis.error(`[vxrn] '${source}' is missing from the app's react-native (${reactNativeRoot}), imported by '${importer}'. refusing the nested copy so the native runtime stays a singleton.`);\n\t\t}\n\t};\n}\nfunction cssStubPlugin() {\n\treturn {\n\t\tname: \"vxrn:css-stub\",\n\t\tload: { handler(id) {\n\t\t\tif (id.endsWith(\".css\")) return {\n\t\t\t\tcode: \"\",\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction vxrnCompilerPlugin(platform, dev, projectRoot = process.cwd(), sourceMaps = false, trace) {\n\tlet compiler = null;\n\tconst isRefreshCandidate = (id) => dev && !id.includes(\"node_modules\") && !id.includes(\"__virtual-native-entry\") && /\\.[tj]sx?$/.test(id);\n\treturn {\n\t\tname: \"vxrn:compiler\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tlet active = \"transform\";\n\t\t\tlet failed = false;\n\t\t\tlet mark;\n\t\t\tif (trace) try {\n\t\t\t\tconst record = trace(id);\n\t\t\t\tif (record) mark = (stage, status) => {\n\t\t\t\t\tactive = status === \"start\" ? stage : \"transform\";\n\t\t\t\t\ttry {\n\t\t\t\t\t\trecord(stage, status);\n\t\t\t\t\t} catch {}\n\t\t\t\t};\n\t\t\t} catch {}\n\t\t\tmark?.(\"transform\", \"start\");\n\t\t\ttry {\n\t\t\t\tconst needsRefresh = isRefreshCandidate(id);\n\t\t\t\tif (!compiler) {\n\t\t\t\t\tmark?.(\"compiler-import\", \"start\");\n\t\t\t\t\tcompiler = await import(\"@vxrn/compiler\");\n\t\t\t\t\tmark?.(\"compiler-import\", \"end\");\n\t\t\t\t}\n\t\t\t\tconst props = {\n\t\t\t\t\tid,\n\t\t\t\t\tcode,\n\t\t\t\t\tprojectRoot,\n\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\tenvironment: platform === \"android\" ? \"android\" : \"ios\",\n\t\t\t\t\treactForRNVersion: \"19\"\n\t\t\t\t};\n\t\t\t\tmark?.(\"options\", \"start\");\n\t\t\t\tlet babelOptions = compiler.getBabelOptions(props);\n\t\t\t\tmark?.(\"options\", \"end\");\n\t\t\t\tlet curCode = code;\n\t\t\t\tconst intermediateMaps = [];\n\t\t\t\tconst isWorkletPlugin = (entry) => {\n\t\t\t\t\tif (!entry) return false;\n\t\t\t\t\tconst name = typeof entry === \"string\" ? entry : Array.isArray(entry) ? entry[0] : null;\n\t\t\t\t\treturn typeof name === \"string\" && (name.includes(\"react-native-worklets\") || name.includes(\"react-native-reanimated\"));\n\t\t\t\t};\n\t\t\t\tconst workletEntry = babelOptions?.plugins?.find(isWorkletPlugin);\n\t\t\t\tconst workletPluginOptions = Array.isArray(workletEntry) ? workletEntry[1] : void 0;\n\t\t\t\tconst useWorklets = compiler.isNativeWorkletsEnabled() && (Boolean(workletEntry) || compiler.shouldTransformWorklets({\n\t\t\t\t\tid,\n\t\t\t\t\tcode\n\t\t\t\t}));\n\t\t\t\tconst compilerPluginIndex = babelOptions?.plugins?.findIndex((x) => Array.isArray(x) && x[0] === \"babel-plugin-react-compiler\") ?? -1;\n\t\t\t\tif (compilerPluginIndex !== -1) {\n\t\t\t\t\tif (useWorklets) {\n\t\t\t\t\t\tmark?.(\"worklets-prepare\", \"start\");\n\t\t\t\t\t\tconst prepared = compiler.prepareWorkletsForReactCompiler(id, curCode, sourceMaps);\n\t\t\t\t\t\tmark?.(\"worklets-prepare\", \"end\");\n\t\t\t\t\t\tif (prepared) {\n\t\t\t\t\t\t\tcurCode = prepared.code;\n\t\t\t\t\t\t\tif (prepared.map) intermediateMaps.push(prepared.map);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tconst compilerPluginOptions = babelOptions.plugins[compilerPluginIndex][1] || {};\n\t\t\t\t\tif (!(compilerPluginOptions.compiler === \"babel\" || process.env.ONE_REACT_COMPILER === \"babel\" || process.env.VXRN_REACT_COMPILER === \"babel\")) {\n\t\t\t\t\t\tmark?.(\"oxc-react-compiler\", \"start\");\n\t\t\t\t\t\tconst compilerOut = await compiler.transformOxcReactCompiler(id, curCode, compilerPluginOptions, sourceMaps);\n\t\t\t\t\t\tmark?.(\"oxc-react-compiler\", \"end\");\n\t\t\t\t\t\tif (compilerOut?.code) {\n\t\t\t\t\t\t\tcurCode = compilerOut.code;\n\t\t\t\t\t\t\tif (sourceMaps && compilerOut.map) intermediateMaps.push(compilerOut.map);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbabelOptions.plugins.splice(compilerPluginIndex, 1);\n\t\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (useWorklets) {\n\t\t\t\t\tmark?.(\"worklets\", \"start\");\n\t\t\t\t\tconst workletOut = await compiler.transformWorklets(id, curCode, sourceMaps, {\n\t\t\t\t\t\tprojectRoot,\n\t\t\t\t\t\t...workletPluginOptions\n\t\t\t\t\t});\n\t\t\t\t\tmark?.(\"worklets\", \"end\");\n\t\t\t\t\tif (workletOut?.code) {\n\t\t\t\t\t\tcurCode = workletOut.code;\n\t\t\t\t\t\tif (sourceMaps && workletOut.map) intermediateMaps.push(workletOut.map);\n\t\t\t\t\t}\n\t\t\t\t\tif (babelOptions?.plugins) {\n\t\t\t\t\t\tbabelOptions.plugins = babelOptions.plugins.filter((entry) => !isWorkletPlugin(entry));\n\t\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!babelOptions && !needsRefresh) {\n\t\t\t\t\tif (curCode !== code) {\n\t\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (sourceMaps && babelOptions) {\n\t\t\t\t\tbabelOptions = {\n\t\t\t\t\t\t...babelOptions,\n\t\t\t\t\t\tsourceMaps: true,\n\t\t\t\t\t\tsourceFileName: id\n\t\t\t\t\t};\n\t\t\t\t\tdelete babelOptions.inputSourceMap;\n\t\t\t\t}\n\t\t\t\tif (babelOptions) {\n\t\t\t\t\tmark?.(\"babel\", \"start\");\n\t\t\t\t\tconst result = await compiler.transformBabel(id, curCode, babelOptions);\n\t\t\t\t\tmark?.(\"babel\", \"end\");\n\t\t\t\t\tif (result?.code) {\n\t\t\t\t\t\tcurCode = result.code;\n\t\t\t\t\t\tif (sourceMaps && result.map) intermediateMaps.push(result.map);\n\t\t\t\t\t\tif (!needsRefresh) {\n\t\t\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (needsRefresh) {\n\t\t\t\t\tmark?.(\"refresh-import\", \"start\");\n\t\t\t\t\tconst { transformSync } = await import(\"oxc-transform-react\");\n\t\t\t\t\tmark?.(\"refresh-import\", \"end\");\n\t\t\t\t\tconst jsxImportSource = compiler.configuration?.enableNativewind && !id.includes(\"node_modules\") ? \"nativewind\" : \"react\";\n\t\t\t\t\tmark?.(\"refresh\", \"start\");\n\t\t\t\t\tconst res = transformSync(id, curCode, {\n\t\t\t\t\t\tjsx: {\n\t\t\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\t\t\truntime: \"automatic\",\n\t\t\t\t\t\t\timportSource: jsxImportSource,\n\t\t\t\t\t\t\trefresh: {\n\t\t\t\t\t\t\t\trefreshReg: \"__vxrnRefreshReg\",\n\t\t\t\t\t\t\t\trefreshSig: \"__vxrnRefreshSig\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\treactCompiler: false,\n\t\t\t\t\t\tsourcemap: sourceMaps\n\t\t\t\t\t});\n\t\t\t\t\tif (res.fatal) throw new Error(`[vxrn:compiler] oxc react transform failed on ${id}: ${(res.errors ?? []).map((e) => e.message ?? String(e)).join(\", \")}`);\n\t\t\t\t\tmark?.(\"refresh\", \"end\");\n\t\t\t\t\tconst header = `var __prevRefreshReg = globalThis.$RefreshReg$;\nvar __prevRefreshSig = globalThis.$RefreshSig$;\nif (globalThis.__ReactRefresh) {\n globalThis.$RefreshReg$ = function(type, id) {\n globalThis.__ReactRefresh.register(type, \"${id.replace(/\\\\/g, \"\\\\\\\\\").replace(/\"/g, \"\\\\\\\"\")}\" + \" \" + id);\n };\n globalThis.$RefreshSig$ = globalThis.__ReactRefresh.createSignatureFunctionForTransform;\n}\n// keep registration calls local so rolldown retains them in the initial bundle.\nvar __vxrnRefreshReg = globalThis.$RefreshReg$;\nvar __vxrnRefreshSig = globalThis.$RefreshSig$;\n\n`;\n\t\t\t\t\tconst footer = `\n\nglobalThis.$RefreshReg$ = __prevRefreshReg;\nglobalThis.$RefreshSig$ = __prevRefreshSig;\nif (import.meta.hot) {\n import.meta.hot.acceptReactRefresh(function() {\n if (globalThis.__ReactRefresh) {\n setTimeout(function() { globalThis.__ReactRefresh.performReactRefresh(); }, 30);\n }\n });\n}\n`;\n\t\t\t\t\tlet out;\n\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\tif (sourceMaps) {\n\t\t\t\t\t\tconst MagicString = (await import(\"magic-string\")).default;\n\t\t\t\t\t\tconst ms = new MagicString(res.code);\n\t\t\t\t\t\tms.prepend(header);\n\t\t\t\t\t\tms.append(footer);\n\t\t\t\t\t\tout = ms.toString();\n\t\t\t\t\t\tconst allMaps = [\n\t\t\t\t\t\t\tms.generateMap({\n\t\t\t\t\t\t\t\tsource: id,\n\t\t\t\t\t\t\t\thires: true\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tres.map,\n\t\t\t\t\t\t\t...intermediateMaps.slice().reverse()\n\t\t\t\t\t\t].filter(Boolean);\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tfinalMap = remapping(allMaps, () => null);\n\t\t\t\t\t} else out = header + res.code + footer;\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcode: out,\n\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tfailed = true;\n\t\t\t\tif (active !== \"transform\") mark?.(active, \"error\");\n\t\t\t\tthrow error;\n\t\t\t} finally {\n\t\t\t\tmark?.(\"transform\", failed ? \"error\" : \"end\");\n\t\t\t}\n\t\t}\n\t};\n}\nfunction mixedNativeModulePlugin(sourceMaps) {\n\treturn {\n\t\tname: \"vxrn:mixed-native-module\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id) || id.includes(\"\\0\")) return;\n\t\t\tconst { transformMixedNativeModule } = await import(\"@vxrn/compiler\");\n\t\t\treturn transformMixedNativeModule(code, id, sourceMaps);\n\t\t}\n\t};\n}\nfunction flowStripPlugin() {\n\treturn {\n\t\tname: \"vxrn:flow-strip\",\n\t\ttransform: { async handler(code, id) {\n\t\t\tif (!shouldStripFlow(id, code)) return;\n\t\t\tconst { stripFlowTypes } = await import(\"@vxrn/compiler\");\n\t\t\tconst result = await stripFlowTypes(id, code);\n\t\t\treturn {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: result.map\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction assetPlugin(opts) {\n\tconst assetRegex = new RegExp(`\\\\.(?:${DEFAULT_ASSET_EXTS.join(\"|\")})$`);\n\treturn {\n\t\tname: \"vxrn:asset\",\n\t\tload: { async handler(id) {\n\t\t\tif (!assetRegex.test(id)) return;\n\t\t\tconst assetData = await getNativeAssetData(id, opts.root, opts.platform);\n\t\t\topts.onAsset?.(assetData);\n\t\t\tif (opts.assetsDest) copyNativeAssetFiles(assetData, opts.assetsDest, opts.platform);\n\t\t\treturn {\n\t\t\t\tcode: `module.exports = require('react-native/asset-registry').registerAsset(${JSON.stringify(assetData)});`,\n\t\t\t\tmoduleType: \"js\"\n\t\t\t};\n\t\t} }\n\t};\n}\nfunction createNativeDevAssetRegistry() {\n\tconst assets = /* @__PURE__ */ new Map();\n\treturn {\n\t\tregister(asset) {\n\t\t\tfor (const [index, scale] of asset.scales.entries()) {\n\t\t\t\tconst filePath = asset.files[index];\n\t\t\t\tif (!filePath) continue;\n\t\t\t\tconst fileName = `${asset.name}${scale === 1 ? \"\" : `@${scale}x`}.${asset.type}`;\n\t\t\t\tassets.set(`${asset.httpServerLocation}/${fileName}`, {\n\t\t\t\t\tfilePath,\n\t\t\t\t\thash: asset.hash,\n\t\t\t\t\ttype: asset.type\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresolve(pathname, hash) {\n\t\t\tconst asset = assets.get(pathname);\n\t\t\tif (!asset || hash !== void 0 && hash !== asset.hash) return;\n\t\t\treturn asset;\n\t\t}\n\t};\n}\nconst NATIVE_IMAGE_EXTS = /* @__PURE__ */ new Set([\n\t\"png\",\n\t\"jpg\",\n\t\"jpeg\",\n\t\"gif\",\n\t\"webp\",\n\t\"bmp\",\n\t\"psd\",\n\t\"svg\",\n\t\"tiff\",\n\t\"ktx\"\n]);\nfunction parseNativeAssetName(filePath) {\n\tconst type = extname(filePath).slice(1);\n\tif (!type) return;\n\tconst stem = basename(filePath, `.${type}`);\n\tconst platformMatch = stem.match(/^(.*)\\.(ios|android)$/);\n\tconst platform = platformMatch?.[2];\n\tconst scaleMatch = (platformMatch?.[1] ?? stem).match(/^(.+?)(?:@([\\d.]+)x)?$/);\n\tif (!scaleMatch) return;\n\tconst scale = scaleMatch[2] === void 0 ? 1 : Number.parseFloat(scaleMatch[2]);\n\tif (!Number.isFinite(scale) || scale <= 0) return;\n\treturn {\n\t\tname: scaleMatch[1],\n\t\tscale,\n\t\tplatform,\n\t\ttype\n\t};\n}\nfunction getNativeAssetUrlDirectory(root, assetDirectory) {\n\tconst safeDirectory = relative(realpathSync(root), realpathSync(assetDirectory)).replace(/\\\\/g, \"/\").split(\"/\").filter((segment) => segment && segment !== \".\").map((segment) => segment === \"..\" ? \"_\" : segment).join(\"/\");\n\treturn safeDirectory ? `/assets/${safeDirectory}` : \"/assets\";\n}\nasync function getNativeAssetData(id, root, platform) {\n\tconst requested = parseNativeAssetName(id);\n\tif (!requested) throw new Error(`[vxrn] invalid native asset path: ${id}`);\n\tconst assetDirectory = dirname(id);\n\tconst filesByScale = /* @__PURE__ */ new Map();\n\tfor (const fileName of readdirSync(assetDirectory)) {\n\t\tconst candidate = parseNativeAssetName(fileName);\n\t\tif (!candidate || candidate.name !== requested.name || candidate.type !== requested.type || candidate.platform !== void 0 && candidate.platform !== platform) continue;\n\t\tconst platformSpecific = candidate.platform === platform;\n\t\tconst existing = filesByScale.get(candidate.scale);\n\t\tif (!existing || platformSpecific && !existing.platformSpecific) filesByScale.set(candidate.scale, {\n\t\t\tfile: join(assetDirectory, fileName),\n\t\t\tplatformSpecific\n\t\t});\n\t}\n\tconst scales = [...filesByScale.keys()].sort((a, b) => a - b);\n\tconst files = scales.map((scale) => filesByScale.get(scale).file);\n\tif (files.length === 0) throw new Error(`[vxrn] native asset has no files for ${platform}: ${id}`);\n\tconst hash = createHash(\"md5\");\n\tfor (const file of files) hash.update(readFileSync(file));\n\tconst assetData = {\n\t\t__packager_asset: true,\n\t\tname: requested.name,\n\t\ttype: requested.type,\n\t\tscales,\n\t\tfiles,\n\t\thttpServerLocation: getNativeAssetUrlDirectory(root, assetDirectory),\n\t\tfileSystemLocation: assetDirectory,\n\t\thash: hash.digest(\"hex\")\n\t};\n\tif (NATIVE_IMAGE_EXTS.has(requested.type)) try {\n\t\tconst { imageSize } = await import(\"image-size\");\n\t\tconst dims = imageSize(readFileSync(files[0]));\n\t\tassetData.width = dims.width === void 0 ? void 0 : dims.width / scales[0];\n\t\tassetData.height = dims.height === void 0 ? void 0 : dims.height / scales[0];\n\t} catch {}\n\treturn assetData;\n}\nfunction getIOSAssetScales(scales) {\n\tconst supported = scales.filter((scale) => scale === 1 || scale === 2 || scale === 3);\n\tif (supported.length > 0 || scales.length === 0) return supported;\n\treturn [scales.find((scale) => scale > 3) ?? scales[scales.length - 1]];\n}\nfunction getAndroidAssetDirectory(type, scale) {\n\tif (!(/* @__PURE__ */ new Set([\n\t\t\"gif\",\n\t\t\"heic\",\n\t\t\"heif\",\n\t\t\"jpeg\",\n\t\t\"jpg\",\n\t\t\"ktx\",\n\t\t\"png\",\n\t\t\"webp\",\n\t\t\"xml\"\n\t])).has(type)) return \"raw\";\n\tconst density = (/* @__PURE__ */ new Map([\n\t\t[.75, \"ldpi\"],\n\t\t[1, \"mdpi\"],\n\t\t[1.5, \"hdpi\"],\n\t\t[2, \"xhdpi\"],\n\t\t[3, \"xxhdpi\"],\n\t\t[4, \"xxxhdpi\"]\n\t])).get(scale);\n\tif (density) return `drawable-${density}`;\n\treturn `drawable-${Math.round(scale * 160)}dpi`;\n}\nfunction getAndroidAssetName(asset) {\n\treturn `${asset.httpServerLocation}/${asset.name}`.toLowerCase().replace(/^\\//, \"\").replace(/\\//g, \"_\").replace(/([^a-z0-9_])/g, \"\").replace(/^assets_/, \"\");\n}\nfunction copyNativeAssetFiles(asset, assetsDest, platform) {\n\tconst validIOSScales = new Set(getIOSAssetScales(asset.scales));\n\tfor (const [index, scale] of asset.scales.entries()) {\n\t\tif (platform === \"ios\" && !validIOSScales.has(scale)) continue;\n\t\tconst destination = platform === \"android\" ? join(assetsDest, getAndroidAssetDirectory(asset.type, scale), `${getAndroidAssetName(asset)}.${asset.type}`) : join(assetsDest, asset.httpServerLocation.slice(1), `${asset.name}${scale === 1 ? \"\" : `@${scale}x`}.${asset.type}`);\n\t\tmkdirSync(dirname(destination), { recursive: true });\n\t\tcopyFileSync(asset.files[index], destination);\n\t}\n}\nfunction hermesCompatSWCPlugin(dev, sourceMaps = false, keepNames = false) {\n\tlet oxc = null;\n\treturn {\n\t\tname: \"vxrn:hermes-compat\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tconst hasClass = /\\bclass(?:\\s|\\{)/.test(code);\n\t\t\tconst hasAsync = code.includes(\"async\");\n\t\t\tconst hasBlockScopedBinding = /\\b(?:const|let)\\s/.test(code);\n\t\t\tif (!hasClass && !hasAsync && !hasBlockScopedBinding) return;\n\t\t\tlet output;\n\t\t\tif (code.length <= 5e5 || hasClass) {\n\t\t\t\tif (!oxc) oxc = await import(\"oxc-transform\");\n\t\t\t\tconst lang = /\\.[cm]?ts$/.test(id) ? \"ts\" : id.endsWith(\".tsx\") ? \"tsx\" : \"jsx\";\n\t\t\t\tconst result = oxc.transformSync(id, code, {\n\t\t\t\t\tlang,\n\t\t\t\t\ttarget: \"es2020\",\n\t\t\t\t\tassumptions: { setPublicClassFields: true },\n\t\t\t\t\tjsx: \"preserve\",\n\t\t\t\t\tsourcemap: sourceMaps,\n\t\t\t\t\tsourceType: id.endsWith(\".cjs\") ? \"script\" : \"module\"\n\t\t\t\t});\n\t\t\t\tif (result.errors?.length) {\n\t\t\t\t\tconst err = result.errors[0];\n\t\t\t\t\tthrow new Error(err.message + (err.codeframe ? `\n${err.codeframe}` : \"\"));\n\t\t\t\t}\n\t\t\t\toutput = {\n\t\t\t\t\tcode: result.code,\n\t\t\t\t\tmap: sourceMaps ? result.map : void 0\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (hasClass || hasBlockScopedBinding) {\n\t\t\t\tconst { transformHermesClasses } = await import(\"@vxrn/compiler\");\n\t\t\t\tconst classes = await transformHermesClasses(output?.code ?? code, id, sourceMaps);\n\t\t\t\tif (classes) {\n\t\t\t\t\tif (classes.map && output?.map) {\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tclasses.map = remapping([classes.map, output.map], () => null);\n\t\t\t\t\t}\n\t\t\t\t\toutput = classes;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst lowered = await transformHermesAsync(output?.code ?? code, id, sourceMaps, void 0, keepNames);\n\t\t\tif (!lowered) return output;\n\t\t\tif (lowered.map && output?.map) {\n\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\tlowered.map = remapping([lowered.map, output.map], () => null);\n\t\t\t}\n\t\t\treturn lowered;\n\t\t}\n\t};\n}\nconst hermesCompatPlugin = hermesCompatSWCPlugin;\nfunction hermesLoopsPlugin(sourceMaps = false) {\n\tlet compiler = null;\n\treturn {\n\t\tname: \"vxrn:hermes-loops\",\n\t\tasync transform(code, id) {\n\t\t\tif (!/\\.[cm]?[jt]sx?$/.test(id)) return;\n\t\t\tif (id.includes(\"\\0\") || id.includes(\"virtual:\")) return;\n\t\t\tif (!compiler) compiler = await import(\"@vxrn/compiler\");\n\t\t\tconst result = compiler.transformHermesLoops(code, id);\n\t\t\tif (!result) return;\n\t\t\tif (!sourceMaps) return {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: null\n\t\t\t};\n\t\t\tif (result.maps.length === 1) return {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: result.maps[0]\n\t\t\t};\n\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\treturn {\n\t\t\t\tcode: result.code,\n\t\t\t\tmap: remapping(result.maps.slice().reverse(), () => null)\n\t\t\t};\n\t\t}\n\t};\n}\nfunction getHmrRuntimeSource() {\n\treturn `\n// vxrn HMR runtime for rolldown devMode\nvar BaseDevRuntime = DevRuntime;\n\nclass ReactNativeDevRuntime extends BaseDevRuntime {\n constructor() {\n var clientId = 'rn-' + Date.now() + '-' + Math.random().toString(36).slice(2);\n super(clientId);\n this._socket = null;\n this.moduleHotContexts = {};\n this.lastSeq = 0;\n }\n\n createModuleHotContext(moduleId) {\n var runtime = this;\n var ctx = {\n acceptCallbacks: [],\n reactRefreshAcceptCallback: null,\n accept: function(deps, callback) {\n if (typeof deps === 'function' || !deps) {\n ctx.acceptCallbacks.push({\n deps: [moduleId],\n fn: function(modules) { if (typeof deps === 'function') deps(modules[0]); }\n });\n } else if (typeof deps === 'string') {\n ctx.acceptCallbacks.push({\n deps: [deps],\n fn: function(modules) { if (callback) callback(modules[0]); }\n });\n } else if (Array.isArray(deps)) {\n ctx.acceptCallbacks.push({ deps: deps, fn: callback || function() {} });\n }\n },\n acceptReactRefresh: function(callback) {\n ctx.reactRefreshAcceptCallback = callback;\n },\n invalidate: function() { runtime.requestReload('module invalidated: ' + moduleId); },\n on: function() {},\n off: function() {},\n send: function() {},\n get refresh() { return globalThis.__ReactRefresh; },\n get refreshUtils() {\n return {\n isReactRefreshBoundary: function(exports) {\n if (!globalThis.__ReactRefresh) return false;\n if (globalThis.__ReactRefresh.isLikelyComponentType(exports)) return true;\n if (!exports || typeof exports !== 'object') return false;\n var hasExports = false, allComponents = true;\n for (var key in exports) {\n hasExports = true;\n if (key === '__esModule') continue;\n if (!globalThis.__ReactRefresh.isLikelyComponentType(exports[key])) allComponents = false;\n }\n return hasExports && allComponents;\n },\n enqueueUpdate: function() {\n if (globalThis.__ReactRefresh) {\n setTimeout(function() { globalThis.__ReactRefresh.performReactRefresh(); }, 50);\n }\n }\n };\n }\n };\n this.moduleHotContexts[moduleId] = ctx;\n return ctx;\n }\n\n isSelfAccepted(moduleId) {\n var ctx = this.moduleHotContexts[moduleId];\n var explicitlyAccepted = !!(ctx && ctx.acceptCallbacks.some(function(callback) {\n return callback.deps.indexOf(moduleId) !== -1;\n }));\n if (explicitlyAccepted) return { accepted: true, reactRefresh: false };\n if (!ctx || !ctx.reactRefreshAcceptCallback || !globalThis.__ReactRefresh) {\n return { accepted: false, reactRefresh: false };\n }\n var exports = this.loadExports(moduleId);\n return {\n accepted: ctx.refreshUtils.isReactRefreshBoundary(exports),\n reactRefresh: true\n };\n }\n\n acceptsDependency(parentId, moduleId) {\n var ctx = this.moduleHotContexts[parentId];\n return !!(ctx && ctx.acceptCallbacks.some(function(callback) {\n return callback.deps.indexOf(moduleId) !== -1;\n }));\n }\n\n findBoundaries(moduleId, traversed, updateSet, boundaries) {\n if (traversed.has(moduleId)) return true;\n traversed.add(moduleId);\n updateSet.add(moduleId);\n\n var selfAcceptance = this.isSelfAccepted(moduleId);\n if (selfAcceptance.accepted) {\n boundaries.push({\n boundary: moduleId,\n acceptedVia: moduleId,\n reactRefresh: selfAcceptance.reactRefresh\n });\n return true;\n }\n\n var importers = this.getImporters(moduleId).filter(function(importer) {\n return this.isExecuted(importer);\n }, this);\n if (importers.length === 0) return false;\n\n for (var i = 0; i < importers.length; i++) {\n var importer = importers[i];\n if (this.acceptsDependency(importer, moduleId)) {\n boundaries.push({ boundary: importer, acceptedVia: moduleId });\n } else if (!this.findBoundaries(importer, traversed, updateSet, boundaries)) {\n return false;\n }\n }\n return true;\n }\n\n applyHmrUpdate(code, changedIds, seq) {\n if (seq !== this.lastSeq + 1) return false;\n this.lastSeq = seq;\n\n var traversed = new Set();\n var updateSet = new Set();\n var boundaries = [];\n for (var i = 0; i < changedIds.length; i++) {\n var changedId = changedIds[i];\n if (!this.isExecuted(changedId)) continue;\n if (!this.findBoundaries(changedId, traversed, updateSet, boundaries)) return false;\n }\n // register the patch's factories even when no changed module has run yet,\n // so a later first import executes the edited code rather than a stale one\n if (globalThis.globalEvalWithSourceUrl) globalThis.globalEvalWithSourceUrl(code);\n else (0, eval)(code);\n if (boundaries.length === 0) return true;\n\n var callbacks = boundaries.map(function(item) {\n var ctx = this.moduleHotContexts[item.boundary];\n var selectedCallbacks = ctx ? ctx.acceptCallbacks.filter(function(callback) {\n return callback.deps.indexOf(item.acceptedVia) !== -1;\n }) : [];\n if (item.reactRefresh && ctx && ctx.reactRefreshAcceptCallback) {\n selectedCallbacks.push({\n deps: [item.acceptedVia],\n fn: function() { ctx.reactRefreshAcceptCallback(); }\n });\n }\n return {\n boundary: item.boundary,\n acceptedVia: item.acceptedVia,\n callbacks: selectedCallbacks\n };\n }, this);\n\n var modulesToReplace = Array.from(updateSet);\n for (var j = 0; j < modulesToReplace.length; j++) {\n if (!this.hasFactory(modulesToReplace[j])) return false;\n }\n for (var k = 0; k < modulesToReplace.length; k++) {\n this.removeModuleCache(modulesToReplace[k]);\n }\n\n for (var m = 0; m < callbacks.length; m++) {\n var apply = callbacks[m];\n this.initModule(apply.acceptedVia);\n var freshExports = this.loadExports(apply.acceptedVia);\n for (var n = 0; n < apply.callbacks.length; n++) {\n apply.callbacks[n].fn([freshExports]);\n }\n }\n\n for (var p = 0; p < changedIds.length; p++) {\n try {\n if (globalThis.__VXRN_ON_MODULE_UPDATED__) {\n globalThis.__VXRN_ON_MODULE_UPDATED__(changedIds[p]);\n }\n } catch (error) {\n console.error('[vxrn HMR]: module update hook failed', error);\n }\n }\n return true;\n }\n\n requestReload(reason) {\n if (this._socket && this._socket.readyState === 1) {\n this._socket.send(JSON.stringify({ type: 'hmr:invalidate', reason: reason }));\n }\n }\n\n reload(reason) {\n var reloadNativeBundle = globalThis.__VXRN_RELOAD_NATIVE_DEV_BUNDLE__;\n if (typeof reloadNativeBundle === 'function') {\n reloadNativeBundle(reason);\n return;\n }\n console.error('[vxrn HMR]: DevSettings.reload is unavailable');\n }\n\n setup(socket) {\n if (this._socket) return;\n this._socket = socket;\n var runtime = this;\n // addEventListener rather than socket.onmessage: the bundle's WebSocket is\n // whatever the host platform provides, and a host that does not honor on*\n // property assignment would otherwise leave the app permanently without\n // Fast Refresh and say nothing.\n socket.addEventListener('message', function(event) {\n var message;\n try {\n message = JSON.parse(event.data);\n } catch (error) {\n return;\n }\n try {\n if (message.type === 'hmr:update') {\n // a patch that cannot be applied in place is the reload signal\n if (!runtime.applyHmrUpdate(message.code, message.changedIds, message.seq)) {\n runtime.reload('native HMR update could not be applied');\n }\n } else if (message.type === 'hmr:reload') {\n runtime.reload('native route map changed');\n }\n } catch (error) {\n console.error('[vxrn HMR]: failed to apply update', error);\n }\n });\n socket.addEventListener('error', function(event) {\n console.warn('[vxrn HMR]: connection error', (event && event.message) || event);\n });\n }\n}\n\n${NATIVE_DEV_RUNTIME_END}\n`;\n}\n\nexport { NATIVE_DEV_RUNTIME_END, NATIVE_MODULE_SCOPE_MARKER, buildNativeBundle, createNativeDevAssetRegistry, createNativeDevEngine, getHermesSWCIncludes, getHmrRuntimeSource, getNativeAssetData, getNativeTransformConfig, hermesCompatPlugin, hermesCompatSWCPlugin, hermesLoopsPlugin, hmrClientNoopPlugin, nativeAnimatedGuardPlugin, normalizeNativeCommonJSInterop, postProcessNativeBundle, vxrnCompilerPlugin, wrapNativeBundleModuleScope };"],"mappings":"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"}
|