ranui
Version:
A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.
2,005 lines (2,004 loc) • 104 kB
JavaScript
import { n as b } from "./chunk-Y2CYZVJY-0JxdZxki.js";
import { m as J, p as se } from "./src-DtRLxcYO.js";
import { $ as Xe, G as Ue, H as qe, K as Qe, U as Je, a as Ze, d as $e, it as et, k as tt, s as st, v as it, w as rt, x as g1, y as at } from "./chunk-WYO6CB5R-DDHkKowO.js";
import { t as nt } from "./channel-k5-UxdcV.js";
import { c as ie, g as re } from "./chunk-ICXQ74PX-DR8rL-xF.js";
import { t as ut } from "./chunk-5VM5RSS4-Cni2Ogq2.js";
import { t as ot } from "./chunk-32BRIVSS-jAuAwMVV.js";
import { t as lt } from "./chunk-XXDRQBXY-BB1i_53q.js";
import { t as ct } from "./chunk-VR4S4FIN-CJi5okl4.js";
import { o as ht } from "./chunk-ZGVPDNZ5-6uMbTJXy.js";
import { r as dt, t as pt } from "./chunk-FWX5IMBZ-DZ5VYvm5.js";
import { n as ft, t as gt } from "./chunk-ZIRB5QZD-C7OH2FI2.js";
var bt = "flowchart-", At = class {
constructor() {
this.vertexCounter = 0, this.config = g1(), this.diagramId = "", this.vertices = /* @__PURE__ */ new Map(), this.edges = [], this.classes = /* @__PURE__ */ new Map(), this.subGraphs = [], this.subGraphLookup = /* @__PURE__ */ new Map(), this.tooltips = /* @__PURE__ */ new Map(), this.subCount = 0, this.firstGraphFlag = !0, this.secCount = -1, this.posCrossRef = [], this.funs = [], this.setAccTitle = Je, this.setAccDescription = qe, this.setDiagramTitle = Qe, this.getAccTitle = at, this.getAccDescription = it, this.getDiagramTitle = rt, this.funs.push(this.setupToolTips.bind(this)), this.addVertex = this.addVertex.bind(this), this.firstGraph = this.firstGraph.bind(this), this.setDirection = this.setDirection.bind(this), this.addSubGraph = this.addSubGraph.bind(this), this.addLink = this.addLink.bind(this), this.setLink = this.setLink.bind(this), this.updateLink = this.updateLink.bind(this), this.addClass = this.addClass.bind(this), this.setClass = this.setClass.bind(this), this.destructLink = this.destructLink.bind(this), this.setClickEvent = this.setClickEvent.bind(this), this.setTooltip = this.setTooltip.bind(this), this.updateLinkInterpolate = this.updateLinkInterpolate.bind(this), this.setClickFun = this.setClickFun.bind(this), this.bindFunctions = this.bindFunctions.bind(this), this.lex = { firstGraph: this.firstGraph.bind(this) }, this.clear(), this.setGen("gen-2");
}
static {
b(this, "FlowDB");
}
sanitizeText(e) {
return st.sanitizeText(e, this.config);
}
sanitizeNodeLabelType(e) {
switch (e) {
case "markdown":
case "string":
case "text":
return e;
default:
return "markdown";
}
}
setDiagramId(e) {
this.diagramId = e;
}
lookUpDomId(e) {
for (const r of this.vertices.values()) if (r.id === e) return this.diagramId ? `${this.diagramId}-${r.domId}` : r.domId;
return this.diagramId ? `${this.diagramId}-${e}` : e;
}
addVertex(e, r, i, a, n, h, d = {}, l) {
if (!e || e.trim().length === 0) return;
let o;
if (l !== void 0) {
let C;
l.includes(`
`) ? C = l + `
` : C = `{
` + l + `
}`, o = ft(C, { schema: gt });
}
const x = this.edges.find((C) => C.id === e);
if (x) {
const C = o;
C?.animate !== void 0 && (x.animate = C.animate), C?.animation !== void 0 && (x.animation = C.animation), C?.curve !== void 0 && (x.interpolate = C.curve);
return;
}
let L, p = this.vertices.get(e);
if (p === void 0 && (r === void 0 && i === void 0 && a !== void 0 && a !== null && J.warn(`Style applied to unknown node "${e}". This may indicate a typo. The node will be created automatically.`), p = {
id: e,
labelType: "text",
domId: bt + e + "-" + this.vertexCounter,
styles: [],
classes: []
}, this.vertices.set(e, p)), this.vertexCounter++, r !== void 0 ? (this.config = g1(), L = this.sanitizeText(r.text.trim()), p.labelType = r.type, L.startsWith('"') && L.endsWith('"') && (L = L.substring(1, L.length - 1)), p.text = L) : p.text === void 0 && (p.text = e), i !== void 0 && (p.type = i), a?.forEach((C) => {
p.styles.push(C);
}), n?.forEach((C) => {
p.classes.push(C);
}), h !== void 0 && (p.dir = h), p.props === void 0 ? p.props = d : d !== void 0 && Object.assign(p.props, d), o !== void 0) {
if (o.shape) {
if (o.shape !== o.shape.toLowerCase() || o.shape.includes("_")) throw new Error(`No such shape: ${o.shape}. Shape names should be lowercase.`);
if (!ht(o.shape)) throw new Error(`No such shape: ${o.shape}.`);
p.type = o?.shape;
}
o?.label && (p.text = o?.label, p.labelType = this.sanitizeNodeLabelType(o?.labelType)), o?.icon && (p.icon = o?.icon, !o.label?.trim() && p.text === e && (p.text = "")), o?.form && (p.form = o?.form), o?.pos && (p.pos = o?.pos), o?.img && (p.img = o?.img, !o.label?.trim() && p.text === e && (p.text = "")), o?.constraint && (p.constraint = o.constraint), o.w && (p.assetWidth = Number(o.w)), o.h && (p.assetHeight = Number(o.h));
}
}
addSingleLink(e, r, i, a) {
const n = {
start: e,
end: r,
type: void 0,
text: "",
labelType: "text",
classes: [],
isUserDefinedId: !1,
interpolate: this.edges.defaultInterpolate
};
J.info("abc78 Got edge...", n);
const h = i.text;
if (h !== void 0 && (n.text = this.sanitizeText(h.text.trim()), n.text.startsWith('"') && n.text.endsWith('"') && (n.text = n.text.substring(1, n.text.length - 1)), n.labelType = this.sanitizeNodeLabelType(h.type)), i !== void 0 && (n.type = i.type, n.stroke = i.stroke, n.length = i.length > 10 ? 10 : i.length), a && !this.edges.some((d) => d.id === a))
n.id = a, n.isUserDefinedId = !0;
else {
const d = this.edges.filter((l) => l.start === n.start && l.end === n.end);
d.length === 0 ? n.id = ie(n.start, n.end, {
counter: 0,
prefix: "L"
}) : n.id = ie(n.start, n.end, {
counter: d.length + 1,
prefix: "L"
});
}
if (this.edges.length < (this.config.maxEdges ?? 500))
J.info("Pushing edge..."), this.edges.push(n);
else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
Initialize mermaid with maxEdges set to a higher number to allow more edges.
You cannot set this config via configuration inside the diagram as it is a secure config.
You have to call mermaid.initialize.`);
}
isLinkData(e) {
return e !== null && typeof e == "object" && "id" in e && typeof e.id == "string";
}
addLink(e, r, i) {
const a = this.isLinkData(i) ? i.id.replace("@", "") : void 0;
J.info("addLink", e, r, a);
for (const n of e) for (const h of r) {
const d = n === e[e.length - 1], l = h === r[0];
d && l ? this.addSingleLink(n, h, i, a) : this.addSingleLink(n, h, i, void 0);
}
}
updateLinkInterpolate(e, r) {
e.forEach((i) => {
i === "default" ? this.edges.defaultInterpolate = r : this.edges[i].interpolate = r;
});
}
updateLink(e, r) {
e.forEach((i) => {
if (typeof i == "number" && i >= this.edges.length) throw new Error(`The index ${i} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length - 1}. (Help: Ensure that the index is within the range of existing edges.)`);
i === "default" ? this.edges.defaultStyle = r : (this.edges[i].style = r, (this.edges[i]?.style?.length ?? 0) > 0 && !this.edges[i]?.style?.some((a) => a?.startsWith("fill")) && this.edges[i]?.style?.push("fill:none"));
});
}
addClass(e, r) {
const i = r.join().replace(/\\,/g, "§§§").replace(/,/g, ";").replace(/§§§/g, ",").split(";");
e.split(",").forEach((a) => {
let n = this.classes.get(a);
n === void 0 && (n = {
id: a,
styles: [],
textStyles: []
}, this.classes.set(a, n)), i?.forEach((h) => {
if (/color/.exec(h)) {
const d = h.replace("fill", "bgFill");
n.textStyles.push(d);
}
n.styles.push(h);
});
});
}
setDirection(e) {
this.direction = e.trim(), /.*</.exec(this.direction) && (this.direction = "RL"), /.*\^/.exec(this.direction) && (this.direction = "BT"), /.*>/.exec(this.direction) && (this.direction = "LR"), /.*v/.exec(this.direction) && (this.direction = "TB"), this.direction === "TD" && (this.direction = "TB");
}
setClass(e, r) {
for (const i of e.split(",")) {
const a = this.vertices.get(i);
a && a.classes.push(r);
const n = this.edges.find((d) => d.id === i);
n && n.classes.push(r);
const h = this.subGraphLookup.get(i);
h && h.classes.push(r);
}
}
setTooltip(e, r) {
if (r !== void 0) {
r = this.sanitizeText(r);
for (const i of e.split(",")) this.tooltips.set(this.version === "gen-1" ? this.lookUpDomId(i) : i, r);
}
}
setClickFun(e, r, i) {
if (g1().securityLevel !== "loose" || r === void 0) return;
let a = [];
if (typeof i == "string") {
a = i.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);
for (let h = 0; h < a.length; h++) {
let d = a[h].trim();
d.startsWith('"') && d.endsWith('"') && (d = d.substr(1, d.length - 2)), a[h] = d;
}
}
a.length === 0 && a.push(e);
const n = this.vertices.get(e);
n && (n.haveCallback = !0, this.funs.push(() => {
const h = this.lookUpDomId(e), d = document.querySelector(`[id="${h}"]`);
d !== null && d.addEventListener("click", () => {
re.runFunc(r, ...a);
}, !1);
}));
}
setLink(e, r, i) {
e.split(",").forEach((a) => {
const n = this.vertices.get(a);
n !== void 0 && (n.link = re.formatUrl(r, this.config), n.linkTarget = i);
}), this.setClass(e, "clickable");
}
getTooltip(e) {
return this.tooltips.get(e);
}
setClickEvent(e, r, i) {
e.split(",").forEach((a) => {
this.setClickFun(a, r, i);
}), this.setClass(e, "clickable");
}
bindFunctions(e) {
this.funs.forEach((r) => {
r(e);
});
}
getDirection() {
return this.direction?.trim();
}
getVertices() {
return this.vertices;
}
getEdges() {
return this.edges;
}
getClasses() {
return this.classes;
}
setupToolTips(e) {
const r = ot();
se(e).select("svg").selectAll("g.node").on("mouseover", (i) => {
const a = se(i.currentTarget), n = a.attr("title");
if (n === null) return;
const h = i.currentTarget?.getBoundingClientRect();
r.transition().duration(200).style("opacity", ".9"), r.text(a.attr("title")).style("left", window.scrollX + h.left + (h.right - h.left) / 2 + "px").style("top", window.scrollY + h.bottom + "px"), r.html(Xe.sanitize(n)), a.classed("hover", !0);
}).on("mouseout", (i) => {
r.transition().duration(500).style("opacity", 0), se(i.currentTarget).classed("hover", !1);
});
}
clear(e = "gen-2") {
this.vertices = /* @__PURE__ */ new Map(), this.classes = /* @__PURE__ */ new Map(), this.edges = [], this.funs = [this.setupToolTips.bind(this)], this.diagramId = "", this.subGraphs = [], this.subGraphLookup = /* @__PURE__ */ new Map(), this.subCount = 0, this.tooltips = /* @__PURE__ */ new Map(), this.firstGraphFlag = !0, this.version = e, this.config = g1(), Ze();
}
setGen(e) {
this.version = e || "gen-2";
}
defaultStyle() {
return "fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;";
}
addSubGraph(e, r, i) {
let a = e.text.trim(), n = i.text;
e === i && /\s/.exec(i.text) && (a = void 0);
const h = (/* @__PURE__ */ b((C) => {
const h1 = {
boolean: {},
number: {},
string: {}
}, F = [];
let _;
return {
nodeList: C.filter(function(Y) {
const d1 = typeof Y;
return Y.stmt && Y.stmt === "dir" ? (_ = Y.value, !1) : Y.trim() === "" ? !1 : d1 in h1 ? h1[d1].hasOwnProperty(Y) ? !1 : h1[d1][Y] = !0 : F.includes(Y) ? !1 : F.push(Y);
}),
dir: _
};
}, "uniq"))(r.flat()), d = h.nodeList, l = h.dir, o = l !== void 0, x = g1().flowchart ?? {}, L = l ?? (x.inheritDir ? this.getDirection() ?? g1().direction ?? void 0 : void 0);
if (this.version === "gen-1") for (let C = 0; C < d.length; C++) d[C] = this.lookUpDomId(d[C]);
a = a ?? "subGraph" + this.subCount, n = n || "", n = this.sanitizeText(n), this.subCount = this.subCount + 1;
const p = {
id: a,
nodes: d,
title: n.trim(),
classes: [],
dir: L,
hasExplicitDir: o,
labelType: this.sanitizeNodeLabelType(i?.type)
};
return J.info("Adding", p.id, p.nodes, p.dir), p.nodes = this.makeUniq(p, this.subGraphs).nodes, this.subGraphs.push(p), this.subGraphLookup.set(a, p), a;
}
getPosForId(e) {
for (const [r, i] of this.subGraphs.entries()) if (i.id === e) return r;
return -1;
}
indexNodes2(e, r) {
const i = this.subGraphs[r].nodes;
if (this.secCount = this.secCount + 1, this.secCount > 2e3) return {
result: !1,
count: 0
};
if (this.posCrossRef[this.secCount] = r, this.subGraphs[r].id === e) return {
result: !0,
count: 0
};
let a = 0, n = 1;
for (; a < i.length; ) {
const h = this.getPosForId(i[a]);
if (h >= 0) {
const d = this.indexNodes2(e, h);
if (d.result) return {
result: !0,
count: n + d.count
};
n = n + d.count;
}
a = a + 1;
}
return {
result: !1,
count: n
};
}
getDepthFirstPos(e) {
return this.posCrossRef[e];
}
indexNodes() {
this.secCount = -1, this.subGraphs.length > 0 && this.indexNodes2("none", this.subGraphs.length - 1);
}
getSubGraphs() {
return this.subGraphs;
}
firstGraph() {
return this.firstGraphFlag ? (this.firstGraphFlag = !1, !0) : !1;
}
destructStartLink(e) {
let r = e.trim(), i = "arrow_open";
switch (r[0]) {
case "<":
i = "arrow_point", r = r.slice(1);
break;
case "x":
i = "arrow_cross", r = r.slice(1);
break;
case "o":
i = "arrow_circle", r = r.slice(1);
break;
}
let a = "normal";
return r.includes("=") && (a = "thick"), r.includes(".") && (a = "dotted"), {
type: i,
stroke: a
};
}
countChar(e, r) {
const i = r.length;
let a = 0;
for (let n = 0; n < i; ++n) r[n] === e && ++a;
return a;
}
destructEndLink(e) {
const r = e.trim();
let i = r.slice(0, -1), a = "arrow_open";
switch (r.slice(-1)) {
case "x":
a = "arrow_cross", r.startsWith("x") && (a = "double_" + a, i = i.slice(1));
break;
case ">":
a = "arrow_point", r.startsWith("<") && (a = "double_" + a, i = i.slice(1));
break;
case "o":
a = "arrow_circle", r.startsWith("o") && (a = "double_" + a, i = i.slice(1));
break;
}
let n = "normal", h = i.length - 1;
i.startsWith("=") && (n = "thick"), i.startsWith("~") && (n = "invisible");
const d = this.countChar(".", i);
return d && (n = "dotted", h = d), {
type: a,
stroke: n,
length: h
};
}
destructLink(e, r) {
const i = this.destructEndLink(e);
let a;
if (r) {
if (a = this.destructStartLink(r), a.stroke !== i.stroke) return {
type: "INVALID",
stroke: "INVALID"
};
if (a.type === "arrow_open") a.type = i.type;
else {
if (a.type !== i.type) return {
type: "INVALID",
stroke: "INVALID"
};
a.type = "double_" + a.type;
}
return a.type === "double_arrow" && (a.type = "double_arrow_point"), a.length = i.length, a;
}
return i;
}
exists(e, r) {
for (const i of e) if (i.nodes.includes(r)) return !0;
return !1;
}
makeUniq(e, r) {
const i = [];
return e.nodes.forEach((a, n) => {
this.exists(r, a) || i.push(e.nodes[n]);
}), { nodes: i };
}
getTypeFromVertex(e) {
if (e.img) return "imageSquare";
if (e.icon)
return e.form === "circle" ? "iconCircle" : e.form === "square" ? "iconSquare" : e.form === "rounded" ? "iconRounded" : "icon";
switch (e.type) {
case "square":
case void 0:
return "squareRect";
case "round":
return "roundedRect";
case "ellipse":
return "ellipse";
default:
return e.type;
}
}
findNode(e, r) {
return e.find((i) => i.id === r);
}
destructEdgeType(e) {
let r = "none", i = "arrow_point";
switch (e) {
case "arrow_point":
case "arrow_circle":
case "arrow_cross":
i = e;
break;
case "double_arrow_point":
case "double_arrow_circle":
case "double_arrow_cross":
r = e.replace("double_", ""), i = r;
break;
}
return {
arrowTypeStart: r,
arrowTypeEnd: i
};
}
addNodeFromVertex(e, r, i, a, n, h) {
const d = i.get(e.id), l = a.get(e.id) ?? !1, o = this.findNode(r, e.id);
if (o)
o.cssStyles = e.styles, o.cssCompiledStyles = this.getCompiledStyles(e.classes), o.cssClasses = e.classes.join(" ");
else {
const x = {
id: e.id,
label: e.text,
labelType: e.labelType,
labelStyle: "",
parentId: d,
padding: n.flowchart?.padding || 8,
cssStyles: e.styles,
cssCompiledStyles: this.getCompiledStyles([
"default",
"node",
...e.classes
]),
cssClasses: "default " + e.classes.join(" "),
dir: e.dir,
domId: e.domId,
look: h,
link: e.link,
linkTarget: e.linkTarget,
tooltip: this.getTooltip(e.id),
icon: e.icon,
pos: e.pos,
img: e.img,
assetWidth: e.assetWidth,
assetHeight: e.assetHeight,
constraint: e.constraint
};
l ? r.push({
...x,
isGroup: !0,
shape: "rect"
}) : r.push({
...x,
isGroup: !1,
shape: this.getTypeFromVertex(e)
});
}
}
getCompiledStyles(e) {
let r = [];
for (const i of e) {
const a = this.classes.get(i);
a?.styles && (r = [...r, ...a.styles ?? []].map((n) => n.trim())), a?.textStyles && (r = [...r, ...a.textStyles ?? []].map((n) => n.trim()));
}
return r;
}
getData() {
const e = g1(), r = [], i = [], a = this.getSubGraphs(), n = /* @__PURE__ */ new Map(), h = /* @__PURE__ */ new Map();
for (let l = a.length - 1; l >= 0; l--) {
const o = a[l];
o.nodes.length > 0 && h.set(o.id, !0);
for (const x of o.nodes) n.set(x, o.id);
}
for (let l = a.length - 1; l >= 0; l--) {
const o = a[l];
r.push({
id: o.id,
label: o.title,
labelStyle: "",
labelType: o.labelType,
parentId: n.get(o.id),
padding: 8,
cssCompiledStyles: this.getCompiledStyles(o.classes),
cssClasses: o.classes.join(" "),
shape: "rect",
dir: o.dir === "TD" ? "TB" : o.dir,
explicitDir: o.hasExplicitDir,
isGroup: !0,
look: e.look
});
}
this.getVertices().forEach((l) => {
this.addNodeFromVertex(l, r, n, h, e, e.look || "classic");
});
const d = this.getEdges();
return d.forEach((l, o) => {
const { arrowTypeStart: x, arrowTypeEnd: L } = this.destructEdgeType(l.type), p = [...d.defaultStyle ?? []];
l.style && p.push(...l.style);
const C = {
id: ie(l.start, l.end, {
counter: o,
prefix: "L"
}, l.id),
isUserDefinedId: l.isUserDefinedId,
start: l.start,
end: l.end,
type: l.type ?? "normal",
label: l.text,
labelType: l.labelType,
labelpos: "c",
thickness: l.stroke,
minlen: l.length,
classes: l?.stroke === "invisible" ? "" : "edge-thickness-normal edge-pattern-solid flowchart-link",
arrowTypeStart: l?.stroke === "invisible" || l?.type === "arrow_open" ? "none" : x,
arrowTypeEnd: l?.stroke === "invisible" || l?.type === "arrow_open" ? "none" : L,
arrowheadStyle: "fill: #333",
cssCompiledStyles: this.getCompiledStyles(l.classes),
labelStyle: p,
style: p,
pattern: l.stroke,
look: e.look,
animate: l.animate,
animation: l.animation,
curve: l.interpolate || this.edges.defaultInterpolate || e.flowchart?.curve
};
i.push(C);
}), {
nodes: r,
edges: i,
other: {},
config: e
};
}
defaultConfig() {
return $e.flowchart;
}
}, kt = {
getClasses: /* @__PURE__ */ b(function(e, r) {
return r.db.getClasses();
}, "getClasses"),
draw: /* @__PURE__ */ b(async function(e, r, i, a, n) {
J.info("REF0:"), J.info("Drawing state diagram (v2)", r);
const { securityLevel: h, flowchart: d, layout: l } = g1();
a.db.setDiagramId(r), J.debug("Before getData: ");
const o = a.db.getData();
J.debug("Data: ", o);
const x = lt(r, h), L = a.db.getDirection();
o.type = a.type, o.layoutAlgorithm = pt(l), o.layoutAlgorithm === "dagre" && l === "elk" && J.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."), o.direction = L, o.nodeSpacing = d?.nodeSpacing || 50, o.rankSpacing = d?.rankSpacing || 50, o.markers = [
"point",
"circle",
"cross"
], o.diagramId = r, J.debug("REF1:", o), await dt(o, x, n);
const p = o.config.flowchart?.diagramPadding ?? 8;
re.insertTitle(x, "flowchartTitleText", d?.titleTopMargin || 0, a.db.getDiagramTitle()), ct(x, p, "flowchart", d?.useMaxWidth || !1);
}, "draw")
}, ae = (function() {
var e = /* @__PURE__ */ b(function(c, f, A, g) {
for (A = A || {}, g = c.length; g--; A[c[g]] = f) ;
return A;
}, "o"), r = [1, 4], i = [1, 3], a = [1, 5], n = [
1,
8,
9,
10,
11,
27,
34,
36,
38,
44,
60,
84,
85,
86,
87,
88,
89,
102,
105,
106,
109,
111,
114,
115,
116,
121,
122,
123,
124,
125
], h = [2, 2], d = [1, 13], l = [1, 14], o = [1, 15], x = [1, 16], L = [1, 23], p = [1, 25], C = [1, 26], h1 = [1, 27], F = [1, 50], _ = [1, 49], Y = [1, 29], d1 = [1, 30], N1 = [1, 31], G1 = [1, 32], P1 = [1, 33], V = [1, 45], I = [1, 47], w = [1, 43], R = [1, 48], N = [1, 44], G = [1, 51], P = [1, 46], O = [1, 52], M = [1, 53], O1 = [1, 34], M1 = [1, 35], U1 = [1, 36], z1 = [1, 37], W1 = [1, 38], p1 = [1, 58], T = [
1,
8,
9,
10,
11,
27,
32,
34,
36,
38,
44,
60,
84,
85,
86,
87,
88,
89,
102,
105,
106,
109,
111,
114,
115,
116,
121,
122,
123,
124,
125
], $ = [1, 62], e1 = [1, 61], t1 = [1, 63], m1 = [
8,
9,
11,
75,
77,
78
], ne = [1, 79], D1 = [1, 92], E1 = [1, 97], C1 = [1, 96], T1 = [1, 93], S1 = [1, 89], y1 = [1, 95], x1 = [1, 91], F1 = [1, 98], _1 = [1, 94], B1 = [1, 99], v1 = [1, 90], b1 = [
8,
9,
10,
11,
40,
75,
77,
78
], z = [
8,
9,
10,
11,
40,
46,
75,
77,
78
], H = [
8,
9,
10,
11,
29,
40,
44,
46,
48,
50,
52,
54,
56,
58,
60,
63,
65,
67,
68,
70,
75,
77,
78,
89,
102,
105,
106,
109,
111,
114,
115,
116
], ue = [
8,
9,
11,
44,
60,
75,
77,
78,
89,
102,
105,
106,
109,
111,
114,
115,
116
], L1 = [
44,
60,
89,
102,
105,
106,
109,
111,
114,
115,
116
], oe = [1, 122], le = [1, 123], K1 = [1, 125], j1 = [1, 124], ce = [
44,
60,
62,
74,
89,
102,
105,
106,
109,
111,
114,
115,
116
], he = [1, 134], de = [1, 148], pe = [1, 149], fe = [1, 150], ge = [1, 151], be = [1, 136], Ae = [1, 138], ke = [1, 142], me = [1, 143], De = [1, 144], Ee = [1, 145], Ce = [1, 146], Te = [1, 147], Se = [1, 152], ye = [1, 153], xe = [1, 132], Fe = [1, 133], _e = [1, 140], Be = [1, 135], ve = [1, 139], Le = [1, 137], q1 = [
8,
9,
10,
11,
27,
32,
34,
36,
38,
44,
60,
84,
85,
86,
87,
88,
89,
102,
105,
106,
109,
111,
114,
115,
116,
121,
122,
123,
124,
125
], Ve = [1, 155], Ie = [1, 157], y = [
8,
9,
11
], X = [
8,
9,
10,
11,
14,
44,
60,
89,
105,
106,
109,
111,
114,
115,
116
], k = [1, 177], W = [1, 173], K = [1, 174], m = [1, 178], D = [1, 175], E = [1, 176], V1 = [
77,
116,
119
], S = [
8,
9,
10,
11,
12,
14,
27,
29,
32,
44,
60,
75,
84,
85,
86,
87,
88,
89,
90,
105,
109,
111,
114,
115,
116
], we = [10, 106], f1 = [
31,
49,
51,
53,
55,
57,
62,
64,
66,
67,
69,
71,
116,
117,
118
], s1 = [1, 248], i1 = [1, 246], r1 = [1, 250], a1 = [1, 244], n1 = [1, 245], u1 = [1, 247], o1 = [1, 249], l1 = [1, 251], I1 = [1, 269], Re = [
8,
9,
11,
106
], Z = [
8,
9,
10,
11,
60,
84,
105,
106,
109,
110,
111,
112
], Q1 = {
trace: /* @__PURE__ */ b(function() {
}, "trace"),
yy: {},
symbols_: {
error: 2,
start: 3,
graphConfig: 4,
document: 5,
line: 6,
statement: 7,
SEMI: 8,
NEWLINE: 9,
SPACE: 10,
EOF: 11,
GRAPH: 12,
NODIR: 13,
DIR: 14,
FirstStmtSeparator: 15,
ending: 16,
endToken: 17,
spaceList: 18,
spaceListNewline: 19,
vertexStatement: 20,
separator: 21,
styleStatement: 22,
linkStyleStatement: 23,
classDefStatement: 24,
classStatement: 25,
clickStatement: 26,
subgraph: 27,
textNoTags: 28,
SQS: 29,
text: 30,
SQE: 31,
end: 32,
direction: 33,
acc_title: 34,
acc_title_value: 35,
acc_descr: 36,
acc_descr_value: 37,
acc_descr_multiline_value: 38,
shapeData: 39,
SHAPE_DATA: 40,
link: 41,
node: 42,
styledVertex: 43,
AMP: 44,
vertex: 45,
STYLE_SEPARATOR: 46,
idString: 47,
DOUBLECIRCLESTART: 48,
DOUBLECIRCLEEND: 49,
PS: 50,
PE: 51,
"(-": 52,
"-)": 53,
STADIUMSTART: 54,
STADIUMEND: 55,
SUBROUTINESTART: 56,
SUBROUTINEEND: 57,
VERTEX_WITH_PROPS_START: 58,
"NODE_STRING[field]": 59,
COLON: 60,
"NODE_STRING[value]": 61,
PIPE: 62,
CYLINDERSTART: 63,
CYLINDEREND: 64,
DIAMOND_START: 65,
DIAMOND_STOP: 66,
TAGEND: 67,
TRAPSTART: 68,
TRAPEND: 69,
INVTRAPSTART: 70,
INVTRAPEND: 71,
linkStatement: 72,
arrowText: 73,
TESTSTR: 74,
START_LINK: 75,
edgeText: 76,
LINK: 77,
LINK_ID: 78,
edgeTextToken: 79,
STR: 80,
MD_STR: 81,
textToken: 82,
keywords: 83,
STYLE: 84,
LINKSTYLE: 85,
CLASSDEF: 86,
CLASS: 87,
CLICK: 88,
DOWN: 89,
UP: 90,
textNoTagsToken: 91,
stylesOpt: 92,
"idString[vertex]": 93,
"idString[class]": 94,
CALLBACKNAME: 95,
CALLBACKARGS: 96,
HREF: 97,
LINK_TARGET: 98,
"STR[link]": 99,
"STR[tooltip]": 100,
alphaNum: 101,
DEFAULT: 102,
numList: 103,
INTERPOLATE: 104,
NUM: 105,
COMMA: 106,
style: 107,
styleComponent: 108,
NODE_STRING: 109,
UNIT: 110,
BRKT: 111,
PCT: 112,
idStringToken: 113,
MINUS: 114,
MULT: 115,
UNICODE_TEXT: 116,
TEXT: 117,
TAGSTART: 118,
EDGE_TEXT: 119,
alphaNumToken: 120,
direction_tb: 121,
direction_bt: 122,
direction_rl: 123,
direction_lr: 124,
direction_td: 125,
$accept: 0,
$end: 1
},
terminals_: {
2: "error",
8: "SEMI",
9: "NEWLINE",
10: "SPACE",
11: "EOF",
12: "GRAPH",
13: "NODIR",
14: "DIR",
27: "subgraph",
29: "SQS",
31: "SQE",
32: "end",
34: "acc_title",
35: "acc_title_value",
36: "acc_descr",
37: "acc_descr_value",
38: "acc_descr_multiline_value",
40: "SHAPE_DATA",
44: "AMP",
46: "STYLE_SEPARATOR",
48: "DOUBLECIRCLESTART",
49: "DOUBLECIRCLEEND",
50: "PS",
51: "PE",
52: "(-",
53: "-)",
54: "STADIUMSTART",
55: "STADIUMEND",
56: "SUBROUTINESTART",
57: "SUBROUTINEEND",
58: "VERTEX_WITH_PROPS_START",
59: "NODE_STRING[field]",
60: "COLON",
61: "NODE_STRING[value]",
62: "PIPE",
63: "CYLINDERSTART",
64: "CYLINDEREND",
65: "DIAMOND_START",
66: "DIAMOND_STOP",
67: "TAGEND",
68: "TRAPSTART",
69: "TRAPEND",
70: "INVTRAPSTART",
71: "INVTRAPEND",
74: "TESTSTR",
75: "START_LINK",
77: "LINK",
78: "LINK_ID",
80: "STR",
81: "MD_STR",
84: "STYLE",
85: "LINKSTYLE",
86: "CLASSDEF",
87: "CLASS",
88: "CLICK",
89: "DOWN",
90: "UP",
93: "idString[vertex]",
94: "idString[class]",
95: "CALLBACKNAME",
96: "CALLBACKARGS",
97: "HREF",
98: "LINK_TARGET",
99: "STR[link]",
100: "STR[tooltip]",
102: "DEFAULT",
104: "INTERPOLATE",
105: "NUM",
106: "COMMA",
109: "NODE_STRING",
110: "UNIT",
111: "BRKT",
112: "PCT",
114: "MINUS",
115: "MULT",
116: "UNICODE_TEXT",
117: "TEXT",
118: "TAGSTART",
119: "EDGE_TEXT",
121: "direction_tb",
122: "direction_bt",
123: "direction_rl",
124: "direction_lr",
125: "direction_td"
},
productions_: [
0,
[3, 2],
[5, 0],
[5, 2],
[6, 1],
[6, 1],
[6, 1],
[6, 1],
[6, 1],
[4, 2],
[4, 2],
[4, 2],
[4, 3],
[16, 2],
[16, 1],
[17, 1],
[17, 1],
[17, 1],
[15, 1],
[15, 1],
[15, 2],
[19, 2],
[19, 2],
[19, 1],
[19, 1],
[18, 2],
[18, 1],
[7, 2],
[7, 2],
[7, 2],
[7, 2],
[7, 2],
[7, 2],
[7, 9],
[7, 6],
[7, 4],
[7, 1],
[7, 2],
[7, 2],
[7, 1],
[21, 1],
[21, 1],
[21, 1],
[39, 2],
[39, 1],
[20, 4],
[20, 3],
[20, 4],
[20, 2],
[20, 2],
[20, 1],
[42, 1],
[42, 6],
[42, 5],
[43, 1],
[43, 3],
[45, 4],
[45, 4],
[45, 6],
[45, 4],
[45, 4],
[45, 4],
[45, 8],
[45, 4],
[45, 4],
[45, 4],
[45, 6],
[45, 4],
[45, 4],
[45, 4],
[45, 4],
[45, 4],
[45, 1],
[41, 2],
[41, 3],
[41, 3],
[41, 1],
[41, 3],
[41, 4],
[76, 1],
[76, 2],
[76, 1],
[76, 1],
[72, 1],
[72, 2],
[73, 3],
[30, 1],
[30, 2],
[30, 1],
[30, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[83, 1],
[28, 1],
[28, 2],
[28, 1],
[28, 1],
[24, 5],
[25, 5],
[26, 2],
[26, 4],
[26, 3],
[26, 5],
[26, 3],
[26, 5],
[26, 5],
[26, 7],
[26, 2],
[26, 4],
[26, 2],
[26, 4],
[26, 4],
[26, 6],
[22, 5],
[23, 5],
[23, 5],
[23, 9],
[23, 9],
[23, 7],
[23, 7],
[103, 1],
[103, 3],
[92, 1],
[92, 3],
[107, 1],
[107, 2],
[108, 1],
[108, 1],
[108, 1],
[108, 1],
[108, 1],
[108, 1],
[108, 1],
[108, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[113, 1],
[82, 1],
[82, 1],
[82, 1],
[82, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[91, 1],
[79, 1],
[79, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[120, 1],
[47, 1],
[47, 2],
[101, 1],
[101, 2],
[33, 1],
[33, 1],
[33, 1],
[33, 1],
[33, 1]
],
performAction: /* @__PURE__ */ b(function(f, A, g, u, B, t, R1) {
var s = t.length - 1;
switch (B) {
case 2:
this.$ = [];
break;
case 3:
(!Array.isArray(t[s]) || t[s].length > 0) && t[s - 1].push(t[s]), this.$ = t[s - 1];
break;
case 4:
case 183:
this.$ = t[s];
break;
case 11:
u.setDirection("TB"), this.$ = "TB";
break;
case 12:
u.setDirection(t[s - 1]), this.$ = t[s - 1];
break;
case 27:
this.$ = t[s - 1].nodes;
break;
case 28:
case 29:
case 30:
case 31:
case 32:
this.$ = [];
break;
case 33:
this.$ = u.addSubGraph(t[s - 6], t[s - 1], t[s - 4]);
break;
case 34:
this.$ = u.addSubGraph(t[s - 3], t[s - 1], t[s - 3]);
break;
case 35:
this.$ = u.addSubGraph(void 0, t[s - 1], void 0);
break;
case 37:
this.$ = t[s].trim(), u.setAccTitle(this.$);
break;
case 38:
case 39:
this.$ = t[s].trim(), u.setAccDescription(this.$);
break;
case 43:
this.$ = t[s - 1] + t[s];
break;
case 44:
this.$ = t[s];
break;
case 45:
u.addVertex(t[s - 1][t[s - 1].length - 1], void 0, void 0, void 0, void 0, void 0, void 0, t[s]), u.addLink(t[s - 3].stmt, t[s - 1], t[s - 2]), this.$ = {
stmt: t[s - 1],
nodes: t[s - 1].concat(t[s - 3].nodes)
};
break;
case 46:
u.addLink(t[s - 2].stmt, t[s], t[s - 1]), this.$ = {
stmt: t[s],
nodes: t[s].concat(t[s - 2].nodes)
};
break;
case 47:
u.addLink(t[s - 3].stmt, t[s - 1], t[s - 2]), this.$ = {
stmt: t[s - 1],
nodes: t[s - 1].concat(t[s - 3].nodes)
};
break;
case 48:
this.$ = {
stmt: t[s - 1],
nodes: t[s - 1]
};
break;
case 49:
u.addVertex(t[s - 1][t[s - 1].length - 1], void 0, void 0, void 0, void 0, void 0, void 0, t[s]), this.$ = {
stmt: t[s - 1],
nodes: t[s - 1],
shapeData: t[s]
};
break;
case 50:
this.$ = {
stmt: t[s],
nodes: t[s]
};
break;
case 51:
this.$ = [t[s]];
break;
case 52:
u.addVertex(t[s - 5][t[s - 5].length - 1], void 0, void 0, void 0, void 0, void 0, void 0, t[s - 4]), this.$ = t[s - 5].concat(t[s]);
break;
case 53:
this.$ = t[s - 4].concat(t[s]);
break;
case 54:
this.$ = t[s];
break;
case 55:
this.$ = t[s - 2], u.setClass(t[s - 2], t[s]);
break;
case 56:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "square");
break;
case 57:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "doublecircle");
break;
case 58:
this.$ = t[s - 5], u.addVertex(t[s - 5], t[s - 2], "circle");
break;
case 59:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "ellipse");
break;
case 60:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "stadium");
break;
case 61:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "subroutine");
break;
case 62:
this.$ = t[s - 7], u.addVertex(t[s - 7], t[s - 1], "rect", void 0, void 0, void 0, Object.fromEntries([[t[s - 5], t[s - 3]]]));
break;
case 63:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "cylinder");
break;
case 64:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "round");
break;
case 65:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "diamond");
break;
case 66:
this.$ = t[s - 5], u.addVertex(t[s - 5], t[s - 2], "hexagon");
break;
case 67:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "odd");
break;
case 68:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "trapezoid");
break;
case 69:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "inv_trapezoid");
break;
case 70:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "lean_right");
break;
case 71:
this.$ = t[s - 3], u.addVertex(t[s - 3], t[s - 1], "lean_left");
break;
case 72:
this.$ = t[s], u.addVertex(t[s]);
break;
case 73:
t[s - 1].text = t[s], this.$ = t[s - 1];
break;
case 74:
case 75:
t[s - 2].text = t[s - 1], this.$ = t[s - 2];
break;
case 76:
this.$ = t[s];
break;
case 77:
var v = u.destructLink(t[s], t[s - 2]);
this.$ = {
type: v.type,
stroke: v.stroke,
length: v.length,
text: t[s - 1]
};
break;
case 78:
var v = u.destructLink(t[s], t[s - 2]);
this.$ = {
type: v.type,
stroke: v.stroke,
length: v.length,
text: t[s - 1],
id: t[s - 3]
};
break;
case 79:
this.$ = {
text: t[s],
type: "text"
};
break;
case 80:
this.$ = {
text: t[s - 1].text + "" + t[s],
type: t[s - 1].type
};
break;
case 81:
this.$ = {
text: t[s],
type: "string"
};
break;
case 82:
this.$ = {
text: t[s],
type: "markdown"
};
break;
case 83:
var v = u.destructLink(t[s]);
this.$ = {
type: v.type,
stroke: v.stroke,
length: v.length
};
break;
case 84:
var v = u.destructLink(t[s]);
this.$ = {
type: v.type,
stroke: v.stroke,
length: v.length,
id: t[s - 1]
};
break;
case 85:
this.$ = t[s - 1];
break;
case 86:
this.$ = {
text: t[s],
type: "text"
};
break;
case 87:
this.$ = {
text: t[s - 1].text + "" + t[s],
type: t[s - 1].type
};
break;
case 88:
this.$ = {
text: t[s],
type: "string"
};
break;
case 89:
case 104:
this.$ = {
text: t[s],
type: "markdown"
};
break;
case 101:
this.$ = {
text: t[s],
type: "text"
};
break;
case 102:
this.$ = {
text: t[s - 1].text + "" + t[s],
type: t[s - 1].type
};
break;
case 103:
this.$ = {
text: t[s],
type: "text"
};
break;
case 105:
this.$ = t[s - 4], u.addClass(t[s - 2], t[s]);
break;
case 106:
this.$ = t[s - 4], u.setClass(t[s - 2], t[s]);
break;
case 107:
case 115:
this.$ = t[s - 1], u.setClickEvent(t[s - 1], t[s]);
break;
case 108:
case 116:
this.$ = t[s - 3], u.setClickEvent(t[s - 3], t[s - 2]), u.setTooltip(t[s - 3], t[s]);
break;
case 109:
this.$ = t[s - 2], u.setClickEvent(t[s - 2], t[s - 1], t[s]);
break;
case 110:
this.$ = t[s - 4], u.setClickEvent(t[s - 4], t[s - 3], t[s - 2]), u.setTooltip(t[s - 4], t[s]);
break;
case 111:
this.$ = t[s - 2], u.setLink(t[s - 2], t[s]);
break;
case 112:
this.$ = t[s - 4], u.setLink(t[s - 4], t[s - 2]), u.setTooltip(t[s - 4], t[s]);
break;
case 113:
this.$ = t[s - 4], u.setLink(t[s - 4], t[s - 2], t[s]);
break;
case 114:
this.$ = t[s - 6], u.setLink(t[s - 6], t[s - 4], t[s]), u.setTooltip(t[s - 6], t[s - 2]);
break;
case 117:
this.$ = t[s - 1], u.setLink(t[s - 1], t[s]);
break;
case 118:
this.$ = t[s - 3], u.setLink(t[s - 3], t[s - 2]), u.setTooltip(t[s - 3], t[s]);
break;
case 119:
this.$ = t[s - 3], u.setLink(t[s - 3], t[s - 2], t[s]);
break;
case 120:
this.$ = t[s - 5], u.setLink(t[s - 5], t[s - 4], t[s]), u.setTooltip(t[s - 5], t[s - 2]);
break;
case 121:
this.$ = t[s - 4], u.addVertex(t[s - 2], void 0, void 0, t[s]);
break;
case 122:
this.$ = t[s - 4], u.updateLink([t[s - 2]], t[s]);
break;
case 123:
this.$ = t[s - 4], u.updateLink(t[s - 2], t[s]);
break;
case 124:
this.$ = t[s - 8], u.updateLinkInterpolate([t[s - 6]], t[s - 2]), u.updateLink([t[s - 6]], t[s]);
break;
case 125:
this.$ = t[s - 8], u.updateLinkInterpolate(t[s - 6], t[s - 2]), u.updateLink(t[s - 6], t[s]);
break;
case 126:
this.$ = t[s - 6], u.updateLinkInterpolate([t[s - 4]], t[s]);
break;
case 127:
this.$ = t[s - 6], u.updateLinkInterpolate(t[s - 4], t[s]);
break;
case 128:
case 130:
this.$ = [t[s]];
break;
case 129:
case 131:
t[s - 2].push(t[s]), this.$ = t[s - 2];
break;
case 133:
this.$ = t[s - 1] + t[s];
break;
case 181:
this.$ = t[s];
break;
case 182:
this.$ = t[s - 1] + "" + t[s];
break;
case 184:
this.$ = t[s - 1] + "" + t[s];
break;
case 185:
this.$ = {
stmt: "dir",
value: "TB"
};
break;
case 186:
this.$ = {
stmt: "dir",
value: "BT"
};
break;
case 187:
this.$ = {
stmt: "dir",
value: "RL"
};
break;
case 188:
this.$ = {
stmt: "dir",
value: "LR"
};
break;
case 189:
this.$ = {
stmt: "dir",
value: "TD"
};
break;
}
}, "anonymous"),
table: [
{
3: 1,
4: 2,
9: r,
10: i,
12: a
},
{ 1: [3] },
e(n, h, { 5: 6 }),
{
4: 7,
9: r,
10: i,
12: a
},
{
4: 8,
9: r,
10: i,
12: a
},
{
13: [1, 9],
14: [1, 10]
},
{
1: [2, 1],
6: 11,
7: 12,
8: d,
9: l,
10: o,
11: x,
20: 17,
22: 18,
23: 19,
24: 20,
25: 21,
26: 22,
27: L,
33: 24,
34: p,
36: C,
38: h1,
42: 28,
43: 39,
44: F,
45: 40,
47: 41,
60: _,
84: Y,
85: d1,
86: N1,
87: G1,
88: P1,
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
113: 42,
114: P,
115: O,
116: M,
121: O1,
122: M1,
123: U1,
124: z1,
125: W1
},
e(n, [2, 9]),
e(n, [2, 10]),
e(n, [2, 11]),
{
8: [1, 55],
9: [1, 56],
10: p1,
15: 54,
18: 57
},
e(T, [2, 3]),
e(T, [2, 4]),
e(T, [2, 5]),
e(T, [2, 6]),
e(T, [2, 7]),
e(T, [2, 8]),
{
8: $,
9: e1,
11: t1,
21: 59,
41: 60,
72: 64,
75: [1, 65],
77: [1, 67],
78: [1, 66]
},
{
8: $,
9: e1,
11: t1,
21: 68
},
{
8: $,
9: e1,
11: t1,
21: 69
},
{
8: $,
9: e1,
11: t1,
21: 70
},
{
8: $,
9: e1,
11: t1,
21: 71
},
{
8: $,
9: e1,
11: t1,
21: 72
},
{
8: $,
9: e1,
10: [1, 73],
11: t1,
21: 74
},
e(T, [2, 36]),
{ 35: [1, 75] },
{ 37: [1, 76] },
e(T, [2, 39]),
e(m1, [2, 50], {
18: 77,
39: 78,
10: p1,
40: ne
}),
{ 10: [1, 80] },
{ 10: [1, 81] },
{ 10: [1, 82] },
{ 10: [1, 83] },
{
14: D1,
44: E1,
60: C1,
80: [1, 87],
89: T1,
95: [1, 84],
97: [1, 85],
101: 86,
105: S1,
106: y1,
109: x1,
111: F1,
114: _1,
115: B1,
116: v1,
120: 88
},
e(T, [2, 185]),
e(T, [2, 186]),
e(T, [2, 187]),
e(T, [2, 188]),
e(T, [2, 189]),
e(b1, [2, 51]),
e(b1, [2, 54], { 46: [1, 100] }),
e(z, [2, 72], {
113: 113,
29: [1, 101],
44: F,
48: [1, 102],
50: [1, 103],
52: [1, 104],
54: [1, 105],
56: [1, 106],
58: [1, 107],
60: _,
63: [1, 108],
65: [1, 109],
67: [1, 110],
68: [1, 111],
70: [1, 112],
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
114: P,
115: O,
116: M
}),
e(H, [2, 181]),
e(H, [2, 142]),
e(H, [2, 143]),
e(H, [2, 144]),
e(H, [2, 145]),
e(H, [2, 146]),
e(H, [2, 147]),
e(H, [2, 148]),
e(H, [2, 149]),
e(H, [2, 150]),
e(H, [2, 151]),
e(H, [2, 152]),
e(n, [2, 12]),
e(n, [2, 18]),
e(n, [2, 19]),
{ 9: [1, 114] },
e(ue, [2, 26], {
18: 115,
10: p1
}),
e(T, [2, 27]),
{
42: 116,
43: 39,
44: F,
45: 40,
47: 41,
60: _,
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
113: 42,
114: P,
115: O,
116: M
},
e(T, [2, 40]),
e(T, [2, 41]),
e(T, [2, 42]),
e(L1, [2, 76], {
73: 117,
62: [1, 119],
74: [1, 118]
}),
{
76: 120,
79: 121,
80: oe,
81: le,
116: K1,
119: j1
},
{
75: [1, 126],
77: [1, 127]
},
e(ce, [2, 83]),
e(T, [2, 28]),
e(T, [2, 29]),
e(T, [2, 30]),
e(T, [2, 31]),
e(T, [2, 32]),
{
10: he,
12: de,
14: pe,
27: fe,
28: 128,
32: ge,
44: be,
60: Ae,
75: ke,
80: [1, 130],
81: [1, 131],
83: 141,
84: me,
85: De,
86: Ee,
87: Ce,
88: Te,
89: Se,
90: ye,
91: 129,
105: xe,
109: Fe,
111: _e,
114: Be,
115: ve,
116: Le
},
e(q1, h, { 5: 154 }),
e(T, [2, 37]),
e(T, [2, 38]),
e(m1, [2, 48], { 44: Ve }),
e(m1, [2, 49], {
18: 156,
10: p1,
40: Ie
}),
e(b1, [2, 44]),
{
44: F,
47: 158,
60: _,
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
113: 42,
114: P,
115: O,
116: M
},
{
102: [1, 159],
103: 160,
105: [1, 161]
},
{
44: F,
47: 162,
60: _,
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
113: 42,
114: P,
115: O,
116: M
},
{
44: F,
47: 163,
60: _,
89: V,
102: I,
105: w,
106: R,
109: N,
111: G,
113: 42,
114: P,
115: O,
116: M
},
e(y, [2, 107], {