@absolutejs/absolute 0.16.6 → 0.16.8
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/index.js
CHANGED
|
@@ -51,7 +51,6 @@ import {
|
|
|
51
51
|
} from "path";
|
|
52
52
|
import { env } from "process";
|
|
53
53
|
var {write, file, Transpiler } = globalThis.Bun;
|
|
54
|
-
import { compile, compileModule, preprocess } from "svelte/compiler";
|
|
55
54
|
var devClientDir2, hmrClientPath3, transpiler, exists = async (path) => {
|
|
56
55
|
try {
|
|
57
56
|
await stat(path);
|
|
@@ -81,6 +80,7 @@ var devClientDir2, hmrClientPath3, transpiler, exists = async (path) => {
|
|
|
81
80
|
return jsPath;
|
|
82
81
|
return null;
|
|
83
82
|
}, compileSvelte = async (entryPoints, svelteRoot, cache = new Map, isDev = false) => {
|
|
83
|
+
const { compile, compileModule, preprocess } = await import("svelte/compiler");
|
|
84
84
|
const compiledRoot = join3(svelteRoot, "compiled");
|
|
85
85
|
const clientDir = join3(compiledRoot, "client");
|
|
86
86
|
const indexDir = join3(compiledRoot, "indexes");
|
|
@@ -219,12 +219,6 @@ __export(exports_compileVue, {
|
|
|
219
219
|
import { existsSync as existsSync4 } from "fs";
|
|
220
220
|
import { mkdir as mkdir3 } from "fs/promises";
|
|
221
221
|
import { basename as basename3, dirname as dirname2, join as join4, relative as relative3, resolve as resolve5 } from "path";
|
|
222
|
-
import {
|
|
223
|
-
parse,
|
|
224
|
-
compileScript,
|
|
225
|
-
compileTemplate,
|
|
226
|
-
compileStyle
|
|
227
|
-
} from "@vue/compiler-sfc";
|
|
228
222
|
var {file: file2, write: write2, Transpiler: Transpiler2 } = globalThis.Bun;
|
|
229
223
|
var devClientDir3, hmrClientPath4, transpiler2, scriptCache, scriptSetupCache, templateCache, styleCache, vueHmrMetadata, detectVueChangeType = (filePath, descriptor) => {
|
|
230
224
|
const prevScript = scriptCache.get(filePath);
|
|
@@ -287,7 +281,7 @@ var devClientDir3, hmrClientPath4, transpiler2, scriptCache, scriptSetupCache, t
|
|
|
287
281
|
].join(`
|
|
288
282
|
`) : nonVueLines.join(`
|
|
289
283
|
`);
|
|
290
|
-
}, compileVueFile = async (sourceFilePath, outputDirs, cacheMap, isEntryPoint, vueRootDir) => {
|
|
284
|
+
}, compileVueFile = async (sourceFilePath, outputDirs, cacheMap, isEntryPoint, vueRootDir, compiler) => {
|
|
291
285
|
const cachedResult = cacheMap.get(sourceFilePath);
|
|
292
286
|
if (cachedResult)
|
|
293
287
|
return cachedResult;
|
|
@@ -296,7 +290,9 @@ var devClientDir3, hmrClientPath4, transpiler2, scriptCache, scriptSetupCache, t
|
|
|
296
290
|
const fileBaseName = basename3(sourceFilePath, ".vue");
|
|
297
291
|
const componentId = toKebab(fileBaseName);
|
|
298
292
|
const sourceContent = await file2(sourceFilePath).text();
|
|
299
|
-
const { descriptor } = parse(sourceContent, {
|
|
293
|
+
const { descriptor } = compiler.parse(sourceContent, {
|
|
294
|
+
filename: sourceFilePath
|
|
295
|
+
});
|
|
300
296
|
const hmrId = generateVueHmrId(sourceFilePath, vueRootDir);
|
|
301
297
|
const changeType = detectVueChangeType(sourceFilePath, descriptor);
|
|
302
298
|
vueHmrMetadata.set(sourceFilePath, { hmrId, changeType });
|
|
@@ -304,14 +300,14 @@ var devClientDir3, hmrClientPath4, transpiler2, scriptCache, scriptSetupCache, t
|
|
|
304
300
|
const importPaths = extractImports(scriptSource);
|
|
305
301
|
const childComponentPaths = importPaths.filter((path) => path.startsWith(".") && path.endsWith(".vue"));
|
|
306
302
|
const helperModulePaths = importPaths.filter((path) => path.startsWith(".") && !path.endsWith(".vue"));
|
|
307
|
-
const childBuildResults = await Promise.all(childComponentPaths.map((relativeChildPath) => compileVueFile(resolve5(dirname2(sourceFilePath), relativeChildPath), outputDirs, cacheMap, false, vueRootDir)));
|
|
308
|
-
const compiledScript = compileScript(descriptor, {
|
|
303
|
+
const childBuildResults = await Promise.all(childComponentPaths.map((relativeChildPath) => compileVueFile(resolve5(dirname2(sourceFilePath), relativeChildPath), outputDirs, cacheMap, false, vueRootDir, compiler)));
|
|
304
|
+
const compiledScript = compiler.compileScript(descriptor, {
|
|
309
305
|
id: componentId,
|
|
310
306
|
inlineTemplate: false
|
|
311
307
|
});
|
|
312
308
|
const strippedScript = stripExports(compiledScript.content);
|
|
313
309
|
const transpiledScript = transpiler2.transformSync(strippedScript).replace(/(['"])(\.{1,2}\/[^'"]+)(['"])/g, (_, quoteStart, relativeImport, quoteEnd) => `${quoteStart}${toJs(relativeImport)}${quoteEnd}`);
|
|
314
|
-
const generateRenderFunction = (ssr) => compileTemplate({
|
|
310
|
+
const generateRenderFunction = (ssr) => compiler.compileTemplate({
|
|
315
311
|
compilerOptions: {
|
|
316
312
|
bindingMetadata: compiledScript.bindings,
|
|
317
313
|
prefixIdentifiers: true
|
|
@@ -323,7 +319,7 @@ var devClientDir3, hmrClientPath4, transpiler2, scriptCache, scriptSetupCache, t
|
|
|
323
319
|
ssr,
|
|
324
320
|
ssrCssVars: descriptor.cssVars
|
|
325
321
|
}).code.replace(/(['"])(\.{1,2}\/[^'"]+)(['"])/g, (_, quoteStart, relativeImport, quoteEnd) => `${quoteStart}${toJs(relativeImport)}${quoteEnd}`);
|
|
326
|
-
const localCss = descriptor.styles.map((styleBlock) => compileStyle({
|
|
322
|
+
const localCss = descriptor.styles.map((styleBlock) => compiler.compileStyle({
|
|
327
323
|
filename: sourceFilePath,
|
|
328
324
|
id: componentId,
|
|
329
325
|
scoped: styleBlock.scoped,
|
|
@@ -387,6 +383,7 @@ if (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {
|
|
|
387
383
|
cacheMap.set(sourceFilePath, result);
|
|
388
384
|
return result;
|
|
389
385
|
}, compileVue = async (entryPoints, vueRootDir, isDev = false) => {
|
|
386
|
+
const compiler = await import("@vue/compiler-sfc");
|
|
390
387
|
const compiledOutputRoot = join4(vueRootDir, "compiled");
|
|
391
388
|
const clientOutputDir = join4(compiledOutputRoot, "client");
|
|
392
389
|
const indexOutputDir = join4(compiledOutputRoot, "indexes");
|
|
@@ -405,7 +402,7 @@ if (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {
|
|
|
405
402
|
client: clientOutputDir,
|
|
406
403
|
css: cssOutputDir,
|
|
407
404
|
server: serverOutputDir
|
|
408
|
-
}, buildCache, true, vueRootDir);
|
|
405
|
+
}, buildCache, true, vueRootDir, compiler);
|
|
409
406
|
result.tsHelperPaths.forEach((path) => allTsHelperPaths.add(path));
|
|
410
407
|
const entryBaseName = basename3(entryPath, ".vue");
|
|
411
408
|
const indexOutputFile = join4(indexOutputDir, `${entryBaseName}.js`);
|
|
@@ -768,7 +765,6 @@ var exports_renderToReadableStream = {};
|
|
|
768
765
|
__export(exports_renderToReadableStream, {
|
|
769
766
|
renderToReadableStream: () => renderToReadableStream
|
|
770
767
|
});
|
|
771
|
-
import { render } from "svelte/server";
|
|
772
768
|
var renderToReadableStream = async (component, props, {
|
|
773
769
|
bootstrapScriptContent,
|
|
774
770
|
bootstrapScripts = [],
|
|
@@ -781,6 +777,7 @@ var renderToReadableStream = async (component, props, {
|
|
|
781
777
|
bodyContent
|
|
782
778
|
} = {}) => {
|
|
783
779
|
try {
|
|
780
|
+
const { render } = await import("svelte/server");
|
|
784
781
|
const { head, body } = typeof props === "undefined" ? render(component) : render(component, { props });
|
|
785
782
|
const nonceAttr = nonce ? ` nonce="${nonce}"` : "";
|
|
786
783
|
const scripts = (bootstrapScriptContent ? `<script${nonceAttr}>${escapeScriptContent(bootstrapScriptContent)}</script>` : "") + bootstrapScripts.map((src) => `<script${nonceAttr} src="${src}"></script>`).join("") + bootstrapModules.map((src) => `<script${nonceAttr} type="module" src="${src}"></script>`).join("");
|
|
@@ -3571,8 +3568,6 @@ var handleReactPageRequest = async (PageComponent, index, ...props) => {
|
|
|
3571
3568
|
};
|
|
3572
3569
|
|
|
3573
3570
|
// src/core/pageHandlers.ts
|
|
3574
|
-
init_pageHandler2();
|
|
3575
|
-
init_pageHandler();
|
|
3576
3571
|
var handleHTMLPageRequest = (pagePath) => file3(pagePath);
|
|
3577
3572
|
var handleHTMXPageRequest = (pagePath) => file3(pagePath);
|
|
3578
3573
|
// src/plugins/pageRouter.ts
|
|
@@ -3773,8 +3768,6 @@ export {
|
|
|
3773
3768
|
isValidHMRClientMessage,
|
|
3774
3769
|
hmrState,
|
|
3775
3770
|
hmr,
|
|
3776
|
-
handleVuePageRequest,
|
|
3777
|
-
handleSveltePageRequest,
|
|
3778
3771
|
handleReactPageRequest,
|
|
3779
3772
|
handleHTMXPageRequest,
|
|
3780
3773
|
handleHTMLPageRequest,
|
|
@@ -3804,5 +3797,5 @@ export {
|
|
|
3804
3797
|
BUN_BUILD_WARNING_SUPPRESSION
|
|
3805
3798
|
};
|
|
3806
3799
|
|
|
3807
|
-
//# debugId=
|
|
3800
|
+
//# debugId=AC20DDC75B328D9A64756E2164756E21
|
|
3808
3801
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"export const UNFOUND_INDEX = -1;\nexport const SECONDS_IN_A_MINUTE = 60;\nexport const MILLISECONDS_IN_A_SECOND = 1000;\nexport const MILLISECONDS_IN_A_MINUTE =\n\tMILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;\nexport const MINUTES_IN_AN_HOUR = 60;\nexport const HOURS_IN_DAY = 24;\nexport const MILLISECONDS_IN_A_DAY =\n\tMILLISECONDS_IN_A_SECOND *\n\tSECONDS_IN_A_MINUTE *\n\tMINUTES_IN_AN_HOUR *\n\tHOURS_IN_DAY;\nexport const TIME_PRECISION = 2;\nexport const TWO_THIRDS = 2 / 3;\nexport const DEFAULT_PORT = 3000;\nexport const DEFAULT_CHUNK_SIZE = 16_384;\nexport const BUN_BUILD_WARNING_SUPPRESSION =\n\t'wildcard sideEffects are not supported yet';\n",
|
|
6
6
|
"const normalizeSlug = (str: string) =>\n\tstr\n\t\t.trim()\n\t\t.replace(/\\s+/g, '-')\n\t\t.replace(/[^A-Za-z0-9\\-_]+/g, '')\n\t\t.replace(/[-_]{2,}/g, '-');\n\nexport const toPascal = (str: string) => {\n\tif (!str.includes('-') && !str.includes('_')) {\n\t\treturn str.charAt(0).toUpperCase() + str.slice(1);\n\t}\n\n\treturn normalizeSlug(str)\n\t\t.split(/[-_]/)\n\t\t.filter(Boolean)\n\t\t.map(\n\t\t\t(segment) =>\n\t\t\t\tsegment.charAt(0).toUpperCase() + segment.slice(1).toLowerCase()\n\t\t)\n\t\t.join('');\n};\n\nexport const toKebab = (str: string) =>\n\tnormalizeSlug(str)\n\t\t.replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n\t\t.toLowerCase();\n",
|
|
7
|
-
"import { existsSync } from 'node:fs';\nimport { mkdir, stat } from 'node:fs/promises';\nimport {\n\tdirname,\n\tjoin,\n\tbasename,\n\textname,\n\tresolve,\n\trelative,\n\tsep\n} from 'node:path';\nimport { env } from 'node:process';\nimport { write, file, Transpiler } from 'bun';\nimport { compile
|
|
8
|
-
"import { existsSync } from 'node:fs';\nimport { mkdir } from 'node:fs/promises';\nimport { basename, dirname, join, relative, resolve } from 'node:path';\nimport {\n\tparse,\n\tcompileScript,\n\tcompileTemplate,\n\tcompileStyle,\n\ttype SFCDescriptor\n} from '@vue/compiler-sfc';\nimport { file, write, Transpiler } from 'bun';\nimport { toKebab } from '../utils/stringModifiers';\n\nconst devClientDir = (() => {\n\tconst fromSource = resolve(import.meta.dir, '../dev/client');\n\tif (existsSync(fromSource)) return fromSource;\n\n\treturn resolve(import.meta.dir, './dev/client');\n})();\n\nconst hmrClientPath = join(devClientDir, 'hmrClient.ts').replace(/\\\\/g, '/');\n\nconst transpiler = new Transpiler({ loader: 'ts', target: 'browser' });\n\ntype BuildResult = {\n\tclientPath: string;\n\tserverPath: string;\n\tcssPaths: string[];\n\tcssCodes: string[];\n\ttsHelperPaths: string[];\n\thmrId: string;\n};\n\n// HMR change type detection\nexport type VueChangeType = 'style-only' | 'template-only' | 'script' | 'full';\n\n// Descriptor caches for change detection\nconst scriptCache = new Map<string, string>();\nconst scriptSetupCache = new Map<string, string>();\nconst templateCache = new Map<string, string>();\nconst styleCache = new Map<string, string>();\n\n// HMR metadata storage (exported for rebuildTrigger to access)\nexport const vueHmrMetadata = new Map<\n\tstring,\n\t{ hmrId: string; changeType: VueChangeType }\n>();\n\n/**\n * Detect what type of change occurred in a Vue component\n * Returns 'template-only' for template changes (supports rerender)\n * Returns 'script' for script/scriptSetup changes (requires reload)\n * Returns 'full' for first compile or when detection fails\n */\nexport const detectVueChangeType = (\n\tfilePath: string,\n\tdescriptor: SFCDescriptor\n): VueChangeType => {\n\tconst prevScript = scriptCache.get(filePath);\n\tconst prevScriptSetup = scriptSetupCache.get(filePath);\n\tconst prevTemplate = templateCache.get(filePath);\n\tconst prevStyle = styleCache.get(filePath);\n\n\tconst currentScript = descriptor.script?.content ?? '';\n\tconst currentScriptSetup = descriptor.scriptSetup?.content ?? '';\n\tconst currentTemplate = descriptor.template?.content ?? '';\n\t// Serialize styles: include scoped flag and content for each style block\n\t// Uses ||| delimiter to detect changes to any block, additions, removals, or reordering\n\tconst currentStyle = descriptor.styles\n\t\t.map((s) => `${s.scoped ? 'scoped:' : ''}${s.content}`)\n\t\t.join('|||');\n\n\t// Update caches with current values\n\tscriptCache.set(filePath, currentScript);\n\tscriptSetupCache.set(filePath, currentScriptSetup);\n\ttemplateCache.set(filePath, currentTemplate);\n\tstyleCache.set(filePath, currentStyle);\n\n\t// First compile - no previous data\n\tif (prevScript === undefined && prevScriptSetup === undefined) {\n\t\treturn 'full';\n\t}\n\n\tconst scriptChanged = prevScript !== currentScript;\n\tconst scriptSetupChanged = prevScriptSetup !== currentScriptSetup;\n\tconst templateChanged = prevTemplate !== currentTemplate;\n\tconst styleChanged = prevStyle !== currentStyle;\n\n\t// Priority order:\n\t// 1. Script changes → 'script' (requires reload)\n\t// 2. Template-only (no script, no style) → 'template-only' (rerender)\n\t// 3. Style-only (no script, no template) → 'style-only' (CSS hot-swap, state preserved)\n\t// 4. Template + style → 'template-only' (CSS swapped alongside rerender)\n\n\t// Script change: script or scriptSetup changed (may also include template/style)\n\tif (scriptChanged || scriptSetupChanged) {\n\t\treturn 'script';\n\t}\n\n\t// Style-only change: only styles changed, no script or template\n\tif (styleChanged && !templateChanged) {\n\t\treturn 'style-only';\n\t}\n\n\t// Template-only change: template changed (with or without styles), script unchanged\n\tif (templateChanged) {\n\t\treturn 'template-only';\n\t}\n\n\t// No changes detected (shouldn't happen in practice)\n\treturn 'full';\n};\n\n/**\n * Generate a stable HMR ID for a Vue component\n * Uses relative path from Vue root without extension\n * Example: \"pages/VueExample\" or \"components/CountButton\"\n */\nexport const generateVueHmrId = (\n\tsourceFilePath: string,\n\tvueRootDir: string\n): string => {\n\treturn relative(vueRootDir, sourceFilePath)\n\t\t.replace(/\\\\/g, '/')\n\t\t.replace(/\\.vue$/, '');\n};\n\n/**\n * Clear HMR caches (useful for testing or full rebuilds)\n */\nexport const clearVueHmrCaches = () => {\n\tscriptCache.clear();\n\tscriptSetupCache.clear();\n\ttemplateCache.clear();\n\tstyleCache.clear();\n\tvueHmrMetadata.clear();\n};\n\nconst extractImports = (sourceCode: string) =>\n\tArray.from(sourceCode.matchAll(/import\\s+[\\s\\S]+?['\"]([^'\"]+)['\"]/g))\n\t\t.map((match) => match[1])\n\t\t.filter((importPath): importPath is string => importPath !== undefined);\n\nconst toJs = (filePath: string) => {\n\tif (filePath.endsWith('.vue')) return filePath.replace(/\\.vue$/, '.js');\n\tif (filePath.endsWith('.ts')) return filePath.replace(/\\.ts$/, '.js');\n\n\treturn `${filePath}.js`;\n};\n\nconst stripExports = (code: string) =>\n\tcode\n\t\t.replace(/export\\s+default/, 'const script =')\n\t\t.replace(/^export\\s+/gm, '');\n\nconst mergeVueImports = (code: string) => {\n\tconst lines = code.split('\\n');\n\tconst specifierSet = new Set<string>();\n\tconst vueImportRegex = /^import\\s+{([^}]+)}\\s+from\\s+['\"]vue['\"];?$/;\n\n\tlines.forEach((line) => {\n\t\tconst match = line.match(vueImportRegex);\n\t\tif (match?.[1])\n\t\t\tmatch[1]\n\t\t\t\t.split(',')\n\t\t\t\t.forEach((importSpecifier) =>\n\t\t\t\t\tspecifierSet.add(importSpecifier.trim())\n\t\t\t\t);\n\t});\n\n\tconst nonVueLines = lines.filter((line) => !vueImportRegex.test(line));\n\n\treturn specifierSet.size\n\t\t? [\n\t\t\t\t`import { ${[...specifierSet].join(', ')} } from \"vue\";`,\n\t\t\t\t...nonVueLines\n\t\t\t].join('\\n')\n\t\t: nonVueLines.join('\\n');\n};\n\nconst compileVueFile = async (\n\tsourceFilePath: string,\n\toutputDirs: { client: string; server: string; css: string },\n\tcacheMap: Map<string, BuildResult>,\n\tisEntryPoint: boolean,\n\tvueRootDir: string\n) => {\n\tconst cachedResult = cacheMap.get(sourceFilePath);\n\tif (cachedResult) return cachedResult;\n\n\tconst relativeFilePath = relative(vueRootDir, sourceFilePath).replace(\n\t\t/\\\\/g,\n\t\t'/'\n\t);\n\tconst relativeWithoutExtension = relativeFilePath.replace(/\\.vue$/, '');\n\tconst fileBaseName = basename(sourceFilePath, '.vue');\n\tconst componentId = toKebab(fileBaseName);\n\n\tconst sourceContent = await file(sourceFilePath).text();\n\tconst { descriptor } = parse(sourceContent, { filename: sourceFilePath });\n\n\t// Generate HMR ID and detect change type\n\tconst hmrId = generateVueHmrId(sourceFilePath, vueRootDir);\n\tconst changeType = detectVueChangeType(sourceFilePath, descriptor);\n\n\t// Store HMR metadata for rebuildTrigger to access\n\tvueHmrMetadata.set(sourceFilePath, { hmrId, changeType });\n\n\tconst scriptSource =\n\t\tdescriptor.scriptSetup?.content ?? descriptor.script?.content ?? '';\n\n\tconst importPaths = extractImports(scriptSource);\n\tconst childComponentPaths = importPaths.filter(\n\t\t(path) => path.startsWith('.') && path.endsWith('.vue')\n\t);\n\tconst helperModulePaths = importPaths.filter(\n\t\t(path) => path.startsWith('.') && !path.endsWith('.vue')\n\t);\n\n\tconst childBuildResults: BuildResult[] = await Promise.all(\n\t\tchildComponentPaths.map((relativeChildPath) =>\n\t\t\tcompileVueFile(\n\t\t\t\tresolve(dirname(sourceFilePath), relativeChildPath),\n\t\t\t\toutputDirs,\n\t\t\t\tcacheMap,\n\t\t\t\tfalse,\n\t\t\t\tvueRootDir\n\t\t\t)\n\t\t)\n\t);\n\n\tconst compiledScript = compileScript(descriptor, {\n\t\tid: componentId,\n\t\tinlineTemplate: false\n\t});\n\tconst strippedScript = stripExports(compiledScript.content);\n\tconst transpiledScript = transpiler\n\t\t.transformSync(strippedScript)\n\t\t.replace(\n\t\t\t/(['\"])(\\.{1,2}\\/[^'\"]+)(['\"])/g,\n\t\t\t(_, quoteStart, relativeImport, quoteEnd) =>\n\t\t\t\t`${quoteStart}${toJs(relativeImport)}${quoteEnd}`\n\t\t);\n\n\tconst generateRenderFunction = (ssr: boolean) =>\n\t\tcompileTemplate({\n\t\t\tcompilerOptions: {\n\t\t\t\tbindingMetadata: compiledScript.bindings,\n\t\t\t\tprefixIdentifiers: true\n\t\t\t},\n\t\t\tfilename: sourceFilePath,\n\t\t\tid: componentId,\n\t\t\tscoped: descriptor.styles.some((styleBlock) => styleBlock.scoped),\n\t\t\tsource: descriptor.template?.content ?? '',\n\t\t\tssr,\n\t\t\tssrCssVars: descriptor.cssVars\n\t\t}).code.replace(\n\t\t\t/(['\"])(\\.{1,2}\\/[^'\"]+)(['\"])/g,\n\t\t\t(_, quoteStart, relativeImport, quoteEnd) =>\n\t\t\t\t`${quoteStart}${toJs(relativeImport)}${quoteEnd}`\n\t\t);\n\n\tconst localCss = descriptor.styles.map(\n\t\t(styleBlock) =>\n\t\t\tcompileStyle({\n\t\t\t\tfilename: sourceFilePath,\n\t\t\t\tid: componentId,\n\t\t\t\tscoped: styleBlock.scoped,\n\t\t\t\tsource: styleBlock.content,\n\t\t\t\ttrim: true\n\t\t\t}).code\n\t);\n\tconst allCss = [\n\t\t...localCss,\n\t\t...childBuildResults.flatMap((result) => result.cssCodes)\n\t];\n\n\tlet cssOutputPaths: string[] = [];\n\tif (isEntryPoint && allCss.length) {\n\t\tconst cssOutputFile = join(\n\t\t\toutputDirs.css,\n\t\t\t`${toKebab(fileBaseName)}.css`\n\t\t);\n\t\tawait mkdir(dirname(cssOutputFile), { recursive: true });\n\t\tawait write(cssOutputFile, allCss.join('\\n'));\n\t\tcssOutputPaths = [cssOutputFile];\n\t}\n\n\tconst assembleModule = (\n\t\trenderCode: string,\n\t\trenderFnName: 'render' | 'ssrRender',\n\t\tincludeHmr: boolean\n\t) => {\n\t\tconst hasScoped = descriptor.styles.some(\n\t\t\t(styleBlock) => styleBlock.scoped\n\t\t);\n\n\t\t// __scopeId is required for Vue runtime to add scoped style attributes to dynamic elements\n\t\t// Without this, scoped styles only work on static VNodes that have the attribute baked in\n\t\tconst scopeIdCode = hasScoped\n\t\t\t? `script.__scopeId = \"data-v-${componentId}\";`\n\t\t\t: '';\n\n\t\t// For client bundles, inject HMR registration code that uses Vue's native __VUE_HMR_RUNTIME__\n\t\t// This enables state-preserving hot updates via rerender() for template changes\n\t\t// and reload() for script changes\n\t\tconst hmrCode = includeHmr\n\t\t\t? `\n// Vue Native HMR Registration\nscript.__hmrId = ${JSON.stringify(hmrId)};\nif (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {\n __VUE_HMR_RUNTIME__.createRecord(script.__hmrId, script);\n if (typeof window !== 'undefined') {\n window.__VUE_HMR_COMPONENTS__ = window.__VUE_HMR_COMPONENTS__ || {};\n window.__VUE_HMR_COMPONENTS__[script.__hmrId] = script;\n }\n}`\n\t\t\t: '';\n\n\t\treturn mergeVueImports(\n\t\t\t[\n\t\t\t\ttranspiledScript,\n\t\t\t\trenderCode,\n\t\t\t\t`script.${renderFnName} = ${renderFnName};`,\n\t\t\t\tscopeIdCode,\n\t\t\t\thmrCode,\n\t\t\t\t'export default script;'\n\t\t\t].join('\\n')\n\t\t);\n\t};\n\n\t// Client bundles include HMR registration code; server bundles do not\n\tconst clientCode = assembleModule(\n\t\tgenerateRenderFunction(false),\n\t\t'render',\n\t\ttrue\n\t);\n\tconst serverCode = assembleModule(\n\t\tgenerateRenderFunction(true),\n\t\t'ssrRender',\n\t\tfalse\n\t);\n\n\tconst clientOutputPath = join(\n\t\toutputDirs.client,\n\t\t`${relativeWithoutExtension}.js`\n\t);\n\tconst serverOutputPath = join(\n\t\toutputDirs.server,\n\t\t`${relativeWithoutExtension}.js`\n\t);\n\n\tawait mkdir(dirname(clientOutputPath), { recursive: true });\n\tawait mkdir(dirname(serverOutputPath), { recursive: true });\n\tawait write(clientOutputPath, clientCode);\n\tawait write(serverOutputPath, serverCode);\n\n\tconst result: BuildResult = {\n\t\tclientPath: clientOutputPath,\n\t\tcssCodes: allCss,\n\t\tcssPaths: cssOutputPaths,\n\t\tserverPath: serverOutputPath,\n\t\ttsHelperPaths: [\n\t\t\t...helperModulePaths.map((helper) =>\n\t\t\t\tresolve(\n\t\t\t\t\tdirname(sourceFilePath),\n\t\t\t\t\thelper.endsWith('.ts') ? helper : `${helper}.ts`\n\t\t\t\t)\n\t\t\t),\n\t\t\t...childBuildResults.flatMap((child) => child.tsHelperPaths)\n\t\t],\n\t\thmrId\n\t};\n\n\tcacheMap.set(sourceFilePath, result);\n\n\treturn result;\n};\n\nexport const compileVue = async (\n\tentryPoints: string[],\n\tvueRootDir: string,\n\tisDev = false\n) => {\n\tconst compiledOutputRoot = join(vueRootDir, 'compiled');\n\tconst clientOutputDir = join(compiledOutputRoot, 'client');\n\tconst indexOutputDir = join(compiledOutputRoot, 'indexes');\n\tconst serverOutputDir = join(compiledOutputRoot, 'pages');\n\tconst cssOutputDir = join(compiledOutputRoot, 'styles');\n\n\tawait Promise.all([\n\t\tmkdir(clientOutputDir, { recursive: true }),\n\t\tmkdir(indexOutputDir, { recursive: true }),\n\t\tmkdir(serverOutputDir, { recursive: true }),\n\t\tmkdir(cssOutputDir, { recursive: true })\n\t]);\n\n\tconst buildCache = new Map<string, BuildResult>();\n\tconst allTsHelperPaths = new Set<string>();\n\n\tconst compiledPages = await Promise.all(\n\t\tentryPoints.map(async (entryPath) => {\n\t\t\tconst result = await compileVueFile(\n\t\t\t\tresolve(entryPath),\n\t\t\t\t{\n\t\t\t\t\tclient: clientOutputDir,\n\t\t\t\t\tcss: cssOutputDir,\n\t\t\t\t\tserver: serverOutputDir\n\t\t\t\t},\n\t\t\t\tbuildCache,\n\t\t\t\ttrue,\n\t\t\t\tvueRootDir\n\t\t\t);\n\n\t\t\tresult.tsHelperPaths.forEach((path) => allTsHelperPaths.add(path));\n\n\t\t\tconst entryBaseName = basename(entryPath, '.vue');\n\t\t\tconst indexOutputFile = join(indexOutputDir, `${entryBaseName}.js`);\n\t\t\tconst clientOutputFile = join(\n\t\t\t\tclientOutputDir,\n\t\t\t\trelative(vueRootDir, entryPath)\n\t\t\t\t\t.replace(/\\\\/g, '/')\n\t\t\t\t\t.replace(/\\.vue$/, '.js')\n\t\t\t);\n\n\t\t\tawait mkdir(dirname(indexOutputFile), { recursive: true });\n\t\t\tconst vueHmrImports = isDev\n\t\t\t\t? [\n\t\t\t\t\t\t`window.__HMR_FRAMEWORK__ = \"vue\";`,\n\t\t\t\t\t\t`import \"${hmrClientPath}\";`\n\t\t\t\t\t]\n\t\t\t\t: [];\n\t\t\tawait write(\n\t\t\t\tindexOutputFile,\n\t\t\t\t[\n\t\t\t\t\t...vueHmrImports,\n\t\t\t\t\t`import Comp from \"${relative(dirname(indexOutputFile), clientOutputFile).replace(/\\\\/g, '/')}\";`,\n\t\t\t\t\t'import { createSSRApp } from \"vue\";',\n\t\t\t\t\t'',\n\t\t\t\t\t'// HMR State Preservation: Check for preserved state from HMR',\n\t\t\t\t\t'let preservedState = (typeof window !== \"undefined\" && window.__HMR_PRESERVED_STATE__) ? window.__HMR_PRESERVED_STATE__ : {};',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Fallback: check sessionStorage if window state is empty (only during active HMR, not full page refresh)',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && Object.keys(preservedState).length === 0 && sessionStorage.getItem(\"__HMR_ACTIVE__\")) {',\n\t\t\t\t\t' try {',\n\t\t\t\t\t' const stored = sessionStorage.getItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t' if (stored) {',\n\t\t\t\t\t' preservedState = JSON.parse(stored);',\n\t\t\t\t\t' sessionStorage.removeItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t' }',\n\t\t\t\t\t' } catch (e) {}',\n\t\t\t\t\t'}',\n\t\t\t\t\t'// Clean up stale HMR state on full page refresh',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && !sessionStorage.getItem(\"__HMR_ACTIVE__\")) {',\n\t\t\t\t\t' sessionStorage.removeItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'const initialProps = window.__INITIAL_PROPS__ ?? {};',\n\t\t\t\t\t'// Only merge preserved state keys that match declared props (avoids passing refs/components as attributes)',\n\t\t\t\t\t'const mergedProps = { ...initialProps };',\n\t\t\t\t\t'Object.keys(preservedState).forEach(function(key) {',\n\t\t\t\t\t' if (key in initialProps) {',\n\t\t\t\t\t' mergedProps[key] = preservedState[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t'});',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Use createSSRApp for proper hydration of server-rendered content',\n\t\t\t\t\t'const app = createSSRApp(Comp, mergedProps);',\n\t\t\t\t\t'app.mount(\"#root\");',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Store app instance for HMR - used for manual component updates',\n\t\t\t\t\t'if (typeof window !== \"undefined\") {',\n\t\t\t\t\t' window.__VUE_APP__ = app;',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Post-mount: Apply preserved state to reactive refs in component tree',\n\t\t\t\t\t'// This restores state that lives in refs (like count) rather than props',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && Object.keys(preservedState).length > 0) {',\n\t\t\t\t\t' requestAnimationFrame(function() {',\n\t\t\t\t\t' if (window.__VUE_APP__ && window.__VUE_APP__._instance) {',\n\t\t\t\t\t' applyPreservedState(window.__VUE_APP__._instance, preservedState);',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'function applyPreservedState(instance, state) {',\n\t\t\t\t\t' // Apply to root component setupState',\n\t\t\t\t\t' if (instance.setupState) {',\n\t\t\t\t\t' Object.keys(state).forEach(function(key) {',\n\t\t\t\t\t' const ref = instance.setupState[key];',\n\t\t\t\t\t' if (ref && typeof ref === \"object\" && \"value\" in ref) {',\n\t\t\t\t\t' ref.value = state[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' // Also apply to child components',\n\t\t\t\t\t' if (instance.subTree) {',\n\t\t\t\t\t' walkAndApply(instance.subTree, state);',\n\t\t\t\t\t' }',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'function walkAndApply(vnode, state) {',\n\t\t\t\t\t' if (!vnode) return;',\n\t\t\t\t\t' if (vnode.component && vnode.component.setupState) {',\n\t\t\t\t\t' Object.keys(state).forEach(function(key) {',\n\t\t\t\t\t' const ref = vnode.component.setupState[key];',\n\t\t\t\t\t' if (ref && typeof ref === \"object\" && \"value\" in ref) {',\n\t\t\t\t\t' ref.value = state[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' if (vnode.children && Array.isArray(vnode.children)) {',\n\t\t\t\t\t' vnode.children.forEach(function(child) { walkAndApply(child, state); });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' if (vnode.component && vnode.component.subTree) {',\n\t\t\t\t\t' walkAndApply(vnode.component.subTree, state);',\n\t\t\t\t\t' }',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Clear preserved state after applying',\n\t\t\t\t\t'if (typeof window !== \"undefined\") {',\n\t\t\t\t\t' window.__HMR_PRESERVED_STATE__ = undefined;',\n\t\t\t\t\t'}'\n\t\t\t\t].join('\\n')\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tclientPath: clientOutputFile,\n\t\t\t\tcssPaths: result.cssPaths,\n\t\t\t\tindexPath: indexOutputFile,\n\t\t\t\tserverPath: result.serverPath\n\t\t\t};\n\t\t})\n\t);\n\n\tawait Promise.all(\n\t\tArray.from(allTsHelperPaths).map(async (tsPath) => {\n\t\t\tconst sourceCode = await file(tsPath).text();\n\t\t\tconst transpiledCode = transpiler.transformSync(sourceCode);\n\t\t\tconst relativeJsPath = relative(vueRootDir, tsPath).replace(\n\t\t\t\t/\\.ts$/,\n\t\t\t\t'.js'\n\t\t\t);\n\t\t\tconst outClientPath = join(clientOutputDir, relativeJsPath);\n\t\t\tconst outServerPath = join(serverOutputDir, relativeJsPath);\n\t\t\tawait mkdir(dirname(outClientPath), { recursive: true });\n\t\t\tawait mkdir(dirname(outServerPath), { recursive: true });\n\t\t\tawait write(outClientPath, transpiledCode);\n\t\t\tawait write(outServerPath, transpiledCode);\n\t\t})\n\t);\n\n\treturn {\n\t\tvueClientPaths: compiledPages.map((result) => result.clientPath),\n\t\tvueCssPaths: compiledPages.flatMap((result) => result.cssPaths),\n\t\tvueIndexPaths: compiledPages.map((result) => result.indexPath),\n\t\tvueServerPaths: compiledPages.map((result) => result.serverPath),\n\t\t// Export HMR metadata from vueHmrMetadata map (populated during compilation)\n\t\thmrMetadata: new Map(vueHmrMetadata)\n\t};\n};\n",
|
|
7
|
+
"import { existsSync } from 'node:fs';\nimport { mkdir, stat } from 'node:fs/promises';\nimport {\n\tdirname,\n\tjoin,\n\tbasename,\n\textname,\n\tresolve,\n\trelative,\n\tsep\n} from 'node:path';\nimport { env } from 'node:process';\nimport { write, file, Transpiler } from 'bun';\nimport type { compile as CompileFn } from 'svelte/compiler';\n\nconst devClientDir = (() => {\n\tconst fromSource = resolve(import.meta.dir, '../dev/client');\n\tif (existsSync(fromSource)) return fromSource;\n\n\treturn resolve(import.meta.dir, './dev/client');\n})();\n\nconst hmrClientPath = join(devClientDir, 'hmrClient.ts').replace(/\\\\/g, '/');\n\ntype Built = { ssr: string; client: string };\ntype Cache = Map<string, Built>;\n\nconst transpiler = new Transpiler({ loader: 'ts', target: 'browser' });\n\nconst exists = async (path: string) => {\n\ttry {\n\t\tawait stat(path);\n\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n};\n\nconst resolveSvelte = async (spec: string, from: string) => {\n\tconst basePath = resolve(dirname(from), spec);\n\tconst explicit = /\\.(svelte|svelte\\.(?:ts|js))$/.test(basePath);\n\n\tif (!explicit) {\n\t\tconst extensions = ['.svelte', '.svelte.ts', '.svelte.js'];\n\t\tconst paths = extensions.map((ext) => `${basePath}${ext}`);\n\t\tconst checks = await Promise.all(paths.map(exists));\n\t\tconst match = paths.find((_, index) => checks[index]);\n\n\t\treturn match ?? null;\n\t}\n\n\tif (await exists(basePath)) return basePath;\n\tif (!basePath.endsWith('.svelte')) return null;\n\n\tconst tsPath = `${basePath}.ts`;\n\tif (await exists(tsPath)) return tsPath;\n\n\tconst jsPath = `${basePath}.js`;\n\tif (await exists(jsPath)) return jsPath;\n\n\treturn null;\n};\n\nexport const compileSvelte = async (\n\tentryPoints: string[],\n\tsvelteRoot: string,\n\tcache: Cache = new Map(),\n\tisDev = false\n) => {\n\tconst { compile, compileModule, preprocess } = await import(\n\t\t'svelte/compiler'\n\t);\n\n\tconst compiledRoot = join(svelteRoot, 'compiled');\n\tconst clientDir = join(compiledRoot, 'client');\n\tconst indexDir = join(compiledRoot, 'indexes');\n\tconst pagesDir = join(compiledRoot, 'pages');\n\n\tawait Promise.all(\n\t\t[clientDir, indexDir, pagesDir].map((dir) =>\n\t\t\tmkdir(dir, { recursive: true })\n\t\t)\n\t);\n\n\tconst dev = env.NODE_ENV !== 'production';\n\n\tconst build = async (src: string) => {\n\t\tconst memoized = cache.get(src);\n\t\tif (memoized) return memoized;\n\n\t\tconst raw = await file(src).text();\n\t\tconst isModule =\n\t\t\tsrc.endsWith('.svelte.ts') || src.endsWith('.svelte.js');\n\t\tconst preprocessed = isModule ? raw : (await preprocess(raw, {})).code;\n\t\tconst transpiled =\n\t\t\tsrc.endsWith('.ts') || src.endsWith('.svelte.ts')\n\t\t\t\t? transpiler.transformSync(preprocessed)\n\t\t\t\t: preprocessed;\n\n\t\tconst relDir = dirname(relative(svelteRoot, src)).replace(/\\\\/g, '/');\n\t\tconst baseName = basename(src).replace(/\\.svelte(\\.(ts|js))?$/, '');\n\n\t\tconst importPaths = Array.from(\n\t\t\ttranspiled.matchAll(/from\\s+['\"]([^'\"]+)['\"]/g)\n\t\t)\n\t\t\t.map((match) => match[1])\n\t\t\t.filter((path): path is string => path !== undefined);\n\n\t\tconst resolvedImports = await Promise.all(\n\t\t\timportPaths.map((importPath) => resolveSvelte(importPath, src))\n\t\t);\n\t\tconst childSources = resolvedImports.filter(\n\t\t\t(path): path is string => path !== null\n\t\t);\n\t\tawait Promise.all(childSources.map((child) => build(child)));\n\n\t\tconst generate = (mode: 'server' | 'client') =>\n\t\t\t(isModule\n\t\t\t\t? compileModule(transpiled, {\n\t\t\t\t\t\tdev: mode === 'client' && dev,\n\t\t\t\t\t\tfilename: src\n\t\t\t\t\t}).js.code\n\t\t\t\t: compile(transpiled, {\n\t\t\t\t\t\tcss: 'injected',\n\t\t\t\t\t\tdev: mode === 'client' && dev,\n\t\t\t\t\t\tfilename: src,\n\t\t\t\t\t\tgenerate: mode\n\t\t\t\t\t}).js.code\n\t\t\t).replace(/\\.svelte(?:\\.(?:ts|js))?(['\"])/g, '.js$1');\n\n\t\tconst ssrPath = join(pagesDir, relDir, `${baseName}.js`);\n\t\tconst clientPath = join(clientDir, relDir, `${baseName}.js`);\n\n\t\tawait Promise.all([\n\t\t\tmkdir(dirname(ssrPath), { recursive: true }),\n\t\t\tmkdir(dirname(clientPath), { recursive: true })\n\t\t]);\n\n\t\tif (isModule) {\n\t\t\tconst bundle = generate('client');\n\t\t\tawait Promise.all([\n\t\t\t\twrite(ssrPath, bundle),\n\t\t\t\twrite(clientPath, bundle)\n\t\t\t]);\n\t\t} else {\n\t\t\tconst serverBundle = generate('server');\n\t\t\tconst clientBundle = generate('client');\n\t\t\tawait Promise.all([\n\t\t\t\twrite(ssrPath, serverBundle),\n\t\t\t\twrite(clientPath, clientBundle)\n\t\t\t]);\n\t\t}\n\n\t\tconst built: Built = { client: clientPath, ssr: ssrPath };\n\t\tcache.set(src, built);\n\n\t\treturn built;\n\t};\n\n\tconst roots = await Promise.all(entryPoints.map(build));\n\n\tawait Promise.all(\n\t\troots.map(async ({ client }) => {\n\t\t\tconst relClientDir = dirname(relative(clientDir, client));\n\t\t\tconst name = basename(client, extname(client));\n\t\t\tconst indexPath = join(indexDir, relClientDir, `${name}.js`);\n\t\t\tconst importRaw = relative(dirname(indexPath), client)\n\t\t\t\t.split(sep)\n\t\t\t\t.join('/');\n\t\t\tconst importPath =\n\t\t\t\timportRaw.startsWith('.') || importRaw.startsWith('/')\n\t\t\t\t\t? importRaw\n\t\t\t\t\t: `./${importRaw}`;\n\t\t\tconst hmrImports = isDev\n\t\t\t\t? `window.__HMR_FRAMEWORK__ = \"svelte\";\\nimport \"${hmrClientPath}\";\\n`\n\t\t\t\t: '';\n\t\t\tconst bootstrap = `${hmrImports}import Component from \"${importPath}\";\nimport { hydrate, mount, unmount } from \"svelte\";\n\nvar initialProps = (typeof window !== \"undefined\" && window.__INITIAL_PROPS__) ? window.__INITIAL_PROPS__ : {};\nvar isHMR = typeof window !== \"undefined\" && window.__SVELTE_COMPONENT__ !== undefined;\nvar component;\n\nif (isHMR) {\n var headLinks = document.querySelectorAll('link[rel=\"stylesheet\"]');\n var preservedLinks = [];\n headLinks.forEach(function(link) {\n var clone = link.cloneNode(true);\n clone.setAttribute(\"data-hmr-preserve\", \"true\");\n document.head.appendChild(clone);\n preservedLinks.push(clone);\n });\n if (typeof window.__SVELTE_UNMOUNT__ === \"function\") {\n try { window.__SVELTE_UNMOUNT__(); } catch (err) { console.warn(\"[HMR] unmount error:\", err); }\n }\n var preservedState = window.__HMR_PRESERVED_STATE__;\n if (!preservedState) {\n try {\n var stored = sessionStorage.getItem(\"__SVELTE_HMR_STATE__\");\n if (stored) preservedState = JSON.parse(stored);\n } catch (err) { /* ignore */ }\n }\n var mergedProps = preservedState ? Object.assign({}, initialProps, preservedState) : initialProps;\n component = mount(Component, { target: document.body, props: mergedProps });\n requestAnimationFrame(function() {\n preservedLinks.forEach(function(link) { link.remove(); });\n });\n window.__HMR_PRESERVED_STATE__ = undefined;\n} else {\n component = hydrate(Component, { target: document.body, props: initialProps });\n}\n\nif (typeof window !== \"undefined\") {\n window.__SVELTE_COMPONENT__ = component;\n window.__SVELTE_UNMOUNT__ = function() { unmount(component); };\n}`;\n\n\t\t\tawait mkdir(dirname(indexPath), { recursive: true });\n\n\t\t\treturn write(indexPath, bootstrap);\n\t\t})\n\t);\n\n\treturn {\n\t\t// Index paths (entry points for hydration)\n\t\tsvelteIndexPaths: roots.map(({ client }) => {\n\t\t\tconst rel = dirname(relative(clientDir, client));\n\t\t\treturn join(indexDir, rel, basename(client));\n\t\t}),\n\t\t// Actual client component paths (for official HMR module imports)\n\t\tsvelteClientPaths: roots.map(({ client }) => client),\n\t\tsvelteServerPaths: roots.map(({ ssr }) => ssr)\n\t};\n};\n",
|
|
8
|
+
"import { existsSync } from 'node:fs';\nimport { mkdir } from 'node:fs/promises';\nimport { basename, dirname, join, relative, resolve } from 'node:path';\nimport type {\n\tSFCDescriptor,\n\tcompileScript as CompileScriptFn,\n\tcompileStyle as CompileStyleFn,\n\tcompileTemplate as CompileTemplateFn,\n\tparse as ParseFn\n} from '@vue/compiler-sfc';\nimport { file, write, Transpiler } from 'bun';\nimport { toKebab } from '../utils/stringModifiers';\n\nconst devClientDir = (() => {\n\tconst fromSource = resolve(import.meta.dir, '../dev/client');\n\tif (existsSync(fromSource)) return fromSource;\n\n\treturn resolve(import.meta.dir, './dev/client');\n})();\n\nconst hmrClientPath = join(devClientDir, 'hmrClient.ts').replace(/\\\\/g, '/');\n\nconst transpiler = new Transpiler({ loader: 'ts', target: 'browser' });\n\ntype BuildResult = {\n\tclientPath: string;\n\tserverPath: string;\n\tcssPaths: string[];\n\tcssCodes: string[];\n\ttsHelperPaths: string[];\n\thmrId: string;\n};\n\n// HMR change type detection\nexport type VueChangeType = 'style-only' | 'template-only' | 'script' | 'full';\n\n// Descriptor caches for change detection\nconst scriptCache = new Map<string, string>();\nconst scriptSetupCache = new Map<string, string>();\nconst templateCache = new Map<string, string>();\nconst styleCache = new Map<string, string>();\n\n// HMR metadata storage (exported for rebuildTrigger to access)\nexport const vueHmrMetadata = new Map<\n\tstring,\n\t{ hmrId: string; changeType: VueChangeType }\n>();\n\n/**\n * Detect what type of change occurred in a Vue component\n * Returns 'template-only' for template changes (supports rerender)\n * Returns 'script' for script/scriptSetup changes (requires reload)\n * Returns 'full' for first compile or when detection fails\n */\nexport const detectVueChangeType = (\n\tfilePath: string,\n\tdescriptor: SFCDescriptor\n): VueChangeType => {\n\tconst prevScript = scriptCache.get(filePath);\n\tconst prevScriptSetup = scriptSetupCache.get(filePath);\n\tconst prevTemplate = templateCache.get(filePath);\n\tconst prevStyle = styleCache.get(filePath);\n\n\tconst currentScript = descriptor.script?.content ?? '';\n\tconst currentScriptSetup = descriptor.scriptSetup?.content ?? '';\n\tconst currentTemplate = descriptor.template?.content ?? '';\n\t// Serialize styles: include scoped flag and content for each style block\n\t// Uses ||| delimiter to detect changes to any block, additions, removals, or reordering\n\tconst currentStyle = descriptor.styles\n\t\t.map((s) => `${s.scoped ? 'scoped:' : ''}${s.content}`)\n\t\t.join('|||');\n\n\t// Update caches with current values\n\tscriptCache.set(filePath, currentScript);\n\tscriptSetupCache.set(filePath, currentScriptSetup);\n\ttemplateCache.set(filePath, currentTemplate);\n\tstyleCache.set(filePath, currentStyle);\n\n\t// First compile - no previous data\n\tif (prevScript === undefined && prevScriptSetup === undefined) {\n\t\treturn 'full';\n\t}\n\n\tconst scriptChanged = prevScript !== currentScript;\n\tconst scriptSetupChanged = prevScriptSetup !== currentScriptSetup;\n\tconst templateChanged = prevTemplate !== currentTemplate;\n\tconst styleChanged = prevStyle !== currentStyle;\n\n\t// Priority order:\n\t// 1. Script changes → 'script' (requires reload)\n\t// 2. Template-only (no script, no style) → 'template-only' (rerender)\n\t// 3. Style-only (no script, no template) → 'style-only' (CSS hot-swap, state preserved)\n\t// 4. Template + style → 'template-only' (CSS swapped alongside rerender)\n\n\t// Script change: script or scriptSetup changed (may also include template/style)\n\tif (scriptChanged || scriptSetupChanged) {\n\t\treturn 'script';\n\t}\n\n\t// Style-only change: only styles changed, no script or template\n\tif (styleChanged && !templateChanged) {\n\t\treturn 'style-only';\n\t}\n\n\t// Template-only change: template changed (with or without styles), script unchanged\n\tif (templateChanged) {\n\t\treturn 'template-only';\n\t}\n\n\t// No changes detected (shouldn't happen in practice)\n\treturn 'full';\n};\n\n/**\n * Generate a stable HMR ID for a Vue component\n * Uses relative path from Vue root without extension\n * Example: \"pages/VueExample\" or \"components/CountButton\"\n */\nexport const generateVueHmrId = (\n\tsourceFilePath: string,\n\tvueRootDir: string\n): string => {\n\treturn relative(vueRootDir, sourceFilePath)\n\t\t.replace(/\\\\/g, '/')\n\t\t.replace(/\\.vue$/, '');\n};\n\n/**\n * Clear HMR caches (useful for testing or full rebuilds)\n */\nexport const clearVueHmrCaches = () => {\n\tscriptCache.clear();\n\tscriptSetupCache.clear();\n\ttemplateCache.clear();\n\tstyleCache.clear();\n\tvueHmrMetadata.clear();\n};\n\nconst extractImports = (sourceCode: string) =>\n\tArray.from(sourceCode.matchAll(/import\\s+[\\s\\S]+?['\"]([^'\"]+)['\"]/g))\n\t\t.map((match) => match[1])\n\t\t.filter((importPath): importPath is string => importPath !== undefined);\n\nconst toJs = (filePath: string) => {\n\tif (filePath.endsWith('.vue')) return filePath.replace(/\\.vue$/, '.js');\n\tif (filePath.endsWith('.ts')) return filePath.replace(/\\.ts$/, '.js');\n\n\treturn `${filePath}.js`;\n};\n\nconst stripExports = (code: string) =>\n\tcode\n\t\t.replace(/export\\s+default/, 'const script =')\n\t\t.replace(/^export\\s+/gm, '');\n\nconst mergeVueImports = (code: string) => {\n\tconst lines = code.split('\\n');\n\tconst specifierSet = new Set<string>();\n\tconst vueImportRegex = /^import\\s+{([^}]+)}\\s+from\\s+['\"]vue['\"];?$/;\n\n\tlines.forEach((line) => {\n\t\tconst match = line.match(vueImportRegex);\n\t\tif (match?.[1])\n\t\t\tmatch[1]\n\t\t\t\t.split(',')\n\t\t\t\t.forEach((importSpecifier) =>\n\t\t\t\t\tspecifierSet.add(importSpecifier.trim())\n\t\t\t\t);\n\t});\n\n\tconst nonVueLines = lines.filter((line) => !vueImportRegex.test(line));\n\n\treturn specifierSet.size\n\t\t? [\n\t\t\t\t`import { ${[...specifierSet].join(', ')} } from \"vue\";`,\n\t\t\t\t...nonVueLines\n\t\t\t].join('\\n')\n\t\t: nonVueLines.join('\\n');\n};\n\ntype VueCompiler = {\n\tparse: typeof ParseFn;\n\tcompileScript: typeof CompileScriptFn;\n\tcompileTemplate: typeof CompileTemplateFn;\n\tcompileStyle: typeof CompileStyleFn;\n};\n\nconst compileVueFile = async (\n\tsourceFilePath: string,\n\toutputDirs: { client: string; server: string; css: string },\n\tcacheMap: Map<string, BuildResult>,\n\tisEntryPoint: boolean,\n\tvueRootDir: string,\n\tcompiler: VueCompiler\n) => {\n\tconst cachedResult = cacheMap.get(sourceFilePath);\n\tif (cachedResult) return cachedResult;\n\n\tconst relativeFilePath = relative(vueRootDir, sourceFilePath).replace(\n\t\t/\\\\/g,\n\t\t'/'\n\t);\n\tconst relativeWithoutExtension = relativeFilePath.replace(/\\.vue$/, '');\n\tconst fileBaseName = basename(sourceFilePath, '.vue');\n\tconst componentId = toKebab(fileBaseName);\n\n\tconst sourceContent = await file(sourceFilePath).text();\n\tconst { descriptor } = compiler.parse(sourceContent, {\n\t\tfilename: sourceFilePath\n\t});\n\n\t// Generate HMR ID and detect change type\n\tconst hmrId = generateVueHmrId(sourceFilePath, vueRootDir);\n\tconst changeType = detectVueChangeType(sourceFilePath, descriptor);\n\n\t// Store HMR metadata for rebuildTrigger to access\n\tvueHmrMetadata.set(sourceFilePath, { hmrId, changeType });\n\n\tconst scriptSource =\n\t\tdescriptor.scriptSetup?.content ?? descriptor.script?.content ?? '';\n\n\tconst importPaths = extractImports(scriptSource);\n\tconst childComponentPaths = importPaths.filter(\n\t\t(path) => path.startsWith('.') && path.endsWith('.vue')\n\t);\n\tconst helperModulePaths = importPaths.filter(\n\t\t(path) => path.startsWith('.') && !path.endsWith('.vue')\n\t);\n\n\tconst childBuildResults: BuildResult[] = await Promise.all(\n\t\tchildComponentPaths.map((relativeChildPath) =>\n\t\t\tcompileVueFile(\n\t\t\t\tresolve(dirname(sourceFilePath), relativeChildPath),\n\t\t\t\toutputDirs,\n\t\t\t\tcacheMap,\n\t\t\t\tfalse,\n\t\t\t\tvueRootDir,\n\t\t\t\tcompiler\n\t\t\t)\n\t\t)\n\t);\n\n\tconst compiledScript = compiler.compileScript(descriptor, {\n\t\tid: componentId,\n\t\tinlineTemplate: false\n\t});\n\tconst strippedScript = stripExports(compiledScript.content);\n\tconst transpiledScript = transpiler\n\t\t.transformSync(strippedScript)\n\t\t.replace(\n\t\t\t/(['\"])(\\.{1,2}\\/[^'\"]+)(['\"])/g,\n\t\t\t(_, quoteStart, relativeImport, quoteEnd) =>\n\t\t\t\t`${quoteStart}${toJs(relativeImport)}${quoteEnd}`\n\t\t);\n\n\tconst generateRenderFunction = (ssr: boolean) =>\n\t\tcompiler\n\t\t\t.compileTemplate({\n\t\t\t\tcompilerOptions: {\n\t\t\t\t\tbindingMetadata: compiledScript.bindings,\n\t\t\t\t\tprefixIdentifiers: true\n\t\t\t\t},\n\t\t\t\tfilename: sourceFilePath,\n\t\t\t\tid: componentId,\n\t\t\t\tscoped: descriptor.styles.some(\n\t\t\t\t\t(styleBlock) => styleBlock.scoped\n\t\t\t\t),\n\t\t\t\tsource: descriptor.template?.content ?? '',\n\t\t\t\tssr,\n\t\t\t\tssrCssVars: descriptor.cssVars\n\t\t\t})\n\t\t\t.code.replace(\n\t\t\t\t/(['\"])(\\.{1,2}\\/[^'\"]+)(['\"])/g,\n\t\t\t\t(_, quoteStart, relativeImport, quoteEnd) =>\n\t\t\t\t\t`${quoteStart}${toJs(relativeImport)}${quoteEnd}`\n\t\t\t);\n\n\tconst localCss = descriptor.styles.map(\n\t\t(styleBlock) =>\n\t\t\tcompiler.compileStyle({\n\t\t\t\tfilename: sourceFilePath,\n\t\t\t\tid: componentId,\n\t\t\t\tscoped: styleBlock.scoped,\n\t\t\t\tsource: styleBlock.content,\n\t\t\t\ttrim: true\n\t\t\t}).code\n\t);\n\tconst allCss = [\n\t\t...localCss,\n\t\t...childBuildResults.flatMap((result) => result.cssCodes)\n\t];\n\n\tlet cssOutputPaths: string[] = [];\n\tif (isEntryPoint && allCss.length) {\n\t\tconst cssOutputFile = join(\n\t\t\toutputDirs.css,\n\t\t\t`${toKebab(fileBaseName)}.css`\n\t\t);\n\t\tawait mkdir(dirname(cssOutputFile), { recursive: true });\n\t\tawait write(cssOutputFile, allCss.join('\\n'));\n\t\tcssOutputPaths = [cssOutputFile];\n\t}\n\n\tconst assembleModule = (\n\t\trenderCode: string,\n\t\trenderFnName: 'render' | 'ssrRender',\n\t\tincludeHmr: boolean\n\t) => {\n\t\tconst hasScoped = descriptor.styles.some(\n\t\t\t(styleBlock) => styleBlock.scoped\n\t\t);\n\n\t\t// __scopeId is required for Vue runtime to add scoped style attributes to dynamic elements\n\t\t// Without this, scoped styles only work on static VNodes that have the attribute baked in\n\t\tconst scopeIdCode = hasScoped\n\t\t\t? `script.__scopeId = \"data-v-${componentId}\";`\n\t\t\t: '';\n\n\t\t// For client bundles, inject HMR registration code that uses Vue's native __VUE_HMR_RUNTIME__\n\t\t// This enables state-preserving hot updates via rerender() for template changes\n\t\t// and reload() for script changes\n\t\tconst hmrCode = includeHmr\n\t\t\t? `\n// Vue Native HMR Registration\nscript.__hmrId = ${JSON.stringify(hmrId)};\nif (typeof __VUE_HMR_RUNTIME__ !== 'undefined') {\n __VUE_HMR_RUNTIME__.createRecord(script.__hmrId, script);\n if (typeof window !== 'undefined') {\n window.__VUE_HMR_COMPONENTS__ = window.__VUE_HMR_COMPONENTS__ || {};\n window.__VUE_HMR_COMPONENTS__[script.__hmrId] = script;\n }\n}`\n\t\t\t: '';\n\n\t\treturn mergeVueImports(\n\t\t\t[\n\t\t\t\ttranspiledScript,\n\t\t\t\trenderCode,\n\t\t\t\t`script.${renderFnName} = ${renderFnName};`,\n\t\t\t\tscopeIdCode,\n\t\t\t\thmrCode,\n\t\t\t\t'export default script;'\n\t\t\t].join('\\n')\n\t\t);\n\t};\n\n\t// Client bundles include HMR registration code; server bundles do not\n\tconst clientCode = assembleModule(\n\t\tgenerateRenderFunction(false),\n\t\t'render',\n\t\ttrue\n\t);\n\tconst serverCode = assembleModule(\n\t\tgenerateRenderFunction(true),\n\t\t'ssrRender',\n\t\tfalse\n\t);\n\n\tconst clientOutputPath = join(\n\t\toutputDirs.client,\n\t\t`${relativeWithoutExtension}.js`\n\t);\n\tconst serverOutputPath = join(\n\t\toutputDirs.server,\n\t\t`${relativeWithoutExtension}.js`\n\t);\n\n\tawait mkdir(dirname(clientOutputPath), { recursive: true });\n\tawait mkdir(dirname(serverOutputPath), { recursive: true });\n\tawait write(clientOutputPath, clientCode);\n\tawait write(serverOutputPath, serverCode);\n\n\tconst result: BuildResult = {\n\t\tclientPath: clientOutputPath,\n\t\tcssCodes: allCss,\n\t\tcssPaths: cssOutputPaths,\n\t\tserverPath: serverOutputPath,\n\t\ttsHelperPaths: [\n\t\t\t...helperModulePaths.map((helper) =>\n\t\t\t\tresolve(\n\t\t\t\t\tdirname(sourceFilePath),\n\t\t\t\t\thelper.endsWith('.ts') ? helper : `${helper}.ts`\n\t\t\t\t)\n\t\t\t),\n\t\t\t...childBuildResults.flatMap((child) => child.tsHelperPaths)\n\t\t],\n\t\thmrId\n\t};\n\n\tcacheMap.set(sourceFilePath, result);\n\n\treturn result;\n};\n\nexport const compileVue = async (\n\tentryPoints: string[],\n\tvueRootDir: string,\n\tisDev = false\n) => {\n\tconst compiler: VueCompiler = await import('@vue/compiler-sfc');\n\n\tconst compiledOutputRoot = join(vueRootDir, 'compiled');\n\tconst clientOutputDir = join(compiledOutputRoot, 'client');\n\tconst indexOutputDir = join(compiledOutputRoot, 'indexes');\n\tconst serverOutputDir = join(compiledOutputRoot, 'pages');\n\tconst cssOutputDir = join(compiledOutputRoot, 'styles');\n\n\tawait Promise.all([\n\t\tmkdir(clientOutputDir, { recursive: true }),\n\t\tmkdir(indexOutputDir, { recursive: true }),\n\t\tmkdir(serverOutputDir, { recursive: true }),\n\t\tmkdir(cssOutputDir, { recursive: true })\n\t]);\n\n\tconst buildCache = new Map<string, BuildResult>();\n\tconst allTsHelperPaths = new Set<string>();\n\n\tconst compiledPages = await Promise.all(\n\t\tentryPoints.map(async (entryPath) => {\n\t\t\tconst result = await compileVueFile(\n\t\t\t\tresolve(entryPath),\n\t\t\t\t{\n\t\t\t\t\tclient: clientOutputDir,\n\t\t\t\t\tcss: cssOutputDir,\n\t\t\t\t\tserver: serverOutputDir\n\t\t\t\t},\n\t\t\t\tbuildCache,\n\t\t\t\ttrue,\n\t\t\t\tvueRootDir,\n\t\t\t\tcompiler\n\t\t\t);\n\n\t\t\tresult.tsHelperPaths.forEach((path) => allTsHelperPaths.add(path));\n\n\t\t\tconst entryBaseName = basename(entryPath, '.vue');\n\t\t\tconst indexOutputFile = join(indexOutputDir, `${entryBaseName}.js`);\n\t\t\tconst clientOutputFile = join(\n\t\t\t\tclientOutputDir,\n\t\t\t\trelative(vueRootDir, entryPath)\n\t\t\t\t\t.replace(/\\\\/g, '/')\n\t\t\t\t\t.replace(/\\.vue$/, '.js')\n\t\t\t);\n\n\t\t\tawait mkdir(dirname(indexOutputFile), { recursive: true });\n\t\t\tconst vueHmrImports = isDev\n\t\t\t\t? [\n\t\t\t\t\t\t`window.__HMR_FRAMEWORK__ = \"vue\";`,\n\t\t\t\t\t\t`import \"${hmrClientPath}\";`\n\t\t\t\t\t]\n\t\t\t\t: [];\n\t\t\tawait write(\n\t\t\t\tindexOutputFile,\n\t\t\t\t[\n\t\t\t\t\t...vueHmrImports,\n\t\t\t\t\t`import Comp from \"${relative(dirname(indexOutputFile), clientOutputFile).replace(/\\\\/g, '/')}\";`,\n\t\t\t\t\t'import { createSSRApp } from \"vue\";',\n\t\t\t\t\t'',\n\t\t\t\t\t'// HMR State Preservation: Check for preserved state from HMR',\n\t\t\t\t\t'let preservedState = (typeof window !== \"undefined\" && window.__HMR_PRESERVED_STATE__) ? window.__HMR_PRESERVED_STATE__ : {};',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Fallback: check sessionStorage if window state is empty (only during active HMR, not full page refresh)',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && Object.keys(preservedState).length === 0 && sessionStorage.getItem(\"__HMR_ACTIVE__\")) {',\n\t\t\t\t\t' try {',\n\t\t\t\t\t' const stored = sessionStorage.getItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t' if (stored) {',\n\t\t\t\t\t' preservedState = JSON.parse(stored);',\n\t\t\t\t\t' sessionStorage.removeItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t' }',\n\t\t\t\t\t' } catch (e) {}',\n\t\t\t\t\t'}',\n\t\t\t\t\t'// Clean up stale HMR state on full page refresh',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && !sessionStorage.getItem(\"__HMR_ACTIVE__\")) {',\n\t\t\t\t\t' sessionStorage.removeItem(\"__VUE_HMR_STATE__\");',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'const initialProps = window.__INITIAL_PROPS__ ?? {};',\n\t\t\t\t\t'// Only merge preserved state keys that match declared props (avoids passing refs/components as attributes)',\n\t\t\t\t\t'const mergedProps = { ...initialProps };',\n\t\t\t\t\t'Object.keys(preservedState).forEach(function(key) {',\n\t\t\t\t\t' if (key in initialProps) {',\n\t\t\t\t\t' mergedProps[key] = preservedState[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t'});',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Use createSSRApp for proper hydration of server-rendered content',\n\t\t\t\t\t'const app = createSSRApp(Comp, mergedProps);',\n\t\t\t\t\t'app.mount(\"#root\");',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Store app instance for HMR - used for manual component updates',\n\t\t\t\t\t'if (typeof window !== \"undefined\") {',\n\t\t\t\t\t' window.__VUE_APP__ = app;',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Post-mount: Apply preserved state to reactive refs in component tree',\n\t\t\t\t\t'// This restores state that lives in refs (like count) rather than props',\n\t\t\t\t\t'if (typeof window !== \"undefined\" && Object.keys(preservedState).length > 0) {',\n\t\t\t\t\t' requestAnimationFrame(function() {',\n\t\t\t\t\t' if (window.__VUE_APP__ && window.__VUE_APP__._instance) {',\n\t\t\t\t\t' applyPreservedState(window.__VUE_APP__._instance, preservedState);',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'function applyPreservedState(instance, state) {',\n\t\t\t\t\t' // Apply to root component setupState',\n\t\t\t\t\t' if (instance.setupState) {',\n\t\t\t\t\t' Object.keys(state).forEach(function(key) {',\n\t\t\t\t\t' const ref = instance.setupState[key];',\n\t\t\t\t\t' if (ref && typeof ref === \"object\" && \"value\" in ref) {',\n\t\t\t\t\t' ref.value = state[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' // Also apply to child components',\n\t\t\t\t\t' if (instance.subTree) {',\n\t\t\t\t\t' walkAndApply(instance.subTree, state);',\n\t\t\t\t\t' }',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'function walkAndApply(vnode, state) {',\n\t\t\t\t\t' if (!vnode) return;',\n\t\t\t\t\t' if (vnode.component && vnode.component.setupState) {',\n\t\t\t\t\t' Object.keys(state).forEach(function(key) {',\n\t\t\t\t\t' const ref = vnode.component.setupState[key];',\n\t\t\t\t\t' if (ref && typeof ref === \"object\" && \"value\" in ref) {',\n\t\t\t\t\t' ref.value = state[key];',\n\t\t\t\t\t' }',\n\t\t\t\t\t' });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' if (vnode.children && Array.isArray(vnode.children)) {',\n\t\t\t\t\t' vnode.children.forEach(function(child) { walkAndApply(child, state); });',\n\t\t\t\t\t' }',\n\t\t\t\t\t' if (vnode.component && vnode.component.subTree) {',\n\t\t\t\t\t' walkAndApply(vnode.component.subTree, state);',\n\t\t\t\t\t' }',\n\t\t\t\t\t'}',\n\t\t\t\t\t'',\n\t\t\t\t\t'// Clear preserved state after applying',\n\t\t\t\t\t'if (typeof window !== \"undefined\") {',\n\t\t\t\t\t' window.__HMR_PRESERVED_STATE__ = undefined;',\n\t\t\t\t\t'}'\n\t\t\t\t].join('\\n')\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tclientPath: clientOutputFile,\n\t\t\t\tcssPaths: result.cssPaths,\n\t\t\t\tindexPath: indexOutputFile,\n\t\t\t\tserverPath: result.serverPath\n\t\t\t};\n\t\t})\n\t);\n\n\tawait Promise.all(\n\t\tArray.from(allTsHelperPaths).map(async (tsPath) => {\n\t\t\tconst sourceCode = await file(tsPath).text();\n\t\t\tconst transpiledCode = transpiler.transformSync(sourceCode);\n\t\t\tconst relativeJsPath = relative(vueRootDir, tsPath).replace(\n\t\t\t\t/\\.ts$/,\n\t\t\t\t'.js'\n\t\t\t);\n\t\t\tconst outClientPath = join(clientOutputDir, relativeJsPath);\n\t\t\tconst outServerPath = join(serverOutputDir, relativeJsPath);\n\t\t\tawait mkdir(dirname(outClientPath), { recursive: true });\n\t\t\tawait mkdir(dirname(outServerPath), { recursive: true });\n\t\t\tawait write(outClientPath, transpiledCode);\n\t\t\tawait write(outServerPath, transpiledCode);\n\t\t})\n\t);\n\n\treturn {\n\t\tvueClientPaths: compiledPages.map((result) => result.clientPath),\n\t\tvueCssPaths: compiledPages.flatMap((result) => result.cssPaths),\n\t\tvueIndexPaths: compiledPages.map((result) => result.indexPath),\n\t\tvueServerPaths: compiledPages.map((result) => result.serverPath),\n\t\t// Export HMR metadata from vueHmrMetadata map (populated during compilation)\n\t\thmrMetadata: new Map(vueHmrMetadata)\n\t};\n};\n",
|
|
9
9
|
"/* Simple HTML HMR Implementation\n Lightweight approach: read HTML file → send HTML patch */\n\nimport { readFileSync, existsSync } from 'node:fs';\nimport { resolve } from 'node:path';\n\n/* Simple HTML HMR handler for server-side\n When an HTML file changes:\n 1. Read the HTML file\n 2. Extract body content (or return full HTML)\n 3. Return the HTML for patching */\nexport const handleHTMLUpdate = async (htmlFilePath: string) => {\n\ttry {\n\t\t// The htmlFilePath is now the BUILT file path (e.g., build/html/pages/HTMLExample.html)\n\t\t// This ensures we read HTML with updated CSS paths from updateAssetPaths\n\t\tconst resolvedPath = resolve(htmlFilePath);\n\n\t\tif (!existsSync(resolvedPath)) {\n\t\t\treturn null;\n\t\t}\n\n\t\t// Read the HTML file\n\t\tconst htmlContent = readFileSync(resolvedPath, 'utf-8');\n\n\t\t// Extract both head and body content for patching\n\t\t// We need head to update CSS links when CSS changes\n\t\tconst headMatch = htmlContent.match(/<head[^>]*>([\\s\\S]*?)<\\/head>/i);\n\t\tconst bodyMatch = htmlContent.match(/<body[^>]*>([\\s\\S]*)<\\/body>/i);\n\n\t\tif (bodyMatch && bodyMatch[1]) {\n\t\t\tconst bodyContent = bodyMatch[1].trim();\n\t\t\tconst headContent =\n\t\t\t\theadMatch && headMatch[1] ? headMatch[1].trim() : null;\n\n\t\t\t// Return object with both head and body for comprehensive updates\n\t\t\treturn {\n\t\t\t\tbody: bodyContent,\n\t\t\t\thead: headContent\n\t\t\t};\n\t\t}\n\n\t\t// Fallback: return full HTML if body extraction fails\n\n\t\treturn htmlContent;\n\t} catch {\n\t\treturn null;\n\t}\n};\n",
|
|
10
10
|
"export const ssrErrorPage = (framework: string, error: unknown): string => {\n\tconst frameworkColors: Record<string, string> = {\n\t\tangular: '#dd0031',\n\t\thtml: '#e34c26',\n\t\thtmx: '#1a365d',\n\t\treact: '#61dafb',\n\t\tsvelte: '#ff3e00',\n\t\tvue: '#42b883'\n\t};\n\n\tconst accent = frameworkColors[framework] ?? '#94a3b8';\n\tconst label = framework.charAt(0).toUpperCase() + framework.slice(1);\n\tconst message = error instanceof Error ? error.message : String(error);\n\n\treturn `<!DOCTYPE html>\n<html>\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>SSR Error - AbsoluteJS</title>\n<style>\n*{margin:0;padding:0;box-sizing:border-box}\nbody{min-height:100vh;background:linear-gradient(135deg,rgba(15,23,42,0.98) 0%,rgba(30,41,59,0.98) 100%);color:#e2e8f0;font-family:\"JetBrains Mono\",\"Fira Code\",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.6;display:flex;align-items:flex-start;justify-content:center;padding:32px}\n.card{max-width:720px;width:100%;background:rgba(30,41,59,0.6);border:1px solid rgba(71,85,105,0.5);border-radius:16px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.5),0 0 0 1px rgba(255,255,255,0.05);overflow:hidden}\n.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:rgba(15,23,42,0.5);border-bottom:1px solid rgba(71,85,105,0.4)}\n.brand{font-weight:700;font-size:20px;color:#fff;letter-spacing:-0.02em}\n.badge{padding:5px 10px;border-radius:8px;font-size:12px;font-weight:600;background:${accent};color:#fff;opacity:0.95;box-shadow:0 2px 4px rgba(0,0,0,0.2)}\n.kind{color:#94a3b8;font-size:13px;font-weight:500}\n.content{padding:24px}\n.label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:#94a3b8;margin-bottom:8px}\n.message{margin:0;padding:16px 20px;background:rgba(239,68,68,0.12);border:1px solid rgba(239,68,68,0.25);border-radius:10px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;color:#fca5a5;font-size:13px;line-height:1.5}\n.hint{margin-top:20px;padding:12px 20px;background:rgba(71,85,105,0.3);border-radius:10px;border:1px solid rgba(71,85,105,0.4);color:#cbd5e1;font-size:13px}\n</style>\n</head>\n<body>\n<div class=\"card\">\n<div class=\"header\">\n<div style=\"display:flex;align-items:center;gap:12px\">\n<span class=\"brand\">AbsoluteJS</span>\n<span class=\"badge\">${label}</span>\n</div>\n<span class=\"kind\">Server Render Error</span>\n</div>\n<div class=\"content\">\n<div class=\"label\">What went wrong</div>\n<pre class=\"message\">${message.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>')}</pre>\n<div class=\"hint\">A component threw during server-side rendering. Check the terminal for the full stack trace.</div>\n</div>\n</div>\n</body>\n</html>`;\n};\n",
|
|
11
11
|
"import type { Component as VueComponent } from 'vue';\nimport { ssrErrorPage } from '../utils/ssrErrorPage';\n\nexport const handleVuePageRequest = async <\n\tProps extends Record<string, unknown> = Record<never, never>\n>(\n\t_PageComponent: VueComponent<Props>,\n\tpagePath: string,\n\tindexPath: string,\n\theadTag: `<head>${string}</head>` = '<head></head>',\n\t...props: keyof Props extends never ? [] : [props: Props]\n) => {\n\ttry {\n\t\tconst [maybeProps] = props;\n\n\t\tconst { default: ImportedPageComponent } = await import(pagePath);\n\t\tconst { createSSRApp, h } = await import('vue');\n\t\tconst { renderToWebStream } = await import('vue/server-renderer');\n\n\t\tconst app = createSSRApp({\n\t\t\trender: () => h(ImportedPageComponent, maybeProps ?? null)\n\t\t});\n\n\t\tconst bodyStream = renderToWebStream(app);\n\n\t\tconst head = `<!DOCTYPE html><html>${headTag}<body><div id=\"root\">`;\n\t\tconst tail = `</div><script>window.__INITIAL_PROPS__=${JSON.stringify(\n\t\t\tmaybeProps ?? {}\n\t\t)}</script><script type=\"module\" src=\"${indexPath}\"></script></body></html>`;\n\n\t\tconst stream = new ReadableStream({\n\t\t\tstart(controller) {\n\t\t\t\tcontroller.enqueue(head);\n\t\t\t\tconst reader = bodyStream.getReader();\n\t\t\t\tconst pumpLoop = () => {\n\t\t\t\t\treader\n\t\t\t\t\t\t.read()\n\t\t\t\t\t\t.then(({ done, value }) =>\n\t\t\t\t\t\t\tdone\n\t\t\t\t\t\t\t\t? (controller.enqueue(tail), controller.close())\n\t\t\t\t\t\t\t\t: (controller.enqueue(value), pumpLoop())\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.catch((err) => controller.error(err));\n\t\t\t\t};\n\t\t\t\tpumpLoop();\n\t\t\t}\n\t\t});\n\n\t\treturn new Response(stream, {\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('[SSR] Vue render error:', error);\n\n\t\treturn new Response(ssrErrorPage('vue', error), {\n\t\t\tstatus: 500,\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t}\n};\n",
|
|
12
12
|
"type GenerateHeadElementProps = {\n\tcssPath?: string;\n\ttitle?: string;\n\ticon?: string;\n\tdescription?: string;\n\tfont?: string;\n};\n\nexport const generateHeadElement = ({\n\tcssPath,\n\ttitle = 'AbsoluteJS',\n\tdescription = 'A page created using AbsoluteJS',\n\tfont,\n\ticon = '/assets/ico/favicon.ico'\n}: GenerateHeadElementProps = {}) =>\n\t`<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>${title}</title>\n <meta name=\"description\" content=\"${description}\">\n <link rel=\"icon\" href=\"${icon}\" type=\"image/x-icon\">\n ${\n\t\tfont\n\t\t\t? `<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\">\n <link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin>\n <link href=\"https://fonts.googleapis.com/css2?family=${font}:wght@100..900&display=swap\" rel=\"stylesheet\">`\n\t\t\t: ''\n }\n ${cssPath ? `<link rel=\"stylesheet\" href=\"${cssPath}\" type=\"text/css\">` : ''}\n</head>` as const;\n",
|
|
13
13
|
"/* Simple Vue HMR Implementation\n Lightweight approach: use rebuilt files → re-render → send HTML patch */\n\nimport { basename, join, resolve } from 'node:path';\nimport { toPascal } from '../utils/stringModifiers';\n\n/* Simple Vue HMR handler for server-side\n When a Vue file changes:\n 1. The rebuild already compiled Vue and updated the manifest\n 2. Derive manifest keys dynamically from the source file path\n 3. Use manifest paths to import the rebuilt server component\n 4. Re-render the page\n 5. Return the new HTML for patching */\nexport const handleVueUpdate = async (\n\tvueFilePath: string,\n\tmanifest: Record<string, string>,\n\tbuildDir?: string\n) => {\n\ttry {\n\t\tconst resolvedPath = resolve(vueFilePath);\n\n\t\t// Derive manifest keys dynamically from the source file path\n\t\tconst fileName = basename(resolvedPath);\n\t\tconst baseName = fileName.replace(/\\.vue$/, '');\n\t\tconst pascalName = toPascal(baseName);\n\n\t\t// Vue manifest keys follow the pattern:\n\t\t// - {PascalName}: server bundle path\n\t\t// - {PascalName}Index: client bundle path\n\t\t// - {PascalName}CSS: CSS path (optional)\n\t\tconst componentKey = pascalName;\n\t\tconst indexKey = `${pascalName}Index`;\n\t\tconst cssKey = `${pascalName}CSS`;\n\n\t\t// Get server path from manifest (URL path like /vue/compiled/pages/VueExample.abc123.js)\n\t\tconst serverPath = manifest[componentKey];\n\n\t\tif (!serverPath) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Vue HMR] Server path not found in manifest for:',\n\t\t\t\tcomponentKey\n\t\t\t);\n\t\t\tconsole.warn(\n\t\t\t\t'[Vue HMR] Available manifest keys:',\n\t\t\t\tObject.keys(manifest).join(', ')\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\t// Manifest stores absolute paths for Vue server bundles (artifact.path)\n\t\t// Use directly if absolute; otherwise join with buildDir for relative paths\n\t\tconst absoluteServerPath =\n\t\t\tresolve(serverPath) === serverPath ||\n\t\t\tserverPath.startsWith('/') ||\n\t\t\t/^[A-Za-z]:[\\\\/]/.test(serverPath)\n\t\t\t\t? serverPath\n\t\t\t\t: join(\n\t\t\t\t\t\tbuildDir || process.cwd(),\n\t\t\t\t\t\tserverPath.replace(/^\\//, '')\n\t\t\t\t\t);\n\n\t\tconst cacheBuster = `?t=${Date.now()}`;\n\t\tconst serverModule = await import(\n\t\t\t`${absoluteServerPath}${cacheBuster}`\n\t\t);\n\n\t\tif (!serverModule || !serverModule.default) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Vue HMR] Module has no default export:',\n\t\t\t\tabsoluteServerPath\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\tconst indexPath = manifest[indexKey];\n\n\t\tif (!indexPath) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Vue HMR] Index path not found in manifest for:',\n\t\t\t\tindexKey\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { handleVuePageRequest } = await import('../vue/pageHandler');\n\t\tconst { generateHeadElement } = await import(\n\t\t\t'../utils/generateHeadElement'\n\t\t);\n\n\t\tconst response = await handleVuePageRequest(\n\t\t\tserverModule.default,\n\t\t\tserverPath,\n\t\t\tindexPath,\n\t\t\tgenerateHeadElement({\n\t\t\t\tcssPath: manifest[cssKey] || '',\n\t\t\t\ttitle: 'AbsoluteJS + Vue'\n\t\t\t}),\n\t\t\t{ initialCount: 0 }\n\t\t);\n\n\t\tconst html = await response.text();\n\n\t\t// Extract just the body content for patching (not the full HTML document)\n\t\t// Vue renders to <div id=\"root\"> inside <body>\n\t\tconst bodyMatch = html.match(/<body[^>]*>([\\s\\S]*)<\\/body>/i);\n\t\tif (bodyMatch && bodyMatch[1]) {\n\t\t\tconst bodyContent = bodyMatch[1].trim();\n\n\t\t\treturn bodyContent;\n\t\t}\n\n\t\treturn html;\n\t} catch (err) {\n\t\tconsole.error('[Vue HMR] Error in handleVueUpdate:', err);\n\t\treturn null;\n\t}\n};\n",
|
|
14
14
|
"const ESCAPE_LOOKUP: Record<string, string> = {\n\t'\\u2028': '\\\\u2028',\n\t'\\u2029': '\\\\u2029',\n\t'&': '\\\\u0026',\n\t'<': '\\\\u003C',\n\t'>': '\\\\u003E'\n};\n\nconst ESCAPE_REGEX = /[&><\\u2028\\u2029]/g;\n\nexport const escapeScriptContent = (content: string) =>\n\tcontent.replace(ESCAPE_REGEX, (char) => {\n\t\tconst escaped = ESCAPE_LOOKUP[char];\n\n\t\treturn escaped !== undefined ? escaped : char;\n\t});\n",
|
|
15
|
-
"import type { Component } from 'svelte';\nimport {
|
|
15
|
+
"import type { Component } from 'svelte';\nimport { DEFAULT_CHUNK_SIZE } from '../constants';\nimport { escapeScriptContent } from '../utils/escapeScriptContent';\n\nexport type RenderStreamOptions = {\n\tbootstrapScriptContent?: string;\n\tbootstrapScripts?: string[];\n\tbootstrapModules?: string[];\n\tnonce?: string;\n\tonError?: (error: unknown) => void;\n\tprogressiveChunkSize?: number;\n\tsignal?: AbortSignal;\n\theadContent?: string;\n\tbodyContent?: string;\n};\n\nexport const renderToReadableStream = async <\n\tProps extends Record<string, unknown> = Record<string, never>\n>(\n\tcomponent: Component<Props>,\n\tprops?: Props,\n\t{\n\t\tbootstrapScriptContent,\n\t\tbootstrapScripts = [],\n\t\tbootstrapModules = [],\n\t\tnonce,\n\t\tonError = console.error,\n\t\tprogressiveChunkSize = DEFAULT_CHUNK_SIZE,\n\t\tsignal,\n\t\theadContent,\n\t\tbodyContent\n\t}: RenderStreamOptions = {}\n) => {\n\ttry {\n\t\tconst { render } = await import('svelte/server');\n\t\tconst { head, body } =\n\t\t\ttypeof props === 'undefined'\n\t\t\t\t? // @ts-expect-error Svelte's render function can't determine which overload to choose when the component is generic\n\t\t\t\t\trender(component)\n\t\t\t\t: render(component, { props });\n\t\tconst nonceAttr = nonce ? ` nonce=\"${nonce}\"` : '';\n\t\tconst scripts =\n\t\t\t(bootstrapScriptContent\n\t\t\t\t? `<script${nonceAttr}>${escapeScriptContent(bootstrapScriptContent)}</script>`\n\t\t\t\t: '') +\n\t\t\tbootstrapScripts\n\t\t\t\t.map((src) => `<script${nonceAttr} src=\"${src}\"></script>`)\n\t\t\t\t.join('') +\n\t\t\tbootstrapModules\n\t\t\t\t.map(\n\t\t\t\t\t(src) =>\n\t\t\t\t\t\t`<script${nonceAttr} type=\"module\" src=\"${src}\"></script>`\n\t\t\t\t)\n\t\t\t\t.join('');\n\t\tconst encoder = new TextEncoder();\n\t\t// Warning: this encodes the entire document into memory in one buffer\n\t\tconst full = encoder.encode(\n\t\t\t`<!DOCTYPE html><html lang=\"en\"><head>${head}${headContent ?? ''}</head><body>${body}${scripts}${bodyContent ?? ''}</body></html>`\n\t\t);\n\n\t\tlet offset = 0;\n\n\t\treturn new ReadableStream<Uint8Array>({\n\t\t\ttype: 'bytes',\n\t\t\tcancel(reason) {\n\t\t\t\tonError?.(reason);\n\t\t\t},\n\t\t\tpull(controller) {\n\t\t\t\tif (signal?.aborted) {\n\t\t\t\t\tcontroller.close();\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (offset >= full.length) {\n\t\t\t\t\tcontroller.close();\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst end = Math.min(\n\t\t\t\t\toffset + progressiveChunkSize,\n\t\t\t\t\tfull.length\n\t\t\t\t);\n\t\t\t\tcontroller.enqueue(full.subarray(offset, end));\n\t\t\t\toffset = end;\n\t\t\t}\n\t\t});\n\t} catch (error) {\n\t\tonError?.(error);\n\t\tthrow error;\n\t}\n};\n",
|
|
16
16
|
"import type { Component as SvelteComponent } from 'svelte';\nimport { ssrErrorPage } from '../utils/ssrErrorPage';\n\n// Declare overloads matching Svelte's own component API to preserve correct type inference\nexport type HandleSveltePageRequest = {\n\t(\n\t\tPageComponent: SvelteComponent<Record<string, never>>,\n\t\tpagePath: string,\n\t\tindexPath: string\n\t): Promise<Response>;\n\t<P extends Record<string, unknown>>(\n\t\tPageComponent: SvelteComponent<P>,\n\t\tpagePath: string,\n\t\tindexPath: string,\n\t\tprops: P\n\t): Promise<Response>;\n};\n\nexport const handleSveltePageRequest: HandleSveltePageRequest = async <\n\tP extends Record<string, unknown>\n>(\n\t_PageComponent: SvelteComponent<P>,\n\tpagePath: string,\n\tindexPath: string,\n\tprops?: P\n) => {\n\ttry {\n\t\tconst { default: ImportedPageComponent } = await import(pagePath);\n\t\tconst { renderToReadableStream } = await import(\n\t\t\t'./renderToReadableStream'\n\t\t);\n\n\t\tconst stream = await renderToReadableStream(\n\t\t\tImportedPageComponent,\n\t\t\tprops,\n\t\t\t{\n\t\t\t\tbootstrapModules: indexPath ? [indexPath] : [],\n\t\t\t\tbootstrapScriptContent: `window.__INITIAL_PROPS__=${JSON.stringify(\n\t\t\t\t\tprops\n\t\t\t\t)}`\n\t\t\t}\n\t\t);\n\n\t\treturn new Response(stream, {\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('[SSR] Svelte render error:', error);\n\n\t\treturn new Response(ssrErrorPage('svelte', error), {\n\t\t\tstatus: 500,\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t}\n};\n",
|
|
17
17
|
"/* Simple Svelte HMR Implementation\n Lightweight approach: use rebuilt files → re-render → send HTML patch */\n\nimport { basename, join, resolve } from 'node:path';\nimport { toPascal } from '../utils/stringModifiers';\n\n/* Simple Svelte HMR handler for server-side\n When a Svelte file changes:\n 1. The rebuild already compiled Svelte and updated the manifest\n 2. Derive manifest keys dynamically from the source file path\n 3. Use manifest paths to import the rebuilt server component\n 4. Re-render the page\n 5. Return the new HTML for patching */\nexport const handleSvelteUpdate = async (\n\tsvelteFilePath: string,\n\tmanifest: Record<string, string>,\n\tbuildDir?: string\n) => {\n\ttry {\n\t\tconst resolvedPath = resolve(svelteFilePath);\n\n\t\t// Derive manifest keys dynamically from the source file path\n\t\tconst fileName = basename(resolvedPath);\n\t\tconst baseName = fileName.replace(/\\.svelte$/, '');\n\t\tconst pascalName = toPascal(baseName);\n\n\t\t// Svelte manifest keys follow the pattern:\n\t\t// - {PascalName}: server bundle path\n\t\t// - {PascalName}Index: client bundle path\n\t\t// - {PascalName}CSS: CSS path (optional)\n\t\tconst componentKey = pascalName;\n\t\tconst indexKey = `${pascalName}Index`;\n\t\tconst cssKey = `${pascalName}CSS`;\n\n\t\t// Get server path from manifest (URL path like /svelte/compiled/pages/SvelteExample.abc123.js)\n\t\tconst serverPath = manifest[componentKey];\n\n\t\tif (!serverPath) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Svelte HMR] Server path not found in manifest for:',\n\t\t\t\tcomponentKey\n\t\t\t);\n\t\t\tconsole.warn(\n\t\t\t\t'[Svelte HMR] Available manifest keys:',\n\t\t\t\tObject.keys(manifest).join(', ')\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\t// Manifest stores absolute paths for Svelte server bundles (artifact.path)\n\t\t// Use directly if absolute; otherwise join with buildDir for relative paths\n\t\tconst absoluteServerPath =\n\t\t\tresolve(serverPath) === serverPath ||\n\t\t\tserverPath.startsWith('/') ||\n\t\t\t/^[A-Za-z]:[\\\\/]/.test(serverPath)\n\t\t\t\t? serverPath\n\t\t\t\t: join(\n\t\t\t\t\t\tbuildDir || process.cwd(),\n\t\t\t\t\t\tserverPath.replace(/^\\//, '')\n\t\t\t\t\t);\n\n\t\tconst cacheBuster = `?t=${Date.now()}`;\n\t\tconst serverModule = await import(\n\t\t\t`${absoluteServerPath}${cacheBuster}`\n\t\t);\n\n\t\tif (!serverModule || !serverModule.default) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Svelte HMR] Module has no default export:',\n\t\t\t\tabsoluteServerPath\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\tconst indexPath = manifest[indexKey];\n\n\t\tif (!indexPath) {\n\t\t\tconsole.warn(\n\t\t\t\t'[Svelte HMR] Index path not found in manifest for:',\n\t\t\t\tindexKey\n\t\t\t);\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { handleSveltePageRequest } = await import(\n\t\t\t'../svelte/pageHandler'\n\t\t);\n\n\t\tconst response = await handleSveltePageRequest(\n\t\t\tserverModule.default,\n\t\t\tserverPath,\n\t\t\tindexPath,\n\t\t\t{\n\t\t\t\tcssPath: manifest[cssKey] || '',\n\t\t\t\tinitialCount: 0\n\t\t\t}\n\t\t);\n\n\t\tconst html = await response.text();\n\n\t\t// Extract just the body content for patching (not the full HTML document)\n\t\t// Svelte renders to <body> directly\n\t\tconst bodyMatch = html.match(/<body[^>]*>([\\s\\S]*)<\\/body>/i);\n\t\tif (bodyMatch && bodyMatch[1]) {\n\t\t\tconst bodyContent = bodyMatch[1].trim();\n\n\t\t\treturn bodyContent;\n\t\t}\n\n\t\treturn html;\n\t} catch (err) {\n\t\tconsole.error('[Svelte HMR] Error in handleSvelteUpdate:', err);\n\t\treturn null;\n\t}\n};\n",
|
|
18
18
|
"/* Simple HTMX HMR Implementation\n Lightweight approach: read HTMX HTML file → send HTML patch */\n\nimport { readFileSync, existsSync } from 'node:fs';\nimport { resolve } from 'node:path';\n\n/* Simple HTMX HMR handler for server-side\n When an HTMX file changes:\n 1. Read the HTML file\n 2. Extract body content (or return full HTML)\n 3. Return the HTML for patching */\nexport const handleHTMXUpdate = async (htmxFilePath: string) => {\n\ttry {\n\t\tconst resolvedPath = resolve(htmxFilePath);\n\n\t\tif (!existsSync(resolvedPath)) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst htmlContent = readFileSync(resolvedPath, 'utf-8');\n\n\t\t// Extract both head and body content for patching\n\t\t// We need head to update CSS links when CSS changes\n\t\tconst headMatch = htmlContent.match(/<head[^>]*>([\\s\\S]*?)<\\/head>/i);\n\t\tconst bodyMatch = htmlContent.match(/<body[^>]*>([\\s\\S]*)<\\/body>/i);\n\n\t\tif (bodyMatch && bodyMatch[1]) {\n\t\t\tconst bodyContent = bodyMatch[1].trim();\n\t\t\tconst headContent =\n\t\t\t\theadMatch && headMatch[1] ? headMatch[1].trim() : null;\n\n\t\t\t// Return object with both head and body for comprehensive updates\n\t\t\treturn {\n\t\t\t\tbody: bodyContent,\n\t\t\t\thead: headContent\n\t\t\t};\n\t\t}\n\n\t\treturn htmlContent;\n\t} catch {\n\t\treturn null;\n\t}\n};\n",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"import { resolve } from 'node:path';\n\n/* Component classification for React Fast Refresh\n Distinguishes between Client Components and Server Components */\nexport type ComponentType = 'client' | 'server';\n\n/* Classify a React component file as either 'client' or 'server'\n \n Rules:\n - Files in /react/pages/ → 'server' (Server Components - rendered on server)\n - Files in /react/components/ → 'client' (Client Components - client-only)\n - Files in /react/composables/ → 'client' (Client Components - client-only)\n - All other React files → 'client' (default to client for safety)\n \n This classification determines how HMR updates are handled:\n - Server Components: Re-render on server, send flight data, patch DOM\n - Client Components: Hot-replace module, re-render in client tree\n*/\nexport const classifyComponent = (filePath: string) => {\n\tconst normalizedPath = resolve(filePath);\n\n\t// Server Components: Pages are rendered on the server\n\tif (normalizedPath.includes('/react/pages/')) {\n\t\treturn 'server';\n\t}\n\n\t// Client Components: Components and composables are client-only\n\tif (\n\t\tnormalizedPath.includes('/react/components/') ||\n\t\tnormalizedPath.includes('/react/composables/')\n\t) {\n\t\treturn 'client';\n\t}\n\n\t// Default to 'client' for any other React files\n\t// This is safer than defaulting to 'server' because client components\n\t// can always be hot-replaced, but server components require special handling\n\treturn 'client';\n};\n",
|
|
53
53
|
"import type { HMRState } from './clientManager';\nimport { serializeModuleVersions } from './moduleVersionTracker';\nimport type { HMRWebSocket } from '../../types/websocket';\nimport { WS_READY_STATE_OPEN } from '../../types/websocket';\nimport type { HMRClientMessage } from '../../types/messages';\nimport { isValidHMRClientMessage } from '../../types/messages';\n\n/* Magic pt. 2 - when a browser connects to our WebSocket\n We send them the current manifest so they know what files exist\n Like giving them a menu of all the dishes we can serve */\nexport const handleClientConnect = (\n\tstate: HMRState,\n\tclient: HMRWebSocket,\n\tmanifest: Record<string, string>\n) => {\n\tstate.connectedClients.add(client);\n\n\t// Send them the current state of the menu (manifest) and module versions\n\tconst serverVersions = serializeModuleVersions(state.moduleVersions);\n\tclient.send(\n\t\tJSON.stringify({\n\t\t\tdata: {\n\t\t\t\tmanifest,\n\t\t\t\tserverVersions\n\t\t\t},\n\t\t\ttimestamp: Date.now(),\n\t\t\ttype: 'manifest'\n\t\t})\n\t);\n\n\t// And confirm they're connected\n\tclient.send(\n\t\tJSON.stringify({\n\t\t\tmessage: 'HMR client connected successfully',\n\t\t\ttimestamp: Date.now(),\n\t\t\ttype: 'connected'\n\t\t})\n\t);\n};\n\n/* When a client disconnects, remove them from our tracking\n This prevents memory leaks and keeps our client list clean */\nexport const handleClientDisconnect = (\n\tstate: HMRState,\n\tclient: HMRWebSocket\n) => {\n\tstate.connectedClients.delete(client);\n};\n\n/* Handle messages from clients - they might ping us or request rebuilds\n We need to handle different message types because WebSocket is just a pipe/stream */\nexport const handleHMRMessage = (\n\tstate: HMRState,\n\tclient: HMRWebSocket,\n\tmessage: unknown\n) => {\n\ttry {\n\t\t/* WebSocket messages can come in different formats\n sometimes they're strings, sometimes they're Buffers, sometimes they're objects...\n we need to handle all of them because JavaScript is weird like that */\n\t\tlet parsedData: unknown;\n\n\t\tif (typeof message === 'string') {\n\t\t\tparsedData = JSON.parse(message);\n\t\t} else if (message instanceof Buffer) {\n\t\t\tparsedData = JSON.parse(message.toString());\n\t\t} else if (message instanceof ArrayBuffer) {\n\t\t\tparsedData = JSON.parse(\n\t\t\t\tnew TextDecoder().decode(new Uint8Array(message))\n\t\t\t);\n\t\t} else if (ArrayBuffer.isView(message)) {\n\t\t\tparsedData = JSON.parse(\n\t\t\t\tnew TextDecoder().decode(message as Uint8Array)\n\t\t\t);\n\t\t} else if (typeof message === 'object' && message !== null) {\n\t\t\t// Message is already an object - no parsing needed\n\t\t\tparsedData = message;\n\t\t} else {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!isValidHMRClientMessage(parsedData)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst data: HMRClientMessage = parsedData;\n\n\t\tswitch (data.type) {\n\t\t\tcase 'ping':\n\t\t\t\t// Client is checking if we're alive - respond with pong\n\t\t\t\tclient.send(\n\t\t\t\t\tJSON.stringify({\n\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\ttype: 'pong'\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t\tbreak;\n\n\t\t\tcase 'request-rebuild':\n\t\t\t\t// Note: triggerRebuild would be called from outside\n\t\t\t\tbreak;\n\n\t\t\tcase 'ready':\n\t\t\t\tbreak;\n\n\t\t\tcase 'hydration-error':\n\t\t\t\tbreak;\n\t\t}\n\t} catch {}\n};\n\n/* Send messages to all connected WebSocket clients\n this is how we notify browsers when files change */\nexport const broadcastToClients = (\n\tstate: HMRState,\n\tmessage: { type: string; [key: string]: any }\n) => {\n\tconst messageStr = JSON.stringify({\n\t\t...message,\n\t\ttimestamp: Date.now()\n\t});\n\n\tlet sentCount = 0;\n\tconst clientsToRemove: HMRWebSocket[] = [];\n\n\tfor (const client of state.connectedClients) {\n\t\tif (client.readyState === WS_READY_STATE_OPEN) {\n\t\t\ttry {\n\t\t\t\tclient.send(messageStr);\n\t\t\t\tsentCount++;\n\t\t\t} catch {\n\t\t\t\tclientsToRemove.push(client);\n\t\t\t}\n\t\t} else {\n\t\t\t// Mark closed clients for removal\n\t\t\tclientsToRemove.push(client);\n\t\t}\n\t}\n\n\t// Remove closed/failed clients\n\tfor (const client of clientsToRemove) {\n\t\tstate.connectedClients.delete(client);\n\t}\n};\n",
|
|
54
54
|
"const isWrapped = (\n\tsource: Record<string, string> | { manifest: Record<string, string> }\n): source is { manifest: Record<string, string> } =>\n\t'manifest' in source &&\n\ttypeof source.manifest === 'object' &&\n\t!Array.isArray(source.manifest);\n\nexport const asset = (\n\tsource: Record<string, string> | { manifest: Record<string, string> },\n\tname: string\n) => {\n\tconst assetPath = isWrapped(source) ? source.manifest[name] : source[name];\n\n\tif (assetPath === undefined) {\n\t\tthrow new Error(`Asset \"${name}\" not found in manifest.`);\n\t}\n\n\treturn assetPath;\n};\n",
|
|
55
|
-
"import { file } from 'bun';\n\nexport { handleReactPageRequest } from '../react/pageHandler';\
|
|
55
|
+
"import { file } from 'bun';\n\nexport { handleReactPageRequest } from '../react/pageHandler';\n\nexport const handleHTMLPageRequest = (pagePath: string) => file(pagePath);\n\nexport const handleHTMXPageRequest = (pagePath: string) => file(pagePath);\n",
|
|
56
56
|
"import type { ComponentType as ReactComponent } from 'react';\nimport { ssrErrorPage } from '../utils/ssrErrorPage';\n\nexport const handleReactPageRequest = async <\n\tProps extends Record<string, unknown> = Record<never, never>\n>(\n\tPageComponent: ReactComponent<Props>,\n\tindex: string,\n\t...props: keyof Props extends never ? [] : [props: Props]\n) => {\n\ttry {\n\t\tconst [maybeProps] = props;\n\t\tconst { createElement } = await import('react');\n\t\tconst { renderToReadableStream } = await import('react-dom/server');\n\n\t\tconst element =\n\t\t\tmaybeProps !== undefined\n\t\t\t\t? createElement(PageComponent, maybeProps)\n\t\t\t\t: createElement(PageComponent);\n\n\t\tconst stream = await renderToReadableStream(element, {\n\t\t\tbootstrapModules: [index],\n\t\t\tbootstrapScriptContent: maybeProps\n\t\t\t\t? `window.__INITIAL_PROPS__=${JSON.stringify(maybeProps)}`\n\t\t\t\t: undefined,\n\t\t\tonError(error: unknown) {\n\t\t\t\tconsole.error('[SSR] React streaming error:', error);\n\t\t\t}\n\t\t});\n\n\t\treturn new Response(stream, {\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('[SSR] React render error:', error);\n\n\t\treturn new Response(ssrErrorPage('react', error), {\n\t\t\tstatus: 500,\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t}\n};\n",
|
|
57
57
|
"export const pageRouterPlugin = () => {\n\tconsole.log('Page Router Plugin Not Implemented Yet');\n};\n",
|
|
58
58
|
"import Elysia from 'elysia';\nimport { HMRState } from '../dev/clientManager';\nimport { getMimeType, lookupAsset } from '../dev/assetStore';\nimport {\n\thandleClientConnect,\n\thandleClientDisconnect,\n\thandleHMRMessage\n} from '../dev/webSocket';\n\nconst STORE_KEY = '__elysiaStore';\n\n/* Preserve Elysia store across bun --hot reloads.\n globalThis survives re-evaluation, so we save the store reference\n before each reload and restore values into the fresh instance. */\nconst restoreStore = (app: Elysia) => {\n\tconst saved = (globalThis as Record<string, unknown>)[STORE_KEY] as\n\t\t| Record<string, unknown>\n\t\t| undefined;\n\n\tif (saved) {\n\t\tconst store = app.store as Record<string, unknown>;\n\t\tfor (const key of Object.keys(saved)) {\n\t\t\tstore[key] = saved[key];\n\t\t}\n\t}\n\n\t(globalThis as Record<string, unknown>)[STORE_KEY] = app.store;\n};\n\n/* HMR plugin for Elysia\n Adds WebSocket endpoint and status endpoint.\n HMR client code is baked into framework index files (React/Svelte/Vue)\n and injected into HTML/HTMX files at build time.\n Also preserves Elysia store state across hot reloads. */\nexport const hmr = (hmrState: HMRState, manifest: Record<string, string>) => {\n\treturn (app: Elysia) => {\n\t\trestoreStore(app);\n\n\t\treturn app\n\t\t\t.onBeforeHandle(({ request }) => {\n\t\t\t\t/* Fast path: only parse URL for requests that could be assets.\n\t\t\t\t Asset paths always start with / and contain a dot (extension).\n\t\t\t\t Skip API routes, WebSocket upgrades, and page navigations. */\n\t\t\t\tconst rawUrl = request.url;\n\t\t\t\tconst qIdx = rawUrl.indexOf('?');\n\t\t\t\tconst pathEnd = qIdx === -1 ? rawUrl.length : qIdx;\n\t\t\t\t/* URL is absolute (http://host/path), find the path portion */\n\t\t\t\tconst pathStart = rawUrl.indexOf('/', rawUrl.indexOf('//') + 2);\n\t\t\t\tconst pathname = rawUrl.slice(pathStart, pathEnd);\n\n\t\t\t\tconst bytes = lookupAsset(hmrState.assetStore, pathname);\n\t\t\t\tif (bytes) {\n\t\t\t\t\treturn new Response(new Uint8Array(bytes).buffer, {\n\t\t\t\t\t\theaders: {\n\t\t\t\t\t\t\t'Cache-Control':\n\t\t\t\t\t\t\t\t'public, max-age=31536000, immutable',\n\t\t\t\t\t\t\t'Content-Type': getMimeType(pathname)\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t})\n\t\t\t.ws('/hmr', {\n\t\t\t\tclose: (ws) => handleClientDisconnect(hmrState, ws),\n\t\t\t\tmessage: (ws, msg) => handleHMRMessage(hmrState, ws, msg),\n\t\t\t\topen: (ws) => handleClientConnect(hmrState, ws, manifest)\n\t\t\t})\n\t\t\t.get('/hmr-status', () => ({\n\t\t\t\tconnectedClients: hmrState.connectedClients.size,\n\t\t\t\tisRebuilding: hmrState.isRebuilding,\n\t\t\t\tmanifestKeys: Object.keys(manifest),\n\t\t\t\trebuildQueue: Array.from(hmrState.rebuildQueue),\n\t\t\t\ttimestamp: Date.now()\n\t\t\t}));\n\t};\n};\n",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"/**\n * Utility for registering client-side scripts that need to run after Angular SSR hydration.\n *\n * This is necessary because Angular's lifecycle hooks don't always run reliably on the client\n * after SSR hydration, especially for event listeners attached to DOM elements.\n *\n * Usage in Angular components:\n * ```typescript\n * import { registerClientScript } from '@absolutejs/absolute';\n *\n * // Register an event listener script\n * registerClientScript(() => {\n * const element = document.querySelector('.my-element');\n * if (element) {\n * element.addEventListener('click', () => {\n * console.log('Clicked!');\n * });\n * }\n * });\n * ```\n *\n * The script will be automatically injected into the HTML response and executed on the client.\n */\n\n// Request-scoped registry for client scripts\n// Each request gets its own set of scripts to inject\nconst scriptRegistry = new Map<string, Set<() => void>>();\n\n// Generate a unique request ID for tracking scripts per request\nlet requestCounter = 0;\nconst getRequestId = () => `req_${Date.now()}_${++requestCounter}`;\n\n/**\n * Register a client-side script to be injected into the HTML response.\n *\n * @param script - A function containing the client-side code to execute\n * @param requestId - Optional request ID. If not provided, uses the current request context.\n * @returns The request ID for this script registration\n */\nexport const registerClientScript = (\n\tscript: () => void,\n\trequestId?: string\n) => {\n\t// If no requestId provided, try to get it from global context (set by page handler during SSR)\n\tconst id =\n\t\trequestId ||\n\t\t(globalThis as any).__absolutejs_requestId ||\n\t\tgetRequestId();\n\n\tif (!scriptRegistry.has(id)) {\n\t\tscriptRegistry.set(id, new Set());\n\t}\n\n\tscriptRegistry.get(id)!.add(script);\n\n\treturn id;\n};\n\n// Make registerClientScript available globally during SSR for Angular components\n// Using type assertion for globalThis extension\nif (typeof globalThis !== 'undefined') {\n\t(\n\t\tglobalThis as {\n\t\t\tregisterClientScript?: (script: () => void) => string;\n\t\t}\n\t).registerClientScript = registerClientScript;\n}\n\n/**\n * Get all registered scripts for a request and clear them.\n * This is called by the page handler after rendering.\n *\n * @param requestId - The request ID to get scripts for\n * @returns Array of script functions, or empty array if none registered\n */\nexport const getAndClearClientScripts = (requestId: string) => {\n\tconst scripts = scriptRegistry.get(requestId);\n\tif (!scripts) {\n\t\treturn [];\n\t}\n\n\tconst scriptArray = Array.from(scripts);\n\tscriptRegistry.delete(requestId);\n\n\treturn scriptArray;\n};\n\n/**\n * Generate JavaScript code from registered scripts.\n * Wraps each script in an IIFE and combines them.\n *\n * @param scripts - Array of script functions\n * @returns JavaScript code string to inject\n */\nexport const generateClientScriptCode = (scripts: (() => void)[]) => {\n\tif (scripts.length === 0) {\n\t\treturn '';\n\t}\n\n\t// Convert functions to strings and wrap in IIFE\n\tconst scriptCode = scripts\n\t\t.map((script, index) => {\n\t\t\t// Get the function body as a string\n\t\t\tconst funcString = script.toString();\n\n\t\t\t// Extract the body (everything between { and })\n\t\t\tconst bodyMatch = funcString.match(/\\{([\\s\\S]*)\\}/);\n\t\t\tif (!bodyMatch || !bodyMatch[1]) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\tconst body = bodyMatch[1].trim();\n\n\t\t\t// Wrap in IIFE with retry logic for DOM readiness\n\t\t\treturn `\n\t(function() {\n\t\tfunction executeScript_${index}() {\n\t\t\t${body}\n\t\t}\n\t\t\n\t\t// Try executing immediately if DOM is ready\n\t\tif (document.readyState === 'complete' || document.readyState === 'interactive') {\n\t\t\texecuteScript_${index}();\n\t\t} else {\n\t\t\tdocument.addEventListener('DOMContentLoaded', executeScript_${index});\n\t\t}\n\t\t\n\t\t// Also try with delays to ensure element is available after hydration\n\t\tsetTimeout(executeScript_${index}, 100);\n\t\tsetTimeout(executeScript_${index}, 300);\n\t\tsetTimeout(executeScript_${index}, 500);\n\t\tsetTimeout(executeScript_${index}, 1000);\n\t\t\n\t\t// Fallback on window load\n\t\twindow.addEventListener('load', executeScript_${index});\n\t})();`;\n\t\t})\n\t\t.join('\\n');\n\n\treturn `<script>\n(function() {\n${scriptCode}\n})();\n</script>`;\n};\n\n/**\n * Clear all registered scripts (useful for cleanup or testing)\n */\nexport const clearAllClientScripts = () => {\n\tscriptRegistry.clear();\n};\n",
|
|
63
63
|
"/**\n * Type-safe helper to get the registerClientScript function during SSR.\n *\n * This function safely accesses the global registerClientScript that's made\n * available during Angular SSR rendering. It returns null if not available\n * (e.g., when running outside of SSR context).\n *\n * @returns The registerClientScript function if available, null otherwise\n */\nexport const getRegisterClientScript = () => {\n\t// Type-safe access to global registerClientScript\n\tconst globalRegister = (\n\t\tglobalThis as {\n\t\t\tregisterClientScript?: (script: () => void) => string;\n\t\t}\n\t).registerClientScript;\n\n\tif (globalRegister && typeof globalRegister === 'function') {\n\t\treturn globalRegister;\n\t}\n\n\treturn null;\n};\n"
|
|
64
64
|
],
|
|
65
|
-
"mappings": "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",
|
|
66
|
-
"debugId": "
|
|
65
|
+
"mappings": "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",
|
|
66
|
+
"debugId": "AC20DDC75B328D9A64756E2164756E21",
|
|
67
67
|
"names": []
|
|
68
68
|
}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
export { handleReactPageRequest } from '../react/pageHandler';
|
|
2
|
-
export { handleSveltePageRequest } from '../svelte/pageHandler';
|
|
3
|
-
export { handleVuePageRequest } from '../vue/pageHandler';
|
|
4
2
|
export declare const handleHTMLPageRequest: (pagePath: string) => Bun.BunFile;
|
|
5
3
|
export declare const handleHTMXPageRequest: (pagePath: string) => Bun.BunFile;
|
package/dist/svelte/index.js
CHANGED
|
@@ -93,7 +93,6 @@ var exports_renderToReadableStream = {};
|
|
|
93
93
|
__export(exports_renderToReadableStream, {
|
|
94
94
|
renderToReadableStream: () => renderToReadableStream
|
|
95
95
|
});
|
|
96
|
-
import { render } from "svelte/server";
|
|
97
96
|
var renderToReadableStream = async (component, props, {
|
|
98
97
|
bootstrapScriptContent,
|
|
99
98
|
bootstrapScripts = [],
|
|
@@ -106,6 +105,7 @@ var renderToReadableStream = async (component, props, {
|
|
|
106
105
|
bodyContent
|
|
107
106
|
} = {}) => {
|
|
108
107
|
try {
|
|
108
|
+
const { render } = await import("svelte/server");
|
|
109
109
|
const { head, body } = typeof props === "undefined" ? render(component) : render(component, { props });
|
|
110
110
|
const nonceAttr = nonce ? ` nonce="${nonce}"` : "";
|
|
111
111
|
const scripts = (bootstrapScriptContent ? `<script${nonceAttr}>${escapeScriptContent(bootstrapScriptContent)}</script>` : "") + bootstrapScripts.map((src) => `<script${nonceAttr} src="${src}"></script>`).join("") + bootstrapModules.map((src) => `<script${nonceAttr} type="module" src="${src}"></script>`).join("");
|
|
@@ -175,5 +175,5 @@ export {
|
|
|
175
175
|
handleSveltePageRequest
|
|
176
176
|
};
|
|
177
177
|
|
|
178
|
-
//# debugId=
|
|
178
|
+
//# debugId=8D920408CB1CBC6C64756E2164756E21
|
|
179
179
|
//# sourceMappingURL=index.js.map
|
package/dist/svelte/index.js.map
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
"export const ssrErrorPage = (framework: string, error: unknown): string => {\n\tconst frameworkColors: Record<string, string> = {\n\t\tangular: '#dd0031',\n\t\thtml: '#e34c26',\n\t\thtmx: '#1a365d',\n\t\treact: '#61dafb',\n\t\tsvelte: '#ff3e00',\n\t\tvue: '#42b883'\n\t};\n\n\tconst accent = frameworkColors[framework] ?? '#94a3b8';\n\tconst label = framework.charAt(0).toUpperCase() + framework.slice(1);\n\tconst message = error instanceof Error ? error.message : String(error);\n\n\treturn `<!DOCTYPE html>\n<html>\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>SSR Error - AbsoluteJS</title>\n<style>\n*{margin:0;padding:0;box-sizing:border-box}\nbody{min-height:100vh;background:linear-gradient(135deg,rgba(15,23,42,0.98) 0%,rgba(30,41,59,0.98) 100%);color:#e2e8f0;font-family:\"JetBrains Mono\",\"Fira Code\",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;line-height:1.6;display:flex;align-items:flex-start;justify-content:center;padding:32px}\n.card{max-width:720px;width:100%;background:rgba(30,41,59,0.6);border:1px solid rgba(71,85,105,0.5);border-radius:16px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.5),0 0 0 1px rgba(255,255,255,0.05);overflow:hidden}\n.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;background:rgba(15,23,42,0.5);border-bottom:1px solid rgba(71,85,105,0.4)}\n.brand{font-weight:700;font-size:20px;color:#fff;letter-spacing:-0.02em}\n.badge{padding:5px 10px;border-radius:8px;font-size:12px;font-weight:600;background:${accent};color:#fff;opacity:0.95;box-shadow:0 2px 4px rgba(0,0,0,0.2)}\n.kind{color:#94a3b8;font-size:13px;font-weight:500}\n.content{padding:24px}\n.label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:#94a3b8;margin-bottom:8px}\n.message{margin:0;padding:16px 20px;background:rgba(239,68,68,0.12);border:1px solid rgba(239,68,68,0.25);border-radius:10px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;color:#fca5a5;font-size:13px;line-height:1.5}\n.hint{margin-top:20px;padding:12px 20px;background:rgba(71,85,105,0.3);border-radius:10px;border:1px solid rgba(71,85,105,0.4);color:#cbd5e1;font-size:13px}\n</style>\n</head>\n<body>\n<div class=\"card\">\n<div class=\"header\">\n<div style=\"display:flex;align-items:center;gap:12px\">\n<span class=\"brand\">AbsoluteJS</span>\n<span class=\"badge\">${label}</span>\n</div>\n<span class=\"kind\">Server Render Error</span>\n</div>\n<div class=\"content\">\n<div class=\"label\">What went wrong</div>\n<pre class=\"message\">${message.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>')}</pre>\n<div class=\"hint\">A component threw during server-side rendering. Check the terminal for the full stack trace.</div>\n</div>\n</div>\n</body>\n</html>`;\n};\n",
|
|
6
6
|
"export const UNFOUND_INDEX = -1;\nexport const SECONDS_IN_A_MINUTE = 60;\nexport const MILLISECONDS_IN_A_SECOND = 1000;\nexport const MILLISECONDS_IN_A_MINUTE =\n\tMILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;\nexport const MINUTES_IN_AN_HOUR = 60;\nexport const HOURS_IN_DAY = 24;\nexport const MILLISECONDS_IN_A_DAY =\n\tMILLISECONDS_IN_A_SECOND *\n\tSECONDS_IN_A_MINUTE *\n\tMINUTES_IN_AN_HOUR *\n\tHOURS_IN_DAY;\nexport const TIME_PRECISION = 2;\nexport const TWO_THIRDS = 2 / 3;\nexport const DEFAULT_PORT = 3000;\nexport const DEFAULT_CHUNK_SIZE = 16_384;\nexport const BUN_BUILD_WARNING_SUPPRESSION =\n\t'wildcard sideEffects are not supported yet';\n",
|
|
7
7
|
"const ESCAPE_LOOKUP: Record<string, string> = {\n\t'\\u2028': '\\\\u2028',\n\t'\\u2029': '\\\\u2029',\n\t'&': '\\\\u0026',\n\t'<': '\\\\u003C',\n\t'>': '\\\\u003E'\n};\n\nconst ESCAPE_REGEX = /[&><\\u2028\\u2029]/g;\n\nexport const escapeScriptContent = (content: string) =>\n\tcontent.replace(ESCAPE_REGEX, (char) => {\n\t\tconst escaped = ESCAPE_LOOKUP[char];\n\n\t\treturn escaped !== undefined ? escaped : char;\n\t});\n",
|
|
8
|
-
"import type { Component } from 'svelte';\nimport {
|
|
8
|
+
"import type { Component } from 'svelte';\nimport { DEFAULT_CHUNK_SIZE } from '../constants';\nimport { escapeScriptContent } from '../utils/escapeScriptContent';\n\nexport type RenderStreamOptions = {\n\tbootstrapScriptContent?: string;\n\tbootstrapScripts?: string[];\n\tbootstrapModules?: string[];\n\tnonce?: string;\n\tonError?: (error: unknown) => void;\n\tprogressiveChunkSize?: number;\n\tsignal?: AbortSignal;\n\theadContent?: string;\n\tbodyContent?: string;\n};\n\nexport const renderToReadableStream = async <\n\tProps extends Record<string, unknown> = Record<string, never>\n>(\n\tcomponent: Component<Props>,\n\tprops?: Props,\n\t{\n\t\tbootstrapScriptContent,\n\t\tbootstrapScripts = [],\n\t\tbootstrapModules = [],\n\t\tnonce,\n\t\tonError = console.error,\n\t\tprogressiveChunkSize = DEFAULT_CHUNK_SIZE,\n\t\tsignal,\n\t\theadContent,\n\t\tbodyContent\n\t}: RenderStreamOptions = {}\n) => {\n\ttry {\n\t\tconst { render } = await import('svelte/server');\n\t\tconst { head, body } =\n\t\t\ttypeof props === 'undefined'\n\t\t\t\t? // @ts-expect-error Svelte's render function can't determine which overload to choose when the component is generic\n\t\t\t\t\trender(component)\n\t\t\t\t: render(component, { props });\n\t\tconst nonceAttr = nonce ? ` nonce=\"${nonce}\"` : '';\n\t\tconst scripts =\n\t\t\t(bootstrapScriptContent\n\t\t\t\t? `<script${nonceAttr}>${escapeScriptContent(bootstrapScriptContent)}</script>`\n\t\t\t\t: '') +\n\t\t\tbootstrapScripts\n\t\t\t\t.map((src) => `<script${nonceAttr} src=\"${src}\"></script>`)\n\t\t\t\t.join('') +\n\t\t\tbootstrapModules\n\t\t\t\t.map(\n\t\t\t\t\t(src) =>\n\t\t\t\t\t\t`<script${nonceAttr} type=\"module\" src=\"${src}\"></script>`\n\t\t\t\t)\n\t\t\t\t.join('');\n\t\tconst encoder = new TextEncoder();\n\t\t// Warning: this encodes the entire document into memory in one buffer\n\t\tconst full = encoder.encode(\n\t\t\t`<!DOCTYPE html><html lang=\"en\"><head>${head}${headContent ?? ''}</head><body>${body}${scripts}${bodyContent ?? ''}</body></html>`\n\t\t);\n\n\t\tlet offset = 0;\n\n\t\treturn new ReadableStream<Uint8Array>({\n\t\t\ttype: 'bytes',\n\t\t\tcancel(reason) {\n\t\t\t\tonError?.(reason);\n\t\t\t},\n\t\t\tpull(controller) {\n\t\t\t\tif (signal?.aborted) {\n\t\t\t\t\tcontroller.close();\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (offset >= full.length) {\n\t\t\t\t\tcontroller.close();\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst end = Math.min(\n\t\t\t\t\toffset + progressiveChunkSize,\n\t\t\t\t\tfull.length\n\t\t\t\t);\n\t\t\t\tcontroller.enqueue(full.subarray(offset, end));\n\t\t\t\toffset = end;\n\t\t\t}\n\t\t});\n\t} catch (error) {\n\t\tonError?.(error);\n\t\tthrow error;\n\t}\n};\n",
|
|
9
9
|
"import type { Component as SvelteComponent } from 'svelte';\nimport { ssrErrorPage } from '../utils/ssrErrorPage';\n\n// Declare overloads matching Svelte's own component API to preserve correct type inference\nexport type HandleSveltePageRequest = {\n\t(\n\t\tPageComponent: SvelteComponent<Record<string, never>>,\n\t\tpagePath: string,\n\t\tindexPath: string\n\t): Promise<Response>;\n\t<P extends Record<string, unknown>>(\n\t\tPageComponent: SvelteComponent<P>,\n\t\tpagePath: string,\n\t\tindexPath: string,\n\t\tprops: P\n\t): Promise<Response>;\n};\n\nexport const handleSveltePageRequest: HandleSveltePageRequest = async <\n\tP extends Record<string, unknown>\n>(\n\t_PageComponent: SvelteComponent<P>,\n\tpagePath: string,\n\tindexPath: string,\n\tprops?: P\n) => {\n\ttry {\n\t\tconst { default: ImportedPageComponent } = await import(pagePath);\n\t\tconst { renderToReadableStream } = await import(\n\t\t\t'./renderToReadableStream'\n\t\t);\n\n\t\tconst stream = await renderToReadableStream(\n\t\t\tImportedPageComponent,\n\t\t\tprops,\n\t\t\t{\n\t\t\t\tbootstrapModules: indexPath ? [indexPath] : [],\n\t\t\t\tbootstrapScriptContent: `window.__INITIAL_PROPS__=${JSON.stringify(\n\t\t\t\t\tprops\n\t\t\t\t)}`\n\t\t\t}\n\t\t);\n\n\t\treturn new Response(stream, {\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t} catch (error) {\n\t\tconsole.error('[SSR] Svelte render error:', error);\n\n\t\treturn new Response(ssrErrorPage('svelte', error), {\n\t\t\tstatus: 500,\n\t\t\theaders: { 'Content-Type': 'text/html' }\n\t\t});\n\t}\n};\n",
|
|
10
10
|
"export { handleSveltePageRequest } from './pageHandler';\nexport { renderToReadableStream } from './renderToReadableStream';\n"
|
|
11
11
|
],
|
|
12
|
-
"mappings": ";;;;;;;;;;;;;;;IAAa,eAAe,CAAC,WAAmB,UAA2B;AAAA,EAC1E,MAAM,kBAA0C;AAAA,IAC/C,SAAS;AAAA,IACT,MAAM;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACN;AAAA,EAEA,MAAM,SAAS,gBAAgB,cAAc;AAAA,EAC7C,MAAM,QAAQ,UAAU,OAAO,CAAC,EAAE,YAAY,IAAI,UAAU,MAAM,CAAC;AAAA,EACnE,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,EAErE,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sFAY8E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAahE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAMC,QAAQ,QAAQ,MAAM,OAAO,EAAE,QAAQ,MAAM,MAAM,EAAE,QAAQ,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;IC7CnF,gBAAgB,IAChB,sBAAsB,IACtB,2BAA2B,MAC3B,0BAEA,qBAAqB,IACrB,eAAe,IACf,uBAKA,iBAAiB,GACjB,YACA,eAAe,MACf,qBAAqB,OACrB,gCACZ;AAAA;AAAA,EAdY,2BACZ,2BAA2B;AAAA,EAGf,wBACZ,2BACA,sBACA,qBACA;AAAA,EAEY,aAAa,IAAI;AAAA;;;ICbxB,eAQA,cAEO,sBAAsB,CAAC,YACnC,QAAQ,QAAQ,cAAc,CAAC,SAAS;AAAA,EACvC,MAAM,UAAU,cAAc;AAAA,EAE9B,OAAO,YAAY,YAAY,UAAU;AAAA,CACzC;AAAA;AAAA,EAfI,gBAAwC;AAAA,IAC7C,UAAU;AAAA,IACV,UAAU;AAAA,IACV,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EACN;AAAA,EAEM,eAAe;AAAA;;;;;;;
|
|
13
|
-
"debugId": "
|
|
12
|
+
"mappings": ";;;;;;;;;;;;;;;IAAa,eAAe,CAAC,WAAmB,UAA2B;AAAA,EAC1E,MAAM,kBAA0C;AAAA,IAC/C,SAAS;AAAA,IACT,MAAM;AAAA,IACN,MAAM;AAAA,IACN,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACN;AAAA,EAEA,MAAM,SAAS,gBAAgB,cAAc;AAAA,EAC7C,MAAM,QAAQ,UAAU,OAAO,CAAC,EAAE,YAAY,IAAI,UAAU,MAAM,CAAC;AAAA,EACnE,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,EAErE,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sFAY8E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAahE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAMC,QAAQ,QAAQ,MAAM,OAAO,EAAE,QAAQ,MAAM,MAAM,EAAE,QAAQ,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;IC7CnF,gBAAgB,IAChB,sBAAsB,IACtB,2BAA2B,MAC3B,0BAEA,qBAAqB,IACrB,eAAe,IACf,uBAKA,iBAAiB,GACjB,YACA,eAAe,MACf,qBAAqB,OACrB,gCACZ;AAAA;AAAA,EAdY,2BACZ,2BAA2B;AAAA,EAGf,wBACZ,2BACA,sBACA,qBACA;AAAA,EAEY,aAAa,IAAI;AAAA;;;ICbxB,eAQA,cAEO,sBAAsB,CAAC,YACnC,QAAQ,QAAQ,cAAc,CAAC,SAAS;AAAA,EACvC,MAAM,UAAU,cAAc;AAAA,EAE9B,OAAO,YAAY,YAAY,UAAU;AAAA,CACzC;AAAA;AAAA,EAfI,gBAAwC;AAAA,IAC7C,UAAU;AAAA,IACV,UAAU;AAAA,IACV,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,EACN;AAAA,EAEM,eAAe;AAAA;;;;;;;ICQR,yBAAyB,OAGrC,WACA;AAAA,EAEC;AAAA,EACA,mBAAmB,CAAC;AAAA,EACpB,mBAAmB,CAAC;AAAA,EACpB;AAAA,EACA,UAAU,QAAQ;AAAA,EAClB,uBAAuB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,IACwB,CAAC,MACtB;AAAA,EACJ,IAAI;AAAA,IACH,QAAQ,WAAW,MAAa;AAAA,IAChC,QAAQ,MAAM,SACb,OAAO,UAAU,cAEf,OAAO,SAAS,IACf,OAAO,WAAW,EAAE,MAAM,CAAC;AAAA,IAC/B,MAAM,YAAY,QAAQ,WAAW,WAAW;AAAA,IAChD,MAAM,WACJ,yBACE,UAAU,aAAa,oBAAoB,sBAAsB,eACjE,MACH,iBACE,IAAI,CAAC,QAAQ,UAAU,kBAAkB,gBAAgB,EACzD,KAAK,EAAE,IACT,iBACE,IACA,CAAC,QACA,UAAU,gCAAgC,gBAC5C,EACC,KAAK,EAAE;AAAA,IACV,MAAM,UAAU,IAAI;AAAA,IAEpB,MAAM,OAAO,QAAQ,OACpB,wCAAwC,OAAO,eAAe,kBAAkB,OAAO,UAAU,eAAe,kBACjH;AAAA,IAEA,IAAI,SAAS;AAAA,IAEb,OAAO,IAAI,eAA2B;AAAA,MACrC,MAAM;AAAA,MACN,MAAM,CAAC,QAAQ;AAAA,QACd,UAAU,MAAM;AAAA;AAAA,MAEjB,IAAI,CAAC,YAAY;AAAA,QAChB,IAAI,QAAQ,SAAS;AAAA,UACpB,WAAW,MAAM;AAAA,UAEjB;AAAA,QACD;AAAA,QACA,IAAI,UAAU,KAAK,QAAQ;AAAA,UAC1B,WAAW,MAAM;AAAA,UAEjB;AAAA,QACD;AAAA,QACA,MAAM,MAAM,KAAK,IAChB,SAAS,sBACT,KAAK,MACN;AAAA,QACA,WAAW,QAAQ,KAAK,SAAS,QAAQ,GAAG,CAAC;AAAA,QAC7C,SAAS;AAAA;AAAA,IAEX,CAAC;AAAA,IACA,OAAO,OAAO;AAAA,IACf,UAAU,KAAK;AAAA,IACf,MAAM;AAAA;AAAA;AAAA;AAAA,EAvFR;AAAA,EACA;AAAA;;;;;;;ICgBa,0BAAmD,OAG/D,gBACA,UACA,WACA,UACI;AAAA,EACJ,IAAI;AAAA,IACH,QAAQ,SAAS,0BAA0B,MAAa;AAAA,IACxD,QAAQ,oDAA2B;AAAA,IAInC,MAAM,SAAS,MAAM,wBACpB,uBACA,OACA;AAAA,MACC,kBAAkB,YAAY,CAAC,SAAS,IAAI,CAAC;AAAA,MAC7C,wBAAwB,4BAA4B,KAAK,UACxD,KACD;AAAA,IACD,CACD;AAAA,IAEA,OAAO,IAAI,SAAS,QAAQ;AAAA,MAC3B,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACxC,CAAC;AAAA,IACA,OAAO,OAAO;AAAA,IACf,QAAQ,MAAM,8BAA8B,KAAK;AAAA,IAEjD,OAAO,IAAI,SAAS,aAAa,UAAU,KAAK,GAAG;AAAA,MAClD,QAAQ;AAAA,MACR,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACxC,CAAC;AAAA;AAAA;AAAA;;;ACpDH;AACA;",
|
|
13
|
+
"debugId": "8D920408CB1CBC6C64756E2164756E21",
|
|
14
14
|
"names": []
|
|
15
15
|
}
|
package/package.json
CHANGED