one 2.9.0 → 2.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cli/build.cjs +8 -10
- package/dist/cjs/cli/build.native.cjs +27 -29
- package/dist/cjs/cli/build.native.js +27 -29
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.cjs +2 -11
- package/dist/cjs/cli/buildPage.native.cjs +11 -39
- package/dist/cjs/cli/buildPage.native.js +11 -39
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/createApp.cjs +2 -5
- package/dist/cjs/platform/ui/Pager.cjs +2 -1
- package/dist/cjs/platform/ui/Pager.native.cjs +3 -0
- package/dist/cjs/platform/ui/Pager.native.js +3 -0
- package/dist/cjs/platform/ui/Pager.native.js.map +1 -1
- package/dist/esm/cli/build.mjs +8 -10
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +27 -29
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli/buildPage.mjs +2 -11
- package/dist/esm/cli/buildPage.mjs.map +1 -1
- package/dist/esm/cli/buildPage.native.js +11 -39
- package/dist/esm/cli/buildPage.native.js.map +1 -1
- package/dist/esm/createApp.mjs +2 -5
- package/dist/esm/createApp.mjs.map +1 -1
- package/dist/esm/platform/ui/Pager.mjs +2 -1
- package/dist/esm/platform/ui/Pager.mjs.map +1 -1
- package/dist/esm/platform/ui/Pager.native.js +3 -0
- package/dist/esm/platform/ui/Pager.native.js.map +1 -1
- package/package.json +17 -16
- package/src/cli/build.ts +9 -11
- package/src/cli/buildPage.ts +11 -22
- package/src/cli/workerPool.test.ts +1 -1
- package/src/cli/workerPool.ts +1 -1
- package/src/createApp.tsx +4 -2
- package/src/layouts/stack-utils/StackScreen.tsx +15 -5
- package/src/platform/ui/Pager.native.tsx +3 -0
- package/src/platform/ui/Pager.tsx +1 -0
- package/src/platform/ui/pagerTypes.ts +6 -1
- package/src/types.ts +1 -1
- package/src/vite/types.ts +2 -2
- package/types/cli/build.d.ts.map +1 -1
- package/types/cli/buildPage.d.ts +1 -1
- package/types/cli/buildPage.d.ts.map +1 -1
- package/types/cli/workerPool.d.ts +1 -1
- package/types/cli/workerPool.d.ts.map +1 -1
- package/types/createApp.d.ts.map +1 -1
- package/types/layouts/stack-utils/StackScreen.d.ts +4 -5
- package/types/layouts/stack-utils/StackScreen.d.ts.map +1 -1
- package/types/platform/ui/Pager.d.ts.map +1 -1
- package/types/platform/ui/Pager.native.d.ts.map +1 -1
- package/types/platform/ui/pagerTypes.d.ts +6 -1
- package/types/platform/ui/pagerTypes.d.ts.map +1 -1
- package/types/types.d.ts +1 -1
- package/types/types.d.ts.map +1 -1
- package/types/vite/types.d.ts +1 -1
- package/types/vite/types.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.native.js","names":["vxrnBuild","viteBuild"],"sources":["esm/cli/build.native.js"],"sourcesContent":["import { createRequire } from \"module\";\nimport { cpus } from \"os\";\nimport Path, { join, posix, relative, resolve } from \"path\";\nimport { resolvePath } from \"@vxrn/resolve\";\nimport FSExtra from \"fs-extra\";\nimport MicroMatch from \"micromatch\";\nimport { createBuilder, mergeConfig, normalizePath, build as viteBuild } from \"vite\";\nimport { getOptimizeDeps, rollupRemoveUnusedImportsPlugin, build as vxrnBuild } from \"vxrn\";\nimport * as constants from \"../constants\";\nimport { setServerGlobals } from \"../server/setServerGlobals\";\nimport { environmentGuardPlugin } from \"../vite/plugins/environmentGuardPlugin\";\nimport { writeBuildOutputPointer } from \"../utils/buildOutputPointer\";\nimport { getPathnameFromFilePath } from \"../utils/getPathnameFromFilePath\";\nimport { getRouterRootFromOneOptions } from \"../utils/getRouterRootFromOneOptions\";\nimport { isRolldown } from \"../utils/isRolldown\";\nimport { toAbsolute } from \"../utils/toAbsolute\";\nimport { buildVercelOutputDirectory } from \"../vercel/build/buildVercelOutputDirectory\";\nimport { createCloudflareWranglerConfig, getCloudflareProjectName, isPlainObject, loadUserWranglerConfig } from \"../vite/cloudflareWranglerConfig\";\nimport { getManifest } from \"../vite/getManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nimport { runWithAsyncLocalContext } from \"../vite/one-server-only\";\nimport { buildPage, printBuildTimings } from \"./buildPage\";\nimport { checkNodeVersion } from \"./checkNodeVersion\";\nimport { getWorkerPool, terminateWorkerPool } from \"./workerPool\";\nimport { generateSitemap } from \"./generateSitemap\";\nimport { labelProcess } from \"./label-process\";\nimport { getRouteExports } from \"./serverRouteModules\";\nimport { pLimit } from \"../utils/pLimit\";\nimport { getCriticalCSSOutputPaths } from \"../vite/plugins/criticalCSSPlugin\";\nimport { absorbedPackageAliases } from \"../utils/absorbedPackages\";\nimport { formatErrorSafely, installPrepareStackTraceGuard } from \"./install-error-handlers\";\nvar { ensureDir, writeJSON } = FSExtra;\nfunction normalizeDeploy(deploy) {\n if (!deploy) return void 0;\n if (typeof deploy === \"string\") return {\n target: deploy\n };\n return deploy;\n}\nvar CLOUDFLARE_DEPLOY_WRANGLER_RULES = [\n {\n type: \"ESModule\",\n globs: [\n \"assets/**/*.js\",\n \"assets/**/*.mjs\"\n ]\n }\n];\nfunction omitEmptyJsonValues(value) {\n if (Array.isArray(value)) {\n var items = value.map(function(item) {\n return omitEmptyJsonValues(item);\n }).filter(function(item) {\n return item !== void 0;\n });\n return items.length > 0 ? items : void 0;\n }\n if (isPlainObject(value)) {\n var entries = Object.entries(value).map(function(param) {\n var [key, item] = param;\n return [\n key,\n omitEmptyJsonValues(item)\n ];\n }).filter(function(entry) {\n return entry[1] !== void 0;\n });\n return entries.length > 0 ? Object.fromEntries(entries) : void 0;\n }\n return value;\n}\nasync function finalizeCloudflareWranglerDeployConfig(configPath) {\n var parsed = JSON.parse(await FSExtra.readFile(configPath, \"utf-8\"));\n if (!isPlainObject(parsed)) {\n throw new Error(`Expected ${relative(process.cwd(), configPath)} to contain a JSON object`);\n }\n parsed.rules = CLOUDFLARE_DEPLOY_WRANGLER_RULES;\n var config = omitEmptyJsonValues(parsed);\n if (!isPlainObject(config)) {\n throw new Error(`Expected ${relative(process.cwd(), configPath)} to contain deploy config`);\n }\n await FSExtra.writeFile(configPath, `${JSON.stringify(config, null, 2)}\n`);\n}\nprocess.env.ONE_CACHE_KEY = constants.CACHE_KEY;\nfunction shouldUseWorkers(oneOptions) {\n var _oneOptions_build;\n if (process.env.ONE_BUILD_WORKERS === \"0\") return false;\n if (process.env.ONE_BUILD_WORKERS === \"1\") return true;\n return (oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build = oneOptions.build) === null || _oneOptions_build === void 0 ? void 0 : _oneOptions_build.workers) !== false;\n}\ninstallPrepareStackTraceGuard();\nvar buildErrorHandlersInstalled = false;\nfunction installBuildErrorHandlers() {\n if (buildErrorHandlersInstalled) return;\n buildErrorHandlersInstalled = true;\n process.on(\"uncaughtException\", function(err) {\n try {\n process.stderr.write(`[one build] uncaught exception\n${formatErrorSafely(err)}\n`);\n } catch (unused) {\n }\n process.exit(1);\n });\n process.on(\"unhandledRejection\", function(reason) {\n try {\n process.stderr.write(`[one build] unhandled rejection\n${formatErrorSafely(reason)}\n`);\n } catch (unused) {\n }\n process.exit(1);\n });\n}\nvar HOOK_KEYS = [\n \"resolveId\",\n \"load\",\n \"transform\",\n \"renderChunk\",\n \"generateBundle\",\n \"writeBundle\",\n \"buildStart\",\n \"buildEnd\",\n \"moduleParsed\"\n];\nfunction clonePluginHooks(config) {\n if (!config.plugins) return config;\n return {\n ...config,\n plugins: config.plugins.map(function(p) {\n if (!p || typeof p !== \"object\") return p;\n var cloned = {\n ...p\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = HOOK_KEYS[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n if (cloned[key] && typeof cloned[key] === \"object\" && \"handler\" in cloned[key]) {\n cloned[key] = {\n ...cloned[key]\n };\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return cloned;\n })\n };\n}\nasync function build(args) {\n var _process_env_ONE_BUILD_CONCURRENCY, _ref, _ref1, _args_skipEnv, _vxrnOutput_serverBuildConfig, _securityScanOption_level;\n var _oneOptions_build, _oneOptions_web, _oneOptions_web1, _viteLoadedConfig_config_build, _viteLoadedConfig_config, _oneOptions_router, _oneOptions_build1, _oneOptions_build_server, _oneOptions_build2, _oneOptions_build3, _oneOptions_build4, _oneOptions_web2, _oneOptions_build5;\n installBuildErrorHandlers();\n process.env.IS_VXRN_CLI = \"true\";\n if (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(`\n \\u26A0\\uFE0F Warning: NODE_ENV is set to \"${process.env.NODE_ENV}\" (builds default to \"production\")\n`);\n }\n labelProcess(\"build\");\n checkNodeVersion();\n setServerGlobals();\n var { oneOptions, config: viteLoadedConfig } = await loadUserOneOptions(\"build\");\n var routerRoot = getRouterRootFromOneOptions(oneOptions);\n var configuredBuildConcurrency = (_process_env_ONE_BUILD_CONCURRENCY = process.env.ONE_BUILD_CONCURRENCY) !== null && _process_env_ONE_BUILD_CONCURRENCY !== void 0 ? _process_env_ONE_BUILD_CONCURRENCY : (_oneOptions_build = oneOptions.build) === null || _oneOptions_build === void 0 ? void 0 : _oneOptions_build.concurrency;\n var buildConcurrency = configuredBuildConcurrency === void 0 ? Math.max(1, Math.min(cpus().length, 2)) : Number(configuredBuildConcurrency);\n if (!Number.isInteger(buildConcurrency) || buildConcurrency < 1) {\n throw new Error(`build.concurrency must be a positive integer, received ${JSON.stringify(configuredBuildConcurrency)}`);\n }\n if ((_oneOptions_web = oneOptions.web) === null || _oneOptions_web === void 0 ? void 0 : _oneOptions_web.defaultRenderMode) {\n process.env.ONE_DEFAULT_RENDER_MODE = oneOptions.web.defaultRenderMode;\n }\n var deployConfig = normalizeDeploy((_oneOptions_web1 = oneOptions.web) === null || _oneOptions_web1 === void 0 ? void 0 : _oneOptions_web1.deploy);\n if (!process.env.ONE_SERVER_URL && deployConfig) {\n var _deployConfig_url;\n var url = (_deployConfig_url = deployConfig.url) !== null && _deployConfig_url !== void 0 ? _deployConfig_url : deployConfig.target === \"cloudflare\" ? `https://${await getCloudflareProjectName(process.cwd())}.workers.dev` : void 0;\n if (url) {\n process.env.ONE_SERVER_URL = url;\n console.info(`\n \\u2601\\uFE0F ONE_SERVER_URL: ${url}\n`);\n }\n }\n var outDir = (_ref = viteLoadedConfig === null || viteLoadedConfig === void 0 ? void 0 : (_viteLoadedConfig_config = viteLoadedConfig.config) === null || _viteLoadedConfig_config === void 0 ? void 0 : (_viteLoadedConfig_config_build = _viteLoadedConfig_config.build) === null || _viteLoadedConfig_config_build === void 0 ? void 0 : _viteLoadedConfig_config_build.outDir) !== null && _ref !== void 0 ? _ref : \"dist\";\n var manifest = getManifest({\n routerRoot,\n ignoredRouteFiles: (_oneOptions_router = oneOptions.router) === null || _oneOptions_router === void 0 ? void 0 : _oneOptions_router.ignoredRouteFiles\n });\n var serverOutputFormat = ((_oneOptions_build1 = oneOptions.build) === null || _oneOptions_build1 === void 0 ? void 0 : _oneOptions_build1.server) === false ? \"esm\" : (_ref1 = (_oneOptions_build2 = oneOptions.build) === null || _oneOptions_build2 === void 0 ? void 0 : (_oneOptions_build_server = _oneOptions_build2.server) === null || _oneOptions_build_server === void 0 ? void 0 : _oneOptions_build_server.outputFormat) !== null && _ref1 !== void 0 ? _ref1 : \"esm\";\n var buildStartTime = performance.now();\n var vxrnOutput = await vxrnBuild({\n skipEnv: (_args_skipEnv = args.skipEnv) !== null && _args_skipEnv !== void 0 ? _args_skipEnv : oneOptions.skipEnv,\n server: oneOptions.server,\n build: {\n analyze: true,\n server: ((_oneOptions_build3 = oneOptions.build) === null || _oneOptions_build3 === void 0 ? void 0 : _oneOptions_build3.server) === false ? false : {\n outputFormat: serverOutputFormat\n }\n }\n }, args);\n var bundleTime = performance.now() - buildStartTime;\n console.info(`\n \\u23F1\\uFE0F vite bundle: ${(bundleTime / 1e3).toFixed(2)}s\n`);\n if (!vxrnOutput || args.platform !== \"web\") {\n return;\n }\n var { options } = vxrnOutput;\n var { optimizeDeps } = getOptimizeDeps(\"build\");\n var { rolldownOptions: _rolldownOptions, ...optimizeDepsNoRolldown } = optimizeDeps;\n var serverOpts = (_oneOptions_build4 = oneOptions.build) === null || _oneOptions_build4 === void 0 ? void 0 : _oneOptions_build4.server;\n var isUnified = typeof serverOpts === \"object\" && serverOpts !== null && serverOpts.unified === true;\n var baseForApi = isUnified ? clonePluginHooks((_vxrnOutput_serverBuildConfig = vxrnOutput.serverBuildConfig) !== null && _vxrnOutput_serverBuildConfig !== void 0 ? _vxrnOutput_serverBuildConfig : vxrnOutput.webBuildConfig) : clonePluginHooks(vxrnOutput.webBuildConfig);\n if (isUnified) {\n var clone = {\n ...baseForApi,\n build: baseForApi.build ? {\n ...baseForApi.build\n } : void 0,\n plugins: baseForApi.plugins ? baseForApi.plugins.filter(function(p) {\n return p && typeof p === \"object\" && p.name !== \"omit-api-routes\";\n }) : void 0\n };\n if (clone.build && clone.build.rolldownOptions) {\n var ro = {\n ...clone.build.rolldownOptions\n };\n delete ro.input;\n clone.build.rolldownOptions = ro;\n }\n if (clone.build) {\n delete clone.build.outDir;\n }\n baseForApi = clone;\n }\n var apiBuildConfig = mergeConfig(baseForApi, {\n configFile: false,\n appType: \"custom\",\n optimizeDeps: optimizeDepsNoRolldown,\n environments: {\n client: {\n optimizeDeps: {\n rolldownOptions: _rolldownOptions\n }\n }\n }\n });\n async function buildCustomRoutes(subFolder, routes) {\n var _ref2;\n var _oneOptions_build_api, _oneOptions_build6, _oneOptions_build_api1, _oneOptions_build12, _oneOptions_build_api2, _oneOptions_build22;\n var input = routes.reduce(function(entries, param) {\n var { page, file: file2 } = param;\n entries[page.slice(1) + \".js\"] = join(routerRoot, file2);\n return entries;\n }, {});\n var outputFormat = (_ref2 = oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build6 = oneOptions.build) === null || _oneOptions_build6 === void 0 ? void 0 : (_oneOptions_build_api = _oneOptions_build6.api) === null || _oneOptions_build_api === void 0 ? void 0 : _oneOptions_build_api.outputFormat) !== null && _ref2 !== void 0 ? _ref2 : serverOutputFormat;\n var treeshake = oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build12 = oneOptions.build) === null || _oneOptions_build12 === void 0 ? void 0 : (_oneOptions_build_api1 = _oneOptions_build12.api) === null || _oneOptions_build_api1 === void 0 ? void 0 : _oneOptions_build_api1.treeshake;\n var mergedConfig = mergeConfig(apiBuildConfig, {\n appType: \"custom\",\n configFile: false,\n define: vxrnOutput.processEnvDefines,\n ssr: isUnified ? {\n // in unified mode let the base (serverBuildConfig) set ssr.noExternal\n // — default is now ['react', 'react-dom'] instead of `true`, so\n // rolldown can externalize the rest.\n optimizeDeps: optimizeDepsNoRolldown\n } : {\n noExternal: true,\n external: [\n \"react\",\n \"react-dom\"\n ],\n optimizeDeps: optimizeDepsNoRolldown\n },\n environments: {\n ssr: {\n optimizeDeps: {\n rolldownOptions: _rolldownOptions\n }\n }\n },\n build: {\n ssr: true,\n emptyOutDir: false,\n outDir: `${outDir}/${subFolder}`,\n copyPublicDir: false,\n minify: false,\n rolldownOptions: {\n treeshake: treeshake !== null && treeshake !== void 0 ? treeshake : {\n moduleSideEffects: false\n },\n plugins: [\n // otherwise rollup is leaving commonjs-only top level imports...\n outputFormat === \"esm\" ? rollupRemoveUnusedImportsPlugin : null\n ].filter(Boolean),\n // too many issues\n // treeshake: {\n // moduleSideEffects: false,\n // },\n // prevents it from shaking out the exports\n preserveEntrySignatures: \"strict\",\n input,\n // in unified mode, inherit externals from serverBuildConfig (user\n // ssr.external / rolldownOptions.external). the legacy path resets\n // them to [] so per-route files bundle everything.\n ...isUnified ? {} : {\n external: []\n },\n output: {\n entryFileNames: \"[name]\",\n exports: \"auto\",\n ...outputFormat === \"esm\" ? {\n format: \"esm\",\n esModule: true\n } : {\n format: \"cjs\",\n // Preserve folder structure and use .cjs extension\n entryFileNames: function entryFileNames(chunkInfo) {\n var name = chunkInfo.name.replace(/\\.js$/, \".cjs\");\n return name;\n },\n chunkFileNames: function chunkFileNames(chunkInfo) {\n var chunkName = normalizePath(chunkInfo.name);\n var dir = posix.dirname(chunkName);\n var name = posix.basename(chunkName, posix.extname(chunkName));\n return posix.join(dir, `${name}-[hash].cjs`);\n },\n assetFileNames: function assetFileNames(assetInfo) {\n var _assetInfo_name;\n var assetName = normalizePath((_assetInfo_name = assetInfo.name) !== null && _assetInfo_name !== void 0 ? _assetInfo_name : \"\");\n var dir = posix.dirname(assetName);\n var baseName = posix.basename(assetName, posix.extname(assetName));\n var ext = posix.extname(assetName);\n return posix.join(dir, `${baseName}-[hash]${ext}`);\n }\n }\n }\n }\n }\n });\n var userApiBuildConf = (_oneOptions_build22 = oneOptions.build) === null || _oneOptions_build22 === void 0 ? void 0 : (_oneOptions_build_api2 = _oneOptions_build22.api) === null || _oneOptions_build_api2 === void 0 ? void 0 : _oneOptions_build_api2.config;\n var finalApiBuildConf = userApiBuildConf ? mergeConfig(mergedConfig, userApiBuildConf) : mergedConfig;\n var output3 = await viteBuild(\n // allow user merging api build config\n finalApiBuildConf\n );\n return output3;\n }\n var builtMiddlewares = {};\n var apiPromise = manifest.apiRoutes.length ? (console.info(`\n \\u{1F528} build api routes\n`), buildCustomRoutes(\"api\", manifest.apiRoutes)) : Promise.resolve(null);\n var middlewarePromise = manifest.middlewareRoutes.length ? (console.info(`\n \\u{1F528} build middlewares\n`), buildCustomRoutes(\"middlewares\", manifest.middlewareRoutes)) : Promise.resolve(null);\n var [apiOutput, middlewareBuildInfo] = await Promise.all([\n apiPromise,\n middlewarePromise\n ]);\n if (middlewareBuildInfo) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var middleware = _step.value;\n var absoluteRoot = resolve(process.cwd(), options.root);\n var fullPath = normalizePath(join(absoluteRoot, routerRoot, middleware.file));\n var outChunks = middlewareBuildInfo.output.filter(function(x) {\n return x.type === \"chunk\";\n });\n var chunk2 = outChunks.find(function(x) {\n return x.facadeModuleId === fullPath;\n });\n if (!chunk2) throw new Error(`internal err finding middleware`);\n builtMiddlewares[middleware.file] = posix.join(outDir, \"middlewares\", chunk2.fileName);\n };\n for (var _iterator = manifest.middlewareRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n globalThis[\"require\"] = createRequire(import.meta.dirname + \"/\");\n var assets = [];\n var builtRoutes = [];\n var sitemapData = [];\n var collectImportsCache = /* @__PURE__ */ new Map();\n var collectImportsInFlight = /* @__PURE__ */ new Set();\n var cssFileContentsCache = /* @__PURE__ */ new Map();\n var criticalCSSOutputPaths = getCriticalCSSOutputPaths(vxrnOutput.clientManifest);\n var limit = pLimit(buildConcurrency);\n var useWorkers = shouldUseWorkers(oneOptions);\n var workerPool = useWorkers ? getWorkerPool(buildConcurrency) : null;\n if (workerPool) {\n var serializableOptions = JSON.parse(JSON.stringify(oneOptions, function(_key, value) {\n return typeof value === \"function\" ? void 0 : value;\n }));\n await workerPool.initialize(serializableOptions);\n }\n var staticStartTime = performance.now();\n var modeLabel = useWorkers ? `workers: ${workerPool === null || workerPool === void 0 ? void 0 : workerPool.size}` : `concurrency: ${buildConcurrency}`;\n console.info(`\n \\u{1F528} build static routes (${modeLabel})\n`);\n var staticDir = join(`${outDir}/static`);\n var clientDir = join(`${outDir}/client`);\n await ensureDir(staticDir);\n if (!vxrnOutput.serverOutput) {\n throw new Error(`No server output`);\n }\n var clientChunksBySource = /* @__PURE__ */ new Map();\n if (vxrnOutput.clientOutput) {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = vxrnOutput.clientOutput[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var chunk = _step1.value;\n var _chunk_moduleIds;\n if (chunk.type !== \"chunk\") continue;\n var info = {\n fileName: chunk.fileName,\n imports: chunk.imports || []\n };\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = ((_chunk_moduleIds = chunk.moduleIds) !== null && _chunk_moduleIds !== void 0 ? _chunk_moduleIds : [])[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var moduleId = _step2.value;\n clientChunksBySource.set(moduleId, info);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = vxrnOutput.clientOutput[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var chunk1 = _step3.value;\n if (chunk1.type !== \"chunk\" || !chunk1.facadeModuleId) continue;\n clientChunksBySource.set(chunk1.facadeModuleId, {\n fileName: chunk1.fileName,\n imports: chunk1.imports || []\n });\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n }\n var clientManifestByFile = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = Object.values(vxrnOutput.clientManifest)[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var entry = _step4.value;\n if (entry.file) {\n clientManifestByFile.set(entry.file, entry);\n }\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n var outputEntries = [\n ...vxrnOutput.serverOutput.entries()\n ];\n var layoutServerPaths = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n for (var _iterator5 = outputEntries[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var [, output] = _step5.value;\n if (output.type === \"asset\") continue;\n var id = output.facadeModuleId || \"\";\n var file = Path.basename(id);\n if (file.startsWith(\"_layout\") && id.includes(`/${routerRoot}/`)) {\n var relativePath = normalizePath(relative(process.cwd(), id)).replace(`${routerRoot}/`, \"\");\n var contextKey = `./${relativePath}`;\n layoutServerPaths.set(contextKey, output.fileName);\n }\n }\n } catch (err) {\n _didIteratorError5 = true;\n _iteratorError5 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion5 && _iterator5.return != null) {\n _iterator5.return();\n }\n } finally {\n if (_didIteratorError5) {\n throw _iteratorError5;\n }\n }\n }\n var routeByPath = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion6 = true, _didIteratorError6 = false, _iteratorError6 = void 0;\n try {\n for (var _iterator6 = manifest.pageRoutes[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {\n var route = _step6.value;\n if (route.file) {\n var routePath = `${routerRoot}${route.file.slice(1)}`;\n routeByPath.set(routePath, route);\n }\n }\n } catch (err) {\n _didIteratorError6 = true;\n _iteratorError6 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion6 && _iterator6.return != null) {\n _iterator6.return();\n }\n } finally {\n if (_didIteratorError6) {\n throw _iteratorError6;\n }\n }\n }\n var _iteratorNormalCompletion7 = true, _didIteratorError7 = false, _iteratorError7 = void 0;\n try {\n for (var _iterator7 = outputEntries[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {\n var [, output1] = _step7.value;\n if (output1.type === \"asset\") {\n assets.push(output1);\n }\n }\n } catch (err) {\n _didIteratorError7 = true;\n _iteratorError7 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion7 && _iterator7.return != null) {\n _iterator7.return();\n }\n } finally {\n if (_didIteratorError7) {\n throw _iteratorError7;\n }\n }\n }\n var moduleIdToServerChunk = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion8 = true, _didIteratorError8 = false, _iteratorError8 = void 0;\n try {\n for (var _iterator8 = outputEntries[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {\n var [, output2] = _step8.value;\n if (output2.type === \"asset\") continue;\n var moduleIds = output2.moduleIds || (output2.facadeModuleId ? [\n output2.facadeModuleId\n ] : []);\n var _iteratorNormalCompletion9 = true, _didIteratorError9 = false, _iteratorError9 = void 0;\n try {\n for (var _iterator9 = moduleIds[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {\n var moduleId1 = _step9.value;\n moduleIdToServerChunk.set(moduleId1, output2.fileName);\n if (moduleId1.includes(\"?one-spa-build\")) {\n moduleIdToServerChunk.set(moduleId1.slice(0, moduleId1.indexOf(\"?\")), output2.fileName);\n }\n }\n } catch (err) {\n _didIteratorError9 = true;\n _iteratorError9 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion9 && _iterator9.return != null) {\n _iterator9.return();\n }\n } finally {\n if (_didIteratorError9) {\n throw _iteratorError9;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError8 = true;\n _iteratorError8 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion8 && _iterator8.return != null) {\n _iterator8.return();\n }\n } finally {\n if (_didIteratorError8) {\n throw _iteratorError8;\n }\n }\n }\n var _iteratorNormalCompletion10 = true, _didIteratorError10 = false, _iteratorError10 = void 0;\n try {\n var _loop1 = async function() {\n var foundRoute = _step10.value;\n var _vxrnOutput_clientManifest_manifestKey, _ref2, _ref12, _ref22;\n var _vxrnOutput_buildArgs, _foundRoute_layouts, _oneOptions_web3, _oneOptions_web12, _exported_generateStaticParams;\n if (!foundRoute.file) {\n return \"continue\";\n }\n var routeModulePath = normalizePath(join(resolve(process.cwd(), options.root), routerRoot, foundRoute.file.slice(2)));\n var serverFileName = moduleIdToServerChunk.get(routeModulePath);\n if (!serverFileName) {\n if (foundRoute.type === \"spa\") {\n throw new Error(`[one] No build-only server chunk for SPA route: ${foundRoute.file}`);\n }\n console.warn(`[one] No server chunk found for route: ${foundRoute.file}`);\n return \"continue\";\n }\n var onlyBuild = (_vxrnOutput_buildArgs = vxrnOutput.buildArgs) === null || _vxrnOutput_buildArgs === void 0 ? void 0 : _vxrnOutput_buildArgs.only;\n if (onlyBuild) {\n var relativeId = foundRoute.file.slice(1);\n if (!MicroMatch.contains(relativeId, onlyBuild)) {\n return \"continue\";\n }\n }\n var clientChunk = clientChunksBySource.get(routeModulePath);\n var manifestKey = `${routerRoot}${foundRoute.file.slice(1)}`;\n var clientManifestEntry = (_vxrnOutput_clientManifest_manifestKey = vxrnOutput.clientManifest[manifestKey]) !== null && _vxrnOutput_clientManifest_manifestKey !== void 0 ? _vxrnOutput_clientManifest_manifestKey : clientChunk ? clientManifestByFile.get(clientChunk.fileName) : void 0;\n if (!clientChunk && foundRoute.type !== \"spa\" && foundRoute.type !== \"ssg\") {\n console.warn(`No client chunk found for route: ${routeModulePath}`);\n return \"continue\";\n }\n foundRoute.loaderServerPath = serverFileName;\n var relativeId1 = foundRoute.file.replace(/^\\.\\//, \"/\");\n if (foundRoute.layouts) {\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = foundRoute.layouts[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var layout = _step14.value;\n var serverPath = layoutServerPaths.get(layout.contextKey);\n if (serverPath) {\n layout.loaderServerPath = serverPath;\n }\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n }\n function collectImports(entry3) {\n var { type = \"js\" } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var { imports = [], css } = entry3;\n var cacheKey = `${entry3.file || imports.join(\",\")}:${type}`;\n var cached = collectImportsCache.get(cacheKey);\n if (cached) return cached;\n if (collectImportsInFlight.has(cacheKey)) return [];\n collectImportsInFlight.add(cacheKey);\n var result = [\n ...new Set([\n ...type === \"js\" ? imports : css || [],\n ...imports.flatMap(function(name) {\n var found = vxrnOutput.clientManifest[name];\n if (!found) {\n console.warn(`No found imports`, name, vxrnOutput.clientManifest);\n }\n return collectImports(found, {\n type\n });\n })\n ].flat().filter(function(x) {\n return x && (type === \"css\" || x.endsWith(\".js\"));\n }).map(function(x) {\n return type === \"css\" ? x : x.startsWith(\"assets/\") ? x : `assets/${x.slice(1)}`;\n }))\n ];\n collectImportsInFlight.delete(cacheKey);\n collectImportsCache.set(cacheKey, result);\n return result;\n }\n var entryImports = collectImports(clientManifestEntry || {});\n var layoutEntries = (_ref2 = (_foundRoute_layouts = foundRoute.layouts) === null || _foundRoute_layouts === void 0 ? void 0 : _foundRoute_layouts.flatMap(function(layout2) {\n var clientKey2 = `${routerRoot}${layout2.contextKey.slice(1)}`;\n var found = vxrnOutput.clientManifest[clientKey2];\n return found ? found : [];\n })) !== null && _ref2 !== void 0 ? _ref2 : [];\n var layoutImports = layoutEntries.flatMap(function(entry3) {\n return [\n entry3.file,\n ...collectImports(entry3)\n ];\n });\n var routePreloads = {};\n var rootLayoutKey = `${routerRoot}/_layout.tsx`;\n var rootLayoutEntry = vxrnOutput.clientManifest[rootLayoutKey];\n if (rootLayoutEntry) {\n routePreloads[`/${rootLayoutKey}`] = `/${rootLayoutEntry.file}`;\n }\n if (foundRoute.layouts) {\n var _iteratorNormalCompletion15 = true, _didIteratorError15 = false, _iteratorError15 = void 0;\n try {\n for (var _iterator15 = foundRoute.layouts[Symbol.iterator](), _step15; !(_iteratorNormalCompletion15 = (_step15 = _iterator15.next()).done); _iteratorNormalCompletion15 = true) {\n var layout1 = _step15.value;\n var clientKey = `${routerRoot}${layout1.contextKey.slice(1)}`;\n var entry2 = vxrnOutput.clientManifest[clientKey];\n if (entry2) {\n routePreloads[`/${clientKey}`] = `/${entry2.file}`;\n }\n }\n } catch (err) {\n _didIteratorError15 = true;\n _iteratorError15 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion15 && _iterator15.return != null) {\n _iterator15.return();\n }\n } finally {\n if (_didIteratorError15) {\n throw _iteratorError15;\n }\n }\n }\n }\n var routeChunkFile = (_ref12 = clientChunk === null || clientChunk === void 0 ? void 0 : clientChunk.fileName) !== null && _ref12 !== void 0 ? _ref12 : clientManifestEntry === null || clientManifestEntry === void 0 ? void 0 : clientManifestEntry.file;\n if (routeChunkFile) {\n routePreloads[`/${routerRoot}${foundRoute.file.slice(1)}`] = `/${routeChunkFile}`;\n }\n var preloadSetupFilePreloads = (function() {\n if (!oneOptions.setupFile) return [];\n var clientSetupFile = typeof oneOptions.setupFile === \"string\" ? oneOptions.setupFile : oneOptions.setupFile.client;\n if (!clientSetupFile) return [];\n var needle = clientSetupFile.replace(/^\\.\\//, \"\");\n for (var file2 in vxrnOutput.clientManifest) {\n if (file2 === needle) {\n var entry3 = vxrnOutput.clientManifest[file2];\n return [\n entry3.file\n ];\n }\n }\n return [];\n })();\n var allPreloads = [\n .../* @__PURE__ */ new Set([\n ...preloadSetupFilePreloads,\n // add the route entry js (like ./app/index.ts) - prefer direct chunk lookup\n ...clientChunk ? [\n clientChunk.fileName\n ] : clientManifestEntry ? [\n clientManifestEntry.file\n ] : [],\n // add the virtual entry\n vxrnOutput.clientManifest[\"virtual:one-entry\"].file,\n ...entryImports,\n ...layoutImports\n ])\n ].map(function(path2) {\n return `/${path2}`;\n });\n var scriptLoadingMode = (_oneOptions_web3 = oneOptions.web) === null || _oneOptions_web3 === void 0 ? void 0 : _oneOptions_web3.experimental_scriptLoading;\n var useDeferredLoading = scriptLoadingMode === \"defer-non-critical\";\n var useAggressiveLCP = scriptLoadingMode === \"after-lcp-aggressive\";\n var needsSeparatedPreloads = useDeferredLoading || useAggressiveLCP;\n var criticalPreloads = needsSeparatedPreloads ? [\n .../* @__PURE__ */ new Set([\n ...preloadSetupFilePreloads,\n // add the virtual entry (framework bootstrap)\n vxrnOutput.clientManifest[\"virtual:one-entry\"].file,\n // add the route entry js (like ./app/index.ts) - prefer direct chunk lookup\n ...clientChunk ? [\n clientChunk.fileName\n ] : clientManifestEntry ? [\n clientManifestEntry.file\n ] : [],\n // add layout files (but not their deep imports)\n ...layoutEntries.map(function(entry3) {\n return entry3.file;\n })\n ])\n ].map(function(path2) {\n return `/${path2}`;\n }) : void 0;\n var deferredPreloads = needsSeparatedPreloads ? [\n .../* @__PURE__ */ new Set([\n ...entryImports,\n ...layoutEntries.flatMap(function(entry3) {\n return collectImports(entry3);\n })\n ])\n ].filter(function(path2) {\n return !criticalPreloads.includes(`/${path2}`);\n }).map(function(path2) {\n return `/${path2}`;\n }) : void 0;\n var preloads2 = needsSeparatedPreloads ? [\n ...criticalPreloads,\n ...deferredPreloads\n ] : allPreloads;\n var allEntries = [\n clientManifestEntry,\n ...layoutEntries\n ].filter(Boolean);\n var layoutCSS = [\n ...new Set(layoutEntries.flatMap(function(entry3) {\n return collectImports(entry3, {\n type: \"css\"\n });\n }).map(function(path2) {\n return `/${path2}`;\n }))\n ];\n var allCSS = [\n .../* @__PURE__ */ new Set([\n ...layoutCSS,\n // css from page entry\n ...clientManifestEntry ? collectImports(clientManifestEntry, {\n type: \"css\"\n }).map(function(path2) {\n return `/${path2}`;\n }) : [],\n // root-level css for cssCodeSplit: false (vite emits a single\n // top-level `style.css` entry whose `src` equals `style.css`). when\n // cssCodeSplit is true (default), the manifest also contains a\n // per-component css entry for every chunk that ships any css — those\n // are owned by their JS chunk and must NOT be injected globally, or\n // every SSG page ends up preloading every css chunk in the project\n // (the prod /download was loading 23 stylesheets with editor/IDE\n // chunks despite being a marketing route).\n ...Object.entries(vxrnOutput.clientManifest).filter(function(param) {\n var [key, entry3] = param;\n if (!key.endsWith(\".css\")) return false;\n var src = entry3.src;\n return src === \"style.css\";\n }).map(function(param) {\n var [, entry3] = param;\n return `/${entry3.file}`;\n })\n ])\n ];\n var hasCriticalCSS = allCSS.some(function(p) {\n return criticalCSSOutputPaths.has(p);\n });\n var needsCSSContents = ((_oneOptions_web12 = oneOptions.web) === null || _oneOptions_web12 === void 0 ? void 0 : _oneOptions_web12.inlineLayoutCSS) || hasCriticalCSS;\n var allCSSContents = void 0;\n if (needsCSSContents) {\n allCSSContents = await Promise.all(allCSS.map(async function(cssPath) {\n var _oneOptions_web4;\n if (!((_oneOptions_web4 = oneOptions.web) === null || _oneOptions_web4 === void 0 ? void 0 : _oneOptions_web4.inlineLayoutCSS) && !criticalCSSOutputPaths.has(cssPath)) {\n return \"\";\n }\n var cached = cssFileContentsCache.get(cssPath);\n if (cached !== void 0) return cached;\n var filePath = join(clientDir, cssPath);\n try {\n var content = await FSExtra.readFile(filePath, \"utf-8\");\n cssFileContentsCache.set(cssPath, content);\n return content;\n } catch (err) {\n console.warn(`[one] Warning: Could not read CSS file ${filePath}`);\n cssFileContentsCache.set(cssPath, \"\");\n return \"\";\n }\n }));\n }\n if (process.env.DEBUG) {\n console.info(\"[one] building routes\", {\n foundRoute,\n layoutEntries,\n allEntries,\n allCSS\n });\n }\n var serverJsPath = posix.join(outDir, \"server\", serverFileName);\n var exported = void 0;\n try {\n exported = await getRouteExports(vxrnOutput.serverEntry, routerRoot, foundRoute.file);\n } catch (err) {\n console.error(`Error importing page (original error)`, err);\n throw new Error(`Error importing page: ${foundRoute.file}`, {\n cause: err\n });\n }\n foundRoute.hasLoader = typeof exported.loader === \"function\";\n var isDynamic = !!Object.keys(foundRoute.routeKeys).length;\n if (foundRoute.type === \"ssg\" && isDynamic && !foundRoute.page.includes(\"+not-found\") && !foundRoute.page.includes(\"_sitemap\") && !exported.generateStaticParams) {\n throw new Error(`[one] Error: Missing generateStaticParams\n\n Route ${foundRoute.page} of type ${foundRoute.type} must export generateStaticParams so build can complete.\n\n See docs on generateStaticParams:\n https://onestack.dev/docs/routing-exports#generatestaticparams\n\n`);\n }\n var paramsList = (_ref22 = await ((_exported_generateStaticParams = exported.generateStaticParams) === null || _exported_generateStaticParams === void 0 ? void 0 : _exported_generateStaticParams.call(exported))) !== null && _ref22 !== void 0 ? _ref22 : [\n {}\n ];\n console.info(`\n [build] page ${relativeId1} (with ${paramsList.length} routes)\n`);\n if (process.env.DEBUG) {\n console.info(`paramsList`, JSON.stringify(paramsList, null, 2));\n }\n var routeSitemapExport = exported.sitemap;\n var isAfterLCPMode = scriptLoadingMode === \"after-lcp\" || scriptLoadingMode === \"after-lcp-aggressive\";\n var useAfterLCP = foundRoute.type === \"ssg\" && isAfterLCPMode;\n var useAfterLCPAggressive = foundRoute.type === \"ssg\" && scriptLoadingMode === \"after-lcp-aggressive\";\n var shouldCollectSitemap = foundRoute.type !== \"api\" && foundRoute.type !== \"layout\" && !foundRoute.isNotFound && !foundRoute.page.includes(\"+not-found\") && !foundRoute.page.includes(\"_sitemap\");\n var pageBuilds = paramsList.map(function(params) {\n var path2 = getPathnameFromFilePath(relativeId1, params, foundRoute.type === \"ssg\");\n if (workerPool) {\n console.info(` \\u21A6 route ${path2}`);\n return workerPool.buildPage({\n serverEntry: vxrnOutput.serverEntry,\n routerRoot,\n path: path2,\n relativeId: relativeId1,\n params,\n foundRoute,\n clientManifestEntry,\n staticDir,\n clientDir,\n builtMiddlewares,\n serverJsPath,\n preloads: preloads2,\n allCSS,\n layoutCSS,\n routePreloads,\n allCSSContents,\n criticalPreloads,\n deferredPreloads,\n useAfterLCP,\n useAfterLCPAggressive\n }).then(function(built2) {\n return {\n built: built2,\n path: path2\n };\n });\n }\n return limit(async function() {\n console.info(` \\u21A6 route ${path2}`);\n var built2 = await runWithAsyncLocalContext(async function() {\n return await buildPage(vxrnOutput.serverEntry, routerRoot, path2, relativeId1, params, foundRoute, clientManifestEntry, staticDir, clientDir, builtMiddlewares, serverJsPath, preloads2, allCSS, layoutCSS, routePreloads, allCSSContents, criticalPreloads, deferredPreloads, useAfterLCP, useAfterLCPAggressive);\n });\n return {\n built: built2,\n path: path2\n };\n });\n });\n var results = await Promise.all(pageBuilds);\n var _iteratorNormalCompletion22 = true, _didIteratorError22 = false, _iteratorError22 = void 0;\n try {\n for (var _iterator22 = results[Symbol.iterator](), _step22; !(_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done); _iteratorNormalCompletion22 = true) {\n var { built, path } = _step22.value;\n builtRoutes.push(built);\n if (shouldCollectSitemap) {\n sitemapData.push({\n path,\n routeExport: routeSitemapExport\n });\n }\n }\n } catch (err) {\n _didIteratorError22 = true;\n _iteratorError22 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion22 && _iterator22.return != null) {\n _iterator22.return();\n }\n } finally {\n if (_didIteratorError22) {\n throw _iteratorError22;\n }\n }\n }\n };\n for (var _iterator10 = manifest.pageRoutes[Symbol.iterator](), _step10; !(_iteratorNormalCompletion10 = (_step10 = _iterator10.next()).done); _iteratorNormalCompletion10 = true) await _loop1();\n } catch (err) {\n _didIteratorError10 = true;\n _iteratorError10 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion10 && _iterator10.return != null) {\n _iterator10.return();\n }\n } finally {\n if (_didIteratorError10) {\n throw _iteratorError10;\n }\n }\n }\n if (workerPool) {\n await terminateWorkerPool();\n }\n var staticTime = performance.now() - staticStartTime;\n console.info(`\n \\u23F1\\uFE0F static routes: ${(staticTime / 1e3).toFixed(2)}s (${builtRoutes.length} pages)\n`);\n printBuildTimings();\n await moveAllFiles(staticDir, clientDir);\n await FSExtra.remove(staticDir);\n var routeMap = {};\n var routeToBuildInfo = {};\n var pathToRoute = {};\n var preloads = {};\n var cssPreloads = {};\n var loaders = {};\n var cssContentsByPath;\n var _iteratorNormalCompletion11 = true, _didIteratorError11 = false, _iteratorError11 = void 0;\n try {\n var _loop2 = function() {\n var route2 = _step11.value;\n if (!route2.cleanPath.includes(\"*\")) {\n routeMap[route2.cleanPath] = route2.htmlPath;\n }\n var {\n // dont include loaderData it can be huge\n loaderData: _loaderData,\n cssContents,\n ...rest\n } = route2;\n if (cssContents) {\n var contentsByPath = cssContentsByPath || (cssContentsByPath = {});\n route2.css.forEach(function(cssPath, index) {\n var content = cssContents[index];\n if (content) contentsByPath[cssPath] = content;\n });\n }\n routeToBuildInfo[route2.routeFile] = rest;\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = getCleanPaths([\n route2.path,\n route2.cleanPath\n ])[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var p = _step14.value;\n pathToRoute[p] = route2.routeFile;\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n preloads[route2.preloadPath] = true;\n cssPreloads[route2.cssPreloadPath] = true;\n loaders[route2.loaderPath] = true;\n };\n for (var _iterator11 = builtRoutes[Symbol.iterator](), _step11; !(_iteratorNormalCompletion11 = (_step11 = _iterator11.next()).done); _iteratorNormalCompletion11 = true) _loop2();\n } catch (err) {\n _didIteratorError11 = true;\n _iteratorError11 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion11 && _iterator11.return != null) {\n _iterator11.return();\n }\n } finally {\n if (_didIteratorError11) {\n throw _iteratorError11;\n }\n }\n }\n function createBuildManifestRoute(route2) {\n var { layouts, ...built } = route2;\n if (layouts === null || layouts === void 0 ? void 0 : layouts.length) {\n ;\n built.layouts = layouts.map(function(layout) {\n return {\n contextKey: layout.contextKey,\n loaderServerPath: layout.loaderServerPath\n };\n });\n }\n var buildInfo = builtRoutes.find(function(x) {\n return x.routeFile === route2.file;\n });\n if (built.middlewares) {\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = built.middlewares.entries()[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var [index, mw] = _step14.value;\n var _buildInfo_middlewares;\n var viaBuildInfo = buildInfo === null || buildInfo === void 0 ? void 0 : (_buildInfo_middlewares = buildInfo.middlewares) === null || _buildInfo_middlewares === void 0 ? void 0 : _buildInfo_middlewares[index];\n if (viaBuildInfo) {\n mw.contextKey = viaBuildInfo;\n continue;\n }\n var viaMiddlewareMap = builtMiddlewares[mw.contextKey];\n if (viaMiddlewareMap) {\n mw.contextKey = viaMiddlewareMap;\n }\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n }\n if (buildInfo) {\n built.loaderPath = buildInfo.loaderPath;\n }\n return built;\n }\n var buildInfoForWriting = {\n outDir,\n oneOptions,\n routeToBuildInfo,\n cssContentsByPath,\n pathToRoute,\n manifest: {\n pageRoutes: manifest.pageRoutes.map(createBuildManifestRoute),\n apiRoutes: manifest.apiRoutes.map(createBuildManifestRoute),\n allRoutes: manifest.allRoutes.map(createBuildManifestRoute)\n },\n routeMap,\n constants: JSON.parse(JSON.stringify({\n ...constants\n })),\n preloads,\n cssPreloads,\n loaders,\n useRolldown: await isRolldown()\n };\n await writeJSON(toAbsolute(`${outDir}/buildInfo.json`), buildInfoForWriting);\n await writeBuildOutputPointer(outDir);\n await FSExtra.writeFile(join(clientDir, \"version.json\"), JSON.stringify({\n version: constants.CACHE_KEY\n }));\n console.info(`\n \\u{1F6E1} skew protection: emitted version.json\n`);\n var sitemapConfig = (_oneOptions_web2 = oneOptions.web) === null || _oneOptions_web2 === void 0 ? void 0 : _oneOptions_web2.sitemap;\n if (sitemapConfig) {\n var sitemapOptions = typeof sitemapConfig === \"boolean\" ? {} : sitemapConfig;\n var sitemapXml = generateSitemap(sitemapData, sitemapOptions);\n var sitemapPath = join(clientDir, \"sitemap.xml\");\n await FSExtra.writeFile(sitemapPath, sitemapXml);\n console.info(`\n \\u{1F4C4} generated sitemap.xml (${sitemapData.length} URLs)\n`);\n }\n var postBuildLogs = [];\n var platform = deployConfig === null || deployConfig === void 0 ? void 0 : deployConfig.target;\n if (platform) {\n postBuildLogs.push(`[one.build] platform ${platform}`);\n }\n switch (platform) {\n case \"vercel\": {\n var vercelJsonPath = join(options.root, \"vercel.json\");\n if (FSExtra.existsSync(vercelJsonPath)) {\n try {\n var vercelConfig = JSON.parse(FSExtra.readFileSync(vercelJsonPath, \"utf-8\"));\n if (!vercelConfig.cleanUrls) {\n console.warn(`\n \\u26A0\\uFE0F Warning: Your vercel.json is missing \"cleanUrls\": true`);\n console.warn(` Without this, direct navigation to SSG pages will 404.`);\n console.warn(` Add \"cleanUrls\": true to your vercel.json to fix this.\n`);\n }\n } catch (unused) {\n }\n }\n await buildVercelOutputDirectory({\n apiOutput,\n buildInfoForWriting,\n clientDir,\n oneOptionsRoot: options.root,\n postBuildLogs\n });\n break;\n }\n case \"cloudflare\": {\n var _viteLoadedConfig_config_ssr, _viteLoadedConfig_config1;\n var workerSrcDir = join(options.root, outDir);\n var getWorkerSourceImportPath = function getWorkerSourceImportPath2(routeFile) {\n var importPath2 = normalizePath(relative(workerSrcDir, join(options.root, routerRoot, routeFile)));\n return importPath2.startsWith(\".\") ? importPath2 : `./${importPath2}`;\n };\n var apiRouteMap = [];\n var middlewareRouteMap = [];\n var _iteratorNormalCompletion12 = true, _didIteratorError12 = false, _iteratorError12 = void 0;\n try {\n for (var _iterator12 = buildInfoForWriting.manifest.apiRoutes[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {\n var route1 = _step12.value;\n if (route1.file) {\n var importPath = getWorkerSourceImportPath(route1.file);\n apiRouteMap.push(` '${route1.page}': () => import('${importPath}')`);\n }\n }\n } catch (err) {\n _didIteratorError12 = true;\n _iteratorError12 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion12 && _iterator12.return != null) {\n _iterator12.return();\n }\n } finally {\n if (_didIteratorError12) {\n throw _iteratorError12;\n }\n }\n }\n var _iteratorNormalCompletion13 = true, _didIteratorError13 = false, _iteratorError13 = void 0;\n try {\n for (var _iterator13 = Object.entries(builtMiddlewares)[Symbol.iterator](), _step13; !(_iteratorNormalCompletion13 = (_step13 = _iterator13.next()).done); _iteratorNormalCompletion13 = true) {\n var [sourceFile, builtPath] = _step13.value;\n var importPath1 = getWorkerSourceImportPath(sourceFile);\n middlewareRouteMap.push(` '${builtPath}': () => import('${importPath1}')`);\n }\n } catch (err) {\n _didIteratorError13 = true;\n _iteratorError13 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion13 && _iterator13.return != null) {\n _iterator13.return();\n }\n } finally {\n if (_didIteratorError13) {\n throw _iteratorError13;\n }\n }\n }\n var workerSrcPath = join(options.root, outDir, \"_worker-src.js\");\n var workerCode = `// Polyfill MessageChannel for React SSR (not available in Cloudflare Workers by default)\nif (typeof MessageChannel === 'undefined') {\n globalThis.MessageChannel = class MessageChannel {\n constructor() {\n this.port1 = { postMessage: () => {}, onmessage: null, close: () => {} }\n this.port2 = { postMessage: () => {}, onmessage: null, close: () => {} }\n }\n }\n}\n\nimport { serve, setFetchStaticHtml, withRange } from 'one/serve-worker'\n\n// Lazy import map - modules load on-demand when route is matched\nconst lazyRoutes = {\n serverEntry: () => import('./server/_virtual_one-entry.js'),\n api: {\n${apiRouteMap.join(\",\\n\")}\n },\n middlewares: {\n${middlewareRouteMap.join(\",\\n\")}\n }\n}\n\nconst buildInfo = ${JSON.stringify(buildInfoForWriting)}\n\nlet server\n\nexport default {\n async fetch(request, env, ctx) {\n if (!server) {\n server = await serve(buildInfo, lazyRoutes)\n }\n\n // set up static HTML fetcher for this request (uses ASSETS binding)\n if (env.ASSETS) {\n setFetchStaticHtml(async (path) => {\n try {\n const url = new URL(request.url)\n url.pathname = path\n const assetResponse = await env.ASSETS.fetch(new Request(url))\n if (assetResponse && assetResponse.ok) {\n return await assetResponse.text()\n }\n } catch (e) {\n // asset not found\n }\n return null\n })\n }\n\n try {\n const response = await server.fetch(request, env, ctx)\n\n // no route matched or 404 \\u2192 try static assets\n if (!response || response.status === 404) {\n if (env.ASSETS) {\n try {\n const assetResponse = await env.ASSETS.fetch(request)\n if (assetResponse && assetResponse.status !== 404) {\n return await withRange(request, assetResponse)\n }\n } catch (e) {\n // asset not found, continue with original response\n }\n }\n }\n\n return response\n } finally {\n setFetchStaticHtml(null)\n }\n }\n}\n`;\n await FSExtra.writeFile(workerSrcPath, workerCode);\n var projectName = await getCloudflareProjectName(options.root);\n var userWranglerConfig = await loadUserWranglerConfig(options.root);\n var wranglerInputConfig = createCloudflareWranglerConfig(projectName, userWranglerConfig === null || userWranglerConfig === void 0 ? void 0 : userWranglerConfig.config);\n wranglerInputConfig.main = normalizePath(relative(join(options.root, outDir), workerSrcPath));\n var wranglerInputPath = join(options.root, outDir, \"_wrangler.input.jsonc\");\n await FSExtra.writeFile(wranglerInputPath, `${JSON.stringify(wranglerInputConfig, null, 2)}\n`);\n var ssrExternal = viteLoadedConfig === null || viteLoadedConfig === void 0 ? void 0 : (_viteLoadedConfig_config1 = viteLoadedConfig.config) === null || _viteLoadedConfig_config1 === void 0 ? void 0 : (_viteLoadedConfig_config_ssr = _viteLoadedConfig_config1.ssr) === null || _viteLoadedConfig_config_ssr === void 0 ? void 0 : _viteLoadedConfig_config_ssr.external;\n var workerExternals = Array.isArray(ssrExternal) ? ssrExternal : [];\n console.info(\"\\n [cloudflare] Bundling worker...\");\n var { cloudflare } = await import(\"@cloudflare/vite-plugin\");\n var builder = await createBuilder({\n root: options.root,\n mode: \"production\",\n logLevel: \"warn\",\n configFile: false,\n define: {\n \"process.env.NODE_ENV\": JSON.stringify(\"production\"),\n \"process.env.VITE_ENVIRONMENT\": JSON.stringify(\"ssr\"),\n \"process.env.ONE_CACHE_KEY\": JSON.stringify(constants.CACHE_KEY)\n },\n plugins: [\n // the cloudflare worker IS a server, but this build runs with\n // configFile:false so the user vite.config (where the user-level\n // `one()` plugin registers environmentGuardPlugin via vite.config)\n // doesn't apply. register the guard plugin directly here so\n // `import 'server-only'` resolves to an empty module in the\n // worker bundle instead of inlining the package's throwing\n // index.js — which would crash the deployed worker on the first\n // /api request that loads any server-only-importing module.\n environmentGuardPlugin(oneOptions.environmentGuards),\n cloudflare({\n configPath: wranglerInputPath,\n viteEnvironment: {\n name: \"worker\"\n }\n })\n ],\n resolve: {\n alias: [\n // rolldown can't parse react-native's Flow syntax; alias to react-native-web for ssr\n {\n find: /^react-native\\/Libraries\\/.*/,\n replacement: resolvePath(\"@vxrn/utils/empty\", options.root)\n },\n {\n // react native 0.87 removed @react-native/assets-registry, but libraries\n // like react-native-svg still import its registry\n find: /^(react-native\\/asset-registry|@react-native\\/assets-registry\\/registry)$/,\n replacement: \"react-native-web/dist/modules/AssetRegistry\"\n },\n {\n find: \"react-native/package.json\",\n replacement: \"react-native-web/package.json\"\n },\n {\n find: \"react-native\",\n replacement: \"react-native-web\"\n },\n ...Object.entries(absorbedPackageAliases(options.root, \"web\")).map(function(param) {\n var [find, replacement] = param;\n return {\n find,\n replacement\n };\n })\n ],\n // the aliases name react-native-web by package, so it resolves from\n // the app root only once something imports react-native: an app\n // with no react-native imports needs no react-native-web.\n dedupe: [\n \"react-native-web\"\n ]\n },\n build: {\n outDir,\n emptyOutDir: false,\n rolldownOptions: {\n // packages the app keeps out of its ssr bundle (native bindings\n // used only by build-time loaders) stay out of the worker too\n external: workerExternals,\n // Match the main web build behavior so RN packages that import\n // native-only symbols from react-native can still bundle against\n // the react-native-web alias in the worker graph.\n shimMissingExports: true,\n // cloudflare's module worker can contain circular shared chunks\n // when one package is used by both browser-facing SSR code and API\n // routes. preserve source import order so a dependent chunk cannot\n // evaluate against partially initialized exports.\n output: {\n strictExecutionOrder: true\n }\n }\n }\n });\n var workerEnv = builder.environments.worker;\n if (!workerEnv) {\n throw new Error('[one] plugin did not register \"worker\" environment');\n }\n await builder.build(workerEnv);\n await FSExtra.remove(workerSrcPath);\n await FSExtra.remove(wranglerInputPath);\n await finalizeCloudflareWranglerDeployConfig(join(options.root, outDir, \"worker\", \"wrangler.json\"));\n if (userWranglerConfig) {\n console.info(` [cloudflare] Merging ${relative(options.root, userWranglerConfig.path)} into ${outDir}/worker/wrangler.json`);\n }\n postBuildLogs.push(`Cloudflare worker bundled at ${outDir}/worker/index.js`);\n postBuildLogs.push(`To deploy: wrangler deploy`);\n break;\n }\n }\n var securityScanOption = (_oneOptions_build5 = oneOptions.build) === null || _oneOptions_build5 === void 0 ? void 0 : _oneOptions_build5.securityScan;\n var securityScanLevel = securityScanOption === false ? null : securityScanOption === true || securityScanOption === void 0 ? \"warn\" : typeof securityScanOption === \"string\" ? securityScanOption : (_securityScanOption_level = securityScanOption.level) !== null && _securityScanOption_level !== void 0 ? _securityScanOption_level : \"warn\";\n var securitySafePatterns = typeof securityScanOption === \"object\" && securityScanOption !== null ? securityScanOption.safePatterns : void 0;\n if (securityScanLevel) {\n var { runSecurityScan } = await import(\"./securityScan\");\n var passed = await runSecurityScan(clientDir, securityScanLevel, securitySafePatterns);\n if (!passed) {\n process.exit(1);\n }\n }\n if (postBuildLogs.length) {\n console.info(`\n\n`);\n postBuildLogs.forEach(function(log) {\n console.info(` \\xB7 ${log}`);\n });\n }\n console.info(`\n \\u{1F49B} build complete\n`);\n}\nvar TRAILING_INDEX_REGEX = /\\/index(\\.(web))?/;\nfunction getCleanPaths(possiblePaths) {\n return Array.from(new Set(Array.from(new Set(possiblePaths)).flatMap(function(p) {\n var paths = [\n p\n ];\n if (p.match(TRAILING_INDEX_REGEX)) {\n var pathWithTrailingIndexRemoved = p.replace(TRAILING_INDEX_REGEX, \"\");\n paths.push(pathWithTrailingIndexRemoved);\n paths.push(pathWithTrailingIndexRemoved + \"/\");\n }\n return paths;\n })));\n}\nasync function moveAllFiles(src, dest) {\n try {\n await FSExtra.copy(src, dest, {\n overwrite: true,\n errorOnExist: false\n });\n } catch (err) {\n console.error(\"Error moving files:\", err);\n }\n}\nexport {\n build\n};\n//# sourceMappingURL=build.js.map\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAI,EAAE,WAAW,cAAc;AAC/B,SAAS,gBAAgB,QAAQ;CAC/B,IAAI,CAAC,QAAQ,OAAO,KAAK;CACzB,IAAI,OAAO,WAAW,UAAU,OAAO,EACrC,QAAQ,OACV;CACA,OAAO;AACT;AACA,IAAI,mCAAmC,CACrC;CACE,MAAM;CACN,OAAO,CACL,kBACA,iBACF;AACF,CACF;AACA,SAAS,oBAAoB,OAAO;CAClC,IAAI,MAAM,QAAQ,KAAK,GAAG;EACxB,IAAI,QAAQ,MAAM,IAAI,SAAS,MAAM;GACnC,OAAO,oBAAoB,IAAI;EACjC,CAAC,CAAC,CAAC,OAAO,SAAS,MAAM;GACvB,OAAO,SAAS,KAAK;EACvB,CAAC;EACD,OAAO,MAAM,SAAS,IAAI,QAAQ,KAAK;CACzC;CACA,IAAI,cAAc,KAAK,GAAG;EACxB,IAAI,UAAU,OAAO,QAAQ,KAAK,CAAC,CAAC,IAAI,SAAS,OAAO;GACtD,IAAI,CAAC,KAAK,QAAQ;GAClB,OAAO,CACL,KACA,oBAAoB,IAAI,CAC1B;EACF,CAAC,CAAC,CAAC,OAAO,SAAS,OAAO;GACxB,OAAO,MAAM,OAAO,KAAK;EAC3B,CAAC;EACD,OAAO,QAAQ,SAAS,IAAI,OAAO,YAAY,OAAO,IAAI,KAAK;CACjE;CACA,OAAO;AACT;AACA,eAAe,uCAAuC,YAAY;CAChE,IAAI,SAAS,KAAK,MAAM,MAAM,QAAQ,SAAS,YAAY,OAAO,CAAC;CACnE,IAAI,CAAC,cAAc,MAAM,GAAG;EAC1B,MAAM,IAAI,MAAM,YAAY,SAAS,QAAQ,IAAI,GAAG,UAAU,EAAE,0BAA0B;CAC5F;CACA,OAAO,QAAQ;CACf,IAAI,SAAS,oBAAoB,MAAM;CACvC,IAAI,CAAC,cAAc,MAAM,GAAG;EAC1B,MAAM,IAAI,MAAM,YAAY,SAAS,QAAQ,IAAI,GAAG,UAAU,EAAE,0BAA0B;CAC5F;CACA,MAAM,QAAQ,UAAU,YAAY,GAAG,KAAK,UAAU,QAAQ,MAAM,CAAC,EAAE;CACxE;AACD;AACA,QAAQ,IAAI,gBAAgB,UAAU;AACtC,SAAS,iBAAiB,YAAY;CACpC,IAAI;CACJ,IAAI,QAAQ,IAAI,sBAAsB,KAAK,OAAO;CAClD,IAAI,QAAQ,IAAI,sBAAsB,KAAK,OAAO;CAClD,QAAQ,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,KAAK,oBAAoB,WAAW,WAAW,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,aAAa;AAC5L;AACA,8BAA8B;AAC9B,IAAI,8BAA8B;AAClC,SAAS,4BAA4B;CACnC,IAAI,6BAA6B;CACjC,8BAA8B;CAC9B,QAAQ,GAAG,qBAAqB,SAAS,KAAK;EAC5C,IAAI;GACF,QAAQ,OAAO,MAAM;EACzB,kBAAkB,GAAG,EAAE;CACxB;EACG,SAAS,QAAQ,CACjB;EACA,QAAQ,KAAK,CAAC;CAChB,CAAC;CACD,QAAQ,GAAG,sBAAsB,SAAS,QAAQ;EAChD,IAAI;GACF,QAAQ,OAAO,MAAM;EACzB,kBAAkB,MAAM,EAAE;CAC3B;EACG,SAAS,QAAQ,CACjB;EACA,QAAQ,KAAK,CAAC;CAChB,CAAC;AACH;AACA,IAAI,YAAY;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AACA,SAAS,iBAAiB,QAAQ;CAChC,IAAI,CAAC,OAAO,SAAS,OAAO;CAC5B,OAAO;EACL,GAAG;EACH,SAAS,OAAO,QAAQ,IAAI,SAAS,GAAG;GACtC,IAAI,CAAC,KAAK,OAAO,MAAM,UAAU,OAAO;GACxC,IAAI,SAAS,EACX,GAAG,EACL;GACA,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;GACvF,IAAI;IACF,KAAK,IAAI,YAAY,UAAU,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;KAC1J,IAAI,MAAM,MAAM;KAChB,IAAI,OAAO,QAAQ,OAAO,OAAO,SAAS,YAAY,aAAa,OAAO,MAAM;MAC9E,OAAO,OAAO,EACZ,GAAG,OAAO,KACZ;KACF;IACF;GACF,SAAS,KAAK;IACZ,oBAAoB;IACpB,iBAAiB;GACnB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;MAC1D,UAAU,OAAO;KACnB;IACF,UAAU;KACR,IAAI,mBAAmB;MACrB,MAAM;KACR;IACF;GACF;GACA,OAAO;EACT,CAAC;CACH;AACF;AACA,eAAe,MAAM,MAAM;CACzB,IAAI,oCAAoC,MAAM,OAAO,eAAe,+BAA+B;CACnG,IAAI,mBAAmB,iBAAiB,kBAAkB,gCAAgC,0BAA0B,oBAAoB,oBAAoB,0BAA0B,oBAAoB,oBAAoB,oBAAoB,kBAAkB;CACpQ,0BAA0B;CAC1B,QAAQ,IAAI,cAAc;CAC1B,IAAI,CAAC,QAAQ,IAAI,UAAU;EACzB,QAAQ,IAAI,WAAW;CACzB,OAAO,IAAI,QAAQ,IAAI,aAAa,cAAc;EAChD,QAAQ,KAAK;8CAC6B,QAAQ,IAAI,SAAS;CAClE;CACC;CACA,aAAa,OAAO;CACpB,iBAAiB;CACjB,iBAAiB;CACjB,IAAI,EAAE,YAAY,QAAQ,qBAAqB,MAAM,mBAAmB,OAAO;CAC/E,IAAI,aAAa,4BAA4B,UAAU;CACvD,IAAI,8BAA8B,qCAAqC,QAAQ,IAAI,2BAA2B,QAAQ,uCAAuC,KAAK,IAAI,sCAAsC,oBAAoB,WAAW,WAAW,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB;CACxT,IAAI,mBAAmB,+BAA+B,KAAK,IAAI,KAAK,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,OAAO,0BAA0B;CAC1I,IAAI,CAAC,OAAO,UAAU,gBAAgB,KAAK,mBAAmB,GAAG;EAC/D,MAAM,IAAI,MAAM,0DAA0D,KAAK,UAAU,0BAA0B,GAAG;CACxH;CACA,KAAK,kBAAkB,WAAW,SAAS,QAAQ,oBAAoB,KAAK,IAAI,KAAK,IAAI,gBAAgB,mBAAmB;EAC1H,QAAQ,IAAI,0BAA0B,WAAW,IAAI;CACvD;CACA,IAAI,eAAe,iBAAiB,mBAAmB,WAAW,SAAS,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB,MAAM;CACjJ,IAAI,CAAC,QAAQ,IAAI,kBAAkB,cAAc;EAC/C,IAAI;EACJ,IAAI,OAAO,oBAAoB,aAAa,SAAS,QAAQ,sBAAsB,KAAK,IAAI,oBAAoB,aAAa,WAAW,eAAe,WAAW,MAAM,yBAAyB,QAAQ,IAAI,CAAC,EAAE,gBAAgB,KAAK;EACrO,IAAI,KAAK;GACP,QAAQ,IAAI,iBAAiB;GAC7B,QAAQ,KAAK;gCACa,IAAI;CACnC;EACG;CACF;CACA,IAAI,UAAU,OAAO,qBAAqB,QAAQ,qBAAqB,KAAK,IAAI,KAAK,KAAK,2BAA2B,iBAAiB,YAAY,QAAQ,6BAA6B,KAAK,IAAI,KAAK,KAAK,iCAAiC,yBAAyB,WAAW,QAAQ,mCAAmC,KAAK,IAAI,KAAK,IAAI,+BAA+B,YAAY,QAAQ,SAAS,KAAK,IAAI,OAAO;CACxZ,IAAI,WAAW,YAAY;EACzB;EACA,oBAAoB,qBAAqB,WAAW,YAAY,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB;CACtI,CAAC;CACD,IAAI,uBAAuB,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,YAAY,QAAQ,SAAS,SAAS,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,KAAK,2BAA2B,mBAAmB,YAAY,QAAQ,6BAA6B,KAAK,IAAI,KAAK,IAAI,yBAAyB,kBAAkB,QAAQ,UAAU,KAAK,IAAI,QAAQ;CAC5c,IAAI,iBAAiB,YAAY,IAAI;CACrC,IAAI,aAAa,MAAMA,QAAU;EAC/B,UAAU,gBAAgB,KAAK,aAAa,QAAQ,kBAAkB,KAAK,IAAI,gBAAgB,WAAW;EAC1G,QAAQ,WAAW;EACnB,OAAO;GACL,SAAS;GACT,UAAU,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,YAAY,QAAQ,QAAQ,EACnJ,cAAc,mBAChB;EACF;CACF,GAAG,IAAI;CACP,IAAI,aAAa,YAAY,IAAI,IAAI;CACrC,QAAQ,KAAK;8BACe,aAAa,IAAG,CAAE,QAAQ,CAAC,EAAE;CAC1D;CACC,IAAI,CAAC,cAAc,KAAK,aAAa,OAAO;EAC1C;CACF;CACA,IAAI,EAAE,YAAY;CAClB,IAAI,EAAE,iBAAiB,gBAAgB,OAAO;CAC9C,IAAI,EAAE,iBAAiB,kBAAkB,GAAG,2BAA2B;CACvE,IAAI,cAAc,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB;CACjI,IAAI,YAAY,OAAO,eAAe,YAAY,eAAe,QAAQ,WAAW,YAAY;CAChG,IAAI,aAAa,YAAY,kBAAkB,gCAAgC,WAAW,uBAAuB,QAAQ,kCAAkC,KAAK,IAAI,gCAAgC,WAAW,cAAc,IAAI,iBAAiB,WAAW,cAAc;CAC3Q,IAAI,WAAW;EACb,IAAI,QAAQ;GACV,GAAG;GACH,OAAO,WAAW,QAAQ,EACxB,GAAG,WAAW,MAChB,IAAI,KAAK;GACT,SAAS,WAAW,UAAU,WAAW,QAAQ,OAAO,SAAS,GAAG;IAClE,OAAO,KAAK,OAAO,MAAM,YAAY,EAAE,SAAS;GAClD,CAAC,IAAI,KAAK;EACZ;EACA,IAAI,MAAM,SAAS,MAAM,MAAM,iBAAiB;GAC9C,IAAI,KAAK,EACP,GAAG,MAAM,MAAM,gBACjB;GACA,OAAO,GAAG;GACV,MAAM,MAAM,kBAAkB;EAChC;EACA,IAAI,MAAM,OAAO;GACf,OAAO,MAAM,MAAM;EACrB;EACA,aAAa;CACf;CACA,IAAI,iBAAiB,YAAY,YAAY;EAC3C,YAAY;EACZ,SAAS;EACT,cAAc;EACd,cAAc,EACZ,QAAQ,EACN,cAAc,EACZ,iBAAiB,iBACnB,EACF,EACF;CACF,CAAC;CACD,eAAe,kBAAkB,WAAW,QAAQ;EAClD,IAAI;EACJ,IAAI,uBAAuB,oBAAoB,wBAAwB,qBAAqB,wBAAwB;EACpH,IAAI,QAAQ,OAAO,OAAO,SAAS,SAAS,OAAO;GACjD,IAAI,EAAE,MAAM,MAAM,UAAU;GAC5B,QAAQ,KAAK,MAAM,CAAC,IAAI,SAAS,KAAK,YAAY,KAAK;GACvD,OAAO;EACT,GAAG,CAAC,CAAC;EACL,IAAI,gBAAgB,QAAQ,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,KAAK,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,KAAK,wBAAwB,mBAAmB,SAAS,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB,kBAAkB,QAAQ,UAAU,KAAK,IAAI,QAAQ;EACrW,IAAI,YAAY,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,KAAK,sBAAsB,WAAW,WAAW,QAAQ,wBAAwB,KAAK,IAAI,KAAK,KAAK,yBAAyB,oBAAoB,SAAS,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB;EAC1S,IAAI,eAAe,YAAY,gBAAgB;GAC7C,SAAS;GACT,YAAY;GACZ,QAAQ,WAAW;GACnB,KAAK,YAAY,EAIf,cAAc,uBAChB,IAAI;IACF,YAAY;IACZ,UAAU,CACR,SACA,WACF;IACA,cAAc;GAChB;GACA,cAAc,EACZ,KAAK,EACH,cAAc,EACZ,iBAAiB,iBACnB,EACF,EACF;GACA,OAAO;IACL,KAAK;IACL,aAAa;IACb,QAAQ,GAAG,OAAO,GAAG;IACrB,eAAe;IACf,QAAQ;IACR,iBAAiB;KACf,WAAW,cAAc,QAAQ,cAAc,KAAK,IAAI,YAAY,EAClE,mBAAmB,MACrB;KACA,SAAS,CAEP,iBAAiB,QAAQ,kCAAkC,IAC7D,CAAC,CAAC,OAAO,OAAO;KAMhB,yBAAyB;KACzB;KAIA,GAAG,YAAY,CAAC,IAAI,EAClB,UAAU,CAAC,EACb;KACA,QAAQ;MACN,gBAAgB;MAChB,SAAS;MACT,GAAG,iBAAiB,QAAQ;OAC1B,QAAQ;OACR,UAAU;MACZ,IAAI;OACF,QAAQ;OAER,gBAAgB,SAAS,eAAe,WAAW;QACjD,IAAI,OAAO,UAAU,KAAK,QAAQ,SAAS,MAAM;QACjD,OAAO;OACT;OACA,gBAAgB,SAAS,eAAe,WAAW;QACjD,IAAI,YAAY,cAAc,UAAU,IAAI;QAC5C,IAAI,MAAM,MAAM,QAAQ,SAAS;QACjC,IAAI,OAAO,MAAM,SAAS,WAAW,MAAM,QAAQ,SAAS,CAAC;QAC7D,OAAO,MAAM,KAAK,KAAK,GAAG,KAAK,YAAY;OAC7C;OACA,gBAAgB,SAAS,eAAe,WAAW;QACjD,IAAI;QACJ,IAAI,YAAY,eAAe,kBAAkB,UAAU,UAAU,QAAQ,oBAAoB,KAAK,IAAI,kBAAkB,EAAE;QAC9H,IAAI,MAAM,MAAM,QAAQ,SAAS;QACjC,IAAI,WAAW,MAAM,SAAS,WAAW,MAAM,QAAQ,SAAS,CAAC;QACjE,IAAI,MAAM,MAAM,QAAQ,SAAS;QACjC,OAAO,MAAM,KAAK,KAAK,GAAG,SAAS,SAAS,KAAK;OACnD;MACF;KACF;IACF;GACF;EACF,CAAC;EACD,IAAI,oBAAoB,sBAAsB,WAAW,WAAW,QAAQ,wBAAwB,KAAK,IAAI,KAAK,KAAK,yBAAyB,oBAAoB,SAAS,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB;EACzP,IAAI,oBAAoB,mBAAmB,YAAY,cAAc,gBAAgB,IAAI;EACzF,IAAI,UAAU,MAAMC,QAElB,iBACF;EACA,OAAO;CACT;CACA,IAAI,mBAAmB,CAAC;CACxB,IAAI,aAAa,SAAS,UAAU,UAAU,QAAQ,KAAK;;CAE5D,GAAG,kBAAkB,OAAO,SAAS,SAAS,KAAK,QAAQ,QAAQ,IAAI;CACtE,IAAI,oBAAoB,SAAS,iBAAiB,UAAU,QAAQ,KAAK;;CAE1E,GAAG,kBAAkB,eAAe,SAAS,gBAAgB,KAAK,QAAQ,QAAQ,IAAI;CACrF,IAAI,CAAC,WAAW,uBAAuB,MAAM,QAAQ,IAAI,CACvD,YACA,iBACF,CAAC;CACD,IAAI,qBAAqB;EACvB,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;EACvF,IAAI;GACF,IAAI,QAAQ,WAAW;IACrB,IAAI,aAAa,MAAM;IACvB,IAAI,eAAe,QAAQ,QAAQ,IAAI,GAAG,QAAQ,IAAI;IACtD,IAAI,WAAW,cAAc,KAAK,cAAc,YAAY,WAAW,IAAI,CAAC;IAC5E,IAAI,YAAY,oBAAoB,OAAO,OAAO,SAAS,GAAG;KAC5D,OAAO,EAAE,SAAS;IACpB,CAAC;IACD,IAAI,SAAS,UAAU,KAAK,SAAS,GAAG;KACtC,OAAO,EAAE,mBAAmB;IAC9B,CAAC;IACD,IAAI,CAAC,QAAQ,MAAM,IAAI,MAAM,iCAAiC;IAC9D,iBAAiB,WAAW,QAAQ,MAAM,KAAK,QAAQ,eAAe,OAAO,QAAQ;GACvF;GACA,KAAK,IAAI,YAAY,SAAS,iBAAiB,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM,MAAM;EACpL,SAAS,KAAK;GACZ,oBAAoB;GACpB,iBAAiB;EACnB,UAAU;GACR,IAAI;IACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;KAC1D,UAAU,OAAO;IACnB;GACF,UAAU;IACR,IAAI,mBAAmB;KACrB,MAAM;IACR;GACF;EACF;CACF;CACA,WAAW,aAAa,cAAc,YAAY,UAAU,GAAG;CAC/D,IAAI,SAAS,CAAC;CACd,IAAI,cAAc,CAAC;CACnB,IAAI,cAAc,CAAC;CACnB,IAAI,sCAAsC,IAAI,IAAI;CAClD,IAAI,yCAAyC,IAAI,IAAI;CACrD,IAAI,uCAAuC,IAAI,IAAI;CACnD,IAAI,yBAAyB,0BAA0B,WAAW,cAAc;CAChF,IAAI,QAAQ,OAAO,gBAAgB;CACnC,IAAI,aAAa,iBAAiB,UAAU;CAC5C,IAAI,aAAa,aAAa,cAAc,gBAAgB,IAAI;CAChE,IAAI,YAAY;EACd,IAAI,sBAAsB,KAAK,MAAM,KAAK,UAAU,YAAY,SAAS,MAAM,OAAO;GACpF,OAAO,OAAO,UAAU,aAAa,KAAK,IAAI;EAChD,CAAC,CAAC;EACF,MAAM,WAAW,WAAW,mBAAmB;CACjD;CACA,IAAI,kBAAkB,YAAY,IAAI;CACtC,IAAI,YAAY,aAAa,YAAY,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW,SAAS,gBAAgB;CACrI,QAAQ,KAAK;kCACmB,UAAU;CAC3C;CACC,IAAI,YAAY,KAAK,GAAG,OAAO,QAAQ;CACvC,IAAI,YAAY,KAAK,GAAG,OAAO,QAAQ;CACvC,MAAM,UAAU,SAAS;CACzB,IAAI,CAAC,WAAW,cAAc;EAC5B,MAAM,IAAI,MAAM,kBAAkB;CACpC;CACA,IAAI,uCAAuC,IAAI,IAAI;CACnD,IAAI,WAAW,cAAc;EAC3B,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;EAC1F,IAAI;GACF,KAAK,IAAI,aAAa,WAAW,aAAa,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;IAC9K,IAAI,QAAQ,OAAO;IACnB,IAAI;IACJ,IAAI,MAAM,SAAS,SAAS;IAC5B,IAAI,OAAO;KACT,UAAU,MAAM;KAChB,SAAS,MAAM,WAAW,CAAC;IAC7B;IACA,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;IAC1F,IAAI;KACF,KAAK,IAAI,eAAe,mBAAmB,MAAM,eAAe,QAAQ,qBAAqB,KAAK,IAAI,mBAAmB,CAAC,EAAC,CAAE,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;MAC7P,IAAI,WAAW,OAAO;MACtB,qBAAqB,IAAI,UAAU,IAAI;KACzC;IACF,SAAS,KAAK;KACZ,qBAAqB;KACrB,kBAAkB;IACpB,UAAU;KACR,IAAI;MACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;OAC5D,WAAW,OAAO;MACpB;KACF,UAAU;MACR,IAAI,oBAAoB;OACtB,MAAM;MACR;KACF;IACF;GACF;EACF,SAAS,KAAK;GACZ,qBAAqB;GACrB,kBAAkB;EACpB,UAAU;GACR,IAAI;IACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;KAC5D,WAAW,OAAO;IACpB;GACF,UAAU;IACR,IAAI,oBAAoB;KACtB,MAAM;IACR;GACF;EACF;EACA,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;EAC1F,IAAI;GACF,KAAK,IAAI,aAAa,WAAW,aAAa,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;IAC9K,IAAI,SAAS,OAAO;IACpB,IAAI,OAAO,SAAS,WAAW,CAAC,OAAO,gBAAgB;IACvD,qBAAqB,IAAI,OAAO,gBAAgB;KAC9C,UAAU,OAAO;KACjB,SAAS,OAAO,WAAW,CAAC;IAC9B,CAAC;GACH;EACF,SAAS,KAAK;GACZ,qBAAqB;GACrB,kBAAkB;EACpB,UAAU;GACR,IAAI;IACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;KAC5D,WAAW,OAAO;IACpB;GACF,UAAU;IACR,IAAI,oBAAoB;KACtB,MAAM;IACR;GACF;EACF;CACF;CACA,IAAI,uCAAuC,IAAI,IAAI;CACnD,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,OAAO,OAAO,WAAW,cAAc,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GAC/L,IAAI,QAAQ,OAAO;GACnB,IAAI,MAAM,MAAM;IACd,qBAAqB,IAAI,MAAM,MAAM,KAAK;GAC5C;EACF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;CACA,IAAI,gBAAgB,CAClB,GAAG,WAAW,aAAa,QAAQ,CACrC;CACA,IAAI,oCAAoC,IAAI,IAAI;CAChD,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,cAAc,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GACpK,IAAI,GAAG,UAAU,OAAO;GACxB,IAAI,OAAO,SAAS,SAAS;GAC7B,IAAI,KAAK,OAAO,kBAAkB;GAClC,IAAI,OAAO,KAAK,SAAS,EAAE;GAC3B,IAAI,KAAK,WAAW,SAAS,KAAK,GAAG,SAAS,IAAI,WAAW,EAAE,GAAG;IAChE,IAAI,eAAe,cAAc,SAAS,QAAQ,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,WAAW,IAAI,EAAE;IAC1F,IAAI,aAAa,KAAK;IACtB,kBAAkB,IAAI,YAAY,OAAO,QAAQ;GACnD;EACF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;CACA,IAAI,8BAA8B,IAAI,IAAI;CAC1C,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,SAAS,WAAW,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GAC1K,IAAI,QAAQ,OAAO;GACnB,IAAI,MAAM,MAAM;IACd,IAAI,YAAY,GAAG,aAAa,MAAM,KAAK,MAAM,CAAC;IAClD,YAAY,IAAI,WAAW,KAAK;GAClC;EACF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;CACA,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,cAAc,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GACpK,IAAI,GAAG,WAAW,OAAO;GACzB,IAAI,QAAQ,SAAS,SAAS;IAC5B,OAAO,KAAK,OAAO;GACrB;EACF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;CACA,IAAI,wCAAwC,IAAI,IAAI;CACpD,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,cAAc,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GACpK,IAAI,GAAG,WAAW,OAAO;GACzB,IAAI,QAAQ,SAAS,SAAS;GAC9B,IAAI,YAAY,QAAQ,cAAc,QAAQ,iBAAiB,CAC7D,QAAQ,cACV,IAAI,CAAC;GACL,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;GAC1F,IAAI;IACF,KAAK,IAAI,aAAa,UAAU,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;KAChK,IAAI,YAAY,OAAO;KACvB,sBAAsB,IAAI,WAAW,QAAQ,QAAQ;KACrD,IAAI,UAAU,SAAS,gBAAgB,GAAG;MACxC,sBAAsB,IAAI,UAAU,MAAM,GAAG,UAAU,QAAQ,GAAG,CAAC,GAAG,QAAQ,QAAQ;KACxF;IACF;GACF,SAAS,KAAK;IACZ,qBAAqB;IACrB,kBAAkB;GACpB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;MAC5D,WAAW,OAAO;KACpB;IACF,UAAU;KACR,IAAI,oBAAoB;MACtB,MAAM;KACR;IACF;GACF;EACF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;CACA,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;CAC7F,IAAI;EACF,IAAI,SAAS,iBAAiB;GAC5B,IAAI,aAAa,QAAQ;GACzB,IAAI,wCAAwC,OAAO,QAAQ;GAC3D,IAAI,uBAAuB,qBAAqB,kBAAkB,mBAAmB;GACrF,IAAI,CAAC,WAAW,MAAM;IACpB,OAAO;GACT;GACA,IAAI,kBAAkB,cAAc,KAAK,QAAQ,QAAQ,IAAI,GAAG,QAAQ,IAAI,GAAG,YAAY,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC;GACpH,IAAI,iBAAiB,sBAAsB,IAAI,eAAe;GAC9D,IAAI,CAAC,gBAAgB;IACnB,IAAI,WAAW,SAAS,OAAO;KAC7B,MAAM,IAAI,MAAM,mDAAmD,WAAW,MAAM;IACtF;IACA,QAAQ,KAAK,0CAA0C,WAAW,MAAM;IACxE,OAAO;GACT;GACA,IAAI,aAAa,wBAAwB,WAAW,eAAe,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB;GAC7I,IAAI,WAAW;IACb,IAAI,aAAa,WAAW,KAAK,MAAM,CAAC;IACxC,IAAI,CAAC,WAAW,SAAS,YAAY,SAAS,GAAG;KAC/C,OAAO;IACT;GACF;GACA,IAAI,cAAc,qBAAqB,IAAI,eAAe;GAC1D,IAAI,cAAc,GAAG,aAAa,WAAW,KAAK,MAAM,CAAC;GACzD,IAAI,uBAAuB,yCAAyC,WAAW,eAAe,kBAAkB,QAAQ,2CAA2C,KAAK,IAAI,yCAAyC,cAAc,qBAAqB,IAAI,YAAY,QAAQ,IAAI,KAAK;GACzR,IAAI,CAAC,eAAe,WAAW,SAAS,SAAS,WAAW,SAAS,OAAO;IAC1E,QAAQ,KAAK,oCAAoC,iBAAiB;IAClE,OAAO;GACT;GACA,WAAW,mBAAmB;GAC9B,IAAI,cAAc,WAAW,KAAK,QAAQ,SAAS,GAAG;GACtD,IAAI,WAAW,SAAS;IACtB,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;IAC7F,IAAI;KACF,KAAK,IAAI,cAAc,WAAW,QAAQ,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;MAC/K,IAAI,SAAS,QAAQ;MACrB,IAAI,aAAa,kBAAkB,IAAI,OAAO,UAAU;MACxD,IAAI,YAAY;OACd,OAAO,mBAAmB;MAC5B;KACF;IACF,SAAS,KAAK;KACZ,sBAAsB;KACtB,mBAAmB;IACrB,UAAU;KACR,IAAI;MACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;OAC9D,YAAY,OAAO;MACrB;KACF,UAAU;MACR,IAAI,qBAAqB;OACvB,MAAM;MACR;KACF;IACF;GACF;GACA,SAAS,eAAe,QAAQ;IAC9B,IAAI,EAAE,OAAO,SAAS,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;IACxF,IAAI,EAAE,UAAU,CAAC,GAAG,QAAQ;IAC5B,IAAI,WAAW,GAAG,OAAO,QAAQ,QAAQ,KAAK,GAAG,EAAE,GAAG;IACtD,IAAI,SAAS,oBAAoB,IAAI,QAAQ;IAC7C,IAAI,QAAQ,OAAO;IACnB,IAAI,uBAAuB,IAAI,QAAQ,GAAG,OAAO,CAAC;IAClD,uBAAuB,IAAI,QAAQ;IACnC,IAAI,SAAS,CACX,GAAG,IAAI,IAAI,CACT,GAAG,SAAS,OAAO,UAAU,OAAO,CAAC,GACrC,GAAG,QAAQ,QAAQ,SAAS,MAAM;KAChC,IAAI,QAAQ,WAAW,eAAe;KACtC,IAAI,CAAC,OAAO;MACV,QAAQ,KAAK,oBAAoB,MAAM,WAAW,cAAc;KAClE;KACA,OAAO,eAAe,OAAO,EAC3B,KACF,CAAC;IACH,CAAC,CACH,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,SAAS,GAAG;KAC1B,OAAO,MAAM,SAAS,SAAS,EAAE,SAAS,KAAK;IACjD,CAAC,CAAC,CAAC,IAAI,SAAS,GAAG;KACjB,OAAO,SAAS,QAAQ,IAAI,EAAE,WAAW,SAAS,IAAI,IAAI,UAAU,EAAE,MAAM,CAAC;IAC/E,CAAC,CAAC,CACJ;IACA,uBAAuB,OAAO,QAAQ;IACtC,oBAAoB,IAAI,UAAU,MAAM;IACxC,OAAO;GACT;GACA,IAAI,eAAe,eAAe,uBAAuB,CAAC,CAAC;GAC3D,IAAI,iBAAiB,SAAS,sBAAsB,WAAW,aAAa,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB,QAAQ,SAAS,SAAS;IAC1K,IAAI,aAAa,GAAG,aAAa,QAAQ,WAAW,MAAM,CAAC;IAC3D,IAAI,QAAQ,WAAW,eAAe;IACtC,OAAO,QAAQ,QAAQ,CAAC;GAC1B,CAAC,OAAO,QAAQ,UAAU,KAAK,IAAI,QAAQ,CAAC;GAC5C,IAAI,gBAAgB,cAAc,QAAQ,SAAS,QAAQ;IACzD,OAAO,CACL,OAAO,MACP,GAAG,eAAe,MAAM,CAC1B;GACF,CAAC;GACD,IAAI,gBAAgB,CAAC;GACrB,IAAI,gBAAgB,GAAG,WAAW;GAClC,IAAI,kBAAkB,WAAW,eAAe;GAChD,IAAI,iBAAiB;IACnB,cAAc,IAAI,mBAAmB,IAAI,gBAAgB;GAC3D;GACA,IAAI,WAAW,SAAS;IACtB,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;IAC7F,IAAI;KACF,KAAK,IAAI,cAAc,WAAW,QAAQ,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;MAC/K,IAAI,UAAU,QAAQ;MACtB,IAAI,YAAY,GAAG,aAAa,QAAQ,WAAW,MAAM,CAAC;MAC1D,IAAI,SAAS,WAAW,eAAe;MACvC,IAAI,QAAQ;OACV,cAAc,IAAI,eAAe,IAAI,OAAO;MAC9C;KACF;IACF,SAAS,KAAK;KACZ,sBAAsB;KACtB,mBAAmB;IACrB,UAAU;KACR,IAAI;MACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;OAC9D,YAAY,OAAO;MACrB;KACF,UAAU;MACR,IAAI,qBAAqB;OACvB,MAAM;MACR;KACF;IACF;GACF;GACA,IAAI,kBAAkB,SAAS,gBAAgB,QAAQ,gBAAgB,KAAK,IAAI,KAAK,IAAI,YAAY,cAAc,QAAQ,WAAW,KAAK,IAAI,SAAS,wBAAwB,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB;GACtP,IAAI,gBAAgB;IAClB,cAAc,IAAI,aAAa,WAAW,KAAK,MAAM,CAAC,OAAO,IAAI;GACnE;GACA,IAAI,4BAA4B,WAAW;IACzC,IAAI,CAAC,WAAW,WAAW,OAAO,CAAC;IACnC,IAAI,kBAAkB,OAAO,WAAW,cAAc,WAAW,WAAW,YAAY,WAAW,UAAU;IAC7G,IAAI,CAAC,iBAAiB,OAAO,CAAC;IAC9B,IAAI,SAAS,gBAAgB,QAAQ,SAAS,EAAE;IAChD,KAAK,IAAI,SAAS,WAAW,gBAAgB;KAC3C,IAAI,UAAU,QAAQ;MACpB,IAAI,SAAS,WAAW,eAAe;MACvC,OAAO,CACL,OAAO,IACT;KACF;IACF;IACA,OAAO,CAAC;GACV,EAAC,CAAE;GACH,IAAI,cAAc,CAChB,mBAAmB,IAAI,IAAI;IACzB,GAAG;IAEH,GAAG,cAAc,CACf,YAAY,QACd,IAAI,sBAAsB,CACxB,oBAAoB,IACtB,IAAI,CAAC;IAEL,WAAW,eAAe,oBAAoB,CAAC;IAC/C,GAAG;IACH,GAAG;GACL,CAAC,CACH,CAAC,CAAC,IAAI,SAAS,OAAO;IACpB,OAAO,IAAI;GACb,CAAC;GACD,IAAI,qBAAqB,mBAAmB,WAAW,SAAS,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB;GAChI,IAAI,qBAAqB,sBAAsB;GAC/C,IAAI,mBAAmB,sBAAsB;GAC7C,IAAI,yBAAyB,sBAAsB;GACnD,IAAI,mBAAmB,yBAAyB,CAC9C,mBAAmB,IAAI,IAAI;IACzB,GAAG;IAEH,WAAW,eAAe,oBAAoB,CAAC;IAE/C,GAAG,cAAc,CACf,YAAY,QACd,IAAI,sBAAsB,CACxB,oBAAoB,IACtB,IAAI,CAAC;IAEL,GAAG,cAAc,IAAI,SAAS,QAAQ;KACpC,OAAO,OAAO;IAChB,CAAC;GACH,CAAC,CACH,CAAC,CAAC,IAAI,SAAS,OAAO;IACpB,OAAO,IAAI;GACb,CAAC,IAAI,KAAK;GACV,IAAI,mBAAmB,yBAAyB,CAC9C,mBAAmB,IAAI,IAAI,CACzB,GAAG,cACH,GAAG,cAAc,QAAQ,SAAS,QAAQ;IACxC,OAAO,eAAe,MAAM;GAC9B,CAAC,CACH,CAAC,CACH,CAAC,CAAC,OAAO,SAAS,OAAO;IACvB,OAAO,CAAC,iBAAiB,SAAS,IAAI,OAAO;GAC/C,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO;IACrB,OAAO,IAAI;GACb,CAAC,IAAI,KAAK;GACV,IAAI,YAAY,yBAAyB,CACvC,GAAG,kBACH,GAAG,gBACL,IAAI;GACJ,IAAI,aAAa,CACf,qBACA,GAAG,aACL,CAAC,CAAC,OAAO,OAAO;GAChB,IAAI,YAAY,CACd,GAAG,IAAI,IAAI,cAAc,QAAQ,SAAS,QAAQ;IAChD,OAAO,eAAe,QAAQ,EAC5B,MAAM,MACR,CAAC;GACH,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO;IACrB,OAAO,IAAI;GACb,CAAC,CAAC,CACJ;GACA,IAAI,SAAS,CACX,mBAAmB,IAAI,IAAI;IACzB,GAAG;IAEH,GAAG,sBAAsB,eAAe,qBAAqB,EAC3D,MAAM,MACR,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO;KACrB,OAAO,IAAI;IACb,CAAC,IAAI,CAAC;IASN,GAAG,OAAO,QAAQ,WAAW,cAAc,CAAC,CAAC,OAAO,SAAS,OAAO;KAClE,IAAI,CAAC,KAAK,UAAU;KACpB,IAAI,CAAC,IAAI,SAAS,MAAM,GAAG,OAAO;KAClC,IAAI,MAAM,OAAO;KACjB,OAAO,QAAQ;IACjB,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO;KACrB,IAAI,GAAG,UAAU;KACjB,OAAO,IAAI,OAAO;IACpB,CAAC;GACH,CAAC,CACH;GACA,IAAI,iBAAiB,OAAO,KAAK,SAAS,GAAG;IAC3C,OAAO,uBAAuB,IAAI,CAAC;GACrC,CAAC;GACD,IAAI,qBAAqB,oBAAoB,WAAW,SAAS,QAAQ,sBAAsB,KAAK,IAAI,KAAK,IAAI,kBAAkB,oBAAoB;GACvJ,IAAI,iBAAiB,KAAK;GAC1B,IAAI,kBAAkB;IACpB,iBAAiB,MAAM,QAAQ,IAAI,OAAO,IAAI,eAAe,SAAS;KACpE,IAAI;KACJ,IAAI,GAAG,mBAAmB,WAAW,SAAS,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB,oBAAoB,CAAC,uBAAuB,IAAI,OAAO,GAAG;MACtK,OAAO;KACT;KACA,IAAI,SAAS,qBAAqB,IAAI,OAAO;KAC7C,IAAI,WAAW,KAAK,GAAG,OAAO;KAC9B,IAAI,WAAW,KAAK,WAAW,OAAO;KACtC,IAAI;MACF,IAAI,UAAU,MAAM,QAAQ,SAAS,UAAU,OAAO;MACtD,qBAAqB,IAAI,SAAS,OAAO;MACzC,OAAO;KACT,SAAS,KAAK;MACZ,QAAQ,KAAK,0CAA0C,UAAU;MACjE,qBAAqB,IAAI,SAAS,EAAE;MACpC,OAAO;KACT;IACF,CAAC,CAAC;GACJ;GACA,IAAI,QAAQ,IAAI,OAAO;IACrB,QAAQ,KAAK,yBAAyB;KACpC;KACA;KACA;KACA;IACF,CAAC;GACH;GACA,IAAI,eAAe,MAAM,KAAK,QAAQ,UAAU,cAAc;GAC9D,IAAI,WAAW,KAAK;GACpB,IAAI;IACF,WAAW,MAAM,gBAAgB,WAAW,aAAa,YAAY,WAAW,IAAI;GACtF,SAAS,KAAK;IACZ,QAAQ,MAAM,yCAAyC,GAAG;IAC1D,MAAM,IAAI,MAAM,yBAAyB,WAAW,QAAQ,EAC1D,OAAO,IACT,CAAC;GACH;GACA,WAAW,YAAY,OAAO,SAAS,WAAW;GAClD,IAAI,YAAY,CAAC,CAAC,OAAO,KAAK,WAAW,SAAS,CAAC,CAAC;GACpD,IAAI,WAAW,SAAS,SAAS,aAAa,CAAC,WAAW,KAAK,SAAS,YAAY,KAAK,CAAC,WAAW,KAAK,SAAS,UAAU,KAAK,CAAC,SAAS,sBAAsB;IAChK,MAAM,IAAI,MAAM;;UAEd,WAAW,KAAK,WAAW,WAAW,KAAK;;;;;CAKpD;GACK;GACA,IAAI,cAAc,SAAS,QAAQ,iCAAiC,SAAS,0BAA0B,QAAQ,mCAAmC,KAAK,IAAI,KAAK,IAAI,+BAA+B,KAAK,QAAQ,QAAQ,QAAQ,WAAW,KAAK,IAAI,SAAS,CAC3P,CAAC,CACH;GACA,QAAQ,KAAK;gBACH,YAAY,SAAS,WAAW,OAAO;CACtD;GACK,IAAI,QAAQ,IAAI,OAAO;IACrB,QAAQ,KAAK,cAAc,KAAK,UAAU,YAAY,MAAM,CAAC,CAAC;GAChE;GACA,IAAI,qBAAqB,SAAS;GAClC,IAAI,iBAAiB,sBAAsB,eAAe,sBAAsB;GAChF,IAAI,cAAc,WAAW,SAAS,SAAS;GAC/C,IAAI,wBAAwB,WAAW,SAAS,SAAS,sBAAsB;GAC/E,IAAI,uBAAuB,WAAW,SAAS,SAAS,WAAW,SAAS,YAAY,CAAC,WAAW,cAAc,CAAC,WAAW,KAAK,SAAS,YAAY,KAAK,CAAC,WAAW,KAAK,SAAS,UAAU;GACjM,IAAI,aAAa,WAAW,IAAI,SAAS,QAAQ;IAC/C,IAAI,QAAQ,wBAAwB,aAAa,QAAQ,WAAW,SAAS,KAAK;IAClF,IAAI,YAAY;KACd,QAAQ,KAAK,kBAAkB,OAAO;KACtC,OAAO,WAAW,UAAU;MAC1B,aAAa,WAAW;MACxB;MACA,MAAM;MACN,YAAY;MACZ;MACA;MACA;MACA;MACA;MACA;MACA;MACA,UAAU;MACV;MACA;MACA;MACA;MACA;MACA;MACA;MACA;KACF,CAAC,CAAC,CAAC,KAAK,SAAS,QAAQ;MACvB,OAAO;OACL,OAAO;OACP,MAAM;MACR;KACF,CAAC;IACH;IACA,OAAO,MAAM,iBAAiB;KAC5B,QAAQ,KAAK,kBAAkB,OAAO;KACtC,IAAI,SAAS,MAAM,yBAAyB,iBAAiB;MAC3D,OAAO,MAAM,UAAU,WAAW,aAAa,YAAY,OAAO,aAAa,QAAQ,YAAY,qBAAqB,WAAW,WAAW,kBAAkB,cAAc,WAAW,QAAQ,WAAW,eAAe,gBAAgB,kBAAkB,kBAAkB,aAAa,qBAAqB;KACnT,CAAC;KACD,OAAO;MACL,OAAO;MACP,MAAM;KACR;IACF,CAAC;GACH,CAAC;GACD,IAAI,UAAU,MAAM,QAAQ,IAAI,UAAU;GAC1C,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;GAC7F,IAAI;IACF,KAAK,IAAI,cAAc,QAAQ,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;KACpK,IAAI,EAAE,OAAO,SAAS,QAAQ;KAC9B,YAAY,KAAK,KAAK;KACtB,IAAI,sBAAsB;MACxB,YAAY,KAAK;OACf;OACA,aAAa;MACf,CAAC;KACH;IACF;GACF,SAAS,KAAK;IACZ,sBAAsB;IACtB,mBAAmB;GACrB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;MAC9D,YAAY,OAAO;KACrB;IACF,UAAU;KACR,IAAI,qBAAqB;MACvB,MAAM;KACR;IACF;GACF;EACF;EACA,KAAK,IAAI,cAAc,SAAS,WAAW,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM,MAAM,OAAO;CACjM,SAAS,KAAK;EACZ,sBAAsB;EACtB,mBAAmB;CACrB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;IAC9D,YAAY,OAAO;GACrB;EACF,UAAU;GACR,IAAI,qBAAqB;IACvB,MAAM;GACR;EACF;CACF;CACA,IAAI,YAAY;EACd,MAAM,oBAAoB;CAC5B;CACA,IAAI,aAAa,YAAY,IAAI,IAAI;CACrC,QAAQ,KAAK;gCACiB,aAAa,IAAG,CAAE,QAAQ,CAAC,EAAE,KAAK,YAAY,OAAO;CACpF;CACC,kBAAkB;CAClB,MAAM,aAAa,WAAW,SAAS;CACvC,MAAM,QAAQ,OAAO,SAAS;CAC9B,IAAI,WAAW,CAAC;CAChB,IAAI,mBAAmB,CAAC;CACxB,IAAI,cAAc,CAAC;CACnB,IAAI,WAAW,CAAC;CAChB,IAAI,cAAc,CAAC;CACnB,IAAI,UAAU,CAAC;CACf,IAAI;CACJ,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;CAC7F,IAAI;EACF,IAAI,SAAS,WAAW;GACtB,IAAI,SAAS,QAAQ;GACrB,IAAI,CAAC,OAAO,UAAU,SAAS,GAAG,GAAG;IACnC,SAAS,OAAO,aAAa,OAAO;GACtC;GACA,IAAI,EAEF,YAAY,aACZ,aACA,GAAG,SACD;GACJ,IAAI,aAAa;IACf,IAAI,iBAAiB,sBAAsB,oBAAoB,CAAC;IAChE,OAAO,IAAI,QAAQ,SAAS,SAAS,OAAO;KAC1C,IAAI,UAAU,YAAY;KAC1B,IAAI,SAAS,eAAe,WAAW;IACzC,CAAC;GACH;GACA,iBAAiB,OAAO,aAAa;GACrC,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;GAC7F,IAAI;IACF,KAAK,IAAI,cAAc,cAAc,CACnC,OAAO,MACP,OAAO,SACT,CAAC,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;KACxI,IAAI,IAAI,QAAQ;KAChB,YAAY,KAAK,OAAO;IAC1B;GACF,SAAS,KAAK;IACZ,sBAAsB;IACtB,mBAAmB;GACrB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;MAC9D,YAAY,OAAO;KACrB;IACF,UAAU;KACR,IAAI,qBAAqB;MACvB,MAAM;KACR;IACF;GACF;GACA,SAAS,OAAO,eAAe;GAC/B,YAAY,OAAO,kBAAkB;GACrC,QAAQ,OAAO,cAAc;EAC/B;EACA,KAAK,IAAI,cAAc,YAAY,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM,OAAO;CACnL,SAAS,KAAK;EACZ,sBAAsB;EACtB,mBAAmB;CACrB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;IAC9D,YAAY,OAAO;GACrB;EACF,UAAU;GACR,IAAI,qBAAqB;IACvB,MAAM;GACR;EACF;CACF;CACA,SAAS,yBAAyB,QAAQ;EACxC,IAAI,EAAE,SAAS,GAAG,UAAU;EAC5B,IAAI,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,QAAQ;GACpE;GACA,MAAM,UAAU,QAAQ,IAAI,SAAS,QAAQ;IAC3C,OAAO;KACL,YAAY,OAAO;KACnB,kBAAkB,OAAO;IAC3B;GACF,CAAC;EACH;EACA,IAAI,YAAY,YAAY,KAAK,SAAS,GAAG;GAC3C,OAAO,EAAE,cAAc,OAAO;EAChC,CAAC;EACD,IAAI,MAAM,aAAa;GACrB,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;GAC7F,IAAI;IACF,KAAK,IAAI,cAAc,MAAM,YAAY,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;KACxL,IAAI,CAAC,OAAO,MAAM,QAAQ;KAC1B,IAAI;KACJ,IAAI,eAAe,cAAc,QAAQ,cAAc,KAAK,IAAI,KAAK,KAAK,yBAAyB,UAAU,iBAAiB,QAAQ,2BAA2B,KAAK,IAAI,KAAK,IAAI,uBAAuB;KAC1M,IAAI,cAAc;MAChB,GAAG,aAAa;MAChB;KACF;KACA,IAAI,mBAAmB,iBAAiB,GAAG;KAC3C,IAAI,kBAAkB;MACpB,GAAG,aAAa;KAClB;IACF;GACF,SAAS,KAAK;IACZ,sBAAsB;IACtB,mBAAmB;GACrB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;MAC9D,YAAY,OAAO;KACrB;IACF,UAAU;KACR,IAAI,qBAAqB;MACvB,MAAM;KACR;IACF;GACF;EACF;EACA,IAAI,WAAW;GACb,MAAM,aAAa,UAAU;EAC/B;EACA,OAAO;CACT;CACA,IAAI,sBAAsB;EACxB;EACA;EACA;EACA;EACA;EACA,UAAU;GACR,YAAY,SAAS,WAAW,IAAI,wBAAwB;GAC5D,WAAW,SAAS,UAAU,IAAI,wBAAwB;GAC1D,WAAW,SAAS,UAAU,IAAI,wBAAwB;EAC5D;EACA;EACA,WAAW,KAAK,MAAM,KAAK,UAAU,EACnC,GAAG,UACL,CAAC,CAAC;EACF;EACA;EACA;EACA,aAAa,MAAM,WAAW;CAChC;CACA,MAAM,UAAU,WAAW,GAAG,OAAO,gBAAgB,GAAG,mBAAmB;CAC3E,MAAM,wBAAwB,MAAM;CACpC,MAAM,QAAQ,UAAU,KAAK,WAAW,cAAc,GAAG,KAAK,UAAU,EACtE,SAAS,UAAU,UACrB,CAAC,CAAC;CACF,QAAQ,KAAK;;CAEd;CACC,IAAI,iBAAiB,mBAAmB,WAAW,SAAS,QAAQ,qBAAqB,KAAK,IAAI,KAAK,IAAI,iBAAiB;CAC5H,IAAI,eAAe;EACjB,IAAI,iBAAiB,OAAO,kBAAkB,YAAY,CAAC,IAAI;EAC/D,IAAI,aAAa,gBAAgB,aAAa,cAAc;EAC5D,IAAI,cAAc,KAAK,WAAW,aAAa;EAC/C,MAAM,QAAQ,UAAU,aAAa,UAAU;EAC/C,QAAQ,KAAK;oCACmB,YAAY,OAAO;CACtD;CACC;CACA,IAAI,gBAAgB,CAAC;CACrB,IAAI,WAAW,iBAAiB,QAAQ,iBAAiB,KAAK,IAAI,KAAK,IAAI,aAAa;CACxF,IAAI,UAAU;EACZ,cAAc,KAAK,wBAAwB,UAAU;CACvD;CACA,QAAQ,UAAR;EACE,KAAK,UAAU;GACb,IAAI,iBAAiB,KAAK,QAAQ,MAAM,aAAa;GACrD,IAAI,QAAQ,WAAW,cAAc,GAAG;IACtC,IAAI;KACF,IAAI,eAAe,KAAK,MAAM,QAAQ,aAAa,gBAAgB,OAAO,CAAC;KAC3E,IAAI,CAAC,aAAa,WAAW;MAC3B,QAAQ,KAAK;sEAC6C;MAC1D,QAAQ,KAAK,4DAA4D;MACzE,QAAQ,KAAK;CACxB;KACS;IACF,SAAS,QAAQ,CACjB;GACF;GACA,MAAM,2BAA2B;IAC/B;IACA;IACA;IACA,gBAAgB,QAAQ;IACxB;GACF,CAAC;GACD;EACF;EACA,KAAK,cAAc;GACjB,IAAI,8BAA8B;GAClC,IAAI,eAAe,KAAK,QAAQ,MAAM,MAAM;GAC5C,IAAI,4BAA4B,SAAS,2BAA2B,WAAW;IAC7E,IAAI,cAAc,cAAc,SAAS,cAAc,KAAK,QAAQ,MAAM,YAAY,SAAS,CAAC,CAAC;IACjG,OAAO,YAAY,WAAW,GAAG,IAAI,cAAc,KAAK;GAC1D;GACA,IAAI,cAAc,CAAC;GACnB,IAAI,qBAAqB,CAAC;GAC1B,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;GAC7F,IAAI;IACF,KAAK,IAAI,cAAc,oBAAoB,SAAS,UAAU,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;KACnM,IAAI,SAAS,QAAQ;KACrB,IAAI,OAAO,MAAM;MACf,IAAI,aAAa,0BAA0B,OAAO,IAAI;MACtD,YAAY,KAAK,MAAM,OAAO,KAAK,mBAAmB,WAAW,GAAG;KACtE;IACF;GACF,SAAS,KAAK;IACZ,sBAAsB;IACtB,mBAAmB;GACrB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;MAC9D,YAAY,OAAO;KACrB;IACF,UAAU;KACR,IAAI,qBAAqB;MACvB,MAAM;KACR;IACF;GACF;GACA,IAAI,8BAA8B,MAAM,sBAAsB,OAAO,mBAAmB,KAAK;GAC7F,IAAI;IACF,KAAK,IAAI,cAAc,OAAO,QAAQ,gBAAgB,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,SAAS,EAAE,+BAA+B,UAAU,YAAY,KAAK,EAAC,CAAE,OAAO,8BAA8B,MAAM;KAC7L,IAAI,CAAC,YAAY,aAAa,QAAQ;KACtC,IAAI,cAAc,0BAA0B,UAAU;KACtD,mBAAmB,KAAK,MAAM,UAAU,mBAAmB,YAAY,GAAG;IAC5E;GACF,SAAS,KAAK;IACZ,sBAAsB;IACtB,mBAAmB;GACrB,UAAU;IACR,IAAI;KACF,IAAI,CAAC,+BAA+B,YAAY,UAAU,MAAM;MAC9D,YAAY,OAAO;KACrB;IACF,UAAU;KACR,IAAI,qBAAqB;MACvB,MAAM;KACR;IACF;GACF;GACA,IAAI,gBAAgB,KAAK,QAAQ,MAAM,QAAQ,gBAAgB;GAC/D,IAAI,aAAa;;;;;;;;;;;;;;;;EAgBrB,YAAY,KAAK,KAAK,EAAE;;;EAGxB,mBAAmB,KAAK,KAAK,EAAE;;;;oBAIb,KAAK,UAAU,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDlD,MAAM,QAAQ,UAAU,eAAe,UAAU;GACjD,IAAI,cAAc,MAAM,yBAAyB,QAAQ,IAAI;GAC7D,IAAI,qBAAqB,MAAM,uBAAuB,QAAQ,IAAI;GAClE,IAAI,sBAAsB,+BAA+B,aAAa,uBAAuB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,MAAM;GACvK,oBAAoB,OAAO,cAAc,SAAS,KAAK,QAAQ,MAAM,MAAM,GAAG,aAAa,CAAC;GAC5F,IAAI,oBAAoB,KAAK,QAAQ,MAAM,QAAQ,uBAAuB;GAC1E,MAAM,QAAQ,UAAU,mBAAmB,GAAG,KAAK,UAAU,qBAAqB,MAAM,CAAC,EAAE;CAChG;GACK,IAAI,cAAc,qBAAqB,QAAQ,qBAAqB,KAAK,IAAI,KAAK,KAAK,4BAA4B,iBAAiB,YAAY,QAAQ,8BAA8B,KAAK,IAAI,KAAK,KAAK,+BAA+B,0BAA0B,SAAS,QAAQ,iCAAiC,KAAK,IAAI,KAAK,IAAI,6BAA6B;GACnW,IAAI,kBAAkB,MAAM,QAAQ,WAAW,IAAI,cAAc,CAAC;GAClE,QAAQ,KAAK,oCAAoC;GACjD,IAAI,EAAE,eAAe,MAAM,OAAO;GAClC,IAAI,UAAU,MAAM,cAAc;IAChC,MAAM,QAAQ;IACd,MAAM;IACN,UAAU;IACV,YAAY;IACZ,QAAQ;KACN,wBAAwB,KAAK,UAAU,YAAY;KACnD,gCAAgC,KAAK,UAAU,KAAK;KACpD,6BAA6B,KAAK,UAAU,UAAU,SAAS;IACjE;IACA,SAAS,CASP,uBAAuB,WAAW,iBAAiB,GACnD,WAAW;KACT,YAAY;KACZ,iBAAiB,EACf,MAAM,SACR;IACF,CAAC,CACH;IACA,SAAS;KACP,OAAO;MAEL;OACE,MAAM;OACN,aAAa,YAAY,qBAAqB,QAAQ,IAAI;MAC5D;MACA;OAGE,MAAM;OACN,aAAa;MACf;MACA;OACE,MAAM;OACN,aAAa;MACf;MACA;OACE,MAAM;OACN,aAAa;MACf;MACA,GAAG,OAAO,QAAQ,uBAAuB,QAAQ,MAAM,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,OAAO;OACjF,IAAI,CAAC,MAAM,eAAe;OAC1B,OAAO;QACL;QACA;OACF;MACF,CAAC;KACH;KAIA,QAAQ,CACN,kBACF;IACF;IACA,OAAO;KACL;KACA,aAAa;KACb,iBAAiB;MAGf,UAAU;MAIV,oBAAoB;MAKpB,QAAQ,EACN,sBAAsB,KACxB;KACF;IACF;GACF,CAAC;GACD,IAAI,YAAY,QAAQ,aAAa;GACrC,IAAI,CAAC,WAAW;IACd,MAAM,IAAI,MAAM,sDAAoD;GACtE;GACA,MAAM,QAAQ,MAAM,SAAS;GAC7B,MAAM,QAAQ,OAAO,aAAa;GAClC,MAAM,QAAQ,OAAO,iBAAiB;GACtC,MAAM,uCAAuC,KAAK,QAAQ,MAAM,QAAQ,UAAU,eAAe,CAAC;GAClG,IAAI,oBAAoB;IACtB,QAAQ,KAAK,yBAAyB,SAAS,QAAQ,MAAM,mBAAmB,IAAI,EAAE,QAAQ,OAAO,sBAAsB;GAC7H;GACA,cAAc,KAAK,gCAAgC,OAAO,iBAAiB;GAC3E,cAAc,KAAK,4BAA4B;GAC/C;EACF;CACF;CACA,IAAI,sBAAsB,qBAAqB,WAAW,WAAW,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB;CACzI,IAAI,oBAAoB,uBAAuB,QAAQ,OAAO,uBAAuB,QAAQ,uBAAuB,KAAK,IAAI,SAAS,OAAO,uBAAuB,WAAW,sBAAsB,4BAA4B,mBAAmB,WAAW,QAAQ,8BAA8B,KAAK,IAAI,4BAA4B;CAC1U,IAAI,uBAAuB,OAAO,uBAAuB,YAAY,uBAAuB,OAAO,mBAAmB,eAAe,KAAK;CAC1I,IAAI,mBAAmB;EACrB,IAAI,EAAE,oBAAoB,MAAM,OAAO;EACvC,IAAI,SAAS,MAAM,gBAAgB,WAAW,mBAAmB,oBAAoB;EACrF,IAAI,CAAC,QAAQ;GACX,QAAQ,KAAK,CAAC;EAChB;CACF;CACA,IAAI,cAAc,QAAQ;EACxB,QAAQ,KAAK;;CAEhB;EACG,cAAc,QAAQ,SAAS,KAAK;GAClC,QAAQ,KAAK,UAAU,KAAK;EAC9B,CAAC;CACH;CACA,QAAQ,KAAK;;CAEd;AACD;AACA,IAAI,uBAAuB;AAC3B,SAAS,cAAc,eAAe;CACpC,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,QAAQ,SAAS,GAAG;EAC/E,IAAI,QAAQ,CACV,CACF;EACA,IAAI,EAAE,MAAM,oBAAoB,GAAG;GACjC,IAAI,+BAA+B,EAAE,QAAQ,sBAAsB,EAAE;GACrE,MAAM,KAAK,4BAA4B;GACvC,MAAM,KAAK,+BAA+B,GAAG;EAC/C;EACA,OAAO;CACT,CAAC,CAAC,CAAC;AACL;AACA,eAAe,aAAa,KAAK,MAAM;CACrC,IAAI;EACF,MAAM,QAAQ,KAAK,KAAK,MAAM;GAC5B,WAAW;GACX,cAAc;EAChB,CAAC;CACH,SAAS,KAAK;EACZ,QAAQ,MAAM,uBAAuB,GAAG;CAC1C;AACF"}
|
|
1
|
+
{"version":3,"file":"build.native.js","names":["vxrnBuild","viteBuild"],"sources":["esm/cli/build.native.js"],"sourcesContent":["import { createRequire } from \"module\";\nimport { cpus } from \"os\";\nimport Path, { join, posix, relative, resolve } from \"path\";\nimport { resolvePath } from \"@vxrn/resolve\";\nimport FSExtra from \"fs-extra\";\nimport MicroMatch from \"micromatch\";\nimport { createBuilder, mergeConfig, normalizePath, build as viteBuild } from \"vite\";\nimport { getOptimizeDeps, rollupRemoveUnusedImportsPlugin, build as vxrnBuild } from \"vxrn\";\nimport * as constants from \"../constants\";\nimport { setServerGlobals } from \"../server/setServerGlobals\";\nimport { environmentGuardPlugin } from \"../vite/plugins/environmentGuardPlugin\";\nimport { writeBuildOutputPointer } from \"../utils/buildOutputPointer\";\nimport { getPathnameFromFilePath } from \"../utils/getPathnameFromFilePath\";\nimport { getRouterRootFromOneOptions } from \"../utils/getRouterRootFromOneOptions\";\nimport { isRolldown } from \"../utils/isRolldown\";\nimport { toAbsolute } from \"../utils/toAbsolute\";\nimport { buildVercelOutputDirectory } from \"../vercel/build/buildVercelOutputDirectory\";\nimport { createCloudflareWranglerConfig, getCloudflareProjectName, isPlainObject, loadUserWranglerConfig } from \"../vite/cloudflareWranglerConfig\";\nimport { getManifest } from \"../vite/getManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nimport { runWithAsyncLocalContext } from \"../vite/one-server-only\";\nimport { buildPage, printBuildTimings } from \"./buildPage\";\nimport { checkNodeVersion } from \"./checkNodeVersion\";\nimport { getWorkerPool, terminateWorkerPool } from \"./workerPool\";\nimport { generateSitemap } from \"./generateSitemap\";\nimport { labelProcess } from \"./label-process\";\nimport { getRouteExports } from \"./serverRouteModules\";\nimport { pLimit } from \"../utils/pLimit\";\nimport { getCriticalCSSOutputPaths } from \"../vite/plugins/criticalCSSPlugin\";\nimport { absorbedPackageAliases } from \"../utils/absorbedPackages\";\nimport { formatErrorSafely, installPrepareStackTraceGuard } from \"./install-error-handlers\";\nvar { ensureDir, writeJSON } = FSExtra;\nfunction normalizeDeploy(deploy) {\n if (!deploy) return void 0;\n if (typeof deploy === \"string\") return {\n target: deploy\n };\n return deploy;\n}\nvar CLOUDFLARE_DEPLOY_WRANGLER_RULES = [\n {\n type: \"ESModule\",\n globs: [\n \"assets/**/*.js\",\n \"assets/**/*.mjs\"\n ]\n }\n];\nfunction omitEmptyJsonValues(value) {\n if (Array.isArray(value)) {\n var items = value.map(function(item) {\n return omitEmptyJsonValues(item);\n }).filter(function(item) {\n return item !== void 0;\n });\n return items.length > 0 ? items : void 0;\n }\n if (isPlainObject(value)) {\n var entries = Object.entries(value).map(function(param) {\n var [key, item] = param;\n return [\n key,\n omitEmptyJsonValues(item)\n ];\n }).filter(function(entry) {\n return entry[1] !== void 0;\n });\n return entries.length > 0 ? Object.fromEntries(entries) : void 0;\n }\n return value;\n}\nasync function finalizeCloudflareWranglerDeployConfig(configPath) {\n var parsed = JSON.parse(await FSExtra.readFile(configPath, \"utf-8\"));\n if (!isPlainObject(parsed)) {\n throw new Error(`Expected ${relative(process.cwd(), configPath)} to contain a JSON object`);\n }\n parsed.rules = CLOUDFLARE_DEPLOY_WRANGLER_RULES;\n var config = omitEmptyJsonValues(parsed);\n if (!isPlainObject(config)) {\n throw new Error(`Expected ${relative(process.cwd(), configPath)} to contain deploy config`);\n }\n await FSExtra.writeFile(configPath, `${JSON.stringify(config, null, 2)}\n`);\n}\nprocess.env.ONE_CACHE_KEY = constants.CACHE_KEY;\nfunction shouldUseWorkers(oneOptions) {\n var _oneOptions_build;\n if (process.env.ONE_BUILD_WORKERS === \"0\") return false;\n if (process.env.ONE_BUILD_WORKERS === \"1\") return true;\n return (oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build = oneOptions.build) === null || _oneOptions_build === void 0 ? void 0 : _oneOptions_build.workers) !== false;\n}\ninstallPrepareStackTraceGuard();\nvar buildErrorHandlersInstalled = false;\nfunction installBuildErrorHandlers() {\n if (buildErrorHandlersInstalled) return;\n buildErrorHandlersInstalled = true;\n process.on(\"uncaughtException\", function(err) {\n try {\n process.stderr.write(`[one build] uncaught exception\n${formatErrorSafely(err)}\n`);\n } catch (unused) {\n }\n process.exit(1);\n });\n process.on(\"unhandledRejection\", function(reason) {\n try {\n process.stderr.write(`[one build] unhandled rejection\n${formatErrorSafely(reason)}\n`);\n } catch (unused) {\n }\n process.exit(1);\n });\n}\nvar HOOK_KEYS = [\n \"resolveId\",\n \"load\",\n \"transform\",\n \"renderChunk\",\n \"generateBundle\",\n \"writeBundle\",\n \"buildStart\",\n \"buildEnd\",\n \"moduleParsed\"\n];\nfunction clonePluginHooks(config) {\n if (!config.plugins) return config;\n return {\n ...config,\n plugins: config.plugins.map(function(p) {\n if (!p || typeof p !== \"object\") return p;\n var cloned = {\n ...p\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = HOOK_KEYS[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n if (cloned[key] && typeof cloned[key] === \"object\" && \"handler\" in cloned[key]) {\n cloned[key] = {\n ...cloned[key]\n };\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return cloned;\n })\n };\n}\nasync function build(args) {\n var _process_env_ONE_BUILD_CONCURRENCY, _ref, _ref1, _args_skipEnv, _vxrnOutput_serverBuildConfig, _securityScanOption_level;\n var _oneOptions_build, _oneOptions_web, _oneOptions_web1, _viteLoadedConfig_config_build, _viteLoadedConfig_config, _oneOptions_router, _oneOptions_build1, _oneOptions_build_server, _oneOptions_build2, _oneOptions_build3, _oneOptions_build4, _oneOptions_web2, _oneOptions_build5;\n installBuildErrorHandlers();\n process.env.IS_VXRN_CLI = \"true\";\n if (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(`\n \\u26A0\\uFE0F Warning: NODE_ENV is set to \"${process.env.NODE_ENV}\" (builds default to \"production\")\n`);\n }\n labelProcess(\"build\");\n checkNodeVersion();\n setServerGlobals();\n var { oneOptions, config: viteLoadedConfig } = await loadUserOneOptions(\"build\");\n var routerRoot = getRouterRootFromOneOptions(oneOptions);\n var configuredBuildConcurrency = (_process_env_ONE_BUILD_CONCURRENCY = process.env.ONE_BUILD_CONCURRENCY) !== null && _process_env_ONE_BUILD_CONCURRENCY !== void 0 ? _process_env_ONE_BUILD_CONCURRENCY : (_oneOptions_build = oneOptions.build) === null || _oneOptions_build === void 0 ? void 0 : _oneOptions_build.concurrency;\n var buildConcurrency = configuredBuildConcurrency === void 0 ? Math.max(1, Math.min(cpus().length, 2)) : Number(configuredBuildConcurrency);\n if (!Number.isInteger(buildConcurrency) || buildConcurrency < 1) {\n throw new Error(`build.concurrency must be a positive integer, received ${JSON.stringify(configuredBuildConcurrency)}`);\n }\n if ((_oneOptions_web = oneOptions.web) === null || _oneOptions_web === void 0 ? void 0 : _oneOptions_web.defaultRenderMode) {\n process.env.ONE_DEFAULT_RENDER_MODE = oneOptions.web.defaultRenderMode;\n }\n var deployConfig = normalizeDeploy((_oneOptions_web1 = oneOptions.web) === null || _oneOptions_web1 === void 0 ? void 0 : _oneOptions_web1.deploy);\n if (!process.env.ONE_SERVER_URL && deployConfig) {\n var _deployConfig_url;\n var url = (_deployConfig_url = deployConfig.url) !== null && _deployConfig_url !== void 0 ? _deployConfig_url : deployConfig.target === \"cloudflare\" ? `https://${await getCloudflareProjectName(process.cwd())}.workers.dev` : void 0;\n if (url) {\n process.env.ONE_SERVER_URL = url;\n console.info(`\n \\u2601\\uFE0F ONE_SERVER_URL: ${url}\n`);\n }\n }\n var outDir = (_ref = viteLoadedConfig === null || viteLoadedConfig === void 0 ? void 0 : (_viteLoadedConfig_config = viteLoadedConfig.config) === null || _viteLoadedConfig_config === void 0 ? void 0 : (_viteLoadedConfig_config_build = _viteLoadedConfig_config.build) === null || _viteLoadedConfig_config_build === void 0 ? void 0 : _viteLoadedConfig_config_build.outDir) !== null && _ref !== void 0 ? _ref : \"dist\";\n var manifest = getManifest({\n routerRoot,\n ignoredRouteFiles: (_oneOptions_router = oneOptions.router) === null || _oneOptions_router === void 0 ? void 0 : _oneOptions_router.ignoredRouteFiles\n });\n var serverOutputFormat = ((_oneOptions_build1 = oneOptions.build) === null || _oneOptions_build1 === void 0 ? void 0 : _oneOptions_build1.server) === false ? \"esm\" : (_ref1 = (_oneOptions_build2 = oneOptions.build) === null || _oneOptions_build2 === void 0 ? void 0 : (_oneOptions_build_server = _oneOptions_build2.server) === null || _oneOptions_build_server === void 0 ? void 0 : _oneOptions_build_server.outputFormat) !== null && _ref1 !== void 0 ? _ref1 : \"esm\";\n var buildStartTime = performance.now();\n var vxrnOutput = await vxrnBuild({\n skipEnv: (_args_skipEnv = args.skipEnv) !== null && _args_skipEnv !== void 0 ? _args_skipEnv : oneOptions.skipEnv,\n server: oneOptions.server,\n build: {\n analyze: true,\n server: ((_oneOptions_build3 = oneOptions.build) === null || _oneOptions_build3 === void 0 ? void 0 : _oneOptions_build3.server) === false ? false : {\n outputFormat: serverOutputFormat\n }\n }\n }, args);\n var bundleTime = performance.now() - buildStartTime;\n console.info(`\n \\u23F1\\uFE0F vite bundle: ${(bundleTime / 1e3).toFixed(2)}s\n`);\n if (!vxrnOutput || args.platform !== \"web\") {\n return;\n }\n var { options } = vxrnOutput;\n var { optimizeDeps } = getOptimizeDeps(\"build\");\n var { rolldownOptions: _rolldownOptions, ...optimizeDepsNoRolldown } = optimizeDeps;\n var serverOpts = (_oneOptions_build4 = oneOptions.build) === null || _oneOptions_build4 === void 0 ? void 0 : _oneOptions_build4.server;\n var isUnified = typeof serverOpts === \"object\" && serverOpts !== null && serverOpts.unified === true;\n var baseForApi = isUnified ? clonePluginHooks((_vxrnOutput_serverBuildConfig = vxrnOutput.serverBuildConfig) !== null && _vxrnOutput_serverBuildConfig !== void 0 ? _vxrnOutput_serverBuildConfig : vxrnOutput.webBuildConfig) : clonePluginHooks(vxrnOutput.webBuildConfig);\n if (isUnified) {\n var clone = {\n ...baseForApi,\n build: baseForApi.build ? {\n ...baseForApi.build\n } : void 0,\n plugins: baseForApi.plugins ? baseForApi.plugins.filter(function(p) {\n return p && typeof p === \"object\" && p.name !== \"omit-api-routes\";\n }) : void 0\n };\n if (clone.build && clone.build.rolldownOptions) {\n var ro = {\n ...clone.build.rolldownOptions\n };\n delete ro.input;\n clone.build.rolldownOptions = ro;\n }\n if (clone.build) {\n delete clone.build.outDir;\n }\n baseForApi = clone;\n }\n var apiBuildConfig = mergeConfig(baseForApi, {\n configFile: false,\n appType: \"custom\",\n optimizeDeps: optimizeDepsNoRolldown,\n environments: {\n client: {\n optimizeDeps: {\n rolldownOptions: _rolldownOptions\n }\n }\n }\n });\n async function buildCustomRoutes(subFolder, routes) {\n var _ref2;\n var _oneOptions_build_api, _oneOptions_build6, _oneOptions_build_api1, _oneOptions_build12, _oneOptions_build_api2, _oneOptions_build22;\n var input = routes.reduce(function(entries, param) {\n var { page, file: file2 } = param;\n entries[page.slice(1) + \".js\"] = join(routerRoot, file2);\n return entries;\n }, {});\n var outputFormat = (_ref2 = oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build6 = oneOptions.build) === null || _oneOptions_build6 === void 0 ? void 0 : (_oneOptions_build_api = _oneOptions_build6.api) === null || _oneOptions_build_api === void 0 ? void 0 : _oneOptions_build_api.outputFormat) !== null && _ref2 !== void 0 ? _ref2 : serverOutputFormat;\n var treeshake = oneOptions === null || oneOptions === void 0 ? void 0 : (_oneOptions_build12 = oneOptions.build) === null || _oneOptions_build12 === void 0 ? void 0 : (_oneOptions_build_api1 = _oneOptions_build12.api) === null || _oneOptions_build_api1 === void 0 ? void 0 : _oneOptions_build_api1.treeshake;\n var mergedConfig = mergeConfig(apiBuildConfig, {\n appType: \"custom\",\n configFile: false,\n define: vxrnOutput.processEnvDefines,\n ssr: isUnified ? {\n // in unified mode let the base (serverBuildConfig) set ssr.noExternal\n // — default is now ['react', 'react-dom'] instead of `true`, so\n // rolldown can externalize the rest.\n optimizeDeps: optimizeDepsNoRolldown\n } : {\n noExternal: true,\n external: [\n \"react\",\n \"react-dom\"\n ],\n optimizeDeps: optimizeDepsNoRolldown\n },\n environments: {\n ssr: {\n optimizeDeps: {\n rolldownOptions: _rolldownOptions\n }\n }\n },\n build: {\n ssr: true,\n emptyOutDir: false,\n outDir: `${outDir}/${subFolder}`,\n copyPublicDir: false,\n minify: false,\n rolldownOptions: {\n treeshake: treeshake !== null && treeshake !== void 0 ? treeshake : {\n moduleSideEffects: false\n },\n plugins: [\n // otherwise rollup is leaving commonjs-only top level imports...\n outputFormat === \"esm\" ? rollupRemoveUnusedImportsPlugin : null\n ].filter(Boolean),\n // too many issues\n // treeshake: {\n // moduleSideEffects: false,\n // },\n // prevents it from shaking out the exports\n preserveEntrySignatures: \"strict\",\n input,\n // in unified mode, inherit externals from serverBuildConfig (user\n // ssr.external / rolldownOptions.external). the legacy path resets\n // them to [] so per-route files bundle everything.\n ...isUnified ? {} : {\n external: []\n },\n output: {\n entryFileNames: \"[name]\",\n exports: \"auto\",\n ...outputFormat === \"esm\" ? {\n format: \"esm\",\n esModule: true\n } : {\n format: \"cjs\",\n // Preserve folder structure and use .cjs extension\n entryFileNames: function entryFileNames(chunkInfo) {\n var name = chunkInfo.name.replace(/\\.js$/, \".cjs\");\n return name;\n },\n chunkFileNames: function chunkFileNames(chunkInfo) {\n var chunkName = normalizePath(chunkInfo.name);\n var dir = posix.dirname(chunkName);\n var name = posix.basename(chunkName, posix.extname(chunkName));\n return posix.join(dir, `${name}-[hash].cjs`);\n },\n assetFileNames: function assetFileNames(assetInfo) {\n var _assetInfo_name;\n var assetName = normalizePath((_assetInfo_name = assetInfo.name) !== null && _assetInfo_name !== void 0 ? _assetInfo_name : \"\");\n var dir = posix.dirname(assetName);\n var baseName = posix.basename(assetName, posix.extname(assetName));\n var ext = posix.extname(assetName);\n return posix.join(dir, `${baseName}-[hash]${ext}`);\n }\n }\n }\n }\n }\n });\n var userApiBuildConf = (_oneOptions_build22 = oneOptions.build) === null || _oneOptions_build22 === void 0 ? void 0 : (_oneOptions_build_api2 = _oneOptions_build22.api) === null || _oneOptions_build_api2 === void 0 ? void 0 : _oneOptions_build_api2.config;\n var finalApiBuildConf = userApiBuildConf ? mergeConfig(mergedConfig, userApiBuildConf) : mergedConfig;\n var output3 = await viteBuild(\n // allow user merging api build config\n finalApiBuildConf\n );\n return output3;\n }\n var builtMiddlewares = {};\n var apiPromise = manifest.apiRoutes.length ? (console.info(`\n \\u{1F528} build api routes\n`), buildCustomRoutes(\"api\", manifest.apiRoutes)) : Promise.resolve(null);\n var middlewarePromise = manifest.middlewareRoutes.length ? (console.info(`\n \\u{1F528} build middlewares\n`), buildCustomRoutes(\"middlewares\", manifest.middlewareRoutes)) : Promise.resolve(null);\n var [apiOutput, middlewareBuildInfo] = await Promise.all([\n apiPromise,\n middlewarePromise\n ]);\n if (middlewareBuildInfo) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n var _loop = function() {\n var middleware = _step.value;\n var absoluteRoot = resolve(process.cwd(), options.root);\n var fullPath = normalizePath(join(absoluteRoot, routerRoot, middleware.file));\n var outChunks = middlewareBuildInfo.output.filter(function(x) {\n return x.type === \"chunk\";\n });\n var chunk2 = outChunks.find(function(x) {\n return x.facadeModuleId === fullPath;\n });\n if (!chunk2) throw new Error(`internal err finding middleware`);\n builtMiddlewares[middleware.file] = posix.join(outDir, \"middlewares\", chunk2.fileName);\n };\n for (var _iterator = manifest.middlewareRoutes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n globalThis[\"require\"] = createRequire(import.meta.dirname + \"/\");\n var assets = [];\n var builtRoutes = [];\n var sitemapData = [];\n var collectImportsCache = /* @__PURE__ */ new Map();\n var collectImportsInFlight = /* @__PURE__ */ new Set();\n var cssFileContentsCache = /* @__PURE__ */ new Map();\n var criticalCSSOutputPaths = getCriticalCSSOutputPaths(vxrnOutput.clientManifest);\n var limit = pLimit(buildConcurrency);\n var useWorkers = shouldUseWorkers(oneOptions);\n var workerPool = useWorkers ? getWorkerPool(buildConcurrency) : null;\n if (workerPool) {\n var serializableOptions = JSON.parse(JSON.stringify(oneOptions, function(_key, value) {\n return typeof value === \"function\" ? void 0 : value;\n }));\n await workerPool.initialize(serializableOptions);\n }\n var staticStartTime = performance.now();\n var modeLabel = useWorkers ? `workers: ${workerPool === null || workerPool === void 0 ? void 0 : workerPool.size}` : `concurrency: ${buildConcurrency}`;\n console.info(`\n \\u{1F528} build static routes (${modeLabel})\n`);\n var staticDir = join(`${outDir}/static`);\n var clientDir = join(`${outDir}/client`);\n await ensureDir(staticDir);\n if (!vxrnOutput.serverOutput) {\n throw new Error(`No server output`);\n }\n var clientChunksBySource = /* @__PURE__ */ new Map();\n if (vxrnOutput.clientOutput) {\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = vxrnOutput.clientOutput[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var chunk = _step1.value;\n var _chunk_moduleIds;\n if (chunk.type !== \"chunk\") continue;\n var info = {\n fileName: chunk.fileName,\n imports: chunk.imports || []\n };\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = ((_chunk_moduleIds = chunk.moduleIds) !== null && _chunk_moduleIds !== void 0 ? _chunk_moduleIds : [])[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var moduleId = _step2.value;\n clientChunksBySource.set(moduleId, info);\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = vxrnOutput.clientOutput[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var chunk1 = _step3.value;\n if (chunk1.type !== \"chunk\" || !chunk1.facadeModuleId) continue;\n clientChunksBySource.set(chunk1.facadeModuleId, {\n fileName: chunk1.fileName,\n imports: chunk1.imports || []\n });\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n }\n var clientManifestByFile = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion4 = true, _didIteratorError4 = false, _iteratorError4 = void 0;\n try {\n for (var _iterator4 = Object.values(vxrnOutput.clientManifest)[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var entry = _step4.value;\n if (entry.file) {\n clientManifestByFile.set(entry.file, entry);\n }\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return != null) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n var outputEntries = [\n ...vxrnOutput.serverOutput.entries()\n ];\n var layoutServerPaths = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion5 = true, _didIteratorError5 = false, _iteratorError5 = void 0;\n try {\n for (var _iterator5 = outputEntries[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var [, output] = _step5.value;\n if (output.type === \"asset\") continue;\n var id = output.facadeModuleId || \"\";\n var file = Path.basename(id);\n if (file.startsWith(\"_layout\") && id.includes(`/${routerRoot}/`)) {\n var relativePath = normalizePath(relative(process.cwd(), id)).replace(`${routerRoot}/`, \"\");\n var contextKey = `./${relativePath}`;\n layoutServerPaths.set(contextKey, output.fileName);\n }\n }\n } catch (err) {\n _didIteratorError5 = true;\n _iteratorError5 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion5 && _iterator5.return != null) {\n _iterator5.return();\n }\n } finally {\n if (_didIteratorError5) {\n throw _iteratorError5;\n }\n }\n }\n var routeByPath = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion6 = true, _didIteratorError6 = false, _iteratorError6 = void 0;\n try {\n for (var _iterator6 = manifest.pageRoutes[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {\n var route = _step6.value;\n if (route.file) {\n var routePath = `${routerRoot}${route.file.slice(1)}`;\n routeByPath.set(routePath, route);\n }\n }\n } catch (err) {\n _didIteratorError6 = true;\n _iteratorError6 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion6 && _iterator6.return != null) {\n _iterator6.return();\n }\n } finally {\n if (_didIteratorError6) {\n throw _iteratorError6;\n }\n }\n }\n var _iteratorNormalCompletion7 = true, _didIteratorError7 = false, _iteratorError7 = void 0;\n try {\n for (var _iterator7 = outputEntries[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {\n var [, output1] = _step7.value;\n if (output1.type === \"asset\") {\n assets.push(output1);\n }\n }\n } catch (err) {\n _didIteratorError7 = true;\n _iteratorError7 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion7 && _iterator7.return != null) {\n _iterator7.return();\n }\n } finally {\n if (_didIteratorError7) {\n throw _iteratorError7;\n }\n }\n }\n var moduleIdToServerChunk = /* @__PURE__ */ new Map();\n var _iteratorNormalCompletion8 = true, _didIteratorError8 = false, _iteratorError8 = void 0;\n try {\n for (var _iterator8 = outputEntries[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {\n var [, output2] = _step8.value;\n if (output2.type === \"asset\") continue;\n var moduleIds = output2.moduleIds || (output2.facadeModuleId ? [\n output2.facadeModuleId\n ] : []);\n var _iteratorNormalCompletion9 = true, _didIteratorError9 = false, _iteratorError9 = void 0;\n try {\n for (var _iterator9 = moduleIds[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {\n var moduleId1 = _step9.value;\n moduleIdToServerChunk.set(moduleId1, output2.fileName);\n if (moduleId1.includes(\"?one-spa-build\")) {\n moduleIdToServerChunk.set(moduleId1.slice(0, moduleId1.indexOf(\"?\")), output2.fileName);\n }\n }\n } catch (err) {\n _didIteratorError9 = true;\n _iteratorError9 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion9 && _iterator9.return != null) {\n _iterator9.return();\n }\n } finally {\n if (_didIteratorError9) {\n throw _iteratorError9;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError8 = true;\n _iteratorError8 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion8 && _iterator8.return != null) {\n _iterator8.return();\n }\n } finally {\n if (_didIteratorError8) {\n throw _iteratorError8;\n }\n }\n }\n var _iteratorNormalCompletion10 = true, _didIteratorError10 = false, _iteratorError10 = void 0;\n try {\n var _loop1 = async function() {\n var foundRoute = _step10.value;\n var _vxrnOutput_clientManifest_manifestKey, _ref2, _ref12;\n var _vxrnOutput_buildArgs, _foundRoute_layouts, _oneOptions_web3, _oneOptions_web12, _exported_generateStaticParams;\n if (!foundRoute.file) {\n return \"continue\";\n }\n var routeModulePath = normalizePath(join(resolve(process.cwd(), options.root), routerRoot, foundRoute.file.slice(2)));\n var serverFileName = moduleIdToServerChunk.get(routeModulePath);\n if (!serverFileName) {\n if (foundRoute.type === \"spa\") {\n throw new Error(`[one] No build-only server chunk for SPA route: ${foundRoute.file}`);\n }\n console.warn(`[one] No server chunk found for route: ${foundRoute.file}`);\n return \"continue\";\n }\n var onlyBuild = (_vxrnOutput_buildArgs = vxrnOutput.buildArgs) === null || _vxrnOutput_buildArgs === void 0 ? void 0 : _vxrnOutput_buildArgs.only;\n if (onlyBuild) {\n var relativeId = foundRoute.file.slice(1);\n if (!MicroMatch.contains(relativeId, onlyBuild)) {\n return \"continue\";\n }\n }\n var clientChunk = clientChunksBySource.get(routeModulePath);\n var manifestKey = `${routerRoot}${foundRoute.file.slice(1)}`;\n var clientManifestEntry = (_vxrnOutput_clientManifest_manifestKey = vxrnOutput.clientManifest[manifestKey]) !== null && _vxrnOutput_clientManifest_manifestKey !== void 0 ? _vxrnOutput_clientManifest_manifestKey : clientChunk ? clientManifestByFile.get(clientChunk.fileName) : void 0;\n if (!clientChunk && foundRoute.type !== \"spa\" && foundRoute.type !== \"ssg\") {\n console.warn(`No client chunk found for route: ${routeModulePath}`);\n return \"continue\";\n }\n foundRoute.loaderServerPath = serverFileName;\n var relativeId1 = foundRoute.file.replace(/^\\.\\//, \"/\");\n if (foundRoute.layouts) {\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = foundRoute.layouts[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var layout = _step14.value;\n var serverPath = layoutServerPaths.get(layout.contextKey);\n if (serverPath) {\n layout.loaderServerPath = serverPath;\n }\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n }\n function collectImports(entry2) {\n var { type = \"js\" } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var { imports = [], css } = entry2;\n var cacheKey = `${entry2.file || imports.join(\",\")}:${type}`;\n var cached = collectImportsCache.get(cacheKey);\n if (cached) return cached;\n if (collectImportsInFlight.has(cacheKey)) return [];\n collectImportsInFlight.add(cacheKey);\n var result = [\n ...new Set([\n ...type === \"js\" ? imports : css || [],\n ...imports.flatMap(function(name) {\n var found = vxrnOutput.clientManifest[name];\n if (!found) {\n console.warn(`No found imports`, name, vxrnOutput.clientManifest);\n }\n return collectImports(found, {\n type\n });\n })\n ].flat().filter(function(x) {\n return x && (type === \"css\" || x.endsWith(\".js\"));\n }).map(function(x) {\n return type === \"css\" ? x : x.startsWith(\"assets/\") ? x : `assets/${x.slice(1)}`;\n }))\n ];\n collectImportsInFlight.delete(cacheKey);\n collectImportsCache.set(cacheKey, result);\n return result;\n }\n var entryImports = collectImports(clientManifestEntry || {});\n var layoutEntries = (_ref2 = (_foundRoute_layouts = foundRoute.layouts) === null || _foundRoute_layouts === void 0 ? void 0 : _foundRoute_layouts.flatMap(function(layout2) {\n var clientKey2 = `${routerRoot}${layout2.contextKey.slice(1)}`;\n var found = vxrnOutput.clientManifest[clientKey2];\n return found ? found : [];\n })) !== null && _ref2 !== void 0 ? _ref2 : [];\n var layoutImports = layoutEntries.flatMap(function(entry2) {\n return [\n entry2.file,\n ...collectImports(entry2)\n ];\n });\n var routePreloadKeys = /* @__PURE__ */ new Set();\n var rootLayoutKey = `${routerRoot}/_layout.tsx`;\n if (vxrnOutput.clientManifest[rootLayoutKey]) {\n routePreloadKeys.add(`/${rootLayoutKey}`);\n }\n if (foundRoute.layouts) {\n var _iteratorNormalCompletion15 = true, _didIteratorError15 = false, _iteratorError15 = void 0;\n try {\n for (var _iterator15 = foundRoute.layouts[Symbol.iterator](), _step15; !(_iteratorNormalCompletion15 = (_step15 = _iterator15.next()).done); _iteratorNormalCompletion15 = true) {\n var layout1 = _step15.value;\n var clientKey = `${routerRoot}${layout1.contextKey.slice(1)}`;\n if (vxrnOutput.clientManifest[clientKey]) {\n routePreloadKeys.add(`/${clientKey}`);\n }\n }\n } catch (err) {\n _didIteratorError15 = true;\n _iteratorError15 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion15 && _iterator15.return != null) {\n _iterator15.return();\n }\n } finally {\n if (_didIteratorError15) {\n throw _iteratorError15;\n }\n }\n }\n }\n if (clientChunk || clientManifestEntry) {\n routePreloadKeys.add(`/${routerRoot}${foundRoute.file.slice(1)}`);\n }\n var routePreloads = [\n ...routePreloadKeys\n ];\n var preloadSetupFilePreloads = (function() {\n if (!oneOptions.setupFile) return [];\n var clientSetupFile = typeof oneOptions.setupFile === \"string\" ? oneOptions.setupFile : oneOptions.setupFile.client;\n if (!clientSetupFile) return [];\n var needle = clientSetupFile.replace(/^\\.\\//, \"\");\n for (var file2 in vxrnOutput.clientManifest) {\n if (file2 === needle) {\n var entry2 = vxrnOutput.clientManifest[file2];\n return [\n entry2.file\n ];\n }\n }\n return [];\n })();\n var allPreloads = [\n .../* @__PURE__ */ new Set([\n ...preloadSetupFilePreloads,\n // add the route entry js (like ./app/index.ts) - prefer direct chunk lookup\n ...clientChunk ? [\n clientChunk.fileName\n ] : clientManifestEntry ? [\n clientManifestEntry.file\n ] : [],\n // add the virtual entry\n vxrnOutput.clientManifest[\"virtual:one-entry\"].file,\n ...entryImports,\n ...layoutImports\n ])\n ].map(function(path2) {\n return `/${path2}`;\n });\n var scriptLoadingMode = (_oneOptions_web3 = oneOptions.web) === null || _oneOptions_web3 === void 0 ? void 0 : _oneOptions_web3.experimental_scriptLoading;\n var useDeferredLoading = scriptLoadingMode === \"defer-non-critical\";\n var useAggressiveLCP = scriptLoadingMode === \"after-lcp-aggressive\";\n var needsSeparatedPreloads = useDeferredLoading || useAggressiveLCP;\n var criticalPreloads = needsSeparatedPreloads ? [\n .../* @__PURE__ */ new Set([\n ...preloadSetupFilePreloads,\n // add the virtual entry (framework bootstrap)\n vxrnOutput.clientManifest[\"virtual:one-entry\"].file,\n // add the route entry js (like ./app/index.ts) - prefer direct chunk lookup\n ...clientChunk ? [\n clientChunk.fileName\n ] : clientManifestEntry ? [\n clientManifestEntry.file\n ] : [],\n // add layout files (but not their deep imports)\n ...layoutEntries.map(function(entry2) {\n return entry2.file;\n })\n ])\n ].map(function(path2) {\n return `/${path2}`;\n }) : void 0;\n var deferredPreloads = needsSeparatedPreloads ? [\n .../* @__PURE__ */ new Set([\n ...entryImports,\n ...layoutEntries.flatMap(function(entry2) {\n return collectImports(entry2);\n })\n ])\n ].filter(function(path2) {\n return !criticalPreloads.includes(`/${path2}`);\n }).map(function(path2) {\n return `/${path2}`;\n }) : void 0;\n var preloads2 = needsSeparatedPreloads ? [\n ...criticalPreloads,\n ...deferredPreloads\n ] : allPreloads;\n var allEntries = [\n clientManifestEntry,\n ...layoutEntries\n ].filter(Boolean);\n var layoutCSS = [\n ...new Set(layoutEntries.flatMap(function(entry2) {\n return collectImports(entry2, {\n type: \"css\"\n });\n }).map(function(path2) {\n return `/${path2}`;\n }))\n ];\n var allCSS = [\n .../* @__PURE__ */ new Set([\n ...layoutCSS,\n // css from page entry\n ...clientManifestEntry ? collectImports(clientManifestEntry, {\n type: \"css\"\n }).map(function(path2) {\n return `/${path2}`;\n }) : [],\n // root-level css for cssCodeSplit: false (vite emits a single\n // top-level `style.css` entry whose `src` equals `style.css`). when\n // cssCodeSplit is true (default), the manifest also contains a\n // per-component css entry for every chunk that ships any css — those\n // are owned by their JS chunk and must NOT be injected globally, or\n // every SSG page ends up preloading every css chunk in the project\n // (the prod /download was loading 23 stylesheets with editor/IDE\n // chunks despite being a marketing route).\n ...Object.entries(vxrnOutput.clientManifest).filter(function(param) {\n var [key, entry2] = param;\n if (!key.endsWith(\".css\")) return false;\n var src = entry2.src;\n return src === \"style.css\";\n }).map(function(param) {\n var [, entry2] = param;\n return `/${entry2.file}`;\n })\n ])\n ];\n var hasCriticalCSS = allCSS.some(function(p) {\n return criticalCSSOutputPaths.has(p);\n });\n var needsCSSContents = ((_oneOptions_web12 = oneOptions.web) === null || _oneOptions_web12 === void 0 ? void 0 : _oneOptions_web12.inlineLayoutCSS) || hasCriticalCSS;\n var allCSSContents = void 0;\n if (needsCSSContents) {\n allCSSContents = await Promise.all(allCSS.map(async function(cssPath) {\n var _oneOptions_web4;\n if (!((_oneOptions_web4 = oneOptions.web) === null || _oneOptions_web4 === void 0 ? void 0 : _oneOptions_web4.inlineLayoutCSS) && !criticalCSSOutputPaths.has(cssPath)) {\n return \"\";\n }\n var cached = cssFileContentsCache.get(cssPath);\n if (cached !== void 0) return cached;\n var filePath = join(clientDir, cssPath);\n try {\n var content = await FSExtra.readFile(filePath, \"utf-8\");\n cssFileContentsCache.set(cssPath, content);\n return content;\n } catch (err) {\n console.warn(`[one] Warning: Could not read CSS file ${filePath}`);\n cssFileContentsCache.set(cssPath, \"\");\n return \"\";\n }\n }));\n }\n if (process.env.DEBUG) {\n console.info(\"[one] building routes\", {\n foundRoute,\n layoutEntries,\n allEntries,\n allCSS\n });\n }\n var serverJsPath = posix.join(outDir, \"server\", serverFileName);\n var exported = void 0;\n try {\n exported = await getRouteExports(vxrnOutput.serverEntry, routerRoot, foundRoute.file);\n } catch (err) {\n console.error(`Error importing page (original error)`, err);\n throw new Error(`Error importing page: ${foundRoute.file}`, {\n cause: err\n });\n }\n foundRoute.hasLoader = typeof exported.loader === \"function\";\n var isDynamic = !!Object.keys(foundRoute.routeKeys).length;\n if (foundRoute.type === \"ssg\" && isDynamic && !foundRoute.page.includes(\"+not-found\") && !foundRoute.page.includes(\"_sitemap\") && !exported.generateStaticParams) {\n throw new Error(`[one] Error: Missing generateStaticParams\n\n Route ${foundRoute.page} of type ${foundRoute.type} must export generateStaticParams so build can complete.\n\n See docs on generateStaticParams:\n https://onestack.dev/docs/routing-exports#generatestaticparams\n\n`);\n }\n var paramsList = (_ref12 = await ((_exported_generateStaticParams = exported.generateStaticParams) === null || _exported_generateStaticParams === void 0 ? void 0 : _exported_generateStaticParams.call(exported))) !== null && _ref12 !== void 0 ? _ref12 : [\n {}\n ];\n console.info(`\n [build] page ${relativeId1} (with ${paramsList.length} routes)\n`);\n if (process.env.DEBUG) {\n console.info(`paramsList`, JSON.stringify(paramsList, null, 2));\n }\n var routeSitemapExport = exported.sitemap;\n var isAfterLCPMode = scriptLoadingMode === \"after-lcp\" || scriptLoadingMode === \"after-lcp-aggressive\";\n var useAfterLCP = foundRoute.type === \"ssg\" && isAfterLCPMode;\n var useAfterLCPAggressive = foundRoute.type === \"ssg\" && scriptLoadingMode === \"after-lcp-aggressive\";\n var shouldCollectSitemap = foundRoute.type !== \"api\" && foundRoute.type !== \"layout\" && !foundRoute.isNotFound && !foundRoute.page.includes(\"+not-found\") && !foundRoute.page.includes(\"_sitemap\");\n var pageBuilds = paramsList.map(function(params) {\n var path2 = getPathnameFromFilePath(relativeId1, params, foundRoute.type === \"ssg\");\n if (workerPool) {\n console.info(` \\u21A6 route ${path2}`);\n return workerPool.buildPage({\n serverEntry: vxrnOutput.serverEntry,\n routerRoot,\n path: path2,\n relativeId: relativeId1,\n params,\n foundRoute,\n clientManifestEntry,\n staticDir,\n clientDir,\n builtMiddlewares,\n serverJsPath,\n preloads: preloads2,\n allCSS,\n layoutCSS,\n routePreloads,\n allCSSContents,\n criticalPreloads,\n deferredPreloads,\n useAfterLCP,\n useAfterLCPAggressive\n }).then(function(built2) {\n return {\n built: built2,\n path: path2\n };\n });\n }\n return limit(async function() {\n console.info(` \\u21A6 route ${path2}`);\n var built2 = await runWithAsyncLocalContext(async function() {\n return await buildPage(vxrnOutput.serverEntry, routerRoot, path2, relativeId1, params, foundRoute, clientManifestEntry, staticDir, clientDir, builtMiddlewares, serverJsPath, preloads2, allCSS, layoutCSS, routePreloads, allCSSContents, criticalPreloads, deferredPreloads, useAfterLCP, useAfterLCPAggressive);\n });\n return {\n built: built2,\n path: path2\n };\n });\n });\n var results = await Promise.all(pageBuilds);\n var _iteratorNormalCompletion22 = true, _didIteratorError22 = false, _iteratorError22 = void 0;\n try {\n for (var _iterator22 = results[Symbol.iterator](), _step22; !(_iteratorNormalCompletion22 = (_step22 = _iterator22.next()).done); _iteratorNormalCompletion22 = true) {\n var { built, path } = _step22.value;\n builtRoutes.push(built);\n if (shouldCollectSitemap) {\n sitemapData.push({\n path,\n routeExport: routeSitemapExport\n });\n }\n }\n } catch (err) {\n _didIteratorError22 = true;\n _iteratorError22 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion22 && _iterator22.return != null) {\n _iterator22.return();\n }\n } finally {\n if (_didIteratorError22) {\n throw _iteratorError22;\n }\n }\n }\n };\n for (var _iterator10 = manifest.pageRoutes[Symbol.iterator](), _step10; !(_iteratorNormalCompletion10 = (_step10 = _iterator10.next()).done); _iteratorNormalCompletion10 = true) await _loop1();\n } catch (err) {\n _didIteratorError10 = true;\n _iteratorError10 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion10 && _iterator10.return != null) {\n _iterator10.return();\n }\n } finally {\n if (_didIteratorError10) {\n throw _iteratorError10;\n }\n }\n }\n if (workerPool) {\n await terminateWorkerPool();\n }\n var staticTime = performance.now() - staticStartTime;\n console.info(`\n \\u23F1\\uFE0F static routes: ${(staticTime / 1e3).toFixed(2)}s (${builtRoutes.length} pages)\n`);\n printBuildTimings();\n await moveAllFiles(staticDir, clientDir);\n await FSExtra.remove(staticDir);\n var routeMap = {};\n var routeToBuildInfo = {};\n var pathToRoute = {};\n var preloads = {};\n var cssPreloads = {};\n var loaders = {};\n var cssContentsByPath;\n var _iteratorNormalCompletion11 = true, _didIteratorError11 = false, _iteratorError11 = void 0;\n try {\n var _loop2 = function() {\n var route2 = _step11.value;\n if (!route2.cleanPath.includes(\"*\")) {\n routeMap[route2.cleanPath] = route2.htmlPath;\n }\n var {\n // dont include loaderData it can be huge\n loaderData: _loaderData,\n cssContents,\n ...rest\n } = route2;\n if (cssContents) {\n var contentsByPath = cssContentsByPath || (cssContentsByPath = {});\n route2.css.forEach(function(cssPath, index) {\n var content = cssContents[index];\n if (content) contentsByPath[cssPath] = content;\n });\n }\n routeToBuildInfo[route2.routeFile] = rest;\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = getCleanPaths([\n route2.path,\n route2.cleanPath\n ])[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var p = _step14.value;\n pathToRoute[p] = route2.routeFile;\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n preloads[route2.preloadPath] = true;\n cssPreloads[route2.cssPreloadPath] = true;\n loaders[route2.loaderPath] = true;\n };\n for (var _iterator11 = builtRoutes[Symbol.iterator](), _step11; !(_iteratorNormalCompletion11 = (_step11 = _iterator11.next()).done); _iteratorNormalCompletion11 = true) _loop2();\n } catch (err) {\n _didIteratorError11 = true;\n _iteratorError11 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion11 && _iterator11.return != null) {\n _iterator11.return();\n }\n } finally {\n if (_didIteratorError11) {\n throw _iteratorError11;\n }\n }\n }\n function createBuildManifestRoute(route2) {\n var { layouts, ...built } = route2;\n if (layouts === null || layouts === void 0 ? void 0 : layouts.length) {\n ;\n built.layouts = layouts.map(function(layout) {\n return {\n contextKey: layout.contextKey,\n loaderServerPath: layout.loaderServerPath\n };\n });\n }\n var buildInfo = builtRoutes.find(function(x) {\n return x.routeFile === route2.file;\n });\n if (built.middlewares) {\n var _iteratorNormalCompletion14 = true, _didIteratorError14 = false, _iteratorError14 = void 0;\n try {\n for (var _iterator14 = built.middlewares.entries()[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {\n var [index, mw] = _step14.value;\n var _buildInfo_middlewares;\n var viaBuildInfo = buildInfo === null || buildInfo === void 0 ? void 0 : (_buildInfo_middlewares = buildInfo.middlewares) === null || _buildInfo_middlewares === void 0 ? void 0 : _buildInfo_middlewares[index];\n if (viaBuildInfo) {\n mw.contextKey = viaBuildInfo;\n continue;\n }\n var viaMiddlewareMap = builtMiddlewares[mw.contextKey];\n if (viaMiddlewareMap) {\n mw.contextKey = viaMiddlewareMap;\n }\n }\n } catch (err) {\n _didIteratorError14 = true;\n _iteratorError14 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion14 && _iterator14.return != null) {\n _iterator14.return();\n }\n } finally {\n if (_didIteratorError14) {\n throw _iteratorError14;\n }\n }\n }\n }\n if (buildInfo) {\n built.loaderPath = buildInfo.loaderPath;\n }\n return built;\n }\n var buildInfoForWriting = {\n outDir,\n oneOptions,\n routeToBuildInfo,\n cssContentsByPath,\n pathToRoute,\n manifest: {\n pageRoutes: manifest.pageRoutes.map(createBuildManifestRoute),\n apiRoutes: manifest.apiRoutes.map(createBuildManifestRoute),\n allRoutes: manifest.allRoutes.map(createBuildManifestRoute)\n },\n routeMap,\n constants: JSON.parse(JSON.stringify({\n ...constants\n })),\n preloads,\n cssPreloads,\n loaders,\n useRolldown: await isRolldown()\n };\n await writeJSON(toAbsolute(`${outDir}/buildInfo.json`), buildInfoForWriting);\n await writeBuildOutputPointer(outDir);\n await FSExtra.writeFile(join(clientDir, \"version.json\"), JSON.stringify({\n version: constants.CACHE_KEY\n }));\n console.info(`\n \\u{1F6E1} skew protection: emitted version.json\n`);\n var sitemapConfig = (_oneOptions_web2 = oneOptions.web) === null || _oneOptions_web2 === void 0 ? void 0 : _oneOptions_web2.sitemap;\n if (sitemapConfig) {\n var sitemapOptions = typeof sitemapConfig === \"boolean\" ? {} : sitemapConfig;\n var sitemapXml = generateSitemap(sitemapData, sitemapOptions);\n var sitemapPath = join(clientDir, \"sitemap.xml\");\n await FSExtra.writeFile(sitemapPath, sitemapXml);\n console.info(`\n \\u{1F4C4} generated sitemap.xml (${sitemapData.length} URLs)\n`);\n }\n var postBuildLogs = [];\n var platform = deployConfig === null || deployConfig === void 0 ? void 0 : deployConfig.target;\n if (platform) {\n postBuildLogs.push(`[one.build] platform ${platform}`);\n }\n switch (platform) {\n case \"vercel\": {\n var vercelJsonPath = join(options.root, \"vercel.json\");\n if (FSExtra.existsSync(vercelJsonPath)) {\n try {\n var vercelConfig = JSON.parse(FSExtra.readFileSync(vercelJsonPath, \"utf-8\"));\n if (!vercelConfig.cleanUrls) {\n console.warn(`\n \\u26A0\\uFE0F Warning: Your vercel.json is missing \"cleanUrls\": true`);\n console.warn(` Without this, direct navigation to SSG pages will 404.`);\n console.warn(` Add \"cleanUrls\": true to your vercel.json to fix this.\n`);\n }\n } catch (unused) {\n }\n }\n await buildVercelOutputDirectory({\n apiOutput,\n buildInfoForWriting,\n clientDir,\n oneOptionsRoot: options.root,\n postBuildLogs\n });\n break;\n }\n case \"cloudflare\": {\n var _viteLoadedConfig_config_ssr, _viteLoadedConfig_config1;\n var workerSrcDir = join(options.root, outDir);\n var getWorkerSourceImportPath = function getWorkerSourceImportPath2(routeFile) {\n var importPath2 = normalizePath(relative(workerSrcDir, join(options.root, routerRoot, routeFile)));\n return importPath2.startsWith(\".\") ? importPath2 : `./${importPath2}`;\n };\n var apiRouteMap = [];\n var middlewareRouteMap = [];\n var _iteratorNormalCompletion12 = true, _didIteratorError12 = false, _iteratorError12 = void 0;\n try {\n for (var _iterator12 = buildInfoForWriting.manifest.apiRoutes[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {\n var route1 = _step12.value;\n if (route1.file) {\n var importPath = getWorkerSourceImportPath(route1.file);\n apiRouteMap.push(` '${route1.page}': () => import('${importPath}')`);\n }\n }\n } catch (err) {\n _didIteratorError12 = true;\n _iteratorError12 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion12 && _iterator12.return != null) {\n _iterator12.return();\n }\n } finally {\n if (_didIteratorError12) {\n throw _iteratorError12;\n }\n }\n }\n var _iteratorNormalCompletion13 = true, _didIteratorError13 = false, _iteratorError13 = void 0;\n try {\n for (var _iterator13 = Object.entries(builtMiddlewares)[Symbol.iterator](), _step13; !(_iteratorNormalCompletion13 = (_step13 = _iterator13.next()).done); _iteratorNormalCompletion13 = true) {\n var [sourceFile, builtPath] = _step13.value;\n var importPath1 = getWorkerSourceImportPath(sourceFile);\n middlewareRouteMap.push(` '${builtPath}': () => import('${importPath1}')`);\n }\n } catch (err) {\n _didIteratorError13 = true;\n _iteratorError13 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion13 && _iterator13.return != null) {\n _iterator13.return();\n }\n } finally {\n if (_didIteratorError13) {\n throw _iteratorError13;\n }\n }\n }\n var workerSrcPath = join(options.root, outDir, \"_worker-src.js\");\n var workerCode = `// Polyfill MessageChannel for React SSR (not available in Cloudflare Workers by default)\nif (typeof MessageChannel === 'undefined') {\n globalThis.MessageChannel = class MessageChannel {\n constructor() {\n this.port1 = { postMessage: () => {}, onmessage: null, close: () => {} }\n this.port2 = { postMessage: () => {}, onmessage: null, close: () => {} }\n }\n }\n}\n\nimport { serve, setFetchStaticHtml, withRange } from 'one/serve-worker'\n\n// Lazy import map - modules load on-demand when route is matched\nconst lazyRoutes = {\n serverEntry: () => import('./server/_virtual_one-entry.js'),\n api: {\n${apiRouteMap.join(\",\\n\")}\n },\n middlewares: {\n${middlewareRouteMap.join(\",\\n\")}\n }\n}\n\nconst buildInfo = ${JSON.stringify(buildInfoForWriting)}\n\nlet server\n\nexport default {\n async fetch(request, env, ctx) {\n if (!server) {\n server = await serve(buildInfo, lazyRoutes)\n }\n\n // set up static HTML fetcher for this request (uses ASSETS binding)\n if (env.ASSETS) {\n setFetchStaticHtml(async (path) => {\n try {\n const url = new URL(request.url)\n url.pathname = path\n const assetResponse = await env.ASSETS.fetch(new Request(url))\n if (assetResponse && assetResponse.ok) {\n return await assetResponse.text()\n }\n } catch (e) {\n // asset not found\n }\n return null\n })\n }\n\n try {\n const response = await server.fetch(request, env, ctx)\n\n // no route matched or 404 \\u2192 try static assets\n if (!response || response.status === 404) {\n if (env.ASSETS) {\n try {\n const assetResponse = await env.ASSETS.fetch(request)\n if (assetResponse && assetResponse.status !== 404) {\n return await withRange(request, assetResponse)\n }\n } catch (e) {\n // asset not found, continue with original response\n }\n }\n }\n\n return response\n } finally {\n setFetchStaticHtml(null)\n }\n }\n}\n`;\n await FSExtra.writeFile(workerSrcPath, workerCode);\n var projectName = await getCloudflareProjectName(options.root);\n var userWranglerConfig = await loadUserWranglerConfig(options.root);\n var wranglerInputConfig = createCloudflareWranglerConfig(projectName, userWranglerConfig === null || userWranglerConfig === void 0 ? void 0 : userWranglerConfig.config);\n wranglerInputConfig.main = normalizePath(relative(join(options.root, outDir), workerSrcPath));\n var wranglerInputPath = join(options.root, outDir, \"_wrangler.input.jsonc\");\n await FSExtra.writeFile(wranglerInputPath, `${JSON.stringify(wranglerInputConfig, null, 2)}\n`);\n var ssrExternal = viteLoadedConfig === null || viteLoadedConfig === void 0 ? void 0 : (_viteLoadedConfig_config1 = viteLoadedConfig.config) === null || _viteLoadedConfig_config1 === void 0 ? void 0 : (_viteLoadedConfig_config_ssr = _viteLoadedConfig_config1.ssr) === null || _viteLoadedConfig_config_ssr === void 0 ? void 0 : _viteLoadedConfig_config_ssr.external;\n var workerExternals = Array.isArray(ssrExternal) ? ssrExternal : [];\n console.info(\"\\n [cloudflare] Bundling worker...\");\n var { cloudflare } = await import(\"@cloudflare/vite-plugin\");\n var builder = await createBuilder({\n root: options.root,\n mode: \"production\",\n logLevel: \"warn\",\n configFile: false,\n define: {\n \"process.env.NODE_ENV\": JSON.stringify(\"production\"),\n \"process.env.VITE_ENVIRONMENT\": JSON.stringify(\"ssr\"),\n \"process.env.ONE_CACHE_KEY\": JSON.stringify(constants.CACHE_KEY)\n },\n plugins: [\n // the cloudflare worker IS a server, but this build runs with\n // configFile:false so the user vite.config (where the user-level\n // `one()` plugin registers environmentGuardPlugin via vite.config)\n // doesn't apply. register the guard plugin directly here so\n // `import 'server-only'` resolves to an empty module in the\n // worker bundle instead of inlining the package's throwing\n // index.js — which would crash the deployed worker on the first\n // /api request that loads any server-only-importing module.\n environmentGuardPlugin(oneOptions.environmentGuards),\n cloudflare({\n configPath: wranglerInputPath,\n viteEnvironment: {\n name: \"worker\"\n }\n })\n ],\n resolve: {\n alias: [\n // rolldown can't parse react-native's Flow syntax; alias to react-native-web for ssr\n {\n find: /^react-native\\/Libraries\\/.*/,\n replacement: resolvePath(\"@vxrn/utils/empty\", options.root)\n },\n {\n // react native 0.87 removed @react-native/assets-registry, but libraries\n // like react-native-svg still import its registry\n find: /^(react-native\\/asset-registry|@react-native\\/assets-registry\\/registry)$/,\n replacement: \"react-native-web/dist/modules/AssetRegistry\"\n },\n {\n find: \"react-native/package.json\",\n replacement: \"react-native-web/package.json\"\n },\n {\n find: \"react-native\",\n replacement: \"react-native-web\"\n },\n ...Object.entries(absorbedPackageAliases(options.root, \"web\")).map(function(param) {\n var [find, replacement] = param;\n return {\n find,\n replacement\n };\n })\n ],\n // the aliases name react-native-web by package, so it resolves from\n // the app root only once something imports react-native: an app\n // with no react-native imports needs no react-native-web.\n dedupe: [\n \"react-native-web\"\n ]\n },\n build: {\n outDir,\n emptyOutDir: false,\n rolldownOptions: {\n // packages the app keeps out of its ssr bundle (native bindings\n // used only by build-time loaders) stay out of the worker too\n external: workerExternals,\n // Match the main web build behavior so RN packages that import\n // native-only symbols from react-native can still bundle against\n // the react-native-web alias in the worker graph.\n shimMissingExports: true,\n // cloudflare's module worker can contain circular shared chunks\n // when one package is used by both browser-facing SSR code and API\n // routes. preserve source import order so a dependent chunk cannot\n // evaluate against partially initialized exports.\n output: {\n strictExecutionOrder: true\n }\n }\n }\n });\n var workerEnv = builder.environments.worker;\n if (!workerEnv) {\n throw new Error('[one] plugin did not register \"worker\" environment');\n }\n await builder.build(workerEnv);\n await FSExtra.remove(workerSrcPath);\n await FSExtra.remove(wranglerInputPath);\n await finalizeCloudflareWranglerDeployConfig(join(options.root, outDir, \"worker\", \"wrangler.json\"));\n if (userWranglerConfig) {\n console.info(` [cloudflare] Merging ${relative(options.root, userWranglerConfig.path)} into ${outDir}/worker/wrangler.json`);\n }\n postBuildLogs.push(`Cloudflare worker bundled at ${outDir}/worker/index.js`);\n postBuildLogs.push(`To deploy: wrangler deploy`);\n break;\n }\n }\n var securityScanOption = (_oneOptions_build5 = oneOptions.build) === null || _oneOptions_build5 === void 0 ? void 0 : _oneOptions_build5.securityScan;\n var securityScanLevel = securityScanOption === false ? null : securityScanOption === true || securityScanOption === void 0 ? \"warn\" : typeof securityScanOption === \"string\" ? securityScanOption : (_securityScanOption_level = securityScanOption.level) !== null && _securityScanOption_level !== void 0 ? _securityScanOption_level : \"warn\";\n var securitySafePatterns = typeof securityScanOption === \"object\" && securityScanOption !== null ? securityScanOption.safePatterns : void 0;\n if (securityScanLevel) {\n var { runSecurityScan } = await import(\"./securityScan\");\n var passed = await runSecurityScan(clientDir, securityScanLevel, securitySafePatterns);\n if (!passed) {\n process.exit(1);\n }\n }\n if (postBuildLogs.length) {\n console.info(`\n\n`);\n postBuildLogs.forEach(function(log) {\n console.info(` \\xB7 ${log}`);\n });\n }\n console.info(`\n \\u{1F49B} build complete\n`);\n}\nvar TRAILING_INDEX_REGEX = /\\/index(\\.(web))?/;\nfunction getCleanPaths(possiblePaths) {\n return Array.from(new Set(Array.from(new Set(possiblePaths)).flatMap(function(p) {\n var paths = [\n p\n ];\n if (p.match(TRAILING_INDEX_REGEX)) {\n var pathWithTrailingIndexRemoved = p.replace(TRAILING_INDEX_REGEX, \"\");\n paths.push(pathWithTrailingIndexRemoved);\n paths.push(pathWithTrailingIndexRemoved + \"/\");\n }\n return paths;\n })));\n}\nasync function moveAllFiles(src, dest) {\n try {\n await FSExtra.copy(src, dest, {\n overwrite: true,\n errorOnExist: false\n });\n } catch (err) {\n console.error(\"Error moving files:\", err);\n }\n}\nexport {\n build\n};\n//# sourceMappingURL=build.js.map\n"],"mappings":"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"}
|
|
@@ -40,19 +40,10 @@ async function buildPage(serverEntry, routerRoot, path, relativeId, params, foun
|
|
|
40
40
|
let loaderPath = "";
|
|
41
41
|
let loaderData = {};
|
|
42
42
|
try {
|
|
43
|
-
const routeImports = [];
|
|
44
|
-
const routeRegistrations = [];
|
|
45
|
-
let routeIndex = 0;
|
|
46
|
-
for (const [routeKey, bundlePath] of Object.entries(routePreloads)) {
|
|
47
|
-
const varName = `_r${routeIndex++}`;
|
|
48
|
-
routeImports.push(`import * as ${varName} from "${bundlePath}"`);
|
|
49
|
-
routeRegistrations.push(`registerPreloadedRoute("${routeKey}", ${varName})`);
|
|
50
|
-
}
|
|
51
|
-
const registrationCalls = routeRegistrations.map((call) => call.replace("registerPreloadedRoute(", "window.__oneRegisterPreloadedRoute("));
|
|
52
43
|
const preloadContent = [
|
|
53
|
-
...routeImports,
|
|
54
44
|
...preloads.map((preload) => `import "${preload}"`),
|
|
55
|
-
|
|
45
|
+
`const routes = globalThis.__importMetaGlobbed`,
|
|
46
|
+
`await Promise.all(${JSON.stringify(routePreloads)}.map((key) => routes[key]().then((mod) => window.__oneRegisterPreloadedRoute(key, mod))))`
|
|
56
47
|
].join("\n");
|
|
57
48
|
t0 = performance.now();
|
|
58
49
|
await FSExtra.writeFile(join(clientDir, urlPathToFilePath(preloadPath)), preloadContent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildPage.js","names":[],"sources":["esm/cli/buildPage.js"],"sourcesContent":["import { join } from \"node:path\";\nimport FSExtra from \"fs-extra\";\nimport { normalizePath } from \"vite\";\nimport * as constants from \"../constants\";\nimport { NATIVE_LOADER_JS_POSTFIX_UNCACHED } from \"../constants\";\nimport {\n encodeReservedFilenameChars,\n getLoaderPath,\n getPreloadCSSPath,\n getPreloadPath\n} from \"../utils/cleanUrl\";\nimport { isResponse } from \"../utils/isResponse\";\nimport { toAbsolute, toAbsoluteUrl } from \"../utils/toAbsolute\";\nimport { getRouteExports } from \"./serverRouteModules\";\nconst { outputFile } = FSExtra;\nfunction urlPathToFilePath(urlPath) {\n const parts = urlPath.replace(/^\\//, \"\").split(\"/\");\n return join(...parts);\n}\nconst buildTiming = process.env.ONE_BUILD_TIMING === \"1\";\nconst timings = {};\nfunction recordTiming(label, ms) {\n if (!buildTiming) return;\n (timings[label] ||= []).push(ms);\n}\nfunction printBuildTimings() {\n if (!buildTiming) return;\n console.info(\"\\n\\u{1F4CA} Build timing breakdown:\");\n for (const [label, times] of Object.entries(timings)) {\n const total = times.reduce((a, b) => a + b, 0);\n const avg = total / times.length;\n console.info(\n ` ${label}: ${avg.toFixed(1)}ms avg, ${total.toFixed(0)}ms total (${times.length} calls)`\n );\n }\n}\nasync function buildPage(serverEntry, routerRoot, path, relativeId, params, foundRoute, clientManifestEntry, staticDir, clientDir, builtMiddlewares, serverJsPath, preloads, allCSS, layoutCSS, routePreloads, allCSSContents, criticalPreloads, deferredPreloads, useAfterLCP, useAfterLCPAggressive) {\n let t0 = performance.now();\n const render = await getRender(serverEntry);\n recordTiming(\"getRender\", performance.now() - t0);\n const htmlPath = encodeReservedFilenameChars(\n `${path.endsWith(\"/\") ? `${removeTrailingSlash(path)}/index` : path}.html`\n );\n const clientJsPath = clientManifestEntry ? normalizePath(join(clientDir, clientManifestEntry.file)) : \"\";\n const htmlOutPath = toAbsolute(join(staticDir, htmlPath));\n const preloadPath = getPreloadPath(path);\n const cssPreloadPath = getPreloadCSSPath(path);\n let loaderPath = \"\";\n let loaderData = {};\n try {\n const routeImports = [];\n const routeRegistrations = [];\n let routeIndex = 0;\n for (const [routeKey, bundlePath] of Object.entries(routePreloads)) {\n const varName = `_r${routeIndex++}`;\n routeImports.push(`import * as ${varName} from \"${bundlePath}\"`);\n routeRegistrations.push(`registerPreloadedRoute(\"${routeKey}\", ${varName})`);\n }\n const registrationCalls = routeRegistrations.map(\n (call) => call.replace(\"registerPreloadedRoute(\", \"window.__oneRegisterPreloadedRoute(\")\n );\n const preloadContent = [\n // import all route modules\n ...routeImports,\n // static imports for cache warming (original behavior)\n ...preloads.map((preload) => `import \"${preload}\"`),\n // register all route modules using window global\n ...registrationCalls\n ].join(\"\\n\");\n t0 = performance.now();\n await FSExtra.writeFile(\n join(clientDir, urlPathToFilePath(preloadPath)),\n preloadContent\n );\n recordTiming(\"writePreload\", performance.now() - t0);\n const uniqueCSS = [...new Set(allCSS)];\n const cssPreloadContent = `\nconst CSS_TIMEOUT = 1000\nconst cssUrls = ${JSON.stringify(uniqueCSS)}\n\n// Global cache for loaded CSS - avoids DOM queries and tracks across navigations\nconst loaded = (window.__oneLoadedCSS ||= new Set())\n\n// Prefetch CSS without applying - called on link hover\nexport function prefetchCSS() {\n cssUrls.forEach(href => {\n if (loaded.has(href)) return\n if (document.querySelector(\\`link[href=\"\\${href}\"]\\`)) return\n const link = document.createElement('link')\n link.rel = 'prefetch'\n link.as = 'style'\n link.href = href\n document.head.appendChild(link)\n })\n}\n\n// Inject CSS to apply styles - called on actual navigation\nexport function injectCSS() {\n return Promise.all(cssUrls.map(href => {\n // Skip if already loaded\n if (loaded.has(href)) return Promise.resolve()\n // Remove any prefetch link for this href\n const prefetchLink = document.querySelector(\\`link[rel=\"prefetch\"][href=\"\\${href}\"]\\`)\n if (prefetchLink) prefetchLink.remove()\n // Skip if stylesheet already exists in DOM\n if (document.querySelector(\\`link[rel=\"stylesheet\"][href=\"\\${href}\"]\\`)) {\n loaded.add(href)\n return Promise.resolve()\n }\n return new Promise(resolve => {\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = href\n const timeoutId = setTimeout(() => {\n console.warn('[one] CSS load timeout:', href)\n loaded.add(href)\n resolve()\n }, CSS_TIMEOUT)\n link.onload = link.onerror = () => {\n clearTimeout(timeoutId)\n loaded.add(href)\n resolve()\n }\n document.head.appendChild(link)\n })\n }))\n}\n\n// For backwards compatibility, also prefetch on import\nprefetchCSS()\n`;\n t0 = performance.now();\n await FSExtra.writeFile(\n join(clientDir, urlPathToFilePath(cssPreloadPath)),\n cssPreloadContent\n );\n recordTiming(\"writeCSSPreload\", performance.now() - t0);\n t0 = performance.now();\n const exported = await getRouteExports(serverEntry, routerRoot, foundRoute.file);\n recordTiming(\"importServerModule\", performance.now() - t0);\n const loaderProps = { path, params };\n const matches = [];\n t0 = performance.now();\n if (foundRoute.layouts?.length) {\n const layoutResults = await Promise.all(\n foundRoute.layouts.map(async (layout) => {\n try {\n if (!layout.loaderServerPath) {\n return { contextKey: layout.contextKey, loaderData: void 0 };\n }\n const layoutExported = await getRouteExports(\n serverEntry,\n routerRoot,\n layout.contextKey\n );\n const layoutLoaderData = await layoutExported?.loader?.(loaderProps);\n return { contextKey: layout.contextKey, loaderData: layoutLoaderData };\n } catch (err) {\n if (isResponse(err)) {\n throw err;\n }\n console.warn(\n `[one] Warning: layout loader failed for ${layout.contextKey}:`,\n err\n );\n return { contextKey: layout.contextKey, loaderData: void 0 };\n }\n })\n );\n for (const result of layoutResults) {\n matches.push({\n routeId: result.contextKey,\n pathname: path,\n params: params || {},\n loaderData: result.loaderData\n });\n }\n }\n recordTiming(\"layoutLoaders\", performance.now() - t0);\n t0 = performance.now();\n let loaderRedirectInfo = null;\n if (exported.loader && foundRoute.type !== \"ssr\") {\n try {\n loaderData = await exported.loader?.(loaderProps) ?? null;\n } catch (err) {\n if (isResponse(err)) {\n loaderRedirectInfo = extractRedirectInfo(err);\n } else {\n throw err;\n }\n }\n if (!loaderRedirectInfo && loaderData && (isResponse(loaderData) || loaderData instanceof Response || loaderData?.constructor?.name === \"Response\")) {\n loaderRedirectInfo = extractRedirectInfo(loaderData);\n loaderData = {};\n }\n if (clientJsPath) {\n const loaderPartialPath = join(clientDir, urlPathToFilePath(getLoaderPath(path)));\n const uncachedNativePath = loaderPartialPath.replace(\n constants.LOADER_JS_POSTFIX,\n NATIVE_LOADER_JS_POSTFIX_UNCACHED\n );\n if (loaderRedirectInfo) {\n const redirectData = JSON.stringify({\n __oneRedirect: loaderRedirectInfo.path,\n __oneRedirectStatus: loaderRedirectInfo.status\n });\n await outputFile(\n loaderPartialPath,\n `export function loader(){return ${redirectData}}`\n );\n const nativeCjs = `exports.loader = function(){return ${redirectData}}`;\n await outputFile(loaderPartialPath.replace(/\\.js$/, \".native.js\"), nativeCjs);\n await outputFile(uncachedNativePath, nativeCjs);\n loaderPath = getLoaderPath(path);\n loaderData = {};\n } else {\n const data = JSON.stringify(loaderData);\n await outputFile(loaderPartialPath, `export function loader(){return ${data}}`);\n const nativeCjs = `exports.loader = function(){return ${data}}`;\n await outputFile(loaderPartialPath.replace(/\\.js$/, \".native.js\"), nativeCjs);\n await outputFile(uncachedNativePath, nativeCjs);\n loaderPath = getLoaderPath(path);\n }\n }\n }\n if (!exported.loader && foundRoute.type === \"spa\") {\n const loaderPartialPath = join(clientDir, urlPathToFilePath(getLoaderPath(path)));\n await outputFile(loaderPartialPath, \"export function loader() { return undefined }\");\n loaderPath = getLoaderPath(path);\n }\n recordTiming(\"pageLoader\", performance.now() - t0);\n matches.push({\n routeId: foundRoute.file,\n pathname: path,\n params: params || {},\n loaderData\n });\n if (foundRoute.type !== \"ssr\") {\n globalThis[\"__vxrnresetState\"]?.();\n if (foundRoute.type === \"ssg\") {\n const renderPreloads = useAfterLCPAggressive ? [] : criticalPreloads || preloads;\n const renderDeferredPreloads = useAfterLCPAggressive ? [] : deferredPreloads;\n t0 = performance.now();\n let html = await render({\n path,\n preloads: renderPreloads,\n deferredPreloads: renderDeferredPreloads,\n loaderProps,\n loaderData,\n css: allCSS,\n cssContents: allCSSContents,\n mode: \"ssg\",\n routePreloads,\n matches\n });\n recordTiming(\"ssrRender\", performance.now() - t0);\n if (useAfterLCP) {\n html = applyAfterLCPScriptLoad(\n html,\n useAfterLCPAggressive ? criticalPreloads || preloads : preloads\n );\n }\n t0 = performance.now();\n await outputFile(htmlOutPath, html);\n recordTiming(\"writeHTML\", performance.now() - t0);\n } else if (foundRoute.type === \"spa\") {\n const needsSpaShell = foundRoute.layouts?.some(\n (layout) => layout.layoutRenderMode === \"ssg\" || layout.layoutRenderMode === \"ssr\"\n );\n if (needsSpaShell) {\n globalThis[\"__vxrnresetState\"]?.();\n const renderPreloads = criticalPreloads || preloads;\n const renderDeferredPreloads = deferredPreloads || [];\n const layoutMatches = matches.slice(0, -1);\n t0 = performance.now();\n let html = await render({\n path,\n preloads: renderPreloads,\n deferredPreloads: renderDeferredPreloads,\n loaderProps,\n // don't pass loaderData for spa-shell - the page loader runs on client\n // passing {} here would make useLoaderState think data is preloaded\n loaderData: void 0,\n css: allCSS,\n cssContents: allCSSContents,\n mode: \"spa-shell\",\n routePreloads,\n matches: layoutMatches\n });\n recordTiming(\"spaShellRender\", performance.now() - t0);\n if (useAfterLCP) {\n html = applyAfterLCPScriptLoad(\n html,\n useAfterLCPAggressive ? criticalPreloads || preloads : preloads\n );\n }\n t0 = performance.now();\n await outputFile(htmlOutPath, html);\n recordTiming(\"writeHTML\", performance.now() - t0);\n } else {\n let renderCSSTag = function(file, index) {\n const content = allCSSContents?.[index];\n if (content) {\n return ` <style>${content}</style>`;\n }\n return ` <link rel=\"stylesheet\" href=${file} />`;\n };\n const layoutCSSSet = new Set(layoutCSS);\n const layoutCssOutput = allCSS.map((file, i) => layoutCSSSet.has(file) ? renderCSSTag(file, i) : \"\").filter(Boolean).join(\"\\n\");\n const pageCssOutput = allCSS.map((file, i) => !layoutCSSSet.has(file) ? renderCSSTag(file, i) : \"\").filter(Boolean).join(\"\\n\");\n const criticalScripts = (criticalPreloads || preloads).map((preload) => ` <script type=\"module\" src=\"${preload}\"></script>`).join(\"\\n\");\n await outputFile(\n htmlOutPath,\n `<!DOCTYPE html><html><head>\n ${constants.getSpaHeaderElements({ serverContext: { loaderProps, loaderData } })}\n ${layoutCssOutput}\n ${criticalScripts}\n ${pageCssOutput}\n </head><body></body></html>`\n );\n }\n }\n }\n } catch (err) {\n const errMsg = err instanceof Error ? `${err.message}\n${err.stack}` : `${err}`;\n console.error(\n `Error building static page at ${path} with id ${relativeId}:\n\n${errMsg}\n\nloaderData:\n\n${JSON.stringify(loaderData || null, null, 2)}\nparams:\n\n${JSON.stringify(params || null, null, 2)}`\n );\n console.error(err);\n throw err;\n }\n const middlewares = (foundRoute.middlewares || []).map(\n (x) => builtMiddlewares[x.contextKey]\n );\n const cleanPath = path === \"/\" ? path : removeTrailingSlash(path);\n return {\n type: foundRoute.type,\n css: allCSS,\n layoutCSS,\n cssContents: allCSSContents,\n routeFile: foundRoute.file,\n middlewares,\n cleanPath,\n preloadPath,\n cssPreloadPath,\n loaderPath,\n clientJsPath,\n serverJsPath: foundRoute.type === \"spa\" ? \"\" : serverJsPath,\n htmlPath,\n loaderData,\n params,\n path,\n preloads,\n criticalPreloads,\n deferredPreloads\n };\n}\nasync function getRender(serverEntry) {\n try {\n const serverImport = await import(toAbsoluteUrl(serverEntry));\n const render = serverImport.default.render || // for an unknown reason this is necessary\n serverImport.default.default?.render;\n if (typeof render !== \"function\") {\n throw new Error(`didn't find render function in entry: ${serverEntry}`);\n }\n return render;\n } catch (err) {\n console.error(`\\u274C Error importing the root entry:`);\n console.error(` This error happened in the built file: ${serverEntry}`);\n console.error(err[\"stack\"]);\n throw err;\n }\n}\nfunction removeTrailingSlash(path) {\n return path.endsWith(\"/\") ? path.slice(0, path.length - 1) : path;\n}\nfunction extractRedirectInfo(response) {\n if (response.status >= 300 && response.status < 400) {\n const location = response.headers.get(\"location\");\n if (location) {\n try {\n const url = new URL(location);\n return {\n path: url.pathname + url.search + url.hash,\n status: response.status\n };\n } catch {\n return { path: location, status: response.status };\n }\n }\n }\n return null;\n}\nfunction applyAfterLCPScriptLoad(html, preloads) {\n html = html.replace(/<script\\s+type=\"module\"[^>]*async[^>]*><\\/script>/gi, \"\");\n const loaderScript = `\n<script>\n(function() {\n var scripts = ${JSON.stringify(preloads)};\n function loadScripts() {\n scripts.forEach(function(src) {\n var script = document.createElement('script');\n script.type = 'module';\n script.src = src;\n document.head.appendChild(script);\n });\n }\n function waitIdle(n) {\n if (n <= 0) {\n requestAnimationFrame(function() {\n requestAnimationFrame(loadScripts);\n });\n return;\n }\n setTimeout(function() {\n setTimeout(function() {\n waitIdle(n - 1);\n }, 0);\n }, 0);\n }\n waitIdle(5);\n})();\n</script>`;\n html = html.replace(\"</head>\", `${loaderScript}</head>`);\n return html;\n}\nexport {\n buildPage,\n printBuildTimings\n};\n//# sourceMappingURL=buildPage.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buildPage.js","names":[],"sources":["esm/cli/buildPage.js"],"sourcesContent":["import { join } from \"node:path\";\nimport FSExtra from \"fs-extra\";\nimport { normalizePath } from \"vite\";\nimport * as constants from \"../constants\";\nimport { NATIVE_LOADER_JS_POSTFIX_UNCACHED } from \"../constants\";\nimport {\n encodeReservedFilenameChars,\n getLoaderPath,\n getPreloadCSSPath,\n getPreloadPath\n} from \"../utils/cleanUrl\";\nimport { isResponse } from \"../utils/isResponse\";\nimport { toAbsolute, toAbsoluteUrl } from \"../utils/toAbsolute\";\nimport { getRouteExports } from \"./serverRouteModules\";\nconst { outputFile } = FSExtra;\nfunction urlPathToFilePath(urlPath) {\n const parts = urlPath.replace(/^\\//, \"\").split(\"/\");\n return join(...parts);\n}\nconst buildTiming = process.env.ONE_BUILD_TIMING === \"1\";\nconst timings = {};\nfunction recordTiming(label, ms) {\n if (!buildTiming) return;\n (timings[label] ||= []).push(ms);\n}\nfunction printBuildTimings() {\n if (!buildTiming) return;\n console.info(\"\\n\\u{1F4CA} Build timing breakdown:\");\n for (const [label, times] of Object.entries(timings)) {\n const total = times.reduce((a, b) => a + b, 0);\n const avg = total / times.length;\n console.info(\n ` ${label}: ${avg.toFixed(1)}ms avg, ${total.toFixed(0)}ms total (${times.length} calls)`\n );\n }\n}\nasync function buildPage(serverEntry, routerRoot, path, relativeId, params, foundRoute, clientManifestEntry, staticDir, clientDir, builtMiddlewares, serverJsPath, preloads, allCSS, layoutCSS, routePreloads, allCSSContents, criticalPreloads, deferredPreloads, useAfterLCP, useAfterLCPAggressive) {\n let t0 = performance.now();\n const render = await getRender(serverEntry);\n recordTiming(\"getRender\", performance.now() - t0);\n const htmlPath = encodeReservedFilenameChars(\n `${path.endsWith(\"/\") ? `${removeTrailingSlash(path)}/index` : path}.html`\n );\n const clientJsPath = clientManifestEntry ? normalizePath(join(clientDir, clientManifestEntry.file)) : \"\";\n const htmlOutPath = toAbsolute(join(staticDir, htmlPath));\n const preloadPath = getPreloadPath(path);\n const cssPreloadPath = getPreloadCSSPath(path);\n let loaderPath = \"\";\n let loaderData = {};\n try {\n const preloadContent = [\n // static imports for cache warming\n ...preloads.map((preload) => `import \"${preload}\"`),\n `const routes = globalThis.__importMetaGlobbed`,\n `await Promise.all(${JSON.stringify(routePreloads)}.map((key) => routes[key]().then((mod) => window.__oneRegisterPreloadedRoute(key, mod))))`\n ].join(\"\\n\");\n t0 = performance.now();\n await FSExtra.writeFile(\n join(clientDir, urlPathToFilePath(preloadPath)),\n preloadContent\n );\n recordTiming(\"writePreload\", performance.now() - t0);\n const uniqueCSS = [...new Set(allCSS)];\n const cssPreloadContent = `\nconst CSS_TIMEOUT = 1000\nconst cssUrls = ${JSON.stringify(uniqueCSS)}\n\n// Global cache for loaded CSS - avoids DOM queries and tracks across navigations\nconst loaded = (window.__oneLoadedCSS ||= new Set())\n\n// Prefetch CSS without applying - called on link hover\nexport function prefetchCSS() {\n cssUrls.forEach(href => {\n if (loaded.has(href)) return\n if (document.querySelector(\\`link[href=\"\\${href}\"]\\`)) return\n const link = document.createElement('link')\n link.rel = 'prefetch'\n link.as = 'style'\n link.href = href\n document.head.appendChild(link)\n })\n}\n\n// Inject CSS to apply styles - called on actual navigation\nexport function injectCSS() {\n return Promise.all(cssUrls.map(href => {\n // Skip if already loaded\n if (loaded.has(href)) return Promise.resolve()\n // Remove any prefetch link for this href\n const prefetchLink = document.querySelector(\\`link[rel=\"prefetch\"][href=\"\\${href}\"]\\`)\n if (prefetchLink) prefetchLink.remove()\n // Skip if stylesheet already exists in DOM\n if (document.querySelector(\\`link[rel=\"stylesheet\"][href=\"\\${href}\"]\\`)) {\n loaded.add(href)\n return Promise.resolve()\n }\n return new Promise(resolve => {\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = href\n const timeoutId = setTimeout(() => {\n console.warn('[one] CSS load timeout:', href)\n loaded.add(href)\n resolve()\n }, CSS_TIMEOUT)\n link.onload = link.onerror = () => {\n clearTimeout(timeoutId)\n loaded.add(href)\n resolve()\n }\n document.head.appendChild(link)\n })\n }))\n}\n\n// For backwards compatibility, also prefetch on import\nprefetchCSS()\n`;\n t0 = performance.now();\n await FSExtra.writeFile(\n join(clientDir, urlPathToFilePath(cssPreloadPath)),\n cssPreloadContent\n );\n recordTiming(\"writeCSSPreload\", performance.now() - t0);\n t0 = performance.now();\n const exported = await getRouteExports(serverEntry, routerRoot, foundRoute.file);\n recordTiming(\"importServerModule\", performance.now() - t0);\n const loaderProps = { path, params };\n const matches = [];\n t0 = performance.now();\n if (foundRoute.layouts?.length) {\n const layoutResults = await Promise.all(\n foundRoute.layouts.map(async (layout) => {\n try {\n if (!layout.loaderServerPath) {\n return { contextKey: layout.contextKey, loaderData: void 0 };\n }\n const layoutExported = await getRouteExports(\n serverEntry,\n routerRoot,\n layout.contextKey\n );\n const layoutLoaderData = await layoutExported?.loader?.(loaderProps);\n return { contextKey: layout.contextKey, loaderData: layoutLoaderData };\n } catch (err) {\n if (isResponse(err)) {\n throw err;\n }\n console.warn(\n `[one] Warning: layout loader failed for ${layout.contextKey}:`,\n err\n );\n return { contextKey: layout.contextKey, loaderData: void 0 };\n }\n })\n );\n for (const result of layoutResults) {\n matches.push({\n routeId: result.contextKey,\n pathname: path,\n params: params || {},\n loaderData: result.loaderData\n });\n }\n }\n recordTiming(\"layoutLoaders\", performance.now() - t0);\n t0 = performance.now();\n let loaderRedirectInfo = null;\n if (exported.loader && foundRoute.type !== \"ssr\") {\n try {\n loaderData = await exported.loader?.(loaderProps) ?? null;\n } catch (err) {\n if (isResponse(err)) {\n loaderRedirectInfo = extractRedirectInfo(err);\n } else {\n throw err;\n }\n }\n if (!loaderRedirectInfo && loaderData && (isResponse(loaderData) || loaderData instanceof Response || loaderData?.constructor?.name === \"Response\")) {\n loaderRedirectInfo = extractRedirectInfo(loaderData);\n loaderData = {};\n }\n if (clientJsPath) {\n const loaderPartialPath = join(clientDir, urlPathToFilePath(getLoaderPath(path)));\n const uncachedNativePath = loaderPartialPath.replace(\n constants.LOADER_JS_POSTFIX,\n NATIVE_LOADER_JS_POSTFIX_UNCACHED\n );\n if (loaderRedirectInfo) {\n const redirectData = JSON.stringify({\n __oneRedirect: loaderRedirectInfo.path,\n __oneRedirectStatus: loaderRedirectInfo.status\n });\n await outputFile(\n loaderPartialPath,\n `export function loader(){return ${redirectData}}`\n );\n const nativeCjs = `exports.loader = function(){return ${redirectData}}`;\n await outputFile(loaderPartialPath.replace(/\\.js$/, \".native.js\"), nativeCjs);\n await outputFile(uncachedNativePath, nativeCjs);\n loaderPath = getLoaderPath(path);\n loaderData = {};\n } else {\n const data = JSON.stringify(loaderData);\n await outputFile(loaderPartialPath, `export function loader(){return ${data}}`);\n const nativeCjs = `exports.loader = function(){return ${data}}`;\n await outputFile(loaderPartialPath.replace(/\\.js$/, \".native.js\"), nativeCjs);\n await outputFile(uncachedNativePath, nativeCjs);\n loaderPath = getLoaderPath(path);\n }\n }\n }\n if (!exported.loader && foundRoute.type === \"spa\") {\n const loaderPartialPath = join(clientDir, urlPathToFilePath(getLoaderPath(path)));\n await outputFile(loaderPartialPath, \"export function loader() { return undefined }\");\n loaderPath = getLoaderPath(path);\n }\n recordTiming(\"pageLoader\", performance.now() - t0);\n matches.push({\n routeId: foundRoute.file,\n pathname: path,\n params: params || {},\n loaderData\n });\n if (foundRoute.type !== \"ssr\") {\n globalThis[\"__vxrnresetState\"]?.();\n if (foundRoute.type === \"ssg\") {\n const renderPreloads = useAfterLCPAggressive ? [] : criticalPreloads || preloads;\n const renderDeferredPreloads = useAfterLCPAggressive ? [] : deferredPreloads;\n t0 = performance.now();\n let html = await render({\n path,\n preloads: renderPreloads,\n deferredPreloads: renderDeferredPreloads,\n loaderProps,\n loaderData,\n css: allCSS,\n cssContents: allCSSContents,\n mode: \"ssg\",\n routePreloads,\n matches\n });\n recordTiming(\"ssrRender\", performance.now() - t0);\n if (useAfterLCP) {\n html = applyAfterLCPScriptLoad(\n html,\n useAfterLCPAggressive ? criticalPreloads || preloads : preloads\n );\n }\n t0 = performance.now();\n await outputFile(htmlOutPath, html);\n recordTiming(\"writeHTML\", performance.now() - t0);\n } else if (foundRoute.type === \"spa\") {\n const needsSpaShell = foundRoute.layouts?.some(\n (layout) => layout.layoutRenderMode === \"ssg\" || layout.layoutRenderMode === \"ssr\"\n );\n if (needsSpaShell) {\n globalThis[\"__vxrnresetState\"]?.();\n const renderPreloads = criticalPreloads || preloads;\n const renderDeferredPreloads = deferredPreloads || [];\n const layoutMatches = matches.slice(0, -1);\n t0 = performance.now();\n let html = await render({\n path,\n preloads: renderPreloads,\n deferredPreloads: renderDeferredPreloads,\n loaderProps,\n // don't pass loaderData for spa-shell - the page loader runs on client\n // passing {} here would make useLoaderState think data is preloaded\n loaderData: void 0,\n css: allCSS,\n cssContents: allCSSContents,\n mode: \"spa-shell\",\n routePreloads,\n matches: layoutMatches\n });\n recordTiming(\"spaShellRender\", performance.now() - t0);\n if (useAfterLCP) {\n html = applyAfterLCPScriptLoad(\n html,\n useAfterLCPAggressive ? criticalPreloads || preloads : preloads\n );\n }\n t0 = performance.now();\n await outputFile(htmlOutPath, html);\n recordTiming(\"writeHTML\", performance.now() - t0);\n } else {\n let renderCSSTag = function(file, index) {\n const content = allCSSContents?.[index];\n if (content) {\n return ` <style>${content}</style>`;\n }\n return ` <link rel=\"stylesheet\" href=${file} />`;\n };\n const layoutCSSSet = new Set(layoutCSS);\n const layoutCssOutput = allCSS.map((file, i) => layoutCSSSet.has(file) ? renderCSSTag(file, i) : \"\").filter(Boolean).join(\"\\n\");\n const pageCssOutput = allCSS.map((file, i) => !layoutCSSSet.has(file) ? renderCSSTag(file, i) : \"\").filter(Boolean).join(\"\\n\");\n const criticalScripts = (criticalPreloads || preloads).map((preload) => ` <script type=\"module\" src=\"${preload}\"></script>`).join(\"\\n\");\n await outputFile(\n htmlOutPath,\n `<!DOCTYPE html><html><head>\n ${constants.getSpaHeaderElements({ serverContext: { loaderProps, loaderData } })}\n ${layoutCssOutput}\n ${criticalScripts}\n ${pageCssOutput}\n </head><body></body></html>`\n );\n }\n }\n }\n } catch (err) {\n const errMsg = err instanceof Error ? `${err.message}\n${err.stack}` : `${err}`;\n console.error(\n `Error building static page at ${path} with id ${relativeId}:\n\n${errMsg}\n\nloaderData:\n\n${JSON.stringify(loaderData || null, null, 2)}\nparams:\n\n${JSON.stringify(params || null, null, 2)}`\n );\n console.error(err);\n throw err;\n }\n const middlewares = (foundRoute.middlewares || []).map(\n (x) => builtMiddlewares[x.contextKey]\n );\n const cleanPath = path === \"/\" ? path : removeTrailingSlash(path);\n return {\n type: foundRoute.type,\n css: allCSS,\n layoutCSS,\n cssContents: allCSSContents,\n routeFile: foundRoute.file,\n middlewares,\n cleanPath,\n preloadPath,\n cssPreloadPath,\n loaderPath,\n clientJsPath,\n serverJsPath: foundRoute.type === \"spa\" ? \"\" : serverJsPath,\n htmlPath,\n loaderData,\n params,\n path,\n preloads,\n criticalPreloads,\n deferredPreloads\n };\n}\nasync function getRender(serverEntry) {\n try {\n const serverImport = await import(toAbsoluteUrl(serverEntry));\n const render = serverImport.default.render || // for an unknown reason this is necessary\n serverImport.default.default?.render;\n if (typeof render !== \"function\") {\n throw new Error(`didn't find render function in entry: ${serverEntry}`);\n }\n return render;\n } catch (err) {\n console.error(`\\u274C Error importing the root entry:`);\n console.error(` This error happened in the built file: ${serverEntry}`);\n console.error(err[\"stack\"]);\n throw err;\n }\n}\nfunction removeTrailingSlash(path) {\n return path.endsWith(\"/\") ? path.slice(0, path.length - 1) : path;\n}\nfunction extractRedirectInfo(response) {\n if (response.status >= 300 && response.status < 400) {\n const location = response.headers.get(\"location\");\n if (location) {\n try {\n const url = new URL(location);\n return {\n path: url.pathname + url.search + url.hash,\n status: response.status\n };\n } catch {\n return { path: location, status: response.status };\n }\n }\n }\n return null;\n}\nfunction applyAfterLCPScriptLoad(html, preloads) {\n html = html.replace(/<script\\s+type=\"module\"[^>]*async[^>]*><\\/script>/gi, \"\");\n const loaderScript = `\n<script>\n(function() {\n var scripts = ${JSON.stringify(preloads)};\n function loadScripts() {\n scripts.forEach(function(src) {\n var script = document.createElement('script');\n script.type = 'module';\n script.src = src;\n document.head.appendChild(script);\n });\n }\n function waitIdle(n) {\n if (n <= 0) {\n requestAnimationFrame(function() {\n requestAnimationFrame(loadScripts);\n });\n return;\n }\n setTimeout(function() {\n setTimeout(function() {\n waitIdle(n - 1);\n }, 0);\n }, 0);\n }\n waitIdle(5);\n})();\n</script>`;\n html = html.replace(\"</head>\", `${loaderScript}</head>`);\n return html;\n}\nexport {\n buildPage,\n printBuildTimings\n};\n//# sourceMappingURL=buildPage.js.map\n"],"mappings":";;;;;;;;;;;AAcA,MAAM,EAAE,eAAe;AACvB,SAAS,kBAAkB,SAAS;CAClC,MAAM,QAAQ,QAAQ,QAAQ,OAAO,EAAE,CAAC,CAAC,MAAM,GAAG;CAClD,OAAO,KAAK,GAAG,KAAK;AACtB;AACA,MAAM,cAAc,QAAQ,IAAI,qBAAqB;AACrD,MAAM,UAAU,CAAC;AACjB,SAAS,aAAa,OAAO,IAAI;CAC/B,IAAI,CAAC,aAAa;CAClB,CAAC,QAAQ,WAAW,CAAC,EAAC,CAAE,KAAK,EAAE;AACjC;AACA,SAAS,oBAAoB;CAC3B,IAAI,CAAC,aAAa;CAClB,QAAQ,KAAK,8BAAqC;CAClD,KAAK,MAAM,CAAC,OAAO,UAAU,OAAO,QAAQ,OAAO,GAAG;EACpD,MAAM,QAAQ,MAAM,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC;EAC7C,MAAM,MAAM,QAAQ,MAAM;EAC1B,QAAQ,KACN,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,EAAE,UAAU,MAAM,QAAQ,CAAC,EAAE,YAAY,MAAM,OAAO,QACpF;CACF;AACF;AACA,eAAe,UAAU,aAAa,YAAY,MAAM,YAAY,QAAQ,YAAY,qBAAqB,WAAW,WAAW,kBAAkB,cAAc,UAAU,QAAQ,WAAW,eAAe,gBAAgB,kBAAkB,kBAAkB,aAAa,uBAAuB;CACrS,IAAI,KAAK,YAAY,IAAI;CACzB,MAAM,SAAS,MAAM,UAAU,WAAW;CAC1C,aAAa,aAAa,YAAY,IAAI,IAAI,EAAE;CAChD,MAAM,WAAW,4BACf,GAAG,KAAK,SAAS,GAAG,IAAI,GAAG,oBAAoB,IAAI,EAAE,UAAU,KAAK,MACtE;CACA,MAAM,eAAe,sBAAsB,cAAc,KAAK,WAAW,oBAAoB,IAAI,CAAC,IAAI;CACtG,MAAM,cAAc,WAAW,KAAK,WAAW,QAAQ,CAAC;CACxD,MAAM,cAAc,eAAe,IAAI;CACvC,MAAM,iBAAiB,kBAAkB,IAAI;CAC7C,IAAI,aAAa;CACjB,IAAI,aAAa,CAAC;CAClB,IAAI;EACF,MAAM,iBAAiB;GAErB,GAAG,SAAS,KAAK,YAAY,WAAW,QAAQ,EAAE;GAClD;GACA,qBAAqB,KAAK,UAAU,aAAa,EAAE;EACrD,CAAC,CAAC,KAAK,IAAI;EACX,KAAK,YAAY,IAAI;EACrB,MAAM,QAAQ,UACZ,KAAK,WAAW,kBAAkB,WAAW,CAAC,GAC9C,cACF;EACA,aAAa,gBAAgB,YAAY,IAAI,IAAI,EAAE;EACnD,MAAM,YAAY,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC;EACrC,MAAM,oBAAoB;;kBAEZ,KAAK,UAAU,SAAS,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDxC,KAAK,YAAY,IAAI;EACrB,MAAM,QAAQ,UACZ,KAAK,WAAW,kBAAkB,cAAc,CAAC,GACjD,iBACF;EACA,aAAa,mBAAmB,YAAY,IAAI,IAAI,EAAE;EACtD,KAAK,YAAY,IAAI;EACrB,MAAM,WAAW,MAAM,gBAAgB,aAAa,YAAY,WAAW,IAAI;EAC/E,aAAa,sBAAsB,YAAY,IAAI,IAAI,EAAE;EACzD,MAAM,cAAc;GAAE;GAAM;EAAO;EACnC,MAAM,UAAU,CAAC;EACjB,KAAK,YAAY,IAAI;EACrB,IAAI,WAAW,SAAS,QAAQ;GAC9B,MAAM,gBAAgB,MAAM,QAAQ,IAClC,WAAW,QAAQ,IAAI,OAAO,WAAW;IACvC,IAAI;KACF,IAAI,CAAC,OAAO,kBAAkB;MAC5B,OAAO;OAAE,YAAY,OAAO;OAAY,YAAY,KAAK;MAAE;KAC7D;KACA,MAAM,iBAAiB,MAAM,gBAC3B,aACA,YACA,OAAO,UACT;KACA,MAAM,mBAAmB,MAAM,gBAAgB,SAAS,WAAW;KACnE,OAAO;MAAE,YAAY,OAAO;MAAY,YAAY;KAAiB;IACvE,SAAS,KAAK;KACZ,IAAI,WAAW,GAAG,GAAG;MACnB,MAAM;KACR;KACA,QAAQ,KACN,2CAA2C,OAAO,WAAW,IAC7D,GACF;KACA,OAAO;MAAE,YAAY,OAAO;MAAY,YAAY,KAAK;KAAE;IAC7D;GACF,CAAC,CACH;GACA,KAAK,MAAM,UAAU,eAAe;IAClC,QAAQ,KAAK;KACX,SAAS,OAAO;KAChB,UAAU;KACV,QAAQ,UAAU,CAAC;KACnB,YAAY,OAAO;IACrB,CAAC;GACH;EACF;EACA,aAAa,iBAAiB,YAAY,IAAI,IAAI,EAAE;EACpD,KAAK,YAAY,IAAI;EACrB,IAAI,qBAAqB;EACzB,IAAI,SAAS,UAAU,WAAW,SAAS,OAAO;GAChD,IAAI;IACF,aAAa,MAAM,SAAS,SAAS,WAAW,KAAK;GACvD,SAAS,KAAK;IACZ,IAAI,WAAW,GAAG,GAAG;KACnB,qBAAqB,oBAAoB,GAAG;IAC9C,OAAO;KACL,MAAM;IACR;GACF;GACA,IAAI,CAAC,sBAAsB,eAAe,WAAW,UAAU,KAAK,sBAAsB,YAAY,YAAY,aAAa,SAAS,aAAa;IACnJ,qBAAqB,oBAAoB,UAAU;IACnD,aAAa,CAAC;GAChB;GACA,IAAI,cAAc;IAChB,MAAM,oBAAoB,KAAK,WAAW,kBAAkB,cAAc,IAAI,CAAC,CAAC;IAChF,MAAM,qBAAqB,kBAAkB,QAC3C,UAAU,mBACV,iCACF;IACA,IAAI,oBAAoB;KACtB,MAAM,eAAe,KAAK,UAAU;MAClC,eAAe,mBAAmB;MAClC,qBAAqB,mBAAmB;KAC1C,CAAC;KACD,MAAM,WACJ,mBACA,mCAAmC,aAAa,EAClD;KACA,MAAM,YAAY,sCAAsC,aAAa;KACrE,MAAM,WAAW,kBAAkB,QAAQ,SAAS,YAAY,GAAG,SAAS;KAC5E,MAAM,WAAW,oBAAoB,SAAS;KAC9C,aAAa,cAAc,IAAI;KAC/B,aAAa,CAAC;IAChB,OAAO;KACL,MAAM,OAAO,KAAK,UAAU,UAAU;KACtC,MAAM,WAAW,mBAAmB,mCAAmC,KAAK,EAAE;KAC9E,MAAM,YAAY,sCAAsC,KAAK;KAC7D,MAAM,WAAW,kBAAkB,QAAQ,SAAS,YAAY,GAAG,SAAS;KAC5E,MAAM,WAAW,oBAAoB,SAAS;KAC9C,aAAa,cAAc,IAAI;IACjC;GACF;EACF;EACA,IAAI,CAAC,SAAS,UAAU,WAAW,SAAS,OAAO;GACjD,MAAM,oBAAoB,KAAK,WAAW,kBAAkB,cAAc,IAAI,CAAC,CAAC;GAChF,MAAM,WAAW,mBAAmB,+CAA+C;GACnF,aAAa,cAAc,IAAI;EACjC;EACA,aAAa,cAAc,YAAY,IAAI,IAAI,EAAE;EACjD,QAAQ,KAAK;GACX,SAAS,WAAW;GACpB,UAAU;GACV,QAAQ,UAAU,CAAC;GACnB;EACF,CAAC;EACD,IAAI,WAAW,SAAS,OAAO;GAC7B,WAAW,mBAAmB,GAAG;GACjC,IAAI,WAAW,SAAS,OAAO;IAC7B,MAAM,iBAAiB,wBAAwB,CAAC,IAAI,oBAAoB;IACxE,MAAM,yBAAyB,wBAAwB,CAAC,IAAI;IAC5D,KAAK,YAAY,IAAI;IACrB,IAAI,OAAO,MAAM,OAAO;KACtB;KACA,UAAU;KACV,kBAAkB;KAClB;KACA;KACA,KAAK;KACL,aAAa;KACb,MAAM;KACN;KACA;IACF,CAAC;IACD,aAAa,aAAa,YAAY,IAAI,IAAI,EAAE;IAChD,IAAI,aAAa;KACf,OAAO,wBACL,MACA,wBAAwB,oBAAoB,WAAW,QACzD;IACF;IACA,KAAK,YAAY,IAAI;IACrB,MAAM,WAAW,aAAa,IAAI;IAClC,aAAa,aAAa,YAAY,IAAI,IAAI,EAAE;GAClD,OAAO,IAAI,WAAW,SAAS,OAAO;IACpC,MAAM,gBAAgB,WAAW,SAAS,MACvC,WAAW,OAAO,qBAAqB,SAAS,OAAO,qBAAqB,KAC/E;IACA,IAAI,eAAe;KACjB,WAAW,mBAAmB,GAAG;KACjC,MAAM,iBAAiB,oBAAoB;KAC3C,MAAM,yBAAyB,oBAAoB,CAAC;KACpD,MAAM,gBAAgB,QAAQ,MAAM,GAAG,CAAC,CAAC;KACzC,KAAK,YAAY,IAAI;KACrB,IAAI,OAAO,MAAM,OAAO;MACtB;MACA,UAAU;MACV,kBAAkB;MAClB;MAGA,YAAY,KAAK;MACjB,KAAK;MACL,aAAa;MACb,MAAM;MACN;MACA,SAAS;KACX,CAAC;KACD,aAAa,kBAAkB,YAAY,IAAI,IAAI,EAAE;KACrD,IAAI,aAAa;MACf,OAAO,wBACL,MACA,wBAAwB,oBAAoB,WAAW,QACzD;KACF;KACA,KAAK,YAAY,IAAI;KACrB,MAAM,WAAW,aAAa,IAAI;KAClC,aAAa,aAAa,YAAY,IAAI,IAAI,EAAE;IAClD,OAAO;KACL,IAAI,eAAe,SAAS,MAAM,OAAO;MACvC,MAAM,UAAU,iBAAiB;MACjC,IAAI,SAAS;OACX,OAAO,cAAc,QAAQ;MAC/B;MACA,OAAO,mCAAmC,KAAK;KACjD;KACA,MAAM,eAAe,IAAI,IAAI,SAAS;KACtC,MAAM,kBAAkB,OAAO,KAAK,MAAM,MAAM,aAAa,IAAI,IAAI,IAAI,aAAa,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,IAAI;KAC9H,MAAM,gBAAgB,OAAO,KAAK,MAAM,MAAM,CAAC,aAAa,IAAI,IAAI,IAAI,aAAa,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,IAAI;KAC7H,MAAM,mBAAmB,oBAAoB,SAAQ,CAAE,KAAK,YAAY,iCAAiC,QAAQ,aAAY,CAAC,CAAC,KAAK,IAAI;KACxI,MAAM,WACJ,aACA;cACE,UAAU,qBAAqB,EAAE,eAAe;MAAE;MAAa;KAAW,EAAE,CAAC,EAAE;cAC/E,gBAAgB;cAChB,gBAAgB;cAChB,cAAc;sCAElB;IACF;GACF;EACF;CACF,SAAS,KAAK;EACZ,MAAM,SAAS,eAAe,QAAQ,GAAG,IAAI,QAAQ;EACvD,IAAI,UAAU,GAAG;EACf,QAAQ,MACN,iCAAiC,KAAK,WAAW,WAAW;;EAEhE,OAAO;;;;EAIP,KAAK,UAAU,cAAc,MAAM,MAAM,CAAC,EAAE;;;EAG5C,KAAK,UAAU,UAAU,MAAM,MAAM,CAAC,GACpC;EACA,QAAQ,MAAM,GAAG;EACjB,MAAM;CACR;CACA,MAAM,eAAe,WAAW,eAAe,CAAC,EAAC,CAAE,KAChD,MAAM,iBAAiB,EAAE,WAC5B;CACA,MAAM,YAAY,SAAS,MAAM,OAAO,oBAAoB,IAAI;CAChE,OAAO;EACL,MAAM,WAAW;EACjB,KAAK;EACL;EACA,aAAa;EACb,WAAW,WAAW;EACtB;EACA;EACA;EACA;EACA;EACA;EACA,cAAc,WAAW,SAAS,QAAQ,KAAK;EAC/C;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF;AACA,eAAe,UAAU,aAAa;CACpC,IAAI;EACF,MAAM,eAAe,MAAM,OAAO,cAAc,WAAW;EAC3D,MAAM,SAAS,aAAa,QAAQ,UACpC,aAAa,QAAQ,SAAS;EAC9B,IAAI,OAAO,WAAW,YAAY;GAChC,MAAM,IAAI,MAAM,yCAAyC,aAAa;EACxE;EACA,OAAO;CACT,SAAS,KAAK;EACZ,QAAQ,MAAM,wCAAwC;EACtD,QAAQ,MAAM,4CAA4C,aAAa;EACvE,QAAQ,MAAM,IAAI,QAAQ;EAC1B,MAAM;CACR;AACF;AACA,SAAS,oBAAoB,MAAM;CACjC,OAAO,KAAK,SAAS,GAAG,IAAI,KAAK,MAAM,GAAG,KAAK,SAAS,CAAC,IAAI;AAC/D;AACA,SAAS,oBAAoB,UAAU;CACrC,IAAI,SAAS,UAAU,OAAO,SAAS,SAAS,KAAK;EACnD,MAAM,WAAW,SAAS,QAAQ,IAAI,UAAU;EAChD,IAAI,UAAU;GACZ,IAAI;IACF,MAAM,MAAM,IAAI,IAAI,QAAQ;IAC5B,OAAO;KACL,MAAM,IAAI,WAAW,IAAI,SAAS,IAAI;KACtC,QAAQ,SAAS;IACnB;GACF,QAAQ;IACN,OAAO;KAAE,MAAM;KAAU,QAAQ,SAAS;IAAO;GACnD;EACF;CACF;CACA,OAAO;AACT;AACA,SAAS,wBAAwB,MAAM,UAAU;CAC/C,OAAO,KAAK,QAAQ,uDAAuD,EAAE;CAC7E,MAAM,eAAe;;;kBAGL,KAAK,UAAU,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;CAyBzC,OAAO,KAAK,QAAQ,WAAW,GAAG,aAAa,QAAQ;CACvD,OAAO;AACT"}
|