diff --git a/README.md b/README.md
index b37d9449cda31d7a18f1a60c7f69463dfdb2c40f..b98c0e1e6c8a5c1ca3a548ed316ff647760e1796 100644
--- a/README.md
+++ b/README.md
@@ -10,10 +10,8 @@ app_file: space.py
---
# `gradio_textboxplus`
-
💻 Component GitHub Code
-
-
-Advanced Textbox Component for Gradio UI with tooltip help support.
+ 💻 Component GitHub Code
+Advanced Textbox Component for Gradio UI
## Installation
@@ -55,7 +53,7 @@ with gr.Blocks(theme=gr.themes.Ocean(), title="TextboxPlus Demo") as demo:
label="Your Name",
info="Please enter your full name.",
# The key feature: the help text for the tooltip.
- help="Hover over the (?) icon to see this help message, This provides brief, contextual guidance for the user.",
+ help="Hover over the", # (?) icon to see this help message, This provides brief, contextual guidance for the user.",
placeholder="e.g., Jane Doe",
interactive=True,
elem_id="textboxplus-input",
diff --git a/app.py b/app.py
index 6ba1c9f88bcd1072bfd6a73d70cd05f361812d13..168b177c1de3dfd07e9fee4dc6b010e58c74dd9c 100644
--- a/app.py
+++ b/app.py
@@ -29,7 +29,7 @@ with gr.Blocks(theme=gr.themes.Ocean(), title="TextboxPlus Demo") as demo:
label="Your Name",
info="Please enter your full name.",
# The key feature: the help text for the tooltip.
- help="Hover over the (?) icon to see this help message, This provides brief, contextual guidance for the user.",
+ help="Hover over the", # (?) icon to see this help message, This provides brief, contextual guidance for the user.",
placeholder="e.g., Jane Doe",
interactive=True,
elem_id="textboxplus-input",
diff --git a/space.py b/space.py
index 3cbc6534bee4b621de0f9f6e52522a29f10699b8..a44208371cb95d0d8069158ad72b900e04aee4c8 100644
--- a/space.py
+++ b/space.py
@@ -69,7 +69,7 @@ with gr.Blocks(theme=gr.themes.Ocean(), title="TextboxPlus Demo") as demo:
label="Your Name",
info="Please enter your full name.",
# The key feature: the help text for the tooltip.
- help="Hover over the (?) icon to see this help message, This provides brief, contextual guidance for the user.",
+ help="Hover over the", # (?) icon to see this help message, This provides brief, contextual guidance for the user.",
placeholder="e.g., Jane Doe",
interactive=True,
elem_id="textboxplus-input",
diff --git a/src/README.md b/src/README.md
index b37d9449cda31d7a18f1a60c7f69463dfdb2c40f..b98c0e1e6c8a5c1ca3a548ed316ff647760e1796 100644
--- a/src/README.md
+++ b/src/README.md
@@ -10,10 +10,8 @@ app_file: space.py
---
# `gradio_textboxplus`
- 💻 Component GitHub Code
-
-
-Advanced Textbox Component for Gradio UI with tooltip help support.
+ 💻 Component GitHub Code
+Advanced Textbox Component for Gradio UI
## Installation
@@ -55,7 +53,7 @@ with gr.Blocks(theme=gr.themes.Ocean(), title="TextboxPlus Demo") as demo:
label="Your Name",
info="Please enter your full name.",
# The key feature: the help text for the tooltip.
- help="Hover over the (?) icon to see this help message, This provides brief, contextual guidance for the user.",
+ help="Hover over the", # (?) icon to see this help message, This provides brief, contextual guidance for the user.",
placeholder="e.g., Jane Doe",
interactive=True,
elem_id="textboxplus-input",
diff --git a/src/backend/gradio_textboxplus/templates/component/Index-D7B387Kn.js b/src/backend/gradio_textboxplus/templates/component/Index-D7B387Kn.js
new file mode 100644
index 0000000000000000000000000000000000000000..581f224e40ef5e1e97cc9728d4cbf8eead60bf5b
--- /dev/null
+++ b/src/backend/gradio_textboxplus/templates/component/Index-D7B387Kn.js
@@ -0,0 +1,11121 @@
+var Xa = Object.defineProperty;
+var di = (i) => {
+ throw TypeError(i);
+};
+var Wa = (i, e, t) => e in i ? Xa(i, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : i[e] = t;
+var X = (i, e, t) => Wa(i, typeof e != "symbol" ? e + "" : e, t), Ya = (i, e, t) => e.has(i) || di("Cannot " + t);
+var fi = (i, e, t) => e.has(i) ? di("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(i) : e.set(i, t);
+var Xt = (i, e, t) => (Ya(i, e, "access private method"), t);
+const {
+ SvelteComponent: Ka,
+ append_hydration: Zn,
+ assign: Qa,
+ attr: ue,
+ binding_callbacks: Ja,
+ children: Bt,
+ claim_element: zl,
+ claim_space: Il,
+ claim_svg_element: kn,
+ create_slot: er,
+ detach: Ie,
+ element: Ml,
+ empty: hi,
+ get_all_dirty_from_scope: tr,
+ get_slot_changes: nr,
+ get_spread_update: ir,
+ init: lr,
+ insert_hydration: zt,
+ listen: ar,
+ noop: rr,
+ safe_not_equal: or,
+ set_dynamic_element_data: pi,
+ set_style: R,
+ space: Rl,
+ svg_element: Fn,
+ toggle_class: ne,
+ transition_in: Ol,
+ transition_out: Nl,
+ update_slot_base: sr
+} = window.__gradio__svelte__internal;
+function mi(i) {
+ let e, t, n, l, a;
+ return {
+ c() {
+ e = Fn("svg"), t = Fn("line"), n = Fn("line"), this.h();
+ },
+ l(r) {
+ e = kn(r, "svg", { class: !0, xmlns: !0, viewBox: !0 });
+ var o = Bt(e);
+ t = kn(o, "line", {
+ x1: !0,
+ y1: !0,
+ x2: !0,
+ y2: !0,
+ stroke: !0,
+ "stroke-width": !0
+ }), Bt(t).forEach(Ie), n = kn(o, "line", {
+ x1: !0,
+ y1: !0,
+ x2: !0,
+ y2: !0,
+ stroke: !0,
+ "stroke-width": !0
+ }), Bt(n).forEach(Ie), o.forEach(Ie), this.h();
+ },
+ h() {
+ ue(t, "x1", "1"), ue(t, "y1", "9"), ue(t, "x2", "9"), ue(t, "y2", "1"), ue(t, "stroke", "gray"), ue(t, "stroke-width", "0.5"), ue(n, "x1", "5"), ue(n, "y1", "9"), ue(n, "x2", "9"), ue(n, "y2", "5"), ue(n, "stroke", "gray"), ue(n, "stroke-width", "0.5"), ue(e, "class", "resize-handle svelte-239wnu"), ue(e, "xmlns", "http://www.w3.org/2000/svg"), ue(e, "viewBox", "0 0 10 10");
+ },
+ m(r, o) {
+ zt(r, e, o), Zn(e, t), Zn(e, n), l || (a = ar(
+ e,
+ "mousedown",
+ /*resize*/
+ i[27]
+ ), l = !0);
+ },
+ p: rr,
+ d(r) {
+ r && Ie(e), l = !1, a();
+ }
+ };
+}
+function ur(i) {
+ var d;
+ let e, t, n, l, a;
+ const r = (
+ /*#slots*/
+ i[31].default
+ ), o = er(
+ r,
+ i,
+ /*$$scope*/
+ i[30],
+ null
+ );
+ let u = (
+ /*resizable*/
+ i[19] && mi(i)
+ ), c = [
+ { "data-testid": (
+ /*test_id*/
+ i[11]
+ ) },
+ { id: (
+ /*elem_id*/
+ i[6]
+ ) },
+ {
+ class: n = "block " + /*elem_classes*/
+ (((d = i[7]) == null ? void 0 : d.join(" ")) || "") + " svelte-239wnu"
+ },
+ {
+ dir: l = /*rtl*/
+ i[20] ? "rtl" : "ltr"
+ }
+ ], s = {};
+ for (let f = 0; f < c.length; f += 1)
+ s = Qa(s, c[f]);
+ return {
+ c() {
+ e = Ml(
+ /*tag*/
+ i[25]
+ ), o && o.c(), t = Rl(), u && u.c(), this.h();
+ },
+ l(f) {
+ e = zl(
+ f,
+ /*tag*/
+ (i[25] || "null").toUpperCase(),
+ {
+ "data-testid": !0,
+ id: !0,
+ class: !0,
+ dir: !0
+ }
+ );
+ var h = Bt(e);
+ o && o.l(h), t = Il(h), u && u.l(h), h.forEach(Ie), this.h();
+ },
+ h() {
+ pi(
+ /*tag*/
+ i[25]
+ )(e, s), ne(
+ e,
+ "hidden",
+ /*visible*/
+ i[14] === !1
+ ), ne(
+ e,
+ "padded",
+ /*padding*/
+ i[10]
+ ), ne(
+ e,
+ "flex",
+ /*flex*/
+ i[1]
+ ), ne(
+ e,
+ "border_focus",
+ /*border_mode*/
+ i[9] === "focus"
+ ), ne(
+ e,
+ "border_contrast",
+ /*border_mode*/
+ i[9] === "contrast"
+ ), ne(e, "hide-container", !/*explicit_call*/
+ i[12] && !/*container*/
+ i[13]), ne(
+ e,
+ "fullscreen",
+ /*fullscreen*/
+ i[0]
+ ), ne(
+ e,
+ "animating",
+ /*fullscreen*/
+ i[0] && /*preexpansionBoundingRect*/
+ i[24] !== null
+ ), ne(
+ e,
+ "auto-margin",
+ /*scale*/
+ i[17] === null
+ ), R(
+ e,
+ "height",
+ /*fullscreen*/
+ i[0] ? void 0 : (
+ /*get_dimension*/
+ i[26](
+ /*height*/
+ i[2]
+ )
+ )
+ ), R(
+ e,
+ "min-height",
+ /*fullscreen*/
+ i[0] ? void 0 : (
+ /*get_dimension*/
+ i[26](
+ /*min_height*/
+ i[3]
+ )
+ )
+ ), R(
+ e,
+ "max-height",
+ /*fullscreen*/
+ i[0] ? void 0 : (
+ /*get_dimension*/
+ i[26](
+ /*max_height*/
+ i[4]
+ )
+ )
+ ), R(
+ e,
+ "--start-top",
+ /*preexpansionBoundingRect*/
+ i[24] ? `${/*preexpansionBoundingRect*/
+ i[24].top}px` : "0px"
+ ), R(
+ e,
+ "--start-left",
+ /*preexpansionBoundingRect*/
+ i[24] ? `${/*preexpansionBoundingRect*/
+ i[24].left}px` : "0px"
+ ), R(
+ e,
+ "--start-width",
+ /*preexpansionBoundingRect*/
+ i[24] ? `${/*preexpansionBoundingRect*/
+ i[24].width}px` : "0px"
+ ), R(
+ e,
+ "--start-height",
+ /*preexpansionBoundingRect*/
+ i[24] ? `${/*preexpansionBoundingRect*/
+ i[24].height}px` : "0px"
+ ), R(
+ e,
+ "width",
+ /*fullscreen*/
+ i[0] ? void 0 : typeof /*width*/
+ i[5] == "number" ? `calc(min(${/*width*/
+ i[5]}px, 100%))` : (
+ /*get_dimension*/
+ i[26](
+ /*width*/
+ i[5]
+ )
+ )
+ ), R(
+ e,
+ "border-style",
+ /*variant*/
+ i[8]
+ ), R(
+ e,
+ "overflow",
+ /*allow_overflow*/
+ i[15] ? (
+ /*overflow_behavior*/
+ i[16]
+ ) : "hidden"
+ ), R(
+ e,
+ "flex-grow",
+ /*scale*/
+ i[17]
+ ), R(e, "min-width", `calc(min(${/*min_width*/
+ i[18]}px, 100%))`), R(e, "border-width", "var(--block-border-width)");
+ },
+ m(f, h) {
+ zt(f, e, h), o && o.m(e, null), Zn(e, t), u && u.m(e, null), i[32](e), a = !0;
+ },
+ p(f, h) {
+ var p;
+ o && o.p && (!a || h[0] & /*$$scope*/
+ 1073741824) && sr(
+ o,
+ r,
+ f,
+ /*$$scope*/
+ f[30],
+ a ? nr(
+ r,
+ /*$$scope*/
+ f[30],
+ h,
+ null
+ ) : tr(
+ /*$$scope*/
+ f[30]
+ ),
+ null
+ ), /*resizable*/
+ f[19] ? u ? u.p(f, h) : (u = mi(f), u.c(), u.m(e, null)) : u && (u.d(1), u = null), pi(
+ /*tag*/
+ f[25]
+ )(e, s = ir(c, [
+ (!a || h[0] & /*test_id*/
+ 2048) && { "data-testid": (
+ /*test_id*/
+ f[11]
+ ) },
+ (!a || h[0] & /*elem_id*/
+ 64) && { id: (
+ /*elem_id*/
+ f[6]
+ ) },
+ (!a || h[0] & /*elem_classes*/
+ 128 && n !== (n = "block " + /*elem_classes*/
+ (((p = f[7]) == null ? void 0 : p.join(" ")) || "") + " svelte-239wnu")) && { class: n },
+ (!a || h[0] & /*rtl*/
+ 1048576 && l !== (l = /*rtl*/
+ f[20] ? "rtl" : "ltr")) && { dir: l }
+ ])), ne(
+ e,
+ "hidden",
+ /*visible*/
+ f[14] === !1
+ ), ne(
+ e,
+ "padded",
+ /*padding*/
+ f[10]
+ ), ne(
+ e,
+ "flex",
+ /*flex*/
+ f[1]
+ ), ne(
+ e,
+ "border_focus",
+ /*border_mode*/
+ f[9] === "focus"
+ ), ne(
+ e,
+ "border_contrast",
+ /*border_mode*/
+ f[9] === "contrast"
+ ), ne(e, "hide-container", !/*explicit_call*/
+ f[12] && !/*container*/
+ f[13]), ne(
+ e,
+ "fullscreen",
+ /*fullscreen*/
+ f[0]
+ ), ne(
+ e,
+ "animating",
+ /*fullscreen*/
+ f[0] && /*preexpansionBoundingRect*/
+ f[24] !== null
+ ), ne(
+ e,
+ "auto-margin",
+ /*scale*/
+ f[17] === null
+ ), h[0] & /*fullscreen, height*/
+ 5 && R(
+ e,
+ "height",
+ /*fullscreen*/
+ f[0] ? void 0 : (
+ /*get_dimension*/
+ f[26](
+ /*height*/
+ f[2]
+ )
+ )
+ ), h[0] & /*fullscreen, min_height*/
+ 9 && R(
+ e,
+ "min-height",
+ /*fullscreen*/
+ f[0] ? void 0 : (
+ /*get_dimension*/
+ f[26](
+ /*min_height*/
+ f[3]
+ )
+ )
+ ), h[0] & /*fullscreen, max_height*/
+ 17 && R(
+ e,
+ "max-height",
+ /*fullscreen*/
+ f[0] ? void 0 : (
+ /*get_dimension*/
+ f[26](
+ /*max_height*/
+ f[4]
+ )
+ )
+ ), h[0] & /*preexpansionBoundingRect*/
+ 16777216 && R(
+ e,
+ "--start-top",
+ /*preexpansionBoundingRect*/
+ f[24] ? `${/*preexpansionBoundingRect*/
+ f[24].top}px` : "0px"
+ ), h[0] & /*preexpansionBoundingRect*/
+ 16777216 && R(
+ e,
+ "--start-left",
+ /*preexpansionBoundingRect*/
+ f[24] ? `${/*preexpansionBoundingRect*/
+ f[24].left}px` : "0px"
+ ), h[0] & /*preexpansionBoundingRect*/
+ 16777216 && R(
+ e,
+ "--start-width",
+ /*preexpansionBoundingRect*/
+ f[24] ? `${/*preexpansionBoundingRect*/
+ f[24].width}px` : "0px"
+ ), h[0] & /*preexpansionBoundingRect*/
+ 16777216 && R(
+ e,
+ "--start-height",
+ /*preexpansionBoundingRect*/
+ f[24] ? `${/*preexpansionBoundingRect*/
+ f[24].height}px` : "0px"
+ ), h[0] & /*fullscreen, width*/
+ 33 && R(
+ e,
+ "width",
+ /*fullscreen*/
+ f[0] ? void 0 : typeof /*width*/
+ f[5] == "number" ? `calc(min(${/*width*/
+ f[5]}px, 100%))` : (
+ /*get_dimension*/
+ f[26](
+ /*width*/
+ f[5]
+ )
+ )
+ ), h[0] & /*variant*/
+ 256 && R(
+ e,
+ "border-style",
+ /*variant*/
+ f[8]
+ ), h[0] & /*allow_overflow, overflow_behavior*/
+ 98304 && R(
+ e,
+ "overflow",
+ /*allow_overflow*/
+ f[15] ? (
+ /*overflow_behavior*/
+ f[16]
+ ) : "hidden"
+ ), h[0] & /*scale*/
+ 131072 && R(
+ e,
+ "flex-grow",
+ /*scale*/
+ f[17]
+ ), h[0] & /*min_width*/
+ 262144 && R(e, "min-width", `calc(min(${/*min_width*/
+ f[18]}px, 100%))`);
+ },
+ i(f) {
+ a || (Ol(o, f), a = !0);
+ },
+ o(f) {
+ Nl(o, f), a = !1;
+ },
+ d(f) {
+ f && Ie(e), o && o.d(f), u && u.d(), i[32](null);
+ }
+ };
+}
+function gi(i) {
+ let e;
+ return {
+ c() {
+ e = Ml("div"), this.h();
+ },
+ l(t) {
+ e = zl(t, "DIV", { class: !0 }), Bt(e).forEach(Ie), this.h();
+ },
+ h() {
+ ue(e, "class", "placeholder svelte-239wnu"), R(
+ e,
+ "height",
+ /*placeholder_height*/
+ i[22] + "px"
+ ), R(
+ e,
+ "width",
+ /*placeholder_width*/
+ i[23] + "px"
+ );
+ },
+ m(t, n) {
+ zt(t, e, n);
+ },
+ p(t, n) {
+ n[0] & /*placeholder_height*/
+ 4194304 && R(
+ e,
+ "height",
+ /*placeholder_height*/
+ t[22] + "px"
+ ), n[0] & /*placeholder_width*/
+ 8388608 && R(
+ e,
+ "width",
+ /*placeholder_width*/
+ t[23] + "px"
+ );
+ },
+ d(t) {
+ t && Ie(e);
+ }
+ };
+}
+function cr(i) {
+ let e, t, n, l = (
+ /*tag*/
+ i[25] && ur(i)
+ ), a = (
+ /*fullscreen*/
+ i[0] && gi(i)
+ );
+ return {
+ c() {
+ l && l.c(), e = Rl(), a && a.c(), t = hi();
+ },
+ l(r) {
+ l && l.l(r), e = Il(r), a && a.l(r), t = hi();
+ },
+ m(r, o) {
+ l && l.m(r, o), zt(r, e, o), a && a.m(r, o), zt(r, t, o), n = !0;
+ },
+ p(r, o) {
+ /*tag*/
+ r[25] && l.p(r, o), /*fullscreen*/
+ r[0] ? a ? a.p(r, o) : (a = gi(r), a.c(), a.m(t.parentNode, t)) : a && (a.d(1), a = null);
+ },
+ i(r) {
+ n || (Ol(l, r), n = !0);
+ },
+ o(r) {
+ Nl(l, r), n = !1;
+ },
+ d(r) {
+ r && (Ie(e), Ie(t)), l && l.d(r), a && a.d(r);
+ }
+ };
+}
+function _r(i, e, t) {
+ let { $$slots: n = {}, $$scope: l } = e, { height: a = void 0 } = e, { min_height: r = void 0 } = e, { max_height: o = void 0 } = e, { width: u = void 0 } = e, { elem_id: c = "" } = e, { elem_classes: s = [] } = e, { variant: d = "solid" } = e, { border_mode: f = "base" } = e, { padding: h = !0 } = e, { type: p = "normal" } = e, { test_id: v = void 0 } = e, { explicit_call: k = !1 } = e, { container: C = !0 } = e, { visible: m = !0 } = e, { allow_overflow: _ = !0 } = e, { overflow_behavior: g = "auto" } = e, { scale: D = null } = e, { min_width: b = 0 } = e, { flex: w = !1 } = e, { resizable: E = !1 } = e, { rtl: y = !1 } = e, { fullscreen: B = !1 } = e, q = B, z, le = p === "fieldset" ? "fieldset" : "div", G = 0, N = 0, M = null;
+ function V(A) {
+ B && A.key === "Escape" && t(0, B = !1);
+ }
+ const P = (A) => {
+ if (A !== void 0) {
+ if (typeof A == "number")
+ return A + "px";
+ if (typeof A == "string")
+ return A;
+ }
+ }, ee = (A) => {
+ let Q = A.clientY;
+ const qe = (x) => {
+ const S = x.clientY - Q;
+ Q = x.clientY, t(21, z.style.height = `${z.offsetHeight + S}px`, z);
+ }, ae = () => {
+ window.removeEventListener("mousemove", qe), window.removeEventListener("mouseup", ae);
+ };
+ window.addEventListener("mousemove", qe), window.addEventListener("mouseup", ae);
+ };
+ function K(A) {
+ Ja[A ? "unshift" : "push"](() => {
+ z = A, t(21, z);
+ });
+ }
+ return i.$$set = (A) => {
+ "height" in A && t(2, a = A.height), "min_height" in A && t(3, r = A.min_height), "max_height" in A && t(4, o = A.max_height), "width" in A && t(5, u = A.width), "elem_id" in A && t(6, c = A.elem_id), "elem_classes" in A && t(7, s = A.elem_classes), "variant" in A && t(8, d = A.variant), "border_mode" in A && t(9, f = A.border_mode), "padding" in A && t(10, h = A.padding), "type" in A && t(28, p = A.type), "test_id" in A && t(11, v = A.test_id), "explicit_call" in A && t(12, k = A.explicit_call), "container" in A && t(13, C = A.container), "visible" in A && t(14, m = A.visible), "allow_overflow" in A && t(15, _ = A.allow_overflow), "overflow_behavior" in A && t(16, g = A.overflow_behavior), "scale" in A && t(17, D = A.scale), "min_width" in A && t(18, b = A.min_width), "flex" in A && t(1, w = A.flex), "resizable" in A && t(19, E = A.resizable), "rtl" in A && t(20, y = A.rtl), "fullscreen" in A && t(0, B = A.fullscreen), "$$scope" in A && t(30, l = A.$$scope);
+ }, i.$$.update = () => {
+ i.$$.dirty[0] & /*fullscreen, old_fullscreen, element*/
+ 538968065 && B !== q && (t(29, q = B), B ? (t(24, M = z.getBoundingClientRect()), t(22, G = z.offsetHeight), t(23, N = z.offsetWidth), window.addEventListener("keydown", V)) : (t(24, M = null), window.removeEventListener("keydown", V))), i.$$.dirty[0] & /*visible*/
+ 16384 && (m || t(1, w = !1));
+ }, [
+ B,
+ w,
+ a,
+ r,
+ o,
+ u,
+ c,
+ s,
+ d,
+ f,
+ h,
+ v,
+ k,
+ C,
+ m,
+ _,
+ g,
+ D,
+ b,
+ E,
+ y,
+ z,
+ G,
+ N,
+ M,
+ le,
+ P,
+ ee,
+ p,
+ q,
+ l,
+ n,
+ K
+ ];
+}
+class dr extends Ka {
+ constructor(e) {
+ super(), lr(
+ this,
+ e,
+ _r,
+ cr,
+ or,
+ {
+ height: 2,
+ min_height: 3,
+ max_height: 4,
+ width: 5,
+ elem_id: 6,
+ elem_classes: 7,
+ variant: 8,
+ border_mode: 9,
+ padding: 10,
+ type: 28,
+ test_id: 11,
+ explicit_call: 12,
+ container: 13,
+ visible: 14,
+ allow_overflow: 15,
+ overflow_behavior: 16,
+ scale: 17,
+ min_width: 18,
+ flex: 1,
+ resizable: 19,
+ rtl: 20,
+ fullscreen: 0
+ },
+ null,
+ [-1, -1]
+ );
+ }
+}
+function ei() {
+ return {
+ async: !1,
+ breaks: !1,
+ extensions: null,
+ gfm: !0,
+ hooks: null,
+ pedantic: !1,
+ renderer: null,
+ silent: !1,
+ tokenizer: null,
+ walkTokens: null
+ };
+}
+let at = ei();
+function Pl(i) {
+ at = i;
+}
+const Hl = /[&<>"']/, fr = new RegExp(Hl.source, "g"), Zl = /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, hr = new RegExp(Zl.source, "g"), pr = {
+ "&": "&",
+ "<": "<",
+ ">": ">",
+ '"': """,
+ "'": "'"
+}, bi = (i) => pr[i];
+function me(i, e) {
+ if (e) {
+ if (Hl.test(i))
+ return i.replace(fr, bi);
+ } else if (Zl.test(i))
+ return i.replace(hr, bi);
+ return i;
+}
+const mr = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;
+function gr(i) {
+ return i.replace(mr, (e, t) => (t = t.toLowerCase(), t === "colon" ? ":" : t.charAt(0) === "#" ? t.charAt(1) === "x" ? String.fromCharCode(parseInt(t.substring(2), 16)) : String.fromCharCode(+t.substring(1)) : ""));
+}
+const br = /(^|[^\[])\^/g;
+function U(i, e) {
+ let t = typeof i == "string" ? i : i.source;
+ e = e || "";
+ const n = {
+ replace: (l, a) => {
+ let r = typeof a == "string" ? a : a.source;
+ return r = r.replace(br, "$1"), t = t.replace(l, r), n;
+ },
+ getRegex: () => new RegExp(t, e)
+ };
+ return n;
+}
+function vi(i) {
+ try {
+ i = encodeURI(i).replace(/%25/g, "%");
+ } catch {
+ return null;
+ }
+ return i;
+}
+const xt = { exec: () => null };
+function Di(i, e) {
+ const t = i.replace(/\|/g, (a, r, o) => {
+ let u = !1, c = r;
+ for (; --c >= 0 && o[c] === "\\"; )
+ u = !u;
+ return u ? "|" : " |";
+ }), n = t.split(/ \|/);
+ let l = 0;
+ if (n[0].trim() || n.shift(), n.length > 0 && !n[n.length - 1].trim() && n.pop(), e)
+ if (n.length > e)
+ n.splice(e);
+ else
+ for (; n.length < e; )
+ n.push("");
+ for (; l < n.length; l++)
+ n[l] = n[l].trim().replace(/\\\|/g, "|");
+ return n;
+}
+function Wt(i, e, t) {
+ const n = i.length;
+ if (n === 0)
+ return "";
+ let l = 0;
+ for (; l < n && i.charAt(n - l - 1) === e; )
+ l++;
+ return i.slice(0, n - l);
+}
+function vr(i, e) {
+ if (i.indexOf(e[1]) === -1)
+ return -1;
+ let t = 0;
+ for (let n = 0; n < i.length; n++)
+ if (i[n] === "\\")
+ n++;
+ else if (i[n] === e[0])
+ t++;
+ else if (i[n] === e[1] && (t--, t < 0))
+ return n;
+ return -1;
+}
+function wi(i, e, t, n) {
+ const l = e.href, a = e.title ? me(e.title) : null, r = i[1].replace(/\\([\[\]])/g, "$1");
+ if (i[0].charAt(0) !== "!") {
+ n.state.inLink = !0;
+ const o = {
+ type: "link",
+ raw: t,
+ href: l,
+ title: a,
+ text: r,
+ tokens: n.inlineTokens(r)
+ };
+ return n.state.inLink = !1, o;
+ }
+ return {
+ type: "image",
+ raw: t,
+ href: l,
+ title: a,
+ text: me(r)
+ };
+}
+function Dr(i, e) {
+ const t = i.match(/^(\s+)(?:```)/);
+ if (t === null)
+ return e;
+ const n = t[1];
+ return e.split(`
+`).map((l) => {
+ const a = l.match(/^\s+/);
+ if (a === null)
+ return l;
+ const [r] = a;
+ return r.length >= n.length ? l.slice(n.length) : l;
+ }).join(`
+`);
+}
+class pn {
+ // set by the lexer
+ constructor(e) {
+ X(this, "options");
+ X(this, "rules");
+ // set by the lexer
+ X(this, "lexer");
+ this.options = e || at;
+ }
+ space(e) {
+ const t = this.rules.block.newline.exec(e);
+ if (t && t[0].length > 0)
+ return {
+ type: "space",
+ raw: t[0]
+ };
+ }
+ code(e) {
+ const t = this.rules.block.code.exec(e);
+ if (t) {
+ const n = t[0].replace(/^ {1,4}/gm, "");
+ return {
+ type: "code",
+ raw: t[0],
+ codeBlockStyle: "indented",
+ text: this.options.pedantic ? n : Wt(n, `
+`)
+ };
+ }
+ }
+ fences(e) {
+ const t = this.rules.block.fences.exec(e);
+ if (t) {
+ const n = t[0], l = Dr(n, t[3] || "");
+ return {
+ type: "code",
+ raw: n,
+ lang: t[2] ? t[2].trim().replace(this.rules.inline.anyPunctuation, "$1") : t[2],
+ text: l
+ };
+ }
+ }
+ heading(e) {
+ const t = this.rules.block.heading.exec(e);
+ if (t) {
+ let n = t[2].trim();
+ if (/#$/.test(n)) {
+ const l = Wt(n, "#");
+ (this.options.pedantic || !l || / $/.test(l)) && (n = l.trim());
+ }
+ return {
+ type: "heading",
+ raw: t[0],
+ depth: t[1].length,
+ text: n,
+ tokens: this.lexer.inline(n)
+ };
+ }
+ }
+ hr(e) {
+ const t = this.rules.block.hr.exec(e);
+ if (t)
+ return {
+ type: "hr",
+ raw: t[0]
+ };
+ }
+ blockquote(e) {
+ const t = this.rules.block.blockquote.exec(e);
+ if (t) {
+ let n = t[0].replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g, `
+ $1`);
+ n = Wt(n.replace(/^ *>[ \t]?/gm, ""), `
+`);
+ const l = this.lexer.state.top;
+ this.lexer.state.top = !0;
+ const a = this.lexer.blockTokens(n);
+ return this.lexer.state.top = l, {
+ type: "blockquote",
+ raw: t[0],
+ tokens: a,
+ text: n
+ };
+ }
+ }
+ list(e) {
+ let t = this.rules.block.list.exec(e);
+ if (t) {
+ let n = t[1].trim();
+ const l = n.length > 1, a = {
+ type: "list",
+ raw: "",
+ ordered: l,
+ start: l ? +n.slice(0, -1) : "",
+ loose: !1,
+ items: []
+ };
+ n = l ? `\\d{1,9}\\${n.slice(-1)}` : `\\${n}`, this.options.pedantic && (n = l ? n : "[*+-]");
+ const r = new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`);
+ let o = "", u = "", c = !1;
+ for (; e; ) {
+ let s = !1;
+ if (!(t = r.exec(e)) || this.rules.block.hr.test(e))
+ break;
+ o = t[0], e = e.substring(o.length);
+ let d = t[2].split(`
+`, 1)[0].replace(/^\t+/, (C) => " ".repeat(3 * C.length)), f = e.split(`
+`, 1)[0], h = 0;
+ this.options.pedantic ? (h = 2, u = d.trimStart()) : (h = t[2].search(/[^ ]/), h = h > 4 ? 1 : h, u = d.slice(h), h += t[1].length);
+ let p = !1;
+ if (!d && /^ *$/.test(f) && (o += f + `
+`, e = e.substring(f.length + 1), s = !0), !s) {
+ const C = new RegExp(`^ {0,${Math.min(3, h - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), m = new RegExp(`^ {0,${Math.min(3, h - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), _ = new RegExp(`^ {0,${Math.min(3, h - 1)}}(?:\`\`\`|~~~)`), g = new RegExp(`^ {0,${Math.min(3, h - 1)}}#`);
+ for (; e; ) {
+ const D = e.split(`
+`, 1)[0];
+ if (f = D, this.options.pedantic && (f = f.replace(/^ {1,4}(?=( {4})*[^ ])/g, " ")), _.test(f) || g.test(f) || C.test(f) || m.test(e))
+ break;
+ if (f.search(/[^ ]/) >= h || !f.trim())
+ u += `
+` + f.slice(h);
+ else {
+ if (p || d.search(/[^ ]/) >= 4 || _.test(d) || g.test(d) || m.test(d))
+ break;
+ u += `
+` + f;
+ }
+ !p && !f.trim() && (p = !0), o += D + `
+`, e = e.substring(D.length + 1), d = f.slice(h);
+ }
+ }
+ a.loose || (c ? a.loose = !0 : /\n *\n *$/.test(o) && (c = !0));
+ let v = null, k;
+ this.options.gfm && (v = /^\[[ xX]\] /.exec(u), v && (k = v[0] !== "[ ] ", u = u.replace(/^\[[ xX]\] +/, ""))), a.items.push({
+ type: "list_item",
+ raw: o,
+ task: !!v,
+ checked: k,
+ loose: !1,
+ text: u,
+ tokens: []
+ }), a.raw += o;
+ }
+ a.items[a.items.length - 1].raw = o.trimEnd(), a.items[a.items.length - 1].text = u.trimEnd(), a.raw = a.raw.trimEnd();
+ for (let s = 0; s < a.items.length; s++)
+ if (this.lexer.state.top = !1, a.items[s].tokens = this.lexer.blockTokens(a.items[s].text, []), !a.loose) {
+ const d = a.items[s].tokens.filter((h) => h.type === "space"), f = d.length > 0 && d.some((h) => /\n.*\n/.test(h.raw));
+ a.loose = f;
+ }
+ if (a.loose)
+ for (let s = 0; s < a.items.length; s++)
+ a.items[s].loose = !0;
+ return a;
+ }
+ }
+ html(e) {
+ const t = this.rules.block.html.exec(e);
+ if (t)
+ return {
+ type: "html",
+ block: !0,
+ raw: t[0],
+ pre: t[1] === "pre" || t[1] === "script" || t[1] === "style",
+ text: t[0]
+ };
+ }
+ def(e) {
+ const t = this.rules.block.def.exec(e);
+ if (t) {
+ const n = t[1].toLowerCase().replace(/\s+/g, " "), l = t[2] ? t[2].replace(/^<(.*)>$/, "$1").replace(this.rules.inline.anyPunctuation, "$1") : "", a = t[3] ? t[3].substring(1, t[3].length - 1).replace(this.rules.inline.anyPunctuation, "$1") : t[3];
+ return {
+ type: "def",
+ tag: n,
+ raw: t[0],
+ href: l,
+ title: a
+ };
+ }
+ }
+ table(e) {
+ const t = this.rules.block.table.exec(e);
+ if (!t || !/[:|]/.test(t[2]))
+ return;
+ const n = Di(t[1]), l = t[2].replace(/^\||\| *$/g, "").split("|"), a = t[3] && t[3].trim() ? t[3].replace(/\n[ \t]*$/, "").split(`
+`) : [], r = {
+ type: "table",
+ raw: t[0],
+ header: [],
+ align: [],
+ rows: []
+ };
+ if (n.length === l.length) {
+ for (const o of l)
+ /^ *-+: *$/.test(o) ? r.align.push("right") : /^ *:-+: *$/.test(o) ? r.align.push("center") : /^ *:-+ *$/.test(o) ? r.align.push("left") : r.align.push(null);
+ for (const o of n)
+ r.header.push({
+ text: o,
+ tokens: this.lexer.inline(o)
+ });
+ for (const o of a)
+ r.rows.push(Di(o, r.header.length).map((u) => ({
+ text: u,
+ tokens: this.lexer.inline(u)
+ })));
+ return r;
+ }
+ }
+ lheading(e) {
+ const t = this.rules.block.lheading.exec(e);
+ if (t)
+ return {
+ type: "heading",
+ raw: t[0],
+ depth: t[2].charAt(0) === "=" ? 1 : 2,
+ text: t[1],
+ tokens: this.lexer.inline(t[1])
+ };
+ }
+ paragraph(e) {
+ const t = this.rules.block.paragraph.exec(e);
+ if (t) {
+ const n = t[1].charAt(t[1].length - 1) === `
+` ? t[1].slice(0, -1) : t[1];
+ return {
+ type: "paragraph",
+ raw: t[0],
+ text: n,
+ tokens: this.lexer.inline(n)
+ };
+ }
+ }
+ text(e) {
+ const t = this.rules.block.text.exec(e);
+ if (t)
+ return {
+ type: "text",
+ raw: t[0],
+ text: t[0],
+ tokens: this.lexer.inline(t[0])
+ };
+ }
+ escape(e) {
+ const t = this.rules.inline.escape.exec(e);
+ if (t)
+ return {
+ type: "escape",
+ raw: t[0],
+ text: me(t[1])
+ };
+ }
+ tag(e) {
+ const t = this.rules.inline.tag.exec(e);
+ if (t)
+ return !this.lexer.state.inLink && /^/i.test(t[0]) && (this.lexer.state.inLink = !1), !this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(t[0]) ? this.lexer.state.inRawBlock = !0 : this.lexer.state.inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0]) && (this.lexer.state.inRawBlock = !1), {
+ type: "html",
+ raw: t[0],
+ inLink: this.lexer.state.inLink,
+ inRawBlock: this.lexer.state.inRawBlock,
+ block: !1,
+ text: t[0]
+ };
+ }
+ link(e) {
+ const t = this.rules.inline.link.exec(e);
+ if (t) {
+ const n = t[2].trim();
+ if (!this.options.pedantic && /^$/.test(n))
+ return;
+ const r = Wt(n.slice(0, -1), "\\");
+ if ((n.length - r.length) % 2 === 0)
+ return;
+ } else {
+ const r = vr(t[2], "()");
+ if (r > -1) {
+ const u = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + r;
+ t[2] = t[2].substring(0, r), t[0] = t[0].substring(0, u).trim(), t[3] = "";
+ }
+ }
+ let l = t[2], a = "";
+ if (this.options.pedantic) {
+ const r = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(l);
+ r && (l = r[1], a = r[3]);
+ } else
+ a = t[3] ? t[3].slice(1, -1) : "";
+ return l = l.trim(), /^$/.test(n) ? l = l.slice(1) : l = l.slice(1, -1)), wi(t, {
+ href: l && l.replace(this.rules.inline.anyPunctuation, "$1"),
+ title: a && a.replace(this.rules.inline.anyPunctuation, "$1")
+ }, t[0], this.lexer);
+ }
+ }
+ reflink(e, t) {
+ let n;
+ if ((n = this.rules.inline.reflink.exec(e)) || (n = this.rules.inline.nolink.exec(e))) {
+ const l = (n[2] || n[1]).replace(/\s+/g, " "), a = t[l.toLowerCase()];
+ if (!a) {
+ const r = n[0].charAt(0);
+ return {
+ type: "text",
+ raw: r,
+ text: r
+ };
+ }
+ return wi(n, a, n[0], this.lexer);
+ }
+ }
+ emStrong(e, t, n = "") {
+ let l = this.rules.inline.emStrongLDelim.exec(e);
+ if (!l || l[3] && n.match(/[\p{L}\p{N}]/u))
+ return;
+ if (!(l[1] || l[2] || "") || !n || this.rules.inline.punctuation.exec(n)) {
+ const r = [...l[0]].length - 1;
+ let o, u, c = r, s = 0;
+ const d = l[0][0] === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
+ for (d.lastIndex = 0, t = t.slice(-1 * e.length + r); (l = d.exec(t)) != null; ) {
+ if (o = l[1] || l[2] || l[3] || l[4] || l[5] || l[6], !o)
+ continue;
+ if (u = [...o].length, l[3] || l[4]) {
+ c += u;
+ continue;
+ } else if ((l[5] || l[6]) && r % 3 && !((r + u) % 3)) {
+ s += u;
+ continue;
+ }
+ if (c -= u, c > 0)
+ continue;
+ u = Math.min(u, u + c + s);
+ const f = [...l[0]][0].length, h = e.slice(0, r + l.index + f + u);
+ if (Math.min(r, u) % 2) {
+ const v = h.slice(1, -1);
+ return {
+ type: "em",
+ raw: h,
+ text: v,
+ tokens: this.lexer.inlineTokens(v)
+ };
+ }
+ const p = h.slice(2, -2);
+ return {
+ type: "strong",
+ raw: h,
+ text: p,
+ tokens: this.lexer.inlineTokens(p)
+ };
+ }
+ }
+ }
+ codespan(e) {
+ const t = this.rules.inline.code.exec(e);
+ if (t) {
+ let n = t[2].replace(/\n/g, " ");
+ const l = /[^ ]/.test(n), a = /^ /.test(n) && / $/.test(n);
+ return l && a && (n = n.substring(1, n.length - 1)), n = me(n, !0), {
+ type: "codespan",
+ raw: t[0],
+ text: n
+ };
+ }
+ }
+ br(e) {
+ const t = this.rules.inline.br.exec(e);
+ if (t)
+ return {
+ type: "br",
+ raw: t[0]
+ };
+ }
+ del(e) {
+ const t = this.rules.inline.del.exec(e);
+ if (t)
+ return {
+ type: "del",
+ raw: t[0],
+ text: t[2],
+ tokens: this.lexer.inlineTokens(t[2])
+ };
+ }
+ autolink(e) {
+ const t = this.rules.inline.autolink.exec(e);
+ if (t) {
+ let n, l;
+ return t[2] === "@" ? (n = me(t[1]), l = "mailto:" + n) : (n = me(t[1]), l = n), {
+ type: "link",
+ raw: t[0],
+ text: n,
+ href: l,
+ tokens: [
+ {
+ type: "text",
+ raw: n,
+ text: n
+ }
+ ]
+ };
+ }
+ }
+ url(e) {
+ var n;
+ let t;
+ if (t = this.rules.inline.url.exec(e)) {
+ let l, a;
+ if (t[2] === "@")
+ l = me(t[0]), a = "mailto:" + l;
+ else {
+ let r;
+ do
+ r = t[0], t[0] = ((n = this.rules.inline._backpedal.exec(t[0])) == null ? void 0 : n[0]) ?? "";
+ while (r !== t[0]);
+ l = me(t[0]), t[1] === "www." ? a = "http://" + t[0] : a = t[0];
+ }
+ return {
+ type: "link",
+ raw: t[0],
+ text: l,
+ href: a,
+ tokens: [
+ {
+ type: "text",
+ raw: l,
+ text: l
+ }
+ ]
+ };
+ }
+ }
+ inlineText(e) {
+ const t = this.rules.inline.text.exec(e);
+ if (t) {
+ let n;
+ return this.lexer.state.inRawBlock ? n = t[0] : n = me(t[0]), {
+ type: "text",
+ raw: t[0],
+ text: n
+ };
+ }
+ }
+}
+const wr = /^(?: *(?:\n|$))+/, yr = /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/, kr = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, It = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Fr = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, jl = /(?:[*+-]|\d{1,9}[.)])/, Ul = U(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g, jl).replace(/blockCode/g, / {4}/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).getRegex(), ti = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, $r = /^[^\n]+/, ni = /(?!\s*\])(?:\\.|[^\[\]\\])+/, Cr = U(/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/).replace("label", ni).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), Er = U(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, jl).getRegex(), Dn = "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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", ii = /|$))/, Ar = U("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))", "i").replace("comment", ii).replace("tag", Dn).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Gl = U(ti).replace("hr", It).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Dn).getRegex(), Sr = U(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Gl).getRegex(), li = {
+ blockquote: Sr,
+ code: yr,
+ def: Cr,
+ fences: kr,
+ heading: Fr,
+ hr: It,
+ html: Ar,
+ lheading: Ul,
+ list: Er,
+ newline: wr,
+ paragraph: Gl,
+ table: xt,
+ text: $r
+}, yi = U("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", It).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Dn).getRegex(), Br = {
+ ...li,
+ table: yi,
+ paragraph: U(ti).replace("hr", It).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", yi).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Dn).getRegex()
+}, xr = {
+ ...li,
+ html: U(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)| \\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", ii).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
+ def: /^ *\[([^\]]+)\]: *([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
+ heading: /^(#{1,6})(.*)(?:\n+|$)/,
+ fences: xt,
+ // fences not supported
+ lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
+ paragraph: U(ti).replace("hr", It).replace("heading", ` *#{1,6} *[^
+]`).replace("lheading", Ul).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
+}, Vl = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Tr = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Xl = /^( {2,}|\\)\n(?!\s*$)/, qr = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g, Ir = U(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/, "u").replace(/punct/g, Mt).getRegex(), Mr = U("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])", "gu").replace(/punct/g, Mt).getRegex(), Rr = U("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])", "gu").replace(/punct/g, Mt).getRegex(), Or = U(/\\([punct])/, "gu").replace(/punct/g, Mt).getRegex(), Nr = U(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), Pr = U(ii).replace("(?:-->|$)", "-->").getRegex(), Hr = U("^comment|^[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment", Pr).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), mn = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/, Zr = U(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label", mn).replace("href", /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Wl = U(/^!?\[(label)\]\[(ref)\]/).replace("label", mn).replace("ref", ni).getRegex(), Yl = U(/^!?\[(ref)\](?:\[\])?/).replace("ref", ni).getRegex(), jr = U("reflink|nolink(?!\\()", "g").replace("reflink", Wl).replace("nolink", Yl).getRegex(), ai = {
+ _backpedal: xt,
+ // only used for GFM url
+ anyPunctuation: Or,
+ autolink: Nr,
+ blockSkip: zr,
+ br: Xl,
+ code: Tr,
+ del: xt,
+ emStrongLDelim: Ir,
+ emStrongRDelimAst: Mr,
+ emStrongRDelimUnd: Rr,
+ escape: Vl,
+ link: Zr,
+ nolink: Yl,
+ punctuation: Lr,
+ reflink: Wl,
+ reflinkSearch: jr,
+ tag: Hr,
+ text: qr,
+ url: xt
+}, Ur = {
+ ...ai,
+ link: U(/^!?\[(label)\]\((.*?)\)/).replace("label", mn).getRegex(),
+ reflink: U(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", mn).getRegex()
+}, jn = {
+ ...ai,
+ escape: U(Vl).replace("])", "~|])").getRegex(),
+ url: U(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/, "i").replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
+ _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
+ del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,
+ text: /^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\ u + " ".repeat(c.length));
+ let n, l, a, r;
+ for (; e; )
+ if (!(this.options.extensions && this.options.extensions.block && this.options.extensions.block.some((o) => (n = o.call({ lexer: this }, e, t)) ? (e = e.substring(n.raw.length), t.push(n), !0) : !1))) {
+ if (n = this.tokenizer.space(e)) {
+ e = e.substring(n.raw.length), n.raw.length === 1 && t.length > 0 ? t[t.length - 1].raw += `
+` : t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.code(e)) {
+ e = e.substring(n.raw.length), l = t[t.length - 1], l && (l.type === "paragraph" || l.type === "text") ? (l.raw += `
+` + n.raw, l.text += `
+` + n.text, this.inlineQueue[this.inlineQueue.length - 1].src = l.text) : t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.fences(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.heading(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.hr(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.blockquote(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.list(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.html(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.def(e)) {
+ e = e.substring(n.raw.length), l = t[t.length - 1], l && (l.type === "paragraph" || l.type === "text") ? (l.raw += `
+` + n.raw, l.text += `
+` + n.raw, this.inlineQueue[this.inlineQueue.length - 1].src = l.text) : this.tokens.links[n.tag] || (this.tokens.links[n.tag] = {
+ href: n.href,
+ title: n.title
+ });
+ continue;
+ }
+ if (n = this.tokenizer.table(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.lheading(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (a = e, this.options.extensions && this.options.extensions.startBlock) {
+ let o = 1 / 0;
+ const u = e.slice(1);
+ let c;
+ this.options.extensions.startBlock.forEach((s) => {
+ c = s.call({ lexer: this }, u), typeof c == "number" && c >= 0 && (o = Math.min(o, c));
+ }), o < 1 / 0 && o >= 0 && (a = e.substring(0, o + 1));
+ }
+ if (this.state.top && (n = this.tokenizer.paragraph(a))) {
+ l = t[t.length - 1], r && l.type === "paragraph" ? (l.raw += `
+` + n.raw, l.text += `
+` + n.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = l.text) : t.push(n), r = a.length !== e.length, e = e.substring(n.raw.length);
+ continue;
+ }
+ if (n = this.tokenizer.text(e)) {
+ e = e.substring(n.raw.length), l = t[t.length - 1], l && l.type === "text" ? (l.raw += `
+` + n.raw, l.text += `
+` + n.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = l.text) : t.push(n);
+ continue;
+ }
+ if (e) {
+ const o = "Infinite loop on byte: " + e.charCodeAt(0);
+ if (this.options.silent) {
+ console.error(o);
+ break;
+ } else
+ throw new Error(o);
+ }
+ }
+ return this.state.top = !0, t;
+ }
+ inline(e, t = []) {
+ return this.inlineQueue.push({ src: e, tokens: t }), t;
+ }
+ /**
+ * Lexing/Compiling
+ */
+ inlineTokens(e, t = []) {
+ let n, l, a, r = e, o, u, c;
+ if (this.tokens.links) {
+ const s = Object.keys(this.tokens.links);
+ if (s.length > 0)
+ for (; (o = this.tokenizer.rules.inline.reflinkSearch.exec(r)) != null; )
+ s.includes(o[0].slice(o[0].lastIndexOf("[") + 1, -1)) && (r = r.slice(0, o.index) + "[" + "a".repeat(o[0].length - 2) + "]" + r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex));
+ }
+ for (; (o = this.tokenizer.rules.inline.blockSkip.exec(r)) != null; )
+ r = r.slice(0, o.index) + "[" + "a".repeat(o[0].length - 2) + "]" + r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
+ for (; (o = this.tokenizer.rules.inline.anyPunctuation.exec(r)) != null; )
+ r = r.slice(0, o.index) + "++" + r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);
+ for (; e; )
+ if (u || (c = ""), u = !1, !(this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((s) => (n = s.call({ lexer: this }, e, t)) ? (e = e.substring(n.raw.length), t.push(n), !0) : !1))) {
+ if (n = this.tokenizer.escape(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.tag(e)) {
+ e = e.substring(n.raw.length), l = t[t.length - 1], l && n.type === "text" && l.type === "text" ? (l.raw += n.raw, l.text += n.text) : t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.link(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.reflink(e, this.tokens.links)) {
+ e = e.substring(n.raw.length), l = t[t.length - 1], l && n.type === "text" && l.type === "text" ? (l.raw += n.raw, l.text += n.text) : t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.emStrong(e, r, c)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.codespan(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.br(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.del(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (n = this.tokenizer.autolink(e)) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (!this.state.inLink && (n = this.tokenizer.url(e))) {
+ e = e.substring(n.raw.length), t.push(n);
+ continue;
+ }
+ if (a = e, this.options.extensions && this.options.extensions.startInline) {
+ let s = 1 / 0;
+ const d = e.slice(1);
+ let f;
+ this.options.extensions.startInline.forEach((h) => {
+ f = h.call({ lexer: this }, d), typeof f == "number" && f >= 0 && (s = Math.min(s, f));
+ }), s < 1 / 0 && s >= 0 && (a = e.substring(0, s + 1));
+ }
+ if (n = this.tokenizer.inlineText(a)) {
+ e = e.substring(n.raw.length), n.raw.slice(-1) !== "_" && (c = n.raw.slice(-1)), u = !0, l = t[t.length - 1], l && l.type === "text" ? (l.raw += n.raw, l.text += n.text) : t.push(n);
+ continue;
+ }
+ if (e) {
+ const s = "Infinite loop on byte: " + e.charCodeAt(0);
+ if (this.options.silent) {
+ console.error(s);
+ break;
+ } else
+ throw new Error(s);
+ }
+ }
+ return t;
+ }
+}
+class gn {
+ constructor(e) {
+ X(this, "options");
+ this.options = e || at;
+ }
+ code(e, t, n) {
+ var a;
+ const l = (a = (t || "").match(/^\S*/)) == null ? void 0 : a[0];
+ return e = e.replace(/\n$/, "") + `
+`, l ? '' + (n ? e : me(e, !0)) + `
+` : "" + (n ? e : me(e, !0)) + `
+`;
+ }
+ blockquote(e) {
+ return `
+${e}
+`;
+ }
+ html(e, t) {
+ return e;
+ }
+ heading(e, t, n) {
+ return `${e}
+`;
+ }
+ hr() {
+ return `
+`;
+ }
+ list(e, t, n) {
+ const l = t ? "ol" : "ul", a = t && n !== 1 ? ' start="' + n + '"' : "";
+ return "<" + l + a + `>
+` + e + "" + l + `>
+`;
+ }
+ listitem(e, t, n) {
+ return `${e}
+`;
+ }
+ checkbox(e) {
+ return " ';
+ }
+ paragraph(e) {
+ return `${e}
+`;
+ }
+ table(e, t) {
+ return t && (t = `${t} `), `
+`;
+ }
+ tablerow(e) {
+ return `
+${e}
+`;
+ }
+ tablecell(e, t) {
+ const n = t.header ? "th" : "td";
+ return (t.align ? `<${n} align="${t.align}">` : `<${n}>`) + e + `${n}>
+`;
+ }
+ /**
+ * span level renderer
+ */
+ strong(e) {
+ return `${e} `;
+ }
+ em(e) {
+ return `${e} `;
+ }
+ codespan(e) {
+ return `${e}
`;
+ }
+ br() {
+ return " ";
+ }
+ del(e) {
+ return `${e}`;
+ }
+ link(e, t, n) {
+ const l = vi(e);
+ if (l === null)
+ return n;
+ e = l;
+ let a = '" + n + " ", a;
+ }
+ image(e, t, n) {
+ const l = vi(e);
+ if (l === null)
+ return n;
+ e = l;
+ let a = ` ", a;
+ }
+ text(e) {
+ return e;
+ }
+}
+class ri {
+ // no need for block level renderers
+ strong(e) {
+ return e;
+ }
+ em(e) {
+ return e;
+ }
+ codespan(e) {
+ return e;
+ }
+ del(e) {
+ return e;
+ }
+ html(e) {
+ return e;
+ }
+ text(e) {
+ return e;
+ }
+ link(e, t, n) {
+ return "" + n;
+ }
+ image(e, t, n) {
+ return "" + n;
+ }
+ br() {
+ return "";
+ }
+}
+class Re {
+ constructor(e) {
+ X(this, "options");
+ X(this, "renderer");
+ X(this, "textRenderer");
+ this.options = e || at, this.options.renderer = this.options.renderer || new gn(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.textRenderer = new ri();
+ }
+ /**
+ * Static Parse Method
+ */
+ static parse(e, t) {
+ return new Re(t).parse(e);
+ }
+ /**
+ * Static Parse Inline Method
+ */
+ static parseInline(e, t) {
+ return new Re(t).parseInline(e);
+ }
+ /**
+ * Parse Loop
+ */
+ parse(e, t = !0) {
+ let n = "";
+ for (let l = 0; l < e.length; l++) {
+ const a = e[l];
+ if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[a.type]) {
+ const r = a, o = this.options.extensions.renderers[r.type].call({ parser: this }, r);
+ if (o !== !1 || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "paragraph", "text"].includes(r.type)) {
+ n += o || "";
+ continue;
+ }
+ }
+ switch (a.type) {
+ case "space":
+ continue;
+ case "hr": {
+ n += this.renderer.hr();
+ continue;
+ }
+ case "heading": {
+ const r = a;
+ n += this.renderer.heading(this.parseInline(r.tokens), r.depth, gr(this.parseInline(r.tokens, this.textRenderer)));
+ continue;
+ }
+ case "code": {
+ const r = a;
+ n += this.renderer.code(r.text, r.lang, !!r.escaped);
+ continue;
+ }
+ case "table": {
+ const r = a;
+ let o = "", u = "";
+ for (let s = 0; s < r.header.length; s++)
+ u += this.renderer.tablecell(this.parseInline(r.header[s].tokens), { header: !0, align: r.align[s] });
+ o += this.renderer.tablerow(u);
+ let c = "";
+ for (let s = 0; s < r.rows.length; s++) {
+ const d = r.rows[s];
+ u = "";
+ for (let f = 0; f < d.length; f++)
+ u += this.renderer.tablecell(this.parseInline(d[f].tokens), { header: !1, align: r.align[f] });
+ c += this.renderer.tablerow(u);
+ }
+ n += this.renderer.table(o, c);
+ continue;
+ }
+ case "blockquote": {
+ const r = a, o = this.parse(r.tokens);
+ n += this.renderer.blockquote(o);
+ continue;
+ }
+ case "list": {
+ const r = a, o = r.ordered, u = r.start, c = r.loose;
+ let s = "";
+ for (let d = 0; d < r.items.length; d++) {
+ const f = r.items[d], h = f.checked, p = f.task;
+ let v = "";
+ if (f.task) {
+ const k = this.renderer.checkbox(!!h);
+ c ? f.tokens.length > 0 && f.tokens[0].type === "paragraph" ? (f.tokens[0].text = k + " " + f.tokens[0].text, f.tokens[0].tokens && f.tokens[0].tokens.length > 0 && f.tokens[0].tokens[0].type === "text" && (f.tokens[0].tokens[0].text = k + " " + f.tokens[0].tokens[0].text)) : f.tokens.unshift({
+ type: "text",
+ text: k + " "
+ }) : v += k + " ";
+ }
+ v += this.parse(f.tokens, c), s += this.renderer.listitem(v, p, !!h);
+ }
+ n += this.renderer.list(s, o, u);
+ continue;
+ }
+ case "html": {
+ const r = a;
+ n += this.renderer.html(r.text, r.block);
+ continue;
+ }
+ case "paragraph": {
+ const r = a;
+ n += this.renderer.paragraph(this.parseInline(r.tokens));
+ continue;
+ }
+ case "text": {
+ let r = a, o = r.tokens ? this.parseInline(r.tokens) : r.text;
+ for (; l + 1 < e.length && e[l + 1].type === "text"; )
+ r = e[++l], o += `
+` + (r.tokens ? this.parseInline(r.tokens) : r.text);
+ n += t ? this.renderer.paragraph(o) : o;
+ continue;
+ }
+ default: {
+ const r = 'Token with "' + a.type + '" type was not found.';
+ if (this.options.silent)
+ return console.error(r), "";
+ throw new Error(r);
+ }
+ }
+ }
+ return n;
+ }
+ /**
+ * Parse Inline Tokens
+ */
+ parseInline(e, t) {
+ t = t || this.renderer;
+ let n = "";
+ for (let l = 0; l < e.length; l++) {
+ const a = e[l];
+ if (this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[a.type]) {
+ const r = this.options.extensions.renderers[a.type].call({ parser: this }, a);
+ if (r !== !1 || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(a.type)) {
+ n += r || "";
+ continue;
+ }
+ }
+ switch (a.type) {
+ case "escape": {
+ const r = a;
+ n += t.text(r.text);
+ break;
+ }
+ case "html": {
+ const r = a;
+ n += t.html(r.text);
+ break;
+ }
+ case "link": {
+ const r = a;
+ n += t.link(r.href, r.title, this.parseInline(r.tokens, t));
+ break;
+ }
+ case "image": {
+ const r = a;
+ n += t.image(r.href, r.title, r.text);
+ break;
+ }
+ case "strong": {
+ const r = a;
+ n += t.strong(this.parseInline(r.tokens, t));
+ break;
+ }
+ case "em": {
+ const r = a;
+ n += t.em(this.parseInline(r.tokens, t));
+ break;
+ }
+ case "codespan": {
+ const r = a;
+ n += t.codespan(r.text);
+ break;
+ }
+ case "br": {
+ n += t.br();
+ break;
+ }
+ case "del": {
+ const r = a;
+ n += t.del(this.parseInline(r.tokens, t));
+ break;
+ }
+ case "text": {
+ const r = a;
+ n += t.text(r.text);
+ break;
+ }
+ default: {
+ const r = 'Token with "' + a.type + '" type was not found.';
+ if (this.options.silent)
+ return console.error(r), "";
+ throw new Error(r);
+ }
+ }
+ }
+ return n;
+ }
+}
+class Tt {
+ constructor(e) {
+ X(this, "options");
+ this.options = e || at;
+ }
+ /**
+ * Process markdown before marked
+ */
+ preprocess(e) {
+ return e;
+ }
+ /**
+ * Process HTML after marked is finished
+ */
+ postprocess(e) {
+ return e;
+ }
+ /**
+ * Process all tokens before walk tokens
+ */
+ processAllTokens(e) {
+ return e;
+ }
+}
+X(Tt, "passThroughHooks", /* @__PURE__ */ new Set([
+ "preprocess",
+ "postprocess",
+ "processAllTokens"
+]));
+var lt, Un, Ql;
+class Kl {
+ constructor(...e) {
+ fi(this, lt);
+ X(this, "defaults", ei());
+ X(this, "options", this.setOptions);
+ X(this, "parse", Xt(this, lt, Un).call(this, Me.lex, Re.parse));
+ X(this, "parseInline", Xt(this, lt, Un).call(this, Me.lexInline, Re.parseInline));
+ X(this, "Parser", Re);
+ X(this, "Renderer", gn);
+ X(this, "TextRenderer", ri);
+ X(this, "Lexer", Me);
+ X(this, "Tokenizer", pn);
+ X(this, "Hooks", Tt);
+ this.use(...e);
+ }
+ /**
+ * Run callback for every token
+ */
+ walkTokens(e, t) {
+ var l, a;
+ let n = [];
+ for (const r of e)
+ switch (n = n.concat(t.call(this, r)), r.type) {
+ case "table": {
+ const o = r;
+ for (const u of o.header)
+ n = n.concat(this.walkTokens(u.tokens, t));
+ for (const u of o.rows)
+ for (const c of u)
+ n = n.concat(this.walkTokens(c.tokens, t));
+ break;
+ }
+ case "list": {
+ const o = r;
+ n = n.concat(this.walkTokens(o.items, t));
+ break;
+ }
+ default: {
+ const o = r;
+ (a = (l = this.defaults.extensions) == null ? void 0 : l.childTokens) != null && a[o.type] ? this.defaults.extensions.childTokens[o.type].forEach((u) => {
+ const c = o[u].flat(1 / 0);
+ n = n.concat(this.walkTokens(c, t));
+ }) : o.tokens && (n = n.concat(this.walkTokens(o.tokens, t)));
+ }
+ }
+ return n;
+ }
+ use(...e) {
+ const t = this.defaults.extensions || { renderers: {}, childTokens: {} };
+ return e.forEach((n) => {
+ const l = { ...n };
+ if (l.async = this.defaults.async || l.async || !1, n.extensions && (n.extensions.forEach((a) => {
+ if (!a.name)
+ throw new Error("extension name required");
+ if ("renderer" in a) {
+ const r = t.renderers[a.name];
+ r ? t.renderers[a.name] = function(...o) {
+ let u = a.renderer.apply(this, o);
+ return u === !1 && (u = r.apply(this, o)), u;
+ } : t.renderers[a.name] = a.renderer;
+ }
+ if ("tokenizer" in a) {
+ if (!a.level || a.level !== "block" && a.level !== "inline")
+ throw new Error("extension level must be 'block' or 'inline'");
+ const r = t[a.level];
+ r ? r.unshift(a.tokenizer) : t[a.level] = [a.tokenizer], a.start && (a.level === "block" ? t.startBlock ? t.startBlock.push(a.start) : t.startBlock = [a.start] : a.level === "inline" && (t.startInline ? t.startInline.push(a.start) : t.startInline = [a.start]));
+ }
+ "childTokens" in a && a.childTokens && (t.childTokens[a.name] = a.childTokens);
+ }), l.extensions = t), n.renderer) {
+ const a = this.defaults.renderer || new gn(this.defaults);
+ for (const r in n.renderer) {
+ if (!(r in a))
+ throw new Error(`renderer '${r}' does not exist`);
+ if (r === "options")
+ continue;
+ const o = r, u = n.renderer[o], c = a[o];
+ a[o] = (...s) => {
+ let d = u.apply(a, s);
+ return d === !1 && (d = c.apply(a, s)), d || "";
+ };
+ }
+ l.renderer = a;
+ }
+ if (n.tokenizer) {
+ const a = this.defaults.tokenizer || new pn(this.defaults);
+ for (const r in n.tokenizer) {
+ if (!(r in a))
+ throw new Error(`tokenizer '${r}' does not exist`);
+ if (["options", "rules", "lexer"].includes(r))
+ continue;
+ const o = r, u = n.tokenizer[o], c = a[o];
+ a[o] = (...s) => {
+ let d = u.apply(a, s);
+ return d === !1 && (d = c.apply(a, s)), d;
+ };
+ }
+ l.tokenizer = a;
+ }
+ if (n.hooks) {
+ const a = this.defaults.hooks || new Tt();
+ for (const r in n.hooks) {
+ if (!(r in a))
+ throw new Error(`hook '${r}' does not exist`);
+ if (r === "options")
+ continue;
+ const o = r, u = n.hooks[o], c = a[o];
+ Tt.passThroughHooks.has(r) ? a[o] = (s) => {
+ if (this.defaults.async)
+ return Promise.resolve(u.call(a, s)).then((f) => c.call(a, f));
+ const d = u.call(a, s);
+ return c.call(a, d);
+ } : a[o] = (...s) => {
+ let d = u.apply(a, s);
+ return d === !1 && (d = c.apply(a, s)), d;
+ };
+ }
+ l.hooks = a;
+ }
+ if (n.walkTokens) {
+ const a = this.defaults.walkTokens, r = n.walkTokens;
+ l.walkTokens = function(o) {
+ let u = [];
+ return u.push(r.call(this, o)), a && (u = u.concat(a.call(this, o))), u;
+ };
+ }
+ this.defaults = { ...this.defaults, ...l };
+ }), this;
+ }
+ setOptions(e) {
+ return this.defaults = { ...this.defaults, ...e }, this;
+ }
+ lexer(e, t) {
+ return Me.lex(e, t ?? this.defaults);
+ }
+ parser(e, t) {
+ return Re.parse(e, t ?? this.defaults);
+ }
+}
+lt = new WeakSet(), Un = function(e, t) {
+ return (n, l) => {
+ const a = { ...l }, r = { ...this.defaults, ...a };
+ this.defaults.async === !0 && a.async === !1 && (r.silent || console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."), r.async = !0);
+ const o = Xt(this, lt, Ql).call(this, !!r.silent, !!r.async);
+ if (typeof n > "u" || n === null)
+ return o(new Error("marked(): input parameter is undefined or null"));
+ if (typeof n != "string")
+ return o(new Error("marked(): input parameter is of type " + Object.prototype.toString.call(n) + ", string expected"));
+ if (r.hooks && (r.hooks.options = r), r.async)
+ return Promise.resolve(r.hooks ? r.hooks.preprocess(n) : n).then((u) => e(u, r)).then((u) => r.hooks ? r.hooks.processAllTokens(u) : u).then((u) => r.walkTokens ? Promise.all(this.walkTokens(u, r.walkTokens)).then(() => u) : u).then((u) => t(u, r)).then((u) => r.hooks ? r.hooks.postprocess(u) : u).catch(o);
+ try {
+ r.hooks && (n = r.hooks.preprocess(n));
+ let u = e(n, r);
+ r.hooks && (u = r.hooks.processAllTokens(u)), r.walkTokens && this.walkTokens(u, r.walkTokens);
+ let c = t(u, r);
+ return r.hooks && (c = r.hooks.postprocess(c)), c;
+ } catch (u) {
+ return o(u);
+ }
+ };
+}, Ql = function(e, t) {
+ return (n) => {
+ if (n.message += `
+Please report this to https://github.com/markedjs/marked.`, e) {
+ const l = "An error occurred:
" + me(n.message + "", !0) + " ";
+ return t ? Promise.resolve(l) : l;
+ }
+ if (t)
+ return Promise.reject(n);
+ throw n;
+ };
+};
+const it = new Kl();
+function j(i, e) {
+ return it.parse(i, e);
+}
+j.options = j.setOptions = function(i) {
+ return it.setOptions(i), j.defaults = it.defaults, Pl(j.defaults), j;
+};
+j.getDefaults = ei;
+j.defaults = at;
+j.use = function(...i) {
+ return it.use(...i), j.defaults = it.defaults, Pl(j.defaults), j;
+};
+j.walkTokens = function(i, e) {
+ return it.walkTokens(i, e);
+};
+j.parseInline = it.parseInline;
+j.Parser = Re;
+j.parser = Re.parse;
+j.Renderer = gn;
+j.TextRenderer = ri;
+j.Lexer = Me;
+j.lexer = Me.lex;
+j.Tokenizer = pn;
+j.Hooks = Tt;
+j.parse = j;
+j.options;
+j.setOptions;
+j.use;
+j.walkTokens;
+j.parseInline;
+Re.parse;
+Me.lex;
+function Vr(i) {
+ if (typeof i == "function" && (i = {
+ highlight: i
+ }), !i || typeof i.highlight != "function")
+ throw new Error("Must provide highlight function");
+ return typeof i.langPrefix != "string" && (i.langPrefix = "language-"), typeof i.emptyLangClass != "string" && (i.emptyLangClass = ""), {
+ async: !!i.async,
+ walkTokens(e) {
+ if (e.type !== "code")
+ return;
+ const t = ki(e.lang);
+ if (i.async)
+ return Promise.resolve(i.highlight(e.text, t, e.lang || "")).then(Fi(e));
+ const n = i.highlight(e.text, t, e.lang || "");
+ if (n instanceof Promise)
+ throw new Error("markedHighlight is not set to async but the highlight function is async. Set the async option to true on markedHighlight to await the async highlight function.");
+ Fi(e)(n);
+ },
+ useNewRenderer: !0,
+ renderer: {
+ code(e, t, n) {
+ typeof e == "object" && (n = e.escaped, t = e.lang, e = e.text);
+ const l = ki(t), a = l ? i.langPrefix + Ci(l) : i.emptyLangClass, r = a ? ` class="${a}"` : "";
+ return e = e.replace(/\n$/, ""), `${n ? e : Ci(e, !0)}
+
`;
+ }
+ }
+ };
+}
+function ki(i) {
+ return (i || "").match(/\S*/)[0];
+}
+function Fi(i) {
+ return (e) => {
+ typeof e == "string" && e !== i.text && (i.escaped = !0, i.text = e);
+ };
+}
+const Jl = /[&<>"']/, Xr = new RegExp(Jl.source, "g"), ea = /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, Wr = new RegExp(ea.source, "g"), Yr = {
+ "&": "&",
+ "<": "<",
+ ">": ">",
+ '"': """,
+ "'": "'"
+}, $i = (i) => Yr[i];
+function Ci(i, e) {
+ if (e) {
+ if (Jl.test(i))
+ return i.replace(Xr, $i);
+ } else if (ea.test(i))
+ return i.replace(Wr, $i);
+ return i;
+}
+const Kr = /[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g, Qr = Object.hasOwnProperty;
+class oi {
+ /**
+ * Create a new slug class.
+ */
+ constructor() {
+ this.occurrences, this.reset();
+ }
+ /**
+ * Generate a unique slug.
+ *
+ * Tracks previously generated slugs: repeated calls with the same value
+ * will result in different slugs.
+ * Use the `slug` function to get same slugs.
+ *
+ * @param {string} value
+ * String of text to slugify
+ * @param {boolean} [maintainCase=false]
+ * Keep the current case, otherwise make all lowercase
+ * @return {string}
+ * A unique slug string
+ */
+ slug(e, t) {
+ const n = this;
+ let l = Jr(e, t === !0);
+ const a = l;
+ for (; Qr.call(n.occurrences, l); )
+ n.occurrences[a]++, l = a + "-" + n.occurrences[a];
+ return n.occurrences[l] = 0, l;
+ }
+ /**
+ * Reset - Forget all previous slugs
+ *
+ * @return void
+ */
+ reset() {
+ this.occurrences = /* @__PURE__ */ Object.create(null);
+ }
+}
+function Jr(i, e) {
+ return typeof i != "string" ? "" : (e || (i = i.toLowerCase()), i.replace(Kr, "").replace(/ /g, "-"));
+}
+let ta = new oi(), na = [];
+function eo({ prefix: i = "", globalSlugs: e = !1 } = {}) {
+ return {
+ headerIds: !1,
+ // prevent deprecation warning; remove this once headerIds option is removed
+ hooks: {
+ preprocess(t) {
+ return e || to(), t;
+ }
+ },
+ renderer: {
+ heading(t, n, l) {
+ l = l.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi, "");
+ const a = `${i}${ta.slug(l)}`, r = { level: n, text: t, id: a };
+ return na.push(r), `${t}
+`;
+ }
+ }
+ };
+}
+function to() {
+ na = [], ta = new oi();
+}
+var Ei = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
+function B_(i) {
+ return i && i.__esModule && Object.prototype.hasOwnProperty.call(i, "default") ? i.default : i;
+}
+var ia = { exports: {} };
+(function(i) {
+ var e = typeof window < "u" ? window : typeof WorkerGlobalScope < "u" && self instanceof WorkerGlobalScope ? self : {};
+ /**
+ * Prism: Lightweight, robust, elegant syntax highlighting
+ *
+ * @license MIT
+ * @author Lea Verou
+ * @namespace
+ * @public
+ */
+ var t = function(n) {
+ var l = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i, a = 0, r = {}, o = {
+ /**
+ * By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the
+ * current page after the page finished loading. This might be a problem if e.g. you wanted to asynchronously load
+ * additional languages or plugins yourself.
+ *
+ * By setting this value to `true`, Prism will not automatically highlight all code elements on the page.
+ *
+ * You obviously have to change this value before the automatic highlighting started. To do this, you can add an
+ * empty Prism object into the global scope before loading the Prism script like this:
+ *
+ * ```js
+ * window.Prism = window.Prism || {};
+ * Prism.manual = true;
+ * // add a new