ranui
Version:
A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.
1,086 lines (1,085 loc) • 38.3 kB
JavaScript
import { n as t } from "./chunk-Y2CYZVJY-0JxdZxki.js";
import { h as de, m as f, p as R } from "./src-DtRLxcYO.js";
import { $ as Fe, C as $e, E as ce, I as Y, L as Oe, N as W, P as ar, Q as ze, S as ir, T as Pe, V as Ve, W as Ne, X as Ge, Z as rr, _ as He, b as q, c as je, g as qe, l as pr, m as nr, n as Be, p as le, q as Ue, r as Xe, t as Ye, u as vr } from "./chunk-WYO6CB5R-DDHkKowO.js";
import { S as We, a as Qe, f as me, g as G, h as Ke, i as Ze, o as Je, v as rt, x as et, y as tt } from "./chunk-ICXQ74PX-DR8rL-xF.js";
import { t as at } from "./chunk-VAUOI2AC-izt0o4id.js";
import { r as it } from "./chunk-HOUHSVGY-DRQcQeMT.js";
import { r as nt } from "./chunk-Q4XR5HBZ-3BHjjc9u.js";
import "./chunk-7BUUIJ7U-9hiBbc7O.js";
import "./chunk-OGEWGWER-BV51ll2w.js";
import "./chunk-C7G6YPKG-CA-DNpvI.js";
import "./chunk-ZGVPDNZ5-6uMbTJXy.js";
import "./chunk-52WLFC77-wpL7en7e.js";
import { n as st } from "./chunk-FWX5IMBZ-DZ5VYvm5.js";
import { n as ot, t as dt } from "./chunk-ZIRB5QZD-C7OH2FI2.js";
function ct(r) {
const e = r?.constructor;
return r === (typeof e == "function" ? e.prototype : Object.prototype);
}
function hr(r) {
if (r == null) return !0;
if (et(r))
return typeof r.splice != "function" && typeof r != "string" && !We(r) && !rt(r) && !tt(r) ? !1 : r.length === 0;
if (typeof r == "object" || typeof r == "function") {
if (r instanceof Map || r instanceof Set) return r.size === 0;
const e = Object.keys(r);
return ct(r) ? e.filter((i) => i !== "constructor").length === 0 : e.length === 0;
}
return !0;
}
var mr = "comm", ue = "rule", fe = "decl";
var lt = "@import";
var mt = "@namespace", ut = "@keyframes", ft = "@layer";
var gt = Math.abs, H = String.fromCharCode;
function ge(r) {
return r.trim();
}
function sr(r, e, i) {
return r.replace(e, i);
}
function z(r, e) {
return r.charCodeAt(e) | 0;
}
function P(r, e, i) {
return r.slice(e, i);
}
function L(r) {
return r.length;
}
function pe(r) {
return r.length;
}
function B(r, e) {
return e.push(r), r;
}
var K = 1, V = 1, ve = 0, S = 0, p = 0, N = "";
function ur(r, e, i, a, n, s, o, d) {
return {
value: r,
root: e,
parent: i,
type: a,
props: n,
children: s,
line: K,
column: V,
length: o,
return: "",
siblings: d
};
}
function pt() {
return p;
}
function vt() {
return p = S > 0 ? z(N, --S) : 0, V--, p === 10 && (V = 1, K--), p;
}
function D() {
return p = S < ve ? z(N, S++) : 0, V++, p === 10 && (V = 1, K++), p;
}
function I() {
return z(N, S);
}
function U() {
return S;
}
function Z(r, e) {
return P(N, r, e);
}
function j(r) {
switch (r) {
case 0:
case 9:
case 10:
case 13:
case 32:
return 5;
case 33:
case 43:
case 44:
case 47:
case 62:
case 64:
case 126:
case 59:
case 123:
case 125:
return 4;
case 58:
return 3;
case 34:
case 39:
case 40:
case 91:
return 2;
case 41:
case 93:
return 1;
}
return 0;
}
function ht(r) {
return K = V = 1, ve = L(N = r), S = 0, [];
}
function yt(r) {
return N = "", r;
}
function er(r) {
return ge(Z(S - 1, or(r === 91 ? r + 2 : r === 40 ? r + 1 : r)));
}
function wt(r) {
for (; (p = I()) && p < 33; ) D();
return j(r) > 2 || j(p) > 3 ? "" : " ";
}
function bt(r, e) {
for (; --e && D() && !(p < 48 || p > 102 || p > 57 && p < 65 || p > 70 && p < 97); ) ;
return Z(r, U() + (e < 6 && I() == 32 && D() == 32));
}
function or(r) {
for (; D(); ) switch (p) {
case r:
return S;
case 34:
case 39:
r !== 34 && r !== 39 && or(p);
break;
case 40:
r === 41 && or(r);
break;
case 92:
D();
break;
}
return S;
}
function St(r, e) {
for (; D() && r + p !== 57; ) if (r + p === 84 && I() === 47) break;
return "/*" + Z(e, S - 1) + "*" + H(r === 47 ? r : D());
}
function Dt(r) {
for (; !j(I()); ) D();
return Z(r, S);
}
function Et(r) {
return yt(X("", null, null, null, [""], r = ht(r), 0, [0], r));
}
function X(r, e, i, a, n, s, o, d, m) {
for (var h = 0, v = 0, l = o, y = 0, E = 0, _ = 0, u = 1, C = 1, T = 1, w = 0, g = 0, x = "", O = n, k = s, b = a, c = x; C; ) switch (_ = g, g = D()) {
case 40:
_ != 108 && z(c, l - 1) == 58 ? (w++, c += "(") : c += er(g);
break;
case 41:
w--, c += ")";
break;
case 34:
case 39:
case 91:
c += er(g);
break;
case 9:
case 10:
case 13:
case 32:
if (w > 0) {
c += H(g);
break;
}
c += wt(_);
break;
case 92:
c += bt(U() - 1, 7);
continue;
case 47:
switch (I()) {
case 42:
case 47:
B(_t(St(D(), U()), e, i, m), m), (j(_ || 1) == 5 || j(I() || 1) == 5) && L(c) && P(c, -1, void 0) !== " " && (c += " ");
break;
default:
c += "/";
}
break;
case 123 * u:
d[h++] = L(c) * T;
case 125 * u:
case 59:
case 0:
if (w > 0 && g) {
c += H(g);
break;
}
switch (g) {
case 0:
case 125:
C = 0;
case 59 + v:
T == -1 && (c = sr(c, /\f/g, "")), E > 0 && (L(c) - l || u === 0) && B(E > 32 ? wr(c + ";", a, i, l - 1, m) : wr(sr(c, " ", "") + ";", a, i, l - 2, m), m);
break;
case 59:
c += ";";
default:
if (B(b = yr(c, e, i, h, v, n, d, x, O = [], k = [], l, s), s), g === 123) if (v === 0) X(c, e, b, b, O, s, l, d, k);
else {
switch (y) {
case 99:
if (z(c, 3) === 110) break;
case 108:
if (z(c, 2) === 97) break;
default:
v = 0;
case 100:
case 109:
case 115:
}
v ? X(r, b, b, a && B(yr(r, b, b, 0, 0, n, d, x, n, O = [], l, k), k), n, k, l, d, a ? O : k) : X(c, b, b, b, [""], k, 0, d, k);
}
}
h = v = E = 0, u = T = 1, x = c = "", l = o;
break;
case 58:
l = 1 + L(c), E = _;
default:
if (u < 1) {
if (g == 123) --u;
else if (g == 125 && u++ == 0 && vt() == 125) continue;
}
switch (c += H(g), g * u) {
case 38:
T = v > 0 ? 1 : (c += "\f", -1);
break;
case 44:
if (w > 0) break;
d[h++] = (L(c) - 1) * T, T = 1;
break;
case 64:
I() === 45 && (c += er(D())), y = I(), v = l = L(x = c += Dt(U())), g++;
break;
case 45:
_ === 45 && L(c) == 2 && (u = 0);
}
}
return s;
}
function yr(r, e, i, a, n, s, o, d, m, h, v, l) {
for (var y = n - 1, E = n === 0 ? s : [""], _ = pe(E), u = 0, C = 0, T = 0; u < a; ++u) for (var w = 0, g = P(r, y + 1, y = gt(C = o[u])), x = r; w < _; ++w) (x = ge(C > 0 ? E[w] + " " + g : sr(g, /&\f/g, E[w]))) && (m[T++] = x);
return ur(r, e, i, n === 0 ? ue : d, m, h, v, l);
}
function _t(r, e, i, a) {
return ur(r, e, i, mr, H(pt()), P(r, 2, -2), 0, a);
}
function wr(r, e, i, a, n) {
return ur(r, e, i, fe, P(r, 0, a), P(r, a + 1, -1), a, n);
}
function dr(r, e) {
for (var i = "", a = 0; a < r.length; a++) i += e(r[a], a, r, e) || "";
return i;
}
function Tt(r, e, i, a) {
switch (r.type) {
case ft:
if (r.children.length) break;
case lt:
case mt:
case fe:
return r.return = r.return || r.value;
case mr:
return "";
case ut:
return r.return = r.value + "{" + dr(r.children, a) + "}";
case ue:
if (!L(r.value = r.props.join(","))) return "";
}
return L(i = dr(r.children, a)) ? r.return = r.value + "{" + i + "}" : "";
}
function xt(r) {
var e = pe(r);
return function(i, a, n, s) {
for (var o = "", d = 0; d < e; d++) o += r[d](i, a, n, s) || "";
return o;
};
}
var br = "c4", kt = {
id: br,
detector: /* @__PURE__ */ t((r) => /^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./c4Diagram-LMCZKHZV-Cxn_gqu_.js");
return {
id: br,
diagram: r
};
}, "loader")
}, Sr = "flowchart", At = {
id: Sr,
detector: /* @__PURE__ */ t((r, e) => e?.flowchart?.defaultRenderer === "dagre-wrapper" || e?.flowchart?.defaultRenderer === "elk" ? !1 : /^\s*graph/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./flowDiagram-23GEKE2U-BY4wE2vw.js");
return {
id: Sr,
diagram: r
};
}, "loader")
}, Dr = "flowchart-v2", Lt = {
id: Dr,
detector: /* @__PURE__ */ t((r, e) => e?.flowchart?.defaultRenderer === "dagre-d3" ? !1 : (e?.flowchart?.defaultRenderer === "elk" && (e.layout = "elk"), /^\s*graph/.test(r) && e?.flowchart?.defaultRenderer === "dagre-wrapper" ? !0 : /^\s*flowchart/.test(r)), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./flowDiagram-23GEKE2U-BY4wE2vw.js");
return {
id: Dr,
diagram: r
};
}, "loader")
}, Er = "swimlane", Ct = {
id: Er,
detector: /* @__PURE__ */ t((r) => /^\s*swimlane-beta\b/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./swimlanesDiagram-G3AALYLV-DDtDtl1L.js");
return {
id: Er,
diagram: r
};
}, "loader")
}, _r = "er", Mt = {
id: _r,
detector: /* @__PURE__ */ t((r) => /^\s*erDiagram/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./erDiagram-Q63AITRT-D0Hh9b-W.js");
return {
id: _r,
diagram: r
};
}, "loader")
}, Tr = "gitGraph", Rt = {
id: Tr,
detector: /* @__PURE__ */ t((r) => /^\s*gitGraph/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./gitGraphDiagram-IHSO6WYX-BUJNSssA.js");
return {
id: Tr,
diagram: r
};
}, "loader")
}, xr = "gantt", It = {
id: xr,
detector: /* @__PURE__ */ t((r) => /^\s*gantt/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./ganttDiagram-NO4QXBWP-B40Eabk0.js");
return {
id: xr,
diagram: r
};
}, "loader")
}, kr = "info", Ft = {
id: kr,
detector: /* @__PURE__ */ t((r) => /^\s*info/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./infoDiagram-FWYZ7A6U-Dc0m9qAx.js");
return {
id: kr,
diagram: r
};
}, "loader")
}, Ar = "pie", $t = {
id: Ar,
detector: /* @__PURE__ */ t((r) => /^\s*pie/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./pieDiagram-ENE6RG2P-CVSE95zc.js");
return {
id: Ar,
diagram: r
};
}, "loader")
}, Lr = "quadrantChart", Ot = {
id: Lr,
detector: /* @__PURE__ */ t((r) => /^\s*quadrantChart/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./quadrantDiagram-ABIIQ3AL-TJ8FmqES.js");
return {
id: Lr,
diagram: r
};
}, "loader")
}, Cr = "xychart", zt = {
id: Cr,
detector: /* @__PURE__ */ t((r) => /^\s*xychart(-beta)?/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./xychartDiagram-FW5EYKEG-DLqWcTPt.js");
return {
id: Cr,
diagram: r
};
}, "loader")
}, Mr = "requirement", Pt = {
id: Mr,
detector: /* @__PURE__ */ t((r) => /^\s*requirement(Diagram)?/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./requirementDiagram-TGXJPOKE-viCQLyJd.js");
return {
id: Mr,
diagram: r
};
}, "loader")
}, Rr = "sequence", Vt = {
id: Rr,
detector: /* @__PURE__ */ t((r) => /^\s*sequenceDiagram/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./sequenceDiagram-DBY2YBRQ-B9WNesh2.js");
return {
id: Rr,
diagram: r
};
}, "loader")
}, Ir = "class", Nt = {
id: Ir,
detector: /* @__PURE__ */ t((r, e) => e?.class?.defaultRenderer === "dagre-wrapper" ? !1 : /^\s*classDiagram/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./classDiagram-OUVF2IWQ-Df0ghim9.js");
return {
id: Ir,
diagram: r
};
}, "loader")
}, Fr = "classDiagram", Gt = {
id: Fr,
detector: /* @__PURE__ */ t((r, e) => /^\s*classDiagram/.test(r) && e?.class?.defaultRenderer === "dagre-wrapper" ? !0 : /^\s*classDiagram-v2/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./classDiagram-v2-EOCWNBFH-Df0ghim9.js");
return {
id: Fr,
diagram: r
};
}, "loader")
}, $r = "state", Ht = {
id: $r,
detector: /* @__PURE__ */ t((r, e) => e?.state?.defaultRenderer === "dagre-wrapper" ? !1 : /^\s*stateDiagram/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./stateDiagram-2N3HPSRC-DxH4BMSh.js");
return {
id: $r,
diagram: r
};
}, "loader")
}, Or = "stateDiagram", jt = {
id: Or,
detector: /* @__PURE__ */ t((r, e) => !!(/^\s*stateDiagram-v2/.test(r) || /^\s*stateDiagram/.test(r) && e?.state?.defaultRenderer === "dagre-wrapper"), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./stateDiagram-v2-6OUMAXLB-CWfn6e7n.js");
return {
id: Or,
diagram: r
};
}, "loader")
}, zr = "journey", qt = {
id: zr,
detector: /* @__PURE__ */ t((r) => /^\s*journey/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./journeyDiagram-5HDEW3XC-Bshelnhq.js");
return {
id: zr,
diagram: r
};
}, "loader")
}, he = { draw: /* @__PURE__ */ t((r, e, i) => {
f.debug(`rendering svg for syntax error
`);
const a = at(e), n = a.append("g");
a.attr("viewBox", "0 0 2412 512"), je(a, 100, 512, !0), n.append("path").attr("class", "error-icon").attr("d", "m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"), n.append("path").attr("class", "error-icon").attr("d", "m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"), n.append("path").attr("class", "error-icon").attr("d", "m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"), n.append("path").attr("class", "error-icon").attr("d", "m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"), n.append("path").attr("class", "error-icon").attr("d", "m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"), n.append("path").attr("class", "error-icon").attr("d", "m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"), n.append("text").attr("class", "error-text").attr("x", 1440).attr("y", 250).attr("font-size", "150px").style("text-anchor", "middle").text("Syntax error in text"), n.append("text").attr("class", "error-text").attr("x", 1250).attr("y", 400).attr("font-size", "100px").style("text-anchor", "middle").text(`mermaid version ${i}`);
}, "draw") }, Bt = he, Ut = {
db: {},
renderer: he,
parser: { parse: /* @__PURE__ */ t(() => {
}, "parse") }
}, Pr = "flowchart-elk", Xt = {
id: Pr,
detector: /* @__PURE__ */ t((r, e = {}) => /^\s*flowchart-elk/.test(r) || /^\s*(flowchart|graph)/.test(r) && e?.flowchart?.defaultRenderer === "elk" ? (e.layout = "elk", !0) : !1, "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./flowDiagram-23GEKE2U-BY4wE2vw.js");
return {
id: Pr,
diagram: r
};
}, "loader")
}, Vr = "timeline", Yt = {
id: Vr,
detector: /* @__PURE__ */ t((r) => /^\s*timeline/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./timeline-definition-FHXFAJF6-C80VjPLh.js");
return {
id: Vr,
diagram: r
};
}, "loader")
}, Nr = "mindmap", Wt = {
id: Nr,
detector: /* @__PURE__ */ t((r) => /^\s*mindmap/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./mindmap-definition-LN4V7U3C-f7s5ZePP.js");
return {
id: Nr,
diagram: r
};
}, "loader")
}, Gr = "kanban", Qt = {
id: Gr,
detector: /* @__PURE__ */ t((r) => /^\s*kanban/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./kanban-definition-HUTT4EX6-Dogv2paU.js");
return {
id: Gr,
diagram: r
};
}, "loader")
}, Hr = "sankey", Kt = {
id: Hr,
detector: /* @__PURE__ */ t((r) => /^\s*sankey(-beta)?/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./sankeyDiagram-HTMAVEWB-CV6_AuMF.js");
return {
id: Hr,
diagram: r
};
}, "loader")
}, jr = "packet", Zt = {
id: jr,
detector: /* @__PURE__ */ t((r) => /^\s*packet(-beta)?/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./diagram-NH7WQ7WH-W7jg4Vh8.js");
return {
id: jr,
diagram: r
};
}, "loader")
}, qr = "radar", Jt = {
id: qr,
detector: /* @__PURE__ */ t((r) => /^\s*radar-beta/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./diagram-WEI45ONY-C_Qhf4ny.js");
return {
id: qr,
diagram: r
};
}, "loader")
}, Br = "block", ra = {
id: Br,
detector: /* @__PURE__ */ t((r) => /^\s*block(-beta)?/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./blockDiagram-677ZJIJ3-3F79MOSt.js");
return {
id: Br,
diagram: r
};
}, "loader")
}, Ur = "treeView", ea = {
id: Ur,
detector: /* @__PURE__ */ t((r) => /^\s*treeView-beta/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./diagram-OA4YK3LP-jU--aqQl.js");
return {
id: Ur,
diagram: r
};
}, "loader")
}, Xr = "architecture", ta = {
id: Xr,
detector: /* @__PURE__ */ t((r) => /^\s*architecture/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./architectureDiagram-ZJ3FMSHR-8mjyXr-w.js");
return {
id: Xr,
diagram: r
};
}, "loader")
}, Yr = "eventmodeling", aa = {
id: Yr,
detector: /* @__PURE__ */ t((r) => /^\s*eventmodeling/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./diagram-FQU43EPY-BvQ5jmVn.js");
return {
id: Yr,
diagram: r
};
}, "loader")
}, Wr = "ishikawa", ia = {
id: Wr,
detector: /* @__PURE__ */ t((r) => /^\s*ishikawa(-beta)?\b/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./ishikawaDiagram-FXEZZL3T-DuFtHOmf.js");
return {
id: Wr,
diagram: r
};
}, "loader")
}, Qr = "venn", na = {
id: Qr,
detector: /* @__PURE__ */ t((r) => /^\s*venn-beta/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./vennDiagram-L72KCM5P-BYHB7OW8.js");
return {
id: Qr,
diagram: r
};
}, "loader")
}, Kr = "treemap", sa = {
id: Kr,
detector: /* @__PURE__ */ t((r) => /^\s*treemap/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./diagram-G47NLZAW-DT2BBA0T.js");
return {
id: Kr,
diagram: r
};
}, "loader")
}, Zr = "wardley", oa = {
id: Zr,
detector: /* @__PURE__ */ t((r) => /^\s*wardley-beta/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./wardleyDiagram-EHGQE667--ubmCaWM.js");
return {
id: Zr,
diagram: r
};
}, "loader")
}, Jr = "cynefin", da = {
id: Jr,
detector: /* @__PURE__ */ t((r) => /^\s*cynefin-beta(?:[\s:]|$)/.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./cynefinDiagram-TSTJHNR4-Bjt4QTVh.js");
return {
id: Jr,
diagram: r
};
}, "loader")
}, re = "railroad", ca = {
id: re,
detector: /* @__PURE__ */ t((r) => /^\s*railroad-beta/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./railroadDiagram-RFXS5EU6-0lS5wYI7.js");
return {
id: re,
diagram: r
};
}, "loader")
}, ee = "railroadEbnf", la = {
id: ee,
detector: /* @__PURE__ */ t((r) => /^\s*railroad-ebnf-beta/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./ebnfDiagram-CCIWWBDH-Gnr20Oc1.js");
return {
id: ee,
diagram: r
};
}, "loader")
}, te = "railroadAbnf", ma = {
id: te,
detector: /* @__PURE__ */ t((r) => /^\s*railroad-abnf-beta/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./abnfDiagram-VRR7QNED-CTsqwzwi.js");
return {
id: te,
diagram: r
};
}, "loader")
}, ae = "railroadPeg", ua = {
id: ae,
detector: /* @__PURE__ */ t((r) => /^\s*railroad-peg-beta/i.test(r), "detector"),
loader: /* @__PURE__ */ t(async () => {
const { diagram: r } = await import("./pegDiagram-2B236MQR-B-Xeh55J.js");
return {
id: ae,
diagram: r
};
}, "loader")
}, ie = !1, J = /* @__PURE__ */ t(() => {
ie || (ie = !0, W("error", Ut, (r) => r.toLowerCase().trim() === "error"), W("---", {
db: { clear: /* @__PURE__ */ t(() => {
}, "clear") },
styles: {},
renderer: { draw: /* @__PURE__ */ t(() => {
}, "draw") },
parser: { parse: /* @__PURE__ */ t(() => {
throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks");
}, "parse") },
init: /* @__PURE__ */ t(() => null, "init")
}, (r) => r.toLowerCase().trimStart().startsWith("---")), ar(Xt, Wt, ta), ar(kt, Qt, Gt, Nt, Mt, It, Ft, $t, Pt, Vt, Ct, Lt, At, Yt, Rt, jt, Ht, qt, Ot, Kt, Zt, zt, ra, aa, ea, Jt, ia, sa, ca, la, ma, ua, na, oa, da));
}, "addDiagrams"), fa = /* @__PURE__ */ t(async () => {
f.debug("Loading registered diagrams");
const r = (await Promise.allSettled(Object.entries(nr).map(async ([e, { detector: i, loader: a }]) => {
if (a)
try {
ir(e);
} catch {
try {
const { diagram: n, id: s } = await a();
W(s, n, i);
} catch (n) {
throw f.error(`Failed to load external diagram with key ${e}. Removing from detectors.`), delete nr[e], n;
}
}
}))).filter((e) => e.status === "rejected");
if (r.length > 0) {
f.error(`Failed to load ${r.length} external diagrams`);
for (const e of r) f.error(e);
throw new Error(`Failed to load ${r.length} external diagrams`);
}
}, "loadRegisteredDiagrams"), ga = "graphics-document document";
function ye(r, e) {
r.attr("role", ga), e !== "" && r.attr("aria-roledescription", e);
}
t(ye, "setA11yDiagramInfo");
function we(r, e, i, a) {
if (r.insert !== void 0) {
if (i) {
const n = `chart-desc-${a}`;
r.attr("aria-describedby", n), r.insert("desc", ":first-child").attr("id", n).text(i);
}
if (e) {
const n = `chart-title-${a}`;
r.attr("aria-labelledby", n), r.insert("title", ":first-child").attr("id", n).text(e);
}
}
}
t(we, "addSVGa11yTitleDescription");
var cr = class be {
constructor(e, i, a, n, s) {
this.type = e, this.text = i, this.db = a, this.parser = n, this.renderer = s;
}
static {
t(this, "Diagram");
}
static async fromText(e, i = {}) {
const a = q(), n = le(e, a);
e = Je(e) + `
`;
try {
ir(n);
} catch {
const h = $e(n);
if (!h) throw new Ye(`Diagram ${n} not found.`);
const { id: v, diagram: l } = await h();
W(v, l);
}
const { db: s, parser: o, renderer: d, init: m } = ir(n);
return o.parser && (o.parser.yy = s), s.clear?.(), m?.(a), i.title && s.setDiagramTitle?.(i.title), await o.parse(e), new be(n, e, s, o, d);
}
async render(e, i) {
await this.renderer.draw(this.text, e, i, this);
}
getParser() {
return this.parser;
}
getType() {
return this.type;
}
}, ne = [], pa = /* @__PURE__ */ t(() => {
ne.forEach((r) => {
r();
}), ne = [];
}, "attachFunctions"), va = /* @__PURE__ */ t((r) => r.replace(/^\s*%%(?!{)[^\n]+\n?/gm, "").trimStart(), "cleanupComments");
function Se(r) {
const e = r.match(He);
if (!e) return {
text: r,
metadata: {}
};
const i = e[1];
let a = ot(i ? e[2].split(`
`).map((s) => s.startsWith(i) ? s.slice(i.length) : s).join(`
`) : e[2], { schema: dt }) ?? {};
a = typeof a == "object" && !Array.isArray(a) ? a : {};
const n = {};
return a.displayMode && (n.displayMode = a.displayMode.toString()), a.title && (n.title = a.title.toString()), a.config && (n.config = a.config), {
text: r.slice(e[0].length),
metadata: n
};
}
t(Se, "extractFrontMatter");
var ha = /* @__PURE__ */ t((r) => r.replace(/\r\n?/g, `
`).replace(/<(\w+)([^>]*)>/g, (e, i, a) => "<" + i + a.replace(/="([^"]*)"/g, "='$1'") + ">"), "cleanupText"), ya = /* @__PURE__ */ t((r) => {
const { text: e, metadata: i } = Se(r), { displayMode: a, title: n, config: s = {} } = i;
return a && (s.gantt || (s.gantt = {}), s.gantt.displayMode = a), {
title: n,
config: s,
text: e
};
}, "processFrontmatter"), wa = /* @__PURE__ */ t((r) => {
const e = G.detectInit(r) ?? {}, i = G.detectDirective(r, "wrap");
return Array.isArray(i) ? e.wrap = i.some(({ type: a }) => a === "wrap") : i?.type === "wrap" && (e.wrap = !0), {
text: Ke(r),
directive: e
};
}, "processDirectives");
function fr(r) {
const e = ya(ha(r)), i = wa(e.text), a = Ze(e.config, i.directive);
return r = va(i.text), {
code: r,
title: e.title,
config: a
};
}
t(fr, "preprocessDiagram");
function De(r) {
const e = new TextEncoder().encode(r), i = Array.from(e, (a) => String.fromCodePoint(a)).join("");
return btoa(i);
}
t(De, "toBase64");
var ba = 5e4, Sa = "graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa", Da = "sandbox", Ea = "loose", _a = "http://www.w3.org/2000/svg", Ta = "http://www.w3.org/1999/xlink", xa = "http://www.w3.org/1999/xhtml", ka = "100%", Aa = "100%", La = "border:0;margin:0;", Ca = "margin:0", Ma = "allow-top-navigation-by-user-activation allow-popups", Ra = 'The "iframe" tag is not supported by your browser.', Ia = ["foreignobject"], Fa = ["dominant-baseline"];
function gr(r) {
const e = fr(r);
return Y(), Be(e.config ?? {}), e;
}
t(gr, "processAndSetConfigs");
async function Ee(r, e) {
J();
try {
const { code: i, config: a } = gr(r);
return {
diagramType: (await Te(i)).type,
config: a
};
} catch (i) {
if (e?.suppressErrors) return !1;
throw i;
}
}
t(Ee, "parse");
var se = /* @__PURE__ */ t((r, e, i = []) => `.${r} ${e} ${Oe(`{ ${i.join(" !important; ")} !important; }`)}`, "cssImportantStyles"), $a = /* @__PURE__ */ t((r, e = /* @__PURE__ */ new Map()) => {
const i = new CSSStyleSheet();
if (r.fontFamily !== void 0 && i.insertRule(`:root { --mermaid-font-family: ${r.fontFamily}}`, i.cssRules.length), r.altFontFamily !== void 0 && i.insertRule(`:root { --mermaid-alt-font-family: ${r.altFontFamily}}`, i.cssRules.length), e instanceof Map) {
const n = Pe(r) ? ["> *", "span"] : [
"rect",
"polygon",
"ellipse",
"circle",
"path"
];
e.forEach((s) => {
hr(s.styles) || n.forEach((o) => {
i.insertRule(se(s.id, o, s.styles), i.cssRules.length);
}), hr(s.textStyles) || i.insertRule(se(s.id, "tspan", (s?.textStyles || []).map((o) => o.replace("color", "fill"))), i.cssRules.length);
});
}
let a = "";
if (r.themeCSS !== void 0) if (typeof i.replaceSync == "function") {
const n = new CSSStyleSheet();
n.replaceSync(r.themeCSS), a = pr(n) + `
`;
} else a += `${r.themeCSS}
`;
return a + pr(i);
}, "createCssStyles"), Oa = /* @__PURE__ */ t((r, e) => dr(Et(`${r}{${e}}`), xt([/* @__PURE__ */ t(function(a, n, s, o) {
if (a.type === "rule" && Array.isArray(a.props)) {
if (a.parent && a.parent.type === "@keyframes") return;
a.props = a.props.map((d) => d.startsWith(r) ? d : `${r} ${d}`);
} else a.type.startsWith("@") && (["@media", "@supports", "@layer", "@scope", "@container", "@starting-style", "@keyframes"].includes(a.type) || (f.warn(`Removing unsupported at-rule ${a.type} from CSS`), a.type = mr));
}, "addNamespace"), Tt])), "compileCSS"), za = /* @__PURE__ */ t((r, e, i, a) => Oa(a, Ge(e, $a(r, i), {
...r.themeVariables,
theme: r.theme,
look: r.look
}, a)), "createUserStyles"), Pa = /* @__PURE__ */ t((r = "", e, i) => {
let a = r;
return !i && !e && (a = a.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g, 'marker-end="url(#')), a = Qe(a), a = a.replace(/<br>/g, "<br/>"), a;
}, "cleanUpSvgCode"), Va = /* @__PURE__ */ t((r = "", e) => `<iframe style="width:${ka};height:${e?.viewBox?.baseVal?.height ? e.viewBox.baseVal.height + "px" : Aa};${La}" src="data:text/html;charset=UTF-8;base64,${De(`<body style="${Ca}">${r}</body>`)}" sandbox="${Ma}">
${Ra}
</iframe>`, "putIntoIFrame"), oe = /* @__PURE__ */ t((r, e, i, a, n) => {
const s = r.append("div");
s.attr("id", i), a && s.attr("style", a);
const o = s.append("svg").attr("id", e).attr("width", "100%").attr("xmlns", _a);
return n && o.attr("xmlns:xlink", n), o.append("g"), r;
}, "appendDivSvgG");
function lr(r, e) {
return r.append("iframe").attr("id", e).attr("style", "width: 100%; height: 100%;").attr("sandbox", "");
}
t(lr, "sandboxedIframe");
var Na = /* @__PURE__ */ t((r, e, i, a) => {
r.getElementById(e)?.remove(), r.getElementById(i)?.remove(), r.getElementById(a)?.remove();
}, "removeExistingElements"), Ga = /* @__PURE__ */ t(async function(r, e, i) {
J();
const a = gr(e);
e = a.code;
const n = q();
f.debug(n), e.length > (n?.maxTextSize ?? ba) && (e = Sa);
const s = `#${r}`, o = "i" + r, d = "#" + o, m = "d" + r, h = "#" + m, v = /* @__PURE__ */ t(() => {
const A = R(y ? d : h).node();
A && "remove" in A && A.remove();
}, "removeTempElements");
let l = R(document.body);
const y = n.securityLevel === Da, E = n.securityLevel === Ea, _ = n.fontFamily;
i !== void 0 ? (i && (i.innerHTML = ""), y ? (l = R(lr(R(i), o).nodes()[0].contentDocument.body), l.node().style.margin = "0") : l = R(i), oe(l, r, m, `font-family: ${_}`, Ta)) : (Na(document, r, m, o), y ? (l = R(lr(R(document.body), o).nodes()[0].contentDocument.body), l.node().style.margin = "0") : l = R("body"), oe(l, r, m));
let u, C;
try {
u = await cr.fromText(e, { title: a.title });
} catch (A) {
if (n.suppressErrorRendering)
throw v(), A;
u = await cr.fromText("error"), C = A;
}
const T = l.select(h).node(), w = u.type, g = T.firstChild, x = g.firstChild, O = u.renderer.getClasses?.(e, u), k = za(n, w, O, s), b = document.createElement("style");
b.innerHTML = k, g.insertBefore(b, x);
try {
await u.renderer.draw(e, r, "11.16.0", u);
} catch (A) {
throw n.suppressErrorRendering ? v() : Bt.draw(e, r, "11.16.0"), A;
}
const c = l.select(`${h} svg`), Re = u.db.getAccTitle?.(), Ie = u.db.getAccDescription?.();
xe(w, c, Re, Ie), l.select(`[id="${r}"]`).selectAll("foreignobject > *").attr("xmlns", xa);
let F = l.select(h).node().innerHTML;
if (f.debug("config.arrowMarkerAbsolute", n.arrowMarkerAbsolute), F = Pa(F, y, qe(n.arrowMarkerAbsolute)), y) {
const A = l.select(h + " svg").node();
F = Va(F, A);
} else E || (F = Fe.sanitize(F, {
ADD_TAGS: Ia,
ADD_ATTR: Fa,
HTML_INTEGRATION_POINTS: { foreignobject: !0 }
}));
if (pa(), C) throw C;
return v(), {
diagramType: w,
svg: F,
bindFunctions: u.db.bindFunctions
};
}, "render");
function _e(r = {}) {
const e = Xe({}, r);
e?.fontFamily && !e.themeVariables?.fontFamily && (e.themeVariables || (e.themeVariables = {}), e.themeVariables.fontFamily = e.fontFamily), Ve(e), e?.theme && e.theme in rr ? e.themeVariables = rr[e.theme].getThemeVariables(e.themeVariables) : e && (e.themeVariables = rr.default.getThemeVariables(e.themeVariables)), de((typeof e == "object" ? Ue(e) : ce()).logLevel), J();
}
t(_e, "initialize");
var Te = /* @__PURE__ */ t((r, e = {}) => {
const { code: i } = fr(r);
return cr.fromText(i, e);
}, "getDiagramFromText");
function xe(r, e, i, a) {
ye(e, r), we(e, i, a, e.attr("id"));
}
t(xe, "addA11yInfo");
var $ = Object.freeze({
render: Ga,
parse: Ee,
getDiagramFromText: Te,
initialize: _e,
getConfig: q,
setConfig: Ne,
getSiteConfig: ce,
updateSiteConfig: ze,
reset: /* @__PURE__ */ t(() => {
Y();
}, "reset"),
globalReset: /* @__PURE__ */ t(() => {
Y(vr);
}, "globalReset"),
defaultConfig: vr
});
de(q().logLevel);
Y(q());
var Ha = /* @__PURE__ */ t((r, e, i) => {
f.warn(r), me(r) ? (i && i(r.str, r.hash), e.push({
...r,
message: r.str,
error: r
})) : (i && i(r), r instanceof Error && e.push({
str: r.message,
message: r.message,
hash: r.name,
error: r
}));
}, "handleError"), ke = /* @__PURE__ */ t(async function(r = { querySelector: ".mermaid" }) {
try {
await ja(r);
} catch (e) {
if (me(e) && f.error(e.str), M.parseError && M.parseError(e), !r.suppressErrors)
throw f.error("Use the suppressErrors option to suppress these errors"), e;
}
}, "run"), ja = /* @__PURE__ */ t(async function({ postRenderCallback: r, querySelector: e, nodes: i } = { querySelector: ".mermaid" }) {
const a = $.getConfig();
f.debug(`${r ? "" : "No "}Callback function found`);
let n;
if (i) n = i;
else if (e) n = document.querySelectorAll(e);
else throw new Error("Nodes and querySelector are both undefined");
f.debug(`Found ${n.length} diagrams`), a?.startOnLoad !== void 0 && (f.debug("Start On Load: " + a?.startOnLoad), $.updateSiteConfig({ startOnLoad: a?.startOnLoad }));
const s = new G.InitIDGenerator(a.deterministicIds, a.deterministicIDSeed);
let o;
const d = [];
for (const m of Array.from(n)) {
if (f.info("Rendering diagram: " + m.id), m.getAttribute("data-processed")) continue;
m.setAttribute("data-processed", "true");
const h = `mermaid-${s.next()}`;
o = m.innerHTML, o = nt(G.entityDecode(o)).trim().replace(/<br\s*\/?>/gi, "<br/>");
const v = G.detectInit(o);
v && f.debug("Detected early reinit: ", v);
try {
const { svg: l, bindFunctions: y } = await Me(h, o, m);
m.innerHTML = l, r && await r(h), y && y(m);
} catch (l) {
Ha(l, d, M.parseError);
}
}
if (d.length > 0) throw d[0];
}, "runThrowsErrors"), Ae = /* @__PURE__ */ t(function(r) {
$.initialize(r);
}, "initialize"), qa = /* @__PURE__ */ t(async function(r, e, i) {
f.warn("mermaid.init is deprecated. Please use run instead."), r && Ae(r);
const a = {
postRenderCallback: i,
querySelector: ".mermaid"
};
typeof e == "string" ? a.querySelector = e : e && (e instanceof HTMLElement ? a.nodes = [e] : a.nodes = e), await ke(a);
}, "init"), Ba = /* @__PURE__ */ t(async (r, { lazyLoad: e = !0 } = {}) => {
J(), ar(...r), e === !1 && await fa();
}, "registerExternalDiagrams"), Le = /* @__PURE__ */ t(function() {
if (M.startOnLoad) {
const { startOnLoad: r } = $.getConfig();
r && M.run().catch((e) => f.error("Mermaid failed to initialize", e));
}
}, "contentLoaded");
typeof document < "u" && window.addEventListener("load", Le, !1);
var Ua = /* @__PURE__ */ t(function(r) {
M.parseError = r;
}, "setParseErrorHandler"), Q = [], tr = !1, Ce = /* @__PURE__ */ t(async () => {
if (!tr) {
for (tr = !0; Q.length > 0; ) {
const r = Q.shift();
if (r) try {
await r();
} catch (e) {
f.error("Error executing queue", e);
}
}
tr = !1;
}
}, "executeQueue"), Xa = /* @__PURE__ */ t(async (r, e) => new Promise((i, a) => {
const n = /* @__PURE__ */ t(() => new Promise((s, o) => {
$.parse(r, e).then((d) => {
s(d), i(d);
}, (d) => {
f.error("Error parsing", d), M.parseError?.(d), o(d), a(d);
});
}), "performCall");
Q.push(n), Ce().catch(a);
}), "parse"), Me = /* @__PURE__ */ t((r, e, i) => new Promise((a, n) => {
const s = /* @__PURE__ */ t(() => new Promise((o, d) => {
$.render(r, e, i).then((m) => {
o(m), a(m);
}, (m) => {
f.error("Error parsing", m), M.parseError?.(m), d(m), n(m);
});
}), "performCall");
Q.push(s), Ce().catch(n);
}), "render"), M = {
startOnLoad: !0,
mermaidAPI: $,
parse: Xa,
render: Me,
init: qa,
run: ke,
registerExternalDiagrams: Ba,
registerLayoutLoaders: st,
initialize: Ae,
parseError: void 0,
contentLoaded: Le,
setParseErrorHandler: Ua,
detectType: le,
registerIconPacks: it,
getRegisteredDiagramsMetadata: /* @__PURE__ */ t(() => Object.keys(nr).map((r) => ({ id: r })), "getRegisteredDiagramsMetadata")
}, di = M;
export {
di as default
};