@absolutejs/absolute 0.19.0-beta.283 → 0.19.0-beta.284
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/build.js +136 -305
- package/dist/build.js.map +4 -5
- package/dist/index.js +160 -329
- package/dist/index.js.map +4 -5
- package/dist/vue/index.js +22 -237
- package/dist/vue/index.js.map +4 -6
- package/dist/vue/server.js +22 -237
- package/dist/vue/server.js.map +4 -6
- package/package.json +1 -1
- package/dist/src/core/vueServerModule.d.ts +0 -1
package/dist/vue/server.js
CHANGED
|
@@ -74,226 +74,6 @@ var __legacyDecorateClassTS = function(decorators, target, key, desc) {
|
|
|
74
74
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
75
75
|
var __require = import.meta.require;
|
|
76
76
|
|
|
77
|
-
// src/build/resolvePackageImport.ts
|
|
78
|
-
import { resolve, join } from "path";
|
|
79
|
-
import { existsSync, readFileSync } from "fs";
|
|
80
|
-
var resolveExportPath = (entry, conditions) => {
|
|
81
|
-
if (typeof entry === "string")
|
|
82
|
-
return entry;
|
|
83
|
-
if (!entry || typeof entry !== "object")
|
|
84
|
-
return null;
|
|
85
|
-
for (const condition of conditions) {
|
|
86
|
-
const target = Reflect.get(entry, condition);
|
|
87
|
-
if (typeof target === "string") {
|
|
88
|
-
return target;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
return null;
|
|
92
|
-
}, resolvePackageImport = (specifier, conditions = ["import"]) => {
|
|
93
|
-
if (specifier.startsWith(".") || specifier.startsWith("/"))
|
|
94
|
-
return null;
|
|
95
|
-
const parts = specifier.split("/");
|
|
96
|
-
const isScoped = specifier.startsWith("@");
|
|
97
|
-
const packageName = isScoped ? `${parts[0]}/${parts[1]}` : parts[0];
|
|
98
|
-
const subpath = isScoped ? parts.slice(2).join("/") : parts.slice(1).join("/");
|
|
99
|
-
const exportKey = subpath ? `./${subpath}` : ".";
|
|
100
|
-
const packageDir = resolve(process.cwd(), "node_modules", packageName ?? "");
|
|
101
|
-
const packageJsonPath = join(packageDir, "package.json");
|
|
102
|
-
if (!existsSync(packageJsonPath))
|
|
103
|
-
return null;
|
|
104
|
-
try {
|
|
105
|
-
const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf-8"));
|
|
106
|
-
const { exports } = packageJson;
|
|
107
|
-
if (!exports)
|
|
108
|
-
return null;
|
|
109
|
-
const entry = exports[exportKey];
|
|
110
|
-
if (!entry)
|
|
111
|
-
return null;
|
|
112
|
-
const importPath = resolveExportPath(entry, conditions);
|
|
113
|
-
if (!importPath)
|
|
114
|
-
return null;
|
|
115
|
-
const resolved = resolve(packageDir, importPath);
|
|
116
|
-
return existsSync(resolved) ? resolved : null;
|
|
117
|
-
} catch {
|
|
118
|
-
return null;
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
var init_resolvePackageImport = () => {};
|
|
122
|
-
|
|
123
|
-
// src/core/vueServerModule.ts
|
|
124
|
-
import { mkdir } from "fs/promises";
|
|
125
|
-
import { dirname, extname, join as join2, relative, resolve as resolve2 } from "path";
|
|
126
|
-
var {Transpiler } = globalThis.Bun;
|
|
127
|
-
var serverCacheRoot, compiledModuleCache, transpiler, toJs = (filePath) => {
|
|
128
|
-
if (filePath.endsWith(".vue"))
|
|
129
|
-
return filePath.replace(/\.vue$/, ".js");
|
|
130
|
-
if (filePath.endsWith(".ts"))
|
|
131
|
-
return filePath.replace(/\.ts$/, ".js");
|
|
132
|
-
return `${filePath}.js`;
|
|
133
|
-
}, stripExports = (code) => code.replace(/export\s+default/, "const script =").replace(/^export\s+/gm, ""), mergeVueImports = (code) => {
|
|
134
|
-
const lines = code.split(`
|
|
135
|
-
`);
|
|
136
|
-
const specifierSet = new Set;
|
|
137
|
-
const vueImportRegex = /^import\s+{([^}]+)}\s+from\s+['"]vue['"];?$/;
|
|
138
|
-
lines.forEach((line) => {
|
|
139
|
-
const match = line.match(vueImportRegex);
|
|
140
|
-
if (!match?.[1])
|
|
141
|
-
return;
|
|
142
|
-
match[1].split(",").forEach((specifier) => specifierSet.add(specifier.trim()));
|
|
143
|
-
});
|
|
144
|
-
const nonVueLines = lines.filter((line) => !vueImportRegex.test(line));
|
|
145
|
-
if (specifierSet.size === 0) {
|
|
146
|
-
return nonVueLines.join(`
|
|
147
|
-
`);
|
|
148
|
-
}
|
|
149
|
-
return [
|
|
150
|
-
`import { ${[...specifierSet].join(", ")} } from "vue";`,
|
|
151
|
-
...nonVueLines
|
|
152
|
-
].join(`
|
|
153
|
-
`);
|
|
154
|
-
}, ensureRelativeImportPath = (from, to) => {
|
|
155
|
-
const importPath = relative(dirname(from), to).replace(/\\/g, "/");
|
|
156
|
-
return importPath.startsWith(".") ? importPath : `./${importPath}`;
|
|
157
|
-
}, resolveRelativeModule = async (spec, from) => {
|
|
158
|
-
if (!spec.startsWith(".")) {
|
|
159
|
-
return null;
|
|
160
|
-
}
|
|
161
|
-
const basePath = resolve2(dirname(from), spec);
|
|
162
|
-
const candidates = [
|
|
163
|
-
basePath,
|
|
164
|
-
`${basePath}.ts`,
|
|
165
|
-
`${basePath}.js`,
|
|
166
|
-
`${basePath}.mjs`,
|
|
167
|
-
`${basePath}.cjs`,
|
|
168
|
-
`${basePath}.json`,
|
|
169
|
-
join2(basePath, "index.ts"),
|
|
170
|
-
join2(basePath, "index.js"),
|
|
171
|
-
join2(basePath, "index.mjs"),
|
|
172
|
-
join2(basePath, "index.cjs"),
|
|
173
|
-
join2(basePath, "index.json")
|
|
174
|
-
];
|
|
175
|
-
for (const candidate of candidates) {
|
|
176
|
-
if (await Bun.file(candidate).exists() === true) {
|
|
177
|
-
return candidate;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
return null;
|
|
181
|
-
}, getCachedModulePath = (sourcePath) => {
|
|
182
|
-
const relativeSourcePath = relative(process.cwd(), sourcePath).replace(/\\/g, "/");
|
|
183
|
-
const normalizedSourcePath = relativeSourcePath.startsWith("..") ? sourcePath.replace(/[:\\/]/g, "_") : relativeSourcePath;
|
|
184
|
-
return join2(serverCacheRoot, `${normalizedSourcePath}.server.js`);
|
|
185
|
-
}, resolveVueImport = async (spec, from) => {
|
|
186
|
-
if (spec.startsWith("/")) {
|
|
187
|
-
return spec;
|
|
188
|
-
}
|
|
189
|
-
if (spec.startsWith(".")) {
|
|
190
|
-
const explicitPath = resolve2(dirname(from), spec);
|
|
191
|
-
if (extname(explicitPath) === ".vue") {
|
|
192
|
-
return explicitPath;
|
|
193
|
-
}
|
|
194
|
-
const candidate = `${explicitPath}.vue`;
|
|
195
|
-
if (await Bun.file(candidate).exists() === true) {
|
|
196
|
-
return candidate;
|
|
197
|
-
}
|
|
198
|
-
return null;
|
|
199
|
-
}
|
|
200
|
-
const resolvedPath = resolvePackageImport(spec);
|
|
201
|
-
if (resolvedPath?.endsWith(".vue")) {
|
|
202
|
-
return resolvedPath;
|
|
203
|
-
}
|
|
204
|
-
return null;
|
|
205
|
-
}, writeIfChanged = async (path, content) => {
|
|
206
|
-
const targetFile = Bun.file(path);
|
|
207
|
-
if (await targetFile.exists() === true) {
|
|
208
|
-
const currentContent = await targetFile.text();
|
|
209
|
-
if (currentContent === content) {
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
await Bun.write(path, content);
|
|
214
|
-
}, compileVueServerModule = async (sourcePath) => {
|
|
215
|
-
const cachedModulePath = compiledModuleCache.get(sourcePath);
|
|
216
|
-
if (cachedModulePath) {
|
|
217
|
-
return cachedModulePath;
|
|
218
|
-
}
|
|
219
|
-
const compiler = await import("@vue/compiler-sfc");
|
|
220
|
-
const source = await Bun.file(sourcePath).text();
|
|
221
|
-
const { descriptor } = compiler.parse(source, {
|
|
222
|
-
filename: sourcePath
|
|
223
|
-
});
|
|
224
|
-
const componentId = Bun.hash(sourcePath).toString(36);
|
|
225
|
-
const scriptSource = descriptor.scriptSetup?.content ?? descriptor.script?.content ?? "";
|
|
226
|
-
const importSpecs = Array.from(scriptSource.matchAll(/import\s+[\s\S]+?['"]([^'"]+)['"]/g)).map((match) => match[1]).filter((value) => value !== undefined);
|
|
227
|
-
const resolvedVueImports = await Promise.all(importSpecs.map((spec) => resolveVueImport(spec, sourcePath)));
|
|
228
|
-
const resolvedModuleImports = await Promise.all(importSpecs.map((spec) => resolveRelativeModule(spec, sourcePath)));
|
|
229
|
-
const childModulePaths = new Map;
|
|
230
|
-
const rewrittenModulePaths = new Map;
|
|
231
|
-
for (let index = 0;index < importSpecs.length; index += 1) {
|
|
232
|
-
const spec = importSpecs[index];
|
|
233
|
-
const resolvedChild = resolvedVueImports[index];
|
|
234
|
-
if (!spec || !resolvedChild)
|
|
235
|
-
continue;
|
|
236
|
-
const compiledChildPath = await compileVueServerModule(resolvedChild);
|
|
237
|
-
childModulePaths.set(spec, compiledChildPath);
|
|
238
|
-
}
|
|
239
|
-
for (let index = 0;index < importSpecs.length; index += 1) {
|
|
240
|
-
const spec = importSpecs[index];
|
|
241
|
-
const resolvedModuleImport = resolvedModuleImports[index];
|
|
242
|
-
if (!spec || !resolvedModuleImport)
|
|
243
|
-
continue;
|
|
244
|
-
if (resolvedVueImports[index])
|
|
245
|
-
continue;
|
|
246
|
-
rewrittenModulePaths.set(spec, ensureRelativeImportPath(getCachedModulePath(sourcePath), resolvedModuleImport));
|
|
247
|
-
}
|
|
248
|
-
const hasScript = descriptor.script || descriptor.scriptSetup;
|
|
249
|
-
const compiledScript = hasScript ? compiler.compileScript(descriptor, {
|
|
250
|
-
id: componentId,
|
|
251
|
-
inlineTemplate: false
|
|
252
|
-
}) : { bindings: {}, content: "export default {};" };
|
|
253
|
-
const strippedScript = stripExports(compiledScript.content);
|
|
254
|
-
const transpiledScript = transpiler.transformSync(strippedScript).replace(/(['"])(\.{1,2}\/[^'"]+)(['"])/g, (_, quoteStart, relativeImport, quoteEnd) => `${quoteStart}${toJs(relativeImport)}${quoteEnd}`);
|
|
255
|
-
const ssrRenderCode = compiler.compileTemplate({
|
|
256
|
-
compilerOptions: {
|
|
257
|
-
bindingMetadata: compiledScript.bindings,
|
|
258
|
-
prefixIdentifiers: true
|
|
259
|
-
},
|
|
260
|
-
filename: sourcePath,
|
|
261
|
-
id: componentId,
|
|
262
|
-
scoped: descriptor.styles.some((styleBlock) => styleBlock.scoped),
|
|
263
|
-
source: descriptor.template?.content ?? "",
|
|
264
|
-
ssr: true,
|
|
265
|
-
ssrCssVars: descriptor.cssVars
|
|
266
|
-
}).code.replace(/(['"])(\.{1,2}\/[^'"]+)(['"])/g, (_, quoteStart, relativeImport, quoteEnd) => `${quoteStart}${toJs(relativeImport)}${quoteEnd}`);
|
|
267
|
-
let serverCode = mergeVueImports([
|
|
268
|
-
transpiledScript,
|
|
269
|
-
ssrRenderCode,
|
|
270
|
-
"script.ssrRender = ssrRender;",
|
|
271
|
-
descriptor.styles.some((styleBlock) => styleBlock.scoped) ? `script.__scopeId = "data-v-${componentId}";` : "",
|
|
272
|
-
"export default script;"
|
|
273
|
-
].filter(Boolean).join(`
|
|
274
|
-
`));
|
|
275
|
-
for (const [spec, compiledChildPath] of childModulePaths) {
|
|
276
|
-
serverCode = serverCode.replaceAll(spec, ensureRelativeImportPath(getCachedModulePath(sourcePath), compiledChildPath));
|
|
277
|
-
}
|
|
278
|
-
for (const [spec, resolvedModuleImport] of rewrittenModulePaths) {
|
|
279
|
-
serverCode = serverCode.replaceAll(spec, resolvedModuleImport);
|
|
280
|
-
}
|
|
281
|
-
const compiledModulePath = getCachedModulePath(sourcePath);
|
|
282
|
-
await mkdir(dirname(compiledModulePath), { recursive: true });
|
|
283
|
-
await writeIfChanged(compiledModulePath, serverCode);
|
|
284
|
-
compiledModuleCache.set(sourcePath, compiledModulePath);
|
|
285
|
-
return compiledModulePath;
|
|
286
|
-
};
|
|
287
|
-
var init_vueServerModule = __esm(() => {
|
|
288
|
-
init_resolvePackageImport();
|
|
289
|
-
serverCacheRoot = join2(process.cwd(), ".absolutejs", "islands", "vue");
|
|
290
|
-
compiledModuleCache = new Map;
|
|
291
|
-
transpiler = new Transpiler({
|
|
292
|
-
loader: "ts",
|
|
293
|
-
target: "browser"
|
|
294
|
-
});
|
|
295
|
-
});
|
|
296
|
-
|
|
297
77
|
// src/utils/ssrErrorPage.ts
|
|
298
78
|
var ssrErrorPage = (framework, error) => {
|
|
299
79
|
const frameworkColors = {
|
|
@@ -547,7 +327,24 @@ var init_resolveConvention = __esm(() => {
|
|
|
547
327
|
});
|
|
548
328
|
|
|
549
329
|
// src/vue/pageHandler.ts
|
|
550
|
-
|
|
330
|
+
import { readdir } from "fs/promises";
|
|
331
|
+
import { basename as basename2, dirname } from "path";
|
|
332
|
+
var ssrDirty = false, resolveCurrentGeneratedVueModulePath = async (pagePath) => {
|
|
333
|
+
const pageDirectory = dirname(pagePath);
|
|
334
|
+
const expectedPrefix = `${basename2(pagePath, ".js").split(".")[0]}.`;
|
|
335
|
+
try {
|
|
336
|
+
const pageEntries = await readdir(pageDirectory, {
|
|
337
|
+
withFileTypes: true
|
|
338
|
+
});
|
|
339
|
+
const matchingEntry = pageEntries.find((entry) => entry.isFile() && entry.name.endsWith(".js") && (entry.name === `${expectedPrefix.slice(0, -1)}.js` || entry.name.startsWith(expectedPrefix)));
|
|
340
|
+
if (!matchingEntry) {
|
|
341
|
+
return pagePath;
|
|
342
|
+
}
|
|
343
|
+
return `${pageDirectory}/${matchingEntry.name}`;
|
|
344
|
+
} catch {
|
|
345
|
+
return pagePath;
|
|
346
|
+
}
|
|
347
|
+
}, buildDirtyResponse = (headTag, indexPath, maybeProps) => {
|
|
551
348
|
const propsScript = `window.__INITIAL_PROPS__=${JSON.stringify(maybeProps ?? {})};`;
|
|
552
349
|
const dirtyFlag = "window.__SSR_DIRTY__=true;";
|
|
553
350
|
const html = `<!DOCTYPE html><html>${headTag}<body><div id="root"></div>` + `<script>${propsScript}${dirtyFlag}</script>` + `<script type="module" src="${indexPath}"></script>` + `</body></html>`;
|
|
@@ -565,20 +362,9 @@ var ssrDirty = false, buildDirtyResponse = (headTag, indexPath, maybeProps) => {
|
|
|
565
362
|
if (typeof passedPageComponent === "function" || typeof passedPageComponent === "object" && passedPageComponent !== null) {
|
|
566
363
|
return _PageComponent;
|
|
567
364
|
}
|
|
568
|
-
const
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
return loadedModule.default ?? loadedModule;
|
|
572
|
-
};
|
|
573
|
-
if (typeof passedPageComponent === "string" && passedPageComponent.endsWith(".vue")) {
|
|
574
|
-
return loadCompiledSourcePath(passedPageComponent);
|
|
575
|
-
}
|
|
576
|
-
const importedPageModule = await import(pagePath);
|
|
577
|
-
const importedPageComponent = importedPageModule.default ?? importedPageModule;
|
|
578
|
-
if (typeof importedPageComponent === "string" && importedPageComponent.endsWith(".vue")) {
|
|
579
|
-
return loadCompiledSourcePath(importedPageComponent);
|
|
580
|
-
}
|
|
581
|
-
return importedPageComponent;
|
|
365
|
+
const generatedPagePath = await resolveCurrentGeneratedVueModulePath(pagePath);
|
|
366
|
+
const importedPageModule = await import(generatedPagePath);
|
|
367
|
+
return importedPageModule.default ?? importedPageModule;
|
|
582
368
|
};
|
|
583
369
|
const ImportedPageComponent = await resolvePageComponent();
|
|
584
370
|
const { createSSRApp, h } = await import("vue");
|
|
@@ -617,7 +403,6 @@ var ssrDirty = false, buildDirtyResponse = (headTag, indexPath, maybeProps) => {
|
|
|
617
403
|
ssrDirty = true;
|
|
618
404
|
};
|
|
619
405
|
var init_pageHandler = __esm(() => {
|
|
620
|
-
init_vueServerModule();
|
|
621
406
|
init_resolveConvention();
|
|
622
407
|
});
|
|
623
408
|
|
|
@@ -627,5 +412,5 @@ export {
|
|
|
627
412
|
handleVuePageRequest
|
|
628
413
|
};
|
|
629
414
|
|
|
630
|
-
//# debugId=
|
|
415
|
+
//# debugId=AC776FCEB312D16464756E2164756E21
|
|
631
416
|
//# sourceMappingURL=server.js.map
|
package/dist/vue/server.js.map
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/
|
|
3
|
+
"sources": ["../src/utils/ssrErrorPage.ts", "../src/utils/stringModifiers.ts", "../src/utils/resolveConvention.ts", "../src/vue/pageHandler.ts", "../src/vue/server.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import { resolve, join } from 'node:path';\nimport { existsSync, readFileSync } from 'node:fs';\n\n/**\n * Resolve a bare module import (e.g. \"@absolutejs/absolute/svelte/components/Image.svelte\")\n * to an absolute file path by reading the package's exports map in package.json.\n *\n * Returns the resolved absolute path, or null if the import can't be resolved.\n */\ntype ExportConditions = 'browser' | 'import';\n\nconst resolveExportPath = (\n\tentry: unknown,\n\tconditions: ExportConditions[]\n) => {\n\tif (typeof entry === 'string') return entry;\n\tif (!entry || typeof entry !== 'object') return null;\n\n\tfor (const condition of conditions) {\n\t\tconst target = Reflect.get(entry, condition);\n\t\tif (typeof target === 'string') {\n\t\t\treturn target;\n\t\t}\n\t}\n\n\treturn null;\n};\n\nexport const resolvePackageImport = (\n\tspecifier: string,\n\tconditions: ExportConditions[] = ['import']\n) => {\n\t// Only handle bare module imports (not relative or absolute paths)\n\tif (specifier.startsWith('.') || specifier.startsWith('/')) return null;\n\n\t// Split into package name and subpath\n\tconst parts = specifier.split('/');\n\tconst isScoped = specifier.startsWith('@');\n\tconst packageName = isScoped ? `${parts[0]}/${parts[1]}` : parts[0];\n\tconst subpath = isScoped ? parts.slice(2).join('/') : parts.slice(1).join('/');\n\tconst exportKey = subpath ? `./${subpath}` : '.';\n\n\t// Find package.json\n\tconst packageDir = resolve(process.cwd(), 'node_modules', packageName ?? '');\n\tconst packageJsonPath = join(packageDir, 'package.json');\n\n\tif (!existsSync(packageJsonPath)) return null;\n\n\ttry {\n\t\tconst packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));\n\t\tconst {exports} = packageJson;\n\n\t\tif (!exports) return null;\n\n\t\t// Try exact match first, then try without extension for .svelte/.vue files\n\t\tconst entry = exports[exportKey];\n\n\t\tif (!entry) return null;\n\n\t\tconst importPath = resolveExportPath(entry, conditions);\n\n\t\tif (!importPath) return null;\n\n\t\tconst resolved = resolve(packageDir, importPath);\n\n\t\treturn existsSync(resolved) ? resolved : null;\n\t} catch {\n\t\treturn null;\n\t}\n};\n",
|
|
6
|
-
"import { mkdir } from 'node:fs/promises';\nimport { dirname, extname, join, relative, resolve } from 'node:path';\nimport { Transpiler } from 'bun';\nimport { resolvePackageImport } from '../build/resolvePackageImport';\n\nconst serverCacheRoot = join(process.cwd(), '.absolutejs', 'islands', 'vue');\n\nconst compiledModuleCache = new Map<string, string>();\n\nconst transpiler = new Transpiler({\n\tloader: 'ts',\n\ttarget: 'browser'\n});\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]) return;\n\t\tmatch[1]\n\t\t\t.split(',')\n\t\t\t.forEach((specifier) => specifierSet.add(specifier.trim()));\n\t});\n\n\tconst nonVueLines = lines.filter((line) => !vueImportRegex.test(line));\n\n\tif (specifierSet.size === 0) {\n\t\treturn nonVueLines.join('\\n');\n\t}\n\n\treturn [\n\t\t`import { ${[...specifierSet].join(', ')} } from \"vue\";`,\n\t\t...nonVueLines\n\t].join('\\n');\n};\n\nconst ensureRelativeImportPath = (from: string, to: string) => {\n\tconst importPath = relative(dirname(from), to).replace(/\\\\/g, '/');\n\treturn importPath.startsWith('.') ? importPath : `./${importPath}`;\n};\n\nconst resolveRelativeModule = async (spec: string, from: string) => {\n\tif (!spec.startsWith('.')) {\n\t\treturn null;\n\t}\n\n\tconst basePath = resolve(dirname(from), spec);\n\tconst candidates = [\n\t\tbasePath,\n\t\t`${basePath}.ts`,\n\t\t`${basePath}.js`,\n\t\t`${basePath}.mjs`,\n\t\t`${basePath}.cjs`,\n\t\t`${basePath}.json`,\n\t\tjoin(basePath, 'index.ts'),\n\t\tjoin(basePath, 'index.js'),\n\t\tjoin(basePath, 'index.mjs'),\n\t\tjoin(basePath, 'index.cjs'),\n\t\tjoin(basePath, 'index.json')\n\t];\n\n\tfor (const candidate of candidates) {\n\t\tif ((await Bun.file(candidate).exists()) === true) {\n\t\t\treturn candidate;\n\t\t}\n\t}\n\n\treturn null;\n};\n\nconst getCachedModulePath = (sourcePath: string) => {\n\tconst relativeSourcePath = relative(process.cwd(), sourcePath).replace(\n\t\t/\\\\/g,\n\t\t'/'\n\t);\n\tconst normalizedSourcePath = relativeSourcePath.startsWith('..')\n\t\t? sourcePath.replace(/[:\\\\/]/g, '_')\n\t\t: relativeSourcePath;\n\n\treturn join(serverCacheRoot, `${normalizedSourcePath}.server.js`);\n};\n\nconst resolveVueImport = async (spec: string, from: string) => {\n\tif (spec.startsWith('/')) {\n\t\treturn spec;\n\t}\n\n\tif (spec.startsWith('.')) {\n\t\tconst explicitPath = resolve(dirname(from), spec);\n\t\tif (extname(explicitPath) === '.vue') {\n\t\t\treturn explicitPath;\n\t\t}\n\n\t\tconst candidate = `${explicitPath}.vue`;\n\t\tif ((await Bun.file(candidate).exists()) === true) {\n\t\t\treturn candidate;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tconst resolvedPath = resolvePackageImport(spec);\n\tif (resolvedPath?.endsWith('.vue')) {\n\t\treturn resolvedPath;\n\t}\n\n\treturn null;\n};\n\nconst writeIfChanged = async (path: string, content: string) => {\n\tconst targetFile = Bun.file(path);\n\tif ((await targetFile.exists()) === true) {\n\t\tconst currentContent = await targetFile.text();\n\t\tif (currentContent === content) {\n\t\t\treturn;\n\t\t}\n\t}\n\n\tawait Bun.write(path, content);\n};\n\nexport const compileVueServerModule = async (sourcePath: string) => {\n\tconst cachedModulePath = compiledModuleCache.get(sourcePath);\n\tif (cachedModulePath) {\n\t\treturn cachedModulePath;\n\t}\n\n\tconst compiler = await import('@vue/compiler-sfc');\n\tconst source = await Bun.file(sourcePath).text();\n\tconst { descriptor } = compiler.parse(source, {\n\t\tfilename: sourcePath\n\t});\n\tconst componentId = Bun.hash(sourcePath).toString(36);\n\n\tconst scriptSource =\n\t\tdescriptor.scriptSetup?.content ?? descriptor.script?.content ?? '';\n\tconst importSpecs = Array.from(\n\t\tscriptSource.matchAll(/import\\s+[\\s\\S]+?['\"]([^'\"]+)['\"]/g)\n\t)\n\t\t.map((match) => match[1])\n\t\t.filter((value): value is string => value !== undefined);\n\n\tconst resolvedVueImports = await Promise.all(\n\t\timportSpecs.map((spec) => resolveVueImport(spec, sourcePath))\n\t);\n\tconst resolvedModuleImports = await Promise.all(\n\t\timportSpecs.map((spec) => resolveRelativeModule(spec, sourcePath))\n\t);\n\n\tconst childModulePaths = new Map<string, string>();\n\tconst rewrittenModulePaths = new Map<string, string>();\n\n\tfor (let index = 0; index < importSpecs.length; index += 1) {\n\t\tconst spec = importSpecs[index];\n\t\tconst resolvedChild = resolvedVueImports[index];\n\t\tif (!spec || !resolvedChild) continue;\n\n\t\tconst compiledChildPath = await compileVueServerModule(resolvedChild);\n\t\tchildModulePaths.set(spec, compiledChildPath);\n\t}\n\n\tfor (let index = 0; index < importSpecs.length; index += 1) {\n\t\tconst spec = importSpecs[index];\n\t\tconst resolvedModuleImport = resolvedModuleImports[index];\n\t\tif (!spec || !resolvedModuleImport) continue;\n\t\tif (resolvedVueImports[index]) continue;\n\n\t\trewrittenModulePaths.set(\n\t\t\tspec,\n\t\t\tensureRelativeImportPath(\n\t\t\t\tgetCachedModulePath(sourcePath),\n\t\t\t\tresolvedModuleImport\n\t\t\t)\n\t\t);\n\t}\n\n\tconst hasScript = descriptor.script || descriptor.scriptSetup;\n\tconst compiledScript = hasScript\n\t\t? compiler.compileScript(descriptor, {\n\t\t\t\tid: componentId,\n\t\t\t\tinlineTemplate: false\n\t\t\t})\n\t\t: { bindings: {}, content: 'export default {};' };\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\tconst ssrRenderCode = compiler\n\t\t.compileTemplate({\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: sourcePath,\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: true,\n\t\t\tssrCssVars: descriptor.cssVars\n\t\t})\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\tlet serverCode = mergeVueImports(\n\t\t[\n\t\t\ttranspiledScript,\n\t\t\tssrRenderCode,\n\t\t\t'script.ssrRender = ssrRender;',\n\t\t\tdescriptor.styles.some((styleBlock) => styleBlock.scoped)\n\t\t\t\t? `script.__scopeId = \"data-v-${componentId}\";`\n\t\t\t\t: '',\n\t\t\t'export default script;'\n\t\t]\n\t\t\t.filter(Boolean)\n\t\t\t.join('\\n')\n\t);\n\n\tfor (const [spec, compiledChildPath] of childModulePaths) {\n\t\tserverCode = serverCode.replaceAll(\n\t\t\tspec,\n\t\t\tensureRelativeImportPath(\n\t\t\t\tgetCachedModulePath(sourcePath),\n\t\t\t\tcompiledChildPath\n\t\t\t)\n\t\t);\n\t}\n\n\tfor (const [spec, resolvedModuleImport] of rewrittenModulePaths) {\n\t\tserverCode = serverCode.replaceAll(spec, resolvedModuleImport);\n\t}\n\n\tconst compiledModulePath = getCachedModulePath(sourcePath);\n\tawait mkdir(dirname(compiledModulePath), { recursive: true });\n\tawait writeIfChanged(compiledModulePath, serverCode);\n\tcompiledModuleCache.set(sourcePath, compiledModulePath);\n\n\treturn compiledModulePath;\n};\n",
|
|
7
5
|
"export const ssrErrorPage = (framework: string, error: unknown) => {\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",
|
|
8
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 toKebab = (str: string) =>\n\tnormalizeSlug(str)\n\t\t.replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n\t\t.toLowerCase();\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};\nexport const toScreamingSnake = (str: string) =>\n\tstr.replace(/([a-z0-9])([A-Z])/g, '$1_$2').toUpperCase();\n",
|
|
9
7
|
"import { basename } from 'node:path';\nimport type { ConventionsMap } from '../../types/conventions';\nimport { toPascal } from './stringModifiers';\n\n// Use globalThis so the conventions map is shared across all bundles.\n// The main bundle (dist/index.js) calls setConventions, but framework\n// bundles (dist/svelte/index.js, etc.) need to read the same map.\nconst CONVENTIONS_KEY = '__absoluteConventions';\n\nconst isConventionsMap = (value: unknown): value is ConventionsMap =>\n\tBoolean(value) && typeof value === 'object';\n\nconst getMap = () => {\n\tconst value: unknown = Reflect.get(globalThis, CONVENTIONS_KEY);\n\tif (isConventionsMap(value)) return value;\n\n\tconst empty: ConventionsMap = {};\n\n\treturn empty;\n};\n\nexport const derivePageName = (pagePath: string) => {\n\tconst base = basename(pagePath);\n\t// Strip hash and extension: \"SvelteExample.abc123.js\" → \"SvelteExample\"\n\tconst dotIndex = base.indexOf('.');\n\tconst name = dotIndex > 0 ? base.slice(0, dotIndex) : base;\n\n\treturn toPascal(name);\n};\nexport const getConventions = () => getMap();\nexport const resolveErrorConventionPath = (\n\tframework: keyof ConventionsMap,\n\tpageName: string\n) => {\n\tconst conventions = getMap()[framework];\n\tif (!conventions) return undefined;\n\n\treturn conventions.pages?.[pageName]?.error ?? conventions.defaults?.error;\n};\nexport const resolveNotFoundConventionPath = (\n\tframework: keyof ConventionsMap\n) => getMap()[framework]?.defaults?.notFound;\nexport const setConventions = (map: ConventionsMap) => {\n\tReflect.set(globalThis, CONVENTIONS_KEY, map);\n};\n\nconst isDev = () => process.env.NODE_ENV === 'development';\n\nconst buildErrorProps = (error: unknown) => {\n\tconst message = error instanceof Error ? error.message : String(error);\n\tconst stack = isDev() && error instanceof Error ? error.stack : undefined;\n\n\treturn { error: { message, stack } };\n};\n\nconst renderReactError = async (\n\tconventionPath: string,\n\terrorProps: ReturnType<typeof buildErrorProps>\n) => {\n\tconst { createElement } = await import('react');\n\tconst { renderToReadableStream } = await import('react-dom/server');\n\tconst mod = await import(conventionPath);\n\tconst [firstKey] = Object.keys(mod);\n\tconst ErrorComponent =\n\t\tmod.default ?? (firstKey ? mod[firstKey] : undefined);\n\tconst element = createElement(ErrorComponent, errorProps);\n\tconst stream = await renderToReadableStream(element);\n\n\treturn new Response(stream, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 500\n\t});\n};\n\nconst renderSvelteError = async (\n\tconventionPath: string,\n\terrorProps: ReturnType<typeof buildErrorProps>\n) => {\n\tconst { render } = await import('svelte/server');\n\tconst mod = await import(conventionPath);\n\tconst ErrorComponent = mod.default;\n\tconst { head, body } = render(ErrorComponent, {\n\t\tprops: errorProps\n\t});\n\tconst html = `<!DOCTYPE html><html><head>${head}</head><body>${body}</body></html>`;\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 500\n\t});\n};\n\nconst unescapeVueStyles = (ssrBody: string) => {\n\tlet styles = '';\n\tconst body = ssrBody.replace(\n\t\t/<style>([\\s\\S]*?)<\\/style>/g,\n\t\t(_, css: string) => {\n\t\t\tstyles += `<style>${css\n\t\t\t\t.replace(/"/g, '\"')\n\t\t\t\t.replace(/&/g, '&')\n\t\t\t\t.replace(/</g, '<')\n\t\t\t\t.replace(/>/g, '>')}</style>`;\n\n\t\t\treturn '';\n\t\t}\n\t);\n\n\treturn { body, styles };\n};\n\nconst renderVueError = async (\n\tconventionPath: string,\n\terrorProps: ReturnType<typeof buildErrorProps>\n) => {\n\tconst { createSSRApp, h } = await import('vue');\n\tconst { renderToString } = await import('vue/server-renderer');\n\tconst mod = await import(conventionPath);\n\tconst ErrorComponent = mod.default;\n\tconst app = createSSRApp({\n\t\trender: () => h(ErrorComponent, errorProps)\n\t});\n\tconst rawBody = await renderToString(app);\n\n\t// Vue SSR escapes quotes inside <component is=\"style\"> tags.\n\t// Extract style content, unescape it, and move to <head>.\n\tconst { styles, body } = unescapeVueStyles(rawBody);\n\tconst html = `<!DOCTYPE html><html><head>${styles}</head><body><div id=\"root\">${body}</div></body></html>`;\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 500\n\t});\n};\n\nconst renderAngularError = async (\n\tconventionPath: string,\n\terrorProps: ReturnType<typeof buildErrorProps>\n) => {\n\t// Angular error pages are rendered as plain HTML templates\n\t// since the full Angular SSR pipeline is too heavy for error pages\n\tconst mod = await import(conventionPath);\n\tconst renderError = mod.default ?? mod.renderError;\n\tif (typeof renderError !== 'function') return null;\n\n\tconst html = renderError(errorProps);\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 500\n\t});\n};\n\nconst logConventionRenderError = (\n\tframework: keyof ConventionsMap,\n\tlabel: string,\n\trenderError: unknown\n) => {\n\tconst message = renderError instanceof Error ? renderError.message : '';\n\tif (\n\t\tmessage.includes('Cannot find module') ||\n\t\tmessage.includes('Cannot find package') ||\n\t\tmessage.includes('not found in module')\n\t) {\n\t\tconsole.error(\n\t\t\t`[SSR] Convention ${label} page for ${framework} failed: missing framework package. ` +\n\t\t\t\t`Ensure the ${framework} runtime is installed (e.g. bun add ${framework === 'react' ? 'react react-dom' : framework}).`\n\t\t);\n\n\t\treturn;\n\t}\n\n\tconsole.error(\n\t\t`[SSR] Failed to render ${framework} convention ${label} page:`,\n\t\trenderError\n\t);\n};\n\nconst ERROR_RENDERERS: Record<\n\tkeyof ConventionsMap,\n\t(\n\t\tconventionPath: string,\n\t\terrorProps: ReturnType<typeof buildErrorProps>\n\t) => Promise<Response | null>\n> = {\n\tangular: renderAngularError,\n\treact: renderReactError,\n\tsvelte: renderSvelteError,\n\tvue: renderVueError\n};\n\nexport const renderConventionError = async (\n\tframework: keyof ConventionsMap,\n\tpageName: string,\n\terror: unknown\n) => {\n\tconst conventionPath = resolveErrorConventionPath(framework, pageName);\n\tif (!conventionPath) return null;\n\n\tconst errorProps = buildErrorProps(error);\n\tconst renderer = ERROR_RENDERERS[framework];\n\tif (!renderer) return null;\n\n\ttry {\n\t\treturn await renderer(conventionPath, errorProps);\n\t} catch (renderError) {\n\t\tlogConventionRenderError(framework, 'error', renderError);\n\t}\n\n\treturn null;\n};\n\nconst renderReactNotFound = async (conventionPath: string) => {\n\tconst { createElement } = await import('react');\n\tconst { renderToReadableStream } = await import('react-dom/server');\n\tconst mod = await import(conventionPath);\n\tconst [nfKey] = Object.keys(mod);\n\tconst NotFoundComponent = mod.default ?? (nfKey ? mod[nfKey] : undefined);\n\tconst element = createElement(NotFoundComponent);\n\tconst stream = await renderToReadableStream(element);\n\n\treturn new Response(stream, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 404\n\t});\n};\n\nconst renderSvelteNotFound = async (conventionPath: string) => {\n\tconst { render } = await import('svelte/server');\n\tconst mod = await import(conventionPath);\n\tconst NotFoundComponent = mod.default;\n\tconst { head, body } = render(NotFoundComponent);\n\tconst html = `<!DOCTYPE html><html><head>${head}</head><body>${body}</body></html>`;\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 404\n\t});\n};\n\nconst renderVueNotFound = async (conventionPath: string) => {\n\tconst { createSSRApp, h } = await import('vue');\n\tconst { renderToString } = await import('vue/server-renderer');\n\tconst mod = await import(conventionPath);\n\tconst NotFoundComponent = mod.default;\n\tconst app = createSSRApp({\n\t\trender: () => h(NotFoundComponent)\n\t});\n\tconst rawBody = await renderToString(app);\n\n\tconst { styles, body } = unescapeVueStyles(rawBody);\n\tconst html = `<!DOCTYPE html><html><head>${styles}</head><body><div id=\"root\">${body}</div></body></html>`;\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 404\n\t});\n};\n\nconst renderAngularNotFound = async (conventionPath: string) => {\n\tconst mod = await import(conventionPath);\n\tconst renderNotFound = mod.default ?? mod.renderNotFound;\n\tif (typeof renderNotFound !== 'function') return null;\n\n\tconst html = renderNotFound();\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' },\n\t\tstatus: 404\n\t});\n};\n\nconst NOT_FOUND_RENDERERS: Record<\n\tkeyof ConventionsMap,\n\t(conventionPath: string) => Promise<Response | null>\n> = {\n\tangular: renderAngularNotFound,\n\treact: renderReactNotFound,\n\tsvelte: renderSvelteNotFound,\n\tvue: renderVueNotFound\n};\n\nexport const renderConventionNotFound = async (\n\tframework: keyof ConventionsMap\n) => {\n\tconst conventionPath = resolveNotFoundConventionPath(framework);\n\tif (!conventionPath) return null;\n\n\tconst renderer = NOT_FOUND_RENDERERS[framework];\n\tif (!renderer) return null;\n\n\ttry {\n\t\treturn await renderer(conventionPath);\n\t} catch (renderError) {\n\t\tlogConventionRenderError(framework, 'not-found', renderError);\n\t}\n\n\treturn null;\n};\n\nconst NOT_FOUND_PRIORITY: (keyof ConventionsMap)[] = [\n\t'react',\n\t'svelte',\n\t'vue',\n\t'angular'\n];\n\nexport const renderFirstNotFound = async () => {\n\tfor (const framework of NOT_FOUND_PRIORITY) {\n\t\tif (!getMap()[framework]?.defaults?.notFound) continue;\n\t\t// eslint-disable-next-line no-await-in-loop -- frameworks must be tried sequentially; first match wins\n\t\tconst response = await renderConventionNotFound(framework);\n\t\tif (response) return response;\n\t}\n\n\treturn null;\n};\n",
|
|
10
|
-
"import type { Component as VueComponent } from 'vue';\nimport
|
|
8
|
+
"import type { Component as VueComponent } from 'vue';\nimport { readdir } from 'node:fs/promises';\nimport { basename, dirname } from 'node:path';\nimport type { VuePropsOf } from '../../types/vue';\nimport { ssrErrorPage } from '../utils/ssrErrorPage';\nimport {\n\tderivePageName,\n\trenderConventionError\n} from '../utils/resolveConvention';\n\nlet ssrDirty = false;\n\nconst resolveCurrentGeneratedVueModulePath = async (pagePath: string) => {\n\tconst pageDirectory = dirname(pagePath);\n\tconst expectedPrefix = `${basename(pagePath, '.js').split('.')[0]}.`;\n\n\ttry {\n\t\tconst pageEntries = await readdir(pageDirectory, {\n\t\t\twithFileTypes: true\n\t\t});\n\t\tconst matchingEntry = pageEntries.find(\n\t\t\t(entry) =>\n\t\t\t\tentry.isFile() &&\n\t\t\t\tentry.name.endsWith('.js') &&\n\t\t\t\t(entry.name === `${expectedPrefix.slice(0, -1)}.js` ||\n\t\t\t\t\tentry.name.startsWith(expectedPrefix))\n\t\t);\n\t\tif (!matchingEntry) {\n\t\t\treturn pagePath;\n\t\t}\n\n\t\treturn `${pageDirectory}/${matchingEntry.name}`;\n\t} catch {\n\t\treturn pagePath;\n\t}\n};\n\nconst buildDirtyResponse = (\n\theadTag: string,\n\tindexPath: string,\n\tmaybeProps: Record<string, unknown> | undefined\n) => {\n\tconst propsScript = `window.__INITIAL_PROPS__=${JSON.stringify(maybeProps ?? {})};`;\n\tconst dirtyFlag = 'window.__SSR_DIRTY__=true;';\n\tconst html =\n\t\t`<!DOCTYPE html><html>${headTag}<body><div id=\"root\"></div>` +\n\t\t`<script>${propsScript}${dirtyFlag}</script>` +\n\t\t`<script type=\"module\" src=\"${indexPath}\"></script>` +\n\t\t`</body></html>`;\n\n\treturn new Response(html, {\n\t\theaders: { 'Content-Type': 'text/html' }\n\t});\n};\n\nexport const handleVuePageRequest = async <Component extends VueComponent>(\n\t_PageComponent: Component,\n\tpagePath: string,\n\tindexPath: string,\n\theadTag: `<head>${string}</head>` = '<head></head>',\n\t...props: keyof VuePropsOf<Component> extends never\n\t\t? [props?: Record<string, never>]\n\t\t: [props: NoInfer<VuePropsOf<Component>>]\n) => {\n\tconst [maybeProps] = props;\n\n\tif (ssrDirty) {\n\t\treturn buildDirtyResponse(headTag, indexPath, maybeProps);\n\t}\n\n\ttry {\n\t\tconst resolvePageComponent = async () => {\n\t\t\tconst passedPageComponent = _PageComponent as unknown;\n\t\t\tif (\n\t\t\t\ttypeof passedPageComponent === 'function' ||\n\t\t\t\t(typeof passedPageComponent === 'object' &&\n\t\t\t\t\tpassedPageComponent !== null)\n\t\t\t) {\n\t\t\t\treturn _PageComponent;\n\t\t\t}\n\n\t\t\tconst generatedPagePath =\n\t\t\t\tawait resolveCurrentGeneratedVueModulePath(pagePath);\n\t\t\tconst importedPageModule = await import(generatedPagePath);\n\n\t\t\treturn importedPageModule.default ?? importedPageModule;\n\t\t};\n\n\t\tconst ImportedPageComponent =\n\t\t\t(await resolvePageComponent()) as VueComponent;\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\tconst pageName = derivePageName(pagePath);\n\t\tconst conventionResponse = await renderConventionError(\n\t\t\t'vue',\n\t\t\tpageName,\n\t\t\terror\n\t\t);\n\t\tif (conventionResponse) return conventionResponse;\n\n\t\treturn new Response(ssrErrorPage('vue', error), {\n\t\t\theaders: { 'Content-Type': 'text/html' },\n\t\t\tstatus: 500\n\t\t});\n\t}\n};\n\nexport const invalidateVueSsrCache = () => {\n\tssrDirty = true;\n};\n",
|
|
11
9
|
"export { handleVuePageRequest } from './pageHandler';\n"
|
|
12
10
|
],
|
|
13
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAAA,IAUM,oBAAoB,CACzB,OACA,eACI;AAAA,EACJ,IAAI,OAAO,UAAU;AAAA,IAAU,OAAO;AAAA,EACtC,IAAI,CAAC,SAAS,OAAO,UAAU;AAAA,IAAU,OAAO;AAAA,EAEhD,WAAW,aAAa,YAAY;AAAA,IACnC,MAAM,SAAS,QAAQ,IAAI,OAAO,SAAS;AAAA,IAC3C,IAAI,OAAO,WAAW,UAAU;AAAA,MAC/B,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EAEA,OAAO;AAAA,GAGK,uBAAuB,CACnC,WACA,aAAiC,CAAC,QAAQ,MACtC;AAAA,EAEJ,IAAI,UAAU,WAAW,GAAG,KAAK,UAAU,WAAW,GAAG;AAAA,IAAG,OAAO;AAAA,EAGnE,MAAM,QAAQ,UAAU,MAAM,GAAG;AAAA,EACjC,MAAM,WAAW,UAAU,WAAW,GAAG;AAAA,EACzC,MAAM,cAAc,WAAW,GAAG,MAAM,MAAM,MAAM,OAAO,MAAM;AAAA,EACjE,MAAM,UAAU,WAAW,MAAM,MAAM,CAAC,EAAE,KAAK,GAAG,IAAI,MAAM,MAAM,CAAC,EAAE,KAAK,GAAG;AAAA,EAC7E,MAAM,YAAY,UAAU,KAAK,YAAY;AAAA,EAG7C,MAAM,aAAa,QAAQ,QAAQ,IAAI,GAAG,gBAAgB,eAAe,EAAE;AAAA,EAC3E,MAAM,kBAAkB,KAAK,YAAY,cAAc;AAAA,EAEvD,IAAI,CAAC,WAAW,eAAe;AAAA,IAAG,OAAO;AAAA,EAEzC,IAAI;AAAA,IACH,MAAM,cAAc,KAAK,MAAM,aAAa,iBAAiB,OAAO,CAAC;AAAA,IACrE,QAAO,YAAW;AAAA,IAElB,IAAI,CAAC;AAAA,MAAS,OAAO;AAAA,IAGrB,MAAM,QAAQ,QAAQ;AAAA,IAEtB,IAAI,CAAC;AAAA,MAAO,OAAO;AAAA,IAEnB,MAAM,aAAa,kBAAkB,OAAO,UAAU;AAAA,IAEtD,IAAI,CAAC;AAAA,MAAY,OAAO;AAAA,IAExB,MAAM,WAAW,QAAQ,YAAY,UAAU;AAAA,IAE/C,OAAO,WAAW,QAAQ,IAAI,WAAW;AAAA,IACxC,MAAM;AAAA,IACP,OAAO;AAAA;AAAA;AAAA;;;ACnET;AACA,mCAA2B,4BAAgB;AAC3C;AAAA,IAGM,iBAEA,qBAEA,YAKA,OAAO,CAAC,aAAqB;AAAA,EAClC,IAAI,SAAS,SAAS,MAAM;AAAA,IAAG,OAAO,SAAS,QAAQ,UAAU,KAAK;AAAA,EACtE,IAAI,SAAS,SAAS,KAAK;AAAA,IAAG,OAAO,SAAS,QAAQ,SAAS,KAAK;AAAA,EAEpE,OAAO,GAAG;AAAA,GAGL,eAAe,CAAC,SACrB,KACE,QAAQ,oBAAoB,gBAAgB,EAC5C,QAAQ,gBAAgB,EAAE,GAEvB,kBAAkB,CAAC,SAAiB;AAAA,EACzC,MAAM,QAAQ,KAAK,MAAM;AAAA,CAAI;AAAA,EAC7B,MAAM,eAAe,IAAI;AAAA,EACzB,MAAM,iBAAiB;AAAA,EAEvB,MAAM,QAAQ,CAAC,SAAS;AAAA,IACvB,MAAM,QAAQ,KAAK,MAAM,cAAc;AAAA,IACvC,IAAI,CAAC,QAAQ;AAAA,MAAI;AAAA,IACjB,MAAM,GACJ,MAAM,GAAG,EACT,QAAQ,CAAC,cAAc,aAAa,IAAI,UAAU,KAAK,CAAC,CAAC;AAAA,GAC3D;AAAA,EAED,MAAM,cAAc,MAAM,OAAO,CAAC,SAAS,CAAC,eAAe,KAAK,IAAI,CAAC;AAAA,EAErE,IAAI,aAAa,SAAS,GAAG;AAAA,IAC5B,OAAO,YAAY,KAAK;AAAA,CAAI;AAAA,EAC7B;AAAA,EAEA,OAAO;AAAA,IACN,YAAY,CAAC,GAAG,YAAY,EAAE,KAAK,IAAI;AAAA,IACvC,GAAG;AAAA,EACJ,EAAE,KAAK;AAAA,CAAI;AAAA,GAGN,2BAA2B,CAAC,MAAc,OAAe;AAAA,EAC9D,MAAM,aAAa,SAAS,QAAQ,IAAI,GAAG,EAAE,EAAE,QAAQ,OAAO,GAAG;AAAA,EACjE,OAAO,WAAW,WAAW,GAAG,IAAI,aAAa,KAAK;AAAA,GAGjD,wBAAwB,OAAO,MAAc,SAAiB;AAAA,EACnE,IAAI,CAAC,KAAK,WAAW,GAAG,GAAG;AAAA,IAC1B,OAAO;AAAA,EACR;AAAA,EAEA,MAAM,WAAW,SAAQ,QAAQ,IAAI,GAAG,IAAI;AAAA,EAC5C,MAAM,aAAa;AAAA,IAClB;AAAA,IACA,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,MAAK,UAAU,UAAU;AAAA,IACzB,MAAK,UAAU,UAAU;AAAA,IACzB,MAAK,UAAU,WAAW;AAAA,IAC1B,MAAK,UAAU,WAAW;AAAA,IAC1B,MAAK,UAAU,YAAY;AAAA,EAC5B;AAAA,EAEA,WAAW,aAAa,YAAY;AAAA,IACnC,IAAK,MAAM,IAAI,KAAK,SAAS,EAAE,OAAO,MAAO,MAAM;AAAA,MAClD,OAAO;AAAA,IACR;AAAA,EACD;AAAA,EAEA,OAAO;AAAA,GAGF,sBAAsB,CAAC,eAAuB;AAAA,EACnD,MAAM,qBAAqB,SAAS,QAAQ,IAAI,GAAG,UAAU,EAAE,QAC9D,OACA,GACD;AAAA,EACA,MAAM,uBAAuB,mBAAmB,WAAW,IAAI,IAC5D,WAAW,QAAQ,WAAW,GAAG,IACjC;AAAA,EAEH,OAAO,MAAK,iBAAiB,GAAG,gCAAgC;AAAA,GAG3D,mBAAmB,OAAO,MAAc,SAAiB;AAAA,EAC9D,IAAI,KAAK,WAAW,GAAG,GAAG;AAAA,IACzB,OAAO;AAAA,EACR;AAAA,EAEA,IAAI,KAAK,WAAW,GAAG,GAAG;AAAA,IACzB,MAAM,eAAe,SAAQ,QAAQ,IAAI,GAAG,IAAI;AAAA,IAChD,IAAI,QAAQ,YAAY,MAAM,QAAQ;AAAA,MACrC,OAAO;AAAA,IACR;AAAA,IAEA,MAAM,YAAY,GAAG;AAAA,IACrB,IAAK,MAAM,IAAI,KAAK,SAAS,EAAE,OAAO,MAAO,MAAM;AAAA,MAClD,OAAO;AAAA,IACR;AAAA,IAEA,OAAO;AAAA,EACR;AAAA,EAEA,MAAM,eAAe,qBAAqB,IAAI;AAAA,EAC9C,IAAI,cAAc,SAAS,MAAM,GAAG;AAAA,IACnC,OAAO;AAAA,EACR;AAAA,EAEA,OAAO;AAAA,GAGF,iBAAiB,OAAO,MAAc,YAAoB;AAAA,EAC/D,MAAM,aAAa,IAAI,KAAK,IAAI;AAAA,EAChC,IAAK,MAAM,WAAW,OAAO,MAAO,MAAM;AAAA,IACzC,MAAM,iBAAiB,MAAM,WAAW,KAAK;AAAA,IAC7C,IAAI,mBAAmB,SAAS;AAAA,MAC/B;AAAA,IACD;AAAA,EACD;AAAA,EAEA,MAAM,IAAI,MAAM,MAAM,OAAO;AAAA,GAGjB,yBAAyB,OAAO,eAAuB;AAAA,EACnE,MAAM,mBAAmB,oBAAoB,IAAI,UAAU;AAAA,EAC3D,IAAI,kBAAkB;AAAA,IACrB,OAAO;AAAA,EACR;AAAA,EAEA,MAAM,WAAW,MAAa;AAAA,EAC9B,MAAM,SAAS,MAAM,IAAI,KAAK,UAAU,EAAE,KAAK;AAAA,EAC/C,QAAQ,eAAe,SAAS,MAAM,QAAQ;AAAA,IAC7C,UAAU;AAAA,EACX,CAAC;AAAA,EACD,MAAM,cAAc,IAAI,KAAK,UAAU,EAAE,SAAS,EAAE;AAAA,EAEpD,MAAM,eACL,WAAW,aAAa,WAAW,WAAW,QAAQ,WAAW;AAAA,EAClE,MAAM,cAAc,MAAM,KACzB,aAAa,SAAS,oCAAoC,CAC3D,EACE,IAAI,CAAC,UAAU,MAAM,EAAE,EACvB,OAAO,CAAC,UAA2B,UAAU,SAAS;AAAA,EAExD,MAAM,qBAAqB,MAAM,QAAQ,IACxC,YAAY,IAAI,CAAC,SAAS,iBAAiB,MAAM,UAAU,CAAC,CAC7D;AAAA,EACA,MAAM,wBAAwB,MAAM,QAAQ,IAC3C,YAAY,IAAI,CAAC,SAAS,sBAAsB,MAAM,UAAU,CAAC,CAClE;AAAA,EAEA,MAAM,mBAAmB,IAAI;AAAA,EAC7B,MAAM,uBAAuB,IAAI;AAAA,EAEjC,SAAS,QAAQ,EAAG,QAAQ,YAAY,QAAQ,SAAS,GAAG;AAAA,IAC3D,MAAM,OAAO,YAAY;AAAA,IACzB,MAAM,gBAAgB,mBAAmB;AAAA,IACzC,IAAI,CAAC,QAAQ,CAAC;AAAA,MAAe;AAAA,IAE7B,MAAM,oBAAoB,MAAM,uBAAuB,aAAa;AAAA,IACpE,iBAAiB,IAAI,MAAM,iBAAiB;AAAA,EAC7C;AAAA,EAEA,SAAS,QAAQ,EAAG,QAAQ,YAAY,QAAQ,SAAS,GAAG;AAAA,IAC3D,MAAM,OAAO,YAAY;AAAA,IACzB,MAAM,uBAAuB,sBAAsB;AAAA,IACnD,IAAI,CAAC,QAAQ,CAAC;AAAA,MAAsB;AAAA,IACpC,IAAI,mBAAmB;AAAA,MAAQ;AAAA,IAE/B,qBAAqB,IACpB,MACA,yBACC,oBAAoB,UAAU,GAC9B,oBACD,CACD;AAAA,EACD;AAAA,EAEA,MAAM,YAAY,WAAW,UAAU,WAAW;AAAA,EAClD,MAAM,iBAAiB,YACpB,SAAS,cAAc,YAAY;AAAA,IACnC,IAAI;AAAA,IACJ,gBAAgB;AAAA,EACjB,CAAC,IACA,EAAE,UAAU,CAAC,GAAG,SAAS,qBAAqB;AAAA,EACjD,MAAM,iBAAiB,aAAa,eAAe,OAAO;AAAA,EAC1D,MAAM,mBAAmB,WACvB,cAAc,cAAc,EAC5B,QACA,kCACA,CAAC,GAAG,YAAY,gBAAgB,aAC/B,GAAG,aAAa,KAAK,cAAc,IAAI,UACzC;AAAA,EACD,MAAM,gBAAgB,SACpB,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,MAChB,iBAAiB,eAAe;AAAA,MAChC,mBAAmB;AAAA,IACpB;AAAA,IACA,UAAU;AAAA,IACV,IAAI;AAAA,IACJ,QAAQ,WAAW,OAAO,KAAK,CAAC,eAAe,WAAW,MAAM;AAAA,IAChE,QAAQ,WAAW,UAAU,WAAW;AAAA,IACxC,KAAK;AAAA,IACL,YAAY,WAAW;AAAA,EACxB,CAAC,EACA,KAAK,QACL,kCACA,CAAC,GAAG,YAAY,gBAAgB,aAC/B,GAAG,aAAa,KAAK,cAAc,IAAI,UACzC;AAAA,EAED,IAAI,aAAa,gBAChB;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,OAAO,KAAK,CAAC,eAAe,WAAW,MAAM,IACrD,8BAA8B,kBAC9B;AAAA,IACH;AAAA,EACD,EACE,OAAO,OAAO,EACd,KAAK;AAAA,CAAI,CACZ;AAAA,EAEA,YAAY,MAAM,sBAAsB,kBAAkB;AAAA,IACzD,aAAa,WAAW,WACvB,MACA,yBACC,oBAAoB,UAAU,GAC9B,iBACD,CACD;AAAA,EACD;AAAA,EAEA,YAAY,MAAM,yBAAyB,sBAAsB;AAAA,IAChE,aAAa,WAAW,WAAW,MAAM,oBAAoB;AAAA,EAC9D;AAAA,EAEA,MAAM,qBAAqB,oBAAoB,UAAU;AAAA,EACzD,MAAM,MAAM,QAAQ,kBAAkB,GAAG,EAAE,WAAW,KAAK,CAAC;AAAA,EAC5D,MAAM,eAAe,oBAAoB,UAAU;AAAA,EACnD,oBAAoB,IAAI,YAAY,kBAAkB;AAAA,EAEtD,OAAO;AAAA;AAAA;AAAA,EA/PR;AAAA,EAEM,kBAAkB,MAAK,QAAQ,IAAI,GAAG,eAAe,WAAW,KAAK;AAAA,EAErE,sBAAsB,IAAI;AAAA,EAE1B,aAAa,IAAI,WAAW;AAAA,IACjC,QAAQ;AAAA,IACR,QAAQ;AAAA,EACT,CAAC;AAAA;;;ICZY,eAAe,CAAC,WAAmB,UAAmB;AAAA,EAClE,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;;;IC7C1F,gBAAgB,CAAC,QACtB,IACE,KAAK,EACL,QAAQ,QAAQ,GAAG,EACnB,QAAQ,qBAAqB,EAAE,EAC/B,QAAQ,aAAa,GAAG,GAEd,UAAU,CAAC,QACvB,cAAc,GAAG,EACf,QAAQ,sBAAsB,OAAO,EACrC,YAAY,GACF,WAAW,CAAC,QAAgB;AAAA,EACxC,IAAI,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,SAAS,GAAG,GAAG;AAAA,IAC7C,OAAO,IAAI,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,MAAM,CAAC;AAAA,EACjD;AAAA,EAEA,OAAO,cAAc,GAAG,EACtB,MAAM,MAAM,EACZ,OAAO,OAAO,EACd,IACA,CAAC,YACA,QAAQ,OAAO,CAAC,EAAE,YAAY,IAAI,QAAQ,MAAM,CAAC,EAAE,YAAY,CACjE,EACC,KAAK,EAAE;AAAA,GAEG,mBAAmB,CAAC,QAChC,IAAI,QAAQ,sBAAsB,OAAO,EAAE,YAAY;;;AC1BxD;AAAA,IAOM,kBAAkB,yBAElB,mBAAmB,CAAC,UACzB,QAAQ,KAAK,KAAK,OAAO,UAAU,UAE9B,SAAS,MAAM;AAAA,EACpB,MAAM,QAAiB,QAAQ,IAAI,YAAY,eAAe;AAAA,EAC9D,IAAI,iBAAiB,KAAK;AAAA,IAAG,OAAO;AAAA,EAEpC,MAAM,QAAwB,CAAC;AAAA,EAE/B,OAAO;AAAA,GAGK,iBAAiB,CAAC,aAAqB;AAAA,EACnD,MAAM,OAAO,SAAS,QAAQ;AAAA,EAE9B,MAAM,WAAW,KAAK,QAAQ,GAAG;AAAA,EACjC,MAAM,OAAO,WAAW,IAAI,KAAK,MAAM,GAAG,QAAQ,IAAI;AAAA,EAEtD,OAAO,SAAS,IAAI;AAAA,GAGR,6BAA6B,CACzC,WACA,aACI;AAAA,EACJ,MAAM,cAAc,OAAO,EAAE;AAAA,EAC7B,IAAI,CAAC;AAAA,IAAa;AAAA,EAElB,OAAO,YAAY,QAAQ,WAAW,SAAS,YAAY,UAAU;AAAA,GAEzD,gCAAgC,CAC5C,cACI,OAAO,EAAE,YAAY,UAAU,UACvB,iBAAiB,CAAC,QAAwB;AAAA,EACtD,QAAQ,IAAI,YAAY,iBAAiB,GAAG;AAAA,GAGvC,QAAQ,MAAM,MAEd,kBAAkB,CAAC,UAAmB;AAAA,EAC3C,MAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AAAA,EACrE,MAAM,QAAQ,MAAM,KAAK,iBAAiB,QAAQ,MAAM,QAAQ;AAAA,EAEhE,OAAO,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE;AAAA,GAG9B,mBAAmB,OACxB,gBACA,eACI;AAAA,EACJ,QAAQ,kBAAkB,MAAa;AAAA,EACvC,QAAQ,2BAA2B,MAAa;AAAA,EAChD,MAAM,MAAM,MAAa;AAAA,EACzB,OAAO,YAAY,OAAO,KAAK,GAAG;AAAA,EAClC,MAAM,iBACL,IAAI,YAAY,WAAW,IAAI,YAAY;AAAA,EAC5C,MAAM,UAAU,cAAc,gBAAgB,UAAU;AAAA,EACxD,MAAM,SAAS,MAAM,uBAAuB,OAAO;AAAA,EAEnD,OAAO,IAAI,SAAS,QAAQ;AAAA,IAC3B,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,oBAAoB,OACzB,gBACA,eACI;AAAA,EACJ,QAAQ,WAAW,MAAa;AAAA,EAChC,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,iBAAiB,IAAI;AAAA,EAC3B,QAAQ,MAAM,SAAS,OAAO,gBAAgB;AAAA,IAC7C,OAAO;AAAA,EACR,CAAC;AAAA,EACD,MAAM,OAAO,8BAA8B,oBAAoB;AAAA,EAE/D,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,oBAAoB,CAAC,YAAoB;AAAA,EAC9C,IAAI,SAAS;AAAA,EACb,MAAM,OAAO,QAAQ,QACpB,+BACA,CAAC,GAAG,QAAgB;AAAA,IACnB,UAAU,UAAU,IAClB,QAAQ,WAAW,GAAG,EACtB,QAAQ,UAAU,GAAG,EACrB,QAAQ,SAAS,GAAG,EACpB,QAAQ,SAAS,GAAG;AAAA,IAEtB,OAAO;AAAA,GAET;AAAA,EAEA,OAAO,EAAE,MAAM,OAAO;AAAA,GAGjB,iBAAiB,OACtB,gBACA,eACI;AAAA,EACJ,QAAQ,cAAc,MAAM,MAAa;AAAA,EACzC,QAAQ,mBAAmB,MAAa;AAAA,EACxC,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,iBAAiB,IAAI;AAAA,EAC3B,MAAM,MAAM,aAAa;AAAA,IACxB,QAAQ,MAAM,EAAE,gBAAgB,UAAU;AAAA,EAC3C,CAAC;AAAA,EACD,MAAM,UAAU,MAAM,eAAe,GAAG;AAAA,EAIxC,QAAQ,QAAQ,SAAS,kBAAkB,OAAO;AAAA,EAClD,MAAM,OAAO,8BAA8B,qCAAqC;AAAA,EAEhF,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,qBAAqB,OAC1B,gBACA,eACI;AAAA,EAGJ,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,cAAc,IAAI,WAAW,IAAI;AAAA,EACvC,IAAI,OAAO,gBAAgB;AAAA,IAAY,OAAO;AAAA,EAE9C,MAAM,OAAO,YAAY,UAAU;AAAA,EAEnC,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,2BAA2B,CAChC,WACA,OACA,gBACI;AAAA,EACJ,MAAM,UAAU,uBAAuB,QAAQ,YAAY,UAAU;AAAA,EACrE,IACC,QAAQ,SAAS,oBAAoB,KACrC,QAAQ,SAAS,qBAAqB,KACtC,QAAQ,SAAS,qBAAqB,GACrC;AAAA,IACD,QAAQ,MACP,oBAAoB,kBAAkB,2DACvB,gDAAgD,cAAc,UAAU,oBAAoB,aAC5G;AAAA,IAEA;AAAA,EACD;AAAA,EAEA,QAAQ,MACP,0BAA0B,wBAAwB,eAClD,WACD;AAAA,GAGK,iBAaO,wBAAwB,OACpC,WACA,UACA,UACI;AAAA,EACJ,MAAM,iBAAiB,2BAA2B,WAAW,QAAQ;AAAA,EACrE,IAAI,CAAC;AAAA,IAAgB,OAAO;AAAA,EAE5B,MAAM,aAAa,gBAAgB,KAAK;AAAA,EACxC,MAAM,WAAW,gBAAgB;AAAA,EACjC,IAAI,CAAC;AAAA,IAAU,OAAO;AAAA,EAEtB,IAAI;AAAA,IACH,OAAO,MAAM,SAAS,gBAAgB,UAAU;AAAA,IAC/C,OAAO,aAAa;AAAA,IACrB,yBAAyB,WAAW,SAAS,WAAW;AAAA;AAAA,EAGzD,OAAO;AAAA,GAGF,sBAAsB,OAAO,mBAA2B;AAAA,EAC7D,QAAQ,kBAAkB,MAAa;AAAA,EACvC,QAAQ,2BAA2B,MAAa;AAAA,EAChD,MAAM,MAAM,MAAa;AAAA,EACzB,OAAO,SAAS,OAAO,KAAK,GAAG;AAAA,EAC/B,MAAM,oBAAoB,IAAI,YAAY,QAAQ,IAAI,SAAS;AAAA,EAC/D,MAAM,UAAU,cAAc,iBAAiB;AAAA,EAC/C,MAAM,SAAS,MAAM,uBAAuB,OAAO;AAAA,EAEnD,OAAO,IAAI,SAAS,QAAQ;AAAA,IAC3B,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,uBAAuB,OAAO,mBAA2B;AAAA,EAC9D,QAAQ,WAAW,MAAa;AAAA,EAChC,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,oBAAoB,IAAI;AAAA,EAC9B,QAAQ,MAAM,SAAS,OAAO,iBAAiB;AAAA,EAC/C,MAAM,OAAO,8BAA8B,oBAAoB;AAAA,EAE/D,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,oBAAoB,OAAO,mBAA2B;AAAA,EAC3D,QAAQ,cAAc,MAAM,MAAa;AAAA,EACzC,QAAQ,mBAAmB,MAAa;AAAA,EACxC,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,oBAAoB,IAAI;AAAA,EAC9B,MAAM,MAAM,aAAa;AAAA,IACxB,QAAQ,MAAM,EAAE,iBAAiB;AAAA,EAClC,CAAC;AAAA,EACD,MAAM,UAAU,MAAM,eAAe,GAAG;AAAA,EAExC,QAAQ,QAAQ,SAAS,kBAAkB,OAAO;AAAA,EAClD,MAAM,OAAO,8BAA8B,qCAAqC;AAAA,EAEhF,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,wBAAwB,OAAO,mBAA2B;AAAA,EAC/D,MAAM,MAAM,MAAa;AAAA,EACzB,MAAM,iBAAiB,IAAI,WAAW,IAAI;AAAA,EAC1C,IAAI,OAAO,mBAAmB;AAAA,IAAY,OAAO;AAAA,EAEjD,MAAM,OAAO,eAAe;AAAA,EAE5B,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACvC,QAAQ;AAAA,EACT,CAAC;AAAA,GAGI,qBAUO,2BAA2B,OACvC,cACI;AAAA,EACJ,MAAM,iBAAiB,8BAA8B,SAAS;AAAA,EAC9D,IAAI,CAAC;AAAA,IAAgB,OAAO;AAAA,EAE5B,MAAM,WAAW,oBAAoB;AAAA,EACrC,IAAI,CAAC;AAAA,IAAU,OAAO;AAAA,EAEtB,IAAI;AAAA,IACH,OAAO,MAAM,SAAS,cAAc;AAAA,IACnC,OAAO,aAAa;AAAA,IACrB,yBAAyB,WAAW,aAAa,WAAW;AAAA;AAAA,EAG7D,OAAO;AAAA,GAGF,oBAOO,sBAAsB,YAAY;AAAA,EAC9C,WAAW,aAAa,oBAAoB;AAAA,IAC3C,IAAI,CAAC,OAAO,EAAE,YAAY,UAAU;AAAA,MAAU;AAAA,IAE9C,MAAM,WAAW,MAAM,yBAAyB,SAAS;AAAA,IACzD,IAAI;AAAA,MAAU,OAAO;AAAA,EACtB;AAAA,EAEA,OAAO;AAAA;AAAA;AAAA,EAzIF,kBAMF;AAAA,IACH,SAAS;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACN;AAAA,EAmFM,sBAGF;AAAA,IACH,SAAS;AAAA,IACT,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,KAAK;AAAA,EACN;AAAA,EAoBM,qBAA+C;AAAA,IACpD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAAA;;;ICvSI,WAAW,OAET,qBAAqB,CAC1B,SACA,WACA,eACI;AAAA,EACJ,MAAM,cAAc,4BAA4B,KAAK,UAAU,cAAc,CAAC,CAAC;AAAA,EAC/E,MAAM,YAAY;AAAA,EAClB,MAAM,OACL,wBAAwB,uCACxB,WAAW,cAAc,uBACzB,8BAA8B,yBAC9B;AAAA,EAED,OAAO,IAAI,SAAS,MAAM;AAAA,IACzB,SAAS,EAAE,gBAAgB,YAAY;AAAA,EACxC,CAAC;AAAA,GAGW,uBAAuB,OACnC,gBACA,UACA,WACA,UAAoC,oBACjC,UAGC;AAAA,EACJ,OAAO,cAAc;AAAA,EAErB,IAAI,UAAU;AAAA,IACb,OAAO,mBAAmB,SAAS,WAAW,UAAU;AAAA,EACzD;AAAA,EAEA,IAAI;AAAA,IACH,MAAM,uBAAuB,YAAY;AAAA,MACxC,MAAM,sBAAsB;AAAA,MAC5B,IACC,OAAO,wBAAwB,cAC9B,OAAO,wBAAwB,YAC/B,wBAAwB,MACxB;AAAA,QACD,OAAO;AAAA,MACR;AAAA,MAEA,MAAM,yBAAyB,OAAO,eAAuB;AAAA,QAC5D,MAAM,qBACL,MAAM,uBAAuB,UAAU;AAAA,QACxC,MAAM,eAAe,MAAa;AAAA,QAElC,OAAO,aAAa,WAAW;AAAA;AAAA,MAGhC,IACC,OAAO,wBAAwB,YAC/B,oBAAoB,SAAS,MAAM,GAClC;AAAA,QACD,OAAO,uBAAuB,mBAAmB;AAAA,MAClD;AAAA,MAEA,MAAM,qBAAqB,MAAa;AAAA,MACxC,MAAM,wBACL,mBAAmB,WAAW;AAAA,MAE/B,IACC,OAAO,0BAA0B,YACjC,sBAAsB,SAAS,MAAM,GACpC;AAAA,QACD,OAAO,uBAAuB,qBAAqB;AAAA,MACpD;AAAA,MAEA,OAAO;AAAA;AAAA,IAGR,MAAM,wBACJ,MAAM,qBAAqB;AAAA,IAC7B,QAAQ,cAAc,MAAM,MAAa;AAAA,IACzC,QAAQ,sBAAsB,MAAa;AAAA,IAE3C,MAAM,MAAM,aAAa;AAAA,MACxB,QAAQ,MAAM,EAAE,uBAAuB,cAAc,IAAI;AAAA,IAC1D,CAAC;AAAA,IAED,MAAM,aAAa,kBAAkB,GAAG;AAAA,IAExC,MAAM,OAAO,wBAAwB;AAAA,IACrC,MAAM,OAAO,0CAA0C,KAAK,UAC3D,cAAc,CAAC,CAChB,wCAAwC;AAAA,IAExC,MAAM,SAAS,IAAI,eAAe;AAAA,MACjC,KAAK,CAAC,YAAY;AAAA,QACjB,WAAW,QAAQ,IAAI;AAAA,QACvB,MAAM,SAAS,WAAW,UAAU;AAAA,QACpC,MAAM,WAAW,MAAM;AAAA,UACtB,OACE,KAAK,EACL,KAAK,GAAG,MAAM,YACd,QACI,WAAW,QAAQ,IAAI,GAAG,WAAW,MAAM,MAC3C,WAAW,QAAQ,KAAK,GAAG,SAAS,EACzC,EACC,MAAM,CAAC,QAAQ,WAAW,MAAM,GAAG,CAAC;AAAA;AAAA,QAEvC,SAAS;AAAA;AAAA,IAEX,CAAC;AAAA,IAED,OAAO,IAAI,SAAS,QAAQ;AAAA,MAC3B,SAAS,EAAE,gBAAgB,YAAY;AAAA,IACxC,CAAC;AAAA,IACA,OAAO,OAAO;AAAA,IACf,QAAQ,MAAM,2BAA2B,KAAK;AAAA,IAE9C,MAAM,WAAW,eAAe,QAAQ;AAAA,IACxC,MAAM,qBAAqB,MAAM,sBAChC,OACA,UACA,KACD;AAAA,IACA,IAAI;AAAA,MAAoB,OAAO;AAAA,IAE/B,OAAO,IAAI,SAAS,aAAa,OAAO,KAAK,GAAG;AAAA,MAC/C,SAAS,EAAE,gBAAgB,YAAY;AAAA,MACvC,QAAQ;AAAA,IACT,CAAC;AAAA;AAAA,GAIU,wBAAwB,MAAM;AAAA,EAC1C,WAAW;AAAA;AAAA;AAAA,EA1IZ;AAAA,EAEA;AAAA;;;ACJA;",
|
|
14
|
-
"debugId": "
|
|
11
|
+
"mappings": "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",
|
|
12
|
+
"debugId": "AC776FCEB312D16464756E2164756E21",
|
|
15
13
|
"names": []
|
|
16
14
|
}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const compileVueServerModule: (sourcePath: string) => Promise<string>;
|