summaryrefslogtreecommitdiff
path: root/themes/blowfish/assets/lib/mermaid/createText-03b82060.js
diff options
context:
space:
mode:
authorChristoph Cullmann <christoph@cullmann.io>2024-07-15 22:27:55 +0200
committerChristoph Cullmann <christoph@cullmann.io>2024-07-15 22:27:55 +0200
commit3be5285488090ab70254b3080e33e64e6c702d2c (patch)
tree1e54462f560fd759b5be13d5ecfe1fa5c2c832ed /themes/blowfish/assets/lib/mermaid/createText-03b82060.js
parent69075c6fb15ae660fc3d78eb2a4dfcde1c5fba1c (diff)
sync theme
Diffstat (limited to 'themes/blowfish/assets/lib/mermaid/createText-03b82060.js')
-rw-r--r--themes/blowfish/assets/lib/mermaid/createText-03b82060.js2966
1 files changed, 0 insertions, 2966 deletions
diff --git a/themes/blowfish/assets/lib/mermaid/createText-03b82060.js b/themes/blowfish/assets/lib/mermaid/createText-03b82060.js
deleted file mode 100644
index a09c5f6..0000000
--- a/themes/blowfish/assets/lib/mermaid/createText-03b82060.js
+++ /dev/null
@@ -1,2966 +0,0 @@
-import { b8 as At, l as zt, b7 as It } from "./mermaid-9f2aa176.js";
-const Tt = {};
-function Bt(n, r) {
- const t = r || Tt, e = typeof t.includeImageAlt == "boolean" ? t.includeImageAlt : !0, u = typeof t.includeHtml == "boolean" ? t.includeHtml : !0;
- return et(n, e, u);
-}
-function et(n, r, t) {
- if (Lt(n)) {
- if ("value" in n)
- return n.type === "html" && !t ? "" : n.value;
- if (r && "alt" in n && n.alt)
- return n.alt;
- if ("children" in n)
- return Vn(n.children, r, t);
- }
- return Array.isArray(n) ? Vn(n, r, t) : "";
-}
-function Vn(n, r, t) {
- const e = [];
- let u = -1;
- for (; ++u < n.length; )
- e[u] = et(n[u], r, t);
- return e.join("");
-}
-function Lt(n) {
- return !!(n && typeof n == "object");
-}
-function tn(n, r, t, e) {
- const u = n.length;
- let i = 0, l;
- if (r < 0 ? r = -r > u ? 0 : u + r : r = r > u ? u : r, t = t > 0 ? t : 0, e.length < 1e4)
- l = Array.from(e), l.unshift(r, t), n.splice(...l);
- else
- for (t && n.splice(r, t); i < e.length; )
- l = e.slice(i, i + 1e4), l.unshift(r, 0), n.splice(...l), i += 1e4, r += 1e4;
-}
-function Y(n, r) {
- return n.length > 0 ? (tn(n, n.length, 0, r), n) : r;
-}
-const Wn = {}.hasOwnProperty;
-function Ot(n) {
- const r = {};
- let t = -1;
- for (; ++t < n.length; )
- Dt(r, n[t]);
- return r;
-}
-function Dt(n, r) {
- let t;
- for (t in r) {
- const u = (Wn.call(n, t) ? n[t] : void 0) || (n[t] = {}), i = r[t];
- let l;
- if (i)
- for (l in i) {
- Wn.call(u, l) || (u[l] = []);
- const a = i[l];
- Pt(
- // @ts-expect-error Looks like a list.
- u[l],
- Array.isArray(a) ? a : a ? [a] : []
- );
- }
- }
-}
-function Pt(n, r) {
- let t = -1;
- const e = [];
- for (; ++t < r.length; )
- (r[t].add === "after" ? n : e).push(r[t]);
- tn(n, 0, 0, e);
-}
-const _t = /[!-\/:-@\[-`\{-~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/, nn = cn(/[A-Za-z]/), v = cn(/[\dA-Za-z]/), Mt = cn(/[#-'*+\--9=?A-Z^-~]/);
-function An(n) {
- return (
- // Special whitespace codes (which have negative values), C0 and Control
- // character DEL
- n !== null && (n < 32 || n === 127)
- );
-}
-const zn = cn(/\d/), jt = cn(/[\dA-Fa-f]/), Rt = cn(/[!-/:-@[-`{-~]/);
-function C(n) {
- return n !== null && n < -2;
-}
-function Z(n) {
- return n !== null && (n < 0 || n === 32);
-}
-function z(n) {
- return n === -2 || n === -1 || n === 32;
-}
-const qt = cn(_t), Ht = cn(/\s/);
-function cn(n) {
- return r;
- function r(t) {
- return t !== null && n.test(String.fromCharCode(t));
- }
-}
-function O(n, r, t, e) {
- const u = e ? e - 1 : Number.POSITIVE_INFINITY;
- let i = 0;
- return l;
- function l(m) {
- return z(m) ? (n.enter(t), a(m)) : r(m);
- }
- function a(m) {
- return z(m) && i++ < u ? (n.consume(m), a) : (n.exit(t), r(m));
- }
-}
-const Nt = {
- tokenize: Vt
-};
-function Vt(n) {
- const r = n.attempt(
- this.parser.constructs.contentInitial,
- e,
- u
- );
- let t;
- return r;
- function e(a) {
- if (a === null) {
- n.consume(a);
- return;
- }
- return n.enter("lineEnding"), n.consume(a), n.exit("lineEnding"), O(n, r, "linePrefix");
- }
- function u(a) {
- return n.enter("paragraph"), i(a);
- }
- function i(a) {
- const m = n.enter("chunkText", {
- contentType: "text",
- previous: t
- });
- return t && (t.next = m), t = m, l(a);
- }
- function l(a) {
- if (a === null) {
- n.exit("chunkText"), n.exit("paragraph"), n.consume(a);
- return;
- }
- return C(a) ? (n.consume(a), n.exit("chunkText"), i) : (n.consume(a), l);
- }
-}
-const Wt = {
- tokenize: Qt
-}, Qn = {
- tokenize: Ut
-};
-function Qt(n) {
- const r = this, t = [];
- let e = 0, u, i, l;
- return a;
- function a(F) {
- if (e < t.length) {
- const D = t[e];
- return r.containerState = D[1], n.attempt(
- D[0].continuation,
- m,
- c
- )(F);
- }
- return c(F);
- }
- function m(F) {
- if (e++, r.containerState._closeFlow) {
- r.containerState._closeFlow = void 0, u && j();
- const D = r.events.length;
- let _ = D, k;
- for (; _--; )
- if (r.events[_][0] === "exit" && r.events[_][1].type === "chunkFlow") {
- k = r.events[_][1].end;
- break;
- }
- b(e);
- let T = D;
- for (; T < r.events.length; )
- r.events[T][1].end = Object.assign({}, k), T++;
- return tn(
- r.events,
- _ + 1,
- 0,
- r.events.slice(D)
- ), r.events.length = T, c(F);
- }
- return a(F);
- }
- function c(F) {
- if (e === t.length) {
- if (!u)
- return x(F);
- if (u.currentConstruct && u.currentConstruct.concrete)
- return A(F);
- r.interrupt = !!(u.currentConstruct && !u._gfmTableDynamicInterruptHack);
- }
- return r.containerState = {}, n.check(
- Qn,
- p,
- f
- )(F);
- }
- function p(F) {
- return u && j(), b(e), x(F);
- }
- function f(F) {
- return r.parser.lazy[r.now().line] = e !== t.length, l = r.now().offset, A(F);
- }
- function x(F) {
- return r.containerState = {}, n.attempt(
- Qn,
- h,
- A
- )(F);
- }
- function h(F) {
- return e++, t.push([r.currentConstruct, r.containerState]), x(F);
- }
- function A(F) {
- if (F === null) {
- u && j(), b(0), n.consume(F);
- return;
- }
- return u = u || r.parser.flow(r.now()), n.enter("chunkFlow", {
- contentType: "flow",
- previous: i,
- _tokenizer: u
- }), I(F);
- }
- function I(F) {
- if (F === null) {
- M(n.exit("chunkFlow"), !0), b(0), n.consume(F);
- return;
- }
- return C(F) ? (n.consume(F), M(n.exit("chunkFlow")), e = 0, r.interrupt = void 0, a) : (n.consume(F), I);
- }
- function M(F, D) {
- const _ = r.sliceStream(F);
- if (D && _.push(null), F.previous = i, i && (i.next = F), i = F, u.defineSkip(F.start), u.write(_), r.parser.lazy[F.start.line]) {
- let k = u.events.length;
- for (; k--; )
- if (
- // The token starts before the line ending…
- u.events[k][1].start.offset < l && // …and either is not ended yet…
- (!u.events[k][1].end || // …or ends after it.
- u.events[k][1].end.offset > l)
- )
- return;
- const T = r.events.length;
- let H = T, N, V;
- for (; H--; )
- if (r.events[H][0] === "exit" && r.events[H][1].type === "chunkFlow") {
- if (N) {
- V = r.events[H][1].end;
- break;
- }
- N = !0;
- }
- for (b(e), k = T; k < r.events.length; )
- r.events[k][1].end = Object.assign({}, V), k++;
- tn(
- r.events,
- H + 1,
- 0,
- r.events.slice(T)
- ), r.events.length = k;
- }
- }
- function b(F) {
- let D = t.length;
- for (; D-- > F; ) {
- const _ = t[D];
- r.containerState = _[1], _[0].exit.call(r, n);
- }
- t.length = F;
- }
- function j() {
- u.write([null]), i = void 0, u = void 0, r.containerState._closeFlow = void 0;
- }
-}
-function Ut(n, r, t) {
- return O(
- n,
- n.attempt(this.parser.constructs.document, r, t),
- "linePrefix",
- this.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
- );
-}
-function Un(n) {
- if (n === null || Z(n) || Ht(n))
- return 1;
- if (qt(n))
- return 2;
-}
-function Ln(n, r, t) {
- const e = [];
- let u = -1;
- for (; ++u < n.length; ) {
- const i = n[u].resolveAll;
- i && !e.includes(i) && (r = i(r, t), e.push(i));
- }
- return r;
-}
-const In = {
- name: "attention",
- tokenize: Zt,
- resolveAll: $t
-};
-function $t(n, r) {
- let t = -1, e, u, i, l, a, m, c, p;
- for (; ++t < n.length; )
- if (n[t][0] === "enter" && n[t][1].type === "attentionSequence" && n[t][1]._close) {
- for (e = t; e--; )
- if (n[e][0] === "exit" && n[e][1].type === "attentionSequence" && n[e][1]._open && // If the markers are the same:
- r.sliceSerialize(n[e][1]).charCodeAt(0) === r.sliceSerialize(n[t][1]).charCodeAt(0)) {
- if ((n[e][1]._close || n[t][1]._open) && (n[t][1].end.offset - n[t][1].start.offset) % 3 && !((n[e][1].end.offset - n[e][1].start.offset + n[t][1].end.offset - n[t][1].start.offset) % 3))
- continue;
- m = n[e][1].end.offset - n[e][1].start.offset > 1 && n[t][1].end.offset - n[t][1].start.offset > 1 ? 2 : 1;
- const f = Object.assign({}, n[e][1].end), x = Object.assign({}, n[t][1].start);
- $n(f, -m), $n(x, m), l = {
- type: m > 1 ? "strongSequence" : "emphasisSequence",
- start: f,
- end: Object.assign({}, n[e][1].end)
- }, a = {
- type: m > 1 ? "strongSequence" : "emphasisSequence",
- start: Object.assign({}, n[t][1].start),
- end: x
- }, i = {
- type: m > 1 ? "strongText" : "emphasisText",
- start: Object.assign({}, n[e][1].end),
- end: Object.assign({}, n[t][1].start)
- }, u = {
- type: m > 1 ? "strong" : "emphasis",
- start: Object.assign({}, l.start),
- end: Object.assign({}, a.end)
- }, n[e][1].end = Object.assign({}, l.start), n[t][1].start = Object.assign({}, a.end), c = [], n[e][1].end.offset - n[e][1].start.offset && (c = Y(c, [
- ["enter", n[e][1], r],
- ["exit", n[e][1], r]
- ])), c = Y(c, [
- ["enter", u, r],
- ["enter", l, r],
- ["exit", l, r],
- ["enter", i, r]
- ]), c = Y(
- c,
- Ln(
- r.parser.constructs.insideSpan.null,
- n.slice(e + 1, t),
- r
- )
- ), c = Y(c, [
- ["exit", i, r],
- ["enter", a, r],
- ["exit", a, r],
- ["exit", u, r]
- ]), n[t][1].end.offset - n[t][1].start.offset ? (p = 2, c = Y(c, [
- ["enter", n[t][1], r],
- ["exit", n[t][1], r]
- ])) : p = 0, tn(n, e - 1, t - e + 3, c), t = e + c.length - p - 2;
- break;
- }
- }
- for (t = -1; ++t < n.length; )
- n[t][1].type === "attentionSequence" && (n[t][1].type = "data");
- return n;
-}
-function Zt(n, r) {
- const t = this.parser.constructs.attentionMarkers.null, e = this.previous, u = Un(e);
- let i;
- return l;
- function l(m) {
- return i = m, n.enter("attentionSequence"), a(m);
- }
- function a(m) {
- if (m === i)
- return n.consume(m), a;
- const c = n.exit("attentionSequence"), p = Un(m), f = !p || p === 2 && u || t.includes(m), x = !u || u === 2 && p || t.includes(e);
- return c._open = !!(i === 42 ? f : f && (u || !x)), c._close = !!(i === 42 ? x : x && (p || !f)), r(m);
- }
-}
-function $n(n, r) {
- n.column += r, n.offset += r, n._bufferIndex += r;
-}
-const Yt = {
- name: "autolink",
- tokenize: Gt
-};
-function Gt(n, r, t) {
- let e = 0;
- return u;
- function u(h) {
- return n.enter("autolink"), n.enter("autolinkMarker"), n.consume(h), n.exit("autolinkMarker"), n.enter("autolinkProtocol"), i;
- }
- function i(h) {
- return nn(h) ? (n.consume(h), l) : c(h);
- }
- function l(h) {
- return h === 43 || h === 45 || h === 46 || v(h) ? (e = 1, a(h)) : c(h);
- }
- function a(h) {
- return h === 58 ? (n.consume(h), e = 0, m) : (h === 43 || h === 45 || h === 46 || v(h)) && e++ < 32 ? (n.consume(h), a) : (e = 0, c(h));
- }
- function m(h) {
- return h === 62 ? (n.exit("autolinkProtocol"), n.enter("autolinkMarker"), n.consume(h), n.exit("autolinkMarker"), n.exit("autolink"), r) : h === null || h === 32 || h === 60 || An(h) ? t(h) : (n.consume(h), m);
- }
- function c(h) {
- return h === 64 ? (n.consume(h), p) : Mt(h) ? (n.consume(h), c) : t(h);
- }
- function p(h) {
- return v(h) ? f(h) : t(h);
- }
- function f(h) {
- return h === 46 ? (n.consume(h), e = 0, p) : h === 62 ? (n.exit("autolinkProtocol").type = "autolinkEmail", n.enter("autolinkMarker"), n.consume(h), n.exit("autolinkMarker"), n.exit("autolink"), r) : x(h);
- }
- function x(h) {
- if ((h === 45 || v(h)) && e++ < 63) {
- const A = h === 45 ? x : f;
- return n.consume(h), A;
- }
- return t(h);
- }
-}
-const Sn = {
- tokenize: Jt,
- partial: !0
-};
-function Jt(n, r, t) {
- return e;
- function e(i) {
- return z(i) ? O(n, u, "linePrefix")(i) : u(i);
- }
- function u(i) {
- return i === null || C(i) ? r(i) : t(i);
- }
-}
-const rt = {
- name: "blockQuote",
- tokenize: Kt,
- continuation: {
- tokenize: Xt
- },
- exit: vt
-};
-function Kt(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- if (l === 62) {
- const a = e.containerState;
- return a.open || (n.enter("blockQuote", {
- _container: !0
- }), a.open = !0), n.enter("blockQuotePrefix"), n.enter("blockQuoteMarker"), n.consume(l), n.exit("blockQuoteMarker"), i;
- }
- return t(l);
- }
- function i(l) {
- return z(l) ? (n.enter("blockQuotePrefixWhitespace"), n.consume(l), n.exit("blockQuotePrefixWhitespace"), n.exit("blockQuotePrefix"), r) : (n.exit("blockQuotePrefix"), r(l));
- }
-}
-function Xt(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return z(l) ? O(
- n,
- i,
- "linePrefix",
- e.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
- )(l) : i(l);
- }
- function i(l) {
- return n.attempt(rt, r, t)(l);
- }
-}
-function vt(n) {
- n.exit("blockQuote");
-}
-const it = {
- name: "characterEscape",
- tokenize: ne
-};
-function ne(n, r, t) {
- return e;
- function e(i) {
- return n.enter("characterEscape"), n.enter("escapeMarker"), n.consume(i), n.exit("escapeMarker"), u;
- }
- function u(i) {
- return Rt(i) ? (n.enter("characterEscapeValue"), n.consume(i), n.exit("characterEscapeValue"), n.exit("characterEscape"), r) : t(i);
- }
-}
-const Zn = document.createElement("i");
-function On(n) {
- const r = "&" + n + ";";
- Zn.innerHTML = r;
- const t = Zn.textContent;
- return t.charCodeAt(t.length - 1) === 59 && n !== "semi" || t === r ? !1 : t;
-}
-const ut = {
- name: "characterReference",
- tokenize: te
-};
-function te(n, r, t) {
- const e = this;
- let u = 0, i, l;
- return a;
- function a(f) {
- return n.enter("characterReference"), n.enter("characterReferenceMarker"), n.consume(f), n.exit("characterReferenceMarker"), m;
- }
- function m(f) {
- return f === 35 ? (n.enter("characterReferenceMarkerNumeric"), n.consume(f), n.exit("characterReferenceMarkerNumeric"), c) : (n.enter("characterReferenceValue"), i = 31, l = v, p(f));
- }
- function c(f) {
- return f === 88 || f === 120 ? (n.enter("characterReferenceMarkerHexadecimal"), n.consume(f), n.exit("characterReferenceMarkerHexadecimal"), n.enter("characterReferenceValue"), i = 6, l = jt, p) : (n.enter("characterReferenceValue"), i = 7, l = zn, p(f));
- }
- function p(f) {
- if (f === 59 && u) {
- const x = n.exit("characterReferenceValue");
- return l === v && !On(e.sliceSerialize(x)) ? t(f) : (n.enter("characterReferenceMarker"), n.consume(f), n.exit("characterReferenceMarker"), n.exit("characterReference"), r);
- }
- return l(f) && u++ < i ? (n.consume(f), p) : t(f);
- }
-}
-const Yn = {
- tokenize: re,
- partial: !0
-}, Gn = {
- name: "codeFenced",
- tokenize: ee,
- concrete: !0
-};
-function ee(n, r, t) {
- const e = this, u = {
- tokenize: _,
- partial: !0
- };
- let i = 0, l = 0, a;
- return m;
- function m(k) {
- return c(k);
- }
- function c(k) {
- const T = e.events[e.events.length - 1];
- return i = T && T[1].type === "linePrefix" ? T[2].sliceSerialize(T[1], !0).length : 0, a = k, n.enter("codeFenced"), n.enter("codeFencedFence"), n.enter("codeFencedFenceSequence"), p(k);
- }
- function p(k) {
- return k === a ? (l++, n.consume(k), p) : l < 3 ? t(k) : (n.exit("codeFencedFenceSequence"), z(k) ? O(n, f, "whitespace")(k) : f(k));
- }
- function f(k) {
- return k === null || C(k) ? (n.exit("codeFencedFence"), e.interrupt ? r(k) : n.check(Yn, I, D)(k)) : (n.enter("codeFencedFenceInfo"), n.enter("chunkString", {
- contentType: "string"
- }), x(k));
- }
- function x(k) {
- return k === null || C(k) ? (n.exit("chunkString"), n.exit("codeFencedFenceInfo"), f(k)) : z(k) ? (n.exit("chunkString"), n.exit("codeFencedFenceInfo"), O(n, h, "whitespace")(k)) : k === 96 && k === a ? t(k) : (n.consume(k), x);
- }
- function h(k) {
- return k === null || C(k) ? f(k) : (n.enter("codeFencedFenceMeta"), n.enter("chunkString", {
- contentType: "string"
- }), A(k));
- }
- function A(k) {
- return k === null || C(k) ? (n.exit("chunkString"), n.exit("codeFencedFenceMeta"), f(k)) : k === 96 && k === a ? t(k) : (n.consume(k), A);
- }
- function I(k) {
- return n.attempt(u, D, M)(k);
- }
- function M(k) {
- return n.enter("lineEnding"), n.consume(k), n.exit("lineEnding"), b;
- }
- function b(k) {
- return i > 0 && z(k) ? O(
- n,
- j,
- "linePrefix",
- i + 1
- )(k) : j(k);
- }
- function j(k) {
- return k === null || C(k) ? n.check(Yn, I, D)(k) : (n.enter("codeFlowValue"), F(k));
- }
- function F(k) {
- return k === null || C(k) ? (n.exit("codeFlowValue"), j(k)) : (n.consume(k), F);
- }
- function D(k) {
- return n.exit("codeFenced"), r(k);
- }
- function _(k, T, H) {
- let N = 0;
- return V;
- function V(w) {
- return k.enter("lineEnding"), k.consume(w), k.exit("lineEnding"), y;
- }
- function y(w) {
- return k.enter("codeFencedFence"), z(w) ? O(
- k,
- S,
- "linePrefix",
- e.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
- )(w) : S(w);
- }
- function S(w) {
- return w === a ? (k.enter("codeFencedFenceSequence"), P(w)) : H(w);
- }
- function P(w) {
- return w === a ? (N++, k.consume(w), P) : N >= l ? (k.exit("codeFencedFenceSequence"), z(w) ? O(k, R, "whitespace")(w) : R(w)) : H(w);
- }
- function R(w) {
- return w === null || C(w) ? (k.exit("codeFencedFence"), T(w)) : H(w);
- }
- }
-}
-function re(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return l === null ? t(l) : (n.enter("lineEnding"), n.consume(l), n.exit("lineEnding"), i);
- }
- function i(l) {
- return e.parser.lazy[e.now().line] ? t(l) : r(l);
- }
-}
-const Cn = {
- name: "codeIndented",
- tokenize: ue
-}, ie = {
- tokenize: le,
- partial: !0
-};
-function ue(n, r, t) {
- const e = this;
- return u;
- function u(c) {
- return n.enter("codeIndented"), O(n, i, "linePrefix", 4 + 1)(c);
- }
- function i(c) {
- const p = e.events[e.events.length - 1];
- return p && p[1].type === "linePrefix" && p[2].sliceSerialize(p[1], !0).length >= 4 ? l(c) : t(c);
- }
- function l(c) {
- return c === null ? m(c) : C(c) ? n.attempt(ie, l, m)(c) : (n.enter("codeFlowValue"), a(c));
- }
- function a(c) {
- return c === null || C(c) ? (n.exit("codeFlowValue"), l(c)) : (n.consume(c), a);
- }
- function m(c) {
- return n.exit("codeIndented"), r(c);
- }
-}
-function le(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return e.parser.lazy[e.now().line] ? t(l) : C(l) ? (n.enter("lineEnding"), n.consume(l), n.exit("lineEnding"), u) : O(n, i, "linePrefix", 4 + 1)(l);
- }
- function i(l) {
- const a = e.events[e.events.length - 1];
- return a && a[1].type === "linePrefix" && a[2].sliceSerialize(a[1], !0).length >= 4 ? r(l) : C(l) ? u(l) : t(l);
- }
-}
-const ae = {
- name: "codeText",
- tokenize: ce,
- resolve: oe,
- previous: se
-};
-function oe(n) {
- let r = n.length - 4, t = 3, e, u;
- if ((n[t][1].type === "lineEnding" || n[t][1].type === "space") && (n[r][1].type === "lineEnding" || n[r][1].type === "space")) {
- for (e = t; ++e < r; )
- if (n[e][1].type === "codeTextData") {
- n[t][1].type = "codeTextPadding", n[r][1].type = "codeTextPadding", t += 2, r -= 2;
- break;
- }
- }
- for (e = t - 1, r++; ++e <= r; )
- u === void 0 ? e !== r && n[e][1].type !== "lineEnding" && (u = e) : (e === r || n[e][1].type === "lineEnding") && (n[u][1].type = "codeTextData", e !== u + 2 && (n[u][1].end = n[e - 1][1].end, n.splice(u + 2, e - u - 2), r -= e - u - 2, e = u + 2), u = void 0);
- return n;
-}
-function se(n) {
- return n !== 96 || this.events[this.events.length - 1][1].type === "characterEscape";
-}
-function ce(n, r, t) {
- let e = 0, u, i;
- return l;
- function l(f) {
- return n.enter("codeText"), n.enter("codeTextSequence"), a(f);
- }
- function a(f) {
- return f === 96 ? (n.consume(f), e++, a) : (n.exit("codeTextSequence"), m(f));
- }
- function m(f) {
- return f === null ? t(f) : f === 32 ? (n.enter("space"), n.consume(f), n.exit("space"), m) : f === 96 ? (i = n.enter("codeTextSequence"), u = 0, p(f)) : C(f) ? (n.enter("lineEnding"), n.consume(f), n.exit("lineEnding"), m) : (n.enter("codeTextData"), c(f));
- }
- function c(f) {
- return f === null || f === 32 || f === 96 || C(f) ? (n.exit("codeTextData"), m(f)) : (n.consume(f), c);
- }
- function p(f) {
- return f === 96 ? (n.consume(f), u++, p) : u === e ? (n.exit("codeTextSequence"), n.exit("codeText"), r(f)) : (i.type = "codeTextData", c(f));
- }
-}
-function lt(n) {
- const r = {};
- let t = -1, e, u, i, l, a, m, c;
- for (; ++t < n.length; ) {
- for (; t in r; )
- t = r[t];
- if (e = n[t], t && e[1].type === "chunkFlow" && n[t - 1][1].type === "listItemPrefix" && (m = e[1]._tokenizer.events, i = 0, i < m.length && m[i][1].type === "lineEndingBlank" && (i += 2), i < m.length && m[i][1].type === "content"))
- for (; ++i < m.length && m[i][1].type !== "content"; )
- m[i][1].type === "chunkText" && (m[i][1]._isInFirstContentOfListItem = !0, i++);
- if (e[0] === "enter")
- e[1].contentType && (Object.assign(r, he(n, t)), t = r[t], c = !0);
- else if (e[1]._container) {
- for (i = t, u = void 0; i-- && (l = n[i], l[1].type === "lineEnding" || l[1].type === "lineEndingBlank"); )
- l[0] === "enter" && (u && (n[u][1].type = "lineEndingBlank"), l[1].type = "lineEnding", u = i);
- u && (e[1].end = Object.assign({}, n[u][1].start), a = n.slice(u, t), a.unshift(e), tn(n, u, t - u + 1, a));
- }
- }
- return !c;
-}
-function he(n, r) {
- const t = n[r][1], e = n[r][2];
- let u = r - 1;
- const i = [], l = t._tokenizer || e.parser[t.contentType](t.start), a = l.events, m = [], c = {};
- let p, f, x = -1, h = t, A = 0, I = 0;
- const M = [I];
- for (; h; ) {
- for (; n[++u][1] !== h; )
- ;
- i.push(u), h._tokenizer || (p = e.sliceStream(h), h.next || p.push(null), f && l.defineSkip(h.start), h._isInFirstContentOfListItem && (l._gfmTasklistFirstContentOfListItem = !0), l.write(p), h._isInFirstContentOfListItem && (l._gfmTasklistFirstContentOfListItem = void 0)), f = h, h = h.next;
- }
- for (h = t; ++x < a.length; )
- // Find a void token that includes a break.
- a[x][0] === "exit" && a[x - 1][0] === "enter" && a[x][1].type === a[x - 1][1].type && a[x][1].start.line !== a[x][1].end.line && (I = x + 1, M.push(I), h._tokenizer = void 0, h.previous = void 0, h = h.next);
- for (l.events = [], h ? (h._tokenizer = void 0, h.previous = void 0) : M.pop(), x = M.length; x--; ) {
- const b = a.slice(M[x], M[x + 1]), j = i.pop();
- m.unshift([j, j + b.length - 1]), tn(n, j, 2, b);
- }
- for (x = -1; ++x < m.length; )
- c[A + m[x][0]] = A + m[x][1], A += m[x][1] - m[x][0] - 1;
- return c;
-}
-const pe = {
- tokenize: xe,
- resolve: me
-}, fe = {
- tokenize: ge,
- partial: !0
-};
-function me(n) {
- return lt(n), n;
-}
-function xe(n, r) {
- let t;
- return e;
- function e(a) {
- return n.enter("content"), t = n.enter("chunkContent", {
- contentType: "content"
- }), u(a);
- }
- function u(a) {
- return a === null ? i(a) : C(a) ? n.check(
- fe,
- l,
- i
- )(a) : (n.consume(a), u);
- }
- function i(a) {
- return n.exit("chunkContent"), n.exit("content"), r(a);
- }
- function l(a) {
- return n.consume(a), n.exit("chunkContent"), t.next = n.enter("chunkContent", {
- contentType: "content",
- previous: t
- }), t = t.next, u;
- }
-}
-function ge(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return n.exit("chunkContent"), n.enter("lineEnding"), n.consume(l), n.exit("lineEnding"), O(n, i, "linePrefix");
- }
- function i(l) {
- if (l === null || C(l))
- return t(l);
- const a = e.events[e.events.length - 1];
- return !e.parser.constructs.disable.null.includes("codeIndented") && a && a[1].type === "linePrefix" && a[2].sliceSerialize(a[1], !0).length >= 4 ? r(l) : n.interrupt(e.parser.constructs.flow, t, r)(l);
- }
-}
-function at(n, r, t, e, u, i, l, a, m) {
- const c = m || Number.POSITIVE_INFINITY;
- let p = 0;
- return f;
- function f(b) {
- return b === 60 ? (n.enter(e), n.enter(u), n.enter(i), n.consume(b), n.exit(i), x) : b === null || b === 32 || b === 41 || An(b) ? t(b) : (n.enter(e), n.enter(l), n.enter(a), n.enter("chunkString", {
- contentType: "string"
- }), I(b));
- }
- function x(b) {
- return b === 62 ? (n.enter(i), n.consume(b), n.exit(i), n.exit(u), n.exit(e), r) : (n.enter(a), n.enter("chunkString", {
- contentType: "string"
- }), h(b));
- }
- function h(b) {
- return b === 62 ? (n.exit("chunkString"), n.exit(a), x(b)) : b === null || b === 60 || C(b) ? t(b) : (n.consume(b), b === 92 ? A : h);
- }
- function A(b) {
- return b === 60 || b === 62 || b === 92 ? (n.consume(b), h) : h(b);
- }
- function I(b) {
- return !p && (b === null || b === 41 || Z(b)) ? (n.exit("chunkString"), n.exit(a), n.exit(l), n.exit(e), r(b)) : p < c && b === 40 ? (n.consume(b), p++, I) : b === 41 ? (n.consume(b), p--, I) : b === null || b === 32 || b === 40 || An(b) ? t(b) : (n.consume(b), b === 92 ? M : I);
- }
- function M(b) {
- return b === 40 || b === 41 || b === 92 ? (n.consume(b), I) : I(b);
- }
-}
-function ot(n, r, t, e, u, i) {
- const l = this;
- let a = 0, m;
- return c;
- function c(h) {
- return n.enter(e), n.enter(u), n.consume(h), n.exit(u), n.enter(i), p;
- }
- function p(h) {
- return a > 999 || h === null || h === 91 || h === 93 && !m || // To do: remove in the future once we’ve switched from
- // `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,
- // which doesn’t need this.
- // Hidden footnotes hook.
- /* c8 ignore next 3 */
- h === 94 && !a && "_hiddenFootnoteSupport" in l.parser.constructs ? t(h) : h === 93 ? (n.exit(i), n.enter(u), n.consume(h), n.exit(u), n.exit(e), r) : C(h) ? (n.enter("lineEnding"), n.consume(h), n.exit("lineEnding"), p) : (n.enter("chunkString", {
- contentType: "string"
- }), f(h));
- }
- function f(h) {
- return h === null || h === 91 || h === 93 || C(h) || a++ > 999 ? (n.exit("chunkString"), p(h)) : (n.consume(h), m || (m = !z(h)), h === 92 ? x : f);
- }
- function x(h) {
- return h === 91 || h === 92 || h === 93 ? (n.consume(h), a++, f) : f(h);
- }
-}
-function st(n, r, t, e, u, i) {
- let l;
- return a;
- function a(x) {
- return x === 34 || x === 39 || x === 40 ? (n.enter(e), n.enter(u), n.consume(x), n.exit(u), l = x === 40 ? 41 : x, m) : t(x);
- }
- function m(x) {
- return x === l ? (n.enter(u), n.consume(x), n.exit(u), n.exit(e), r) : (n.enter(i), c(x));
- }
- function c(x) {
- return x === l ? (n.exit(i), m(l)) : x === null ? t(x) : C(x) ? (n.enter("lineEnding"), n.consume(x), n.exit("lineEnding"), O(n, c, "linePrefix")) : (n.enter("chunkString", {
- contentType: "string"
- }), p(x));
- }
- function p(x) {
- return x === l || x === null || C(x) ? (n.exit("chunkString"), c(x)) : (n.consume(x), x === 92 ? f : p);
- }
- function f(x) {
- return x === l || x === 92 ? (n.consume(x), p) : p(x);
- }
-}
-function dn(n, r) {
- let t;
- return e;
- function e(u) {
- return C(u) ? (n.enter("lineEnding"), n.consume(u), n.exit("lineEnding"), t = !0, e) : z(u) ? O(
- n,
- e,
- t ? "linePrefix" : "lineSuffix"
- )(u) : r(u);
- }
-}
-function xn(n) {
- return n.replace(/[\t\n\r ]+/g, " ").replace(/^ | $/g, "").toLowerCase().toUpperCase();
-}
-const ke = {
- name: "definition",
- tokenize: be
-}, de = {
- tokenize: ye,
- partial: !0
-};
-function be(n, r, t) {
- const e = this;
- let u;
- return i;
- function i(h) {
- return n.enter("definition"), l(h);
- }
- function l(h) {
- return ot.call(
- e,
- n,
- a,
- // Note: we don’t need to reset the way `markdown-rs` does.
- t,
- "definitionLabel",
- "definitionLabelMarker",
- "definitionLabelString"
- )(h);
- }
- function a(h) {
- return u = xn(
- e.sliceSerialize(e.events[e.events.length - 1][1]).slice(1, -1)
- ), h === 58 ? (n.enter("definitionMarker"), n.consume(h), n.exit("definitionMarker"), m) : t(h);
- }
- function m(h) {
- return Z(h) ? dn(n, c)(h) : c(h);
- }
- function c(h) {
- return at(
- n,
- p,
- // Note: we don’t need to reset the way `markdown-rs` does.
- t,
- "definitionDestination",
- "definitionDestinationLiteral",
- "definitionDestinationLiteralMarker",
- "definitionDestinationRaw",
- "definitionDestinationString"
- )(h);
- }
- function p(h) {
- return n.attempt(de, f, f)(h);
- }
- function f(h) {
- return z(h) ? O(n, x, "whitespace")(h) : x(h);
- }
- function x(h) {
- return h === null || C(h) ? (n.exit("definition"), e.parser.defined.push(u), r(h)) : t(h);
- }
-}
-function ye(n, r, t) {
- return e;
- function e(a) {
- return Z(a) ? dn(n, u)(a) : t(a);
- }
- function u(a) {
- return st(
- n,
- i,
- t,
- "definitionTitle",
- "definitionTitleMarker",
- "definitionTitleString"
- )(a);
- }
- function i(a) {
- return z(a) ? O(n, l, "whitespace")(a) : l(a);
- }
- function l(a) {
- return a === null || C(a) ? r(a) : t(a);
- }
-}
-const Se = {
- name: "hardBreakEscape",
- tokenize: Fe
-};
-function Fe(n, r, t) {
- return e;
- function e(i) {
- return n.enter("hardBreakEscape"), n.consume(i), u;
- }
- function u(i) {
- return C(i) ? (n.exit("hardBreakEscape"), r(i)) : t(i);
- }
-}
-const Ee = {
- name: "headingAtx",
- tokenize: we,
- resolve: Ce
-};
-function Ce(n, r) {
- let t = n.length - 2, e = 3, u, i;
- return n[e][1].type === "whitespace" && (e += 2), t - 2 > e && n[t][1].type === "whitespace" && (t -= 2), n[t][1].type === "atxHeadingSequence" && (e === t - 1 || t - 4 > e && n[t - 2][1].type === "whitespace") && (t -= e + 1 === t ? 2 : 4), t > e && (u = {
- type: "atxHeadingText",
- start: n[e][1].start,
- end: n[t][1].end
- }, i = {
- type: "chunkText",
- start: n[e][1].start,
- end: n[t][1].end,
- contentType: "text"
- }, tn(n, e, t - e + 1, [
- ["enter", u, r],
- ["enter", i, r],
- ["exit", i, r],
- ["exit", u, r]
- ])), n;
-}
-function we(n, r, t) {
- let e = 0;
- return u;
- function u(p) {
- return n.enter("atxHeading"), i(p);
- }
- function i(p) {
- return n.enter("atxHeadingSequence"), l(p);
- }
- function l(p) {
- return p === 35 && e++ < 6 ? (n.consume(p), l) : p === null || Z(p) ? (n.exit("atxHeadingSequence"), a(p)) : t(p);
- }
- function a(p) {
- return p === 35 ? (n.enter("atxHeadingSequence"), m(p)) : p === null || C(p) ? (n.exit("atxHeading"), r(p)) : z(p) ? O(n, a, "whitespace")(p) : (n.enter("atxHeadingText"), c(p));
- }
- function m(p) {
- return p === 35 ? (n.consume(p), m) : (n.exit("atxHeadingSequence"), a(p));
- }
- function c(p) {
- return p === null || p === 35 || Z(p) ? (n.exit("atxHeadingText"), a(p)) : (n.consume(p), c);
- }
-}
-const Ae = [
- "address",
- "article",
- "aside",
- "base",
- "basefont",
- "blockquote",
- "body",
- "caption",
- "center",
- "col",
- "colgroup",
- "dd",
- "details",
- "dialog",
- "dir",
- "div",
- "dl",
- "dt",
- "fieldset",
- "figcaption",
- "figure",
- "footer",
- "form",
- "frame",
- "frameset",
- "h1",
- "h2",
- "h3",
- "h4",
- "h5",
- "h6",
- "head",
- "header",
- "hr",
- "html",
- "iframe",
- "legend",
- "li",
- "link",
- "main",
- "menu",
- "menuitem",
- "nav",
- "noframes",
- "ol",
- "optgroup",
- "option",
- "p",
- "param",
- "search",
- "section",
- "summary",
- "table",
- "tbody",
- "td",
- "tfoot",
- "th",
- "thead",
- "title",
- "tr",
- "track",
- "ul"
-], Jn = ["pre", "script", "style", "textarea"], ze = {
- name: "htmlFlow",
- tokenize: Le,
- resolveTo: Be,
- concrete: !0
-}, Ie = {
- tokenize: De,
- partial: !0
-}, Te = {
- tokenize: Oe,
- partial: !0
-};
-function Be(n) {
- let r = n.length;
- for (; r-- && !(n[r][0] === "enter" && n[r][1].type === "htmlFlow"); )
- ;
- return r > 1 && n[r - 2][1].type === "linePrefix" && (n[r][1].start = n[r - 2][1].start, n[r + 1][1].start = n[r - 2][1].start, n.splice(r - 2, 2)), n;
-}
-function Le(n, r, t) {
- const e = this;
- let u, i, l, a, m;
- return c;
- function c(s) {
- return p(s);
- }
- function p(s) {
- return n.enter("htmlFlow"), n.enter("htmlFlowData"), n.consume(s), f;
- }
- function f(s) {
- return s === 33 ? (n.consume(s), x) : s === 47 ? (n.consume(s), i = !0, I) : s === 63 ? (n.consume(s), u = 3, e.interrupt ? r : o) : nn(s) ? (n.consume(s), l = String.fromCharCode(s), M) : t(s);
- }
- function x(s) {
- return s === 45 ? (n.consume(s), u = 2, h) : s === 91 ? (n.consume(s), u = 5, a = 0, A) : nn(s) ? (n.consume(s), u = 4, e.interrupt ? r : o) : t(s);
- }
- function h(s) {
- return s === 45 ? (n.consume(s), e.interrupt ? r : o) : t(s);
- }
- function A(s) {
- const K = "CDATA[";
- return s === K.charCodeAt(a++) ? (n.consume(s), a === K.length ? e.interrupt ? r : S : A) : t(s);
- }
- function I(s) {
- return nn(s) ? (n.consume(s), l = String.fromCharCode(s), M) : t(s);
- }
- function M(s) {
- if (s === null || s === 47 || s === 62 || Z(s)) {
- const K = s === 47, hn = l.toLowerCase();
- return !K && !i && Jn.includes(hn) ? (u = 1, e.interrupt ? r(s) : S(s)) : Ae.includes(l.toLowerCase()) ? (u = 6, K ? (n.consume(s), b) : e.interrupt ? r(s) : S(s)) : (u = 7, e.interrupt && !e.parser.lazy[e.now().line] ? t(s) : i ? j(s) : F(s));
- }
- return s === 45 || v(s) ? (n.consume(s), l += String.fromCharCode(s), M) : t(s);
- }
- function b(s) {
- return s === 62 ? (n.consume(s), e.interrupt ? r : S) : t(s);
- }
- function j(s) {
- return z(s) ? (n.consume(s), j) : V(s);
- }
- function F(s) {
- return s === 47 ? (n.consume(s), V) : s === 58 || s === 95 || nn(s) ? (n.consume(s), D) : z(s) ? (n.consume(s), F) : V(s);
- }
- function D(s) {
- return s === 45 || s === 46 || s === 58 || s === 95 || v(s) ? (n.consume(s), D) : _(s);
- }
- function _(s) {
- return s === 61 ? (n.consume(s), k) : z(s) ? (n.consume(s), _) : F(s);
- }
- function k(s) {
- return s === null || s === 60 || s === 61 || s === 62 || s === 96 ? t(s) : s === 34 || s === 39 ? (n.consume(s), m = s, T) : z(s) ? (n.consume(s), k) : H(s);
- }
- function T(s) {
- return s === m ? (n.consume(s), m = null, N) : s === null || C(s) ? t(s) : (n.consume(s), T);
- }
- function H(s) {
- return s === null || s === 34 || s === 39 || s === 47 || s === 60 || s === 61 || s === 62 || s === 96 || Z(s) ? _(s) : (n.consume(s), H);
- }
- function N(s) {
- return s === 47 || s === 62 || z(s) ? F(s) : t(s);
- }
- function V(s) {
- return s === 62 ? (n.consume(s), y) : t(s);
- }
- function y(s) {
- return s === null || C(s) ? S(s) : z(s) ? (n.consume(s), y) : t(s);
- }
- function S(s) {
- return s === 45 && u === 2 ? (n.consume(s), U) : s === 60 && u === 1 ? (n.consume(s), W) : s === 62 && u === 4 ? (n.consume(s), J) : s === 63 && u === 3 ? (n.consume(s), o) : s === 93 && u === 5 ? (n.consume(s), en) : C(s) && (u === 6 || u === 7) ? (n.exit("htmlFlowData"), n.check(
- Ie,
- rn,
- P
- )(s)) : s === null || C(s) ? (n.exit("htmlFlowData"), P(s)) : (n.consume(s), S);
- }
- function P(s) {
- return n.check(
- Te,
- R,
- rn
- )(s);
- }
- function R(s) {
- return n.enter("lineEnding"), n.consume(s), n.exit("lineEnding"), w;
- }
- function w(s) {
- return s === null || C(s) ? P(s) : (n.enter("htmlFlowData"), S(s));
- }
- function U(s) {
- return s === 45 ? (n.consume(s), o) : S(s);
- }
- function W(s) {
- return s === 47 ? (n.consume(s), l = "", G) : S(s);
- }
- function G(s) {
- if (s === 62) {
- const K = l.toLowerCase();
- return Jn.includes(K) ? (n.consume(s), J) : S(s);
- }
- return nn(s) && l.length < 8 ? (n.consume(s), l += String.fromCharCode(s), G) : S(s);
- }
- function en(s) {
- return s === 93 ? (n.consume(s), o) : S(s);
- }
- function o(s) {
- return s === 62 ? (n.consume(s), J) : s === 45 && u === 2 ? (n.consume(s), o) : S(s);
- }
- function J(s) {
- return s === null || C(s) ? (n.exit("htmlFlowData"), rn(s)) : (n.consume(s), J);
- }
- function rn(s) {
- return n.exit("htmlFlow"), r(s);
- }
-}
-function Oe(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return C(l) ? (n.enter("lineEnding"), n.consume(l), n.exit("lineEnding"), i) : t(l);
- }
- function i(l) {
- return e.parser.lazy[e.now().line] ? t(l) : r(l);
- }
-}
-function De(n, r, t) {
- return e;
- function e(u) {
- return n.enter("lineEnding"), n.consume(u), n.exit("lineEnding"), n.attempt(Sn, r, t);
- }
-}
-const Pe = {
- name: "htmlText",
- tokenize: _e
-};
-function _e(n, r, t) {
- const e = this;
- let u, i, l;
- return a;
- function a(o) {
- return n.enter("htmlText"), n.enter("htmlTextData"), n.consume(o), m;
- }
- function m(o) {
- return o === 33 ? (n.consume(o), c) : o === 47 ? (n.consume(o), _) : o === 63 ? (n.consume(o), F) : nn(o) ? (n.consume(o), H) : t(o);
- }
- function c(o) {
- return o === 45 ? (n.consume(o), p) : o === 91 ? (n.consume(o), i = 0, A) : nn(o) ? (n.consume(o), j) : t(o);
- }
- function p(o) {
- return o === 45 ? (n.consume(o), h) : t(o);
- }
- function f(o) {
- return o === null ? t(o) : o === 45 ? (n.consume(o), x) : C(o) ? (l = f, W(o)) : (n.consume(o), f);
- }
- function x(o) {
- return o === 45 ? (n.consume(o), h) : f(o);
- }
- function h(o) {
- return o === 62 ? U(o) : o === 45 ? x(o) : f(o);
- }
- function A(o) {
- const J = "CDATA[";
- return o === J.charCodeAt(i++) ? (n.consume(o), i === J.length ? I : A) : t(o);
- }
- function I(o) {
- return o === null ? t(o) : o === 93 ? (n.consume(o), M) : C(o) ? (l = I, W(o)) : (n.consume(o), I);
- }
- function M(o) {
- return o === 93 ? (n.consume(o), b) : I(o);
- }
- function b(o) {
- return o === 62 ? U(o) : o === 93 ? (n.consume(o), b) : I(o);
- }
- function j(o) {
- return o === null || o === 62 ? U(o) : C(o) ? (l = j, W(o)) : (n.consume(o), j);
- }
- function F(o) {
- return o === null ? t(o) : o === 63 ? (n.consume(o), D) : C(o) ? (l = F, W(o)) : (n.consume(o), F);
- }
- function D(o) {
- return o === 62 ? U(o) : F(o);
- }
- function _(o) {
- return nn(o) ? (n.consume(o), k) : t(o);
- }
- function k(o) {
- return o === 45 || v(o) ? (n.consume(o), k) : T(o);
- }
- function T(o) {
- return C(o) ? (l = T, W(o)) : z(o) ? (n.consume(o), T) : U(o);
- }
- function H(o) {
- return o === 45 || v(o) ? (n.consume(o), H) : o === 47 || o === 62 || Z(o) ? N(o) : t(o);
- }
- function N(o) {
- return o === 47 ? (n.consume(o), U) : o === 58 || o === 95 || nn(o) ? (n.consume(o), V) : C(o) ? (l = N, W(o)) : z(o) ? (n.consume(o), N) : U(o);
- }
- function V(o) {
- return o === 45 || o === 46 || o === 58 || o === 95 || v(o) ? (n.consume(o), V) : y(o);
- }
- function y(o) {
- return o === 61 ? (n.consume(o), S) : C(o) ? (l = y, W(o)) : z(o) ? (n.consume(o), y) : N(o);
- }
- function S(o) {
- return o === null || o === 60 || o === 61 || o === 62 || o === 96 ? t(o) : o === 34 || o === 39 ? (n.consume(o), u = o, P) : C(o) ? (l = S, W(o)) : z(o) ? (n.consume(o), S) : (n.consume(o), R);
- }
- function P(o) {
- return o === u ? (n.consume(o), u = void 0, w) : o === null ? t(o) : C(o) ? (l = P, W(o)) : (n.consume(o), P);
- }
- function R(o) {
- return o === null || o === 34 || o === 39 || o === 60 || o === 61 || o === 96 ? t(o) : o === 47 || o === 62 || Z(o) ? N(o) : (n.consume(o), R);
- }
- function w(o) {
- return o === 47 || o === 62 || Z(o) ? N(o) : t(o);
- }
- function U(o) {
- return o === 62 ? (n.consume(o), n.exit("htmlTextData"), n.exit("htmlText"), r) : t(o);
- }
- function W(o) {
- return n.exit("htmlTextData"), n.enter("lineEnding"), n.consume(o), n.exit("lineEnding"), G;
- }
- function G(o) {
- return z(o) ? O(
- n,
- en,
- "linePrefix",
- e.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
- )(o) : en(o);
- }
- function en(o) {
- return n.enter("htmlTextData"), l(o);
- }
-}
-const Dn = {
- name: "labelEnd",
- tokenize: Ne,
- resolveTo: He,
- resolveAll: qe
-}, Me = {
- tokenize: Ve
-}, je = {
- tokenize: We
-}, Re = {
- tokenize: Qe
-};
-function qe(n) {
- let r = -1;
- for (; ++r < n.length; ) {
- const t = n[r][1];
- (t.type === "labelImage" || t.type === "labelLink" || t.type === "labelEnd") && (n.splice(r + 1, t.type === "labelImage" ? 4 : 2), t.type = "data", r++);
- }
- return n;
-}
-function He(n, r) {
- let t = n.length, e = 0, u, i, l, a;
- for (; t--; )
- if (u = n[t][1], i) {
- if (u.type === "link" || u.type === "labelLink" && u._inactive)
- break;
- n[t][0] === "enter" && u.type === "labelLink" && (u._inactive = !0);
- } else if (l) {
- if (n[t][0] === "enter" && (u.type === "labelImage" || u.type === "labelLink") && !u._balanced && (i = t, u.type !== "labelLink")) {
- e = 2;
- break;
- }
- } else
- u.type === "labelEnd" && (l = t);
- const m = {
- type: n[i][1].type === "labelLink" ? "link" : "image",
- start: Object.assign({}, n[i][1].start),
- end: Object.assign({}, n[n.length - 1][1].end)
- }, c = {
- type: "label",
- start: Object.assign({}, n[i][1].start),
- end: Object.assign({}, n[l][1].end)
- }, p = {
- type: "labelText",
- start: Object.assign({}, n[i + e + 2][1].end),
- end: Object.assign({}, n[l - 2][1].start)
- };
- return a = [
- ["enter", m, r],
- ["enter", c, r]
- ], a = Y(a, n.slice(i + 1, i + e + 3)), a = Y(a, [["enter", p, r]]), a = Y(
- a,
- Ln(
- r.parser.constructs.insideSpan.null,
- n.slice(i + e + 4, l - 3),
- r
- )
- ), a = Y(a, [
- ["exit", p, r],
- n[l - 2],
- n[l - 1],
- ["exit", c, r]
- ]), a = Y(a, n.slice(l + 1)), a = Y(a, [["exit", m, r]]), tn(n, i, n.length, a), n;
-}
-function Ne(n, r, t) {
- const e = this;
- let u = e.events.length, i, l;
- for (; u--; )
- if ((e.events[u][1].type === "labelImage" || e.events[u][1].type === "labelLink") && !e.events[u][1]._balanced) {
- i = e.events[u][1];
- break;
- }
- return a;
- function a(x) {
- return i ? i._inactive ? f(x) : (l = e.parser.defined.includes(
- xn(
- e.sliceSerialize({
- start: i.end,
- end: e.now()
- })
- )
- ), n.enter("labelEnd"), n.enter("labelMarker"), n.consume(x), n.exit("labelMarker"), n.exit("labelEnd"), m) : t(x);
- }
- function m(x) {
- return x === 40 ? n.attempt(
- Me,
- p,
- l ? p : f
- )(x) : x === 91 ? n.attempt(
- je,
- p,
- l ? c : f
- )(x) : l ? p(x) : f(x);
- }
- function c(x) {
- return n.attempt(
- Re,
- p,
- f
- )(x);
- }
- function p(x) {
- return r(x);
- }
- function f(x) {
- return i._balanced = !0, t(x);
- }
-}
-function Ve(n, r, t) {
- return e;
- function e(f) {
- return n.enter("resource"), n.enter("resourceMarker"), n.consume(f), n.exit("resourceMarker"), u;
- }
- function u(f) {
- return Z(f) ? dn(n, i)(f) : i(f);
- }
- function i(f) {
- return f === 41 ? p(f) : at(
- n,
- l,
- a,
- "resourceDestination",
- "resourceDestinationLiteral",
- "resourceDestinationLiteralMarker",
- "resourceDestinationRaw",
- "resourceDestinationString",
- 32
- )(f);
- }
- function l(f) {
- return Z(f) ? dn(n, m)(f) : p(f);
- }
- function a(f) {
- return t(f);
- }
- function m(f) {
- return f === 34 || f === 39 || f === 40 ? st(
- n,
- c,
- t,
- "resourceTitle",
- "resourceTitleMarker",
- "resourceTitleString"
- )(f) : p(f);
- }
- function c(f) {
- return Z(f) ? dn(n, p)(f) : p(f);
- }
- function p(f) {
- return f === 41 ? (n.enter("resourceMarker"), n.consume(f), n.exit("resourceMarker"), n.exit("resource"), r) : t(f);
- }
-}
-function We(n, r, t) {
- const e = this;
- return u;
- function u(a) {
- return ot.call(
- e,
- n,
- i,
- l,
- "reference",
- "referenceMarker",
- "referenceString"
- )(a);
- }
- function i(a) {
- return e.parser.defined.includes(
- xn(
- e.sliceSerialize(e.events[e.events.length - 1][1]).slice(1, -1)
- )
- ) ? r(a) : t(a);
- }
- function l(a) {
- return t(a);
- }
-}
-function Qe(n, r, t) {
- return e;
- function e(i) {
- return n.enter("reference"), n.enter("referenceMarker"), n.consume(i), n.exit("referenceMarker"), u;
- }
- function u(i) {
- return i === 93 ? (n.enter("referenceMarker"), n.consume(i), n.exit("referenceMarker"), n.exit("reference"), r) : t(i);
- }
-}
-const Ue = {
- name: "labelStartImage",
- tokenize: $e,
- resolveAll: Dn.resolveAll
-};
-function $e(n, r, t) {
- const e = this;
- return u;
- function u(a) {
- return n.enter("labelImage"), n.enter("labelImageMarker"), n.consume(a), n.exit("labelImageMarker"), i;
- }
- function i(a) {
- return a === 91 ? (n.enter("labelMarker"), n.consume(a), n.exit("labelMarker"), n.exit("labelImage"), l) : t(a);
- }
- function l(a) {
- return a === 94 && "_hiddenFootnoteSupport" in e.parser.constructs ? t(a) : r(a);
- }
-}
-const Ze = {
- name: "labelStartLink",
- tokenize: Ye,
- resolveAll: Dn.resolveAll
-};
-function Ye(n, r, t) {
- const e = this;
- return u;
- function u(l) {
- return n.enter("labelLink"), n.enter("labelMarker"), n.consume(l), n.exit("labelMarker"), n.exit("labelLink"), i;
- }
- function i(l) {
- return l === 94 && "_hiddenFootnoteSupport" in e.parser.constructs ? t(l) : r(l);
- }
-}
-const wn = {
- name: "lineEnding",
- tokenize: Ge
-};
-function Ge(n, r) {
- return t;
- function t(e) {
- return n.enter("lineEnding"), n.consume(e), n.exit("lineEnding"), O(n, r, "linePrefix");
- }
-}
-const bn = {
- name: "thematicBreak",
- tokenize: Je
-};
-function Je(n, r, t) {
- let e = 0, u;
- return i;
- function i(c) {
- return n.enter("thematicBreak"), l(c);
- }
- function l(c) {
- return u = c, a(c);
- }
- function a(c) {
- return c === u ? (n.enter("thematicBreakSequence"), m(c)) : e >= 3 && (c === null || C(c)) ? (n.exit("thematicBreak"), r(c)) : t(c);
- }
- function m(c) {
- return c === u ? (n.consume(c), e++, m) : (n.exit("thematicBreakSequence"), z(c) ? O(n, a, "whitespace")(c) : a(c));
- }
-}
-const $ = {
- name: "list",
- tokenize: ve,
- continuation: {
- tokenize: nr
- },
- exit: er
-}, Ke = {
- tokenize: rr,
- partial: !0
-}, Xe = {
- tokenize: tr,
- partial: !0
-};
-function ve(n, r, t) {
- const e = this, u = e.events[e.events.length - 1];
- let i = u && u[1].type === "linePrefix" ? u[2].sliceSerialize(u[1], !0).length : 0, l = 0;
- return a;
- function a(h) {
- const A = e.containerState.type || (h === 42 || h === 43 || h === 45 ? "listUnordered" : "listOrdered");
- if (A === "listUnordered" ? !e.containerState.marker || h === e.containerState.marker : zn(h)) {
- if (e.containerState.type || (e.containerState.type = A, n.enter(A, {
- _container: !0
- })), A === "listUnordered")
- return n.enter("listItemPrefix"), h === 42 || h === 45 ? n.check(bn, t, c)(h) : c(h);
- if (!e.interrupt || h === 49)
- return n.enter("listItemPrefix"), n.enter("listItemValue"), m(h);
- }
- return t(h);
- }
- function m(h) {
- return zn(h) && ++l < 10 ? (n.consume(h), m) : (!e.interrupt || l < 2) && (e.containerState.marker ? h === e.containerState.marker : h === 41 || h === 46) ? (n.exit("listItemValue"), c(h)) : t(h);
- }
- function c(h) {
- return n.enter("listItemMarker"), n.consume(h), n.exit("listItemMarker"), e.containerState.marker = e.containerState.marker || h, n.check(
- Sn,
- // Can’t be empty when interrupting.
- e.interrupt ? t : p,
- n.attempt(
- Ke,
- x,
- f
- )
- );
- }
- function p(h) {
- return e.containerState.initialBlankLine = !0, i++, x(h);
- }
- function f(h) {
- return z(h) ? (n.enter("listItemPrefixWhitespace"), n.consume(h), n.exit("listItemPrefixWhitespace"), x) : t(h);
- }
- function x(h) {
- return e.containerState.size = i + e.sliceSerialize(n.exit("listItemPrefix"), !0).length, r(h);
- }
-}
-function nr(n, r, t) {
- const e = this;
- return e.containerState._closeFlow = void 0, n.check(Sn, u, i);
- function u(a) {
- return e.containerState.furtherBlankLines = e.containerState.furtherBlankLines || e.containerState.initialBlankLine, O(
- n,
- r,
- "listItemIndent",
- e.containerState.size + 1
- )(a);
- }
- function i(a) {
- return e.containerState.furtherBlankLines || !z(a) ? (e.containerState.furtherBlankLines = void 0, e.containerState.initialBlankLine = void 0, l(a)) : (e.containerState.furtherBlankLines = void 0, e.containerState.initialBlankLine = void 0, n.attempt(Xe, r, l)(a));
- }
- function l(a) {
- return e.containerState._closeFlow = !0, e.interrupt = void 0, O(
- n,
- n.attempt($, r, t),
- "linePrefix",
- e.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
- )(a);
- }
-}
-function tr(n, r, t) {
- const e = this;
- return O(
- n,
- u,
- "listItemIndent",
- e.containerState.size + 1
- );
- function u(i) {
- const l = e.events[e.events.length - 1];
- return l && l[1].type === "listItemIndent" && l[2].sliceSerialize(l[1], !0).length === e.containerState.size ? r(i) : t(i);
- }
-}
-function er(n) {
- n.exit(this.containerState.type);
-}
-function rr(n, r, t) {
- const e = this;
- return O(
- n,
- u,
- "listItemPrefixWhitespace",
- e.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4 + 1
- );
- function u(i) {
- const l = e.events[e.events.length - 1];
- return !z(i) && l && l[1].type === "listItemPrefixWhitespace" ? r(i) : t(i);
- }
-}
-const Kn = {
- name: "setextUnderline",
- tokenize: ur,
- resolveTo: ir
-};
-function ir(n, r) {
- let t = n.length, e, u, i;
- for (; t--; )
- if (n[t][0] === "enter") {
- if (n[t][1].type === "content") {
- e = t;
- break;
- }
- n[t][1].type === "paragraph" && (u = t);
- } else
- n[t][1].type === "content" && n.splice(t, 1), !i && n[t][1].type === "definition" && (i = t);
- const l = {
- type: "setextHeading",
- start: Object.assign({}, n[u][1].start),
- end: Object.assign({}, n[n.length - 1][1].end)
- };
- return n[u][1].type = "setextHeadingText", i ? (n.splice(u, 0, ["enter", l, r]), n.splice(i + 1, 0, ["exit", n[e][1], r]), n[e][1].end = Object.assign({}, n[i][1].end)) : n[e][1] = l, n.push(["exit", l, r]), n;
-}
-function ur(n, r, t) {
- const e = this;
- let u;
- return i;
- function i(c) {
- let p = e.events.length, f;
- for (; p--; )
- if (e.events[p][1].type !== "lineEnding" && e.events[p][1].type !== "linePrefix" && e.events[p][1].type !== "content") {
- f = e.events[p][1].type === "paragraph";
- break;
- }
- return !e.parser.lazy[e.now().line] && (e.interrupt || f) ? (n.enter("setextHeadingLine"), u = c, l(c)) : t(c);
- }
- function l(c) {
- return n.enter("setextHeadingLineSequence"), a(c);
- }
- function a(c) {
- return c === u ? (n.consume(c), a) : (n.exit("setextHeadingLineSequence"), z(c) ? O(n, m, "lineSuffix")(c) : m(c));
- }
- function m(c) {
- return c === null || C(c) ? (n.exit("setextHeadingLine"), r(c)) : t(c);
- }
-}
-const lr = {
- tokenize: ar
-};
-function ar(n) {
- const r = this, t = n.attempt(
- // Try to parse a blank line.
- Sn,
- e,
- // Try to parse initial flow (essentially, only code).
- n.attempt(
- this.parser.constructs.flowInitial,
- u,
- O(
- n,
- n.attempt(
- this.parser.constructs.flow,
- u,
- n.attempt(pe, u)
- ),
- "linePrefix"
- )
- )
- );
- return t;
- function e(i) {
- if (i === null) {
- n.consume(i);
- return;
- }
- return n.enter("lineEndingBlank"), n.consume(i), n.exit("lineEndingBlank"), r.currentConstruct = void 0, t;
- }
- function u(i) {
- if (i === null) {
- n.consume(i);
- return;
- }
- return n.enter("lineEnding"), n.consume(i), n.exit("lineEnding"), r.currentConstruct = void 0, t;
- }
-}
-const or = {
- resolveAll: ht()
-}, sr = ct("string"), cr = ct("text");
-function ct(n) {
- return {
- tokenize: r,
- resolveAll: ht(
- n === "text" ? hr : void 0
- )
- };
- function r(t) {
- const e = this, u = this.parser.constructs[n], i = t.attempt(u, l, a);
- return l;
- function l(p) {
- return c(p) ? i(p) : a(p);
- }
- function a(p) {
- if (p === null) {
- t.consume(p);
- return;
- }
- return t.enter("data"), t.consume(p), m;
- }
- function m(p) {
- return c(p) ? (t.exit("data"), i(p)) : (t.consume(p), m);
- }
- function c(p) {
- if (p === null)
- return !0;
- const f = u[p];
- let x = -1;
- if (f)
- for (; ++x < f.length; ) {
- const h = f[x];
- if (!h.previous || h.previous.call(e, e.previous))
- return !0;
- }
- return !1;
- }
- }
-}
-function ht(n) {
- return r;
- function r(t, e) {
- let u = -1, i;
- for (; ++u <= t.length; )
- i === void 0 ? t[u] && t[u][1].type === "data" && (i = u, u++) : (!t[u] || t[u][1].type !== "data") && (u !== i + 2 && (t[i][1].end = t[u - 1][1].end, t.splice(i + 2, u - i - 2), u = i + 2), i = void 0);
- return n ? n(t, e) : t;
- }
-}
-function hr(n, r) {
- let t = 0;
- for (; ++t <= n.length; )
- if ((t === n.length || n[t][1].type === "lineEnding") && n[t - 1][1].type === "data") {
- const e = n[t - 1][1], u = r.sliceStream(e);
- let i = u.length, l = -1, a = 0, m;
- for (; i--; ) {
- const c = u[i];
- if (typeof c == "string") {
- for (l = c.length; c.charCodeAt(l - 1) === 32; )
- a++, l--;
- if (l)
- break;
- l = -1;
- } else if (c === -2)
- m = !0, a++;
- else if (c !== -1) {
- i++;
- break;
- }
- }
- if (a) {
- const c = {
- type: t === n.length || m || a < 2 ? "lineSuffix" : "hardBreakTrailing",
- start: {
- line: e.end.line,
- column: e.end.column - a,
- offset: e.end.offset - a,
- _index: e.start._index + i,
- _bufferIndex: i ? l : e.start._bufferIndex + l
- },
- end: Object.assign({}, e.end)
- };
- e.end = Object.assign({}, c.start), e.start.offset === e.end.offset ? Object.assign(e, c) : (n.splice(
- t,
- 0,
- ["enter", c, r],
- ["exit", c, r]
- ), t += 2);
- }
- t++;
- }
- return n;
-}
-function pr(n, r, t) {
- let e = Object.assign(
- t ? Object.assign({}, t) : {
- line: 1,
- column: 1,
- offset: 0
- },
- {
- _index: 0,
- _bufferIndex: -1
- }
- );
- const u = {}, i = [];
- let l = [], a = [];
- const m = {
- consume: j,
- enter: F,
- exit: D,
- attempt: T(_),
- check: T(k),
- interrupt: T(k, {
- interrupt: !0
- })
- }, c = {
- previous: null,
- code: null,
- containerState: {},
- events: [],
- parser: n,
- sliceStream: h,
- sliceSerialize: x,
- now: A,
- defineSkip: I,
- write: f
- };
- let p = r.tokenize.call(c, m);
- return r.resolveAll && i.push(r), c;
- function f(y) {
- return l = Y(l, y), M(), l[l.length - 1] !== null ? [] : (H(r, 0), c.events = Ln(i, c.events, c), c.events);
- }
- function x(y, S) {
- return mr(h(y), S);
- }
- function h(y) {
- return fr(l, y);
- }
- function A() {
- const { line: y, column: S, offset: P, _index: R, _bufferIndex: w } = e;
- return {
- line: y,
- column: S,
- offset: P,
- _index: R,
- _bufferIndex: w
- };
- }
- function I(y) {
- u[y.line] = y.column, V();
- }
- function M() {
- let y;
- for (; e._index < l.length; ) {
- const S = l[e._index];
- if (typeof S == "string")
- for (y = e._index, e._bufferIndex < 0 && (e._bufferIndex = 0); e._index === y && e._bufferIndex < S.length; )
- b(S.charCodeAt(e._bufferIndex));
- else
- b(S);
- }
- }
- function b(y) {
- p = p(y);
- }
- function j(y) {
- C(y) ? (e.line++, e.column = 1, e.offset += y === -3 ? 2 : 1, V()) : y !== -1 && (e.column++, e.offset++), e._bufferIndex < 0 ? e._index++ : (e._bufferIndex++, e._bufferIndex === l[e._index].length && (e._bufferIndex = -1, e._index++)), c.previous = y;
- }
- function F(y, S) {
- const P = S || {};
- return P.type = y, P.start = A(), c.events.push(["enter", P, c]), a.push(P), P;
- }
- function D(y) {
- const S = a.pop();
- return S.end = A(), c.events.push(["exit", S, c]), S;
- }
- function _(y, S) {
- H(y, S.from);
- }
- function k(y, S) {
- S.restore();
- }
- function T(y, S) {
- return P;
- function P(R, w, U) {
- let W, G, en, o;
- return Array.isArray(R) ? rn(R) : "tokenize" in R ? (
- // @ts-expect-error Looks like a construct.
- rn([R])
- ) : J(R);
- function J(Q) {
- return pn;
- function pn(an) {
- const fn = an !== null && Q[an], mn = an !== null && Q.null, Fn = [
- // To do: add more extension tests.
- /* c8 ignore next 2 */
- ...Array.isArray(fn) ? fn : fn ? [fn] : [],
- ...Array.isArray(mn) ? mn : mn ? [mn] : []
- ];
- return rn(Fn)(an);
- }
- }
- function rn(Q) {
- return W = Q, G = 0, Q.length === 0 ? U : s(Q[G]);
- }
- function s(Q) {
- return pn;
- function pn(an) {
- return o = N(), en = Q, Q.partial || (c.currentConstruct = Q), Q.name && c.parser.constructs.disable.null.includes(Q.name) ? hn() : Q.tokenize.call(
- // If we do have fields, create an object w/ `context` as its
- // prototype.
- // This allows a “live binding”, which is needed for `interrupt`.
- S ? Object.assign(Object.create(c), S) : c,
- m,
- K,
- hn
- )(an);
- }
- }
- function K(Q) {
- return y(en, o), w;
- }
- function hn(Q) {
- return o.restore(), ++G < W.length ? s(W[G]) : U;
- }
- }
- }
- function H(y, S) {
- y.resolveAll && !i.includes(y) && i.push(y), y.resolve && tn(
- c.events,
- S,
- c.events.length - S,
- y.resolve(c.events.slice(S), c)
- ), y.resolveTo && (c.events = y.resolveTo(c.events, c));
- }
- function N() {
- const y = A(), S = c.previous, P = c.currentConstruct, R = c.events.length, w = Array.from(a);
- return {
- restore: U,
- from: R
- };
- function U() {
- e = y, c.previous = S, c.currentConstruct = P, c.events.length = R, a = w, V();
- }
- }
- function V() {
- e.line in u && e.column < 2 && (e.column = u[e.line], e.offset += u[e.line] - 1);
- }
-}
-function fr(n, r) {
- const t = r.start._index, e = r.start._bufferIndex, u = r.end._index, i = r.end._bufferIndex;
- let l;
- if (t === u)
- l = [n[t].slice(e, i)];
- else {
- if (l = n.slice(t, u), e > -1) {
- const a = l[0];
- typeof a == "string" ? l[0] = a.slice(e) : l.shift();
- }
- i > 0 && l.push(n[u].slice(0, i));
- }
- return l;
-}
-function mr(n, r) {
- let t = -1;
- const e = [];
- let u;
- for (; ++t < n.length; ) {
- const i = n[t];
- let l;
- if (typeof i == "string")
- l = i;
- else
- switch (i) {
- case -5: {
- l = "\r";
- break;
- }
- case -4: {
- l = `
-`;
- break;
- }
- case -3: {
- l = `\r
-`;
- break;
- }
- case -2: {
- l = r ? " " : " ";
- break;
- }
- case -1: {
- if (!r && u)
- continue;
- l = " ";
- break;
- }
- default:
- l = String.fromCharCode(i);
- }
- u = i === -2, e.push(l);
- }
- return e.join("");
-}
-const xr = {
- 42: $,
- 43: $,
- 45: $,
- 48: $,
- 49: $,
- 50: $,
- 51: $,
- 52: $,
- 53: $,
- 54: $,
- 55: $,
- 56: $,
- 57: $,
- 62: rt
-}, gr = {
- 91: ke
-}, kr = {
- [-2]: Cn,
- [-1]: Cn,
- 32: Cn
-}, dr = {
- 35: Ee,
- 42: bn,
- 45: [Kn, bn],
- 60: ze,
- 61: Kn,
- 95: bn,
- 96: Gn,
- 126: Gn
-}, br = {
- 38: ut,
- 92: it
-}, yr = {
- [-5]: wn,
- [-4]: wn,
- [-3]: wn,
- 33: Ue,
- 38: ut,
- 42: In,
- 60: [Yt, Pe],
- 91: Ze,
- 92: [Se, it],
- 93: Dn,
- 95: In,
- 96: ae
-}, Sr = {
- null: [In, or]
-}, Fr = {
- null: [42, 95]
-}, Er = {
- null: []
-}, Cr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
- __proto__: null,
- attentionMarkers: Fr,
- contentInitial: gr,
- disable: Er,
- document: xr,
- flow: dr,
- flowInitial: kr,
- insideSpan: Sr,
- string: br,
- text: yr
-}, Symbol.toStringTag, { value: "Module" }));
-function wr(n) {
- const t = (
- /** @type {FullNormalizedExtension} */
- Ot([Cr, ...(n || {}).extensions || []])
- ), e = {
- defined: [],
- lazy: {},
- constructs: t,
- content: u(Nt),
- document: u(Wt),
- flow: u(lr),
- string: u(sr),
- text: u(cr)
- };
- return e;
- function u(i) {
- return l;
- function l(a) {
- return pr(e, i, a);
- }
- }
-}
-const Xn = /[\0\t\n\r]/g;
-function Ar() {
- let n = 1, r = "", t = !0, e;
- return u;
- function u(i, l, a) {
- const m = [];
- let c, p, f, x, h;
- for (i = r + i.toString(l), f = 0, r = "", t && (i.charCodeAt(0) === 65279 && f++, t = void 0); f < i.length; ) {
- if (Xn.lastIndex = f, c = Xn.exec(i), x = c && c.index !== void 0 ? c.index : i.length, h = i.charCodeAt(x), !c) {
- r = i.slice(f);
- break;
- }
- if (h === 10 && f === x && e)
- m.push(-3), e = void 0;
- else
- switch (e && (m.push(-5), e = void 0), f < x && (m.push(i.slice(f, x)), n += x - f), h) {
- case 0: {
- m.push(65533), n++;
- break;
- }
- case 9: {
- for (p = Math.ceil(n / 4) * 4, m.push(-2); n++ < p; )
- m.push(-1);
- break;
- }
- case 10: {
- m.push(-4), n = 1;
- break;
- }
- default:
- e = !0, n = 1;
- }
- f = x + 1;
- }
- return a && (e && m.push(-5), r && m.push(r), m.push(null)), m;
- }
-}
-function zr(n) {
- for (; !lt(n); )
- ;
- return n;
-}
-function pt(n, r) {
- const t = Number.parseInt(n, r);
- return (
- // C0 except for HT, LF, FF, CR, space.
- t < 9 || t === 11 || t > 13 && t < 32 || // Control character (DEL) of C0, and C1 controls.
- t > 126 && t < 160 || // Lone high surrogates and low surrogates.
- t > 55295 && t < 57344 || // Noncharacters.
- t > 64975 && t < 65008 || (t & 65535) === 65535 || (t & 65535) === 65534 || // Out of range
- t > 1114111 ? "�" : String.fromCharCode(t)
- );
-}
-const Ir = /\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;
-function Tr(n) {
- return n.replace(Ir, Br);
-}
-function Br(n, r, t) {
- if (r)
- return r;
- if (t.charCodeAt(0) === 35) {
- const u = t.charCodeAt(1), i = u === 120 || u === 88;
- return pt(t.slice(i ? 2 : 1), i ? 16 : 10);
- }
- return On(t) || n;
-}
-function yn(n) {
- return !n || typeof n != "object" ? "" : "position" in n || "type" in n ? vn(n.position) : "start" in n || "end" in n ? vn(n) : "line" in n || "column" in n ? Tn(n) : "";
-}
-function Tn(n) {
- return nt(n && n.line) + ":" + nt(n && n.column);
-}
-function vn(n) {
- return Tn(n && n.start) + "-" + Tn(n && n.end);
-}
-function nt(n) {
- return n && typeof n == "number" ? n : 1;
-}
-const ft = {}.hasOwnProperty, mt = (
- /**
- * @type {(
- * ((value: Value, encoding: Encoding, options?: Options | null | undefined) => Root) &
- * ((value: Value, options?: Options | null | undefined) => Root)
- * )}
- */
- /**
- * @param {Value} value
- * @param {Encoding | Options | null | undefined} [encoding]
- * @param {Options | null | undefined} [options]
- * @returns {Root}
- */
- function(n, r, t) {
- return typeof r != "string" && (t = r, r = void 0), Lr(t)(
- zr(
- wr(t).document().write(Ar()(n, r, !0))
- )
- );
- }
-);
-function Lr(n) {
- const r = {
- transforms: [],
- canContainEols: ["emphasis", "fragment", "heading", "paragraph", "strong"],
- enter: {
- autolink: a(Hn),
- autolinkProtocol: y,
- autolinkEmail: y,
- atxHeading: a(jn),
- blockQuote: a(Fn),
- characterEscape: y,
- characterReference: y,
- codeFenced: a(Mn),
- codeFencedFenceInfo: m,
- codeFencedFenceMeta: m,
- codeIndented: a(Mn, m),
- codeText: a(kt, m),
- codeTextData: y,
- data: y,
- codeFlowValue: y,
- definition: a(dt),
- definitionDestinationString: m,
- definitionLabelString: m,
- definitionTitleString: m,
- emphasis: a(bt),
- hardBreakEscape: a(Rn),
- hardBreakTrailing: a(Rn),
- htmlFlow: a(qn, m),
- htmlFlowData: y,
- htmlText: a(qn, m),
- htmlTextData: y,
- image: a(yt),
- label: m,
- link: a(Hn),
- listItem: a(St),
- listItemValue: A,
- listOrdered: a(Nn, h),
- listUnordered: a(Nn),
- paragraph: a(Ft),
- reference: hn,
- referenceString: m,
- resourceDestinationString: m,
- resourceTitleString: m,
- setextHeading: a(jn),
- strong: a(Et),
- thematicBreak: a(wt)
- },
- exit: {
- atxHeading: p(),
- atxHeadingSequence: T,
- autolink: p(),
- autolinkEmail: mn,
- autolinkProtocol: fn,
- blockQuote: p(),
- characterEscapeValue: S,
- characterReferenceMarkerHexadecimal: pn,
- characterReferenceMarkerNumeric: pn,
- characterReferenceValue: an,
- codeFenced: p(j),
- codeFencedFence: b,
- codeFencedFenceInfo: I,
- codeFencedFenceMeta: M,
- codeFlowValue: S,
- codeIndented: p(F),
- codeText: p(W),
- codeTextData: S,
- data: S,
- definition: p(),
- definitionDestinationString: k,
- definitionLabelString: D,
- definitionTitleString: _,
- emphasis: p(),
- hardBreakEscape: p(R),
- hardBreakTrailing: p(R),
- htmlFlow: p(w),
- htmlFlowData: S,
- htmlText: p(U),
- htmlTextData: S,
- image: p(en),
- label: J,
- labelText: o,
- lineEnding: P,
- link: p(G),
- listItem: p(),
- listOrdered: p(),
- listUnordered: p(),
- paragraph: p(),
- referenceString: Q,
- resourceDestinationString: rn,
- resourceTitleString: s,
- resource: K,
- setextHeading: p(V),
- setextHeadingLineSequence: N,
- setextHeadingText: H,
- strong: p(),
- thematicBreak: p()
- }
- };
- xt(r, (n || {}).mdastExtensions || []);
- const t = {};
- return e;
- function e(g) {
- let d = {
- type: "root",
- children: []
- };
- const E = {
- stack: [d],
- tokenStack: [],
- config: r,
- enter: c,
- exit: f,
- buffer: m,
- resume: x,
- setData: i,
- getData: l
- }, B = [];
- let L = -1;
- for (; ++L < g.length; )
- if (g[L][1].type === "listOrdered" || g[L][1].type === "listUnordered")
- if (g[L][0] === "enter")
- B.push(L);
- else {
- const X = B.pop();
- L = u(g, X, L);
- }
- for (L = -1; ++L < g.length; ) {
- const X = r[g[L][0]];
- ft.call(X, g[L][1].type) && X[g[L][1].type].call(
- Object.assign(
- {
- sliceSerialize: g[L][2].sliceSerialize
- },
- E
- ),
- g[L][1]
- );
- }
- if (E.tokenStack.length > 0) {
- const X = E.tokenStack[E.tokenStack.length - 1];
- (X[1] || tt).call(E, void 0, X[0]);
- }
- for (d.position = {
- start: sn(
- g.length > 0 ? g[0][1].start : {
- line: 1,
- column: 1,
- offset: 0
- }
- ),
- end: sn(
- g.length > 0 ? g[g.length - 2][1].end : {
- line: 1,
- column: 1,
- offset: 0
- }
- )
- }, L = -1; ++L < r.transforms.length; )
- d = r.transforms[L](d) || d;
- return d;
- }
- function u(g, d, E) {
- let B = d - 1, L = -1, X = !1, on, un, gn, kn;
- for (; ++B <= E; ) {
- const q = g[B];
- if (q[1].type === "listUnordered" || q[1].type === "listOrdered" || q[1].type === "blockQuote" ? (q[0] === "enter" ? L++ : L--, kn = void 0) : q[1].type === "lineEndingBlank" ? q[0] === "enter" && (on && !kn && !L && !gn && (gn = B), kn = void 0) : q[1].type === "linePrefix" || q[1].type === "listItemValue" || q[1].type === "listItemMarker" || q[1].type === "listItemPrefix" || q[1].type === "listItemPrefixWhitespace" || (kn = void 0), !L && q[0] === "enter" && q[1].type === "listItemPrefix" || L === -1 && q[0] === "exit" && (q[1].type === "listUnordered" || q[1].type === "listOrdered")) {
- if (on) {
- let En = B;
- for (un = void 0; En--; ) {
- const ln = g[En];
- if (ln[1].type === "lineEnding" || ln[1].type === "lineEndingBlank") {
- if (ln[0] === "exit")
- continue;
- un && (g[un][1].type = "lineEndingBlank", X = !0), ln[1].type = "lineEnding", un = En;
- } else if (!(ln[1].type === "linePrefix" || ln[1].type === "blockQuotePrefix" || ln[1].type === "blockQuotePrefixWhitespace" || ln[1].type === "blockQuoteMarker" || ln[1].type === "listItemIndent"))
- break;
- }
- gn && (!un || gn < un) && (on._spread = !0), on.end = Object.assign(
- {},
- un ? g[un][1].start : q[1].end
- ), g.splice(un || B, 0, ["exit", on, q[2]]), B++, E++;
- }
- q[1].type === "listItemPrefix" && (on = {
- type: "listItem",
- _spread: !1,
- start: Object.assign({}, q[1].start),
- // @ts-expect-error: we’ll add `end` in a second.
- end: void 0
- }, g.splice(B, 0, ["enter", on, q[2]]), B++, E++, gn = void 0, kn = !0);
- }
- }
- return g[d][1]._spread = X, E;
- }
- function i(g, d) {
- t[g] = d;
- }
- function l(g) {
- return t[g];
- }
- function a(g, d) {
- return E;
- function E(B) {
- c.call(this, g(B), B), d && d.call(this, B);
- }
- }
- function m() {
- this.stack.push({
- type: "fragment",
- children: []
- });
- }
- function c(g, d, E) {
- return this.stack[this.stack.length - 1].children.push(g), this.stack.push(g), this.tokenStack.push([d, E]), g.position = {
- start: sn(d.start)
- }, g;
- }
- function p(g) {
- return d;
- function d(E) {
- g && g.call(this, E), f.call(this, E);
- }
- }
- function f(g, d) {
- const E = this.stack.pop(), B = this.tokenStack.pop();
- if (B)
- B[0].type !== g.type && (d ? d.call(this, g, B[0]) : (B[1] || tt).call(this, g, B[0]));
- else
- throw new Error(
- "Cannot close `" + g.type + "` (" + yn({
- start: g.start,
- end: g.end
- }) + "): it’s not open"
- );
- return E.position.end = sn(g.end), E;
- }
- function x() {
- return Bt(this.stack.pop());
- }
- function h() {
- i("expectingFirstListItemValue", !0);
- }
- function A(g) {
- if (l("expectingFirstListItemValue")) {
- const d = this.stack[this.stack.length - 2];
- d.start = Number.parseInt(this.sliceSerialize(g), 10), i("expectingFirstListItemValue");
- }
- }
- function I() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.lang = g;
- }
- function M() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.meta = g;
- }
- function b() {
- l("flowCodeInside") || (this.buffer(), i("flowCodeInside", !0));
- }
- function j() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.value = g.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""), i("flowCodeInside");
- }
- function F() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.value = g.replace(/(\r?\n|\r)$/g, "");
- }
- function D(g) {
- const d = this.resume(), E = this.stack[this.stack.length - 1];
- E.label = d, E.identifier = xn(
- this.sliceSerialize(g)
- ).toLowerCase();
- }
- function _() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.title = g;
- }
- function k() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.url = g;
- }
- function T(g) {
- const d = this.stack[this.stack.length - 1];
- if (!d.depth) {
- const E = this.sliceSerialize(g).length;
- d.depth = E;
- }
- }
- function H() {
- i("setextHeadingSlurpLineEnding", !0);
- }
- function N(g) {
- const d = this.stack[this.stack.length - 1];
- d.depth = this.sliceSerialize(g).charCodeAt(0) === 61 ? 1 : 2;
- }
- function V() {
- i("setextHeadingSlurpLineEnding");
- }
- function y(g) {
- const d = this.stack[this.stack.length - 1];
- let E = d.children[d.children.length - 1];
- (!E || E.type !== "text") && (E = Ct(), E.position = {
- start: sn(g.start)
- }, d.children.push(E)), this.stack.push(E);
- }
- function S(g) {
- const d = this.stack.pop();
- d.value += this.sliceSerialize(g), d.position.end = sn(g.end);
- }
- function P(g) {
- const d = this.stack[this.stack.length - 1];
- if (l("atHardBreak")) {
- const E = d.children[d.children.length - 1];
- E.position.end = sn(g.end), i("atHardBreak");
- return;
- }
- !l("setextHeadingSlurpLineEnding") && r.canContainEols.includes(d.type) && (y.call(this, g), S.call(this, g));
- }
- function R() {
- i("atHardBreak", !0);
- }
- function w() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.value = g;
- }
- function U() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.value = g;
- }
- function W() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.value = g;
- }
- function G() {
- const g = this.stack[this.stack.length - 1];
- if (l("inReference")) {
- const d = l("referenceType") || "shortcut";
- g.type += "Reference", g.referenceType = d, delete g.url, delete g.title;
- } else
- delete g.identifier, delete g.label;
- i("referenceType");
- }
- function en() {
- const g = this.stack[this.stack.length - 1];
- if (l("inReference")) {
- const d = l("referenceType") || "shortcut";
- g.type += "Reference", g.referenceType = d, delete g.url, delete g.title;
- } else
- delete g.identifier, delete g.label;
- i("referenceType");
- }
- function o(g) {
- const d = this.sliceSerialize(g), E = this.stack[this.stack.length - 2];
- E.label = Tr(d), E.identifier = xn(d).toLowerCase();
- }
- function J() {
- const g = this.stack[this.stack.length - 1], d = this.resume(), E = this.stack[this.stack.length - 1];
- if (i("inReference", !0), E.type === "link") {
- const B = g.children;
- E.children = B;
- } else
- E.alt = d;
- }
- function rn() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.url = g;
- }
- function s() {
- const g = this.resume(), d = this.stack[this.stack.length - 1];
- d.title = g;
- }
- function K() {
- i("inReference");
- }
- function hn() {
- i("referenceType", "collapsed");
- }
- function Q(g) {
- const d = this.resume(), E = this.stack[this.stack.length - 1];
- E.label = d, E.identifier = xn(
- this.sliceSerialize(g)
- ).toLowerCase(), i("referenceType", "full");
- }
- function pn(g) {
- i("characterReferenceType", g.type);
- }
- function an(g) {
- const d = this.sliceSerialize(g), E = l("characterReferenceType");
- let B;
- E ? (B = pt(
- d,
- E === "characterReferenceMarkerNumeric" ? 10 : 16
- ), i("characterReferenceType")) : B = On(d);
- const L = this.stack.pop();
- L.value += B, L.position.end = sn(g.end);
- }
- function fn(g) {
- S.call(this, g);
- const d = this.stack[this.stack.length - 1];
- d.url = this.sliceSerialize(g);
- }
- function mn(g) {
- S.call(this, g);
- const d = this.stack[this.stack.length - 1];
- d.url = "mailto:" + this.sliceSerialize(g);
- }
- function Fn() {
- return {
- type: "blockquote",
- children: []
- };
- }
- function Mn() {
- return {
- type: "code",
- lang: null,
- meta: null,
- value: ""
- };
- }
- function kt() {
- return {
- type: "inlineCode",
- value: ""
- };
- }
- function dt() {
- return {
- type: "definition",
- identifier: "",
- label: null,
- title: null,
- url: ""
- };
- }
- function bt() {
- return {
- type: "emphasis",
- children: []
- };
- }
- function jn() {
- return {
- type: "heading",
- depth: void 0,
- children: []
- };
- }
- function Rn() {
- return {
- type: "break"
- };
- }
- function qn() {
- return {
- type: "html",
- value: ""
- };
- }
- function yt() {
- return {
- type: "image",
- title: null,
- url: "",
- alt: null
- };
- }
- function Hn() {
- return {
- type: "link",
- title: null,
- url: "",
- children: []
- };
- }
- function Nn(g) {
- return {
- type: "list",
- ordered: g.type === "listOrdered",
- start: null,
- spread: g._spread,
- children: []
- };
- }
- function St(g) {
- return {
- type: "listItem",
- spread: g._spread,
- checked: null,
- children: []
- };
- }
- function Ft() {
- return {
- type: "paragraph",
- children: []
- };
- }
- function Et() {
- return {
- type: "strong",
- children: []
- };
- }
- function Ct() {
- return {
- type: "text",
- value: ""
- };
- }
- function wt() {
- return {
- type: "thematicBreak"
- };
- }
-}
-function sn(n) {
- return {
- line: n.line,
- column: n.column,
- offset: n.offset
- };
-}
-function xt(n, r) {
- let t = -1;
- for (; ++t < r.length; ) {
- const e = r[t];
- Array.isArray(e) ? xt(n, e) : Or(n, e);
- }
-}
-function Or(n, r) {
- let t;
- for (t in r)
- if (ft.call(r, t)) {
- if (t === "canContainEols") {
- const e = r[t];
- e && n[t].push(...e);
- } else if (t === "transforms") {
- const e = r[t];
- e && n[t].push(...e);
- } else if (t === "enter" || t === "exit") {
- const e = r[t];
- e && Object.assign(n[t], e);
- }
- }
-}
-function tt(n, r) {
- throw n ? new Error(
- "Cannot close `" + n.type + "` (" + yn({
- start: n.start,
- end: n.end
- }) + "): a different token (`" + r.type + "`, " + yn({
- start: r.start,
- end: r.end
- }) + ") is open"
- ) : new Error(
- "Cannot close document, a token (`" + r.type + "`, " + yn({
- start: r.start,
- end: r.end
- }) + ") is still open"
- );
-}
-function Dr(n) {
- const r = n.replace(/\n{2,}/g, `
-`);
- return At(r);
-}
-function Pr(n) {
- const r = Dr(n), { children: t } = mt(r), e = [[]];
- let u = 0;
- function i(l, a = "normal") {
- l.type === "text" ? l.value.split(`
-`).forEach((c, p) => {
- p !== 0 && (u++, e.push([])), c.split(" ").forEach((f) => {
- f && e[u].push({ content: f, type: a });
- });
- }) : (l.type === "strong" || l.type === "emphasis") && l.children.forEach((m) => {
- i(m, l.type);
- });
- }
- return t.forEach((l) => {
- l.type === "paragraph" && l.children.forEach((a) => {
- i(a);
- });
- }), e;
-}
-function _r(n) {
- const { children: r } = mt(n);
- function t(e) {
- return e.type === "text" ? e.value.replace(/\n/g, "<br/>") : e.type === "strong" ? `<strong>${e.children.map(t).join("")}</strong>` : e.type === "emphasis" ? `<em>${e.children.map(t).join("")}</em>` : e.type === "paragraph" ? `<p>${e.children.map(t).join("")}</p>` : `Unsupported markdown: ${e.type}`;
- }
- return r.map(t).join("");
-}
-function Mr(n) {
- return Intl.Segmenter ? [...new Intl.Segmenter().segment(n)].map((r) => r.segment) : [...n];
-}
-function jr(n, r) {
- const t = Mr(r.content);
- return gt(n, [], t, r.type);
-}
-function gt(n, r, t, e) {
- if (t.length === 0)
- return [
- { content: r.join(""), type: e },
- { content: "", type: e }
- ];
- const [u, ...i] = t, l = [...r, u];
- return n([{ content: l.join(""), type: e }]) ? gt(n, l, i, e) : (r.length === 0 && u && (r.push(u), t.shift()), [
- { content: r.join(""), type: e },
- { content: t.join(""), type: e }
- ]);
-}
-function Rr(n, r) {
- if (n.some(({ content: t }) => t.includes(`
-`)))
- throw new Error("splitLineToFitWidth does not support newlines in the line");
- return Bn(n, r);
-}
-function Bn(n, r, t = [], e = []) {
- if (n.length === 0)
- return e.length > 0 && t.push(e), t.length > 0 ? t : [];
- let u = "";
- n[0].content === " " && (u = " ", n.shift());
- const i = n.shift() ?? { content: " ", type: "normal" }, l = [...e];
- if (u !== "" && l.push({ content: u, type: "normal" }), l.push(i), r(l))
- return Bn(n, r, t, l);
- if (e.length > 0)
- t.push(e), n.unshift(i);
- else if (i.content) {
- const [a, m] = jr(r, i);
- t.push([a]), m.content && n.unshift(m);
- }
- return Bn(n, r, t);
-}
-function qr(n, r) {
- r && n.attr("style", r);
-}
-function Hr(n, r, t, e, u = !1) {
- const i = n.append("foreignObject"), l = i.append("xhtml:div"), a = r.label, m = r.isNode ? "nodeLabel" : "edgeLabel";
- l.html(
- `
- <span class="${m} ${e}" ` + (r.labelStyle ? 'style="' + r.labelStyle + '"' : "") + ">" + a + "</span>"
- ), qr(l, r.labelStyle), l.style("display", "table-cell"), l.style("white-space", "nowrap"), l.style("max-width", t + "px"), l.attr("xmlns", "http://www.w3.org/1999/xhtml"), u && l.attr("class", "labelBkg");
- let c = l.node().getBoundingClientRect();
- return c.width === t && (l.style("display", "table"), l.style("white-space", "break-spaces"), l.style("width", t + "px"), c = l.node().getBoundingClientRect()), i.style("width", c.width), i.style("height", c.height), i.node();
-}
-function Pn(n, r, t) {
- return n.append("tspan").attr("class", "text-outer-tspan").attr("x", 0).attr("y", r * t - 0.1 + "em").attr("dy", t + "em");
-}
-function Nr(n, r, t) {
- const e = n.append("text"), u = Pn(e, 1, r);
- _n(u, t);
- const i = u.node().getComputedTextLength();
- return e.remove(), i;
-}
-function Qr(n, r, t) {
- var l;
- const e = n.append("text"), u = Pn(e, 1, r);
- _n(u, [{ content: t, type: "normal" }]);
- const i = (l = u.node()) == null ? void 0 : l.getBoundingClientRect();
- return i && e.remove(), i;
-}
-function Vr(n, r, t, e = !1) {
- const i = r.append("g"), l = i.insert("rect").attr("class", "background"), a = i.append("text").attr("y", "-10.1");
- let m = 0;
- for (const c of t) {
- const p = (x) => Nr(i, 1.1, x) <= n, f = p(c) ? [c] : Rr(c, p);
- for (const x of f) {
- const h = Pn(a, m, 1.1);
- _n(h, x), m++;
- }
- }
- if (e) {
- const c = a.node().getBBox(), p = 2;
- return l.attr("x", -p).attr("y", -p).attr("width", c.width + 2 * p).attr("height", c.height + 2 * p), i.node();
- } else
- return a.node();
-}
-function _n(n, r) {
- n.text(""), r.forEach((t, e) => {
- const u = n.append("tspan").attr("font-style", t.type === "emphasis" ? "italic" : "normal").attr("class", "text-inner-tspan").attr("font-weight", t.type === "strong" ? "bold" : "normal");
- e === 0 ? u.text(t.content) : u.text(" " + t.content);
- });
-}
-const Ur = (n, r = "", {
- style: t = "",
- isTitle: e = !1,
- classes: u = "",
- useHtmlLabels: i = !0,
- isNode: l = !0,
- width: a = 200,
- addSvgBackground: m = !1
-} = {}) => {
- if (zt.info("createText", r, t, e, u, i, l, m), i) {
- const c = _r(r), p = {
- isNode: l,
- label: It(c).replace(
- /fa[blrs]?:fa-[\w-]+/g,
- // cspell: disable-line
- (x) => `<i class='${x.replace(":", " ")}'></i>`
- ),
- labelStyle: t.replace("fill:", "color:")
- };
- return Hr(n, p, a, u, m);
- } else {
- const c = Pr(r);
- return Vr(a, n, c, m);
- }
-};
-export {
- Ur as a,
- Qr as c
-};