markdown-flow-ui
Version:
A React UI library for rendering markdown with interactive flow components, typewriter effects, and plugin support
1 lines • 19.1 kB
Source Map (JSON)
{"version":3,"file":"pieDiagram-DBDJKBY4-Buxkafva.mjs","sources":["../node_modules/d3-shape/src/descending.js","../node_modules/d3-shape/src/identity.js","../node_modules/d3-shape/src/pie.js","../node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-DBDJKBY4.mjs"],"sourcesContent":["export default function(a, b) {\n return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;\n}\n","export default function(d) {\n return d;\n}\n","import array from \"./array.js\";\nimport constant from \"./constant.js\";\nimport descending from \"./descending.js\";\nimport identity from \"./identity.js\";\nimport {tau} from \"./math.js\";\n\nexport default function() {\n var value = identity,\n sortValues = descending,\n sort = null,\n startAngle = constant(0),\n endAngle = constant(tau),\n padAngle = constant(0);\n\n function pie(data) {\n var i,\n n = (data = array(data)).length,\n j,\n k,\n sum = 0,\n index = new Array(n),\n arcs = new Array(n),\n a0 = +startAngle.apply(this, arguments),\n da = Math.min(tau, Math.max(-tau, endAngle.apply(this, arguments) - a0)),\n a1,\n p = Math.min(Math.abs(da) / n, padAngle.apply(this, arguments)),\n pa = p * (da < 0 ? -1 : 1),\n v;\n\n for (i = 0; i < n; ++i) {\n if ((v = arcs[index[i] = i] = +value(data[i], i, data)) > 0) {\n sum += v;\n }\n }\n\n // Optionally sort the arcs by previously-computed values or by data.\n if (sortValues != null) index.sort(function(i, j) { return sortValues(arcs[i], arcs[j]); });\n else if (sort != null) index.sort(function(i, j) { return sort(data[i], data[j]); });\n\n // Compute the arcs! They are stored in the original data's order.\n for (i = 0, k = sum ? (da - n * pa) / sum : 0; i < n; ++i, a0 = a1) {\n j = index[i], v = arcs[j], a1 = a0 + (v > 0 ? v * k : 0) + pa, arcs[j] = {\n data: data[j],\n index: i,\n value: v,\n startAngle: a0,\n endAngle: a1,\n padAngle: p\n };\n }\n\n return arcs;\n }\n\n pie.value = function(_) {\n return arguments.length ? (value = typeof _ === \"function\" ? _ : constant(+_), pie) : value;\n };\n\n pie.sortValues = function(_) {\n return arguments.length ? (sortValues = _, sort = null, pie) : sortValues;\n };\n\n pie.sort = function(_) {\n return arguments.length ? (sort = _, sortValues = null, pie) : sort;\n };\n\n pie.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : startAngle;\n };\n\n pie.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : endAngle;\n };\n\n pie.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : padAngle;\n };\n\n return pie;\n}\n","import {\n populateCommonDb\n} from \"./chunk-ANTBXLJU.mjs\";\nimport {\n cleanAndMerge,\n parseFontSize\n} from \"./chunk-U37J5Y7L.mjs\";\nimport {\n selectSvgElement\n} from \"./chunk-T57MJCP2.mjs\";\nimport {\n __name,\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig2 as getConfig,\n getDiagramTitle,\n log,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-VIW5F6AA.mjs\";\n\n// src/diagrams/pie/pieParser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/pie/pieDb.ts\nvar DEFAULT_PIE_CONFIG = defaultConfig_default.pie;\nvar DEFAULT_PIE_DB = {\n sections: /* @__PURE__ */ new Map(),\n showData: false,\n config: DEFAULT_PIE_CONFIG\n};\nvar sections = DEFAULT_PIE_DB.sections;\nvar showData = DEFAULT_PIE_DB.showData;\nvar config = structuredClone(DEFAULT_PIE_CONFIG);\nvar getConfig2 = /* @__PURE__ */ __name(() => structuredClone(config), \"getConfig\");\nvar clear2 = /* @__PURE__ */ __name(() => {\n sections = /* @__PURE__ */ new Map();\n showData = DEFAULT_PIE_DB.showData;\n clear();\n}, \"clear\");\nvar addSection = /* @__PURE__ */ __name(({ label, value }) => {\n if (value < 0) {\n throw new Error(\n `\"${label}\" has invalid value: ${value}. Negative values are not allowed in pie charts. All slice values must be >= 0.`\n );\n }\n if (!sections.has(label)) {\n sections.set(label, value);\n log.debug(`added new section: ${label}, with value: ${value}`);\n }\n}, \"addSection\");\nvar getSections = /* @__PURE__ */ __name(() => sections, \"getSections\");\nvar setShowData = /* @__PURE__ */ __name((toggle) => {\n showData = toggle;\n}, \"setShowData\");\nvar getShowData = /* @__PURE__ */ __name(() => showData, \"getShowData\");\nvar db = {\n getConfig: getConfig2,\n clear: clear2,\n setDiagramTitle,\n getDiagramTitle,\n setAccTitle,\n getAccTitle,\n setAccDescription,\n getAccDescription,\n addSection,\n getSections,\n setShowData,\n getShowData\n};\n\n// src/diagrams/pie/pieParser.ts\nvar populateDb = /* @__PURE__ */ __name((ast, db2) => {\n populateCommonDb(ast, db2);\n db2.setShowData(ast.showData);\n ast.sections.map(db2.addSection);\n}, \"populateDb\");\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"pie\", input);\n log.debug(ast);\n populateDb(ast, db);\n }, \"parse\")\n};\n\n// src/diagrams/pie/pieStyles.ts\nvar getStyles = /* @__PURE__ */ __name((options) => `\n .pieCircle{\n stroke: ${options.pieStrokeColor};\n stroke-width : ${options.pieStrokeWidth};\n opacity : ${options.pieOpacity};\n }\n .pieOuterCircle{\n stroke: ${options.pieOuterStrokeColor};\n stroke-width: ${options.pieOuterStrokeWidth};\n fill: none;\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ${options.pieTitleTextSize};\n fill: ${options.pieTitleTextColor};\n font-family: ${options.fontFamily};\n }\n .slice {\n font-family: ${options.fontFamily};\n fill: ${options.pieSectionTextColor};\n font-size:${options.pieSectionTextSize};\n // fill: white;\n }\n .legend text {\n fill: ${options.pieLegendTextColor};\n font-family: ${options.fontFamily};\n font-size: ${options.pieLegendTextSize};\n }\n`, \"getStyles\");\nvar pieStyles_default = getStyles;\n\n// src/diagrams/pie/pieRenderer.ts\nimport { arc, pie as d3pie, scaleOrdinal } from \"d3\";\nvar createPieArcs = /* @__PURE__ */ __name((sections2) => {\n const sum = [...sections2.values()].reduce((acc, val) => acc + val, 0);\n const pieData = [...sections2.entries()].map(([label, value]) => ({ label, value })).filter((d) => d.value / sum * 100 >= 1).sort((a, b) => b.value - a.value);\n const pie = d3pie().value((d) => d.value);\n return pie(pieData);\n}, \"createPieArcs\");\nvar draw = /* @__PURE__ */ __name((text, id, _version, diagObj) => {\n log.debug(\"rendering pie chart\\n\" + text);\n const db2 = diagObj.db;\n const globalConfig = getConfig();\n const pieConfig = cleanAndMerge(db2.getConfig(), globalConfig.pie);\n const MARGIN = 40;\n const LEGEND_RECT_SIZE = 18;\n const LEGEND_SPACING = 4;\n const height = 450;\n const pieWidth = height;\n const svg = selectSvgElement(id);\n const group = svg.append(\"g\");\n group.attr(\"transform\", \"translate(\" + pieWidth / 2 + \",\" + height / 2 + \")\");\n const { themeVariables } = globalConfig;\n let [outerStrokeWidth] = parseFontSize(themeVariables.pieOuterStrokeWidth);\n outerStrokeWidth ??= 2;\n const textPosition = pieConfig.textPosition;\n const radius = Math.min(pieWidth, height) / 2 - MARGIN;\n const arcGenerator = arc().innerRadius(0).outerRadius(radius);\n const labelArcGenerator = arc().innerRadius(radius * textPosition).outerRadius(radius * textPosition);\n group.append(\"circle\").attr(\"cx\", 0).attr(\"cy\", 0).attr(\"r\", radius + outerStrokeWidth / 2).attr(\"class\", \"pieOuterCircle\");\n const sections2 = db2.getSections();\n const arcs = createPieArcs(sections2);\n const myGeneratedColors = [\n themeVariables.pie1,\n themeVariables.pie2,\n themeVariables.pie3,\n themeVariables.pie4,\n themeVariables.pie5,\n themeVariables.pie6,\n themeVariables.pie7,\n themeVariables.pie8,\n themeVariables.pie9,\n themeVariables.pie10,\n themeVariables.pie11,\n themeVariables.pie12\n ];\n let sum = 0;\n sections2.forEach((section) => {\n sum += section;\n });\n const filteredArcs = arcs.filter((datum) => (datum.data.value / sum * 100).toFixed(0) !== \"0\");\n const color = scaleOrdinal(myGeneratedColors);\n group.selectAll(\"mySlices\").data(filteredArcs).enter().append(\"path\").attr(\"d\", arcGenerator).attr(\"fill\", (datum) => {\n return color(datum.data.label);\n }).attr(\"class\", \"pieCircle\");\n group.selectAll(\"mySlices\").data(filteredArcs).enter().append(\"text\").text((datum) => {\n return (datum.data.value / sum * 100).toFixed(0) + \"%\";\n }).attr(\"transform\", (datum) => {\n return \"translate(\" + labelArcGenerator.centroid(datum) + \")\";\n }).style(\"text-anchor\", \"middle\").attr(\"class\", \"slice\");\n group.append(\"text\").text(db2.getDiagramTitle()).attr(\"x\", 0).attr(\"y\", -(height - 50) / 2).attr(\"class\", \"pieTitleText\");\n const allSectionData = [...sections2.entries()].map(([label, value]) => ({\n label,\n value\n }));\n const legend = group.selectAll(\".legend\").data(allSectionData).enter().append(\"g\").attr(\"class\", \"legend\").attr(\"transform\", (_datum, index) => {\n const height2 = LEGEND_RECT_SIZE + LEGEND_SPACING;\n const offset = height2 * allSectionData.length / 2;\n const horizontal = 12 * LEGEND_RECT_SIZE;\n const vertical = index * height2 - offset;\n return \"translate(\" + horizontal + \",\" + vertical + \")\";\n });\n legend.append(\"rect\").attr(\"width\", LEGEND_RECT_SIZE).attr(\"height\", LEGEND_RECT_SIZE).style(\"fill\", (d) => color(d.label)).style(\"stroke\", (d) => color(d.label));\n legend.append(\"text\").attr(\"x\", LEGEND_RECT_SIZE + LEGEND_SPACING).attr(\"y\", LEGEND_RECT_SIZE - LEGEND_SPACING).text((d) => {\n if (db2.getShowData()) {\n return `${d.label} [${d.value}]`;\n }\n return d.label;\n });\n const longestTextWidth = Math.max(\n ...legend.selectAll(\"text\").nodes().map((node) => node?.getBoundingClientRect().width ?? 0)\n );\n const totalWidth = pieWidth + MARGIN + LEGEND_RECT_SIZE + LEGEND_SPACING + longestTextWidth;\n svg.attr(\"viewBox\", `0 0 ${totalWidth} ${height}`);\n configureSvgSize(svg, height, totalWidth, pieConfig.useMaxWidth);\n}, \"draw\");\nvar renderer = { draw };\n\n// src/diagrams/pie/pieDiagram.ts\nvar diagram = {\n parser,\n db,\n renderer,\n styles: pieStyles_default\n};\nexport {\n diagram\n};\n"],"names":["descending","a","b","identity","d","d3pie","value","sortValues","sort","startAngle","constant","endAngle","tau","padAngle","pie","data","i","n","array","j","k","sum","index","arcs","a0","da","a1","p","pa","v","_","DEFAULT_PIE_CONFIG","defaultConfig_default","DEFAULT_PIE_DB","sections","showData","config","getConfig2","__name","clear2","clear","addSection","label","log","getSections","setShowData","toggle","getShowData","db","setDiagramTitle","getDiagramTitle","setAccTitle","getAccTitle","setAccDescription","getAccDescription","populateDb","ast","db2","populateCommonDb","parser","input","parse","getStyles","options","pieStyles_default","createPieArcs","sections2","acc","val","pieData","draw","text","id","_version","diagObj","globalConfig","getConfig","pieConfig","cleanAndMerge","MARGIN","LEGEND_RECT_SIZE","LEGEND_SPACING","height","pieWidth","svg","selectSvgElement","group","themeVariables","outerStrokeWidth","parseFontSize","textPosition","radius","arcGenerator","arc","labelArcGenerator","myGeneratedColors","section","filteredArcs","datum","color","scaleOrdinal","allSectionData","legend","_datum","height2","offset","horizontal","vertical","longestTextWidth","node","totalWidth","configureSvgSize","renderer","diagram"],"mappings":";;;;;AAAe,SAAAA,GAASC,GAAGC,GAAG;AAC5B,SAAOA,IAAID,IAAI,KAAKC,IAAID,IAAI,IAAIC,KAAKD,IAAI,IAAI;AAC/C;ACFe,SAAAE,GAASC,GAAG;AACzB,SAAOA;AACT;ACIe,SAAAC,KAAW;AACxB,MAAIC,IAAQH,IACRI,IAAaP,IACbQ,IAAO,MACPC,IAAaC,EAAS,CAAC,GACvBC,IAAWD,EAASE,CAAG,GACvBC,IAAWH,EAAS,CAAC;AAEzB,WAASI,EAAIC,GAAM;AACjB,QAAIC,GACAC,KAAKF,IAAOG,EAAMH,CAAI,GAAG,QACzBI,GACAC,GACAC,IAAM,GACNC,IAAQ,IAAI,MAAML,CAAC,GACnBM,IAAO,IAAI,MAAMN,CAAC,GAClBO,IAAK,CAACf,EAAW,MAAM,MAAM,SAAS,GACtCgB,IAAK,KAAK,IAAIb,GAAK,KAAK,IAAI,CAACA,GAAKD,EAAS,MAAM,MAAM,SAAS,IAAIa,CAAE,CAAC,GACvEE,GACAC,IAAI,KAAK,IAAI,KAAK,IAAIF,CAAE,IAAIR,GAAGJ,EAAS,MAAM,MAAM,SAAS,CAAC,GAC9De,IAAKD,KAAKF,IAAK,IAAI,KAAK,IACxBI;AAEJ,SAAKb,IAAI,GAAGA,IAAIC,GAAG,EAAED;AACnB,OAAKa,IAAIN,EAAKD,EAAMN,CAAC,IAAIA,CAAC,IAAI,CAACV,EAAMS,EAAKC,CAAC,GAAGA,GAAGD,CAAI,KAAK,MACxDM,KAAOQ;AASX,SAJItB,KAAc,OAAMe,EAAM,KAAK,SAASN,GAAGG,GAAG;AAAE,aAAOZ,EAAWgB,EAAKP,CAAC,GAAGO,EAAKJ,CAAC,CAAC;AAAA,IAAG,CAAC,IACjFX,KAAQ,QAAMc,EAAM,KAAK,SAASN,GAAGG,GAAG;AAAE,aAAOX,EAAKO,EAAKC,CAAC,GAAGD,EAAKI,CAAC,CAAC;AAAA,IAAG,CAAC,GAG9EH,IAAI,GAAGI,IAAIC,KAAOI,IAAKR,IAAIW,KAAMP,IAAM,GAAGL,IAAIC,GAAG,EAAED,GAAGQ,IAAKE;AAC9D,MAAAP,IAAIG,EAAMN,CAAC,GAAGa,IAAIN,EAAKJ,CAAC,GAAGO,IAAKF,KAAMK,IAAI,IAAIA,IAAIT,IAAI,KAAKQ,GAAIL,EAAKJ,CAAC,IAAI;AAAA,QACvE,MAAMJ,EAAKI,CAAC;AAAA,QACZ,OAAOH;AAAA,QACP,OAAOa;AAAA,QACP,YAAYL;AAAA,QACZ,UAAUE;AAAA,QACV,UAAUC;AAAA,MAClB;AAGI,WAAOJ;AAAA,EACT;AAEA,SAAAT,EAAI,QAAQ,SAASgB,GAAG;AACtB,WAAO,UAAU,UAAUxB,IAAQ,OAAOwB,KAAM,aAAaA,IAAIpB,EAAS,CAACoB,CAAC,GAAGhB,KAAOR;AAAA,EACxF,GAEAQ,EAAI,aAAa,SAASgB,GAAG;AAC3B,WAAO,UAAU,UAAUvB,IAAauB,GAAGtB,IAAO,MAAMM,KAAOP;AAAA,EACjE,GAEAO,EAAI,OAAO,SAASgB,GAAG;AACrB,WAAO,UAAU,UAAUtB,IAAOsB,GAAGvB,IAAa,MAAMO,KAAON;AAAA,EACjE,GAEAM,EAAI,aAAa,SAASgB,GAAG;AAC3B,WAAO,UAAU,UAAUrB,IAAa,OAAOqB,KAAM,aAAaA,IAAIpB,EAAS,CAACoB,CAAC,GAAGhB,KAAOL;AAAA,EAC7F,GAEAK,EAAI,WAAW,SAASgB,GAAG;AACzB,WAAO,UAAU,UAAUnB,IAAW,OAAOmB,KAAM,aAAaA,IAAIpB,EAAS,CAACoB,CAAC,GAAGhB,KAAOH;AAAA,EAC3F,GAEAG,EAAI,WAAW,SAASgB,GAAG;AACzB,WAAO,UAAU,UAAUjB,IAAW,OAAOiB,KAAM,aAAaA,IAAIpB,EAAS,CAACoB,CAAC,GAAGhB,KAAOD;AAAA,EAC3F,GAEOC;AACT;AClDA,IAAIiB,KAAqBC,GAAsB,KAC3CC,IAAiB;AAAA,EACnB,UAA0B,oBAAI,IAAG;AAAA,EACjC,UAAU;AAEZ,GACIC,IAAWD,EAAe,UAC1BE,IAAWF,EAAe,UAC1BG,KAAS,gBAAgBL,EAAkB,GAC3CM,KAA6B,gBAAAC,EAAO,MAAM,gBAAgBF,EAAM,GAAG,WAAW,GAC9EG,KAAyB,gBAAAD,EAAO,MAAM;AACxC,EAAAJ,IAA2B,oBAAI,IAAG,GAClCC,IAAWF,EAAe,UAC1BO,GAAK;AACP,GAAG,OAAO,GACNC,KAA6B,gBAAAH,EAAO,CAAC,EAAE,OAAAI,GAAO,OAAApC,EAAK,MAAO;AAC5D,MAAIA,IAAQ;AACV,UAAM,IAAI;AAAA,MACR,IAAIoC,CAAK,wBAAwBpC,CAAK;AAAA,IAC5C;AAEE,EAAK4B,EAAS,IAAIQ,CAAK,MACrBR,EAAS,IAAIQ,GAAOpC,CAAK,GACzBqC,EAAI,MAAM,sBAAsBD,CAAK,iBAAiBpC,CAAK,EAAE;AAEjE,GAAG,YAAY,GACXsC,KAA8B,gBAAAN,EAAO,MAAMJ,GAAU,aAAa,GAClEW,KAA8B,gBAAAP,EAAO,CAACQ,MAAW;AACnD,EAAAX,IAAWW;AACb,GAAG,aAAa,GACZC,KAA8B,gBAAAT,EAAO,MAAMH,GAAU,aAAa,GAClEa,IAAK;AAAA,EACP,WAAWX;AAAA,EACX,OAAOE;AAAA,EACP,iBAAAU;AAAA,EACA,iBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,YAAAb;AAAA,EACA,aAAAG;AAAA,EACA,aAAAC;AAAA,EACA,aAAAE;AACF,GAGIQ,KAA6B,gBAAAjB,EAAO,CAACkB,GAAKC,MAAQ;AACpD,EAAAC,EAAiBF,GAAKC,CAAG,GACzBA,EAAI,YAAYD,EAAI,QAAQ,GAC5BA,EAAI,SAAS,IAAIC,EAAI,UAAU;AACjC,GAAG,YAAY,GACXE,KAAS;AAAA,EACX,OAAuB,gBAAArB,EAAO,OAAOsB,MAAU;AAC7C,UAAMJ,IAAM,MAAMK,GAAM,OAAOD,CAAK;AACpC,IAAAjB,EAAI,MAAMa,CAAG,GACbD,GAAWC,GAAKR,CAAE;AAAA,EACpB,GAAG,OAAO;AACZ,GAGIc,KAA4B,gBAAAxB,EAAO,CAACyB,MAAY;AAAA;AAAA,cAEtCA,EAAQ,cAAc;AAAA,qBACfA,EAAQ,cAAc;AAAA,gBAC3BA,EAAQ,UAAU;AAAA;AAAA;AAAA,cAGpBA,EAAQ,mBAAmB;AAAA,oBACrBA,EAAQ,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA,iBAK9BA,EAAQ,gBAAgB;AAAA,YAC7BA,EAAQ,iBAAiB;AAAA,mBAClBA,EAAQ,UAAU;AAAA;AAAA;AAAA,mBAGlBA,EAAQ,UAAU;AAAA,YACzBA,EAAQ,mBAAmB;AAAA,gBACvBA,EAAQ,kBAAkB;AAAA;AAAA;AAAA;AAAA,YAI9BA,EAAQ,kBAAkB;AAAA,mBACnBA,EAAQ,UAAU;AAAA,iBACpBA,EAAQ,iBAAiB;AAAA;AAAA,GAEvC,WAAW,GACVC,KAAoBF,IAIpBG,KAAgC,gBAAA3B,EAAO,CAAC4B,MAAc;AACxD,QAAM7C,IAAM,CAAC,GAAG6C,EAAU,OAAM,CAAE,EAAE,OAAO,CAACC,GAAKC,MAAQD,IAAMC,GAAK,CAAC,GAC/DC,IAAU,CAAC,GAAGH,EAAU,QAAO,CAAE,EAAE,IAAI,CAAC,CAACxB,GAAOpC,CAAK,OAAO,EAAE,OAAAoC,GAAO,OAAApC,EAAK,EAAG,EAAE,OAAO,CAACF,MAAMA,EAAE,QAAQiB,IAAM,OAAO,CAAC,EAAE,KAAK,CAACpB,GAAGC,MAAMA,EAAE,QAAQD,EAAE,KAAK;AAE7J,SADYI,KAAQ,MAAM,CAACD,MAAMA,EAAE,KAAK,EAC7BiE,CAAO;AACpB,GAAG,eAAe,GACdC,KAAuB,gBAAAhC,EAAO,CAACiC,GAAMC,GAAIC,GAAUC,MAAY;AACjE,EAAA/B,EAAI,MAAM;AAAA,IAA0B4B,CAAI;AACxC,QAAMd,IAAMiB,EAAQ,IACdC,IAAeC,EAAS,GACxBC,IAAYC,GAAcrB,EAAI,UAAS,GAAIkB,EAAa,GAAG,GAC3DI,IAAS,IACTC,IAAmB,IACnBC,IAAiB,GACjBC,IAAS,KACTC,IAAWD,GACXE,IAAMC,GAAiBb,CAAE,GACzBc,IAAQF,EAAI,OAAO,GAAG;AAC5B,EAAAE,EAAM,KAAK,aAAa,eAAeH,IAAW,IAAI,MAAMD,IAAS,IAAI,GAAG;AAC5E,QAAM,EAAE,gBAAAK,EAAc,IAAKZ;AAC3B,MAAI,CAACa,CAAgB,IAAIC,GAAcF,EAAe,mBAAmB;AACzE,EAAAC,MAAqB;AACrB,QAAME,IAAeb,EAAU,cACzBc,IAAS,KAAK,IAAIR,GAAUD,CAAM,IAAI,IAAIH,GAC1Ca,IAAeC,IAAM,YAAY,CAAC,EAAE,YAAYF,CAAM,GACtDG,IAAoBD,EAAG,EAAG,YAAYF,IAASD,CAAY,EAAE,YAAYC,IAASD,CAAY;AACpG,EAAAJ,EAAM,OAAO,QAAQ,EAAE,KAAK,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,KAAK,KAAKK,IAASH,IAAmB,CAAC,EAAE,KAAK,SAAS,gBAAgB;AAC1H,QAAMtB,IAAYT,EAAI,YAAW,GAC3BlC,IAAO0C,GAAcC,CAAS,GAC9B6B,IAAoB;AAAA,IACxBR,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,IACfA,EAAe;AAAA,EACnB;AACE,MAAIlE,IAAM;AACV,EAAA6C,EAAU,QAAQ,CAAC8B,MAAY;AAC7B,IAAA3E,KAAO2E;AAAA,EACT,CAAC;AACD,QAAMC,IAAe1E,EAAK,OAAO,CAAC2E,OAAWA,EAAM,KAAK,QAAQ7E,IAAM,KAAK,QAAQ,CAAC,MAAM,GAAG,GACvF8E,IAAQC,GAAaL,CAAiB;AAC5C,EAAAT,EAAM,UAAU,UAAU,EAAE,KAAKW,CAAY,EAAE,QAAQ,OAAO,MAAM,EAAE,KAAK,KAAKL,CAAY,EAAE,KAAK,QAAQ,CAACM,MACnGC,EAAMD,EAAM,KAAK,KAAK,CAC9B,EAAE,KAAK,SAAS,WAAW,GAC5BZ,EAAM,UAAU,UAAU,EAAE,KAAKW,CAAY,EAAE,MAAK,EAAG,OAAO,MAAM,EAAE,KAAK,CAACC,OAClEA,EAAM,KAAK,QAAQ7E,IAAM,KAAK,QAAQ,CAAC,IAAI,GACpD,EAAE,KAAK,aAAa,CAAC6E,MACb,eAAeJ,EAAkB,SAASI,CAAK,IAAI,GAC3D,EAAE,MAAM,eAAe,QAAQ,EAAE,KAAK,SAAS,OAAO,GACvDZ,EAAM,OAAO,MAAM,EAAE,KAAK7B,EAAI,gBAAe,CAAE,EAAE,KAAK,KAAK,CAAC,EAAE,KAAK,KAAK,OAAiB,CAAC,EAAE,KAAK,SAAS,cAAc;AACxH,QAAM4C,IAAiB,CAAC,GAAGnC,EAAU,QAAO,CAAE,EAAE,IAAI,CAAC,CAACxB,GAAOpC,CAAK,OAAO;AAAA,IACvE,OAAAoC;AAAA,IACA,OAAApC;AAAA,EACJ,EAAI,GACIgG,IAAShB,EAAM,UAAU,SAAS,EAAE,KAAKe,CAAc,EAAE,QAAQ,OAAO,GAAG,EAAE,KAAK,SAAS,QAAQ,EAAE,KAAK,aAAa,CAACE,GAAQjF,MAAU;AAC9I,UAAMkF,IAAUxB,IAAmBC,GAC7BwB,IAASD,IAAUH,EAAe,SAAS,GAC3CK,IAAa,KAAK1B,GAClB2B,IAAWrF,IAAQkF,IAAUC;AACnC,WAAO,eAAeC,IAAa,MAAMC,IAAW;AAAA,EACtD,CAAC;AACD,EAAAL,EAAO,OAAO,MAAM,EAAE,KAAK,SAAStB,CAAgB,EAAE,KAAK,UAAUA,CAAgB,EAAE,MAAM,QAAQ,CAAC5E,MAAM+F,EAAM/F,EAAE,KAAK,CAAC,EAAE,MAAM,UAAU,CAACA,MAAM+F,EAAM/F,EAAE,KAAK,CAAC,GACjKkG,EAAO,OAAO,MAAM,EAAE,KAAK,KAAKtB,IAAmBC,CAAc,EAAE,KAAK,KAAKD,IAAmBC,CAAc,EAAE,KAAK,CAAC7E,MAChHqD,EAAI,gBACC,GAAGrD,EAAE,KAAK,KAAKA,EAAE,KAAK,MAExBA,EAAE,KACV;AACD,QAAMwG,IAAmB,KAAK;AAAA,IAC5B,GAAGN,EAAO,UAAU,MAAM,EAAE,MAAK,EAAG,IAAI,CAACO,MAASA,GAAM,sBAAqB,EAAG,SAAS,CAAC;AAAA,EAC9F,GACQC,IAAa3B,IAAWJ,IAASC,IAAmBC,IAAiB2B;AAC3E,EAAAxB,EAAI,KAAK,WAAW,OAAO0B,CAAU,IAAI5B,CAAM,EAAE,GACjD6B,GAAiB3B,GAAKF,GAAQ4B,GAAYjC,EAAU,WAAW;AACjE,GAAG,MAAM,GACLmC,KAAW,EAAE,MAAA1C,GAAI,GAGjB2C,KAAU;AAAA,EACZ,QAAAtD;AAAA,EACA,IAAAX;AAAA,EACA,UAAAgE;AAAA,EACA,QAAQhD;AACV;","x_google_ignoreList":[0,1,2,3]}