typerighter 0.40.3 → 0.40.6
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-GI_8rzn8.js → app-OdN7kiy-.js} +28 -28
- package/dist/{cli-DQKf3is3.js → cli-FDtyIPNk.js} +6 -6
- package/dist/cli.js +1 -1
- package/dist/client/theme-default.js +236 -236
- package/dist/client.js +1 -1
- package/dist/{context-CNTdcpo4.js → context-CSvoDxVt.js} +4 -2
- package/dist/index.js +2 -2
- package/dist/{init-Dq6msKwz.js → init-BdR4QzXX.js} +2 -2
- package/dist/{jsonld-Dxk0xvAr.js → jsonld-BoEW-5KW.js} +5 -5
- package/dist/node/lib/typedown-context.d.ts.map +1 -1
- package/dist/node/plugin/vite/index.d.ts.map +1 -1
- package/dist/node/plugin/vite/virtual/site-data.d.ts +1 -1
- package/dist/node/plugin/vite/virtual/site-data.d.ts.map +1 -1
- package/dist/prerenderWorker.js +2 -2
- package/dist/shared/types/content.d.ts +1 -1
- package/dist/shared/types/content.d.ts.map +1 -1
- package/dist/shared/types/ssg.d.ts +3 -3
- package/dist/shared/types/ssg.d.ts.map +1 -1
- package/dist/shared/utils/debounce.d.ts +1 -0
- package/dist/shared/utils/debounce.d.ts.map +1 -1
- package/dist/{shared-LPNgvigl.js → shared-DMNZD2i1.js} +26 -17
- package/dist/shared.js +2 -2
- package/dist/typerighter.css +1 -1
- package/dist/{vite-D6x3T--t.js → vite-BlO1hmkO.js} +326 -326
- package/dist/vite.js +1 -1
- package/package.json +3 -3
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as
|
|
3
|
-
import { t as
|
|
4
|
-
import { a as
|
|
5
|
-
import { t as
|
|
1
|
+
import { D as e, E as t, F as n, H as r, K as i, L as a, P as o, R as s, V as c, X as l, Y as u, _ as d, b as f, c as p, d as m, g as h, h as g, i as _, p as v, q as y, v as b, w as x, y as S, z as C } from "./shared-DMNZD2i1.js";
|
|
2
|
+
import { a as w, i as T, n as E, o as ee, r as D, s as O, t as te } from "./jsonld-BoEW-5KW.js";
|
|
3
|
+
import { t as ne } from "./temml-DZbhOfRE.js";
|
|
4
|
+
import { a as re, i as ie, n as ae, r as oe } from "./context-CSvoDxVt.js";
|
|
5
|
+
import { t as se } from "./es-ClqUVRJn.js";
|
|
6
6
|
import k, { resolve as A } from "node:path";
|
|
7
7
|
import j from "picocolors";
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import { build as M, normalizePath as
|
|
8
|
+
import ce from "@tailwindcss/vite";
|
|
9
|
+
import le from "@vitejs/plugin-vue";
|
|
10
|
+
import { build as M, normalizePath as ue } from "vite";
|
|
11
11
|
import N from "node:fs/promises";
|
|
12
|
-
import { fileURLToPath as
|
|
13
|
-
import
|
|
14
|
-
import { Worker as
|
|
15
|
-
import { createHighlighter as
|
|
16
|
-
import { createReadStream as
|
|
17
|
-
import { createRequire as
|
|
12
|
+
import { fileURLToPath as de } from "node:url";
|
|
13
|
+
import fe from "node:os";
|
|
14
|
+
import { Worker as pe } from "node:worker_threads";
|
|
15
|
+
import { createHighlighter as me, guessEmbeddedLanguages as he, isSpecialLang as ge } from "shiki";
|
|
16
|
+
import { createReadStream as _e, existsSync as ve, globSync as P, readFileSync as ye, statSync as be } from "node:fs";
|
|
17
|
+
import { createRequire as xe } from "node:module";
|
|
18
18
|
//#region src/node/lib/worker-pool/index.ts
|
|
19
|
-
var
|
|
19
|
+
var Se = class {
|
|
20
20
|
workers = [];
|
|
21
21
|
queue = [];
|
|
22
22
|
destroyed = !1;
|
|
23
23
|
startupError;
|
|
24
24
|
constructor(e) {
|
|
25
|
-
let t = e.concurrency ?? Math.max(1, Math.floor(
|
|
25
|
+
let t = e.concurrency ?? Math.max(1, Math.floor(fe.cpus().length / 2));
|
|
26
26
|
for (let n = 0; n < t; n++) {
|
|
27
|
-
let t = new
|
|
27
|
+
let t = new pe(e.filename, { workerData: e.workerData }), n = { worker: t };
|
|
28
28
|
this.workers.push(n), t.on("message", (e) => {
|
|
29
29
|
let t = n.pending;
|
|
30
30
|
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 xe = class {
|
|
|
62
62
|
};
|
|
63
63
|
//#endregion
|
|
64
64
|
//#region src/node/build/seo/sitemap.ts
|
|
65
|
-
function
|
|
65
|
+
function Ce(e, t, n, r) {
|
|
66
66
|
let i = n ?? "";
|
|
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 n =
|
|
71
|
-
return ` <url><loc>${n}</loc>${a === void 0 ? "" : `<lastmod>${
|
|
70
|
+
let n = p(i + t + o(e)), a = r?.get(e);
|
|
71
|
+
return ` <url><loc>${n}</loc>${a === void 0 ? "" : `<lastmod>${_(a)}</lastmod>`}</url>`;
|
|
72
72
|
}).join("\n")}
|
|
73
73
|
</urlset>
|
|
74
74
|
`;
|
|
75
75
|
}
|
|
76
|
-
function
|
|
76
|
+
function we(e, t) {
|
|
77
77
|
return `User-agent: *
|
|
78
78
|
Allow: /
|
|
79
79
|
|
|
@@ -82,40 +82,40 @@ Sitemap: ${e}${t}sitemap.xml
|
|
|
82
82
|
}
|
|
83
83
|
//#endregion
|
|
84
84
|
//#region src/node/build/seo/feed.ts
|
|
85
|
-
function
|
|
86
|
-
let
|
|
87
|
-
let
|
|
85
|
+
function Te(e, t, n, r, i, a) {
|
|
86
|
+
let o = [...e].filter((e) => e.fileMetadata.mtime > 0).sort((e, t) => t.fileMetadata.mtime - e.fileMetadata.mtime).slice(0, 50).map((e) => {
|
|
87
|
+
let r = c(e.filepath), i = `${n}${t}${r}`, a = new Date(e.fileMetadata.mtime).toUTCString(), o = p(e.label ?? r), s = e.excerpt === void 0 ? "" : `<![CDATA[${e.excerpt}]]>`;
|
|
88
88
|
return ` <item>
|
|
89
|
-
<title>${
|
|
90
|
-
<link>${
|
|
91
|
-
<guid>${
|
|
92
|
-
<pubDate>${
|
|
93
|
-
<description>${
|
|
89
|
+
<title>${o}</title>
|
|
90
|
+
<link>${p(i)}</link>
|
|
91
|
+
<guid>${p(i)}</guid>
|
|
92
|
+
<pubDate>${a}</pubDate>
|
|
93
|
+
<description>${s}</description>
|
|
94
94
|
</item>`;
|
|
95
95
|
}).join("\n");
|
|
96
96
|
return `<?xml version="1.0" encoding="UTF-8"?>
|
|
97
97
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
|
98
98
|
<channel>
|
|
99
|
-
<title>${
|
|
100
|
-
<link>${
|
|
101
|
-
<description>${
|
|
102
|
-
<language>${
|
|
103
|
-
<atom:link href="${
|
|
104
|
-
${
|
|
99
|
+
<title>${p(r)}</title>
|
|
100
|
+
<link>${p(n + t)}</link>
|
|
101
|
+
<description>${p(i)}</description>
|
|
102
|
+
<language>${a}</language>
|
|
103
|
+
<atom:link href="${p(n + t)}feed.xml" rel="self" type="application/rss+xml"/>
|
|
104
|
+
${o}
|
|
105
105
|
</channel>
|
|
106
106
|
</rss>
|
|
107
107
|
`;
|
|
108
108
|
}
|
|
109
109
|
//#endregion
|
|
110
110
|
//#region src/node/build/prerender.ts
|
|
111
|
-
var
|
|
112
|
-
async function
|
|
113
|
-
let { clientEntry: t, cssFiles: n, jsFiles: r } = await
|
|
114
|
-
e.pagePaths.length >=
|
|
115
|
-
}
|
|
116
|
-
async function
|
|
117
|
-
let r = new
|
|
118
|
-
filename: k.resolve(
|
|
111
|
+
var Ee = 64;
|
|
112
|
+
async function De(e) {
|
|
113
|
+
let { clientEntry: t, cssFiles: n, jsFiles: r } = await Ae(e.clientOutDir), i = [n.map((t) => ` <link rel="stylesheet" href="${e.base}${t}">`).join("\n"), r.map((t) => ` <link rel="modulepreload" href="${e.base}${t}">`).join("\n")].filter(Boolean).join("\n") || void 0;
|
|
114
|
+
e.pagePaths.length >= Ee ? await Oe(e, t, i) : await ke(e, t, i);
|
|
115
|
+
}
|
|
116
|
+
async function Oe(e, t, n) {
|
|
117
|
+
let r = new Se({
|
|
118
|
+
filename: k.resolve(de(import.meta.url), "../prerenderWorker.js"),
|
|
119
119
|
workerData: {
|
|
120
120
|
ssrEntryPath: e.ssrEntryPath,
|
|
121
121
|
base: e.base,
|
|
@@ -136,18 +136,18 @@ async function De(e, t, n) {
|
|
|
136
136
|
await r.destroy();
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
async function
|
|
139
|
+
async function ke(e, t, n) {
|
|
140
140
|
let r = await import(e.ssrEntryPath), i = e.pagePaths.length, a = 0;
|
|
141
|
-
for (let
|
|
142
|
-
let
|
|
143
|
-
await Promise.all(
|
|
144
|
-
let
|
|
141
|
+
for (let s = 0; s < i; s += 32) {
|
|
142
|
+
let c = e.pagePaths.slice(s, s + 32);
|
|
143
|
+
await Promise.all(c.map(async (s) => {
|
|
144
|
+
let c = await r.render(s), l = ee(c.pageData), u = w(c.pageData), d = D(c.pageData), f = e.base + o(s), p = [te({
|
|
145
145
|
title: l,
|
|
146
146
|
description: u,
|
|
147
147
|
canonicalUrl: f,
|
|
148
148
|
author: e.author,
|
|
149
149
|
dateModified: d
|
|
150
|
-
}),
|
|
150
|
+
}), E(s, l)].filter((e) => e !== void 0), m = O({
|
|
151
151
|
title: l,
|
|
152
152
|
description: u,
|
|
153
153
|
siteTitle: e.siteTitle,
|
|
@@ -157,16 +157,16 @@ async function Oe(e, t, n) {
|
|
|
157
157
|
lang: e.lang,
|
|
158
158
|
entryScript: t,
|
|
159
159
|
canonicalUrl: f,
|
|
160
|
-
ogImagePath:
|
|
160
|
+
ogImagePath: T(c.pageData),
|
|
161
161
|
jsonLdBlocks: p,
|
|
162
162
|
headExtra: n,
|
|
163
|
-
appContent:
|
|
164
|
-
}), h =
|
|
163
|
+
appContent: c.html
|
|
164
|
+
}), h = s === "/" ? "index.html" : `${o(s)}.html`, g = k.join(e.outDir, h);
|
|
165
165
|
await N.mkdir(k.dirname(g), { recursive: !0 }), await N.writeFile(g, m), a++, e.progress?.update(a, i);
|
|
166
166
|
}));
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
|
-
async function
|
|
169
|
+
async function Ae(e) {
|
|
170
170
|
let t = k.join(e, ".vite", "manifest.json"), n = await N.readFile(t, "utf-8"), r = JSON.parse(n), i = "", a = [], o = [];
|
|
171
171
|
for (let e of Object.values(r)) e.isEntry ? (i = e.file, e.css && a.push(...e.css)) : e.file.endsWith(".js") && o.push(e.file);
|
|
172
172
|
return {
|
|
@@ -203,150 +203,150 @@ var F = [
|
|
|
203
203
|
done(e) {
|
|
204
204
|
this.stopSpinner(), process.stdout.isTTY && process.stdout.write("\r\x1B[K");
|
|
205
205
|
let t = Math.round(performance.now() - this.start);
|
|
206
|
-
this.logger.success(`${e} (${
|
|
206
|
+
this.logger.success(`${e} (${je(t)})`);
|
|
207
207
|
}
|
|
208
208
|
stopSpinner() {
|
|
209
209
|
this.spinnerInterval &&= (clearInterval(this.spinnerInterval), void 0);
|
|
210
210
|
}
|
|
211
211
|
};
|
|
212
|
-
function
|
|
212
|
+
function je(e) {
|
|
213
213
|
return e < 1e3 ? `${Math.round(e)}ms` : `${(e / 1e3).toFixed(1)}s`;
|
|
214
214
|
}
|
|
215
215
|
//#endregion
|
|
216
216
|
//#region src/node/build/index.ts
|
|
217
|
-
var
|
|
218
|
-
async function L(
|
|
219
|
-
let { root:
|
|
220
|
-
await N.rm(
|
|
217
|
+
var Me = "typerighter/client/theme-default";
|
|
218
|
+
async function L(e, t = {}) {
|
|
219
|
+
let { root: n, logger: r } = e, i = k.resolve(n, t.outDir ?? "dist"), a = k.join(i, ".client"), o = k.join(i, ".server");
|
|
220
|
+
await N.rm(i, {
|
|
221
221
|
recursive: !0,
|
|
222
222
|
force: !0
|
|
223
223
|
});
|
|
224
|
-
let
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
]), p = l.origin ?? void 0, m = l.author ?? void 0, h = l.license ?? void 0,
|
|
224
|
+
let s = await e.getTdContext(), [l, u, d, f] = await Promise.all([
|
|
225
|
+
s.getConfig(),
|
|
226
|
+
s.listFiles(),
|
|
227
|
+
s.listSidebar(),
|
|
228
|
+
s.listSchemas()
|
|
229
|
+
]), p = l.origin ?? void 0, m = l.author ?? void 0, h = l.license ?? void 0, _ = l.repo ?? void 0, v = t.base ?? l.basePath ?? "/", y = v.endsWith("/") ? v : v + "/", b = d.map((e) => ({
|
|
230
230
|
...e,
|
|
231
231
|
header: {}
|
|
232
|
-
})), x = b
|
|
232
|
+
})), x = g(b), S = JSON.stringify({
|
|
233
233
|
title: l.siteTitle,
|
|
234
234
|
description: l.siteDescription,
|
|
235
|
-
basePath:
|
|
235
|
+
basePath: y,
|
|
236
236
|
origin: p,
|
|
237
237
|
lang: l.lang,
|
|
238
238
|
nav: l.nav
|
|
239
239
|
}), C = JSON.stringify({
|
|
240
240
|
ready: !0,
|
|
241
241
|
contentTree: x
|
|
242
|
-
}), w = k.join(
|
|
242
|
+
}), w = k.join(n, "node_modules", ".typerighter");
|
|
243
243
|
await N.mkdir(w, { recursive: !0 });
|
|
244
244
|
let T = k.join(w, "client-entry.js"), E = k.join(w, "ssr-entry.js");
|
|
245
245
|
await Promise.all([N.writeFile(T, Q({
|
|
246
246
|
rootDir: l.rootDir,
|
|
247
|
-
basePath:
|
|
247
|
+
basePath: y,
|
|
248
248
|
origin: p,
|
|
249
249
|
lang: l.lang,
|
|
250
250
|
siteTitle: l.siteTitle,
|
|
251
251
|
siteDescription: l.siteDescription,
|
|
252
|
-
repo:
|
|
252
|
+
repo: _,
|
|
253
253
|
author: m,
|
|
254
254
|
license: h,
|
|
255
255
|
nav: l.nav
|
|
256
|
-
})), N.writeFile(E,
|
|
256
|
+
})), N.writeFile(E, Ne({
|
|
257
257
|
rootDir: l.rootDir,
|
|
258
|
-
layoutImport:
|
|
258
|
+
layoutImport: Me,
|
|
259
259
|
siteConfig: S,
|
|
260
260
|
siteData: C
|
|
261
261
|
}))]);
|
|
262
262
|
try {
|
|
263
|
-
let
|
|
263
|
+
let s = $({ context: e }), f = e.createViteLogger(), h = new I(r, "Building client bundle...");
|
|
264
264
|
await M({
|
|
265
|
-
...
|
|
266
|
-
root:
|
|
267
|
-
base:
|
|
268
|
-
plugins:
|
|
265
|
+
...t.viteConfig,
|
|
266
|
+
root: n,
|
|
267
|
+
base: y,
|
|
268
|
+
plugins: s,
|
|
269
269
|
customLogger: f,
|
|
270
270
|
logLevel: "silent",
|
|
271
271
|
build: {
|
|
272
|
-
...
|
|
273
|
-
outDir:
|
|
272
|
+
...t.viteConfig?.build,
|
|
273
|
+
outDir: a,
|
|
274
274
|
manifest: !0,
|
|
275
275
|
emptyOutDir: !0,
|
|
276
276
|
rollupOptions: {
|
|
277
|
-
...
|
|
277
|
+
...t.viteConfig?.build?.rollupOptions,
|
|
278
278
|
input: T
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
281
|
});
|
|
282
|
-
let g = await N.readdir(k.join(
|
|
282
|
+
let g = await N.readdir(k.join(a, "assets")).catch(() => []);
|
|
283
283
|
h.done(`Client bundle (${g.length} chunks)`);
|
|
284
|
-
let _ = new I(
|
|
284
|
+
let _ = new I(r, "Building SSR bundle...");
|
|
285
285
|
await M({
|
|
286
|
-
...
|
|
287
|
-
root:
|
|
288
|
-
base:
|
|
289
|
-
plugins:
|
|
286
|
+
...t.viteConfig,
|
|
287
|
+
root: n,
|
|
288
|
+
base: y,
|
|
289
|
+
plugins: s,
|
|
290
290
|
customLogger: f,
|
|
291
291
|
logLevel: "silent",
|
|
292
292
|
build: {
|
|
293
|
-
...
|
|
294
|
-
outDir:
|
|
293
|
+
...t.viteConfig?.build,
|
|
294
|
+
outDir: o,
|
|
295
295
|
ssr: E,
|
|
296
296
|
emptyOutDir: !0
|
|
297
297
|
}
|
|
298
298
|
}), _.done("SSR bundle");
|
|
299
|
-
let
|
|
300
|
-
let
|
|
301
|
-
return
|
|
299
|
+
let v = u.map((e) => {
|
|
300
|
+
let t = c(e);
|
|
301
|
+
return t === "index" ? "/" : `/${t}`;
|
|
302
302
|
});
|
|
303
|
-
|
|
304
|
-
let b = new I(
|
|
305
|
-
await
|
|
306
|
-
ssrEntryPath: k.join(
|
|
307
|
-
clientOutDir:
|
|
308
|
-
outDir:
|
|
309
|
-
base:
|
|
303
|
+
v.push("/"), R(x.entries, "", v);
|
|
304
|
+
let b = new I(r, "Pre-rendering pages...");
|
|
305
|
+
await De({
|
|
306
|
+
ssrEntryPath: k.join(o, "ssr-entry.js"),
|
|
307
|
+
clientOutDir: a,
|
|
308
|
+
outDir: i,
|
|
309
|
+
base: y,
|
|
310
310
|
origin: p,
|
|
311
311
|
lang: l.lang,
|
|
312
|
-
pagePaths:
|
|
312
|
+
pagePaths: v,
|
|
313
313
|
siteTitle: l.siteTitle,
|
|
314
314
|
author: m,
|
|
315
315
|
progress: b
|
|
316
|
-
}), b.done(`Pre-rendered ${
|
|
316
|
+
}), b.done(`Pre-rendered ${v.length} pages`);
|
|
317
317
|
let S = /* @__PURE__ */ new Map();
|
|
318
|
-
for (let
|
|
319
|
-
let
|
|
320
|
-
S.set(
|
|
318
|
+
for (let e of d) {
|
|
319
|
+
let t = c(e.filepath), n = t === "index" ? "/" : `/${t}`;
|
|
320
|
+
S.set(n, e.fileMetadata.mtime);
|
|
321
321
|
}
|
|
322
|
-
let C =
|
|
323
|
-
p !== void 0 && (w.push(N.writeFile(k.join(
|
|
324
|
-
let
|
|
325
|
-
await N.cp(
|
|
326
|
-
let
|
|
327
|
-
await N.cp(
|
|
322
|
+
let C = Ce(v, y, p, S), w = [N.writeFile(k.join(i, "sitemap.xml"), C)];
|
|
323
|
+
p !== void 0 && (w.push(N.writeFile(k.join(i, "robots.txt"), we(p, y))), w.push(N.writeFile(k.join(i, "feed.xml"), Te(d, y, p, l.siteTitle, l.siteDescription, l.lang)))), await Promise.all(w);
|
|
324
|
+
let ee = k.join(a, "assets"), D = k.join(i, "assets");
|
|
325
|
+
await N.cp(ee, D, { recursive: !0 }).catch(() => {}), await Pe(k.join(n, l.rootDir), i);
|
|
326
|
+
let O = k.join(n, l.publicDir);
|
|
327
|
+
await N.cp(O, i, { recursive: !0 }).catch(() => {});
|
|
328
328
|
} finally {
|
|
329
329
|
await Promise.all([
|
|
330
330
|
N.rm(w, {
|
|
331
331
|
recursive: !0,
|
|
332
332
|
force: !0
|
|
333
333
|
}),
|
|
334
|
-
N.rm(
|
|
334
|
+
N.rm(a, {
|
|
335
335
|
recursive: !0,
|
|
336
336
|
force: !0
|
|
337
337
|
}),
|
|
338
|
-
N.rm(
|
|
338
|
+
N.rm(o, {
|
|
339
339
|
recursive: !0,
|
|
340
340
|
force: !0
|
|
341
341
|
})
|
|
342
342
|
]);
|
|
343
343
|
}
|
|
344
|
-
|
|
344
|
+
r.log(`\nBuild complete. Output: ${i}`);
|
|
345
345
|
}
|
|
346
|
-
function
|
|
347
|
-
let t = `/${e.rootDir}/${
|
|
348
|
-
...
|
|
349
|
-
directoryListings:
|
|
346
|
+
function Ne(e) {
|
|
347
|
+
let t = `/${e.rootDir}/${y}`, n = JSON.parse(e.siteConfig), r = JSON.parse(e.siteData), a = r.contentTree ?? { entries: [] }, o = h(a.entries ?? [], n.title ?? ""), s = JSON.stringify({
|
|
348
|
+
...r,
|
|
349
|
+
directoryListings: o
|
|
350
350
|
});
|
|
351
351
|
return `
|
|
352
352
|
import { createTypedownApp } from 'typerighter/client';
|
|
@@ -357,8 +357,8 @@ import { h } from 'vue';
|
|
|
357
357
|
import theme from '${e.layoutImport}';
|
|
358
358
|
|
|
359
359
|
const pages = import.meta.glob('${t}', { eager: true });
|
|
360
|
-
const contentExts = ${JSON.stringify(
|
|
361
|
-
const siteData = ${
|
|
360
|
+
const contentExts = ${JSON.stringify(i)};
|
|
361
|
+
const siteData = ${s};
|
|
362
362
|
|
|
363
363
|
function findPage(base) {
|
|
364
364
|
for (const ext of contentExts) {
|
|
@@ -392,7 +392,7 @@ export async function render(url) {
|
|
|
392
392
|
}
|
|
393
393
|
`;
|
|
394
394
|
}
|
|
395
|
-
async function
|
|
395
|
+
async function Pe(e, t) {
|
|
396
396
|
let n = (await N.readdir(e, {
|
|
397
397
|
recursive: !0,
|
|
398
398
|
withFileTypes: !0
|
|
@@ -402,22 +402,22 @@ async function Ne(e, t) {
|
|
|
402
402
|
});
|
|
403
403
|
await Promise.all(n);
|
|
404
404
|
}
|
|
405
|
-
function R(e,
|
|
406
|
-
for (let
|
|
407
|
-
if (
|
|
408
|
-
let e = `${
|
|
409
|
-
|
|
405
|
+
function R(e, t, n) {
|
|
406
|
+
for (let r of e) {
|
|
407
|
+
if (r.kind !== "dir") continue;
|
|
408
|
+
let e = `${t}/${r.node.name}`;
|
|
409
|
+
d(r.node) || n.push(x(e)), R(r.node.entries, e, n);
|
|
410
410
|
}
|
|
411
411
|
}
|
|
412
412
|
//#endregion
|
|
413
413
|
//#region ../../node_modules/.pnpm/@shikijs+transformers@4.4.3/node_modules/@shikijs/transformers/dist/index.mjs
|
|
414
|
-
var
|
|
414
|
+
var Fe = /(\s+\/\/)/, Ie = /(?:\/\/|["'#]|;{1,2}|%{1,2}|--)(\s*)$/, Le = /(?:\/\/|#|;{1,2}|%{1,2}|--)(\s*)$/, Re = [
|
|
415
415
|
[/^(<!--)(.+)(-->)$/, !1],
|
|
416
416
|
[/^(\/\*)(.+)(\*\/)$/, !1],
|
|
417
417
|
[/^(\/\/|["'#]|;{1,2}|%{1,2}|--)(.*)$/, !0],
|
|
418
418
|
[/^(\*)(.+)$/, !0]
|
|
419
419
|
];
|
|
420
|
-
function
|
|
420
|
+
function ze(e, t, n) {
|
|
421
421
|
let r = [];
|
|
422
422
|
for (let i of e) {
|
|
423
423
|
if (n === "v3") {
|
|
@@ -427,7 +427,7 @@ function Re(e, t, n) {
|
|
|
427
427
|
if (n.type !== "text") return e;
|
|
428
428
|
let r = t === i.children.length - 1;
|
|
429
429
|
if (!z(n.value, r)) return e;
|
|
430
|
-
let a = n.value.split(
|
|
430
|
+
let a = n.value.split(Fe);
|
|
431
431
|
if (a.length <= 1) return e;
|
|
432
432
|
let o = [a[0]];
|
|
433
433
|
for (let e = 1; e < a.length; e += 2) o.push(a[e] + (a[e + 1] || ""));
|
|
@@ -471,7 +471,7 @@ function Re(e, t, n) {
|
|
|
471
471
|
}
|
|
472
472
|
if (c) {
|
|
473
473
|
if (t && !s && n !== 0) {
|
|
474
|
-
let t =
|
|
474
|
+
let t = Be(e[n - 1], "{") && Be(e[n + 1], "}");
|
|
475
475
|
r.push({
|
|
476
476
|
info: c,
|
|
477
477
|
line: i,
|
|
@@ -493,7 +493,7 @@ function Re(e, t, n) {
|
|
|
493
493
|
}
|
|
494
494
|
return r;
|
|
495
495
|
}
|
|
496
|
-
function
|
|
496
|
+
function Be(e, t) {
|
|
497
497
|
if (e.type !== "element") return !1;
|
|
498
498
|
let n = e.children[0];
|
|
499
499
|
return n.type === "text" && n.value.trim() === t;
|
|
@@ -502,7 +502,7 @@ function z(e, t) {
|
|
|
502
502
|
let n = e.trimStart(), r = e.length - n.length;
|
|
503
503
|
n = n.trimEnd();
|
|
504
504
|
let i = e.length - n.length - r;
|
|
505
|
-
for (let [e, a] of
|
|
505
|
+
for (let [e, a] of Re) {
|
|
506
506
|
if (a && !t) continue;
|
|
507
507
|
let o = e.exec(n);
|
|
508
508
|
if (o) return [
|
|
@@ -512,22 +512,22 @@ function z(e, t) {
|
|
|
512
512
|
];
|
|
513
513
|
}
|
|
514
514
|
}
|
|
515
|
-
function Be(e) {
|
|
516
|
-
let t = e.match(Fe);
|
|
517
|
-
return t && t[1].trim().length === 0 ? e.slice(0, t.index) : e;
|
|
518
|
-
}
|
|
519
515
|
function Ve(e) {
|
|
520
516
|
let t = e.match(Ie);
|
|
517
|
+
return t && t[1].trim().length === 0 ? e.slice(0, t.index) : e;
|
|
518
|
+
}
|
|
519
|
+
function He(e) {
|
|
520
|
+
let t = e.match(Le);
|
|
521
521
|
return t && t[1].trim().length === 0 ? e.slice(0, t.index).trimEnd() : e;
|
|
522
522
|
}
|
|
523
|
-
function
|
|
523
|
+
function Ue(e, t, n, r) {
|
|
524
524
|
return r ??= "v3", {
|
|
525
525
|
name: e,
|
|
526
526
|
code(e) {
|
|
527
527
|
let i = e.children.filter((e) => e.type === "element"), a = [];
|
|
528
528
|
e.data ??= {};
|
|
529
529
|
let o = e.data;
|
|
530
|
-
o._shiki_notation ??=
|
|
530
|
+
o._shiki_notation ??= ze(i, ["jsx", "tsx"].includes(this.options.lang), r);
|
|
531
531
|
let s = o._shiki_notation;
|
|
532
532
|
for (let e of s) {
|
|
533
533
|
if (e.info[1].length === 0) continue;
|
|
@@ -535,7 +535,7 @@ function He(e, t, n, r) {
|
|
|
535
535
|
e.isLineCommentOnly && r !== "v1" && o++;
|
|
536
536
|
let s = !1;
|
|
537
537
|
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;
|
|
538
|
-
r === "v1" ? e.info[1] =
|
|
538
|
+
r === "v1" ? e.info[1] = Ve(e.info[1]) : r === "v3" && (e.info[1] = He(e.info[1]));
|
|
539
539
|
let c = e.info[1].trim().length === 0;
|
|
540
540
|
if (c && (e.info[1] = ""), c && e.isLineCommentOnly) a.push(e.line);
|
|
541
541
|
else if (c && e.isJsxStyle) e.line.children.splice(e.line.children.indexOf(e.token) - 1, 3);
|
|
@@ -560,42 +560,42 @@ function He(e, t, n, r) {
|
|
|
560
560
|
}
|
|
561
561
|
};
|
|
562
562
|
}
|
|
563
|
-
var
|
|
564
|
-
function
|
|
563
|
+
var We = /\{([\d,-]+)\}/;
|
|
564
|
+
function Ge(e) {
|
|
565
565
|
if (!e) return null;
|
|
566
|
-
let t = e.match(
|
|
566
|
+
let t = e.match(We);
|
|
567
567
|
return t ? t[1].split(",").flatMap((e) => {
|
|
568
568
|
let t = e.split("-").map((e) => Number.parseInt(e, 10));
|
|
569
569
|
return t.length === 1 ? [t[0]] : Array.from({ length: t[1] - t[0] + 1 }, (e, n) => t[0] + n);
|
|
570
570
|
}) : null;
|
|
571
571
|
}
|
|
572
|
-
var
|
|
573
|
-
function
|
|
572
|
+
var Ke = Symbol("highlighted-lines");
|
|
573
|
+
function qe(e = {}) {
|
|
574
574
|
let { className: t = "highlighted", zeroIndexed: n = !1 } = e;
|
|
575
575
|
return {
|
|
576
576
|
name: "@shikijs/transformers:meta-highlight",
|
|
577
577
|
line(e, r) {
|
|
578
578
|
if (!this.options.meta?.__raw) return;
|
|
579
579
|
let i = this.meta;
|
|
580
|
-
i[
|
|
581
|
-
let a = i[
|
|
580
|
+
i[Ke] ??= Ge(this.options.meta.__raw);
|
|
581
|
+
let a = i[Ke] ?? [], o = n ? r - 1 : r;
|
|
582
582
|
return a.includes(o) && this.addClassToHast(e, t), e;
|
|
583
583
|
}
|
|
584
584
|
};
|
|
585
585
|
}
|
|
586
|
-
var
|
|
587
|
-
function
|
|
588
|
-
return e.replace(
|
|
586
|
+
var Je = /[.*+?^${}()|[\]\\]/g;
|
|
587
|
+
function Ye(e) {
|
|
588
|
+
return e.replace(Je, "\\$&");
|
|
589
589
|
}
|
|
590
590
|
function B(e = {}, t = "@shikijs/transformers:notation-map") {
|
|
591
591
|
let { classMap: n = {}, classActivePre: r = void 0, classActiveCode: i = void 0 } = e;
|
|
592
|
-
return
|
|
592
|
+
return Ue(t, RegExp(`#?\\s*\\[!code (${Object.keys(n).map(Ye).join("|")})(:\\d+)?\\]`, "gi"), function([e, t, a = ":1"], o, s, c, l) {
|
|
593
593
|
let u = Number.parseInt(a.slice(1), 10);
|
|
594
594
|
for (let e = l; e < Math.min(l + u, c.length); e++) this.addClassToHast(c[e], n[t]);
|
|
595
595
|
return r && this.addClassToHast(this.pre, r), i && this.addClassToHast(this.code, i), !0;
|
|
596
596
|
}, e.matchAlgorithm);
|
|
597
597
|
}
|
|
598
|
-
function
|
|
598
|
+
function Xe(e = {}) {
|
|
599
599
|
let { classLineAdd: t = "diff add", classLineRemove: n = "diff remove", classActivePre: r = "has-diff", classActiveCode: i } = e;
|
|
600
600
|
return B({
|
|
601
601
|
classMap: {
|
|
@@ -607,7 +607,7 @@ function Ye(e = {}) {
|
|
|
607
607
|
matchAlgorithm: e.matchAlgorithm
|
|
608
608
|
}, "@shikijs/transformers:notation-diff");
|
|
609
609
|
}
|
|
610
|
-
function
|
|
610
|
+
function Ze(e = {}) {
|
|
611
611
|
let { classMap: t = {
|
|
612
612
|
error: ["highlighted", "error"],
|
|
613
613
|
warning: ["highlighted", "warning"],
|
|
@@ -620,7 +620,7 @@ function Xe(e = {}) {
|
|
|
620
620
|
matchAlgorithm: e.matchAlgorithm
|
|
621
621
|
}, "@shikijs/transformers:notation-error-level");
|
|
622
622
|
}
|
|
623
|
-
function
|
|
623
|
+
function Qe(e = {}) {
|
|
624
624
|
let { classActiveLine: t = "focused", classActivePre: n = "has-focused", classActiveCode: r } = e;
|
|
625
625
|
return B({
|
|
626
626
|
classMap: { focus: t },
|
|
@@ -629,7 +629,7 @@ function Ze(e = {}) {
|
|
|
629
629
|
matchAlgorithm: e.matchAlgorithm
|
|
630
630
|
}, "@shikijs/transformers:notation-focus");
|
|
631
631
|
}
|
|
632
|
-
function
|
|
632
|
+
function $e(e = {}) {
|
|
633
633
|
let { classActiveLine: t = "highlighted", classActivePre: n = "has-highlighted", classActiveCode: r } = e;
|
|
634
634
|
return B({
|
|
635
635
|
classMap: {
|
|
@@ -643,42 +643,42 @@ function Qe(e = {}) {
|
|
|
643
643
|
}
|
|
644
644
|
//#endregion
|
|
645
645
|
//#region src/node/lib/render/highlight/language.ts
|
|
646
|
-
var
|
|
646
|
+
var et = [
|
|
647
647
|
"shellscript",
|
|
648
648
|
"shell",
|
|
649
649
|
"bash",
|
|
650
650
|
"sh",
|
|
651
651
|
"zsh"
|
|
652
652
|
];
|
|
653
|
-
function
|
|
654
|
-
return
|
|
653
|
+
function tt(e) {
|
|
654
|
+
return et.includes(e);
|
|
655
655
|
}
|
|
656
|
-
var
|
|
657
|
-
function
|
|
658
|
-
return
|
|
656
|
+
var nt = /^[a-zA-Z0-9-_]+/;
|
|
657
|
+
function rt(e) {
|
|
658
|
+
return nt.exec(e)?.[0] || "";
|
|
659
659
|
}
|
|
660
660
|
//#endregion
|
|
661
661
|
//#region src/node/lib/render/highlight/index.ts
|
|
662
|
-
var
|
|
662
|
+
var it = new FinalizationRegistry((e) => {
|
|
663
663
|
e();
|
|
664
664
|
}), V = {
|
|
665
665
|
light: "github-light",
|
|
666
666
|
dark: "github-dark"
|
|
667
667
|
};
|
|
668
|
-
async function
|
|
669
|
-
let e = await
|
|
668
|
+
async function at() {
|
|
669
|
+
let e = await me({
|
|
670
670
|
themes: [V.light, V.dark],
|
|
671
671
|
langs: []
|
|
672
672
|
}), t = [
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
673
|
+
qe(),
|
|
674
|
+
Xe(),
|
|
675
|
+
Qe({
|
|
676
676
|
classActiveLine: "has-focus",
|
|
677
677
|
classActivePre: "has-focused-lines"
|
|
678
678
|
}),
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
679
|
+
$e(),
|
|
680
|
+
Ze(),
|
|
681
|
+
ot(),
|
|
682
682
|
{
|
|
683
683
|
name: "typedown:add-dir",
|
|
684
684
|
pre(e) {
|
|
@@ -687,19 +687,19 @@ async function it() {
|
|
|
687
687
|
}
|
|
688
688
|
], n = new Set(e.getLoadedLanguages());
|
|
689
689
|
async function r(r, i, a) {
|
|
690
|
-
let o =
|
|
690
|
+
let o = rt(i);
|
|
691
691
|
if (o) {
|
|
692
692
|
let e = i;
|
|
693
693
|
i = o.toLowerCase(), a = e.slice(i.length).replace(/(?<!=)\{/g, " {") + " " + a, a = a.trim().replace(/\s+/g, " ");
|
|
694
694
|
}
|
|
695
695
|
i ||= "txt";
|
|
696
696
|
try {
|
|
697
|
-
!
|
|
697
|
+
!ge(i) && !n.has(i) && (await e.loadLanguage(i), n.add(i));
|
|
698
698
|
} catch {
|
|
699
|
-
|
|
699
|
+
re.warn(`\nThe language '${i}' is not loaded, falling back to 'txt' for syntax highlighting.`), i = "txt";
|
|
700
700
|
}
|
|
701
701
|
r = r.trimEnd();
|
|
702
|
-
let s =
|
|
702
|
+
let s = he(r, i, e);
|
|
703
703
|
return await e.loadLanguage(...s), e.codeToHtml(r, {
|
|
704
704
|
lang: i,
|
|
705
705
|
transformers: [...t, {
|
|
@@ -741,13 +741,13 @@ async function it() {
|
|
|
741
741
|
}
|
|
742
742
|
});
|
|
743
743
|
}
|
|
744
|
-
return
|
|
744
|
+
return it.register(r, () => e.dispose()), r;
|
|
745
745
|
}
|
|
746
|
-
function
|
|
746
|
+
function ot() {
|
|
747
747
|
return {
|
|
748
748
|
name: "typedown:disable-shell-symbol-select",
|
|
749
749
|
tokens(e) {
|
|
750
|
-
if (
|
|
750
|
+
if (tt(this.options.lang)) for (let t of e) {
|
|
751
751
|
if (t.length < 2) continue;
|
|
752
752
|
let e = t[0].content.trim();
|
|
753
753
|
(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));
|
|
@@ -758,19 +758,19 @@ function at() {
|
|
|
758
758
|
//#endregion
|
|
759
759
|
//#region src/node/lib/render/postprocess.ts
|
|
760
760
|
var H;
|
|
761
|
-
async function
|
|
762
|
-
return e = await
|
|
761
|
+
async function st(e) {
|
|
762
|
+
return e = await ut(e), e = mt(e), e;
|
|
763
763
|
}
|
|
764
|
-
function
|
|
765
|
-
return H ||=
|
|
764
|
+
function ct() {
|
|
765
|
+
return H ||= at(), H;
|
|
766
766
|
}
|
|
767
|
-
var
|
|
768
|
-
async function
|
|
769
|
-
let t = await
|
|
767
|
+
var lt = /<pre class="td-code-placeholder"(?: data-lang="([^"]*)")?(?: data-meta="([^"]*)")?><code>([\s\S]*?)<\/code><\/pre>/g;
|
|
768
|
+
async function ut(e) {
|
|
769
|
+
let t = await ct(), n = [...e.matchAll(lt)];
|
|
770
770
|
if (n.length === 0) return e;
|
|
771
771
|
let r = await Promise.all(n.map(async (e) => {
|
|
772
|
-
let n = e[1] || "", r = e[2] || "", i =
|
|
773
|
-
return
|
|
772
|
+
let n = e[1] || "", r = e[2] || "", i = m(e[3]);
|
|
773
|
+
return dt(await t(i, n, r), n, r);
|
|
774
774
|
})), i = e;
|
|
775
775
|
for (let e = n.length - 1; 0 <= e; e--) {
|
|
776
776
|
let t = n[e];
|
|
@@ -778,7 +778,7 @@ async function lt(e) {
|
|
|
778
778
|
}
|
|
779
779
|
return i;
|
|
780
780
|
}
|
|
781
|
-
function
|
|
781
|
+
function dt(e, t, n) {
|
|
782
782
|
t ||= "txt";
|
|
783
783
|
let r = t.replace(/_/g, " "), i = `<div class="language-${t}"><button title="Copy code" data-copied="Copied" class="copy"></button><span class="lang">${r}</span>` + e + "</div>";
|
|
784
784
|
if (/:line-numbers\b/.test(n)) {
|
|
@@ -789,14 +789,14 @@ function ut(e, t, n) {
|
|
|
789
789
|
}
|
|
790
790
|
return i;
|
|
791
791
|
}
|
|
792
|
-
var
|
|
793
|
-
function
|
|
794
|
-
return e = e.replace(
|
|
792
|
+
var ft = /<span class="td-math-inline">([\s\S]*?)<\/span>/g, pt = /<div class="td-math-block">([\s\S]*?)<\/div>/g;
|
|
793
|
+
function mt(e) {
|
|
794
|
+
return e = e.replace(ft, (e, t) => U(t, !1)), e = e.replace(pt, (e, t) => U(t, !0)), e;
|
|
795
795
|
}
|
|
796
796
|
function U(e, t) {
|
|
797
797
|
let n = t ? "div" : "span";
|
|
798
798
|
try {
|
|
799
|
-
return
|
|
799
|
+
return ne.renderToString(m(e), {
|
|
800
800
|
throwOnError: !1,
|
|
801
801
|
displayMode: t
|
|
802
802
|
});
|
|
@@ -807,21 +807,21 @@ function U(e, t) {
|
|
|
807
807
|
//#endregion
|
|
808
808
|
//#region src/node/lib/render/vue.ts
|
|
809
809
|
async function W(e, t, n) {
|
|
810
|
-
let r = t.title || t.label || (
|
|
810
|
+
let r = t.title || t.label || (f(n) ? b(n, (await e.getConfig()).siteTitle) : S(n));
|
|
811
811
|
return {
|
|
812
812
|
schema: t.schema,
|
|
813
813
|
schemaLabel: t.schemaLabel,
|
|
814
814
|
label: t.label,
|
|
815
815
|
icon: t.icon,
|
|
816
816
|
frontmatter: t.header ?? {},
|
|
817
|
-
headings:
|
|
817
|
+
headings: gt(t.headings),
|
|
818
818
|
title: r,
|
|
819
|
-
|
|
820
|
-
|
|
819
|
+
fileMetadata: t.fileMetadata,
|
|
820
|
+
seoMetadata: t.seoMetadata
|
|
821
821
|
};
|
|
822
822
|
}
|
|
823
|
-
async function
|
|
824
|
-
let r = await
|
|
823
|
+
async function ht(e, t, n) {
|
|
824
|
+
let r = await st(t.content), i = await W(e, t, n), a = JSON.stringify(`@typedown/pages?resource=${encodeURIComponent(n)}`);
|
|
825
825
|
return {
|
|
826
826
|
vueSrc: [
|
|
827
827
|
"<script>",
|
|
@@ -833,12 +833,12 @@ async function mt(e, t, n) {
|
|
|
833
833
|
`import { pageData } from ${a}`,
|
|
834
834
|
"useRouter().route.data = pageData",
|
|
835
835
|
"<\/script>",
|
|
836
|
-
`<template><div class="typedown-content">\n${
|
|
836
|
+
`<template><div class="typedown-content">\n${_t(r)}\n</div></template>`
|
|
837
837
|
].join("\n"),
|
|
838
838
|
pageData: i
|
|
839
839
|
};
|
|
840
840
|
}
|
|
841
|
-
function
|
|
841
|
+
function gt(e) {
|
|
842
842
|
let t = [], n = [];
|
|
843
843
|
for (let r of e) {
|
|
844
844
|
let e = {
|
|
@@ -854,37 +854,37 @@ function ht(e) {
|
|
|
854
854
|
}
|
|
855
855
|
return t;
|
|
856
856
|
}
|
|
857
|
-
function
|
|
857
|
+
function _t(e) {
|
|
858
858
|
return e.replaceAll("{{", "{{").replaceAll("}}", "}}");
|
|
859
859
|
}
|
|
860
860
|
//#endregion
|
|
861
861
|
//#region src/node/plugin/vite/constants.ts
|
|
862
|
-
var
|
|
862
|
+
var vt = "@typedown/app", G = "\0@typedown/app", K = "@typedown/pages", q = "\0" + K;
|
|
863
863
|
K + "";
|
|
864
|
-
var J = "\0@typedown/pages?resource=", Y = "@typedown/site-data",
|
|
864
|
+
var J = "\0@typedown/pages?resource=", Y = "@typedown/site-data", yt = "\0@typedown/site-data", X = "@typedown/search-index", bt = "\0@typedown/search-index";
|
|
865
865
|
//#endregion
|
|
866
866
|
//#region src/node/plugin/vite/virtual/utils.ts
|
|
867
867
|
function Z(e, t) {
|
|
868
868
|
let n = e.moduleGraph.getModuleById(t);
|
|
869
869
|
if (!n) return;
|
|
870
870
|
e.moduleGraph.invalidateModule(n);
|
|
871
|
-
let r =
|
|
871
|
+
let r = xt(n.url);
|
|
872
872
|
for (let t of n.importers) e.hot.send({
|
|
873
873
|
type: "update",
|
|
874
874
|
updates: [{
|
|
875
875
|
type: "js-update",
|
|
876
|
-
path:
|
|
876
|
+
path: xt(t.url),
|
|
877
877
|
acceptedPath: r,
|
|
878
878
|
timestamp: Date.now()
|
|
879
879
|
}]
|
|
880
880
|
});
|
|
881
881
|
}
|
|
882
|
-
function
|
|
882
|
+
function xt(e) {
|
|
883
883
|
return e.startsWith("\0") ? "/@id/__x00__" + e.slice(1) : e;
|
|
884
884
|
}
|
|
885
885
|
//#endregion
|
|
886
886
|
//#region src/node/plugin/vite/virtual/app.ts
|
|
887
|
-
var
|
|
887
|
+
var St = class {
|
|
888
888
|
async load(e) {
|
|
889
889
|
let t = await e.getConfig();
|
|
890
890
|
return Q({
|
|
@@ -919,7 +919,7 @@ import theme from 'typerighter/client/theme-default';
|
|
|
919
919
|
import { pages as initialPages } from '${K}';
|
|
920
920
|
import initialSiteData from '${Y}';
|
|
921
921
|
let pages = initialPages;
|
|
922
|
-
const contentExts = ${JSON.stringify(
|
|
922
|
+
const contentExts = ${JSON.stringify(i)};
|
|
923
923
|
|
|
924
924
|
function findPage(base) {
|
|
925
925
|
for (const ext of contentExts) {
|
|
@@ -976,7 +976,7 @@ if (import.meta.hot) {
|
|
|
976
976
|
}
|
|
977
977
|
//#endregion
|
|
978
978
|
//#region src/node/plugin/vite/virtual/pages.ts
|
|
979
|
-
var
|
|
979
|
+
var Ct = class {
|
|
980
980
|
async load(e) {
|
|
981
981
|
let t = (await e.getConfig()).rootDir ?? ".";
|
|
982
982
|
return `export const pages = import.meta.glob('${t === "." ? "/**/*.{td,md}" : `/${t}/**/*.{td,md}`}');`;
|
|
@@ -997,12 +997,12 @@ var St = class {
|
|
|
997
997
|
invalidate(e) {
|
|
998
998
|
Z(e, q);
|
|
999
999
|
}
|
|
1000
|
-
},
|
|
1000
|
+
}, wt = "\0@typedown/site-data", Tt = {
|
|
1001
1001
|
ready: !1,
|
|
1002
1002
|
contentTree: { entries: [] },
|
|
1003
1003
|
schemas: {},
|
|
1004
1004
|
directoryListings: {}
|
|
1005
|
-
},
|
|
1005
|
+
}, Et = class {
|
|
1006
1006
|
data;
|
|
1007
1007
|
scan(e) {
|
|
1008
1008
|
let t = P("**/*.td", {
|
|
@@ -1010,40 +1010,40 @@ var St = class {
|
|
|
1010
1010
|
exclude: (e) => e.startsWith("_")
|
|
1011
1011
|
}).map((e) => ({
|
|
1012
1012
|
filepath: e,
|
|
1013
|
-
label:
|
|
1013
|
+
label: S(e),
|
|
1014
1014
|
header: {}
|
|
1015
|
-
})), n =
|
|
1015
|
+
})), n = g(t);
|
|
1016
1016
|
this.data = {
|
|
1017
1017
|
contentTree: n,
|
|
1018
1018
|
schemas: {},
|
|
1019
|
-
directoryListings:
|
|
1019
|
+
directoryListings: h(n.entries, "")
|
|
1020
1020
|
};
|
|
1021
1021
|
}
|
|
1022
1022
|
load(e) {
|
|
1023
1023
|
let t = this.data ? {
|
|
1024
1024
|
ready: !0,
|
|
1025
1025
|
...this.data
|
|
1026
|
-
} :
|
|
1026
|
+
} : Tt;
|
|
1027
1027
|
return `export default ${JSON.stringify(t)}`;
|
|
1028
1028
|
}
|
|
1029
1029
|
clear() {
|
|
1030
1030
|
this.data = void 0;
|
|
1031
1031
|
}
|
|
1032
|
-
fetch(e, t) {
|
|
1033
|
-
|
|
1032
|
+
fetch = v((e, t) => {
|
|
1033
|
+
Dt(e).then((e) => {
|
|
1034
1034
|
this.data = e, t && this.invalidate(t);
|
|
1035
1035
|
}).catch((e) => {
|
|
1036
1036
|
console.error("[typedown] Failed to fetch site data:", e instanceof Error ? e.message : e);
|
|
1037
1037
|
});
|
|
1038
|
-
}
|
|
1038
|
+
}, 200);
|
|
1039
1039
|
async fetchSync(e) {
|
|
1040
|
-
this.data = await
|
|
1040
|
+
this.data = await Dt(e);
|
|
1041
1041
|
}
|
|
1042
1042
|
invalidate(e) {
|
|
1043
|
-
Z(e,
|
|
1043
|
+
Z(e, wt);
|
|
1044
1044
|
}
|
|
1045
1045
|
};
|
|
1046
|
-
async function
|
|
1046
|
+
async function Dt(e) {
|
|
1047
1047
|
let [t, n, r] = await Promise.all([
|
|
1048
1048
|
e.getConfig(),
|
|
1049
1049
|
e.listSidebar(),
|
|
@@ -1051,21 +1051,21 @@ async function Et(e) {
|
|
|
1051
1051
|
]), i = await Promise.all(r.map(async (t) => [t, (await e.getSchema(t)).properties])), a = Object.fromEntries(i), o = n.map((e) => ({
|
|
1052
1052
|
...e,
|
|
1053
1053
|
header: {}
|
|
1054
|
-
})), s =
|
|
1054
|
+
})), s = g(o);
|
|
1055
1055
|
return {
|
|
1056
1056
|
contentTree: s,
|
|
1057
1057
|
schemas: a,
|
|
1058
|
-
directoryListings:
|
|
1058
|
+
directoryListings: h(s.entries, t.siteTitle)
|
|
1059
1059
|
};
|
|
1060
1060
|
}
|
|
1061
1061
|
//#endregion
|
|
1062
1062
|
//#region src/node/lib/search-indexer/index.ts
|
|
1063
|
-
var
|
|
1063
|
+
var Ot = class {
|
|
1064
1064
|
index;
|
|
1065
1065
|
constructor() {
|
|
1066
|
-
this.index = new
|
|
1067
|
-
fields:
|
|
1068
|
-
storeFields:
|
|
1066
|
+
this.index = new se({
|
|
1067
|
+
fields: u,
|
|
1068
|
+
storeFields: l
|
|
1069
1069
|
});
|
|
1070
1070
|
}
|
|
1071
1071
|
addAll(e) {
|
|
@@ -1084,20 +1084,20 @@ var Dt = class {
|
|
|
1084
1084
|
};
|
|
1085
1085
|
//#endregion
|
|
1086
1086
|
//#region src/node/lib/search-indexer/scan.ts
|
|
1087
|
-
function
|
|
1088
|
-
let n =
|
|
1087
|
+
function kt(e, t) {
|
|
1088
|
+
let n = Nt(e), r = [];
|
|
1089
1089
|
for (let t of n) {
|
|
1090
|
-
let n =
|
|
1090
|
+
let n = Mt(e, t);
|
|
1091
1091
|
n && r.push(n);
|
|
1092
1092
|
}
|
|
1093
1093
|
t.addAll(r);
|
|
1094
1094
|
}
|
|
1095
|
-
function
|
|
1096
|
-
let
|
|
1097
|
-
|
|
1095
|
+
function At(e, n, r) {
|
|
1096
|
+
let i = Mt(e, A(e, n));
|
|
1097
|
+
i ? r.addPage(i) : r.discardPage(t(n));
|
|
1098
1098
|
}
|
|
1099
|
-
function
|
|
1100
|
-
let n =
|
|
1099
|
+
function jt(e, t) {
|
|
1100
|
+
let n = S(e);
|
|
1101
1101
|
if (!t.startsWith("---")) return {
|
|
1102
1102
|
title: n,
|
|
1103
1103
|
body: t
|
|
@@ -1113,22 +1113,22 @@ function At(e, t) {
|
|
|
1113
1113
|
body: a
|
|
1114
1114
|
};
|
|
1115
1115
|
}
|
|
1116
|
-
function
|
|
1117
|
-
let
|
|
1116
|
+
function Mt(e, n) {
|
|
1117
|
+
let r;
|
|
1118
1118
|
try {
|
|
1119
|
-
|
|
1119
|
+
r = ye(n, "utf-8");
|
|
1120
1120
|
} catch {
|
|
1121
1121
|
return;
|
|
1122
1122
|
}
|
|
1123
|
-
if (!
|
|
1124
|
-
let
|
|
1123
|
+
if (!r.trim()) return;
|
|
1124
|
+
let i = n.slice(e.length + 1), { title: a, body: o } = jt(i, r);
|
|
1125
1125
|
return {
|
|
1126
|
-
id:
|
|
1127
|
-
title:
|
|
1128
|
-
text: `${
|
|
1126
|
+
id: t(i),
|
|
1127
|
+
title: a,
|
|
1128
|
+
text: `${a}\n${o}`
|
|
1129
1129
|
};
|
|
1130
1130
|
}
|
|
1131
|
-
function
|
|
1131
|
+
function Nt(e) {
|
|
1132
1132
|
return P("**/*.td", {
|
|
1133
1133
|
cwd: e,
|
|
1134
1134
|
exclude: (e) => e.startsWith("_")
|
|
@@ -1136,33 +1136,33 @@ function Mt(e) {
|
|
|
1136
1136
|
}
|
|
1137
1137
|
//#endregion
|
|
1138
1138
|
//#region src/node/plugin/vite/virtual/search-index.ts
|
|
1139
|
-
var
|
|
1140
|
-
indexer = new
|
|
1139
|
+
var Pt = "\0@typedown/search-index", Ft = class {
|
|
1140
|
+
indexer = new Ot();
|
|
1141
1141
|
load(e) {
|
|
1142
1142
|
return `export default ${JSON.stringify(this.indexer.serialize())}`;
|
|
1143
1143
|
}
|
|
1144
1144
|
index(e) {
|
|
1145
|
-
|
|
1145
|
+
kt(e, this.indexer);
|
|
1146
1146
|
}
|
|
1147
1147
|
reindex(e, t) {
|
|
1148
|
-
|
|
1148
|
+
At(e, t, this.indexer);
|
|
1149
1149
|
}
|
|
1150
1150
|
invalidate(e) {
|
|
1151
|
-
Z(e,
|
|
1151
|
+
Z(e, Pt);
|
|
1152
1152
|
}
|
|
1153
|
-
},
|
|
1154
|
-
function
|
|
1153
|
+
}, It = xe(import.meta.url);
|
|
1154
|
+
function Lt() {
|
|
1155
1155
|
return [{
|
|
1156
1156
|
find: "vue/server-renderer",
|
|
1157
|
-
replacement:
|
|
1157
|
+
replacement: It.resolve("vue/server-renderer")
|
|
1158
1158
|
}, {
|
|
1159
1159
|
find: "vue",
|
|
1160
|
-
replacement:
|
|
1160
|
+
replacement: It.resolve("vue/dist/vue.runtime.esm-bundler.js")
|
|
1161
1161
|
}];
|
|
1162
1162
|
}
|
|
1163
1163
|
//#endregion
|
|
1164
1164
|
//#region src/node/plugin/vite/middleware/vault-assets.ts
|
|
1165
|
-
var
|
|
1165
|
+
var Rt = {
|
|
1166
1166
|
jpg: "image/jpeg",
|
|
1167
1167
|
jpeg: "image/jpeg",
|
|
1168
1168
|
png: "image/png",
|
|
@@ -1180,55 +1180,55 @@ var Lt = {
|
|
|
1180
1180
|
woff: "font/woff",
|
|
1181
1181
|
ttf: "font/ttf"
|
|
1182
1182
|
};
|
|
1183
|
-
function
|
|
1184
|
-
return (
|
|
1185
|
-
if (!
|
|
1186
|
-
let
|
|
1187
|
-
if (
|
|
1188
|
-
let
|
|
1189
|
-
if (
|
|
1190
|
-
let e =
|
|
1183
|
+
function zt(t, r) {
|
|
1184
|
+
return (i, o, s) => {
|
|
1185
|
+
if (!i.url || i.method !== "GET" || o.writableEnded) return s();
|
|
1186
|
+
let c = e(i.url);
|
|
1187
|
+
if (c.startsWith("/@") || c.startsWith("/node_modules")) return s();
|
|
1188
|
+
let l = n(r.basePath), u = (l && c.startsWith(l) ? c.slice(l.length) : c).replace(/^\//, ""), d = A(t.config.root, r.rootDirectory, u);
|
|
1189
|
+
if (ve(d)) try {
|
|
1190
|
+
let e = be(d);
|
|
1191
1191
|
if (e.isFile()) {
|
|
1192
|
-
let t =
|
|
1193
|
-
|
|
1192
|
+
let t = Rt[a(d).slice(1).toLowerCase()] ?? "application/octet-stream";
|
|
1193
|
+
o.setHeader("Content-Type", t), o.setHeader("Content-Length", e.size), _e(d).pipe(o);
|
|
1194
1194
|
return;
|
|
1195
1195
|
}
|
|
1196
1196
|
} catch {}
|
|
1197
|
-
|
|
1197
|
+
s();
|
|
1198
1198
|
};
|
|
1199
1199
|
}
|
|
1200
1200
|
//#endregion
|
|
1201
1201
|
//#region src/node/plugin/vite/middleware/virtual-html.ts
|
|
1202
|
-
function
|
|
1203
|
-
return (
|
|
1204
|
-
if (!
|
|
1205
|
-
let
|
|
1206
|
-
if (
|
|
1207
|
-
let u =
|
|
1208
|
-
if (u.startsWith("/@") || u.startsWith("/node_modules") ||
|
|
1209
|
-
|
|
1210
|
-
let n = await
|
|
1211
|
-
|
|
1212
|
-
}).catch(() =>
|
|
1202
|
+
function Bt(t, r, i) {
|
|
1203
|
+
return (a, o, s) => {
|
|
1204
|
+
if (!a.url) return s();
|
|
1205
|
+
let c = n(e(a.url)), l = n(i.basePath);
|
|
1206
|
+
if (c.startsWith("/@") || c.startsWith("/node_modules") || !c.startsWith(l)) return s();
|
|
1207
|
+
let u = c.slice(l.length);
|
|
1208
|
+
if (u.startsWith("/@") || u.startsWith("/node_modules") || c.includes(".") && !c.endsWith("/index.html")) return s();
|
|
1209
|
+
r.getConfig().then(async (e) => {
|
|
1210
|
+
let n = await t.transformIndexHtml(a.url ?? "", Vt(i, e));
|
|
1211
|
+
o.setHeader("Content-Type", "text/html"), o.end(n);
|
|
1212
|
+
}).catch(() => s());
|
|
1213
1213
|
};
|
|
1214
1214
|
}
|
|
1215
|
-
function
|
|
1215
|
+
function Vt(e, t) {
|
|
1216
1216
|
return e.devHtml === void 0 && (e.devHtml = O({
|
|
1217
1217
|
title: t.siteTitle,
|
|
1218
1218
|
description: t.siteDescription,
|
|
1219
1219
|
base: "/",
|
|
1220
|
-
entryScript:
|
|
1220
|
+
entryScript: vt
|
|
1221
1221
|
})), e.devHtml;
|
|
1222
1222
|
}
|
|
1223
1223
|
//#endregion
|
|
1224
1224
|
//#region src/node/plugin/vite/index.ts
|
|
1225
1225
|
function $(e = {}) {
|
|
1226
|
-
let t = e.context, n,
|
|
1226
|
+
let t = e.context, n, i, a, o = new St(), c = new Ct(), l = new Et(), u = new Ft(), d = {
|
|
1227
1227
|
devHtml: void 0,
|
|
1228
1228
|
basePath: "/",
|
|
1229
1229
|
rootDirectory: "vault"
|
|
1230
1230
|
};
|
|
1231
|
-
function
|
|
1231
|
+
function f() {
|
|
1232
1232
|
if (t === void 0) throw Error("typedown plugin not initialized");
|
|
1233
1233
|
return t.getTdContext();
|
|
1234
1234
|
}
|
|
@@ -1238,11 +1238,11 @@ function $(e = {}) {
|
|
|
1238
1238
|
enforce: "pre",
|
|
1239
1239
|
async config(n) {
|
|
1240
1240
|
if (!t) {
|
|
1241
|
-
let r = e.root ? A(n.root ?? process.cwd(), e.root) :
|
|
1242
|
-
t =
|
|
1241
|
+
let r = e.root ? A(n.root ?? process.cwd(), e.root) : oe(n.root ?? process.cwd());
|
|
1242
|
+
t = ae(r);
|
|
1243
1243
|
}
|
|
1244
|
-
|
|
1245
|
-
let r = await (await
|
|
1244
|
+
a = n.base ?? "/";
|
|
1245
|
+
let r = await (await f()).getConfig();
|
|
1246
1246
|
return {
|
|
1247
1247
|
base: n.base ?? r.basePath,
|
|
1248
1248
|
publicDir: r.publicDir,
|
|
@@ -1250,19 +1250,19 @@ function $(e = {}) {
|
|
|
1250
1250
|
port: n.server?.port ?? 8686,
|
|
1251
1251
|
strictPort: n.server?.strictPort ?? !1
|
|
1252
1252
|
},
|
|
1253
|
-
resolve: { alias:
|
|
1253
|
+
resolve: { alias: Lt() },
|
|
1254
1254
|
ssr: { noExternal: ["typerighter"] }
|
|
1255
1255
|
};
|
|
1256
1256
|
},
|
|
1257
1257
|
configResolved(e) {
|
|
1258
|
-
|
|
1258
|
+
i = A(e.root, e.build.outDir);
|
|
1259
1259
|
},
|
|
1260
1260
|
async buildStart() {
|
|
1261
1261
|
if (n) return;
|
|
1262
|
-
let e = await
|
|
1263
|
-
|
|
1262
|
+
let e = await f(), t = await e.getConfig(), r = A(t.rootDir);
|
|
1263
|
+
u.index(r), await l.fetchSync(e);
|
|
1264
1264
|
let i = await e.checkVault();
|
|
1265
|
-
if (
|
|
1265
|
+
if (Kt(i.diagnostics), 0 < i.errorCount) {
|
|
1266
1266
|
let e = i.diagnostics.filter((e) => e.severity === "error").map((e) => ` ${e.filepath}:${e.line}:${e.column} - ${e.message} (${e.code})`);
|
|
1267
1267
|
this.error(`Vault check failed with ${i.errorCount} error(s):\n${e.join("\n")}`);
|
|
1268
1268
|
}
|
|
@@ -1270,37 +1270,37 @@ function $(e = {}) {
|
|
|
1270
1270
|
resolveId(e) {
|
|
1271
1271
|
if (e === "/@typedown/app" || e === "@typedown/app") return G;
|
|
1272
1272
|
if (e === "@typedown/pages") return q;
|
|
1273
|
-
if (e.startsWith("@typedown/pages?resource=")) return
|
|
1274
|
-
if (e === "@typedown/site-data") return
|
|
1275
|
-
if (e === "@typedown/search-index") return
|
|
1273
|
+
if (e.startsWith("@typedown/pages?resource=")) return c.resolvePageData(e);
|
|
1274
|
+
if (e === "@typedown/site-data") return yt;
|
|
1275
|
+
if (e === "@typedown/search-index") return bt;
|
|
1276
1276
|
},
|
|
1277
1277
|
async load(e) {
|
|
1278
|
-
if (
|
|
1278
|
+
if (c.isPageDataModule(e)) return c.loadPageData(e, await f());
|
|
1279
1279
|
if (e !== "\0@typedown/search-index" && e !== "\0@typedown/site-data" && e !== "\0@typedown/pages" && e !== "\0@typedown/app") return;
|
|
1280
|
-
let t = await
|
|
1281
|
-
if (e === "\0@typedown/search-index") return
|
|
1282
|
-
if (e === "\0@typedown/site-data") return
|
|
1283
|
-
if (e === "\0@typedown/pages") return
|
|
1284
|
-
if (e === "\0@typedown/app") return
|
|
1280
|
+
let t = await f();
|
|
1281
|
+
if (e === "\0@typedown/search-index") return u.load(t);
|
|
1282
|
+
if (e === "\0@typedown/site-data") return l.load(t);
|
|
1283
|
+
if (e === "\0@typedown/pages") return c.load(t);
|
|
1284
|
+
if (e === "\0@typedown/app") return o.load(t);
|
|
1285
1285
|
},
|
|
1286
1286
|
async configureServer(e) {
|
|
1287
1287
|
n = e;
|
|
1288
|
-
let t = await
|
|
1289
|
-
|
|
1288
|
+
let t = await f(), r = await t.getConfig(), i = A(r.rootDir);
|
|
1289
|
+
u.index(i), l.scan(i), l.fetch(t, n), e.httpServer?.once("listening", async () => {
|
|
1290
1290
|
let e = await t.checkVault();
|
|
1291
|
-
0 < e.diagnostics.length && (console.error(""),
|
|
1291
|
+
0 < e.diagnostics.length && (console.error(""), Kt(e.diagnostics));
|
|
1292
1292
|
}), t.rpc.onConfigChanged(() => {
|
|
1293
|
-
n && (d.devHtml = void 0,
|
|
1293
|
+
n && (d.devHtml = void 0, l.clear(), o.invalidate(n), c.invalidate(n), Ut(n), l.fetch(t, n));
|
|
1294
1294
|
});
|
|
1295
|
-
function
|
|
1295
|
+
function a(...e) {
|
|
1296
1296
|
n && t.getConfig().then((t) => {
|
|
1297
1297
|
if (!n) return;
|
|
1298
1298
|
let r = [];
|
|
1299
1299
|
for (let i of e) {
|
|
1300
|
-
let e =
|
|
1300
|
+
let e = ue(A(n.config.root, t.rootDir, i)), a = n.moduleGraph.getModulesByFile(e);
|
|
1301
1301
|
if (a?.size) {
|
|
1302
|
-
for (let e of a) n.moduleGraph.invalidateModule(e), r.push(
|
|
1303
|
-
|
|
1302
|
+
for (let e of a) n.moduleGraph.invalidateModule(e), r.push(Gt(e));
|
|
1303
|
+
c.invalidatePageData(n, i);
|
|
1304
1304
|
}
|
|
1305
1305
|
}
|
|
1306
1306
|
0 < r.length && n.hot.send({
|
|
@@ -1310,37 +1310,37 @@ function $(e = {}) {
|
|
|
1310
1310
|
}).catch(() => {});
|
|
1311
1311
|
}
|
|
1312
1312
|
t.rpc.onContentUpdated(({ filepath: e, affectedFiles: r = [] }) => {
|
|
1313
|
-
n && (
|
|
1313
|
+
n && (u.reindex(i, e), u.invalidate(n), c.invalidate(n), l.fetch(t, n), a(e, ...r));
|
|
1314
1314
|
}), t.rpc.onContentDeleted(({ filepath: e }) => {
|
|
1315
|
-
n && (
|
|
1315
|
+
n && (u.reindex(i, e), u.invalidate(n), c.invalidate(n), l.fetch(t, n), a(e));
|
|
1316
1316
|
});
|
|
1317
|
-
function
|
|
1318
|
-
n && (
|
|
1317
|
+
function s() {
|
|
1318
|
+
n && (l.clear(), Wt(n), l.fetch(t, n));
|
|
1319
1319
|
}
|
|
1320
|
-
t.rpc.onSchemaUpdated(
|
|
1321
|
-
let
|
|
1322
|
-
d.basePath =
|
|
1320
|
+
t.rpc.onSchemaUpdated(s), t.rpc.onSchemaDeleted(s);
|
|
1321
|
+
let p = await t.getConfig();
|
|
1322
|
+
d.basePath = p.basePath, d.rootDirectory = p.rootDir, t.rpc.onConfigChanged((e) => {
|
|
1323
1323
|
d.basePath = e.basePath, d.rootDirectory = e.rootDir, d.devHtml = void 0;
|
|
1324
|
-
}), e.middlewares.use(
|
|
1324
|
+
}), e.middlewares.use(zt(e, d)), e.middlewares.use(Bt(e, t, d));
|
|
1325
1325
|
},
|
|
1326
1326
|
async transform(e, t) {
|
|
1327
1327
|
let n = t.split("?")[0];
|
|
1328
1328
|
if (!s(n)) return;
|
|
1329
|
-
if (
|
|
1329
|
+
if (C(n)) return {
|
|
1330
1330
|
code: "<script>import { TdNotFound } from 'typerighter/client/theme-default'; export default TdNotFound; export const pageData = { frontmatter: {}, headings: [], title: '' };<\/script>",
|
|
1331
1331
|
map: null
|
|
1332
1332
|
};
|
|
1333
|
-
let
|
|
1333
|
+
let i = await f(), a = await i.getConfig(), o = r(n, a.rootDir);
|
|
1334
1334
|
try {
|
|
1335
|
-
let { vueSrc: e } = await
|
|
1335
|
+
let { vueSrc: e } = await ht(i, await i.getFile(o), o);
|
|
1336
1336
|
return {
|
|
1337
1337
|
code: e,
|
|
1338
1338
|
map: null
|
|
1339
1339
|
};
|
|
1340
1340
|
} catch (e) {
|
|
1341
|
-
if (
|
|
1341
|
+
if (ie(e)) return;
|
|
1342
1342
|
let t = e instanceof Error ? e.message : String(e);
|
|
1343
|
-
this.error(`[typedown] Failed to transform ${
|
|
1343
|
+
this.error(`[typedown] Failed to transform ${o}: ${t}`);
|
|
1344
1344
|
}
|
|
1345
1345
|
},
|
|
1346
1346
|
handleHotUpdate({ file: e }) {
|
|
@@ -1348,9 +1348,9 @@ function $(e = {}) {
|
|
|
1348
1348
|
},
|
|
1349
1349
|
async closeBundle() {
|
|
1350
1350
|
if (!e.context && t) try {
|
|
1351
|
-
let e = (await (await t.getTdContext()).getConfig()).basePath, n = e.startsWith(
|
|
1351
|
+
let e = (await (await t.getTdContext()).getConfig()).basePath, n = e.startsWith(a) ? e.slice(a.length) : e.replace(/^\//, "");
|
|
1352
1352
|
await L(t, {
|
|
1353
|
-
outDir: A(
|
|
1353
|
+
outDir: A(i, n),
|
|
1354
1354
|
base: e
|
|
1355
1355
|
});
|
|
1356
1356
|
} finally {
|
|
@@ -1358,28 +1358,28 @@ function $(e = {}) {
|
|
|
1358
1358
|
}
|
|
1359
1359
|
}
|
|
1360
1360
|
},
|
|
1361
|
-
|
|
1361
|
+
le({
|
|
1362
1362
|
include: e.root ? RegExp(`${e.root.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}/.*\\.(?:vue|td)$`) : /\.(?:vue|td)$/,
|
|
1363
1363
|
template: { transformAssetUrls: !1 }
|
|
1364
1364
|
}),
|
|
1365
|
-
...
|
|
1365
|
+
...ce()
|
|
1366
1366
|
];
|
|
1367
1367
|
}
|
|
1368
|
-
function
|
|
1368
|
+
function Ht(e) {
|
|
1369
1369
|
return [...e.moduleGraph.idToModuleMap.entries()].filter(([e]) => e.endsWith(".td")).map(([, e]) => e);
|
|
1370
1370
|
}
|
|
1371
|
-
function
|
|
1372
|
-
for (let t of
|
|
1371
|
+
function Ut(e) {
|
|
1372
|
+
for (let t of Ht(e)) e.moduleGraph.invalidateModule(t);
|
|
1373
1373
|
e.hot.send({ type: "full-reload" });
|
|
1374
1374
|
}
|
|
1375
|
-
function
|
|
1376
|
-
let t =
|
|
1375
|
+
function Wt(e) {
|
|
1376
|
+
let t = Ht(e).map((t) => (e.moduleGraph.invalidateModule(t), Gt(t)));
|
|
1377
1377
|
0 < t.length && e.hot.send({
|
|
1378
1378
|
type: "update",
|
|
1379
1379
|
updates: t
|
|
1380
1380
|
});
|
|
1381
1381
|
}
|
|
1382
|
-
function
|
|
1382
|
+
function Gt(e) {
|
|
1383
1383
|
return {
|
|
1384
1384
|
type: "js-update",
|
|
1385
1385
|
path: e.url,
|
|
@@ -1387,7 +1387,7 @@ function Wt(e) {
|
|
|
1387
1387
|
timestamp: Date.now()
|
|
1388
1388
|
};
|
|
1389
1389
|
}
|
|
1390
|
-
function
|
|
1390
|
+
function Kt(e) {
|
|
1391
1391
|
for (let t of e) {
|
|
1392
1392
|
let e = `${t.filepath}:${t.line}:${t.column}`, n = t.severity === "error" ? j.red("error") : j.yellow("warn");
|
|
1393
1393
|
console.error(` ${n} ${e} ${t.message} ${j.dim(`(${t.code})`)}`);
|