vxrn 1.26.1 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/plugins/reactNativeDevServer.mjs +15 -50
- package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
- package/dist/plugins/reactNativeDevServer.native.js +17 -113
- package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
- package/dist/utils/createNativeDevEngine.mjs +141 -68
- package/dist/utils/createNativeDevEngine.mjs.map +1 -1
- package/dist/utils/createNativeDevEngine.native.js +166 -90
- package/dist/utils/createNativeDevEngine.native.js.map +1 -1
- package/package.json +12 -12
- package/src/plugins/reactNativeDevServer.ts +27 -67
- package/src/utils/createNativeDevEngine.ts +204 -96
- package/types/plugins/reactNativeDevServer.d.ts.map +1 -1
- package/types/utils/createNativeDevEngine.d.ts +0 -1
- package/types/utils/createNativeDevEngine.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createHash","basename","dirname","extname","join","relative","resolve","copyFileSync","mkdirSync","readFileSync","readdirSync","realpathSync","statSync","pathToFileURL","micromatch","loadEnv","normalizePath","shouldStripFlow","transformHermesAsync","DEFAULT_ASSET_EXTS","getNativePrelude","rnCodegenPlugin","HERMES_CLASS_TRANSFORMS","HERMES_ASYNC_TRANSFORMS","getHermesSWCIncludes","dev","getResolveExtensions","platform","platformExts","nativeExts","defaultExts","getNativeResolveConfig","extensions","conditionNames","mainFields","getNativeTransformConfig","root","entryConfig","globalThis","__vxrnNativeEntryConfig","setupFileDefines","sf","setupFile","files","client","server","ios","android","native","JSON","stringify","userDefines","key","value","Object","entries","__vxrnNativeUserDefine","mode","publicEnv","envDefines","envObject","MODE","DEV","PROD","SSR","VITE_ENVIRONMENT","VITE_NATIVE","EXPO_OS","TAMAGUI_TARGET","TAMAGUI_ENVIRONMENT","jsx","runtime","define","__DEV__","inject","React","getNativePlugins","viteImportGlobPlugin","assetsDest","onAsset","sourceMaps","userPlugins","context","__vxrnAddNativePlugins","serverFileExclusionPlugin","environmentGuardPlugin","hmrClientNoopPlugin","cssStubPlugin","vxrnCompilerPlugin","projectRoot","flowStripPlugin","nativeAnimatedGuardPlugin","assetPlugin","hermesCompatSWCPlugin","hermesLoopsPlugin","map","plugin","api","vxrnNative","getNativeOutputOptions","prelude","sourcemap","minify","format","sourcemapPathTransform","relativeSourcePath","sourcemapPath","intro","codeSplitting","strictExecutionOrder","normalizeNativeCommonJSInterop","code","replace","blankPreservingLines","match","repeat","length","countLines","assertBundleLinesPreserved","before","after","stage","beforeLines","afterLines","Error","postProcessNativeBundle","idx","indexOf","beforeMarker","lastIndexOf","lineStart","snippet","slice","includes","afterMarker","end","removed","wrapNativeBundleModuleScope","downlevelClassFieldsInBundle","startMarker","endMarker","startIdx","endIdx","runtimeEnd","runtimeSection","originalNewlines","transformSync","result","target","assumptions","setPublicClassFields","errors","e","message","transformedCode","trimEnd","transformed","transformedNewlines","linePreservingRuntime","nativeBundlePostProcessPlugin","name","renderChunk","processed","createNativeDevEngine","options","port","host","serverUrl","plugins","onHmrUpdate","hmrRuntimeSource","getHmrRuntimeSource","assetRegistry","createNativeDevAssetRegistry","currentBundle","firstBuildError","bundleResolve","bundleReject","bundlePromise","resolvedHost","virtualEntry","nativeVirtualEntryPlugin","engineWork","Promise","queueEngineWork","work","then","catch","inputOptions","input","VIRTUAL_NATIVE_ENTRY","cwd","transform","experimental","devMode","implement","incrementalBuild","lazyBarrel","treeshake","shimMissingExports","moduleTypes","register","outputOptions","outro","outputProcessed","engine","rebuildIfNewRoute","routeRoot","knownRoutes","isRouteFile","routes","routeRootPrefix","some","file","normalized","has","startsWith","throwIfNoEntry","isDirectory","triggerFullBuild","ensureLatestBuildOutput","type","onOutput","finishOutput","resolve2","handleOutput","onHmrUpdates","console","error","changedFiles","clientId","update","updates","changedIds","seq","rebuildStrategy","watch","test","reject","chunk","output","find","o","isEntry","toString","info","Math","round","run","getBundle","timeoutId","clearTimeout","setTimeout","getAsset","pathname","hash","close","handleAddedFile","buildNativeBundle","entryFile","build","opts","isDev","resolvedId","routerRoot","flags","linking","setupFileImport","resolved","href","routeGlobs","ignoredRouteFiles","pattern","entryCode","stripDot","includeGlobs","filter","p","excludeGlobs","relativeToRoot","isMatch","Set","resolveId","id","load","clear","walkRouteRoot","dir","addWatchFile","entry","withFileTypes","child","add","version","sources","sourcesContent","names","mappings","split","_","index","moduleType","THROWING","NOOP","source","external","RN_HMR_CLIENT_RE","importer","handler","endsWith","process","compiler","isRefreshCandidate","needsRefresh","props","development","environment","reactForRNVersion","babelOptions","getBabelOptions","curCode","intermediateMaps","isWorkletPlugin","Array","isArray","workletEntry","workletPluginOptions","useWorklets","isNativeWorkletsEnabled","Boolean","shouldTransformWorklets","compilerPluginIndex","findIndex","x","prepared","prepareWorkletsForReactCompiler","push","compilerTarget","compilerOut","transformOxcReactCompiler","splice","workletOut","transformWorklets","finalMap","remapping","default","reverse","sourceFileName","inputSourceMap","transformBabel","jsxImportSource","configuration","enableNativewind","res","importSource","refresh","refreshReg","refreshSig","reactCompiler","fatal","String","header","footer","out","MagicString","ms","prepend","append","allMaps","generateMap","hires","filename","dialect","assetRegex","RegExp","assetData","getNativeAssetData","copyNativeAssetFiles","assets","Map","asset","scale","scales","filePath","fileName","set","httpServerLocation","get","NATIVE_IMAGE_EXTS","parseNativeAssetName","stem","platformMatch","scaleMatch","Number","parseFloat","isFinite","getNativeAssetUrlDirectory","assetDirectory","safeDirectory","segment","requested","filesByScale","candidate","platformSpecific","existing","keys","sort","a","b","__packager_asset","fileSystemLocation","digest","imageSize","dims","width","height","getIOSAssetScales","supported","getAndroidAssetDirectory","density","getAndroidAssetName","toLowerCase","validIOSScales","destination","recursive","oxc","hasClass","hasAsync","hasBlockScopedLoop","lang","sourceType","err","codeframe","lowered","hermesCompatPlugin","transformHermesLoops","maps"],"sources":["createNativeDevEngine.mjs"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { basename, dirname, extname, join, relative, resolve } from \"node:path\";\nimport { copyFileSync, mkdirSync, readFileSync, readdirSync, realpathSync, statSync } from \"node:fs\";\nimport { pathToFileURL } from \"node:url\";\nimport micromatch from \"micromatch\";\nimport { loadEnv, normalizePath } from \"vite\";\nimport { shouldStripFlow, transformHermesAsync } from \"@vxrn/compiler\";\nimport { DEFAULT_ASSET_EXTS } from \"../constants/defaults\";\nimport { getNativePrelude } from \"../runtime/native-prelude\";\nimport { rnCodegenPlugin } from \"../plugins/rnCodegenPlugin\";\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}\nfunction getResolveExtensions(platform) {\n\tconst platformExts = platform === \"ios\" ? [\n\t\t\".ios.tsx\",\n\t\t\".ios.ts\",\n\t\t\".ios.jsx\",\n\t\t\".ios.js\"\n\t] : [\n\t\t\".android.tsx\",\n\t\t\".android.ts\",\n\t\t\".android.jsx\",\n\t\t\".android.js\"\n\t];\n\tconst nativeExts = [\n\t\t\".native.tsx\",\n\t\t\".native.ts\",\n\t\t\".native.jsx\",\n\t\t\".native.js\"\n\t];\n\tconst defaultExts = [\n\t\t\".tsx\",\n\t\t\".ts\",\n\t\t\".jsx\",\n\t\t\".js\",\n\t\t\".mjs\",\n\t\t\".cjs\",\n\t\t\".json\"\n\t];\n\treturn [\n\t\t...platformExts,\n\t\t...nativeExts,\n\t\t...defaultExts\n\t];\n}\nfunction getNativeResolveConfig(platform) {\n\treturn {\n\t\textensions: getResolveExtensions(platform),\n\t\tconditionNames: [\"react-native\"],\n\t\tmainFields: [\n\t\t\t\"react-native\",\n\t\t\t\"module\",\n\t\t\t\"main\"\n\t\t]\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 = loadEnv(mode, root, [\"VITE_\", \"EXPO_PUBLIC_\"]);\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\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...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.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.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 getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, onAsset, sourceMaps = false, userPlugins = []) {\n\tconst context = {\n\t\troot,\n\t\tplatform,\n\t\tdev\n\t};\n\treturn [\n\t\t...globalThis.__vxrnAddNativePlugins || [],\n\t\tserverFileExclusionPlugin(),\n\t\tenvironmentGuardPlugin(),\n\t\thmrClientNoopPlugin(),\n\t\tcssStubPlugin(),\n\t\tviteImportGlobPlugin({ root }),\n\t\tvxrnCompilerPlugin(platform, dev, root, sourceMaps),\n\t\trnCodegenPlugin({ projectRoot: root }),\n\t\tflowStripPlugin(),\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),\n\t\thermesLoopsPlugin(sourceMaps),\n\t\t...userPlugins\n\t].map((plugin) => plugin.api?.vxrnNative ? plugin.api.vxrnNative(context) : plugin);\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};\n}\nfunction normalizeNativeCommonJSInterop(code) {\n\treturn code.replace(/(\\b__toESM(?:\\$\\d+)?\\(\\s*(?:require[\\w$]*\\(\\)|__rolldown_runtime__\\.loadExports\\(\"(?:\\\\.|[^\"\\\\])*\"\\))\\s*),\\s*1(\\s*\\))/g, \"$1$2\");\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}\nfunction wrapNativeBundleModuleScope(code) {\n\tconst idx = code.indexOf(\"//#region \\\\0rolldown/runtime.js\");\n\tif (idx === -1) return code;\n\treturn code.slice(0, idx) + \";(function() {\" + code.slice(idx) + \"\\n})();\\n\";\n}\nasync function downlevelClassFieldsInBundle(code) {\n\tconst startMarker = \"//#region \\\\0rolldown/runtime.js\";\n\tconst endMarker = \"//#endregion\";\n\tconst startIdx = code.indexOf(startMarker);\n\tif (startIdx === -1) return code;\n\tconst endIdx = code.indexOf(endMarker, startIdx);\n\tif (endIdx === -1) return code;\n\tconst runtimeEnd = endIdx + 12;\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 transformedCode = result.code.trimEnd();\n\tconst transformed = transformedCode.includes(startMarker) ? transformedCode : `${startMarker}\n${transformedCode}`;\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 production 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\tasync renderChunk(code) {\n\t\t\tconst processed = await downlevelClassFieldsInBundle(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 resolvedHost = host === \"0.0.0.0\" ? \"localhost\" : host;\n\tconst virtualEntry = nativeVirtualEntryPlugin(root, { dev: true });\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, true, false),\n\t\toutro: `\ntry {\n var __WS = (init_WebSocket(), __toCommonJS(WebSocket_exports)).default;\n var __hmrUrl = 'ws://${resolvedHost}:${port}/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\tconst rebuildIfNewRoute = async (files) => {\n\t\tconst { routeRoot, files: knownRoutes, isRouteFile } = virtualEntry.routes;\n\t\tconst routeRootPrefix = `${normalizePath(routeRoot)}/`;\n\t\tif (!files.some((file) => {\n\t\t\tconst normalized = normalizePath(file);\n\t\t\tif (isRouteFile(normalized)) return !knownRoutes.has(normalized);\n\t\t\treturn normalized.startsWith(routeRootPrefix) && statSync(file, { throwIfNoEntry: false })?.isDirectory() === true;\n\t\t})) return false;\n\t\tawait queueEngineWork(async () => {\n\t\t\tengine.triggerFullBuild();\n\t\t\tawait engine.ensureLatestBuildOutput();\n\t\t\tawait outputProcessed;\n\t\t});\n\t\tonHmrUpdate?.({ type: \"hmr:reload\" });\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\tif (result instanceof Error) {\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\tif (await rebuildIfNewRoute(result.changedFiles)) return;\n\t\t\tfor (const { clientId, update } of result.updates) if (update.type === \"Patch\" && update.code) onHmrUpdate?.({\n\t\t\t\ttype: \"hmr:update\",\n\t\t\t\tclientId,\n\t\t\t\tcode: normalizeNativeCommonJSInterop(update.code),\n\t\t\t\tchangedIds: update.changedIds,\n\t\t\t\tseq: update.seq\n\t\t\t});\n\t\t\telse 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: {}\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 = postProcessNativeBundle(chunk.code);\n\t\t\tcode = await downlevelClassFieldsInBundle(code);\n\t\t\tassertBundleLinesPreserved(chunk.code, code, \"dev\");\n\t\t\tcode = wrapNativeBundleModuleScope(code);\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\treturn {\n\t\tengine,\n\t\tasync getBundle() {\n\t\t\tawait queueEngineWork(async () => {\n\t\t\t\tawait engine.ensureLatestBuildOutput();\n\t\t\t\tawait outputProcessed;\n\t\t\t});\n\t\t\tif (currentBundle) return currentBundle;\n\t\t\tif (firstBuildError) throw firstBuildError;\n\t\t\tif (!bundlePromise) {\n\t\t\t\tlet timeoutId;\n\t\t\t\tbundlePromise = new Promise((resolve2, reject) => {\n\t\t\t\t\tbundleResolve = (value) => {\n\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\tresolve2(value);\n\t\t\t\t\t};\n\t\t\t\t\tbundleReject = (error) => {\n\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\treject(error);\n\t\t\t\t\t};\n\t\t\t\t\ttimeoutId = setTimeout(() => {\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(/* @__PURE__ */ new Error(\"[vxrn] bundle build timed out after 120s\"));\n\t\t\t\t\t}, 12e4);\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn bundlePromise;\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\tawait engine.close();\n\t\t},\n\t\tasync handleAddedFile(file) {\n\t\t\tawait rebuildIfNewRoute([file]);\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, { dev }).plugin],\n\t\t\t...getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, void 0, sourcemap, userPlugins),\n\t\t\tnativeBundlePostProcessPlugin()\n\t\t],\n\t\toutput: getNativeOutputOptions(prelude, sourcemap, minify)\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 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 file = typeof sf === \"string\" ? sf : \"native\" in sf ? sf.native : 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 entryCode = `\n${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` : \"\"}\nimport * as ReactNativeInitializeCore from 'react-native/Libraries/Core/InitializeCore';\nimport NativeWebSocket from 'react-native/Libraries/WebSocket/WebSocket';\n${setupFileImport}\nimport { createApp } from 'one';\n\nvoid ReactNativeInitializeCore;\nglobalThis.WebSocket = NativeWebSocket;\n\nvar _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\ncreateApp({\n routes: routes,\n routerRoot: ${JSON.stringify(routerRoot)},\n flags: ${JSON.stringify(flags)},\n linking: ${JSON.stringify(linking)},\n});\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 routes = {\n\t\trouteRoot,\n\t\tfiles: /* @__PURE__ */ new Set(),\n\t\tisRouteFile\n\t};\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\troutes.files.clear();\n\t\t\t\tconst walkRouteRoot = (dir) => {\n\t\t\t\t\tthis.addWatchFile(dir);\n\t\t\t\t\tfor (const entry of readdirSync(dir, { withFileTypes: true })) {\n\t\t\t\t\t\tconst child = resolve(dir, entry.name);\n\t\t\t\t\t\tif (entry.isDirectory()) walkRouteRoot(child);\n\t\t\t\t\t\telse if (isRouteFile(child)) routes.files.add(normalizePath(child));\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tif (statSync(routeRoot, { throwIfNoEntry: false })?.isDirectory()) walkRouteRoot(routeRoot);\n\t\t\t\telse this.addWatchFile(dirname(routeRoot));\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 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 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) {\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\tconst needsRefresh = isRefreshCandidate(id);\n\t\t\tif (!compiler) compiler = await import(\"@vxrn/compiler\");\n\t\t\tconst props = {\n\t\t\t\tid,\n\t\t\t\tcode,\n\t\t\t\tprojectRoot,\n\t\t\t\tdevelopment: dev,\n\t\t\t\tenvironment: platform,\n\t\t\t\treactForRNVersion: \"19\"\n\t\t\t};\n\t\t\tlet babelOptions = compiler.getBabelOptions(props);\n\t\t\tlet curCode = code;\n\t\t\tconst intermediateMaps = [];\n\t\t\tconst isWorkletPlugin = (entry) => {\n\t\t\t\tif (!entry) return false;\n\t\t\t\tconst name = typeof entry === \"string\" ? entry : Array.isArray(entry) ? entry[0] : null;\n\t\t\t\treturn typeof name === \"string\" && (name.includes(\"react-native-worklets\") || name.includes(\"react-native-reanimated\"));\n\t\t\t};\n\t\t\tconst workletEntry = babelOptions?.plugins?.find(isWorkletPlugin);\n\t\t\tconst workletPluginOptions = Array.isArray(workletEntry) ? workletEntry[1] : void 0;\n\t\t\tconst useWorklets = compiler.isNativeWorkletsEnabled() && (Boolean(workletEntry) || compiler.shouldTransformWorklets({\n\t\t\t\tid,\n\t\t\t\tcode\n\t\t\t}));\n\t\t\tconst compilerPluginIndex = babelOptions?.plugins?.findIndex((x) => Array.isArray(x) && x[0] === \"babel-plugin-react-compiler\") ?? -1;\n\t\t\tif (compilerPluginIndex !== -1) {\n\t\t\t\tif (useWorklets) {\n\t\t\t\t\tconst prepared = compiler.prepareWorkletsForReactCompiler(id, curCode, sourceMaps);\n\t\t\t\t\tif (prepared) {\n\t\t\t\t\t\tcurCode = prepared.code;\n\t\t\t\t\t\tif (prepared.map) intermediateMaps.push(prepared.map);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst compilerTarget = babelOptions.plugins[compilerPluginIndex][1]?.target ?? \"19\";\n\t\t\t\tconst compilerOut = await compiler.transformOxcReactCompiler(id, curCode, compilerTarget, sourceMaps);\n\t\t\t\tif (compilerOut?.code) {\n\t\t\t\t\tcurCode = compilerOut.code;\n\t\t\t\t\tif (sourceMaps && compilerOut.map) intermediateMaps.push(compilerOut.map);\n\t\t\t\t}\n\t\t\t\tbabelOptions.plugins.splice(compilerPluginIndex, 1);\n\t\t\t\tif (babelOptions.plugins.length === 0) babelOptions = null;\n\t\t\t}\n\t\t\tif (useWorklets) {\n\t\t\t\tconst workletOut = await compiler.transformWorklets(id, curCode, sourceMaps, {\n\t\t\t\t\tprojectRoot,\n\t\t\t\t\t...workletPluginOptions\n\t\t\t\t});\n\t\t\t\tif (workletOut?.code) {\n\t\t\t\t\tcurCode = workletOut.code;\n\t\t\t\t\tif (sourceMaps && workletOut.map) intermediateMaps.push(workletOut.map);\n\t\t\t\t}\n\t\t\t\tif (babelOptions?.plugins) {\n\t\t\t\t\tbabelOptions.plugins = babelOptions.plugins.filter((entry) => !isWorkletPlugin(entry));\n\t\t\t\t\tif (babelOptions.plugins.length === 0) babelOptions = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!babelOptions && !needsRefresh) {\n\t\t\t\tif (curCode !== code) {\n\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\telse {\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (sourceMaps && babelOptions) {\n\t\t\t\tbabelOptions = {\n\t\t\t\t\t...babelOptions,\n\t\t\t\t\tsourceMaps: true,\n\t\t\t\t\tsourceFileName: id\n\t\t\t\t};\n\t\t\t\tdelete babelOptions.inputSourceMap;\n\t\t\t}\n\t\t\tif (babelOptions) {\n\t\t\t\tconst result = await compiler.transformBabel(id, curCode, babelOptions);\n\t\t\t\tif (result?.code) {\n\t\t\t\t\tcurCode = result.code;\n\t\t\t\t\tif (sourceMaps && result.map) intermediateMaps.push(result.map);\n\t\t\t\t\tif (!needsRefresh) {\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}\n\t\t\t}\n\t\t\tif (needsRefresh) {\n\t\t\t\tconst { transformSync } = await import(\"oxc-transform-react\");\n\t\t\t\tconst jsxImportSource = compiler.configuration?.enableNativewind && !id.includes(\"node_modules\") ? \"nativewind\" : \"react\";\n\t\t\t\tconst res = transformSync(id, curCode, {\n\t\t\t\t\tjsx: {\n\t\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\t\truntime: \"automatic\",\n\t\t\t\t\t\timportSource: jsxImportSource,\n\t\t\t\t\t\trefresh: {\n\t\t\t\t\t\t\trefreshReg: \"__vxrnRefreshReg\",\n\t\t\t\t\t\t\trefreshSig: \"__vxrnRefreshSig\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\treactCompiler: false,\n\t\t\t\t\tsourcemap: sourceMaps\n\t\t\t\t});\n\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\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\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\tlet out;\n\t\t\t\tlet finalMap = void 0;\n\t\t\t\tif (sourceMaps) {\n\t\t\t\t\tconst MagicString = (await import(\"magic-string\")).default;\n\t\t\t\t\tconst ms = new MagicString(res.code);\n\t\t\t\t\tms.prepend(header);\n\t\t\t\t\tms.append(footer);\n\t\t\t\t\tout = ms.toString();\n\t\t\t\t\tconst allMaps = [\n\t\t\t\t\t\tms.generateMap({\n\t\t\t\t\t\t\tsource: id,\n\t\t\t\t\t\t\thires: true\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tres.map,\n\t\t\t\t\t\t...intermediateMaps.slice().reverse()\n\t\t\t\t\t].filter(Boolean);\n\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\tfinalMap = remapping(allMaps, () => null);\n\t\t\t\t} else out = header + res.code + footer;\n\t\t\t\treturn {\n\t\t\t\t\tcode: out,\n\t\t\t\t\tmap: finalMap\n\t\t\t\t};\n\t\t\t}\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 result = await (await import(\"fast-flow-transform\")).default({\n\t\t\t\tfilename: id,\n\t\t\t\tsource: code,\n\t\t\t\tsourcemap: true,\n\t\t\t\tdialect: \"flow\",\n\t\t\t\tformat: \"pretty\"\n\t\t\t});\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/Libraries/Image/AssetRegistry').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(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) {\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 = code.includes(\"class \") || code.includes(\"class{\");\n\t\t\tconst hasAsync = code.includes(\"async\");\n\t\t\tconst hasBlockScopedLoop = /\\bfor\\s*\\(\\s*(?:const|let)\\b/.test(code);\n\t\t\tif (!hasClass && !hasAsync && !hasBlockScopedLoop) return;\n\t\t\tlet output;\n\t\t\tif (code.length <= 5e5) {\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\tconst lowered = await transformHermesAsync(output?.code ?? code, id, sourceMaps);\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 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 if (globalThis.globalEvalWithSourceUrl) globalThis.globalEvalWithSourceUrl(code);\n else (0, eval)(code);\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() {\n var proxy = globalThis.__turboModuleProxy\n ? globalThis.__turboModuleProxy('DevSettings')\n : globalThis.nativeModuleProxy && globalThis.nativeModuleProxy.DevSettings;\n if (proxy && proxy.reload) proxy.reload();\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();\n }\n } else if (message.type === 'hmr:reload') {\n runtime.reload();\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\nglobalThis.__rolldown_runtime__ = new ReactNativeDevRuntime();\n`;\n}\n\nexport { buildNativeBundle, createNativeDevAssetRegistry, createNativeDevEngine, getHermesSWCIncludes, getHmrRuntimeSource, getNativeAssetData, getNativeTransformConfig, hermesCompatPlugin, hermesCompatSWCPlugin, hermesLoopsPlugin, hmrClientNoopPlugin, nativeAnimatedGuardPlugin, normalizeNativeCommonJSInterop, postProcessNativeBundle, vxrnCompilerPlugin, wrapNativeBundleModuleScope };"],"mappings":"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,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC;MACxD,MAAMpK,MAAM,GAAGoK,QAAQ,CAAC4H,oBAAoB,CAACpU,IAAI,EAAE4K,EAAE,CAAC;MACtD,IAAI,CAACxI,MAAM,EAAE;MACb,IAAI,CAACnE,UAAU,EAAE,OAAO;QACvB+B,IAAI,EAAEoC,MAAM,CAACpC,IAAI;QACjBhB,GAAG,EAAE;MACN,CAAC;MACD,IAAIoD,MAAM,CAACiS,IAAI,CAAChU,MAAM,KAAK,CAAC,EAAE,OAAO;QACpCL,IAAI,EAAEoC,MAAM,CAACpC,IAAI;QACjBhB,GAAG,EAAEoD,MAAM,CAACiS,IAAI,CAAC,CAAC;MACnB,CAAC;MACD,MAAM5F,SAAS,GAAG,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,EAAEC,OAAO;MACjE,OAAO;QACN1O,IAAI,EAAEoC,MAAM,CAACpC,IAAI;QACjBhB,GAAG,EAAEyP,SAAS,CAACrM,MAAM,CAACiS,IAAI,CAAChT,KAAK,CAAC,CAAC,CAACsN,OAAO,CAAC,CAAC,EAAE,MAAM,IAAI;MACzD,CAAC;IACF;EACD,CAAC;AACF;AACA,SAAS/K,mBAAmBA,CAAA,EAAG;EAC9B,OAAO;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AAEA,SAASuF,iBAAiB,EAAErF,4BAA4B,EAAEV,qBAAqB,EAAE3I,oBAAoB,EAAEmJ,mBAAmB,EAAE6M,kBAAkB,EAAErV,wBAAwB,EAAE+Y,kBAAkB,EAAErV,qBAAqB,EAAEC,iBAAiB,EAAER,mBAAmB,EAAEK,yBAAyB,EAAEmB,8BAA8B,EAAEe,uBAAuB,EAAErC,kBAAkB,EAAEiD,2BAA2B","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createHash","basename","dirname","extname","join","relative","resolve","copyFileSync","existsSync","mkdirSync","readFileSync","readdirSync","realpathSync","statSync","watch","writeFileSync","pathToFileURL","micromatch","loadEnv","normalizePath","shouldStripFlow","transformHermesAsync","resolvePath","DEFAULT_ASSET_EXTS","getNativePrelude","rnCodegenPlugin","HERMES_CLASS_TRANSFORMS","HERMES_ASYNC_TRANSFORMS","getHermesSWCIncludes","dev","getResolveExtensions","platform","platformExts","nativeExts","defaultExts","getNativeResolveConfig","extensions","conditionNames","mainFields","getNativeTransformConfig","root","entryConfig","globalThis","__vxrnNativeEntryConfig","setupFileDefines","sf","setupFile","files","client","server","ios","android","native","JSON","stringify","userDefines","key","value","Object","entries","__vxrnNativeUserDefine","mode","publicEnv","envDefines","envObject","MODE","DEV","PROD","SSR","VITE_ENVIRONMENT","VITE_NATIVE","EXPO_OS","TAMAGUI_TARGET","TAMAGUI_ENVIRONMENT","jsx","runtime","define","__DEV__","inject","React","getNativePlugins","viteImportGlobPlugin","assetsDest","onAsset","sourceMaps","userPlugins","context","__vxrnAddNativePlugins","serverFileExclusionPlugin","environmentGuardPlugin","hmrClientNoopPlugin","reactNativeDedupePlugin","cssStubPlugin","vxrnCompilerPlugin","projectRoot","flowStripPlugin","nativeAnimatedGuardPlugin","assetPlugin","hermesCompatSWCPlugin","hermesLoopsPlugin","map","plugin","api","vxrnNative","getNativeOutputOptions","prelude","sourcemap","minify","format","sourcemapPathTransform","relativeSourcePath","sourcemapPath","intro","codeSplitting","strictExecutionOrder","normalizeNativeCommonJSInterop","code","replace","blankPreservingLines","match","repeat","length","countLines","assertBundleLinesPreserved","before","after","stage","beforeLines","afterLines","Error","postProcessNativeBundle","idx","indexOf","beforeMarker","lastIndexOf","lineStart","snippet","slice","includes","afterMarker","end","removed","wrapNativeBundleModuleScope","downlevelClassFieldsInBundle","startMarker","endMarker","startIdx","endIdx","runtimeEnd","runtimeSection","originalNewlines","transformSync","result","target","assumptions","setPublicClassFields","errors","e","message","transformedCode","trimEnd","transformed","transformedNewlines","linePreservingRuntime","nativeBundlePostProcessPlugin","name","renderChunk","processed","createNativeDevEngine","options","port","host","serverUrl","plugins","onHmrUpdate","hmrRuntimeSource","getHmrRuntimeSource","assetRegistry","createNativeDevAssetRegistry","currentBundle","firstBuildError","bundleResolve","bundleReject","bundlePromise","resolvedHost","virtualEntry","nativeVirtualEntryPlugin","dynamicRoutes","engineWork","Promise","queueEngineWork","work","then","catch","inputOptions","input","VIRTUAL_NATIVE_ENTRY","cwd","transform","experimental","devMode","implement","incrementalBuild","lazyBarrel","treeshake","shimMissingExports","moduleTypes","register","outputOptions","outro","outputProcessed","engine","routeWatcher","rebuildIfRouteGraphChanged","knownRoutes","scanFiles","updateFiles","routes","currentRoutes","size","some","route","has","onOutput","finishOutput","resolve2","handleOutput","onHmrUpdates","console","error","type","clientId","update","updates","changedIds","seq","rebuildStrategy","test","reject","chunk","output","find","o","isEntry","toString","info","Math","round","run","routeWatchTarget","routeRoot","throwIfNoEntry","isDirectory","parent","normalizedRouteRoot","recursive","_eventType","file","changed","startsWith","on","getBundle","ensureLatestBuildOutput","timeoutId","clearTimeout","setTimeout","getAsset","pathname","hash","close","buildNativeBundle","entryFile","build","opts","isDev","useDynamicRouteRegistry","resolvedId","routerRoot","flags","linking","setupFileImport","resolved","href","routeGlobs","ignoredRouteFiles","pattern","refreshSetup","entryCode","routeImports","routeHmr","stripDot","includeGlobs","filter","p","excludeGlobs","isRouteFile","relativeToRoot","isMatch","Set","walkRouteRoot","dir","entry","withFileTypes","child","add","registrySpecifier","registryPath","source","sort","routeKey","importPath","resolveId","id","load","version","sources","sourcesContent","names","mappings","split","_","index","moduleType","THROWING","NOOP","external","RN_HMR_CLIENT_RE","importer","reactNativeRoot","subpath","skipSelf","handler","endsWith","process","compiler","isRefreshCandidate","needsRefresh","props","development","environment","reactForRNVersion","babelOptions","getBabelOptions","curCode","intermediateMaps","isWorkletPlugin","Array","isArray","workletEntry","workletPluginOptions","useWorklets","isNativeWorkletsEnabled","Boolean","shouldTransformWorklets","compilerPluginIndex","findIndex","x","prepared","prepareWorkletsForReactCompiler","push","compilerPluginOptions","env","ONE_REACT_COMPILER","VXRN_REACT_COMPILER","compilerOut","transformOxcReactCompiler","splice","configFile","babelrc","workletOut","transformWorklets","finalMap","remapping","default","reverse","sourceFileName","inputSourceMap","transformBabel","jsxImportSource","configuration","enableNativewind","res","importSource","refresh","refreshReg","refreshSig","reactCompiler","fatal","String","header","footer","out","MagicString","ms","prepend","append","allMaps","generateMap","hires","filename","dialect","assetRegex","RegExp","assetData","getNativeAssetData","copyNativeAssetFiles","assets","Map","asset","scale","scales","filePath","fileName","set","httpServerLocation","get","NATIVE_IMAGE_EXTS","parseNativeAssetName","stem","platformMatch","scaleMatch","Number","parseFloat","isFinite","getNativeAssetUrlDirectory","assetDirectory","safeDirectory","segment","requested","filesByScale","candidate","platformSpecific","existing","keys","a","b","__packager_asset","fileSystemLocation","digest","imageSize","dims","width","height","getIOSAssetScales","supported","getAndroidAssetDirectory","density","getAndroidAssetName","toLowerCase","validIOSScales","destination","oxc","hasClass","hasAsync","hasBlockScopedLoop","lang","sourceType","err","codeframe","lowered","hermesCompatPlugin","transformHermesLoops","maps"],"sources":["createNativeDevEngine.mjs"],"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 { loadEnv, normalizePath } from \"vite\";\nimport { shouldStripFlow, transformHermesAsync } from \"@vxrn/compiler\";\nimport { resolvePath } from \"@vxrn/resolve\";\nimport { DEFAULT_ASSET_EXTS } from \"../constants/defaults\";\nimport { getNativePrelude } from \"../runtime/native-prelude\";\nimport { rnCodegenPlugin } from \"../plugins/rnCodegenPlugin\";\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}\nfunction getResolveExtensions(platform) {\n\tconst platformExts = platform === \"ios\" ? [\n\t\t\".ios.tsx\",\n\t\t\".ios.ts\",\n\t\t\".ios.jsx\",\n\t\t\".ios.js\"\n\t] : [\n\t\t\".android.tsx\",\n\t\t\".android.ts\",\n\t\t\".android.jsx\",\n\t\t\".android.js\"\n\t];\n\tconst nativeExts = [\n\t\t\".native.tsx\",\n\t\t\".native.ts\",\n\t\t\".native.jsx\",\n\t\t\".native.js\"\n\t];\n\tconst defaultExts = [\n\t\t\".tsx\",\n\t\t\".ts\",\n\t\t\".jsx\",\n\t\t\".js\",\n\t\t\".mjs\",\n\t\t\".cjs\",\n\t\t\".json\"\n\t];\n\treturn [\n\t\t...platformExts,\n\t\t...nativeExts,\n\t\t...defaultExts\n\t];\n}\nfunction getNativeResolveConfig(platform) {\n\treturn {\n\t\textensions: getResolveExtensions(platform),\n\t\tconditionNames: [\"react-native\"],\n\t\tmainFields: [\n\t\t\t\"react-native\",\n\t\t\t\"module\",\n\t\t\t\"main\"\n\t\t]\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 = loadEnv(mode, root, [\"VITE_\", \"EXPO_PUBLIC_\"]);\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\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...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.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.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 getNativePlugins(root, platform, viteImportGlobPlugin, dev, assetsDest, onAsset, sourceMaps = false, userPlugins = []) {\n\tconst context = {\n\t\troot,\n\t\tplatform,\n\t\tdev\n\t};\n\treturn [\n\t\t...globalThis.__vxrnAddNativePlugins || [],\n\t\tserverFileExclusionPlugin(),\n\t\tenvironmentGuardPlugin(),\n\t\thmrClientNoopPlugin(),\n\t\t...dev ? [reactNativeDedupePlugin(root)] : [],\n\t\tcssStubPlugin(),\n\t\tviteImportGlobPlugin({ root }),\n\t\tvxrnCompilerPlugin(platform, dev, root, sourceMaps),\n\t\trnCodegenPlugin({ projectRoot: root }),\n\t\tflowStripPlugin(),\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),\n\t\thermesLoopsPlugin(sourceMaps),\n\t\t...userPlugins\n\t].map((plugin) => plugin.api?.vxrnNative ? plugin.api.vxrnNative(context) : plugin);\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};\n}\nfunction normalizeNativeCommonJSInterop(code) {\n\treturn code.replace(/(\\b__toESM(?:\\$\\d+)?\\(\\s*(?:require[\\w$]*\\(\\)|__rolldown_runtime__\\.loadExports\\(\"(?:\\\\.|[^\"\\\\])*\"\\))\\s*),\\s*1(\\s*\\))/g, \"$1$2\");\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}\nfunction wrapNativeBundleModuleScope(code) {\n\tconst idx = code.indexOf(\"//#region \\\\0rolldown/runtime.js\");\n\tif (idx === -1) return code;\n\treturn code.slice(0, idx) + \";(function() {\" + code.slice(idx) + \"\\n})();\\n\";\n}\nasync function downlevelClassFieldsInBundle(code) {\n\tconst startMarker = \"//#region \\\\0rolldown/runtime.js\";\n\tconst endMarker = \"//#endregion\";\n\tconst startIdx = code.indexOf(startMarker);\n\tif (startIdx === -1) return code;\n\tconst endIdx = code.indexOf(endMarker, startIdx);\n\tif (endIdx === -1) return code;\n\tconst runtimeEnd = endIdx + 12;\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 transformedCode = result.code.trimEnd();\n\tconst transformed = transformedCode.includes(startMarker) ? transformedCode : `${startMarker}\n${transformedCode}`;\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 production 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\tasync renderChunk(code) {\n\t\t\tconst processed = await downlevelClassFieldsInBundle(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 resolvedHost = host === \"0.0.0.0\" ? \"localhost\" : host;\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, true, false),\n\t\toutro: `\ntry {\n var __WS = (init_WebSocket(), __toCommonJS(WebSocket_exports)).default;\n var __hmrUrl = 'ws://${resolvedHost}:${port}/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\tif (result instanceof Error) {\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\tif (await rebuildIfRouteGraphChanged()) return;\n\t\t\tfor (const { clientId, update } of result.updates) if (update.type === \"Patch\" && update.code) onHmrUpdate?.({\n\t\t\t\ttype: \"hmr:update\",\n\t\t\t\tclientId,\n\t\t\t\tcode: normalizeNativeCommonJSInterop(update.code),\n\t\t\t\tchangedIds: update.changedIds,\n\t\t\t\tseq: update.seq\n\t\t\t});\n\t\t\telse 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: {}\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 = postProcessNativeBundle(chunk.code);\n\t\t\tcode = await downlevelClassFieldsInBundle(code);\n\t\t\tassertBundleLinesPreserved(chunk.code, code, \"dev\");\n\t\t\tcode = wrapNativeBundleModuleScope(code);\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\treturn {\n\t\tengine,\n\t\tasync getBundle() {\n\t\t\tawait queueEngineWork(async () => {\n\t\t\t\tawait engine.ensureLatestBuildOutput();\n\t\t\t\tawait outputProcessed;\n\t\t\t});\n\t\t\tif (currentBundle) return currentBundle;\n\t\t\tif (firstBuildError) throw firstBuildError;\n\t\t\tif (!bundlePromise) {\n\t\t\t\tlet timeoutId;\n\t\t\t\tbundlePromise = new Promise((resolve2, reject) => {\n\t\t\t\t\tbundleResolve = (value) => {\n\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\tresolve2(value);\n\t\t\t\t\t};\n\t\t\t\t\tbundleReject = (error) => {\n\t\t\t\t\t\tclearTimeout(timeoutId);\n\t\t\t\t\t\treject(error);\n\t\t\t\t\t};\n\t\t\t\t\ttimeoutId = setTimeout(() => {\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(/* @__PURE__ */ new Error(\"[vxrn] bundle build timed out after 120s\"));\n\t\t\t\t\t}, 12e4);\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn bundlePromise;\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),\n\t\t\tnativeBundlePostProcessPlugin()\n\t\t],\n\t\toutput: getNativeOutputOptions(prelude, sourcemap, minify)\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 file = typeof sf === \"string\" ? sf : \"native\" in sf ? sf.native : 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}\nimport * as ReactNativeInitializeCore from 'react-native/Libraries/Core/InitializeCore';\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 ReactNativeInitializeCore;\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\tisRouteFile,\n\t\tscanFiles,\n\t\tupdateFiles(files) {\n\t\t\troutes.files = files;\n\t\t\tif (!useDynamicRouteRegistry) return;\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(dirname(registryPath), 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\tmkdirSync(dirname(registryPath), { recursive: true });\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 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 reactNativeDedupePlugin(root) {\n\tlet reactNativeRoot;\n\treturn {\n\t\tname: \"vxrn:react-native-dedupe\",\n\t\tasync resolveId(source, importer) {\n\t\t\tif (source !== \"react-native\" && !source.startsWith(\"react-native/\")) return;\n\t\t\treactNativeRoot ||= realpathSync(dirname(resolvePath(\"react-native/package.json\", root)));\n\t\t\tconst subpath = source === \"react-native\" ? \"index.js\" : source.slice(13);\n\t\t\treturn this.resolve(normalizePath(resolve(reactNativeRoot, subpath)), importer, { skipSelf: true });\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) {\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\tconst needsRefresh = isRefreshCandidate(id);\n\t\t\tif (!compiler) compiler = await import(\"@vxrn/compiler\");\n\t\t\tconst props = {\n\t\t\t\tid,\n\t\t\t\tcode,\n\t\t\t\tprojectRoot,\n\t\t\t\tdevelopment: dev,\n\t\t\t\tenvironment: platform,\n\t\t\t\treactForRNVersion: \"19\"\n\t\t\t};\n\t\t\tlet babelOptions = compiler.getBabelOptions(props);\n\t\t\tlet curCode = code;\n\t\t\tconst intermediateMaps = [];\n\t\t\tconst isWorkletPlugin = (entry) => {\n\t\t\t\tif (!entry) return false;\n\t\t\t\tconst name = typeof entry === \"string\" ? entry : Array.isArray(entry) ? entry[0] : null;\n\t\t\t\treturn typeof name === \"string\" && (name.includes(\"react-native-worklets\") || name.includes(\"react-native-reanimated\"));\n\t\t\t};\n\t\t\tconst workletEntry = babelOptions?.plugins?.find(isWorkletPlugin);\n\t\t\tconst workletPluginOptions = Array.isArray(workletEntry) ? workletEntry[1] : void 0;\n\t\t\tconst useWorklets = compiler.isNativeWorkletsEnabled() && (Boolean(workletEntry) || compiler.shouldTransformWorklets({\n\t\t\t\tid,\n\t\t\t\tcode\n\t\t\t}));\n\t\t\tconst compilerPluginIndex = babelOptions?.plugins?.findIndex((x) => Array.isArray(x) && x[0] === \"babel-plugin-react-compiler\") ?? -1;\n\t\t\tif (compilerPluginIndex !== -1) {\n\t\t\t\tif (useWorklets) {\n\t\t\t\t\tconst prepared = compiler.prepareWorkletsForReactCompiler(id, curCode, sourceMaps);\n\t\t\t\t\tif (prepared) {\n\t\t\t\t\t\tcurCode = prepared.code;\n\t\t\t\t\t\tif (prepared.map) intermediateMaps.push(prepared.map);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst compilerPluginOptions = babelOptions.plugins[compilerPluginIndex][1] || {};\n\t\t\t\tif (!(compilerPluginOptions.compiler === \"babel\" || process.env.ONE_REACT_COMPILER === \"babel\" || process.env.VXRN_REACT_COMPILER === \"babel\")) {\n\t\t\t\t\tconst compilerOut = await compiler.transformOxcReactCompiler(id, curCode, compilerPluginOptions, sourceMaps);\n\t\t\t\t\tif (compilerOut?.code) {\n\t\t\t\t\t\tcurCode = compilerOut.code;\n\t\t\t\t\t\tif (sourceMaps && compilerOut.map) intermediateMaps.push(compilerOut.map);\n\t\t\t\t\t}\n\t\t\t\t\tbabelOptions.plugins.splice(compilerPluginIndex, 1);\n\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (useWorklets) {\n\t\t\t\tconst workletOut = await compiler.transformWorklets(id, curCode, sourceMaps, {\n\t\t\t\t\tprojectRoot,\n\t\t\t\t\t...workletPluginOptions\n\t\t\t\t});\n\t\t\t\tif (workletOut?.code) {\n\t\t\t\t\tcurCode = workletOut.code;\n\t\t\t\t\tif (sourceMaps && workletOut.map) intermediateMaps.push(workletOut.map);\n\t\t\t\t}\n\t\t\t\tif (babelOptions?.plugins) {\n\t\t\t\t\tbabelOptions.plugins = babelOptions.plugins.filter((entry) => !isWorkletPlugin(entry));\n\t\t\t\t\tif (babelOptions.plugins.length === 0 && !babelOptions.configFile && !babelOptions.babelrc) babelOptions = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!babelOptions && !needsRefresh) {\n\t\t\t\tif (curCode !== code) {\n\t\t\t\t\tlet finalMap = void 0;\n\t\t\t\t\tif (sourceMaps && intermediateMaps.length > 0) if (intermediateMaps.length === 1) finalMap = intermediateMaps[0];\n\t\t\t\t\telse {\n\t\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\t\tfinalMap = remapping(intermediateMaps.slice().reverse(), () => null);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcode: curCode,\n\t\t\t\t\t\tmap: finalMap\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (sourceMaps && babelOptions) {\n\t\t\t\tbabelOptions = {\n\t\t\t\t\t...babelOptions,\n\t\t\t\t\tsourceMaps: true,\n\t\t\t\t\tsourceFileName: id\n\t\t\t\t};\n\t\t\t\tdelete babelOptions.inputSourceMap;\n\t\t\t}\n\t\t\tif (babelOptions) {\n\t\t\t\tconst result = await compiler.transformBabel(id, curCode, babelOptions);\n\t\t\t\tif (result?.code) {\n\t\t\t\t\tcurCode = result.code;\n\t\t\t\t\tif (sourceMaps && result.map) intermediateMaps.push(result.map);\n\t\t\t\t\tif (!needsRefresh) {\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}\n\t\t\t}\n\t\t\tif (needsRefresh) {\n\t\t\t\tconst { transformSync } = await import(\"oxc-transform-react\");\n\t\t\t\tconst jsxImportSource = compiler.configuration?.enableNativewind && !id.includes(\"node_modules\") ? \"nativewind\" : \"react\";\n\t\t\t\tconst res = transformSync(id, curCode, {\n\t\t\t\t\tjsx: {\n\t\t\t\t\t\tdevelopment: dev,\n\t\t\t\t\t\truntime: \"automatic\",\n\t\t\t\t\t\timportSource: jsxImportSource,\n\t\t\t\t\t\trefresh: {\n\t\t\t\t\t\t\trefreshReg: \"__vxrnRefreshReg\",\n\t\t\t\t\t\t\trefreshSig: \"__vxrnRefreshSig\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\treactCompiler: false,\n\t\t\t\t\tsourcemap: sourceMaps\n\t\t\t\t});\n\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\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\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\tlet out;\n\t\t\t\tlet finalMap = void 0;\n\t\t\t\tif (sourceMaps) {\n\t\t\t\t\tconst MagicString = (await import(\"magic-string\")).default;\n\t\t\t\t\tconst ms = new MagicString(res.code);\n\t\t\t\t\tms.prepend(header);\n\t\t\t\t\tms.append(footer);\n\t\t\t\t\tout = ms.toString();\n\t\t\t\t\tconst allMaps = [\n\t\t\t\t\t\tms.generateMap({\n\t\t\t\t\t\t\tsource: id,\n\t\t\t\t\t\t\thires: true\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tres.map,\n\t\t\t\t\t\t...intermediateMaps.slice().reverse()\n\t\t\t\t\t].filter(Boolean);\n\t\t\t\t\tconst remapping = (await import(\"@jridgewell/remapping\")).default;\n\t\t\t\t\tfinalMap = remapping(allMaps, () => null);\n\t\t\t\t} else out = header + res.code + footer;\n\t\t\t\treturn {\n\t\t\t\t\tcode: out,\n\t\t\t\t\tmap: finalMap\n\t\t\t\t};\n\t\t\t}\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 result = await (await import(\"fast-flow-transform\")).default({\n\t\t\t\tfilename: id,\n\t\t\t\tsource: code,\n\t\t\t\tsourcemap: true,\n\t\t\t\tdialect: \"flow\",\n\t\t\t\tformat: \"pretty\"\n\t\t\t});\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/Libraries/Image/AssetRegistry').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(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) {\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 = code.includes(\"class \") || code.includes(\"class{\");\n\t\t\tconst hasAsync = code.includes(\"async\");\n\t\t\tconst hasBlockScopedLoop = /\\bfor\\s*\\(\\s*(?:const|let)\\b/.test(code);\n\t\t\tif (!hasClass && !hasAsync && !hasBlockScopedLoop) return;\n\t\t\tlet output;\n\t\t\tif (code.length <= 5e5) {\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\tconst lowered = await transformHermesAsync(output?.code ?? code, id, sourceMaps);\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 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 if (globalThis.globalEvalWithSourceUrl) globalThis.globalEvalWithSourceUrl(code);\n else (0, eval)(code);\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\nglobalThis.__rolldown_runtime__ = new ReactNativeDevRuntime();\n`;\n}\n\nexport { buildNativeBundle, createNativeDevAssetRegistry, createNativeDevEngine, getHermesSWCIncludes, getHmrRuntimeSource, getNativeAssetData, getNativeTransformConfig, hermesCompatPlugin, hermesCompatSWCPlugin, hermesLoopsPlugin, hmrClientNoopPlugin, nativeAnimatedGuardPlugin, normalizeNativeCommonJSInterop, postProcessNativeBundle, vxrnCompilerPlugin, wrapNativeBundleModuleScope };"],"mappings":"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ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AAEA,SAAS8F,iBAAiB,EAAE5F,4BAA4B,EAAEV,qBAAqB,EAAE5I,oBAAoB,EAAEoJ,mBAAmB,EAAEoO,kBAAkB,EAAE7W,wBAAwB,EAAEqa,kBAAkB,EAAE1W,qBAAqB,EAAEC,iBAAiB,EAAET,mBAAmB,EAAEM,yBAAyB,EAAEmB,8BAA8B,EAAEe,uBAAuB,EAAErC,kBAAkB,EAAEiD,2BAA2B","ignoreList":[]}
|