typerighter 0.57.2 → 0.57.4
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/{app-D-dbbyVD.js → app-BQYETY9F.js} +914 -902
- package/dist/{cli-Dpa3j5Sm.js → cli-MA8-6Usn.js} +10 -8
- package/dist/cli.js +1 -1
- package/dist/client/app/index.d.ts.map +1 -1
- package/dist/client/theme-default.js +1 -1
- package/dist/client.js +1 -1
- package/dist/{context-CPrHBM3S.js → context-CLKZYp4U.js} +31 -28
- package/dist/index.js +2 -2
- package/dist/{init-DPhEzp34.js → init-BND13fc5.js} +2 -2
- package/dist/node/build/index.d.ts.map +1 -1
- package/dist/node/build/seo/index.d.ts +1 -0
- package/dist/node/build/seo/index.d.ts.map +1 -1
- package/dist/node/build/seo/llms.d.ts +3 -0
- package/dist/node/build/seo/llms.d.ts.map +1 -0
- package/dist/node/build/seo/page.d.ts.map +1 -1
- package/dist/node/cli/index.d.ts.map +1 -1
- package/dist/node/context.d.ts +3 -1
- package/dist/node/context.d.ts.map +1 -1
- package/dist/{page-BbSO0VG8.js → page-BjRVeDZC.js} +45 -45
- package/dist/prerenderWorker.js +2 -2
- package/dist/{renderMath-e3scuxfY.js → renderMath-DzumBAaX.js} +1 -1
- package/dist/{shared-dB08amQA.js → shared-BhUHq27C.js} +1 -1
- package/dist/shared.js +1 -1
- package/dist/typerighter.css +1 -1
- package/dist/{vite-D3_cd2_2.js → vite-l2QQKyhl.js} +458 -440
- package/dist/vite.js +1 -1
- package/package.json +3 -3
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
import { B as e, D as t, F as n,
|
|
2
|
-
import { n as
|
|
3
|
-
import { t as
|
|
4
|
-
import { a as
|
|
5
|
-
import { t as
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import { build as
|
|
11
|
-
import
|
|
12
|
-
import { fileURLToPath as
|
|
13
|
-
import
|
|
14
|
-
import { Worker as
|
|
15
|
-
import
|
|
16
|
-
import { createRequire as
|
|
17
|
-
import { createChecker as
|
|
18
|
-
import { createHighlighter as
|
|
1
|
+
import { B as e, D as t, F as n, I as r, J as i, O as a, Q as o, R as s, T as c, U as l, V as u, W as d, X as f, _ as p, b as m, c as h, d as g, g as _, h as v, i as y, it as b, p as x, rt as S, tt as C, v as w, x as ee, y as T, z as E } from "./shared-BhUHq27C.js";
|
|
2
|
+
import { n as D, t as O } from "./page-BjRVeDZC.js";
|
|
3
|
+
import { t as k } from "./temml-CjI4drVW.js";
|
|
4
|
+
import { a as A, i as te, n as ne, r as re } from "./context-CLKZYp4U.js";
|
|
5
|
+
import { t as ie } from "./es-B_QJMowB.js";
|
|
6
|
+
import j, { resolve as M } from "node:path";
|
|
7
|
+
import N from "picocolors";
|
|
8
|
+
import ae from "@tailwindcss/vite";
|
|
9
|
+
import oe from "@vitejs/plugin-vue";
|
|
10
|
+
import { build as se, normalizePath as P } from "vite";
|
|
11
|
+
import F, { readdir as ce } from "node:fs/promises";
|
|
12
|
+
import { fileURLToPath as le } from "node:url";
|
|
13
|
+
import ue from "node:os";
|
|
14
|
+
import { Worker as de } from "node:worker_threads";
|
|
15
|
+
import I, { createReadStream as fe, existsSync as pe, globSync as me, readFileSync as he, statSync as ge } from "node:fs";
|
|
16
|
+
import { createRequire as _e } from "node:module";
|
|
17
|
+
import { createChecker as ve, createCheckerByJson as ye } from "vue-component-meta";
|
|
18
|
+
import { createHighlighter as be, guessEmbeddedLanguages as xe, isSpecialLang as Se } from "shiki";
|
|
19
19
|
// src/node/lib/worker-pool/index.ts
|
|
20
|
-
var
|
|
20
|
+
var Ce = class {
|
|
21
21
|
workers = [];
|
|
22
22
|
queue = [];
|
|
23
23
|
destroyed = !1;
|
|
24
24
|
startupError;
|
|
25
25
|
constructor(e) {
|
|
26
|
-
let t = e.concurrency ?? Math.max(1, Math.floor(
|
|
26
|
+
let t = e.concurrency ?? Math.max(1, Math.floor(ue.cpus().length / 2));
|
|
27
27
|
for (let n = 0; n < t; n++) {
|
|
28
|
-
let t = new
|
|
28
|
+
let t = new de(e.filename, { workerData: e.workerData }), n = { worker: t };
|
|
29
29
|
this.workers.push(n), t.on("message", (e) => {
|
|
30
30
|
let t = n.pending;
|
|
31
31
|
n.pending = void 0, e.error === void 0 ? t?.resolve(e.result) : t?.reject(Error(e.error)), this.dispatch(n);
|
|
@@ -62,18 +62,18 @@ var Se = class {
|
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
64
|
// src/node/build/seo/sitemap.ts
|
|
65
|
-
function
|
|
65
|
+
function we(e, t, r, i) {
|
|
66
66
|
let a = r ?? "";
|
|
67
67
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
68
68
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
|
69
69
|
${e.map((e) => {
|
|
70
|
-
let r =
|
|
71
|
-
return ` <url><loc>${r}</loc>${o === void 0 ? "" : `<lastmod>${
|
|
70
|
+
let r = h(a + t + n(e)), o = i?.get(e);
|
|
71
|
+
return ` <url><loc>${r}</loc>${o === void 0 ? "" : `<lastmod>${y(o * 1e3)}</lastmod>`}</url>`;
|
|
72
72
|
}).join("\n")}
|
|
73
73
|
</urlset>
|
|
74
74
|
`;
|
|
75
75
|
}
|
|
76
|
-
function
|
|
76
|
+
function Te(e, t) {
|
|
77
77
|
return `User-agent: *
|
|
78
78
|
Allow: /
|
|
79
79
|
|
|
@@ -81,44 +81,64 @@ Sitemap: ${e}${t}sitemap.xml
|
|
|
81
81
|
`;
|
|
82
82
|
}
|
|
83
83
|
// src/node/build/seo/feed.ts
|
|
84
|
-
function
|
|
85
|
-
let
|
|
86
|
-
let
|
|
84
|
+
function Ee(e, t, n, r, i, a) {
|
|
85
|
+
let o = [...e].filter((e) => e.fileMetadata.mtimeSecs > 0).sort((e, t) => t.fileMetadata.mtimeSecs - e.fileMetadata.mtimeSecs).slice(0, 50).map((e) => {
|
|
86
|
+
let r = l(e.filepath), i = `${n}${t}${r}`, a = (/* @__PURE__ */ new Date(e.fileMetadata.mtimeSecs * 1e3)).toUTCString(), o = h(e.label ?? r), s = e.excerpt === void 0 ? "" : `<![CDATA[${e.excerpt}]]>`;
|
|
87
87
|
return ` <item>
|
|
88
|
-
<title>${
|
|
89
|
-
<link>${
|
|
90
|
-
<guid>${
|
|
91
|
-
<pubDate>${
|
|
92
|
-
<description>${
|
|
88
|
+
<title>${o}</title>
|
|
89
|
+
<link>${h(i)}</link>
|
|
90
|
+
<guid>${h(i)}</guid>
|
|
91
|
+
<pubDate>${a}</pubDate>
|
|
92
|
+
<description>${s}</description>
|
|
93
93
|
</item>`;
|
|
94
94
|
}).join("\n");
|
|
95
95
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
96
96
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
|
97
97
|
<channel>
|
|
98
|
-
<title>${
|
|
99
|
-
<link>${
|
|
100
|
-
<description>${
|
|
101
|
-
<language>${
|
|
102
|
-
<atom:link href="${
|
|
103
|
-
${
|
|
98
|
+
<title>${h(r)}</title>
|
|
99
|
+
<link>${h(n + t)}</link>
|
|
100
|
+
<description>${h(i)}</description>
|
|
101
|
+
<language>${a}</language>
|
|
102
|
+
<atom:link href="${h(n + t)}feed.xml" rel="self" type="application/rss+xml"/>
|
|
103
|
+
${o}
|
|
104
104
|
</channel>
|
|
105
105
|
</rss>
|
|
106
106
|
`;
|
|
107
107
|
}
|
|
108
|
+
// src/node/build/seo/llms.ts
|
|
109
|
+
function De(e, t, n, r, i) {
|
|
110
|
+
let a = [];
|
|
111
|
+
a.push(`# ${r}`), a.push(""), i && (a.push(`> ${i}`), a.push(""));
|
|
112
|
+
let o = /* @__PURE__ */ new Map();
|
|
113
|
+
for (let t of e) {
|
|
114
|
+
let e = t.filepath.split("/"), n = e.length > 1 ? e[0] : "";
|
|
115
|
+
o.has(n) || o.set(n, []), o.get(n).push(t);
|
|
116
|
+
}
|
|
117
|
+
for (let [e, r] of o) {
|
|
118
|
+
let i = e ? f(e) : "General";
|
|
119
|
+
a.push(`## ${i}`), a.push("");
|
|
120
|
+
for (let e of r) {
|
|
121
|
+
let r = l(e.filepath), i = `${n}${t}${m(e.filepath) ? r.replace(/\/index$/, "/").replace(/^index$/, "") : r}`, o = e.label ?? f(E(e.filepath)), s = e.excerpt ? `: ${e.excerpt}` : "";
|
|
122
|
+
a.push(`- [${o}](${i})${s}`);
|
|
123
|
+
}
|
|
124
|
+
a.push("");
|
|
125
|
+
}
|
|
126
|
+
return a.join("\n");
|
|
127
|
+
}
|
|
108
128
|
// src/node/build/fonts.ts
|
|
109
|
-
function
|
|
110
|
-
let t =
|
|
129
|
+
function Oe(e) {
|
|
130
|
+
let t = j.basename(e);
|
|
111
131
|
return t.endsWith(".woff2") && t.includes("-latin-") && !t.includes("-latin-ext-");
|
|
112
132
|
}
|
|
113
133
|
// src/node/build/prerender.ts
|
|
114
|
-
var
|
|
115
|
-
async function
|
|
116
|
-
let { clientEntry: t, cssFiles: n, fontFiles: r } = await
|
|
117
|
-
e.pageRoutes.length >=
|
|
118
|
-
}
|
|
119
|
-
async function
|
|
120
|
-
let r = new
|
|
121
|
-
filename:
|
|
134
|
+
var ke = 64;
|
|
135
|
+
async function Ae(e) {
|
|
136
|
+
let { clientEntry: t, cssFiles: n, fontFiles: r } = await Ne(e.clientOutDir), i = [n.map((t) => ` <link rel="stylesheet" href="${e.base}${t}">`).join("\n"), r.map((t) => ` <link rel="preload" as="font" type="font/woff2" crossorigin href="${e.base}${t}">`).join("\n")].filter(Boolean).join("\n") || void 0;
|
|
137
|
+
e.pageRoutes.length >= ke ? await je(e, t, i) : await Me(e, t, i);
|
|
138
|
+
}
|
|
139
|
+
async function je(e, t, n) {
|
|
140
|
+
let r = new Ce({
|
|
141
|
+
filename: j.resolve(le(import.meta.url), "../prerenderWorker.js"),
|
|
122
142
|
workerData: {
|
|
123
143
|
ssrEntryPath: e.ssrEntryPath,
|
|
124
144
|
base: e.base,
|
|
@@ -132,21 +152,21 @@ async function ke(e, t, n) {
|
|
|
132
152
|
}), i = 0, a = e.pageRoutes.length;
|
|
133
153
|
try {
|
|
134
154
|
await Promise.all(e.pageRoutes.map(async (t) => {
|
|
135
|
-
let n = await r.run(t), o =
|
|
136
|
-
await
|
|
155
|
+
let n = await r.run(t), o = j.join(e.outDir, n.fileName);
|
|
156
|
+
await F.mkdir(j.dirname(o), { recursive: !0 }), await F.writeFile(o, n.html), i++, e.progress?.update(i, a);
|
|
137
157
|
}));
|
|
138
158
|
} finally {
|
|
139
159
|
await r.destroy();
|
|
140
160
|
}
|
|
141
161
|
}
|
|
142
|
-
async function
|
|
162
|
+
async function Me(e, t, r) {
|
|
143
163
|
let i = await (await import(e.ssrEntryPath)).createRenderer(), a = e.pageRoutes.length, o = 0;
|
|
144
164
|
for (let s of e.pageRoutes) {
|
|
145
|
-
let c = await i(s), l =
|
|
165
|
+
let c = await i(s), l = O(c.pageData, s, {
|
|
146
166
|
base: e.base,
|
|
147
167
|
origin: e.origin,
|
|
148
168
|
author: e.author
|
|
149
|
-
}), u =
|
|
169
|
+
}), u = D({
|
|
150
170
|
title: l.title,
|
|
151
171
|
description: l.description,
|
|
152
172
|
siteTitle: e.siteTitle,
|
|
@@ -161,13 +181,13 @@ async function Ae(e, t, r) {
|
|
|
161
181
|
jsonLdBlocks: l.jsonLdBlocks,
|
|
162
182
|
headExtra: r,
|
|
163
183
|
appContent: c.html
|
|
164
|
-
}), d = l.isHomepage ? "index.html" : `${n(s)}.html`, f =
|
|
165
|
-
await
|
|
184
|
+
}), d = l.isHomepage ? "index.html" : `${n(s)}.html`, f = j.join(e.outDir, d);
|
|
185
|
+
await F.mkdir(j.dirname(f), { recursive: !0 }), await F.writeFile(f, u), o++, e.progress?.update(o, a);
|
|
166
186
|
}
|
|
167
187
|
}
|
|
168
|
-
async function
|
|
169
|
-
let t =
|
|
170
|
-
for (let e of Object.values(r)) e.isEntry ? (i = e.file, e.css && a.push(...e.css)) :
|
|
188
|
+
async function Ne(e) {
|
|
189
|
+
let t = j.join(e, ".vite", "manifest.json"), n = await F.readFile(t, "utf-8"), r = JSON.parse(n), i = "", a = [], o = [];
|
|
190
|
+
for (let e of Object.values(r)) e.isEntry ? (i = e.file, e.css && a.push(...e.css)) : Oe(e.file) && o.push(e.file);
|
|
171
191
|
return {
|
|
172
192
|
clientEntry: i,
|
|
173
193
|
cssFiles: a,
|
|
@@ -175,7 +195,7 @@ async function je(e) {
|
|
|
175
195
|
};
|
|
176
196
|
}
|
|
177
197
|
// src/node/lib/codegen/app-entry.ts
|
|
178
|
-
function
|
|
198
|
+
function Pe(e, t) {
|
|
179
199
|
let { rootDir: n = ".", mountPath: r = "", userComponents: i = [] } = e, a = [r, n === "." ? "" : n].filter(Boolean).join("/"), o = i.map((e) => `import ${e.name} from ${JSON.stringify(e.absolutePath)};`).join("\n"), s = i.map((e) => `app.component(${JSON.stringify(e.name)}, ${e.name});`).join("\n"), c = JSON.stringify({
|
|
180
200
|
title: e.siteTitle,
|
|
181
201
|
description: e.siteDescription,
|
|
@@ -233,89 +253,89 @@ if (import.meta.hot) {
|
|
|
233
253
|
`;
|
|
234
254
|
}
|
|
235
255
|
// src/node/lib/codegen/theme.ts
|
|
236
|
-
var
|
|
237
|
-
function
|
|
238
|
-
let n = e?.notFound ? `import CustomNotFound from ${JSON.stringify(t ?
|
|
256
|
+
var L = "typerighter/client/theme-default";
|
|
257
|
+
function Fe(e, t) {
|
|
258
|
+
let n = e?.notFound ? `import CustomNotFound from ${JSON.stringify(t ? j.resolve(t, e.notFound) : e.notFound)};` : "", r = e?.notFound ? ", NotFound: CustomNotFound" : "";
|
|
239
259
|
if (e?.component) {
|
|
240
|
-
let i = t ?
|
|
260
|
+
let i = t ? j.resolve(t, e.component) : e.component;
|
|
241
261
|
return [
|
|
242
262
|
`import CustomLayout from ${JSON.stringify(i)};`,
|
|
243
263
|
n,
|
|
244
264
|
`export default { Layout: CustomLayout${r} };`
|
|
245
265
|
].filter(Boolean).join("\n");
|
|
246
266
|
}
|
|
247
|
-
let
|
|
248
|
-
if (0 <
|
|
249
|
-
let e =
|
|
267
|
+
let a = Object.entries(e?.slots ?? {});
|
|
268
|
+
if (0 < a.length) {
|
|
269
|
+
let e = a.map(([e, t]) => `${JSON.stringify(i(e))}: () => h(resolveComponent(${JSON.stringify(t)}))`).join(", ");
|
|
250
270
|
return [
|
|
251
|
-
`import DefaultTheme from ${JSON.stringify(
|
|
271
|
+
`import DefaultTheme from ${JSON.stringify(L)};`,
|
|
252
272
|
"import { h, resolveComponent } from 'vue';",
|
|
253
273
|
n,
|
|
254
274
|
`export default { Layout: { render() { return h(DefaultTheme.Layout, null, { ${e} }); } }${r} };`
|
|
255
275
|
].filter(Boolean).join("\n");
|
|
256
276
|
}
|
|
257
277
|
return n ? [
|
|
258
|
-
`import DefaultTheme from ${JSON.stringify(
|
|
278
|
+
`import DefaultTheme from ${JSON.stringify(L)};`,
|
|
259
279
|
n,
|
|
260
280
|
`export default { ...DefaultTheme${r} };`
|
|
261
|
-
].join("\n") : `export { default } from ${JSON.stringify(
|
|
281
|
+
].join("\n") : `export { default } from ${JSON.stringify(L)};`;
|
|
262
282
|
}
|
|
263
283
|
// src/node/lib/components.ts
|
|
264
|
-
function
|
|
265
|
-
let t =
|
|
266
|
-
if (
|
|
267
|
-
let n =
|
|
268
|
-
return
|
|
284
|
+
function Ie(e) {
|
|
285
|
+
let t = j.join(e, "tsconfig.json");
|
|
286
|
+
if (I.existsSync(t)) return ve(t);
|
|
287
|
+
let n = Le(e);
|
|
288
|
+
return ye(e, { compilerOptions: {
|
|
269
289
|
strict: !1,
|
|
270
290
|
jsx: "preserve",
|
|
271
291
|
jsxImportSource: "vue",
|
|
272
292
|
...n && { paths: n }
|
|
273
293
|
} });
|
|
274
294
|
}
|
|
275
|
-
async function
|
|
295
|
+
async function R(e, t) {
|
|
276
296
|
let n = [];
|
|
277
297
|
for (let r of e) if (r.kind === "dir") {
|
|
278
|
-
let e =
|
|
298
|
+
let e = j.resolve(t, r.path), i;
|
|
279
299
|
try {
|
|
280
|
-
i = await
|
|
300
|
+
i = await ce(e, { withFileTypes: !0 });
|
|
281
301
|
} catch {
|
|
282
302
|
continue;
|
|
283
303
|
}
|
|
284
304
|
for (let t of i) if (t.isFile() && t.name.endsWith(".vue")) n.push({
|
|
285
305
|
name: t.name.slice(0, -4),
|
|
286
|
-
absolutePath:
|
|
306
|
+
absolutePath: j.join(e, t.name)
|
|
287
307
|
});
|
|
288
308
|
else if (t.isDirectory()) {
|
|
289
|
-
let r =
|
|
290
|
-
|
|
309
|
+
let r = j.join(e, t.name, "index.vue");
|
|
310
|
+
I.existsSync(r) && n.push({
|
|
291
311
|
name: t.name,
|
|
292
312
|
absolutePath: r
|
|
293
313
|
});
|
|
294
314
|
}
|
|
295
315
|
} else n.push({
|
|
296
316
|
name: r.name,
|
|
297
|
-
absolutePath:
|
|
317
|
+
absolutePath: j.resolve(t, r.source)
|
|
298
318
|
});
|
|
299
319
|
return n;
|
|
300
320
|
}
|
|
301
|
-
function
|
|
321
|
+
function Le(e) {
|
|
302
322
|
try {
|
|
303
|
-
let t =
|
|
323
|
+
let t = _e(j.join(e, "package.json")), n = j.dirname(t.resolve("vue/package.json"));
|
|
304
324
|
return {
|
|
305
325
|
vue: [n],
|
|
306
|
-
"vue/*": [
|
|
326
|
+
"vue/*": [j.join(n, "*")]
|
|
307
327
|
};
|
|
308
328
|
} catch {
|
|
309
329
|
return;
|
|
310
330
|
}
|
|
311
331
|
}
|
|
312
332
|
// src/node/lib/progress.ts
|
|
313
|
-
var
|
|
333
|
+
var z = [
|
|
314
334
|
"◐",
|
|
315
335
|
"◓",
|
|
316
336
|
"◑",
|
|
317
337
|
"◒"
|
|
318
|
-
],
|
|
338
|
+
], Re = class {
|
|
319
339
|
logger;
|
|
320
340
|
label;
|
|
321
341
|
start;
|
|
@@ -323,8 +343,8 @@ var R = [
|
|
|
323
343
|
constructor(e, t) {
|
|
324
344
|
if (this.logger = e, this.label = t, this.start = performance.now(), process.stdout.isTTY) {
|
|
325
345
|
let e = 0;
|
|
326
|
-
process.stdout.write(
|
|
327
|
-
e = (e + 1) %
|
|
346
|
+
process.stdout.write(N.cyan(`${z[0]} ${t}`)), this.spinnerInterval = setInterval(() => {
|
|
347
|
+
e = (e + 1) % z.length, process.stdout.write(`\r${N.cyan(`${z[e]} ${this.label}`)}`);
|
|
328
348
|
}, 120).unref();
|
|
329
349
|
} else this.logger.start(t);
|
|
330
350
|
}
|
|
@@ -336,61 +356,61 @@ var R = [
|
|
|
336
356
|
done(e) {
|
|
337
357
|
this.stopSpinner(), process.stdout.isTTY && process.stdout.write("\r\x1B[K");
|
|
338
358
|
let t = Math.round(performance.now() - this.start);
|
|
339
|
-
this.logger.success(`${e} (${
|
|
359
|
+
this.logger.success(`${e} (${ze(t)})`);
|
|
340
360
|
}
|
|
341
361
|
stopSpinner() {
|
|
342
362
|
this.spinnerInterval &&= (clearInterval(this.spinnerInterval), void 0);
|
|
343
363
|
}
|
|
344
364
|
};
|
|
345
|
-
function
|
|
365
|
+
function ze(e) {
|
|
346
366
|
return e < 1e3 ? `${Math.round(e)}ms` : `${(e / 1e3).toFixed(1)}s`;
|
|
347
367
|
}
|
|
348
368
|
// src/node/build/index.ts
|
|
349
|
-
async function
|
|
350
|
-
let { root: n, logger:
|
|
351
|
-
await
|
|
369
|
+
async function Be(e, t = {}) {
|
|
370
|
+
let { root: n, logger: r } = e, i = j.resolve(n, t.outDir ?? "dist"), a = j.join(i, ".client"), o = j.join(i, ".server");
|
|
371
|
+
await F.rm(i, {
|
|
352
372
|
recursive: !0,
|
|
353
373
|
force: !0
|
|
354
374
|
});
|
|
355
|
-
let
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
]), p = await Promise.all(f.map(async (e) => [e, (await
|
|
375
|
+
let s = await e.getTdContext(), [c, u, d, f] = await Promise.all([
|
|
376
|
+
s.getConfig(),
|
|
377
|
+
s.listFiles(),
|
|
378
|
+
s.listSidebar(),
|
|
379
|
+
s.listSchemas()
|
|
380
|
+
]), p = await Promise.all(f.map(async (e) => [e, (await s.getSchema(e)).properties])), m = Object.fromEntries(p), h = c.origin ?? void 0, g = c.author ?? void 0, _ = c.license ?? void 0, y = c.repo ?? void 0, b = t.base ?? c.basePath ?? "/", x = ee(b), S = d.map((e) => ({
|
|
361
381
|
...e,
|
|
362
382
|
header: {}
|
|
363
|
-
})), C =
|
|
364
|
-
title:
|
|
365
|
-
description:
|
|
383
|
+
})), C = v(S), w = JSON.stringify({
|
|
384
|
+
title: c.siteTitle,
|
|
385
|
+
description: c.siteDescription,
|
|
366
386
|
basePath: x,
|
|
367
387
|
origin: h,
|
|
368
|
-
lang:
|
|
369
|
-
rootDir:
|
|
388
|
+
lang: c.lang,
|
|
389
|
+
rootDir: c.rootDir,
|
|
370
390
|
repo: y,
|
|
371
|
-
author:
|
|
372
|
-
license:
|
|
373
|
-
nav:
|
|
391
|
+
author: g,
|
|
392
|
+
license: _,
|
|
393
|
+
nav: c.nav
|
|
374
394
|
}), T = JSON.stringify({
|
|
375
395
|
ready: !0,
|
|
376
396
|
contentTree: C,
|
|
377
397
|
schemas: m
|
|
378
|
-
}), E =
|
|
379
|
-
await
|
|
380
|
-
let D =
|
|
398
|
+
}), E = j.join(n, "node_modules", ".typerighter");
|
|
399
|
+
await F.mkdir(E, { recursive: !0 });
|
|
400
|
+
let D = j.join(E, "client-entry.js"), O = j.join(E, "ssr-entry.js"), k = j.join(E, "theme.js"), A = await R(c.components, n), te = Fe(c.layout ?? void 0, n);
|
|
381
401
|
await Promise.all([
|
|
382
|
-
|
|
383
|
-
rootDir:
|
|
402
|
+
F.writeFile(D, Pe({
|
|
403
|
+
rootDir: c.rootDir,
|
|
384
404
|
basePath: x,
|
|
385
405
|
origin: h,
|
|
386
|
-
lang:
|
|
387
|
-
siteTitle:
|
|
388
|
-
siteDescription:
|
|
406
|
+
lang: c.lang,
|
|
407
|
+
siteTitle: c.siteTitle,
|
|
408
|
+
siteDescription: c.siteDescription,
|
|
389
409
|
repo: y,
|
|
390
|
-
author:
|
|
391
|
-
license:
|
|
392
|
-
nav:
|
|
393
|
-
userComponents:
|
|
410
|
+
author: g,
|
|
411
|
+
license: _,
|
|
412
|
+
nav: c.nav,
|
|
413
|
+
userComponents: A
|
|
394
414
|
}, {
|
|
395
415
|
theme: Y,
|
|
396
416
|
pages: G,
|
|
@@ -398,27 +418,27 @@ async function Le(e, t = {}) {
|
|
|
398
418
|
searchIndex: J,
|
|
399
419
|
pageDataEvent: X
|
|
400
420
|
})),
|
|
401
|
-
|
|
402
|
-
rootDir:
|
|
421
|
+
F.writeFile(O, Ve({
|
|
422
|
+
rootDir: c.rootDir,
|
|
403
423
|
siteConfig: w,
|
|
404
424
|
siteData: T,
|
|
405
425
|
themeModulePath: k,
|
|
406
|
-
userComponents:
|
|
426
|
+
userComponents: A
|
|
407
427
|
})),
|
|
408
|
-
|
|
428
|
+
F.writeFile(k, te)
|
|
409
429
|
]);
|
|
410
430
|
try {
|
|
411
|
-
let
|
|
412
|
-
await
|
|
431
|
+
let s = e.createViteLogger(), f = new Re(r, "Building bundles..."), p = performance.now();
|
|
432
|
+
await Promise.all([se({
|
|
413
433
|
...t.viteConfig,
|
|
414
434
|
root: n,
|
|
415
435
|
base: x,
|
|
416
|
-
plugins:
|
|
417
|
-
customLogger:
|
|
436
|
+
plugins: $({ context: e }),
|
|
437
|
+
customLogger: s,
|
|
418
438
|
logLevel: "silent",
|
|
419
439
|
build: {
|
|
420
440
|
...t.viteConfig?.build,
|
|
421
|
-
outDir:
|
|
441
|
+
outDir: a,
|
|
422
442
|
manifest: !0,
|
|
423
443
|
emptyOutDir: !0,
|
|
424
444
|
rollupOptions: {
|
|
@@ -426,73 +446,71 @@ async function Le(e, t = {}) {
|
|
|
426
446
|
input: D
|
|
427
447
|
}
|
|
428
448
|
}
|
|
429
|
-
})
|
|
430
|
-
let m = await P.readdir(A.join(o, "assets")).catch(() => []);
|
|
431
|
-
p.done(`Client bundle (${m.length} chunks)`);
|
|
432
|
-
let g = new z(i, "Building SSR bundle...");
|
|
433
|
-
await oe({
|
|
449
|
+
}), se({
|
|
434
450
|
...t.viteConfig,
|
|
435
451
|
root: n,
|
|
436
452
|
base: x,
|
|
437
|
-
plugins:
|
|
438
|
-
customLogger:
|
|
453
|
+
plugins: $({ context: e }),
|
|
454
|
+
customLogger: s,
|
|
439
455
|
logLevel: "silent",
|
|
440
456
|
build: {
|
|
441
457
|
...t.viteConfig?.build,
|
|
442
|
-
outDir:
|
|
458
|
+
outDir: o,
|
|
443
459
|
ssr: O,
|
|
444
460
|
emptyOutDir: !0
|
|
445
461
|
}
|
|
446
|
-
})
|
|
462
|
+
})]);
|
|
463
|
+
let m = await F.readdir(j.join(a, "assets")).catch(() => []), _ = performance.now() - p;
|
|
464
|
+
f.done(`Client (${m.length} chunks) + SSR`), process.env.TYPEDOWN_VERBOSE === "1" && process.stderr.write(`[timing:phase] bundles ${_.toFixed(0)}ms\n`);
|
|
447
465
|
let v = u.map((e) => {
|
|
448
|
-
let t =
|
|
466
|
+
let t = l(e);
|
|
449
467
|
return t === "index" ? "/" : `/${t}`;
|
|
450
468
|
});
|
|
451
|
-
v.push("/"),
|
|
452
|
-
let y = new
|
|
453
|
-
await
|
|
454
|
-
ssrEntryPath:
|
|
455
|
-
clientOutDir:
|
|
456
|
-
outDir:
|
|
469
|
+
v.push("/"), Ue(C.entries, v);
|
|
470
|
+
let y = new Re(r, "Pre-rendering pages...");
|
|
471
|
+
await Ae({
|
|
472
|
+
ssrEntryPath: j.join(o, "ssr-entry.js"),
|
|
473
|
+
clientOutDir: a,
|
|
474
|
+
outDir: i,
|
|
457
475
|
base: x,
|
|
458
476
|
origin: h,
|
|
459
|
-
lang:
|
|
477
|
+
lang: c.lang,
|
|
460
478
|
pageRoutes: v,
|
|
461
|
-
siteTitle:
|
|
462
|
-
author:
|
|
479
|
+
siteTitle: c.siteTitle,
|
|
480
|
+
author: g,
|
|
463
481
|
progress: y
|
|
464
482
|
}), y.done(`Pre-rendered ${v.length} pages`);
|
|
465
483
|
let b = /* @__PURE__ */ new Map();
|
|
466
484
|
for (let e of d) {
|
|
467
|
-
let t =
|
|
485
|
+
let t = l(e.filepath), n = t === "index" ? "/" : `/${t}`;
|
|
468
486
|
b.set(n, e.fileMetadata.mtimeSecs);
|
|
469
487
|
}
|
|
470
|
-
let
|
|
471
|
-
h !== void 0 && (
|
|
472
|
-
let
|
|
473
|
-
await
|
|
474
|
-
let E =
|
|
475
|
-
await
|
|
488
|
+
let S = we(v, x, h, b), w = [F.writeFile(j.join(i, "sitemap.xml"), S)];
|
|
489
|
+
h !== void 0 && (w.push(F.writeFile(j.join(i, "robots.txt"), Te(h, x))), w.push(F.writeFile(j.join(i, "feed.xml"), Ee(d, x, h, c.siteTitle, c.siteDescription, c.lang))), w.push(F.writeFile(j.join(i, "llms.txt"), De(d, x, h, c.siteTitle, c.siteDescription)))), await Promise.all(w);
|
|
490
|
+
let ee = j.join(a, "assets"), T = j.join(i, "assets");
|
|
491
|
+
await F.cp(ee, T, { recursive: !0 }).catch(() => {}), await He(j.join(n, c.rootDir), i);
|
|
492
|
+
let E = j.join(n, c.publicDir);
|
|
493
|
+
await F.cp(E, i, { recursive: !0 }).catch(() => {});
|
|
476
494
|
} finally {
|
|
477
495
|
await Promise.all([
|
|
478
|
-
|
|
496
|
+
F.rm(E, {
|
|
479
497
|
recursive: !0,
|
|
480
498
|
force: !0
|
|
481
499
|
}),
|
|
482
|
-
|
|
500
|
+
F.rm(a, {
|
|
483
501
|
recursive: !0,
|
|
484
502
|
force: !0
|
|
485
503
|
}),
|
|
486
|
-
|
|
504
|
+
F.rm(o, {
|
|
487
505
|
recursive: !0,
|
|
488
506
|
force: !0
|
|
489
507
|
})
|
|
490
508
|
]);
|
|
491
509
|
}
|
|
492
|
-
|
|
510
|
+
r.log(`\nBuild complete. Output: ${i}`);
|
|
493
511
|
}
|
|
494
|
-
function
|
|
495
|
-
let t = `/${e.rootDir}/${
|
|
512
|
+
function Ve(e) {
|
|
513
|
+
let t = `/${e.rootDir}/${C}`, n = JSON.parse(e.siteConfig), r = JSON.parse(e.siteData), i = r.contentTree ?? { entries: [] }, a = _(i.entries ?? [], n.title ?? ""), o = JSON.stringify({
|
|
496
514
|
...r,
|
|
497
515
|
directoryListings: a
|
|
498
516
|
}), s = e.userComponents ?? [], c = s.map((e) => `import ${e.name} from ${JSON.stringify(e.absolutePath)};`).join("\n"), l = s.map((e) => `app.component(${JSON.stringify(e.name)}, ${e.name});`).join("\n");
|
|
@@ -517,31 +535,31 @@ export async function createRenderer() {
|
|
|
517
535
|
}
|
|
518
536
|
`;
|
|
519
537
|
}
|
|
520
|
-
async function
|
|
521
|
-
let
|
|
538
|
+
async function He(t, n) {
|
|
539
|
+
let r = (await F.readdir(t, {
|
|
522
540
|
recursive: !0,
|
|
523
541
|
withFileTypes: !0
|
|
524
|
-
})).filter((
|
|
525
|
-
let r =
|
|
526
|
-
return
|
|
542
|
+
})).filter((t) => t.isFile() && !e(t.name)).map(async (e) => {
|
|
543
|
+
let r = j.join(e.parentPath, e.name), i = j.relative(t, r), a = j.join(n, i);
|
|
544
|
+
return F.mkdir(j.dirname(a), { recursive: !0 }).then(() => F.copyFile(r, a));
|
|
527
545
|
});
|
|
528
|
-
await Promise.all(
|
|
546
|
+
await Promise.all(r);
|
|
529
547
|
}
|
|
530
|
-
function
|
|
548
|
+
function Ue(e, t, n = "") {
|
|
531
549
|
for (let r of e) {
|
|
532
550
|
if (r.kind !== "dir") continue;
|
|
533
551
|
let e = `${n}/${r.node.name}`;
|
|
534
|
-
|
|
552
|
+
p(r.node) || t.push(c(e)), Ue(r.node.entries, t, e);
|
|
535
553
|
}
|
|
536
554
|
}
|
|
537
555
|
// ../../node_modules/.pnpm/@shikijs+transformers@4.4.3/node_modules/@shikijs/transformers/dist/index.mjs
|
|
538
|
-
var
|
|
556
|
+
var We = /(\s+\/\/)/, Ge = /(?:\/\/|["'#]|;{1,2}|%{1,2}|--)(\s*)$/, Ke = /(?:\/\/|#|;{1,2}|%{1,2}|--)(\s*)$/, qe = [
|
|
539
557
|
[/^(<!--)(.+)(-->)$/, !1],
|
|
540
558
|
[/^(\/\*)(.+)(\*\/)$/, !1],
|
|
541
559
|
[/^(\/\/|["'#]|;{1,2}|%{1,2}|--)(.*)$/, !0],
|
|
542
560
|
[/^(\*)(.+)$/, !0]
|
|
543
561
|
];
|
|
544
|
-
function
|
|
562
|
+
function Je(e, t, n) {
|
|
545
563
|
let r = [];
|
|
546
564
|
for (let i of e) {
|
|
547
565
|
if (n === "v3") {
|
|
@@ -551,7 +569,7 @@ function Ge(e, t, n) {
|
|
|
551
569
|
if (n.type !== "text") return e;
|
|
552
570
|
let r = t === i.children.length - 1;
|
|
553
571
|
if (!B(n.value, r)) return e;
|
|
554
|
-
let a = n.value.split(
|
|
572
|
+
let a = n.value.split(We);
|
|
555
573
|
if (a.length <= 1) return e;
|
|
556
574
|
let o = [a[0]];
|
|
557
575
|
for (let e = 1; e < a.length; e += 2) o.push(a[e] + (a[e + 1] || ""));
|
|
@@ -595,7 +613,7 @@ function Ge(e, t, n) {
|
|
|
595
613
|
}
|
|
596
614
|
if (c) {
|
|
597
615
|
if (t && !s && n !== 0) {
|
|
598
|
-
let t =
|
|
616
|
+
let t = Ye(e[n - 1], "{") && Ye(e[n + 1], "}");
|
|
599
617
|
r.push({
|
|
600
618
|
info: c,
|
|
601
619
|
line: i,
|
|
@@ -617,7 +635,7 @@ function Ge(e, t, n) {
|
|
|
617
635
|
}
|
|
618
636
|
return r;
|
|
619
637
|
}
|
|
620
|
-
function
|
|
638
|
+
function Ye(e, t) {
|
|
621
639
|
if (e.type !== "element") return !1;
|
|
622
640
|
let n = e.children[0];
|
|
623
641
|
return n.type === "text" && n.value.trim() === t;
|
|
@@ -626,7 +644,7 @@ function B(e, t) {
|
|
|
626
644
|
let n = e.trimStart(), r = e.length - n.length;
|
|
627
645
|
n = n.trimEnd();
|
|
628
646
|
let i = e.length - n.length - r;
|
|
629
|
-
for (let [e, a] of
|
|
647
|
+
for (let [e, a] of qe) {
|
|
630
648
|
if (a && !t) continue;
|
|
631
649
|
let o = e.exec(n);
|
|
632
650
|
if (o) return [
|
|
@@ -636,22 +654,22 @@ function B(e, t) {
|
|
|
636
654
|
];
|
|
637
655
|
}
|
|
638
656
|
}
|
|
639
|
-
function
|
|
640
|
-
let t = e.match(
|
|
657
|
+
function Xe(e) {
|
|
658
|
+
let t = e.match(Ge);
|
|
641
659
|
return t && t[1].trim().length === 0 ? e.slice(0, t.index) : e;
|
|
642
660
|
}
|
|
643
|
-
function
|
|
644
|
-
let t = e.match(
|
|
661
|
+
function Ze(e) {
|
|
662
|
+
let t = e.match(Ke);
|
|
645
663
|
return t && t[1].trim().length === 0 ? e.slice(0, t.index).trimEnd() : e;
|
|
646
664
|
}
|
|
647
|
-
function
|
|
665
|
+
function Qe(e, t, n, r) {
|
|
648
666
|
return r ??= "v3", {
|
|
649
667
|
name: e,
|
|
650
668
|
code(e) {
|
|
651
669
|
let i = e.children.filter((e) => e.type === "element"), a = [];
|
|
652
670
|
e.data ??= {};
|
|
653
671
|
let o = e.data;
|
|
654
|
-
o._shiki_notation ??=
|
|
672
|
+
o._shiki_notation ??= Je(i, ["jsx", "tsx"].includes(this.options.lang), r);
|
|
655
673
|
let s = o._shiki_notation;
|
|
656
674
|
for (let e of s) {
|
|
657
675
|
if (e.info[1].length === 0) continue;
|
|
@@ -659,7 +677,7 @@ function Ye(e, t, n, r) {
|
|
|
659
677
|
e.isLineCommentOnly && r !== "v1" && o++;
|
|
660
678
|
let s = !1;
|
|
661
679
|
if (e.info[1] = e.info[1].replace(t, (...t) => n.call(this, t, e.line, e.token, i, o) ? (s = !0, "") : t[0]), !s) continue;
|
|
662
|
-
r === "v1" ? e.info[1] =
|
|
680
|
+
r === "v1" ? e.info[1] = Xe(e.info[1]) : r === "v3" && (e.info[1] = Ze(e.info[1]));
|
|
663
681
|
let c = e.info[1].trim().length === 0;
|
|
664
682
|
if (c && (e.info[1] = ""), c && e.isLineCommentOnly) a.push(e.line);
|
|
665
683
|
else if (c && e.isJsxStyle) e.line.children.splice(e.line.children.indexOf(e.token) - 1, 3);
|
|
@@ -684,42 +702,42 @@ function Ye(e, t, n, r) {
|
|
|
684
702
|
}
|
|
685
703
|
};
|
|
686
704
|
}
|
|
687
|
-
var
|
|
688
|
-
function
|
|
705
|
+
var $e = /\{([\d,-]+)\}/;
|
|
706
|
+
function et(e) {
|
|
689
707
|
if (!e) return null;
|
|
690
|
-
let t = e.match(
|
|
708
|
+
let t = e.match($e);
|
|
691
709
|
return t ? t[1].split(",").flatMap((e) => {
|
|
692
710
|
let t = e.split("-").map((e) => Number.parseInt(e, 10));
|
|
693
711
|
return t.length === 1 ? [t[0]] : Array.from({ length: t[1] - t[0] + 1 }, (e, n) => t[0] + n);
|
|
694
712
|
}) : null;
|
|
695
713
|
}
|
|
696
|
-
var
|
|
697
|
-
function
|
|
714
|
+
var tt = Symbol("highlighted-lines");
|
|
715
|
+
function nt(e = {}) {
|
|
698
716
|
let { className: t = "highlighted", zeroIndexed: n = !1 } = e;
|
|
699
717
|
return {
|
|
700
718
|
name: "@shikijs/transformers:meta-highlight",
|
|
701
719
|
line(e, r) {
|
|
702
720
|
if (!this.options.meta?.__raw) return;
|
|
703
721
|
let i = this.meta;
|
|
704
|
-
i[
|
|
705
|
-
let a = i[
|
|
722
|
+
i[tt] ??= et(this.options.meta.__raw);
|
|
723
|
+
let a = i[tt] ?? [], o = n ? r - 1 : r;
|
|
706
724
|
return a.includes(o) && this.addClassToHast(e, t), e;
|
|
707
725
|
}
|
|
708
726
|
};
|
|
709
727
|
}
|
|
710
|
-
var
|
|
711
|
-
function
|
|
712
|
-
return e.replace(
|
|
728
|
+
var rt = /[.*+?^${}()|[\]\\]/g;
|
|
729
|
+
function it(e) {
|
|
730
|
+
return e.replace(rt, "\\$&");
|
|
713
731
|
}
|
|
714
732
|
function V(e = {}, t = "@shikijs/transformers:notation-map") {
|
|
715
733
|
let { classMap: n = {}, classActivePre: r = void 0, classActiveCode: i = void 0 } = e;
|
|
716
|
-
return
|
|
734
|
+
return Qe(t, RegExp(`#?\\s*\\[!code (${Object.keys(n).map(it).join("|")})(:\\d+)?\\]`, "gi"), function([e, t, a = ":1"], o, s, c, l) {
|
|
717
735
|
let u = Number.parseInt(a.slice(1), 10);
|
|
718
736
|
for (let e = l; e < Math.min(l + u, c.length); e++) this.addClassToHast(c[e], n[t]);
|
|
719
737
|
return r && this.addClassToHast(this.pre, r), i && this.addClassToHast(this.code, i), !0;
|
|
720
738
|
}, e.matchAlgorithm);
|
|
721
739
|
}
|
|
722
|
-
function
|
|
740
|
+
function at(e = {}) {
|
|
723
741
|
let { classLineAdd: t = "diff add", classLineRemove: n = "diff remove", classActivePre: r = "has-diff", classActiveCode: i } = e;
|
|
724
742
|
return V({
|
|
725
743
|
classMap: {
|
|
@@ -731,7 +749,7 @@ function nt(e = {}) {
|
|
|
731
749
|
matchAlgorithm: e.matchAlgorithm
|
|
732
750
|
}, "@shikijs/transformers:notation-diff");
|
|
733
751
|
}
|
|
734
|
-
function
|
|
752
|
+
function ot(e = {}) {
|
|
735
753
|
let { classMap: t = {
|
|
736
754
|
error: ["highlighted", "error"],
|
|
737
755
|
warning: ["highlighted", "warning"],
|
|
@@ -744,7 +762,7 @@ function rt(e = {}) {
|
|
|
744
762
|
matchAlgorithm: e.matchAlgorithm
|
|
745
763
|
}, "@shikijs/transformers:notation-error-level");
|
|
746
764
|
}
|
|
747
|
-
function
|
|
765
|
+
function st(e = {}) {
|
|
748
766
|
let { classActiveLine: t = "focused", classActivePre: n = "has-focused", classActiveCode: r } = e;
|
|
749
767
|
return V({
|
|
750
768
|
classMap: { focus: t },
|
|
@@ -753,7 +771,7 @@ function it(e = {}) {
|
|
|
753
771
|
matchAlgorithm: e.matchAlgorithm
|
|
754
772
|
}, "@shikijs/transformers:notation-focus");
|
|
755
773
|
}
|
|
756
|
-
function
|
|
774
|
+
function ct(e = {}) {
|
|
757
775
|
let { classActiveLine: t = "highlighted", classActivePre: n = "has-highlighted", classActiveCode: r } = e;
|
|
758
776
|
return V({
|
|
759
777
|
classMap: {
|
|
@@ -766,41 +784,41 @@ function at(e = {}) {
|
|
|
766
784
|
}, "@shikijs/transformers:notation-highlight");
|
|
767
785
|
}
|
|
768
786
|
// src/node/lib/render/highlight/language.ts
|
|
769
|
-
var
|
|
787
|
+
var lt = [
|
|
770
788
|
"shellscript",
|
|
771
789
|
"shell",
|
|
772
790
|
"bash",
|
|
773
791
|
"sh",
|
|
774
792
|
"zsh"
|
|
775
793
|
];
|
|
776
|
-
function
|
|
777
|
-
return
|
|
794
|
+
function ut(e) {
|
|
795
|
+
return lt.includes(e);
|
|
778
796
|
}
|
|
779
|
-
var
|
|
780
|
-
function
|
|
781
|
-
return
|
|
797
|
+
var dt = /^[a-zA-Z0-9-_]+/;
|
|
798
|
+
function ft(e) {
|
|
799
|
+
return dt.exec(e)?.[0] || "";
|
|
782
800
|
}
|
|
783
801
|
// src/node/lib/render/highlight/index.ts
|
|
784
|
-
var
|
|
802
|
+
var pt = new FinalizationRegistry((e) => {
|
|
785
803
|
e();
|
|
786
804
|
}), H = {
|
|
787
805
|
light: "github-light",
|
|
788
806
|
dark: "github-dark"
|
|
789
807
|
};
|
|
790
|
-
async function
|
|
791
|
-
let e = await
|
|
808
|
+
async function mt() {
|
|
809
|
+
let e = await be({
|
|
792
810
|
themes: [H.light, H.dark],
|
|
793
811
|
langs: []
|
|
794
812
|
}), t = [
|
|
795
|
-
$e(),
|
|
796
813
|
nt(),
|
|
797
|
-
|
|
814
|
+
at(),
|
|
815
|
+
st({
|
|
798
816
|
classActiveLine: "has-focus",
|
|
799
817
|
classActivePre: "has-focused-lines"
|
|
800
818
|
}),
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
819
|
+
ct(),
|
|
820
|
+
ot(),
|
|
821
|
+
ht(),
|
|
804
822
|
{
|
|
805
823
|
name: "typedown:add-dir",
|
|
806
824
|
pre(e) {
|
|
@@ -809,19 +827,19 @@ async function dt() {
|
|
|
809
827
|
}
|
|
810
828
|
], n = new Set(e.getLoadedLanguages());
|
|
811
829
|
async function r(r, i, a, o) {
|
|
812
|
-
let s =
|
|
830
|
+
let s = ft(i);
|
|
813
831
|
if (s) {
|
|
814
832
|
let e = i;
|
|
815
833
|
i = s.toLowerCase(), a = e.slice(i.length).replace(/(?<!=)\{/g, " {") + " " + a, a = a.trim().replace(/\s+/g, " ");
|
|
816
834
|
}
|
|
817
835
|
i ||= "txt";
|
|
818
836
|
try {
|
|
819
|
-
!
|
|
837
|
+
!Se(i) && !n.has(i) && (await e.loadLanguage(i), n.add(i));
|
|
820
838
|
} catch {
|
|
821
|
-
|
|
839
|
+
A.warn(`\nThe language '${i}' is not loaded, falling back to 'txt' for syntax highlighting.`), i = "txt";
|
|
822
840
|
}
|
|
823
841
|
r = r.trimEnd();
|
|
824
|
-
let c =
|
|
842
|
+
let c = xe(r, i, e);
|
|
825
843
|
return await e.loadLanguage(...c), e.codeToHtml(r, {
|
|
826
844
|
lang: i,
|
|
827
845
|
transformers: [
|
|
@@ -842,7 +860,7 @@ async function dt() {
|
|
|
842
860
|
});
|
|
843
861
|
}
|
|
844
862
|
},
|
|
845
|
-
...o === void 0 ? [] : [
|
|
863
|
+
...o === void 0 ? [] : [gt(o)]
|
|
846
864
|
],
|
|
847
865
|
meta: { __raw: a },
|
|
848
866
|
themes: H,
|
|
@@ -870,13 +888,13 @@ async function dt() {
|
|
|
870
888
|
}
|
|
871
889
|
});
|
|
872
890
|
}
|
|
873
|
-
return
|
|
891
|
+
return pt.register(r, () => e.dispose()), r;
|
|
874
892
|
}
|
|
875
|
-
function
|
|
893
|
+
function ht() {
|
|
876
894
|
return {
|
|
877
895
|
name: "typedown:disable-shell-symbol-select",
|
|
878
896
|
tokens(e) {
|
|
879
|
-
if (
|
|
897
|
+
if (ut(this.options.lang)) for (let t of e) {
|
|
880
898
|
if (t.length < 2) continue;
|
|
881
899
|
let e = t[0].content.trim();
|
|
882
900
|
(e === "$" || e === ">") && t[1].content[0] === " " && (t[0].content = e + " ", t[0].htmlStyle ??= {}, t[0].htmlStyle["user-select"] = "none", t[0].htmlStyle["-webkit-user-select"] = "none", t[1].content = t[1].content.slice(1));
|
|
@@ -884,7 +902,7 @@ function ft() {
|
|
|
884
902
|
}
|
|
885
903
|
};
|
|
886
904
|
}
|
|
887
|
-
function
|
|
905
|
+
function gt(e) {
|
|
888
906
|
return {
|
|
889
907
|
name: "typedown:line-numbers",
|
|
890
908
|
code(t) {
|
|
@@ -916,23 +934,23 @@ function pt(e) {
|
|
|
916
934
|
};
|
|
917
935
|
}
|
|
918
936
|
// src/node/lib/render/postprocess.ts
|
|
919
|
-
var
|
|
920
|
-
async function
|
|
921
|
-
return e = await
|
|
937
|
+
var _t;
|
|
938
|
+
async function vt(e) {
|
|
939
|
+
return e = await xt(e), e = Dt(e), e;
|
|
922
940
|
}
|
|
923
|
-
function
|
|
924
|
-
return
|
|
941
|
+
function yt() {
|
|
942
|
+
return _t ||= mt(), _t;
|
|
925
943
|
}
|
|
926
|
-
var
|
|
944
|
+
var bt = /<pre class="td-code-placeholder"([^>]*)><code>([\s\S]*?)<\/code><\/pre>/g;
|
|
927
945
|
function U(e, t) {
|
|
928
946
|
return e.match(RegExp(`${t}="([^"]*)"`))?.[1];
|
|
929
947
|
}
|
|
930
|
-
async function
|
|
931
|
-
let t = await
|
|
948
|
+
async function xt(e) {
|
|
949
|
+
let t = await yt(), n = [...e.matchAll(bt)];
|
|
932
950
|
if (n.length === 0) return e;
|
|
933
951
|
let r = await Promise.all(n.map(async (e) => {
|
|
934
|
-
let n = e[1], r = U(n, "data-lang") ?? "", i = U(n, "data-meta") ?? "", a = U(n, "data-title"), o = U(n, "data-line-numbers"), s =
|
|
935
|
-
return
|
|
952
|
+
let n = e[1], r = U(n, "data-lang") ?? "", i = U(n, "data-meta") ?? "", a = U(n, "data-title"), o = U(n, "data-line-numbers"), s = g(e[2]);
|
|
953
|
+
return wt(await t(s, r, i, o === void 0 ? void 0 : parseInt(o) || 1), r, {
|
|
936
954
|
title: a,
|
|
937
955
|
lineNumbers: o
|
|
938
956
|
});
|
|
@@ -943,7 +961,7 @@ async function vt(e) {
|
|
|
943
961
|
}
|
|
944
962
|
return i;
|
|
945
963
|
}
|
|
946
|
-
var
|
|
964
|
+
var St = {
|
|
947
965
|
typescript: "TypeScript",
|
|
948
966
|
javascript: "JavaScript",
|
|
949
967
|
tsx: "TSX",
|
|
@@ -991,38 +1009,38 @@ var yt = {
|
|
|
991
1009
|
scala: "Scala",
|
|
992
1010
|
txt: "Text"
|
|
993
1011
|
};
|
|
994
|
-
function
|
|
995
|
-
return
|
|
1012
|
+
function Ct(e) {
|
|
1013
|
+
return St[e.toLowerCase()] ?? e;
|
|
996
1014
|
}
|
|
997
|
-
function
|
|
1015
|
+
function wt(e, t, n) {
|
|
998
1016
|
t ||= "txt";
|
|
999
|
-
let r =
|
|
1017
|
+
let r = Ct(t), i = ["td-code-block", "language-" + t];
|
|
1000
1018
|
n.title && i.push("has-title"), n.lineNumbers !== void 0 && i.push("line-numbers-mode");
|
|
1001
1019
|
let a = `<figure class="${i.join(" ")}">`;
|
|
1002
|
-
return a += "<figcaption class=\"td-code-header\">", a += "<span class=\"td-code-left\">", a += `<span class="td-code-lang">${
|
|
1020
|
+
return a += "<figcaption class=\"td-code-header\">", a += "<span class=\"td-code-left\">", a += `<span class="td-code-lang">${h(r)}</span>`, n.title && (a += `<span class="td-code-label">${h(n.title)}</span>`), a += "</span>", a += "<span class=\"td-code-actions\">", a += "<button type=\"button\" aria-label=\"Copy code\" data-copied=\"Copied\" class=\"td-code-copy\">", a += "<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"></rect><path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\"></path></svg>", a += "<span class=\"td-code-copy-text\">Copy</span>", a += "</button>", a += "</span>", a += "</figcaption>", a += e, a += "</figure>", a;
|
|
1003
1021
|
}
|
|
1004
|
-
var
|
|
1005
|
-
function
|
|
1006
|
-
return e = e.replace(
|
|
1022
|
+
var Tt = /<span class="td-math-inline">([\s\S]*?)<\/span>/g, Et = /<div class="td-math-block">([\s\S]*?)<\/div>/g;
|
|
1023
|
+
function Dt(e) {
|
|
1024
|
+
return e = e.replace(Tt, (e, t) => At(t, !1)), e = e.replace(Et, (e, t) => At(t, !0)), e;
|
|
1007
1025
|
}
|
|
1008
|
-
var
|
|
1009
|
-
function
|
|
1026
|
+
var Ot = /`([^`]+)`|\$([^$]+)\$/g;
|
|
1027
|
+
function kt(e) {
|
|
1010
1028
|
let t = 0, n = "";
|
|
1011
|
-
for (let r of e.matchAll(
|
|
1012
|
-
if (n +=
|
|
1029
|
+
for (let r of e.matchAll(Ot)) {
|
|
1030
|
+
if (n += h(e.slice(t, r.index)), r[1] !== void 0) n += `<code>${h(r[1])}</code>`;
|
|
1013
1031
|
else if (r[2] !== void 0) try {
|
|
1014
|
-
n +=
|
|
1032
|
+
n += k.renderToString(r[2], { throwOnError: !1 });
|
|
1015
1033
|
} catch {
|
|
1016
|
-
n +=
|
|
1034
|
+
n += h(r[0]);
|
|
1017
1035
|
}
|
|
1018
1036
|
t = r.index + r[0].length;
|
|
1019
1037
|
}
|
|
1020
|
-
return n +=
|
|
1038
|
+
return n += h(e.slice(t)), n;
|
|
1021
1039
|
}
|
|
1022
|
-
function
|
|
1040
|
+
function At(e, t) {
|
|
1023
1041
|
let n = t ? "div" : "span";
|
|
1024
1042
|
try {
|
|
1025
|
-
return
|
|
1043
|
+
return k.renderToString(g(e), {
|
|
1026
1044
|
throwOnError: !1,
|
|
1027
1045
|
displayMode: t
|
|
1028
1046
|
});
|
|
@@ -1032,24 +1050,24 @@ function Dt(e, t) {
|
|
|
1032
1050
|
}
|
|
1033
1051
|
// src/node/lib/render/vue.ts
|
|
1034
1052
|
async function W(e, t, n) {
|
|
1035
|
-
let r = t.title || t.label || (
|
|
1053
|
+
let r = t.title || t.label || (m(n) ? w(n, (await e.getConfig()).siteTitle) : T(n));
|
|
1036
1054
|
return {
|
|
1037
1055
|
schema: t.schema,
|
|
1038
1056
|
schemaLabel: t.schemaLabel,
|
|
1039
1057
|
label: t.label,
|
|
1040
1058
|
icon: t.icon,
|
|
1041
1059
|
frontmatter: t.header ?? {},
|
|
1042
|
-
headings:
|
|
1060
|
+
headings: Mt(t.headings),
|
|
1043
1061
|
title: r,
|
|
1044
|
-
titleHtml:
|
|
1062
|
+
titleHtml: kt(r),
|
|
1045
1063
|
filepath: n,
|
|
1046
1064
|
fileMetadata: t.fileMetadata,
|
|
1047
1065
|
seoMetadata: t.seoMetadata,
|
|
1048
1066
|
excerpt: t.excerpt
|
|
1049
1067
|
};
|
|
1050
1068
|
}
|
|
1051
|
-
async function
|
|
1052
|
-
let r = await
|
|
1069
|
+
async function jt(e, t, n) {
|
|
1070
|
+
let r = await vt(t.content), i = await W(e, t, n), a = JSON.stringify(`@typedown/pages?resource=${encodeURIComponent(n)}`);
|
|
1053
1071
|
return {
|
|
1054
1072
|
vueSrc: [
|
|
1055
1073
|
"<script>",
|
|
@@ -1061,12 +1079,12 @@ async function Ot(e, t, n) {
|
|
|
1061
1079
|
`import { pageData } from ${a}`,
|
|
1062
1080
|
"useRouter().route.data = pageData",
|
|
1063
1081
|
"<\/script>",
|
|
1064
|
-
`<template><div class="typedown-content">\n${
|
|
1082
|
+
`<template><div class="typedown-content">\n${Nt(r)}\n</div></template>`
|
|
1065
1083
|
].join("\n"),
|
|
1066
1084
|
pageData: i
|
|
1067
1085
|
};
|
|
1068
1086
|
}
|
|
1069
|
-
function
|
|
1087
|
+
function Mt(e) {
|
|
1070
1088
|
let t = [], n = [];
|
|
1071
1089
|
for (let r of e) {
|
|
1072
1090
|
let e = {
|
|
@@ -1082,13 +1100,13 @@ function kt(e) {
|
|
|
1082
1100
|
}
|
|
1083
1101
|
return t;
|
|
1084
1102
|
}
|
|
1085
|
-
function
|
|
1103
|
+
function Nt(e) {
|
|
1086
1104
|
return e.replaceAll("{{", "{{").replaceAll("}}", "}}");
|
|
1087
1105
|
}
|
|
1088
1106
|
// src/node/plugin/vite/constants.ts
|
|
1089
|
-
var
|
|
1107
|
+
var Pt = "@typedown/app", Ft = "\0@typedown/app", G = "@typedown/pages", It = "\0" + G;
|
|
1090
1108
|
G + "";
|
|
1091
|
-
var K = "\0@typedown/pages?resource=", q = "@typedown/site-data",
|
|
1109
|
+
var K = "\0@typedown/pages?resource=", q = "@typedown/site-data", Lt = "\0@typedown/site-data", J = "@typedown/search-index", Rt = "\0@typedown/search-index", Y = "@typedown/theme", zt = "\0@typedown/theme", X = "typedown:page-data";
|
|
1092
1110
|
// src/node/plugin/vite/virtual/utils.ts
|
|
1093
1111
|
function Z(e, t) {
|
|
1094
1112
|
let n = e.moduleGraph.getModuleById(t);
|
|
@@ -1106,14 +1124,14 @@ function Z(e, t) {
|
|
|
1106
1124
|
}
|
|
1107
1125
|
}
|
|
1108
1126
|
// src/node/plugin/vite/virtual/app.ts
|
|
1109
|
-
var
|
|
1127
|
+
var Bt = class {
|
|
1110
1128
|
mountPath;
|
|
1111
1129
|
constructor(e = "") {
|
|
1112
1130
|
this.mountPath = e;
|
|
1113
1131
|
}
|
|
1114
1132
|
async load(e) {
|
|
1115
|
-
let t = await (await e.getTdContext()).getConfig(), n = await
|
|
1116
|
-
return
|
|
1133
|
+
let t = await (await e.getTdContext()).getConfig(), n = await R(t.components, e.root);
|
|
1134
|
+
return Pe({
|
|
1117
1135
|
rootDir: t.rootDir,
|
|
1118
1136
|
mountPath: this.mountPath,
|
|
1119
1137
|
basePath: t.basePath,
|
|
@@ -1135,9 +1153,9 @@ var Lt = class {
|
|
|
1135
1153
|
});
|
|
1136
1154
|
}
|
|
1137
1155
|
invalidate(e) {
|
|
1138
|
-
Z(e,
|
|
1156
|
+
Z(e, Ft);
|
|
1139
1157
|
}
|
|
1140
|
-
},
|
|
1158
|
+
}, Vt = class {
|
|
1141
1159
|
mountPath;
|
|
1142
1160
|
constructor(e = "") {
|
|
1143
1161
|
this.mountPath = e;
|
|
@@ -1175,62 +1193,62 @@ var Lt = class {
|
|
|
1175
1193
|
});
|
|
1176
1194
|
}
|
|
1177
1195
|
invalidate(e) {
|
|
1178
|
-
Z(e,
|
|
1196
|
+
Z(e, It);
|
|
1179
1197
|
}
|
|
1180
|
-
},
|
|
1198
|
+
}, Ht = class {
|
|
1181
1199
|
async load(e) {
|
|
1182
|
-
return
|
|
1200
|
+
return Fe((await (await e.getTdContext()).getConfig()).layout ?? void 0, e.root);
|
|
1183
1201
|
}
|
|
1184
1202
|
invalidate(e) {
|
|
1185
|
-
Z(e,
|
|
1203
|
+
Z(e, zt);
|
|
1186
1204
|
}
|
|
1187
|
-
},
|
|
1205
|
+
}, Ut = "\0@typedown/site-data", Wt = {
|
|
1188
1206
|
ready: !1,
|
|
1189
1207
|
contentTree: { entries: [] },
|
|
1190
1208
|
schemas: {},
|
|
1191
1209
|
directoryListings: {}
|
|
1192
|
-
},
|
|
1210
|
+
}, Gt = class {
|
|
1193
1211
|
data;
|
|
1194
1212
|
scan(e) {
|
|
1195
|
-
let t =
|
|
1213
|
+
let t = me("**/*.td", {
|
|
1196
1214
|
cwd: e,
|
|
1197
1215
|
exclude: (e) => e.startsWith("_")
|
|
1198
1216
|
}).map((e) => ({
|
|
1199
1217
|
filepath: e,
|
|
1200
|
-
label:
|
|
1218
|
+
label: T(e),
|
|
1201
1219
|
header: {}
|
|
1202
|
-
})), n =
|
|
1220
|
+
})), n = v(t);
|
|
1203
1221
|
this.data = {
|
|
1204
1222
|
contentTree: n,
|
|
1205
1223
|
schemas: {},
|
|
1206
|
-
directoryListings:
|
|
1224
|
+
directoryListings: _(n.entries, "")
|
|
1207
1225
|
};
|
|
1208
1226
|
}
|
|
1209
1227
|
load(e) {
|
|
1210
1228
|
let t = this.data ? {
|
|
1211
1229
|
ready: !0,
|
|
1212
1230
|
...this.data
|
|
1213
|
-
} :
|
|
1231
|
+
} : Wt;
|
|
1214
1232
|
return `export default ${JSON.stringify(t)}`;
|
|
1215
1233
|
}
|
|
1216
1234
|
clear() {
|
|
1217
1235
|
this.data = void 0;
|
|
1218
1236
|
}
|
|
1219
|
-
fetch =
|
|
1220
|
-
|
|
1237
|
+
fetch = x((e, t) => {
|
|
1238
|
+
Kt(e).then((e) => {
|
|
1221
1239
|
this.data = e, t && this.invalidate(t);
|
|
1222
1240
|
}).catch((e) => {
|
|
1223
1241
|
console.error("[typedown] Failed to fetch site data:", e instanceof Error ? e.message : e);
|
|
1224
1242
|
});
|
|
1225
1243
|
}, 200);
|
|
1226
1244
|
async fetchSync(e) {
|
|
1227
|
-
this.data = await
|
|
1245
|
+
this.data = await Kt(e);
|
|
1228
1246
|
}
|
|
1229
1247
|
invalidate(e) {
|
|
1230
|
-
Z(e,
|
|
1248
|
+
Z(e, Ut);
|
|
1231
1249
|
}
|
|
1232
1250
|
};
|
|
1233
|
-
async function
|
|
1251
|
+
async function Kt(e) {
|
|
1234
1252
|
let [t, n, r] = await Promise.all([
|
|
1235
1253
|
e.getConfig(),
|
|
1236
1254
|
e.listSidebar(),
|
|
@@ -1238,20 +1256,20 @@ async function Ut(e) {
|
|
|
1238
1256
|
]), i = await Promise.all(r.map(async (t) => [t, (await e.getSchema(t)).properties])), a = Object.fromEntries(i), o = n.map((e) => ({
|
|
1239
1257
|
...e,
|
|
1240
1258
|
header: {}
|
|
1241
|
-
})), s =
|
|
1259
|
+
})), s = v(o);
|
|
1242
1260
|
return {
|
|
1243
1261
|
contentTree: s,
|
|
1244
1262
|
schemas: a,
|
|
1245
|
-
directoryListings:
|
|
1263
|
+
directoryListings: _(s.entries, t.siteTitle)
|
|
1246
1264
|
};
|
|
1247
1265
|
}
|
|
1248
1266
|
// src/node/lib/search-indexer/index.ts
|
|
1249
|
-
var
|
|
1267
|
+
var qt = class {
|
|
1250
1268
|
index;
|
|
1251
1269
|
constructor() {
|
|
1252
|
-
this.index = new
|
|
1253
|
-
fields:
|
|
1254
|
-
storeFields:
|
|
1270
|
+
this.index = new ie({
|
|
1271
|
+
fields: S,
|
|
1272
|
+
storeFields: b
|
|
1255
1273
|
});
|
|
1256
1274
|
}
|
|
1257
1275
|
addAll(e) {
|
|
@@ -1269,20 +1287,20 @@ var Wt = class {
|
|
|
1269
1287
|
}
|
|
1270
1288
|
};
|
|
1271
1289
|
// src/node/lib/search-indexer/scan.ts
|
|
1272
|
-
function
|
|
1273
|
-
let n =
|
|
1290
|
+
function Jt(e, t) {
|
|
1291
|
+
let n = Qt(e), r = [];
|
|
1274
1292
|
for (let t of n) {
|
|
1275
|
-
let n =
|
|
1293
|
+
let n = Zt(e, t);
|
|
1276
1294
|
n && r.push(n);
|
|
1277
1295
|
}
|
|
1278
1296
|
t.addAll(r);
|
|
1279
1297
|
}
|
|
1280
|
-
function
|
|
1281
|
-
let i =
|
|
1298
|
+
function Yt(e, n, r) {
|
|
1299
|
+
let i = Zt(e, M(e, n));
|
|
1282
1300
|
i ? r.addPage(i) : r.discardPage(t(n));
|
|
1283
1301
|
}
|
|
1284
|
-
function
|
|
1285
|
-
let n =
|
|
1302
|
+
function Xt(e, t) {
|
|
1303
|
+
let n = T(e);
|
|
1286
1304
|
if (!t.startsWith("---")) return {
|
|
1287
1305
|
title: n,
|
|
1288
1306
|
body: t
|
|
@@ -1298,54 +1316,54 @@ function qt(e, t) {
|
|
|
1298
1316
|
body: a
|
|
1299
1317
|
};
|
|
1300
1318
|
}
|
|
1301
|
-
function
|
|
1319
|
+
function Zt(e, n) {
|
|
1302
1320
|
let r;
|
|
1303
1321
|
try {
|
|
1304
|
-
r =
|
|
1322
|
+
r = he(n, "utf-8");
|
|
1305
1323
|
} catch {
|
|
1306
1324
|
return;
|
|
1307
1325
|
}
|
|
1308
1326
|
if (!r.trim()) return;
|
|
1309
|
-
let i = n.slice(e.length + 1), { title: a, body: o } =
|
|
1327
|
+
let i = n.slice(e.length + 1), { title: a, body: o } = Xt(i, r);
|
|
1310
1328
|
return {
|
|
1311
1329
|
id: t(i),
|
|
1312
1330
|
title: a,
|
|
1313
1331
|
text: `${a}\n${o}`
|
|
1314
1332
|
};
|
|
1315
1333
|
}
|
|
1316
|
-
function
|
|
1317
|
-
return
|
|
1334
|
+
function Qt(e) {
|
|
1335
|
+
return me("**/*.td", {
|
|
1318
1336
|
cwd: e,
|
|
1319
1337
|
exclude: (e) => e.startsWith("_")
|
|
1320
|
-
}).map((t) =>
|
|
1338
|
+
}).map((t) => M(e, t));
|
|
1321
1339
|
}
|
|
1322
1340
|
// src/node/plugin/vite/virtual/search-index.ts
|
|
1323
|
-
var
|
|
1324
|
-
indexer = new
|
|
1341
|
+
var $t = "\0@typedown/search-index", en = class {
|
|
1342
|
+
indexer = new qt();
|
|
1325
1343
|
load(e) {
|
|
1326
1344
|
return `export default ${JSON.stringify(this.indexer.serialize())}`;
|
|
1327
1345
|
}
|
|
1328
1346
|
index(e) {
|
|
1329
|
-
|
|
1347
|
+
Jt(e, this.indexer);
|
|
1330
1348
|
}
|
|
1331
1349
|
reindex(e, t) {
|
|
1332
|
-
|
|
1350
|
+
Yt(e, t, this.indexer);
|
|
1333
1351
|
}
|
|
1334
1352
|
invalidate(e) {
|
|
1335
|
-
Z(e,
|
|
1353
|
+
Z(e, $t);
|
|
1336
1354
|
}
|
|
1337
|
-
},
|
|
1338
|
-
function
|
|
1355
|
+
}, tn = _e(import.meta.url);
|
|
1356
|
+
function nn() {
|
|
1339
1357
|
return [{
|
|
1340
1358
|
find: "vue/server-renderer",
|
|
1341
|
-
replacement:
|
|
1359
|
+
replacement: tn.resolve("vue/server-renderer")
|
|
1342
1360
|
}, {
|
|
1343
1361
|
find: "vue",
|
|
1344
|
-
replacement:
|
|
1362
|
+
replacement: tn.resolve("vue/dist/vue.runtime.esm-bundler.js")
|
|
1345
1363
|
}];
|
|
1346
1364
|
}
|
|
1347
1365
|
// src/node/plugin/vite/middleware/vault-assets.ts
|
|
1348
|
-
var
|
|
1366
|
+
var rn = {
|
|
1349
1367
|
jpg: "image/jpeg",
|
|
1350
1368
|
jpeg: "image/jpeg",
|
|
1351
1369
|
png: "image/png",
|
|
@@ -1363,66 +1381,66 @@ var en = {
|
|
|
1363
1381
|
woff: "font/woff",
|
|
1364
1382
|
ttf: "font/ttf"
|
|
1365
1383
|
};
|
|
1366
|
-
function
|
|
1367
|
-
return (n,
|
|
1368
|
-
if (!n.url || n.method !== "GET" ||
|
|
1384
|
+
function an(e, t) {
|
|
1385
|
+
return (n, i, o) => {
|
|
1386
|
+
if (!n.url || n.method !== "GET" || i.writableEnded) return o();
|
|
1369
1387
|
let c = a(n.url);
|
|
1370
|
-
if (c.startsWith("/@") || c.startsWith("/node_modules")) return
|
|
1371
|
-
let l =
|
|
1372
|
-
if (
|
|
1373
|
-
let e =
|
|
1388
|
+
if (c.startsWith("/@") || c.startsWith("/node_modules")) return o();
|
|
1389
|
+
let l = r(t.basePath), u = (l && c.startsWith(l) ? c.slice(l.length) : c).replace(/^\//, ""), d = M(e.config.root, t.rootDirectory, u);
|
|
1390
|
+
if (pe(d)) try {
|
|
1391
|
+
let e = ge(d);
|
|
1374
1392
|
if (e.isFile()) {
|
|
1375
|
-
let t =
|
|
1376
|
-
|
|
1393
|
+
let t = rn[s(d).slice(1).toLowerCase()] ?? "application/octet-stream";
|
|
1394
|
+
i.setHeader("Content-Type", t), i.setHeader("Content-Length", e.size), fe(d).pipe(i);
|
|
1377
1395
|
return;
|
|
1378
1396
|
}
|
|
1379
1397
|
} catch {}
|
|
1380
|
-
|
|
1398
|
+
o();
|
|
1381
1399
|
};
|
|
1382
1400
|
}
|
|
1383
1401
|
// src/node/plugin/vite/middleware/virtual-html.ts
|
|
1384
|
-
function
|
|
1385
|
-
return (
|
|
1386
|
-
if (!
|
|
1387
|
-
let c =
|
|
1402
|
+
function on(e, t, n) {
|
|
1403
|
+
return (i, o, s) => {
|
|
1404
|
+
if (!i.url) return s();
|
|
1405
|
+
let c = r(a(i.url)), l = r(n.basePath);
|
|
1388
1406
|
if (c.startsWith("/@") || c.startsWith("/node_modules") || !c.startsWith(l)) return s();
|
|
1389
1407
|
let u = c.slice(l.length);
|
|
1390
1408
|
if (u.startsWith("/@") || u.startsWith("/node_modules") || c.includes(".") && !c.endsWith("/index.html")) return s();
|
|
1391
1409
|
t.getConfig().then(async (t) => {
|
|
1392
|
-
let
|
|
1393
|
-
o.setHeader("Content-Type", "text/html"), o.end(
|
|
1410
|
+
let r = await e.transformIndexHtml(i.url ?? "", sn(n, t));
|
|
1411
|
+
o.setHeader("Content-Type", "text/html"), o.end(r);
|
|
1394
1412
|
}).catch(() => s());
|
|
1395
1413
|
};
|
|
1396
1414
|
}
|
|
1397
|
-
function
|
|
1398
|
-
return e.devHtml === void 0 && (e.devHtml =
|
|
1415
|
+
function sn(e, t) {
|
|
1416
|
+
return e.devHtml === void 0 && (e.devHtml = D({
|
|
1399
1417
|
title: t.siteTitle,
|
|
1400
1418
|
description: t.siteDescription,
|
|
1401
1419
|
base: "/",
|
|
1402
1420
|
ogType: "website",
|
|
1403
|
-
entryScript:
|
|
1421
|
+
entryScript: Pt
|
|
1404
1422
|
})), e.devHtml;
|
|
1405
1423
|
}
|
|
1406
1424
|
// src/node/lib/prop-schema.ts
|
|
1407
|
-
function
|
|
1425
|
+
function cn(e, t, n) {
|
|
1408
1426
|
let r = {};
|
|
1409
1427
|
for (let i of e) {
|
|
1410
|
-
let e = `./${
|
|
1428
|
+
let e = `./${j.relative(t, i.absolutePath)}`;
|
|
1411
1429
|
try {
|
|
1412
|
-
let t = n.getComponentMeta(i.absolutePath), a = {},
|
|
1430
|
+
let t = n.getComponentMeta(i.absolutePath), a = {}, s = !1;
|
|
1413
1431
|
for (let e of t.props) {
|
|
1414
1432
|
if (e.global) continue;
|
|
1415
|
-
let t =
|
|
1433
|
+
let t = Q(e.schema);
|
|
1416
1434
|
if (t !== void 0) {
|
|
1417
|
-
let n = { schema: e.required ? t :
|
|
1418
|
-
e.description && (n.description = e.description), a[e.name] = n,
|
|
1435
|
+
let n = { schema: e.required ? t : o(t) };
|
|
1436
|
+
e.description && (n.description = e.description), a[e.name] = n, s = !0;
|
|
1419
1437
|
}
|
|
1420
1438
|
}
|
|
1421
|
-
let
|
|
1439
|
+
let c = t.slots.map((e) => e.name).filter((e) => e !== "default");
|
|
1422
1440
|
r[i.name] = {
|
|
1423
1441
|
source: e,
|
|
1424
|
-
props:
|
|
1425
|
-
slots: 0 <
|
|
1442
|
+
props: s ? a : void 0,
|
|
1443
|
+
slots: 0 < c.length ? c : void 0
|
|
1426
1444
|
};
|
|
1427
1445
|
} catch {
|
|
1428
1446
|
r[i.name] = { source: e };
|
|
@@ -1430,25 +1448,25 @@ function an(e, t, n) {
|
|
|
1430
1448
|
}
|
|
1431
1449
|
return r;
|
|
1432
1450
|
}
|
|
1433
|
-
function
|
|
1451
|
+
function ln(e) {
|
|
1434
1452
|
if (!e || e.length !== 1) return;
|
|
1435
|
-
let t =
|
|
1453
|
+
let t = Q(e[0]);
|
|
1436
1454
|
return t === void 0 ? void 0 : {
|
|
1437
1455
|
type: "array",
|
|
1438
1456
|
items: t
|
|
1439
1457
|
};
|
|
1440
1458
|
}
|
|
1441
|
-
function
|
|
1442
|
-
if (t && 0 < Object.keys(t).length) return
|
|
1459
|
+
function un(e, t) {
|
|
1460
|
+
if (t && 0 < Object.keys(t).length) return fn(t);
|
|
1443
1461
|
let n = /^(?:Record<string,\s*(\w+)>|\{\s*\[key:\s*string\]:\s*(\w+);\s*\})$/.exec(e);
|
|
1444
1462
|
if (!n) return;
|
|
1445
|
-
let r =
|
|
1463
|
+
let r = dn(n[1] ?? n[2]);
|
|
1446
1464
|
return r === void 0 ? void 0 : {
|
|
1447
1465
|
type: "object",
|
|
1448
1466
|
additionalProperties: r
|
|
1449
1467
|
};
|
|
1450
1468
|
}
|
|
1451
|
-
function
|
|
1469
|
+
function dn(e) {
|
|
1452
1470
|
switch (e) {
|
|
1453
1471
|
case "string": return { type: "string" };
|
|
1454
1472
|
case "number": return { type: "number" };
|
|
@@ -1462,20 +1480,20 @@ function Q(e) {
|
|
|
1462
1480
|
let t = e.replace(/^["']|["']$/g, "");
|
|
1463
1481
|
i.push({ const: t });
|
|
1464
1482
|
} else {
|
|
1465
|
-
let t =
|
|
1483
|
+
let t = dn(e);
|
|
1466
1484
|
if (t === void 0) return;
|
|
1467
1485
|
i.push(t);
|
|
1468
1486
|
}
|
|
1469
1487
|
let a = i.length === 1 ? i[0] : { oneOf: i };
|
|
1470
|
-
return n ?
|
|
1488
|
+
return n ? o(a) : a;
|
|
1471
1489
|
}
|
|
1472
1490
|
return;
|
|
1473
1491
|
}
|
|
1474
1492
|
}
|
|
1475
|
-
function
|
|
1493
|
+
function fn(e) {
|
|
1476
1494
|
let t = {}, n = [];
|
|
1477
1495
|
for (let [r, i] of Object.entries(e)) {
|
|
1478
|
-
let e =
|
|
1496
|
+
let e = Q(i.schema);
|
|
1479
1497
|
if (e === void 0) return;
|
|
1480
1498
|
t[r] = e, i.required && n.push(r);
|
|
1481
1499
|
}
|
|
@@ -1486,22 +1504,22 @@ function cn(e) {
|
|
|
1486
1504
|
};
|
|
1487
1505
|
return 0 < n.length && (r.required = n), r;
|
|
1488
1506
|
}
|
|
1489
|
-
function
|
|
1490
|
-
if (typeof e == "string") return
|
|
1507
|
+
function Q(e) {
|
|
1508
|
+
if (typeof e == "string") return dn(e);
|
|
1491
1509
|
switch (e.kind) {
|
|
1492
|
-
case "enum": return
|
|
1493
|
-
case "array": return
|
|
1494
|
-
case "object": return
|
|
1510
|
+
case "enum": return pn(e.schema);
|
|
1511
|
+
case "array": return ln(e.schema);
|
|
1512
|
+
case "object": return un(e.type, e.schema);
|
|
1495
1513
|
case "literal": return "value" in e ? { const: e.value } : void 0;
|
|
1496
1514
|
default: return;
|
|
1497
1515
|
}
|
|
1498
1516
|
}
|
|
1499
|
-
function
|
|
1517
|
+
function pn(e) {
|
|
1500
1518
|
let t = e ?? [], n = t.some((e) => e === "undefined" || e === "null"), r = t.filter((e) => e !== "undefined" && e !== "null");
|
|
1501
1519
|
if (r.length === 0) return;
|
|
1502
1520
|
if (r.length === 1) {
|
|
1503
|
-
let e =
|
|
1504
|
-
return e === void 0 ? void 0 : n ?
|
|
1521
|
+
let e = Q(r[0]);
|
|
1522
|
+
return e === void 0 ? void 0 : n ? o(e) : e;
|
|
1505
1523
|
}
|
|
1506
1524
|
if (r.every((e) => typeof e == "object" && e.kind === "literal")) {
|
|
1507
1525
|
let e = [];
|
|
@@ -1510,56 +1528,56 @@ function ln(e) {
|
|
|
1510
1528
|
e.push(t.value);
|
|
1511
1529
|
}
|
|
1512
1530
|
let t = { enum: e };
|
|
1513
|
-
return n ?
|
|
1531
|
+
return n ? o(t) : t;
|
|
1514
1532
|
}
|
|
1515
1533
|
let i = [];
|
|
1516
1534
|
for (let e of r) {
|
|
1517
|
-
let t =
|
|
1535
|
+
let t = Q(e);
|
|
1518
1536
|
if (t === void 0) return;
|
|
1519
1537
|
i.push(t);
|
|
1520
1538
|
}
|
|
1521
1539
|
if (i.length === 0) return;
|
|
1522
1540
|
let a = { oneOf: i };
|
|
1523
|
-
return n ?
|
|
1541
|
+
return n ? o(a) : a;
|
|
1524
1542
|
}
|
|
1525
1543
|
// src/node/plugin/vite/subplugins/component-contract.ts
|
|
1526
|
-
var
|
|
1527
|
-
function
|
|
1544
|
+
var mn = ".typedown/components.json";
|
|
1545
|
+
function hn(e) {
|
|
1528
1546
|
return {
|
|
1529
1547
|
name: "vite-plugin-typedown-component-contract",
|
|
1530
1548
|
async buildStart() {
|
|
1531
1549
|
let t = e();
|
|
1532
1550
|
if (!t) return;
|
|
1533
|
-
let n = await
|
|
1534
|
-
|
|
1551
|
+
let n = await R((await (await t.getTdContext()).getConfig()).components, t.root);
|
|
1552
|
+
bn(t.root, n);
|
|
1535
1553
|
},
|
|
1536
1554
|
configureServer(t) {
|
|
1537
1555
|
let n = e();
|
|
1538
1556
|
n && n.getTdContext().then(async (e) => {
|
|
1539
|
-
let r = await e.getConfig(), i = await
|
|
1540
|
-
|
|
1557
|
+
let r = await e.getConfig(), i = await R(r.components, n.root);
|
|
1558
|
+
bn(n.root, i), gn(t, r.components, n.root);
|
|
1541
1559
|
}).catch(() => {});
|
|
1542
1560
|
}
|
|
1543
1561
|
};
|
|
1544
1562
|
}
|
|
1545
|
-
function
|
|
1546
|
-
let r = new Set(t.filter((e) => e.kind === "explicit").map((e) =>
|
|
1563
|
+
function gn(e, t, n) {
|
|
1564
|
+
let r = new Set(t.filter((e) => e.kind === "explicit").map((e) => P(j.resolve(n, e.source)))), i = new Set(t.filter((e) => e.kind === "dir").map((e) => P(j.resolve(n, e.path))));
|
|
1547
1565
|
for (let t of i) e.watcher.add(t);
|
|
1548
1566
|
let a = (a) => {
|
|
1549
|
-
|
|
1567
|
+
_n(a, r, i) && (e.config.logger.info("[typedown] component changed, rebuilding contract..."), R(t, n).then((e) => bn(n, e)).catch(() => {}));
|
|
1550
1568
|
};
|
|
1551
1569
|
e.watcher.on("change", a), e.watcher.on("add", a), e.watcher.on("unlink", a);
|
|
1552
1570
|
}
|
|
1553
|
-
function
|
|
1571
|
+
function _n(e, t, n) {
|
|
1554
1572
|
if (!e.endsWith(".vue")) return !1;
|
|
1555
|
-
let r =
|
|
1573
|
+
let r = P(e);
|
|
1556
1574
|
if (t.has(r)) return !0;
|
|
1557
1575
|
for (let e of n) if (r.startsWith(e + "/")) return !0;
|
|
1558
1576
|
return !1;
|
|
1559
1577
|
}
|
|
1560
|
-
function
|
|
1578
|
+
function vn() {
|
|
1561
1579
|
try {
|
|
1562
|
-
let e =
|
|
1580
|
+
let e = j.dirname(le(import.meta.url)), t = j.resolve(e, "builtin-components.json"), n = JSON.parse(I.readFileSync(t, "utf-8"));
|
|
1563
1581
|
for (let e of Object.values(n)) if (typeof e == "object" && e && "source" in e) {
|
|
1564
1582
|
let t = e;
|
|
1565
1583
|
typeof t.source == "string" && t.source.startsWith("./") && (t.source = `typerighter/${t.source.slice(2)}`);
|
|
@@ -1569,36 +1587,36 @@ function mn() {
|
|
|
1569
1587
|
return {};
|
|
1570
1588
|
}
|
|
1571
1589
|
}
|
|
1572
|
-
var
|
|
1573
|
-
function
|
|
1574
|
-
if (!(0 < Object.keys(
|
|
1575
|
-
let n = 0 < t.length ?
|
|
1576
|
-
...
|
|
1590
|
+
var yn = vn();
|
|
1591
|
+
function bn(e, t) {
|
|
1592
|
+
if (!(0 < Object.keys(yn).length) && t.length === 0) return;
|
|
1593
|
+
let n = 0 < t.length ? cn(t, e, Ie(e)) : {}, r = {
|
|
1594
|
+
...yn,
|
|
1577
1595
|
...n
|
|
1578
|
-
}, i =
|
|
1579
|
-
|
|
1596
|
+
}, i = j.join(e, mn);
|
|
1597
|
+
I.mkdirSync(j.dirname(i), { recursive: !0 }), I.writeFileSync(i, JSON.stringify(r, null, 2));
|
|
1580
1598
|
}
|
|
1581
1599
|
// src/node/plugin/vite/index.ts
|
|
1582
|
-
function
|
|
1583
|
-
let n = t.context, r, i, a, o = new
|
|
1600
|
+
function $(t = {}) {
|
|
1601
|
+
let n = t.context, r, i, a, o = new Bt(t.root ?? ""), s = new Ht(), c = new Vt(t.root ?? ""), l = new Gt(), f = new en(), p = {
|
|
1584
1602
|
devHtml: void 0,
|
|
1585
1603
|
basePath: "/",
|
|
1586
1604
|
rootDirectory: "vault"
|
|
1587
1605
|
};
|
|
1588
|
-
function
|
|
1606
|
+
function m() {
|
|
1589
1607
|
if (n === void 0) throw Error("typedown plugin not initialized");
|
|
1590
1608
|
return n.getTdContext();
|
|
1591
1609
|
}
|
|
1592
|
-
let
|
|
1610
|
+
let h = {
|
|
1593
1611
|
name: "vite-plugin-typedown",
|
|
1594
1612
|
enforce: "pre",
|
|
1595
1613
|
async config(e) {
|
|
1596
1614
|
if (!n) {
|
|
1597
|
-
let r = t.root ?
|
|
1598
|
-
n =
|
|
1615
|
+
let r = t.root ? M(e.root ?? process.cwd(), t.root) : re(e.root ?? process.cwd());
|
|
1616
|
+
n = ne(r);
|
|
1599
1617
|
}
|
|
1600
1618
|
a = e.base ?? "/";
|
|
1601
|
-
let r = await (await
|
|
1619
|
+
let r = await (await m()).getConfig();
|
|
1602
1620
|
return {
|
|
1603
1621
|
base: e.base ?? r.basePath,
|
|
1604
1622
|
publicDir: r.publicDir,
|
|
@@ -1606,61 +1624,61 @@ function _n(t = {}) {
|
|
|
1606
1624
|
port: e.server?.port ?? 8686,
|
|
1607
1625
|
strictPort: e.server?.strictPort ?? !1
|
|
1608
1626
|
},
|
|
1609
|
-
resolve: { alias:
|
|
1627
|
+
resolve: { alias: nn() },
|
|
1610
1628
|
ssr: { noExternal: ["typerighter"] }
|
|
1611
1629
|
};
|
|
1612
1630
|
},
|
|
1613
1631
|
configResolved(e) {
|
|
1614
|
-
i =
|
|
1632
|
+
i = M(e.root, e.build.outDir);
|
|
1615
1633
|
},
|
|
1616
1634
|
async buildStart() {
|
|
1617
1635
|
if (r) return;
|
|
1618
|
-
let e = await
|
|
1619
|
-
|
|
1636
|
+
let e = await m(), t = await e.getConfig(), n = M(t.rootDir);
|
|
1637
|
+
f.index(n), await l.fetchSync(e);
|
|
1620
1638
|
let i = await e.checkVault();
|
|
1621
|
-
if (
|
|
1639
|
+
if (Tn(i.diagnostics), 0 < i.errorCount) {
|
|
1622
1640
|
let e = i.diagnostics.filter((e) => e.severity === "error").map((e) => ` ${e.filepath}:${e.line}:${e.column} - ${e.message} (${e.code})`);
|
|
1623
1641
|
this.error(`Vault check failed with ${i.errorCount} error(s):\n${e.join("\n")}`);
|
|
1624
1642
|
}
|
|
1625
1643
|
},
|
|
1626
1644
|
resolveId(e) {
|
|
1627
|
-
if (e === "/@typedown/app" || e === "@typedown/app") return
|
|
1628
|
-
if (e === "@typedown/pages") return
|
|
1629
|
-
if (e.startsWith("@typedown/pages?resource=")) return
|
|
1630
|
-
if (e === "@typedown/site-data") return
|
|
1631
|
-
if (e === "@typedown/search-index") return
|
|
1632
|
-
if (e === "@typedown/theme") return
|
|
1645
|
+
if (e === "/@typedown/app" || e === "@typedown/app") return Ft;
|
|
1646
|
+
if (e === "@typedown/pages") return It;
|
|
1647
|
+
if (e.startsWith("@typedown/pages?resource=")) return c.resolvePageData(e);
|
|
1648
|
+
if (e === "@typedown/site-data") return Lt;
|
|
1649
|
+
if (e === "@typedown/search-index") return Rt;
|
|
1650
|
+
if (e === "@typedown/theme") return zt;
|
|
1633
1651
|
},
|
|
1634
1652
|
async load(e) {
|
|
1635
|
-
if (
|
|
1653
|
+
if (c.isPageDataModule(e)) return c.loadPageData(e, await m());
|
|
1636
1654
|
if (e !== "\0@typedown/search-index" && e !== "\0@typedown/site-data" && e !== "\0@typedown/pages" && e !== "\0@typedown/app" && e !== "\0@typedown/theme") return;
|
|
1637
|
-
let t = await
|
|
1638
|
-
if (e === "\0@typedown/search-index") return
|
|
1639
|
-
if (e === "\0@typedown/site-data") return
|
|
1640
|
-
if (e === "\0@typedown/pages") return
|
|
1655
|
+
let t = await m();
|
|
1656
|
+
if (e === "\0@typedown/search-index") return f.load(t);
|
|
1657
|
+
if (e === "\0@typedown/site-data") return l.load(t);
|
|
1658
|
+
if (e === "\0@typedown/pages") return c.load(t);
|
|
1641
1659
|
if (e === "\0@typedown/app") return o.load(n);
|
|
1642
1660
|
if (e === "\0@typedown/theme") return s.load(n);
|
|
1643
1661
|
},
|
|
1644
1662
|
async configureServer(e) {
|
|
1645
1663
|
r = e;
|
|
1646
|
-
let t = await
|
|
1647
|
-
|
|
1664
|
+
let t = await m(), n = await t.getConfig(), i = M(n.rootDir);
|
|
1665
|
+
f.index(i), l.scan(i), l.fetch(t, r), e.httpServer?.once("listening", async () => {
|
|
1648
1666
|
let e = await t.checkVault();
|
|
1649
|
-
0 < e.diagnostics.length && (console.error(""),
|
|
1667
|
+
0 < e.diagnostics.length && (console.error(""), Tn(e.diagnostics));
|
|
1650
1668
|
}), t.rpc.onConfigChanged(() => {
|
|
1651
|
-
r && (
|
|
1669
|
+
r && (p.devHtml = void 0, l.clear(), o.invalidate(r), s.invalidate(r), c.invalidate(r), Sn(r), l.fetch(t, r));
|
|
1652
1670
|
}), t.rpc.onComponentContractChanged(() => {
|
|
1653
|
-
r && (o.invalidate(r),
|
|
1671
|
+
r && (o.invalidate(r), Sn(r));
|
|
1654
1672
|
});
|
|
1655
1673
|
function a(...e) {
|
|
1656
1674
|
r && t.getConfig().then((t) => {
|
|
1657
1675
|
if (!r) return;
|
|
1658
1676
|
let n = [];
|
|
1659
1677
|
for (let i of e) {
|
|
1660
|
-
let e =
|
|
1678
|
+
let e = P(M(r.config.root, t.rootDir, i)), a = r.moduleGraph.getModulesByFile(e);
|
|
1661
1679
|
if (a?.size) {
|
|
1662
|
-
for (let e of a) r.moduleGraph.invalidateModule(e), n.push(
|
|
1663
|
-
|
|
1680
|
+
for (let e of a) r.moduleGraph.invalidateModule(e), n.push(wn(e));
|
|
1681
|
+
c.invalidatePageData(r, i);
|
|
1664
1682
|
}
|
|
1665
1683
|
}
|
|
1666
1684
|
0 < n.length && r.hot.send({
|
|
@@ -1670,79 +1688,79 @@ function _n(t = {}) {
|
|
|
1670
1688
|
}).catch(() => {});
|
|
1671
1689
|
}
|
|
1672
1690
|
t.rpc.onContentUpdated(({ filepath: e, affectedFiles: n = [] }) => {
|
|
1673
|
-
r && (
|
|
1691
|
+
r && (f.reindex(i, e), f.invalidate(r), c.invalidate(r), l.fetch(t, r), a(e, ...n), c.sendPageData(r, t, e));
|
|
1674
1692
|
}), t.rpc.onContentDeleted(({ filepath: e }) => {
|
|
1675
|
-
r && (
|
|
1693
|
+
r && (f.reindex(i, e), f.invalidate(r), c.invalidate(r), l.fetch(t, r), a(e));
|
|
1676
1694
|
});
|
|
1677
|
-
function
|
|
1678
|
-
r && (
|
|
1695
|
+
function u() {
|
|
1696
|
+
r && (l.clear(), Cn(r), l.fetch(t, r));
|
|
1679
1697
|
}
|
|
1680
|
-
t.rpc.onSchemaUpdated(
|
|
1681
|
-
let
|
|
1682
|
-
|
|
1683
|
-
|
|
1684
|
-
}), e.middlewares.use(
|
|
1698
|
+
t.rpc.onSchemaUpdated(u), t.rpc.onSchemaDeleted(u);
|
|
1699
|
+
let d = await t.getConfig();
|
|
1700
|
+
p.basePath = d.basePath, p.rootDirectory = d.rootDir, t.rpc.onConfigChanged((e) => {
|
|
1701
|
+
p.basePath = e.basePath, p.rootDirectory = e.rootDir, p.devHtml = void 0;
|
|
1702
|
+
}), e.middlewares.use(an(e, p)), e.middlewares.use(on(e, t, p));
|
|
1685
1703
|
},
|
|
1686
1704
|
async transform(t, n) {
|
|
1687
1705
|
let r = n.split("?")[0];
|
|
1688
|
-
if (!
|
|
1689
|
-
if (
|
|
1706
|
+
if (!e(r)) return;
|
|
1707
|
+
if (u(r)) return {
|
|
1690
1708
|
code: `<script>import theme from '${Y}'; import { TdNotFound } from 'typerighter/client/theme-default'; export default theme.NotFound || TdNotFound; export const pageData = { frontmatter: {}, headings: [], title: '' };<\/script>`,
|
|
1691
1709
|
map: null
|
|
1692
1710
|
};
|
|
1693
|
-
let i = await
|
|
1711
|
+
let i = await m(), a = await i.getConfig(), o = d(r, a.rootDir);
|
|
1694
1712
|
try {
|
|
1695
|
-
let { vueSrc: e } = await
|
|
1713
|
+
let { vueSrc: e } = await jt(i, await i.getFile(o), o);
|
|
1696
1714
|
return {
|
|
1697
1715
|
code: e,
|
|
1698
1716
|
map: null
|
|
1699
1717
|
};
|
|
1700
1718
|
} catch (e) {
|
|
1701
|
-
if (
|
|
1719
|
+
if (te(e)) return;
|
|
1702
1720
|
let t = e instanceof Error ? e.message : String(e);
|
|
1703
1721
|
this.error(`[typedown] Failed to transform ${o}: ${t}`);
|
|
1704
1722
|
}
|
|
1705
1723
|
},
|
|
1706
|
-
handleHotUpdate({ file:
|
|
1707
|
-
if (
|
|
1724
|
+
handleHotUpdate({ file: t }) {
|
|
1725
|
+
if (e(t)) return [];
|
|
1708
1726
|
},
|
|
1709
1727
|
async closeBundle() {
|
|
1710
1728
|
if (!t.context && n) try {
|
|
1711
1729
|
let e = (await (await n.getTdContext()).getConfig()).basePath, t = e.startsWith(a) ? e.slice(a.length) : e.replace(/^\//, "");
|
|
1712
|
-
await
|
|
1713
|
-
outDir:
|
|
1730
|
+
await Be(n, {
|
|
1731
|
+
outDir: M(i, t),
|
|
1714
1732
|
base: e
|
|
1715
1733
|
});
|
|
1716
1734
|
} finally {
|
|
1717
1735
|
n.dispose();
|
|
1718
1736
|
}
|
|
1719
1737
|
}
|
|
1720
|
-
},
|
|
1738
|
+
}, g = oe({
|
|
1721
1739
|
include: t.root ? RegExp(`${t.root.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}/.*\\.(?:vue|td)$`) : /\.(?:vue|td)$/,
|
|
1722
1740
|
template: { transformAssetUrls: !1 }
|
|
1723
1741
|
});
|
|
1724
1742
|
return [
|
|
1725
|
-
m,
|
|
1726
|
-
dn(() => n),
|
|
1727
1743
|
h,
|
|
1728
|
-
|
|
1744
|
+
hn(() => n),
|
|
1745
|
+
g,
|
|
1746
|
+
...ae()
|
|
1729
1747
|
];
|
|
1730
1748
|
}
|
|
1731
|
-
function
|
|
1749
|
+
function xn(e) {
|
|
1732
1750
|
return [...e.moduleGraph.idToModuleMap.entries()].filter(([e]) => e.endsWith(".td")).map(([, e]) => e);
|
|
1733
1751
|
}
|
|
1734
|
-
function
|
|
1735
|
-
for (let t of
|
|
1752
|
+
function Sn(e) {
|
|
1753
|
+
for (let t of xn(e)) e.moduleGraph.invalidateModule(t);
|
|
1736
1754
|
e.hot.send({ type: "full-reload" });
|
|
1737
1755
|
}
|
|
1738
|
-
function
|
|
1739
|
-
let t =
|
|
1756
|
+
function Cn(e) {
|
|
1757
|
+
let t = xn(e).map((t) => (e.moduleGraph.invalidateModule(t), wn(t)));
|
|
1740
1758
|
0 < t.length && e.hot.send({
|
|
1741
1759
|
type: "update",
|
|
1742
1760
|
updates: t
|
|
1743
1761
|
});
|
|
1744
1762
|
}
|
|
1745
|
-
function
|
|
1763
|
+
function wn(e) {
|
|
1746
1764
|
return {
|
|
1747
1765
|
type: "js-update",
|
|
1748
1766
|
path: e.url,
|
|
@@ -1750,10 +1768,10 @@ function xn(e) {
|
|
|
1750
1768
|
timestamp: Date.now()
|
|
1751
1769
|
};
|
|
1752
1770
|
}
|
|
1753
|
-
function
|
|
1771
|
+
function Tn(e) {
|
|
1754
1772
|
for (let t of e) {
|
|
1755
|
-
let e = `${t.filepath}:${t.line}:${t.column}`, n = t.severity === "error" ?
|
|
1756
|
-
console.error(` ${n} ${e} ${t.message} ${
|
|
1773
|
+
let e = `${t.filepath}:${t.line}:${t.column}`, n = t.severity === "error" ? N.red("error") : N.yellow("warn");
|
|
1774
|
+
console.error(` ${n} ${e} ${t.message} ${N.dim(`(${t.code})`)}`);
|
|
1757
1775
|
}
|
|
1758
1776
|
}
|
|
1759
|
-
export { q as a, J as i, G as n, Y as o, X as r,
|
|
1777
|
+
export { q as a, J as i, G as n, Y as o, X as r, Be as s, $ as t };
|