@wenyan-md/core 1.0.4 → 1.0.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/core.js CHANGED
@@ -1,133 +1,142 @@
1
- import { marked as y } from "marked";
2
- import { markedHighlight as H } from "marked-highlight";
3
- import M from "highlight.js";
4
- import I from "front-matter";
1
+ import { marked as g } from "marked";
2
+ import { markedHighlight as L } from "marked-highlight";
3
+ import w from "highlight.js";
4
+ import T from "front-matter";
5
5
  import * as f from "css-tree";
6
- import { mathjax as j } from "mathjax-full/js/mathjax.js";
7
- import { TeX as q } from "mathjax-full/js/input/tex.js";
8
- import { SVG as R } from "mathjax-full/js/output/svg.js";
9
- import { liteAdaptor as N } from "mathjax-full/js/adaptors/liteAdaptor.js";
10
- import { RegisterHTMLHandler as z } from "mathjax-full/js/handlers/html.js";
11
- import { AllPackages as D } from "mathjax-full/js/input/tex/AllPackages.js";
12
- import { themes as S } from "./theme.js";
13
- import { hlThemes as A } from "./hltheme.js";
14
- const B = `#wenyan pre::before {
6
+ import { mathjax as P } from "mathjax-full/js/mathjax.js";
7
+ import { TeX as H } from "mathjax-full/js/input/tex.js";
8
+ import { SVG as V } from "mathjax-full/js/output/svg.js";
9
+ import { liteAdaptor as j } from "mathjax-full/js/adaptors/liteAdaptor.js";
10
+ import { RegisterHTMLHandler as q } from "mathjax-full/js/handlers/html.js";
11
+ import { AllPackages as E } from "mathjax-full/js/input/tex/AllPackages.js";
12
+ import { themes as v } from "./theme.js";
13
+ import { getAllThemes as ue, otherThemes as he } from "./theme.js";
14
+ import { hlThemes as C } from "./hltheme.js";
15
+ import { getAllHlThemes as ge } from "./hltheme.js";
16
+ const R = `#wenyan pre::before {
15
17
  display: block;
16
18
  content: "";
17
19
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="45" height="12" viewBox="0 0 450 130"><ellipse cx="65" cy="65" rx="50" ry="52" stroke="rgb(220,60,54)" stroke-width="2" fill="rgb(237,108,96)"/><ellipse cx="225" cy="65" rx="50" ry="52" stroke="rgb(218,151,33)" stroke-width="2" fill="rgb(247,193,81)"/><ellipse cx="385" cy="65" rx="50" ry="52" stroke="rgb(27,161,37)" stroke-width="2" fill="rgb(100,200,86)"/></svg>');
18
20
  background-repeat: no-repeat;
19
21
  width: 100%;
20
22
  height: 16px;
21
- }`, ce = "ui-serif, Georgia, Cambria, 'Noto Serif', 'Times New Roman', serif", F = "ui-sans-serif, system-ui, 'Apple Color Emoji', 'Segoe UI', 'Segoe UI Symbol', 'Noto Sans', 'Roboto', sans-serif", T = "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Roboto Mono', 'Courier New', 'Microsoft YaHei', monospace", G = {
23
+ }`, ne = "ui-serif, Georgia, Cambria, 'Noto Serif', 'Times New Roman', serif", z = "ui-sans-serif, system-ui, 'Apple Color Emoji', 'Segoe UI', 'Segoe UI Symbol', 'Noto Sans', 'Roboto', sans-serif", A = "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Roboto Mono', 'Courier New', 'Microsoft YaHei', monospace", I = {
22
24
  inlineMath: [["$", "$"], ["\\(", "\\)"]],
23
25
  displayMath: [["$$", "$$"], ["\\[", "\\]"]],
24
26
  processEscapes: !0,
25
- packages: D.sort().join(", ").split(/\s*,\s*/)
26
- }, J = {
27
+ packages: E
28
+ }, N = {
27
29
  fontCache: "none"
28
- }, $ = N();
29
- z($);
30
- const U = new q(G), W = new R(J);
31
- function E(r, n) {
32
- const s = r.display ? "section" : "span", e = r.display ? "block-equation" : "inline-equation";
33
- r.typesetRoot = n.adaptor.node(s, { class: e }, [r.typesetRoot]);
30
+ }, b = j();
31
+ q(b);
32
+ const D = new H(I), F = new V(N);
33
+ function $(o, s) {
34
+ const n = o.display ? "section" : "span", e = o.display ? "block-equation" : "inline-equation";
35
+ o.typesetRoot = s.adaptor.node(n, { class: e }, [o.typesetRoot]);
34
36
  }
35
- async function O(r) {
37
+ async function G(o) {
36
38
  try {
37
- const n = j.document(r, {
38
- InputJax: U,
39
- OutputJax: W,
39
+ const s = P.document(o, {
40
+ InputJax: D,
41
+ OutputJax: F,
40
42
  renderActions: {
41
- addContainer: [190, (s) => {
42
- for (const e of s.math)
43
- E(e, s);
44
- }, E]
43
+ addContainer: [190, (e) => {
44
+ for (const t of e.math)
45
+ $(t, e);
46
+ }, $]
45
47
  }
46
48
  });
47
- return n.render(), $.outerHTML($.root(n.document));
48
- } catch (n) {
49
- throw console.error("Error rendering MathJax:", n), n;
49
+ s.render();
50
+ const n = b.body(s.document);
51
+ return b.innerHTML(n);
52
+ } catch (s) {
53
+ throw console.error("Error rendering MathJax:", s), s;
50
54
  }
51
55
  }
52
- function pe() {
53
- y.use(
54
- H({
56
+ function ae() {
57
+ g.use(
58
+ L({
55
59
  langPrefix: "hljs language-",
56
60
  highlight: function(e, t) {
57
- return t = M.getLanguage(t) ? t : "plaintext", M.highlight(e, { language: t }).value;
61
+ return t = w.getLanguage(t) ? t : "plaintext", w.highlight(e, { language: t }).value;
58
62
  }
59
63
  })
60
64
  );
61
- const r = {
65
+ const o = {
62
66
  name: "attributeImage",
63
67
  level: "inline",
64
68
  start(e) {
65
69
  return e.indexOf("![");
66
70
  },
67
71
  tokenizer(e) {
68
- const o = /^!\[([^\]]*)\]\(([^)]+)\)\{(.*?)\}/.exec(e);
69
- if (o)
72
+ const i = /^!\[([^\]]*)\]\(([^)]+)\)\{(.*?)\}/.exec(e);
73
+ if (i)
70
74
  return {
71
75
  type: "attributeImage",
72
- raw: o[0],
73
- alt: o[1],
74
- href: o[2],
75
- attrs: o[3]
76
+ raw: i[0],
77
+ alt: i[1],
78
+ href: i[2],
79
+ attrs: i[3]
76
80
  };
77
81
  },
78
82
  renderer(e) {
79
- const t = Y(e.attrs), o = Array.from(t).map(
80
- ([i, a]) => /^\d+$/.test(a) ? `${i}:${a}px` : `${i}:${a}`
83
+ const t = B(e.attrs), i = Array.from(t).map(
84
+ ([l, r]) => /^\d+$/.test(r) ? `${l}:${r}px` : `${l}:${r}`
81
85
  ).join("; ");
82
- return `<img src="${e.href}" alt="${e.alt}" style="${o}">`;
86
+ return `<img src="${e.href}" alt="${e.alt}" style="${i}">`;
83
87
  }
84
88
  };
85
- y.use({ extensions: [r] });
86
- const n = y.Renderer, s = y.Parser;
87
- n.heading = function(e) {
88
- const t = s.parseInline(e.tokens), o = e.depth;
89
- return `<h${o}><span>${t}</span></h${o}>
89
+ g.use({ extensions: [o] });
90
+ const s = g.Renderer, n = g.Parser;
91
+ s.heading = function(e) {
92
+ const t = n.parseInline(e.tokens), i = e.depth;
93
+ return `<h${i}><span>${t}</span></h${i}>
90
94
  `;
91
- }, n.paragraph = function(e) {
95
+ }, s.paragraph = function(e) {
92
96
  const t = e.text;
93
97
  return t.length > 4 && (/\$\$[\s\S]*?\$\$/g.test(t) || /\\\[[\s\S]*?\\\]/g.test(t)) ? `${t}
94
- ` : `<p>${s.parseInline(e.tokens)}</p>
98
+ ` : `<p>${n.parseInline(e.tokens)}</p>
95
99
  `;
96
- }, n.image = function(e, t, o) {
97
- return `<img src="${e.href}" alt="${o || ""}" title="${t || o || ""}">`;
98
- }, y.use({ renderer: n });
100
+ }, s.image = function(e, t, i) {
101
+ return `<img src="${e.href}" alt="${i || ""}" title="${t || i || ""}">`;
102
+ }, g.use({ renderer: s });
99
103
  }
100
- function Y(r) {
101
- const n = /* @__PURE__ */ new Map();
102
- return r.split(/\s+/).forEach((s) => {
103
- const [e, t] = s.split("=");
104
- e && t && n.set(e, t.replace(/^["']|["']$/g, ""));
105
- }), n;
104
+ function B(o) {
105
+ const s = /* @__PURE__ */ new Map();
106
+ return o.split(/\s+/).forEach((n) => {
107
+ const [e, t] = n.split("=");
108
+ e && t && s.set(e, t.replace(/^["']|["']$/g, ""));
109
+ }), s;
106
110
  }
107
- function fe(r) {
108
- const { attributes: n, body: s } = I(r), e = {};
111
+ function ie(o) {
112
+ const { attributes: s, body: n } = T(o), e = {};
109
113
  let t = "";
110
- const { title: o, description: i, cover: a } = n;
111
- return o && (e.title = o), i && (t += "> " + i + `
114
+ const { title: i, description: l, cover: r } = s;
115
+ return i && (e.title = i), l && (t += "> " + l + `
112
116
 
113
- `, e.description = i), a && (e.cover = a), e.body = t + s, e;
117
+ `, e.description = l), r && (e.cover = r), e.body = t + n, e;
114
118
  }
115
- async function ue(r) {
116
- const n = y.parse(r);
117
- return await O(n);
119
+ async function le(o) {
120
+ const s = g.parse(o);
121
+ return await G(s);
118
122
  }
119
- async function he(r, n, s, e) {
120
- if (!(n in S))
123
+ async function ce(o, s, n, e) {
124
+ let t = v.default;
125
+ if (s && (t = v[s], t || (t = Object.values(v).find(
126
+ (a) => a.name.toLowerCase() === s.toLowerCase()
127
+ ))), !t)
121
128
  throw new Error("主题不存在");
122
- if (!(s in A))
129
+ if (!(n in C))
123
130
  throw new Error("代码块主题不存在");
124
- const t = S[n];
125
- let o = Z(await t.getCss());
126
- o = X(o, {
131
+ const i = O(await t.getCss()), r = await C[n].getCss();
132
+ return J(o, i, r, e);
133
+ }
134
+ async function J(o, s, n, e) {
135
+ s = U(s, {
127
136
  "#wenyan pre code": [
128
137
  {
129
138
  property: "font-family",
130
- value: T,
139
+ value: A,
131
140
  append: !0
132
141
  }
133
142
  ],
@@ -139,187 +148,179 @@ async function he(r, n, s, e) {
139
148
  }
140
149
  ]
141
150
  });
142
- const i = f.parse(o, {
151
+ const t = f.parse(s, {
143
152
  context: "stylesheet",
144
153
  positions: !1,
145
154
  parseAtrulePrelude: !1,
146
155
  parseCustomProperty: !1,
147
156
  parseValue: !1
148
- }), u = await A[s].getCss(), h = f.parse(u, {
157
+ }), i = f.parse(n, {
149
158
  context: "stylesheet",
150
159
  positions: !1,
151
160
  parseAtrulePrelude: !1,
152
161
  parseCustomProperty: !1,
153
162
  parseValue: !1
154
163
  });
155
- if (i.children.appendList(h.children), e) {
156
- const c = f.parse(B, {
164
+ if (t.children.appendList(i.children), e) {
165
+ const r = f.parse(R, {
157
166
  context: "stylesheet",
158
167
  positions: !1,
159
168
  parseAtrulePrelude: !1,
160
169
  parseCustomProperty: !1,
161
170
  parseValue: !1
162
171
  });
163
- i.children.appendList(c.children);
172
+ t.children.appendList(r.children);
164
173
  }
165
- const l = r.getElementById("wenyan");
166
- f.walk(i, {
174
+ f.walk(t, {
167
175
  visit: "Rule",
168
- enter(c, p, g) {
169
- const d = c.prelude.children;
170
- d && d.forEach((w) => {
171
- const v = f.generate(w), k = c.block.children.toArray();
172
- v === "#wenyan" ? k.forEach((x) => {
173
- const b = f.generate(x.value);
174
- l.style[x.property] = b;
175
- }) : l.querySelectorAll(v).forEach((b) => {
176
- k.forEach((C) => {
177
- const V = f.generate(C.value);
178
- b.style[C.property] = V;
176
+ enter(r, a, p) {
177
+ const c = r.prelude.children;
178
+ c && c.forEach((h) => {
179
+ const u = f.generate(h), m = r.block.children.toArray();
180
+ u === "#wenyan" ? m.forEach((d) => {
181
+ const y = f.generate(d.value);
182
+ o.style[d.property] = y;
183
+ }) : o.querySelectorAll(u).forEach((y) => {
184
+ m.forEach((x) => {
185
+ const S = f.generate(x.value);
186
+ y.style[x.property] = S;
179
187
  });
180
188
  });
181
189
  });
182
190
  }
183
191
  });
184
- let m = l.querySelectorAll("mjx-container");
185
- return m.forEach((c) => {
186
- const p = c.querySelector("svg");
187
- p.style.width = p.getAttribute("width"), p.style.height = p.getAttribute("height"), p.removeAttribute("width"), p.removeAttribute("height");
188
- const g = c.parentElement;
189
- c.remove(), g.appendChild(p), g.classList.contains("block-equation") && g.setAttribute(
190
- "style",
191
- "text-align: center; margin-bottom: 1rem;"
192
- );
193
- }), m = l.querySelectorAll("pre code"), m.forEach((c) => {
194
- c.innerHTML = c.innerHTML.replace(/\n/g, "<br>").replace(
195
- /(>[^<]+)|(^[^<]+)/g,
196
- (p) => p.replace(/\s/g, "&nbsp;")
197
- );
198
- }), m = l.querySelectorAll(
199
- "h1, h2, h3, h4, h5, h6, blockquote, pre"
200
- ), m.forEach((c) => {
201
- const p = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Map();
202
- f.walk(i, {
192
+ let l = o.querySelectorAll("mjx-container");
193
+ return l.forEach((r) => {
194
+ const a = r.querySelector("svg");
195
+ a.style.width = a.getAttribute("width"), a.style.height = a.getAttribute("height"), a.removeAttribute("width"), a.removeAttribute("height");
196
+ const p = r.parentElement;
197
+ r.remove(), p.appendChild(a), p.classList.contains("block-equation") && p.setAttribute("style", "text-align: center; margin-bottom: 1rem;");
198
+ }), l = o.querySelectorAll("pre code"), l.forEach((r) => {
199
+ r.innerHTML = r.innerHTML.replace(/\n/g, "<br>").replace(/(>[^<]+)|(^[^<]+)/g, (a) => a.replace(/\s/g, "&nbsp;"));
200
+ }), l = o.querySelectorAll("h1, h2, h3, h4, h5, h6, blockquote, pre"), l.forEach((r) => {
201
+ const a = /* @__PURE__ */ new Map(), p = /* @__PURE__ */ new Map();
202
+ f.walk(t, {
203
203
  visit: "Rule",
204
- enter(d) {
205
- const w = f.generate(d.prelude), v = c.tagName.toLowerCase();
206
- w.includes(`${v}::after`) ? L(d, p) : w.includes(`${v}::before`) && L(d, g);
204
+ enter(c) {
205
+ const h = f.generate(c.prelude), u = r.tagName.toLowerCase();
206
+ h.includes(`${u}::after`) ? k(c, a) : h.includes(`${u}::before`) && k(c, p);
207
207
  }
208
- }), p.size > 0 && c.appendChild(P(p, r)), g.size > 0 && c.insertBefore(
209
- P(g, r),
210
- c.firstChild
211
- );
212
- }), l.setAttribute("data-provider", "WenYan"), `${l.outerHTML.replace(
213
- /class="mjx-solid"/g,
214
- 'fill="none" stroke-width="70"'
215
- )}`;
208
+ }), a.size > 0 && r.appendChild(M(a, o.ownerDocument)), p.size > 0 && r.insertBefore(M(p, o.ownerDocument), r.firstChild);
209
+ }), o.setAttribute("data-provider", "WenYan"), `${o.outerHTML.replace(/class="mjx-solid"/g, 'fill="none" stroke-width="70"')}`;
216
210
  }
217
- function Z(r) {
218
- const n = /--([a-zA-Z0-9\-]+):\s*([^;()]*\((?:[^()]*|\([^()]*\))*\)[^;()]*|[^;]+);/g, s = /var\(--([a-zA-Z0-9\-]+)\)/g, e = {};
211
+ function O(o) {
212
+ const s = /--([a-zA-Z0-9\-]+):\s*([^;()]*\((?:[^()]*|\([^()]*\))*\)[^;()]*|[^;]+);/g, n = /var\(--([a-zA-Z0-9\-]+)\)/g, e = {};
219
213
  let t;
220
- for (; (t = n.exec(r)) !== null; ) {
221
- const a = t[1], u = t[2].trim().replaceAll(`
214
+ for (; (t = s.exec(o)) !== null; ) {
215
+ const r = t[1], a = t[2].trim().replaceAll(`
222
216
  `, "");
223
- e[a] = u;
217
+ e[r] = a;
224
218
  }
225
- e["sans-serif-font"] || (e["sans-serif-font"] = F), e["monospace-font"] || (e["monospace-font"] = T);
226
- function o(a, u, h = /* @__PURE__ */ new Set()) {
227
- if (h.has(a)) return a;
228
- h.add(a);
229
- let l = a, m;
230
- for (; (m = s.exec(l)) !== null; ) {
231
- const c = m[1];
232
- if (u[c]) {
233
- const p = o(u[c], u, h);
234
- l = l.replace(m[0], p);
219
+ e["sans-serif-font"] || (e["sans-serif-font"] = z), e["monospace-font"] || (e["monospace-font"] = A);
220
+ function i(r, a, p = /* @__PURE__ */ new Set()) {
221
+ if (p.has(r)) return r;
222
+ p.add(r);
223
+ let c = r, h;
224
+ for (; (h = n.exec(c)) !== null; ) {
225
+ const u = h[1];
226
+ if (a[u]) {
227
+ const m = i(a[u], a, p);
228
+ c = c.replace(h[0], m);
235
229
  }
236
230
  }
237
- return l;
231
+ return c;
238
232
  }
239
- for (const a in e) {
240
- const u = o(e[a], e);
241
- e[a] = u;
233
+ for (const r in e) {
234
+ const a = i(e[r], e);
235
+ e[r] = a;
242
236
  }
243
- let i = r;
244
- for (; (t = s.exec(r)) !== null; ) {
245
- const a = t[1];
246
- e[a] && (i = i.replace(t[0], e[a]));
237
+ let l = o;
238
+ for (; (t = n.exec(o)) !== null; ) {
239
+ const r = t[1];
240
+ e[r] && (l = l.replace(t[0], e[r]));
247
241
  }
248
- return i.replace(/:root\s*\{[^}]*\}/g, "");
242
+ return l.replace(/:root\s*\{[^}]*\}/g, "");
249
243
  }
250
- function X(r, n) {
251
- const s = f.parse(r, {
244
+ function U(o, s) {
245
+ const n = f.parse(o, {
252
246
  context: "stylesheet",
253
247
  positions: !1,
254
248
  parseAtrulePrelude: !1,
255
249
  parseCustomProperty: !1,
256
250
  parseValue: !1
257
251
  });
258
- return f.walk(s, {
252
+ return f.walk(n, {
259
253
  visit: "Rule",
260
- leave: (e, t, o) => {
254
+ leave: (e, t, i) => {
261
255
  if (e.prelude.type !== "SelectorList") return;
262
- const i = e.prelude.children.toArray().map((a) => f.generate(a));
263
- if (i) {
264
- const a = i[0], u = n[a];
265
- if (!u) return;
266
- for (const { property: h, value: l, append: m } of u)
267
- if (l) {
268
- let c = !1;
269
- f.walk(e.block, (p) => {
270
- p.type === "Declaration" && p.property === h && (p.value = f.parse(l, { context: "value" }), c = !0);
271
- }), !c && m && e.block.children.prepend(
272
- o.createItem({
256
+ const l = e.prelude.children.toArray().map((r) => f.generate(r));
257
+ if (l) {
258
+ const r = l[0], a = s[r];
259
+ if (!a) return;
260
+ for (const { property: p, value: c, append: h } of a)
261
+ if (c) {
262
+ let u = !1;
263
+ f.walk(e.block, (m) => {
264
+ m.type === "Declaration" && m.property === p && (m.value = f.parse(c, { context: "value" }), u = !0);
265
+ }), !u && h && e.block.children.prepend(
266
+ i.createItem({
273
267
  type: "Declaration",
274
- property: h,
275
- value: f.parse(l, { context: "value" })
268
+ property: p,
269
+ value: f.parse(c, { context: "value" })
276
270
  })
277
271
  );
278
272
  }
279
273
  }
280
274
  }
281
- }), f.generate(s);
275
+ }), f.generate(n);
282
276
  }
283
- function L(r, n) {
284
- f.walk(r.block, {
277
+ function k(o, s) {
278
+ f.walk(o.block, {
285
279
  visit: "Declaration",
286
- enter(s) {
287
- const e = s.property, t = f.generate(s.value);
288
- n.set(e, t);
280
+ enter(n) {
281
+ const e = n.property, t = f.generate(n.value);
282
+ s.set(e, t);
289
283
  }
290
284
  });
291
285
  }
292
- function P(r, n) {
293
- const s = n.createElement("section");
294
- r.get("content") && (s.textContent = r.get("content").replace(/['"]/g, ""), r.delete("content"));
295
- for (const [o, i] of r)
296
- if (i.includes("url(")) {
297
- const a = i.match(/data:image\/svg\+xml;utf8,(.*<\/svg>)/), u = i.match(/data:image\/svg\+xml;base64,([^"'\)]*)["']?\)/), h = i.match(/(?:"|')?(https?[^"'\)]*)(?:"|')?\)/);
298
- if (a) {
299
- const l = decodeURIComponent(a[1]);
300
- s.innerHTML = l;
301
- } else if (u) {
302
- const l = atob(u[1]);
303
- s.innerHTML = l;
304
- } else if (h) {
305
- const l = n.createElement("img");
306
- l.src = h[1], l.setAttribute("style", "vertical-align: top;"), s.appendChild(l);
286
+ function M(o, s) {
287
+ const n = s.createElement("section");
288
+ o.get("content") && (n.textContent = o.get("content").replace(/['"]/g, ""), o.delete("content"));
289
+ for (const [i, l] of o)
290
+ if (l.includes("url(")) {
291
+ const r = l.match(/data:image\/svg\+xml;utf8,(.*<\/svg>)/), a = l.match(/data:image\/svg\+xml;base64,([^"'\)]*)["']?\)/), p = l.match(/(?:"|')?(https?[^"'\)]*)(?:"|')?\)/);
292
+ if (r) {
293
+ const c = decodeURIComponent(r[1]);
294
+ n.innerHTML = c;
295
+ } else if (a) {
296
+ const c = atob(a[1]);
297
+ n.innerHTML = c;
298
+ } else if (p) {
299
+ const c = s.createElement("img");
300
+ c.src = p[1], c.setAttribute("style", "vertical-align: top;"), n.appendChild(c);
307
301
  }
308
- r.delete(o);
302
+ o.delete(i);
309
303
  }
310
- const t = Array.from(r.entries()).map(([o, i]) => `${o}: ${i}`).join("; ");
311
- return s.style.cssText = t, s;
304
+ const t = Array.from(o.entries()).map(([i, l]) => `${i}: ${l}`).join("; ");
305
+ return n.style.cssText = t, n;
312
306
  }
313
307
  export {
314
- P as buildPseudoSpan,
315
- pe as configureMarked,
316
- L as extractDeclarations,
317
- he as getContentForGzh,
318
- fe as handleFrontMatter,
319
- X as modifyCss,
320
- T as monospace,
321
- ue as renderMarkdown,
322
- Z as replaceCSSVariables,
323
- F as sansSerif,
324
- ce as serif
308
+ M as buildPseudoSpan,
309
+ ae as configureMarked,
310
+ k as extractDeclarations,
311
+ ge as getAllHlThemes,
312
+ ue as getAllThemes,
313
+ ce as getContentForGzhBuiltinTheme,
314
+ J as getContentForGzhCustomCss,
315
+ ie as handleFrontMatter,
316
+ C as hlThemes,
317
+ R as macStyleCss,
318
+ U as modifyCss,
319
+ A as monospace,
320
+ he as otherThemes,
321
+ le as renderMarkdown,
322
+ O as replaceCSSVariables,
323
+ z as sansSerif,
324
+ ne as serif,
325
+ v as themes
325
326
  };