@hamak/smart-data-dico 1.16.1 → 1.16.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/backend/dist/server.mjs +155 -54
  2. package/frontend/dist/assets/{abnfDiagram-VRR7QNED-db02313e.js → abnfDiagram-VRR7QNED-c0490a6e.js} +1 -1
  3. package/frontend/dist/assets/{arc-a327eb0e.js → arc-d9f42f85.js} +1 -1
  4. package/frontend/dist/assets/architecture-TIHT7OUA-4924d329.js +1 -0
  5. package/frontend/dist/assets/{architectureDiagram-ZJ3FMSHR-a5cb5af6.js → architectureDiagram-ZJ3FMSHR-8d36e612.js} +1 -1
  6. package/frontend/dist/assets/{blockDiagram-677ZJIJ3-06d9185d.js → blockDiagram-677ZJIJ3-0dfc7866.js} +1 -1
  7. package/frontend/dist/assets/{c4Diagram-LMCZKHZV-e559ecfe.js → c4Diagram-LMCZKHZV-e41e8523.js} +1 -1
  8. package/frontend/dist/assets/channel-c1d35bcb.js +1 -0
  9. package/frontend/dist/assets/{chunk-2Q5K7J3B-14d39186.js → chunk-2Q5K7J3B-f3d8fedd.js} +1 -1
  10. package/frontend/dist/assets/{chunk-32BRIVSS-6f80ca5a.js → chunk-32BRIVSS-1d402c0b.js} +1 -1
  11. package/frontend/dist/assets/{chunk-5VM5RSS4-854d73c5.js → chunk-5VM5RSS4-3f60ca61.js} +1 -1
  12. package/frontend/dist/assets/{chunk-EX3LRPZG-5b9e4143.js → chunk-EX3LRPZG-37fe45eb.js} +1 -1
  13. package/frontend/dist/assets/{chunk-JWPE2WC7-22b1fc86.js → chunk-JWPE2WC7-76a6de0e.js} +1 -1
  14. package/frontend/dist/assets/{chunk-MOJQB5TN-4ae9f036.js → chunk-MOJQB5TN-7327a1f1.js} +1 -1
  15. package/frontend/dist/assets/{chunk-PUDLZKDR-adc2ae26.js → chunk-PUDLZKDR-cabf5348.js} +1 -1
  16. package/frontend/dist/assets/{chunk-RYQCIY6F-704ba887.js → chunk-RYQCIY6F-24c07994.js} +1 -1
  17. package/frontend/dist/assets/{chunk-V7JOEXUC-0319c111.js → chunk-V7JOEXUC-502fa72d.js} +1 -1
  18. package/frontend/dist/assets/{chunk-VR4S4FIN-0a58604d.js → chunk-VR4S4FIN-3ba950bb.js} +1 -1
  19. package/frontend/dist/assets/{chunk-XXDRQBXY-c5ea9dff.js → chunk-XXDRQBXY-88fe29af.js} +1 -1
  20. package/frontend/dist/assets/classDiagram-OUVF2IWQ-27576e4f.js +1 -0
  21. package/frontend/dist/assets/classDiagram-v2-EOCWNBFH-27576e4f.js +1 -0
  22. package/frontend/dist/assets/{cose-bilkent-JH36ORCC-5a361b8e.js → cose-bilkent-JH36ORCC-52fa9765.js} +1 -1
  23. package/frontend/dist/assets/cynefin-VYW2F7L2-0c62363f.js +1 -0
  24. package/frontend/dist/assets/{cynefinDiagram-TSTJHNR4-bb1176a6.js → cynefinDiagram-TSTJHNR4-131f7eba.js} +1 -1
  25. package/frontend/dist/assets/{dagre-VKFMJZFB-4868de27.js → dagre-VKFMJZFB-2a0bf613.js} +1 -1
  26. package/frontend/dist/assets/{diagram-FQU43EPY-8eb9909d.js → diagram-FQU43EPY-1b097df7.js} +1 -1
  27. package/frontend/dist/assets/{diagram-G47NLZAW-723355b9.js → diagram-G47NLZAW-d6474bd9.js} +1 -1
  28. package/frontend/dist/assets/{diagram-NH7WQ7WH-39c94090.js → diagram-NH7WQ7WH-b3062101.js} +1 -1
  29. package/frontend/dist/assets/{diagram-OA4YK3LP-18313c68.js → diagram-OA4YK3LP-1958e3d9.js} +1 -1
  30. package/frontend/dist/assets/{diagram-WEI45ONY-9a5d6133.js → diagram-WEI45ONY-6afaa8fe.js} +1 -1
  31. package/frontend/dist/assets/{ebnfDiagram-CCIWWBDH-3a98cdbe.js → ebnfDiagram-CCIWWBDH-963352a5.js} +1 -1
  32. package/frontend/dist/assets/{erDiagram-Q63AITRT-e516b0c1.js → erDiagram-Q63AITRT-0b6003d5.js} +1 -1
  33. package/frontend/dist/assets/eventmodeling-45OFAUF4-e83cff7f.js +1 -0
  34. package/frontend/dist/assets/flowDiagram-23GEKE2U-0ede15fe.js +1 -0
  35. package/frontend/dist/assets/{ganttDiagram-NO4QXBWP-432912d9.js → ganttDiagram-NO4QXBWP-a63b16f9.js} +1 -1
  36. package/frontend/dist/assets/gitGraph-TEB2WS4Q-56023b8c.js +1 -0
  37. package/frontend/dist/assets/{gitGraphDiagram-IHSO6WYX-0c58d99c.js → gitGraphDiagram-IHSO6WYX-ec5c5a77.js} +1 -1
  38. package/frontend/dist/assets/{index-60bae2ec.js → index-4d3efe4a.js} +96 -95
  39. package/frontend/dist/assets/info-DKCQHKI2-c2315d52.js +1 -0
  40. package/frontend/dist/assets/{infoDiagram-FWYZ7A6U-0eb7ff8e.js → infoDiagram-FWYZ7A6U-214dd53c.js} +1 -1
  41. package/frontend/dist/assets/{ishikawaDiagram-FXEZZL3T-6c14c552.js → ishikawaDiagram-FXEZZL3T-3355d0be.js} +1 -1
  42. package/frontend/dist/assets/{journeyDiagram-5HDEW3XC-2f4945c0.js → journeyDiagram-5HDEW3XC-5109afe4.js} +1 -1
  43. package/frontend/dist/assets/{kanban-definition-HUTT4EX6-def69b07.js → kanban-definition-HUTT4EX6-41b00580.js} +1 -1
  44. package/frontend/dist/assets/{linear-ce293fd8.js → linear-79848c0f.js} +1 -1
  45. package/frontend/dist/assets/{mermaid-parser.core-050aa76f.js → mermaid-parser.core-c86c44bd.js} +2 -2
  46. package/frontend/dist/assets/{mermaid.core-dda71dbd.js → mermaid.core-691e4744.js} +3 -3
  47. package/frontend/dist/assets/{mindmap-definition-LN4V7U3C-f33cf040.js → mindmap-definition-LN4V7U3C-bff7972b.js} +1 -1
  48. package/frontend/dist/assets/packet-7NZHBO7P-b99d2242.js +1 -0
  49. package/frontend/dist/assets/{pegDiagram-2B236MQR-937519e0.js → pegDiagram-2B236MQR-d5e34b29.js} +1 -1
  50. package/frontend/dist/assets/pie-RZYD4A2V-6a3c8030.js +1 -0
  51. package/frontend/dist/assets/{pieDiagram-ENE6RG2P-8967fc93.js → pieDiagram-ENE6RG2P-075c8079.js} +1 -1
  52. package/frontend/dist/assets/{quadrantDiagram-ABIIQ3AL-e4c6acf3.js → quadrantDiagram-ABIIQ3AL-f280035e.js} +1 -1
  53. package/frontend/dist/assets/radar-I7S5WNFK-532ca393.js +1 -0
  54. package/frontend/dist/assets/railroad-3IZDKUUU-233adf29.js +1 -0
  55. package/frontend/dist/assets/railroad-abnf-AHOZXSZD-b83b8849.js +1 -0
  56. package/frontend/dist/assets/railroad-ebnf-EBAXGLYW-6a00e878.js +1 -0
  57. package/frontend/dist/assets/railroad-peg-LSFZ7HO6-1b27abdc.js +1 -0
  58. package/frontend/dist/assets/{railroadDiagram-RFXS5EU6-62a815a3.js → railroadDiagram-RFXS5EU6-5320351a.js} +1 -1
  59. package/frontend/dist/assets/{requirementDiagram-TGXJPOKE-8fae2ab0.js → requirementDiagram-TGXJPOKE-300648c1.js} +1 -1
  60. package/frontend/dist/assets/{sankeyDiagram-HTMAVEWB-075fd2e4.js → sankeyDiagram-HTMAVEWB-71d6b478.js} +1 -1
  61. package/frontend/dist/assets/{sequenceDiagram-DBY2YBRQ-909c4f0b.js → sequenceDiagram-DBY2YBRQ-99c93da4.js} +1 -1
  62. package/frontend/dist/assets/{sizeCapture-X5ZJPWSS-91bd40e4.js → sizeCapture-X5ZJPWSS-c6e6c33c.js} +1 -1
  63. package/frontend/dist/assets/{stateDiagram-2N3HPSRC-beee4c67.js → stateDiagram-2N3HPSRC-4c6dc9f4.js} +1 -1
  64. package/frontend/dist/assets/stateDiagram-v2-6OUMAXLB-a5384039.js +1 -0
  65. package/frontend/dist/assets/{swimlanes-5IMT3BWC-1397863c.js → swimlanes-5IMT3BWC-a69b67a2.js} +1 -1
  66. package/frontend/dist/assets/swimlanesDiagram-G3AALYLV-23e7d95f.js +8 -0
  67. package/frontend/dist/assets/{timeline-definition-FHXFAJF6-d7cfff55.js → timeline-definition-FHXFAJF6-aaa0156e.js} +1 -1
  68. package/frontend/dist/assets/treeView-QDETBFTQ-d40c65b3.js +1 -0
  69. package/frontend/dist/assets/treemap-6X3UGDF4-fff72606.js +1 -0
  70. package/frontend/dist/assets/{vennDiagram-L72KCM5P-025f3b47.js → vennDiagram-L72KCM5P-591b6dbf.js} +1 -1
  71. package/frontend/dist/assets/wardley-OPB4EBWU-9ead5b4c.js +1 -0
  72. package/frontend/dist/assets/{wardleyDiagram-EHGQE667-6cbf6002.js → wardleyDiagram-EHGQE667-60af22ca.js} +1 -1
  73. package/frontend/dist/assets/{xychartDiagram-FW5EYKEG-ea16b045.js → xychartDiagram-FW5EYKEG-dac7e9e6.js} +1 -1
  74. package/frontend/dist/index.html +1 -1
  75. package/package.json +2 -2
  76. package/frontend/dist/assets/architecture-TIHT7OUA-92b77b84.js +0 -1
  77. package/frontend/dist/assets/channel-c2f54369.js +0 -1
  78. package/frontend/dist/assets/classDiagram-OUVF2IWQ-572a6514.js +0 -1
  79. package/frontend/dist/assets/classDiagram-v2-EOCWNBFH-572a6514.js +0 -1
  80. package/frontend/dist/assets/cynefin-VYW2F7L2-5d0a3abc.js +0 -1
  81. package/frontend/dist/assets/eventmodeling-45OFAUF4-c92c51b5.js +0 -1
  82. package/frontend/dist/assets/flowDiagram-23GEKE2U-816d745b.js +0 -1
  83. package/frontend/dist/assets/gitGraph-TEB2WS4Q-026fdbf7.js +0 -1
  84. package/frontend/dist/assets/info-DKCQHKI2-50c98754.js +0 -1
  85. package/frontend/dist/assets/packet-7NZHBO7P-ca249972.js +0 -1
  86. package/frontend/dist/assets/pie-RZYD4A2V-f727541a.js +0 -1
  87. package/frontend/dist/assets/radar-I7S5WNFK-c5e15eed.js +0 -1
  88. package/frontend/dist/assets/railroad-3IZDKUUU-e7fc2c2f.js +0 -1
  89. package/frontend/dist/assets/railroad-abnf-AHOZXSZD-415061ef.js +0 -1
  90. package/frontend/dist/assets/railroad-ebnf-EBAXGLYW-01af9a14.js +0 -1
  91. package/frontend/dist/assets/railroad-peg-LSFZ7HO6-bdf099a2.js +0 -1
  92. package/frontend/dist/assets/stateDiagram-v2-6OUMAXLB-74986501.js +0 -1
  93. package/frontend/dist/assets/swimlanesDiagram-G3AALYLV-e375d6ba.js +0 -8
  94. package/frontend/dist/assets/treeView-QDETBFTQ-eac92c95.js +0 -1
  95. package/frontend/dist/assets/treemap-6X3UGDF4-7f36d8a1.js +0 -1
  96. package/frontend/dist/assets/wardley-OPB4EBWU-40346eeb.js +0 -1
@@ -38675,11 +38675,11 @@ var require_src6 = __commonJS({
38675
38675
  }
38676
38676
  }
38677
38677
  __name(check2, "check");
38678
- function exists2(path22, type = exports2.READABLE) {
38678
+ function exists3(path22, type = exports2.READABLE) {
38679
38679
  return check2(path22, (type & exports2.FILE) > 0, (type & exports2.FOLDER) > 0);
38680
38680
  }
38681
- __name(exists2, "exists");
38682
- exports2.exists = exists2;
38681
+ __name(exists3, "exists");
38682
+ exports2.exists = exists3;
38683
38683
  exports2.FILE = 1;
38684
38684
  exports2.FOLDER = 2;
38685
38685
  exports2.READABLE = exports2.FILE + exports2.FOLDER;
@@ -149159,10 +149159,10 @@ var require_sync = __commonJS({
149159
149159
  }
149160
149160
  };
149161
149161
  GlobSync.prototype._processSimple = function(prefix, index) {
149162
- var exists2 = this._stat(prefix);
149162
+ var exists3 = this._stat(prefix);
149163
149163
  if (!this.matches[index])
149164
149164
  this.matches[index] = /* @__PURE__ */ Object.create(null);
149165
- if (!exists2)
149165
+ if (!exists3)
149166
149166
  return;
149167
149167
  if (prefix && isAbsolute(prefix) && !this.nomount) {
149168
149168
  var trail = /[\/\\]$/.test(prefix);
@@ -149192,7 +149192,7 @@ var require_sync = __commonJS({
149192
149192
  if (needDir && c === "FILE")
149193
149193
  return false;
149194
149194
  }
149195
- var exists2;
149195
+ var exists3;
149196
149196
  var stat = this.statCache[abs];
149197
149197
  if (!stat) {
149198
149198
  var lstat;
@@ -149835,14 +149835,14 @@ var require_glob = __commonJS({
149835
149835
  };
149836
149836
  Glob.prototype._processSimple = function(prefix, index, cb) {
149837
149837
  var self2 = this;
149838
- this._stat(prefix, function(er, exists2) {
149839
- self2._processSimple2(prefix, index, er, exists2, cb);
149838
+ this._stat(prefix, function(er, exists3) {
149839
+ self2._processSimple2(prefix, index, er, exists3, cb);
149840
149840
  });
149841
149841
  };
149842
- Glob.prototype._processSimple2 = function(prefix, index, er, exists2, cb) {
149842
+ Glob.prototype._processSimple2 = function(prefix, index, er, exists3, cb) {
149843
149843
  if (!this.matches[index])
149844
149844
  this.matches[index] = /* @__PURE__ */ Object.create(null);
149845
- if (!exists2)
149845
+ if (!exists3)
149846
149846
  return cb();
149847
149847
  if (prefix && isAbsolute(prefix) && !this.nomount) {
149848
149848
  var trail = /[\/\\]$/.test(prefix);
@@ -149873,7 +149873,7 @@ var require_glob = __commonJS({
149873
149873
  if (needDir && c === "FILE")
149874
149874
  return cb();
149875
149875
  }
149876
- var exists2;
149876
+ var exists3;
149877
149877
  var stat = this.statCache[abs];
149878
149878
  if (stat !== void 0) {
149879
149879
  if (stat === false)
@@ -171709,35 +171709,69 @@ import path16 from "path";
171709
171709
  var import_yaml6 = __toESM(require_dist(), 1);
171710
171710
  var xml = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_", parseAttributeValue: false, isArray: /* @__PURE__ */ __name((n) => ["module", "plugin", "profile", "execution"].includes(n), "isArray") });
171711
171711
  var toArr = /* @__PURE__ */ __name((v) => v == null ? [] : Array.isArray(v) ? v : [v], "toArr");
171712
- function readPom(dir) {
171712
+ async function exists2(p) {
171713
+ try {
171714
+ await fs9.promises.access(p);
171715
+ return true;
171716
+ } catch {
171717
+ return false;
171718
+ }
171719
+ }
171720
+ __name(exists2, "exists");
171721
+ async function readPom(dir) {
171713
171722
  const p = path16.join(dir, "pom.xml");
171714
- if (!fs9.existsSync(p)) return void 0;
171715
171723
  try {
171716
- return xml.parse(fs9.readFileSync(p, "utf-8"))?.project;
171724
+ return xml.parse(await fs9.promises.readFile(p, "utf-8"))?.project;
171717
171725
  } catch {
171718
171726
  return void 0;
171719
171727
  }
171720
171728
  }
171721
171729
  __name(readPom, "readPom");
171722
- function reactorModules(root) {
171730
+ async function reactorModules(root) {
171723
171731
  const seen = /* @__PURE__ */ new Set();
171724
171732
  const out = [];
171725
- const visit2 = /* @__PURE__ */ __name((dir) => {
171733
+ const visit2 = /* @__PURE__ */ __name(async (dir) => {
171726
171734
  const real = path16.resolve(dir);
171727
171735
  if (seen.has(real)) return;
171728
171736
  seen.add(real);
171729
- const pom = readPom(real);
171737
+ const pom = await readPom(real);
171730
171738
  if (!pom) return;
171731
171739
  out.push(real);
171732
171740
  for (const m of toArr(pom.modules?.module)) {
171733
171741
  const target = path16.join(real, String(m));
171734
- visit2(fs9.existsSync(path16.join(target, "pom.xml")) ? target : path16.dirname(target));
171742
+ await visit2(await exists2(path16.join(target, "pom.xml")) ? target : path16.dirname(target));
171735
171743
  }
171736
171744
  }, "visit");
171737
- visit2(root);
171745
+ await visit2(root);
171738
171746
  return out;
171739
171747
  }
171740
171748
  __name(reactorModules, "reactorModules");
171749
+ var SKIP_DIRS = /* @__PURE__ */ new Set(["node_modules", "target", "dist", "build", ".git", ".idea", ".vscode"]);
171750
+ async function findProjectRoots(root, maxDepth = 4) {
171751
+ if (await exists2(path16.join(root, "pom.xml"))) return [root];
171752
+ const roots = [];
171753
+ const visit2 = /* @__PURE__ */ __name(async (dir, depth) => {
171754
+ if (await exists2(path16.join(dir, "pom.xml"))) {
171755
+ roots.push(dir);
171756
+ return;
171757
+ }
171758
+ if (depth >= maxDepth) return;
171759
+ let entries;
171760
+ try {
171761
+ entries = await fs9.promises.readdir(dir, { withFileTypes: true });
171762
+ } catch {
171763
+ return;
171764
+ }
171765
+ for (const e of entries) {
171766
+ if (!e.isDirectory()) continue;
171767
+ if (SKIP_DIRS.has(e.name) || e.name.startsWith(".")) continue;
171768
+ await visit2(path16.join(dir, e.name), depth + 1);
171769
+ }
171770
+ }, "visit");
171771
+ await visit2(root, 0);
171772
+ return roots.sort();
171773
+ }
171774
+ __name(findProjectRoots, "findProjectRoots");
171741
171775
  var RESOURCE_ROOTS = ["src/main/resources", "src/test/resources"];
171742
171776
  var isTestPath = /* @__PURE__ */ __name((p) => /(^|\/)src\/test\//.test(p) || /(^|\/)test(s)?\//.test(p), "isTestPath");
171743
171777
  function resolveValue(value, moduleDir) {
@@ -171755,12 +171789,11 @@ function fmtOf(p) {
171755
171789
  return "yaml";
171756
171790
  }
171757
171791
  __name(fmtOf, "fmtOf");
171758
- function validate2(absPath) {
171792
+ async function validate2(absPath) {
171759
171793
  const format = fmtOf(absPath);
171760
- if (!fs9.existsSync(absPath)) return { valid: false, format };
171761
171794
  let body;
171762
171795
  try {
171763
- body = fs9.readFileSync(absPath, "utf-8");
171796
+ body = await fs9.promises.readFile(absPath, "utf-8");
171764
171797
  } catch {
171765
171798
  return { valid: false, format };
171766
171799
  }
@@ -171775,10 +171808,15 @@ function validate2(absPath) {
171775
171808
  }
171776
171809
  __name(validate2, "validate");
171777
171810
  var PROP_FILE_NAMES = ["liquibase.properties"];
171778
- function readProperty(file2, key2) {
171779
- if (!fs9.existsSync(file2)) return void 0;
171811
+ async function readProperty(file2, key2) {
171812
+ let body;
171813
+ try {
171814
+ body = await fs9.promises.readFile(file2, "utf-8");
171815
+ } catch {
171816
+ return void 0;
171817
+ }
171780
171818
  const re2 = new RegExp(`^\\s*${key2}\\s*[=:]\\s*(.+?)\\s*$`, "im");
171781
- return fs9.readFileSync(file2, "utf-8").match(re2)?.[1]?.replace(/^["']|["']$/g, "");
171819
+ return body.match(re2)?.[1]?.replace(/^["']|["']$/g, "");
171782
171820
  }
171783
171821
  __name(readProperty, "readProperty");
171784
171822
  function findLiquibasePlugin(pom) {
@@ -171799,26 +171837,32 @@ var CONVENTION = [
171799
171837
  { re: /(^|\/)db\.changelog-root\.(ya?ml|xml|json|sql)$/i, score: 0.68 },
171800
171838
  { re: /(^|\/)(master|changelog)\.(xml|ya?ml|json)$/i, score: 0.55 }
171801
171839
  ];
171802
- function scanConvention(moduleDir) {
171840
+ async function scanConvention(moduleDir) {
171803
171841
  const found = [];
171804
- const walk = /* @__PURE__ */ __name((dir, depth) => {
171805
- if (depth > 8 || !fs9.existsSync(dir)) return;
171806
- for (const e of fs9.readdirSync(dir, { withFileTypes: true })) {
171842
+ const walk = /* @__PURE__ */ __name(async (dir, depth) => {
171843
+ if (depth > 8) return;
171844
+ let entries;
171845
+ try {
171846
+ entries = await fs9.promises.readdir(dir, { withFileTypes: true });
171847
+ } catch {
171848
+ return;
171849
+ }
171850
+ for (const e of entries) {
171807
171851
  if (e.name === "node_modules" || e.name === "target" || e.name.startsWith(".")) continue;
171808
171852
  const full = path16.join(dir, e.name);
171809
- if (e.isDirectory()) walk(full, depth + 1);
171853
+ if (e.isDirectory()) await walk(full, depth + 1);
171810
171854
  else for (const c of CONVENTION) if (c.re.test(full.replace(/\\/g, "/"))) {
171811
171855
  found.push({ abs: full, score: c.score });
171812
171856
  break;
171813
171857
  }
171814
171858
  }
171815
171859
  }, "walk");
171816
- for (const r of RESOURCE_ROOTS) walk(path16.join(moduleDir, r), 0);
171860
+ for (const r of RESOURCE_ROOTS) await walk(path16.join(moduleDir, r), 0);
171817
171861
  return found;
171818
171862
  }
171819
171863
  __name(scanConvention, "scanConvention");
171820
- function detectInModule(moduleDir, label2, projectRoot, warnings) {
171821
- const pom = readPom(moduleDir);
171864
+ async function detectInModule(moduleDir, label2, projectRoot, warnings) {
171865
+ const pom = await readPom(moduleDir);
171822
171866
  const raw = [];
171823
171867
  const plugin = pom ? findLiquibasePlugin(pom) : void 0;
171824
171868
  if (plugin) {
@@ -171828,34 +171872,36 @@ function detectInModule(moduleDir, label2, projectRoot, warnings) {
171828
171872
  const propFile = cfg.propertyFile;
171829
171873
  if (propFile) {
171830
171874
  const pf = path16.isAbsolute(String(propFile)) ? String(propFile) : path16.join(moduleDir, String(propFile));
171831
- const clf = readProperty(pf, "changeLogFile");
171875
+ const clf = await readProperty(pf, "changeLogFile");
171832
171876
  if (clf) for (const abs of resolveValue(clf, moduleDir)) raw.push({ abs, by: "plugin", conf: 0.92 });
171833
171877
  }
171834
171878
  }
171835
171879
  }
171836
171880
  for (const base of ["", ...RESOURCE_ROOTS]) for (const name21 of PROP_FILE_NAMES) {
171837
- const clf = readProperty(path16.join(moduleDir, base, name21), "changeLogFile");
171881
+ const clf = await readProperty(path16.join(moduleDir, base, name21), "changeLogFile");
171838
171882
  if (clf) for (const abs of resolveValue(clf, moduleDir)) raw.push({ abs, by: "liquibase.properties", conf: 0.9 });
171839
171883
  }
171840
- for (const { abs, score } of scanConvention(moduleDir)) raw.push({ abs, by: "convention", conf: score });
171884
+ for (const { abs, score } of await scanConvention(moduleDir)) raw.push({ abs, by: "convention", conf: score });
171841
171885
  const byPath = /* @__PURE__ */ new Map();
171842
171886
  for (const r of raw) {
171843
171887
  const ex = byPath.get(r.abs);
171844
171888
  if (!ex || r.conf > ex.conf) byPath.set(r.abs, { by: r.by, conf: r.conf });
171845
171889
  }
171846
171890
  const srcMain = path16.join(moduleDir, "src/main/java");
171891
+ const srcExists = await exists2(srcMain);
171847
171892
  const out = [];
171848
171893
  for (const [abs, { by, conf }] of byPath) {
171849
- const v = validate2(abs);
171894
+ const v = await validate2(abs);
171850
171895
  if (!v.valid) continue;
171851
171896
  const isTest = isTestPath(abs);
171852
171897
  if (v.sqlUnsupported) warnings.push(`${label2}: ${path16.relative(projectRoot, abs)} is a SQL-formatted changelog \u2014 detected, but the SQL loader adapter is not implemented yet.`);
171853
171898
  out.push({
171854
171899
  module: label2,
171855
171900
  moduleDir,
171901
+ repoRoot: projectRoot,
171856
171902
  changelogAbs: abs,
171857
171903
  changelog: path16.relative(projectRoot, abs),
171858
- srcDir: fs9.existsSync(srcMain) ? path16.relative(projectRoot, srcMain) : void 0,
171904
+ srcDir: srcExists ? path16.relative(projectRoot, srcMain) : void 0,
171859
171905
  detectedBy: by,
171860
171906
  confidence: isTest ? conf * 0.4 : conf,
171861
171907
  isTest,
@@ -171866,23 +171912,54 @@ function detectInModule(moduleDir, label2, projectRoot, warnings) {
171866
171912
  return out.sort((a, b) => b.confidence - a.confidence);
171867
171913
  }
171868
171914
  __name(detectInModule, "detectInModule");
171869
- function detectMaven(projectRoot) {
171870
- const root = path16.resolve(projectRoot);
171915
+ async function* detectMavenStream(scanRoot) {
171916
+ const root = path16.resolve(scanRoot);
171871
171917
  const warnings = [];
171872
- if (!fs9.existsSync(path16.join(root, "pom.xml"))) {
171873
- return { projectRoot: root, modules: 0, candidates: [], warnings: ["No pom.xml at the project root \u2014 not a Maven project."] };
171874
- }
171875
- const modules = reactorModules(root);
171918
+ const projectRoots = await findProjectRoots(root);
171919
+ if (!projectRoots.length) {
171920
+ const w = `No Maven project (pom.xml) found at or under ${root}.`;
171921
+ warnings.push(w);
171922
+ yield { type: "warning", message: w };
171923
+ return { projectRoot: root, projects: 0, modules: 0, candidates: [], warnings };
171924
+ }
171925
+ const multiProject = projectRoots.length > 1;
171876
171926
  const candidates = [];
171877
- for (const dir of modules) {
171878
- const pom = readPom(dir);
171879
- const label2 = pom?.artifactId ?? path16.basename(dir);
171880
- const found = detectInModule(dir, label2, root, warnings);
171881
- if (found.length) candidates.push(...found.filter((c) => c.confidence >= found[0].confidence - 0.15));
171927
+ let moduleCount = 0;
171928
+ for (let pi = 0; pi < projectRoots.length; pi++) {
171929
+ const pr = projectRoots[pi];
171930
+ yield { type: "project", project: path16.basename(pr), path: pr, index: pi + 1, total: projectRoots.length };
171931
+ const modules = await reactorModules(pr);
171932
+ moduleCount += modules.length;
171933
+ for (const dir of modules) {
171934
+ const pom = await readPom(dir);
171935
+ const artifactId = pom?.artifactId ?? path16.basename(dir);
171936
+ const label2 = multiProject ? `${path16.basename(pr)}/${artifactId}` : artifactId;
171937
+ yield { type: "module", module: label2, project: path16.basename(pr) };
171938
+ const before = warnings.length;
171939
+ const found = await detectInModule(dir, label2, pr, warnings);
171940
+ for (let i = before; i < warnings.length; i++) yield { type: "warning", message: warnings[i] };
171941
+ if (found.length) {
171942
+ const kept = found.filter((c) => c.confidence >= found[0].confidence - 0.15);
171943
+ candidates.push(...kept);
171944
+ for (const c of kept) yield { type: "candidate", candidate: c };
171945
+ }
171946
+ }
171882
171947
  }
171883
171948
  candidates.sort((a, b) => b.confidence - a.confidence);
171884
- if (!candidates.length) warnings.push(`No Liquibase changelog detected across ${modules.length} module(s). Looked at liquibase-maven-plugin config, liquibase.properties, and db/changelog conventions under src/main|test/resources.`);
171885
- return { projectRoot: root, modules: modules.length, candidates, warnings };
171949
+ if (!candidates.length) {
171950
+ const scope = multiProject ? `${projectRoots.length} project(s), ${moduleCount} module(s)` : `${moduleCount} module(s)`;
171951
+ const w = `No Liquibase changelog detected across ${scope}. Looked at liquibase-maven-plugin config, liquibase.properties, and db/changelog conventions under src/main|test/resources.`;
171952
+ warnings.push(w);
171953
+ yield { type: "warning", message: w };
171954
+ }
171955
+ return { projectRoot: root, projects: projectRoots.length, modules: moduleCount, candidates, warnings };
171956
+ }
171957
+ __name(detectMavenStream, "detectMavenStream");
171958
+ async function detectMaven(scanRoot) {
171959
+ const gen = detectMavenStream(scanRoot);
171960
+ let r = await gen.next();
171961
+ while (!r.done) r = await gen.next();
171962
+ return r.value;
171886
171963
  }
171887
171964
  __name(detectMaven, "detectMaven");
171888
171965
  function detectionToPlan(result, opts = {}) {
@@ -171893,7 +171970,7 @@ function detectionToPlan(result, opts = {}) {
171893
171970
  const ex = bestPerModule.get(c.module);
171894
171971
  if (!ex || c.confidence > ex.confidence) bestPerModule.set(c.module, c);
171895
171972
  }
171896
- return [...bestPerModule.values()].map((c) => ({ name: c.module, repoRoot: result.projectRoot, changelog: c.changelog, srcDir: c.srcDir }));
171973
+ return [...bestPerModule.values()].map((c) => ({ name: c.module, repoRoot: c.repoRoot, changelog: c.changelog, srcDir: c.srcDir }));
171897
171974
  }
171898
171975
  __name(detectionToPlan, "detectionToPlan");
171899
171976
 
@@ -171972,17 +172049,40 @@ var reverseEngineerRunStream = /* @__PURE__ */ __name(async (req, res) => {
171972
172049
  res.end();
171973
172050
  }
171974
172051
  }, "reverseEngineerRunStream");
171975
- var detectMavenChangelogs = /* @__PURE__ */ __name((req, res) => {
172052
+ var detectMavenChangelogs = /* @__PURE__ */ __name(async (req, res) => {
171976
172053
  if (!localOnly(res)) return;
171977
172054
  const { repoRoot, includeTest } = req.body ?? {};
171978
172055
  if (!repoRoot || typeof repoRoot !== "string") return res.status(400).json({ message: "repoRoot (string) is required" });
171979
172056
  try {
171980
- const result = detectMaven(repoRoot);
172057
+ const result = await detectMaven(repoRoot);
171981
172058
  res.json({ data: { ...result, plan: detectionToPlan(result, { includeTest: includeTest === true }) } });
171982
172059
  } catch (err) {
171983
172060
  res.status(422).json({ message: "Detection failed", error: err instanceof Error ? err.message : String(err) });
171984
172061
  }
171985
172062
  }, "detectMavenChangelogs");
172063
+ var detectMavenChangelogsStream = /* @__PURE__ */ __name(async (req, res) => {
172064
+ if (!localOnly(res)) return;
172065
+ const { repoRoot, includeTest } = req.body ?? {};
172066
+ if (!repoRoot || typeof repoRoot !== "string") return res.status(400).json({ message: "repoRoot (string) is required" });
172067
+ res.setHeader("Content-Type", "application/x-ndjson");
172068
+ res.setHeader("Cache-Control", "no-cache, no-transform");
172069
+ res.setHeader("X-Accel-Buffering", "no");
172070
+ const write = /* @__PURE__ */ __name((o) => res.write(JSON.stringify(o) + "\n"), "write");
172071
+ try {
172072
+ const gen = detectMavenStream(repoRoot);
172073
+ let r = await gen.next();
172074
+ while (!r.done) {
172075
+ write(r.value);
172076
+ r = await gen.next();
172077
+ }
172078
+ const result = r.value;
172079
+ write({ type: "result", data: { ...result, plan: detectionToPlan(result, { includeTest: includeTest === true }) } });
172080
+ } catch (err) {
172081
+ write({ type: "error", error: err instanceof Error ? err.message : String(err) });
172082
+ } finally {
172083
+ res.end();
172084
+ }
172085
+ }, "detectMavenChangelogsStream");
171986
172086
  var jiraGetConfig = /* @__PURE__ */ __name((_req, res) => {
171987
172087
  const cfg = getConfigSection("jira");
171988
172088
  res.json({
@@ -172129,6 +172229,7 @@ var ADMIN = authorizeJwt(["admin" /* ADMIN */]);
172129
172229
  router29.post("/api/reverse-engineer/run", WRITE2, reverseEngineerRun);
172130
172230
  router29.post("/api/reverse-engineer/run-stream", WRITE2, reverseEngineerRunStream);
172131
172231
  router29.post("/api/reverse-engineer/detect", WRITE2, detectMavenChangelogs);
172232
+ router29.post("/api/reverse-engineer/detect-stream", WRITE2, detectMavenChangelogsStream);
172132
172233
  router29.get("/api/reverse-engineer/jira-config", ADMIN, jiraGetConfig);
172133
172234
  router29.post("/api/reverse-engineer/jira-config", ADMIN, jiraSaveConfig);
172134
172235
  router29.post("/api/reverse-engineer/jira-test", ADMIN, jiraTestConnection);
@@ -1 +1 @@
1
- import{d as a,r as p,g as u}from"./chunk-MOJQB5TN-4ae9f036.js";import{p as f}from"./chunk-JWPE2WC7-22b1fc86.js";import{_ as n,l as o}from"./mermaid.core-dda71dbd.js";import{o as c,M as d}from"./mermaid-parser.core-050aa76f.js";import"./index-60bae2ec.js";var v=c().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new d(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},B={parser:R,db:a,renderer:p,styles:u};export{B as diagram};
1
+ import{d as a,r as p,g as u}from"./chunk-MOJQB5TN-7327a1f1.js";import{p as f}from"./chunk-JWPE2WC7-76a6de0e.js";import{_ as n,l as o}from"./mermaid.core-691e4744.js";import{o as c,M as d}from"./mermaid-parser.core-c86c44bd.js";import"./index-4d3efe4a.js";var v=c().RailroadAbnf.parser.LangiumParser,i=n(e=>{const r=e.alternatives.map(g);return r.length===1?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),g=n(e=>{const r=e.elements.map(y);return r.length===1?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),b=n(e=>{if(e.includes("*")){const[t,s]=e.split("*"),l=t?parseInt(t,10):0,m=s?parseInt(s,10):1/0;return{min:l,max:m}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),y=n(e=>{const r=A(e.primary);if(!e.repeat)return r;const{min:t,max:s}=b(e.repeat);return t===0&&s===1?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:s}},"transformElement"),A=n(e=>{switch(e.$type){case"AbnfStringLiteral":return{type:"terminal",value:e.value};case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return i(e.element);case"AbnfOptionalGroup":return{type:"optional",element:i(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),P=n(e=>({name:e.name,definition:i(e.definition)}),"transformRule"),h=n(e=>{f(e,a),e.title&&a.setTitle(e.title),e.rules.map(r=>a.addRule(P(r)))},"populateDb"),R={parse:n(e=>{a.clear(),o.debug("[ABNF Parser] Starting Langium parse");const r=v.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new d(r);const t=r.value;o.debug("[ABNF Parser] Parsed rules:",t.rules.length),h(t),o.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:a}},B={parser:R,db:a,renderer:p,styles:u};export{B as diagram};
@@ -1 +1 @@
1
- import{a1 as ln,a2 as an,a3 as y,a4 as tn,a5 as H,a6 as q,a7 as _,a8 as un,a9 as rn,aa as L,ab as o,ac as B,ad as sn,ae as on,af as fn}from"./mermaid.core-dda71dbd.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,C,a){var O=I-l,i=D-h,n=C-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function W(l,h,I,D,v,A,C){var a=l-I,O=h-D,i=(C?A:-A)/L(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,F=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*L(fn(0,T*T*R-P*P)),j=(P*g-m*S)/R,z=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=j-F,e=z-t,r=w-F,G=p-t;return x*x+e*e>r*r+G*G&&(j=w,z=p),{cx:j,cy:z,x01:-n,y01:-d,x11:j*(v/T-1),y11:z*(v/T-1)}}function hn(){var l=cn,h=yn,I=B(0),D=null,v=gn,A=dn,C=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=A.apply(this,arguments)-an,F=un(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*H(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=F,S=F,j=C.apply(this,arguments)/2,z=j>y&&(D?+D.apply(this,arguments):L(u*u+s*s)),w=_(un(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(z>y){var G=sn(z/u*q(j)),M=sn(z/s*q(j));(P-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(P=0,R=T=(f+c)/2),(S-=M*2)>y?(M*=t?1:-1,m+=M,g-=M):(S=0,m=g=(f+c)/2)}var J=s*H(m),K=s*q(m),N=u*H(T),Q=u*q(T);if(w>y){var U=s*H(g),V=s*q(g),X=u*H(R),Y=u*q(R),E;if(F<rn)if(E=pn(J,K,X,Y,U,V,N,Q)){var Z=J-E[0],$=K-E[1],b=U-E[0],k=V-E[1],nn=1/q(on((Z*b+$*k)/(L(Z*Z+$*$)*L(b*b+k*k)))/2),en=L(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=W(X,Y,J,K,s,x,t),r=W(U,V,N,Q,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(J,K),a.arc(0,0,s,m,g,!t)):a.moveTo(J,K),!(u>y)||!(P>y)?a.lineTo(N,Q):p>y?(e=W(N,Q,U,V,u,-p,t),r=W(J,K,X,Y,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[H(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:B(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:B(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:B(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:B(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:B(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:B(+n),i):A},i.padAngle=function(n){return arguments.length?(C=typeof n=="function"?n:B(+n),i):C},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
1
+ import{a1 as ln,a2 as an,a3 as y,a4 as tn,a5 as H,a6 as q,a7 as _,a8 as un,a9 as rn,aa as L,ab as o,ac as B,ad as sn,ae as on,af as fn}from"./mermaid.core-691e4744.js";function cn(l){return l.innerRadius}function yn(l){return l.outerRadius}function gn(l){return l.startAngle}function dn(l){return l.endAngle}function mn(l){return l&&l.padAngle}function pn(l,h,I,D,v,A,C,a){var O=I-l,i=D-h,n=C-v,d=a-A,u=d*O-n*i;if(!(u*u<y))return u=(n*(h-A)-d*(l-v))/u,[l+u*O,h+u*i]}function W(l,h,I,D,v,A,C){var a=l-I,O=h-D,i=(C?A:-A)/L(a*a+O*O),n=i*O,d=-i*a,u=l+n,s=h+d,f=I+n,c=D+d,F=(u+f)/2,t=(s+c)/2,m=f-u,g=c-s,R=m*m+g*g,T=v-A,P=u*c-f*s,S=(g<0?-1:1)*L(fn(0,T*T*R-P*P)),j=(P*g-m*S)/R,z=(-P*m-g*S)/R,w=(P*g+m*S)/R,p=(-P*m+g*S)/R,x=j-F,e=z-t,r=w-F,G=p-t;return x*x+e*e>r*r+G*G&&(j=w,z=p),{cx:j,cy:z,x01:-n,y01:-d,x11:j*(v/T-1),y11:z*(v/T-1)}}function hn(){var l=cn,h=yn,I=B(0),D=null,v=gn,A=dn,C=mn,a=null,O=ln(i);function i(){var n,d,u=+l.apply(this,arguments),s=+h.apply(this,arguments),f=v.apply(this,arguments)-an,c=A.apply(this,arguments)-an,F=un(c-f),t=c>f;if(a||(a=n=O()),s<u&&(d=s,s=u,u=d),!(s>y))a.moveTo(0,0);else if(F>tn-y)a.moveTo(s*H(f),s*q(f)),a.arc(0,0,s,f,c,!t),u>y&&(a.moveTo(u*H(c),u*q(c)),a.arc(0,0,u,c,f,t));else{var m=f,g=c,R=f,T=c,P=F,S=F,j=C.apply(this,arguments)/2,z=j>y&&(D?+D.apply(this,arguments):L(u*u+s*s)),w=_(un(s-u)/2,+I.apply(this,arguments)),p=w,x=w,e,r;if(z>y){var G=sn(z/u*q(j)),M=sn(z/s*q(j));(P-=G*2)>y?(G*=t?1:-1,R+=G,T-=G):(P=0,R=T=(f+c)/2),(S-=M*2)>y?(M*=t?1:-1,m+=M,g-=M):(S=0,m=g=(f+c)/2)}var J=s*H(m),K=s*q(m),N=u*H(T),Q=u*q(T);if(w>y){var U=s*H(g),V=s*q(g),X=u*H(R),Y=u*q(R),E;if(F<rn)if(E=pn(J,K,X,Y,U,V,N,Q)){var Z=J-E[0],$=K-E[1],b=U-E[0],k=V-E[1],nn=1/q(on((Z*b+$*k)/(L(Z*Z+$*$)*L(b*b+k*k)))/2),en=L(E[0]*E[0]+E[1]*E[1]);p=_(w,(u-en)/(nn-1)),x=_(w,(s-en)/(nn+1))}else p=x=0}S>y?x>y?(e=W(X,Y,J,K,s,x,t),r=W(U,V,N,Q,s,x,t),a.moveTo(e.cx+e.x01,e.cy+e.y01),x<w?a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,x,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,s,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),!t),a.arc(r.cx,r.cy,x,o(r.y11,r.x11),o(r.y01,r.x01),!t))):(a.moveTo(J,K),a.arc(0,0,s,m,g,!t)):a.moveTo(J,K),!(u>y)||!(P>y)?a.lineTo(N,Q):p>y?(e=W(N,Q,U,V,u,-p,t),r=W(J,K,X,Y,u,-p,t),a.lineTo(e.cx+e.x01,e.cy+e.y01),p<w?a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(r.y01,r.x01),!t):(a.arc(e.cx,e.cy,p,o(e.y01,e.x01),o(e.y11,e.x11),!t),a.arc(0,0,u,o(e.cy+e.y11,e.cx+e.x11),o(r.cy+r.y11,r.cx+r.x11),t),a.arc(r.cx,r.cy,p,o(r.y11,r.x11),o(r.y01,r.x01),!t))):a.arc(0,0,u,T,R,t)}if(a.closePath(),n)return a=null,n+""||null}return i.centroid=function(){var n=(+l.apply(this,arguments)+ +h.apply(this,arguments))/2,d=(+v.apply(this,arguments)+ +A.apply(this,arguments))/2-rn/2;return[H(d)*n,q(d)*n]},i.innerRadius=function(n){return arguments.length?(l=typeof n=="function"?n:B(+n),i):l},i.outerRadius=function(n){return arguments.length?(h=typeof n=="function"?n:B(+n),i):h},i.cornerRadius=function(n){return arguments.length?(I=typeof n=="function"?n:B(+n),i):I},i.padRadius=function(n){return arguments.length?(D=n==null?null:typeof n=="function"?n:B(+n),i):D},i.startAngle=function(n){return arguments.length?(v=typeof n=="function"?n:B(+n),i):v},i.endAngle=function(n){return arguments.length?(A=typeof n=="function"?n:B(+n),i):A},i.padAngle=function(n){return arguments.length?(C=typeof n=="function"?n:B(+n),i):C},i.context=function(n){return arguments.length?(a=n??null,i):a},i}export{hn as d};
@@ -0,0 +1 @@
1
+ import{A as c,f as i}from"./mermaid-parser.core-c86c44bd.js";import"./index-4d3efe4a.js";export{c as ArchitectureModule,i as createArchitectureServices};
@@ -1,4 +1,4 @@
1
- import{p as gt}from"./chunk-JWPE2WC7-22b1fc86.js";import{E as ut,s as mt,g as pt,n as yt,o as wt,b as kt,c as xt,_ as f,v as bt,F as vt,G as $t,an as Et,al as St,l as tt,j as At,K as Tt,X as Dt,r as Ct,ao as Z,d as V,am as _,i as It}from"./mermaid.core-dda71dbd.js";import{v as Lt}from"./mermaid-parser.core-050aa76f.js";import{c as et,f as Bt}from"./index-60bae2ec.js";var Q={L:"left",R:"right",T:"top",B:"bottom"},U={L:f(e=>`${e},${e/2} 0,${e} 0,0`,"L"),R:f(e=>`0,${e/2} ${e},0 ${e},${e}`,"R"),T:f(e=>`0,0 ${e},0 ${e/2},${e}`,"T"),B:f(e=>`${e/2},0 ${e},${e} 0,${e}`,"B")},Y={L:f((e,t)=>e-t+2,"L"),R:f((e,t)=>e-2,"R"),T:f((e,t)=>e-t+2,"T"),B:f((e,t)=>e-2,"B")},jt=f(function(e){return L(e)?e==="L"?"R":"L":e==="T"?"B":"T"},"getOppositeArchitectureDirection"),K=f(function(e){const t=e;return t==="L"||t==="R"||t==="T"||t==="B"},"isArchitectureDirection"),L=f(function(e){const t=e;return t==="L"||t==="R"},"isArchitectureDirectionX"),P=f(function(e){const t=e;return t==="T"||t==="B"},"isArchitectureDirectionY"),q=f(function(e,t){const r=L(e)&&P(t),i=P(e)&&L(t);return r||i},"isArchitectureDirectionXY"),zt=f(function(e){const t=e[0],r=e[1],i=L(t)&&P(r),s=P(t)&&L(r);return i||s},"isArchitecturePairXY"),Ft=f(function(e){return e!=="LL"&&e!=="RR"&&e!=="TT"&&e!=="BB"},"isValidArchitectureDirectionPair"),H=f(function(e,t){const r=`${e}${t}`;return Ft(r)?r:void 0},"getArchitectureDirectionPair"),Pt=f(function([e,t],r){const i=r[0],s=r[1];return L(i)?P(s)?[e+(i==="L"?-1:1),t+(s==="T"?1:-1)]:[e+(i==="L"?-1:1),t]:L(s)?[e+(s==="L"?1:-1),t+(i==="T"?1:-1)]:[e,t+(i==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Mt=f(function(e){return e==="LT"||e==="TL"?[1,1]:e==="BL"||e==="LB"?[1,-1]:e==="BR"||e==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Rt=f(function(e,t){return q(e,t)?"bend":L(e)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Ot=f(function(e){return e.type==="service"},"isArchitectureService"),Xt=f(function(e){return e.type==="junction"},"isArchitectureJunction"),it=f(e=>e.data(),"edgeData"),R=f(e=>e.data(),"nodeData"),Yt=ut.architecture,X,rt=(X=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.elements={},this.diagramId="",this.setAccTitle=mt,this.getAccTitle=pt,this.setDiagramTitle=yt,this.getDiagramTitle=wt,this.getAccDescription=kt,this.setAccDescription=xt,this.clear()}setDiagramId(t){this.diagramId=t}getDiagramId(){return this.diagramId}clear(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},this.diagramId="",bt()}addService({id:t,icon:r,in:i,title:s,iconText:l}){if(this.registeredIds[t]!==void 0)throw new Error(`The service id [${t}] is already in use by another ${this.registeredIds[t]}`);if(i!==void 0){if(t===i)throw new Error(`The service [${t}] cannot be placed within itself`);if(this.registeredIds[i]===void 0)throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[i]==="node")throw new Error(`The service [${t}]'s parent is not a group`)}this.registeredIds[t]="node",this.nodes[t]={id:t,type:"service",icon:r,iconText:l,title:s,edges:[],in:i}}getServices(){return Object.values(this.nodes).filter(Ot)}addJunction({id:t,in:r}){if(this.registeredIds[t]!==void 0)throw new Error(`The junction id [${t}] is already in use by another ${this.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The junction [${t}] cannot be placed within itself`);if(this.registeredIds[r]===void 0)throw new Error(`The junction [${t}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[r]==="node")throw new Error(`The junction [${t}]'s parent is not a group`)}this.registeredIds[t]="node",this.nodes[t]={id:t,type:"junction",edges:[],in:r}}getJunctions(){return Object.values(this.nodes).filter(Xt)}getNodes(){return Object.values(this.nodes)}getNode(t){return this.nodes[t]??null}addGroup({id:t,icon:r,in:i,title:s}){var l,p,g;if(((l=this.registeredIds)==null?void 0:l[t])!==void 0)throw new Error(`The group id [${t}] is already in use by another ${this.registeredIds[t]}`);if(i!==void 0){if(t===i)throw new Error(`The group [${t}] cannot be placed within itself`);if(((p=this.registeredIds)==null?void 0:p[i])===void 0)throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if(((g=this.registeredIds)==null?void 0:g[i])==="node")throw new Error(`The group [${t}]'s parent is not a group`)}this.registeredIds[t]="group",this.groups[t]={id:t,icon:r,title:s,in:i}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:t,rhsId:r,lhsDir:i,rhsDir:s,lhsInto:l,rhsInto:p,lhsGroup:g,rhsGroup:m,title:u}){if(!K(i))throw new Error(`Invalid direction given for left hand side of edge ${t}--${r}. Expected (L,R,T,B) got ${String(i)}`);if(!K(s))throw new Error(`Invalid direction given for right hand side of edge ${t}--${r}. Expected (L,R,T,B) got ${String(s)}`);if(this.nodes[t]===void 0&&this.groups[t]===void 0)throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[r]===void 0&&this.groups[r]===void 0)throw new Error(`The right-hand id [${r}] does not yet exist. Please create the service/group before declaring an edge to it.`);const h=this.nodes[t].in,o=this.nodes[r].in;if(g&&h&&o&&h==o)throw new Error(`The left-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(m&&h&&o&&h==o)throw new Error(`The right-hand id [${r}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const a={lhsId:t,lhsDir:i,lhsInto:l,lhsGroup:g,rhsId:r,rhsDir:s,rhsInto:p,rhsGroup:m,title:u};this.edges.push(a),this.nodes[t]&&this.nodes[r]&&(this.nodes[t].edges.push(this.edges[this.edges.length-1]),this.nodes[r].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}addLayoutHint(t){if(t.members.length<2)throw new Error(`An align directive requires at least two members; got ${t.members.length}`);const r=new Set;t.members.forEach(i=>{if(this.registeredIds[i]!=="node")throw new Error(`align ${t.direction} references [${i}], which is not a service or junction`);if(r.has(i))throw new Error(`align ${t.direction} lists [${i}] more than once`);r.add(i)}),this.layoutHints.push(t)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){const t={},r=Object.entries(this.nodes).reduce((m,[u,h])=>(m[u]=h.edges.reduce((o,a)=>{var n,b;const d=(n=this.getNode(a.lhsId))==null?void 0:n.in,c=(b=this.getNode(a.rhsId))==null?void 0:b.in;if(d&&c&&d!==c){const k=Rt(a.lhsDir,a.rhsDir);k!=="bend"&&(t[d]??(t[d]={}),t[d][c]=k,t[c]??(t[c]={}),t[c][d]=k)}if(a.lhsId===u){const k=H(a.lhsDir,a.rhsDir);k&&(o[k]=a.rhsId)}else{const k=H(a.rhsDir,a.lhsDir);k&&(o[k]=a.lhsId)}return o},{}),m),{}),i=Object.keys(r)[0],s={[i]:1},l=Object.keys(r).reduce((m,u)=>u===i?m:{...m,[u]:1},{}),p=f(m=>{const u={[m]:[0,0]},h=[m];for(;h.length>0;){const o=h.shift();if(o){s[o]=1,delete l[o];const a=r[o],[d,c]=u[o];Object.entries(a).forEach(([n,b])=>{s[b]||(u[b]=Pt([d,c],n),h.push(b))})}}return u},"BFS"),g=[p(i)];for(;Object.keys(l).length>0;)g.push(p(Object.keys(l)[0]));this.dataStructures={adjList:r,spatialMaps:g,groupAlignments:t}}return this.dataStructures}setElementForId(t,r){this.elements[t]=r}getElementById(t){return this.elements[t]}getConfig(){return vt({...Yt,...$t().architecture})}getConfigField(t){return this.getConfig()[t]}},f(X,"ArchitectureDB"),X),Gt=f((e,t)=>{var r;gt(e,t),e.groups.map(i=>t.addGroup(i)),e.services.map(i=>t.addService({...i,type:"service"})),e.junctions.map(i=>t.addJunction({...i,type:"junction"})),e.edges.map(i=>t.addEdge(i)),(r=e.alignments)==null||r.map(i=>t.addLayoutHint({direction:i.direction,members:[...i.members]}))},"populateDb"),st={parser:{yy:void 0},parse:f(async e=>{var i;const t=await Lt("architecture",e);tt.debug(t);const r=(i=st.parser)==null?void 0:i.yy;if(!(r instanceof rt))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Gt(t,r)},"parse")},Nt=f(e=>`
1
+ import{p as gt}from"./chunk-JWPE2WC7-76a6de0e.js";import{E as ut,s as mt,g as pt,n as yt,o as wt,b as kt,c as xt,_ as f,v as bt,F as vt,G as $t,an as Et,al as St,l as tt,j as At,K as Tt,X as Dt,r as Ct,ao as Z,d as V,am as _,i as It}from"./mermaid.core-691e4744.js";import{v as Lt}from"./mermaid-parser.core-c86c44bd.js";import{c as et,f as Bt}from"./index-4d3efe4a.js";var Q={L:"left",R:"right",T:"top",B:"bottom"},U={L:f(e=>`${e},${e/2} 0,${e} 0,0`,"L"),R:f(e=>`0,${e/2} ${e},0 ${e},${e}`,"R"),T:f(e=>`0,0 ${e},0 ${e/2},${e}`,"T"),B:f(e=>`${e/2},0 ${e},${e} 0,${e}`,"B")},Y={L:f((e,t)=>e-t+2,"L"),R:f((e,t)=>e-2,"R"),T:f((e,t)=>e-t+2,"T"),B:f((e,t)=>e-2,"B")},jt=f(function(e){return L(e)?e==="L"?"R":"L":e==="T"?"B":"T"},"getOppositeArchitectureDirection"),K=f(function(e){const t=e;return t==="L"||t==="R"||t==="T"||t==="B"},"isArchitectureDirection"),L=f(function(e){const t=e;return t==="L"||t==="R"},"isArchitectureDirectionX"),P=f(function(e){const t=e;return t==="T"||t==="B"},"isArchitectureDirectionY"),q=f(function(e,t){const r=L(e)&&P(t),i=P(e)&&L(t);return r||i},"isArchitectureDirectionXY"),zt=f(function(e){const t=e[0],r=e[1],i=L(t)&&P(r),s=P(t)&&L(r);return i||s},"isArchitecturePairXY"),Ft=f(function(e){return e!=="LL"&&e!=="RR"&&e!=="TT"&&e!=="BB"},"isValidArchitectureDirectionPair"),H=f(function(e,t){const r=`${e}${t}`;return Ft(r)?r:void 0},"getArchitectureDirectionPair"),Pt=f(function([e,t],r){const i=r[0],s=r[1];return L(i)?P(s)?[e+(i==="L"?-1:1),t+(s==="T"?1:-1)]:[e+(i==="L"?-1:1),t]:L(s)?[e+(s==="L"?1:-1),t+(i==="T"?1:-1)]:[e,t+(i==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Mt=f(function(e){return e==="LT"||e==="TL"?[1,1]:e==="BL"||e==="LB"?[1,-1]:e==="BR"||e==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Rt=f(function(e,t){return q(e,t)?"bend":L(e)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Ot=f(function(e){return e.type==="service"},"isArchitectureService"),Xt=f(function(e){return e.type==="junction"},"isArchitectureJunction"),it=f(e=>e.data(),"edgeData"),R=f(e=>e.data(),"nodeData"),Yt=ut.architecture,X,rt=(X=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.elements={},this.diagramId="",this.setAccTitle=mt,this.getAccTitle=pt,this.setDiagramTitle=yt,this.getDiagramTitle=wt,this.getAccDescription=kt,this.setAccDescription=xt,this.clear()}setDiagramId(t){this.diagramId=t}getDiagramId(){return this.diagramId}clear(){this.nodes={},this.groups={},this.edges=[],this.layoutHints=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},this.diagramId="",bt()}addService({id:t,icon:r,in:i,title:s,iconText:l}){if(this.registeredIds[t]!==void 0)throw new Error(`The service id [${t}] is already in use by another ${this.registeredIds[t]}`);if(i!==void 0){if(t===i)throw new Error(`The service [${t}] cannot be placed within itself`);if(this.registeredIds[i]===void 0)throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[i]==="node")throw new Error(`The service [${t}]'s parent is not a group`)}this.registeredIds[t]="node",this.nodes[t]={id:t,type:"service",icon:r,iconText:l,title:s,edges:[],in:i}}getServices(){return Object.values(this.nodes).filter(Ot)}addJunction({id:t,in:r}){if(this.registeredIds[t]!==void 0)throw new Error(`The junction id [${t}] is already in use by another ${this.registeredIds[t]}`);if(r!==void 0){if(t===r)throw new Error(`The junction [${t}] cannot be placed within itself`);if(this.registeredIds[r]===void 0)throw new Error(`The junction [${t}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[r]==="node")throw new Error(`The junction [${t}]'s parent is not a group`)}this.registeredIds[t]="node",this.nodes[t]={id:t,type:"junction",edges:[],in:r}}getJunctions(){return Object.values(this.nodes).filter(Xt)}getNodes(){return Object.values(this.nodes)}getNode(t){return this.nodes[t]??null}addGroup({id:t,icon:r,in:i,title:s}){var l,p,g;if(((l=this.registeredIds)==null?void 0:l[t])!==void 0)throw new Error(`The group id [${t}] is already in use by another ${this.registeredIds[t]}`);if(i!==void 0){if(t===i)throw new Error(`The group [${t}] cannot be placed within itself`);if(((p=this.registeredIds)==null?void 0:p[i])===void 0)throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if(((g=this.registeredIds)==null?void 0:g[i])==="node")throw new Error(`The group [${t}]'s parent is not a group`)}this.registeredIds[t]="group",this.groups[t]={id:t,icon:r,title:s,in:i}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:t,rhsId:r,lhsDir:i,rhsDir:s,lhsInto:l,rhsInto:p,lhsGroup:g,rhsGroup:m,title:u}){if(!K(i))throw new Error(`Invalid direction given for left hand side of edge ${t}--${r}. Expected (L,R,T,B) got ${String(i)}`);if(!K(s))throw new Error(`Invalid direction given for right hand side of edge ${t}--${r}. Expected (L,R,T,B) got ${String(s)}`);if(this.nodes[t]===void 0&&this.groups[t]===void 0)throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[r]===void 0&&this.groups[r]===void 0)throw new Error(`The right-hand id [${r}] does not yet exist. Please create the service/group before declaring an edge to it.`);const h=this.nodes[t].in,o=this.nodes[r].in;if(g&&h&&o&&h==o)throw new Error(`The left-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(m&&h&&o&&h==o)throw new Error(`The right-hand id [${r}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const a={lhsId:t,lhsDir:i,lhsInto:l,lhsGroup:g,rhsId:r,rhsDir:s,rhsInto:p,rhsGroup:m,title:u};this.edges.push(a),this.nodes[t]&&this.nodes[r]&&(this.nodes[t].edges.push(this.edges[this.edges.length-1]),this.nodes[r].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}addLayoutHint(t){if(t.members.length<2)throw new Error(`An align directive requires at least two members; got ${t.members.length}`);const r=new Set;t.members.forEach(i=>{if(this.registeredIds[i]!=="node")throw new Error(`align ${t.direction} references [${i}], which is not a service or junction`);if(r.has(i))throw new Error(`align ${t.direction} lists [${i}] more than once`);r.add(i)}),this.layoutHints.push(t)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){const t={},r=Object.entries(this.nodes).reduce((m,[u,h])=>(m[u]=h.edges.reduce((o,a)=>{var n,b;const d=(n=this.getNode(a.lhsId))==null?void 0:n.in,c=(b=this.getNode(a.rhsId))==null?void 0:b.in;if(d&&c&&d!==c){const k=Rt(a.lhsDir,a.rhsDir);k!=="bend"&&(t[d]??(t[d]={}),t[d][c]=k,t[c]??(t[c]={}),t[c][d]=k)}if(a.lhsId===u){const k=H(a.lhsDir,a.rhsDir);k&&(o[k]=a.rhsId)}else{const k=H(a.rhsDir,a.lhsDir);k&&(o[k]=a.lhsId)}return o},{}),m),{}),i=Object.keys(r)[0],s={[i]:1},l=Object.keys(r).reduce((m,u)=>u===i?m:{...m,[u]:1},{}),p=f(m=>{const u={[m]:[0,0]},h=[m];for(;h.length>0;){const o=h.shift();if(o){s[o]=1,delete l[o];const a=r[o],[d,c]=u[o];Object.entries(a).forEach(([n,b])=>{s[b]||(u[b]=Pt([d,c],n),h.push(b))})}}return u},"BFS"),g=[p(i)];for(;Object.keys(l).length>0;)g.push(p(Object.keys(l)[0]));this.dataStructures={adjList:r,spatialMaps:g,groupAlignments:t}}return this.dataStructures}setElementForId(t,r){this.elements[t]=r}getElementById(t){return this.elements[t]}getConfig(){return vt({...Yt,...$t().architecture})}getConfigField(t){return this.getConfig()[t]}},f(X,"ArchitectureDB"),X),Gt=f((e,t)=>{var r;gt(e,t),e.groups.map(i=>t.addGroup(i)),e.services.map(i=>t.addService({...i,type:"service"})),e.junctions.map(i=>t.addJunction({...i,type:"junction"})),e.edges.map(i=>t.addEdge(i)),(r=e.alignments)==null||r.map(i=>t.addLayoutHint({direction:i.direction,members:[...i.members]}))},"populateDb"),st={parser:{yy:void 0},parse:f(async e=>{var i;const t=await Lt("architecture",e);tt.debug(t);const r=(i=st.parser)==null?void 0:i.yy;if(!(r instanceof rt))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Gt(t,r)},"parse")},Nt=f(e=>`
2
2
  .edge {
3
3
  stroke-width: ${e.archEdgeWidth};
4
4
  stroke: ${e.archEdgeColor};
@@ -1,4 +1,4 @@
1
- import{g as de}from"./chunk-5VM5RSS4-854d73c5.js";import{aF as fe,aG as Ut,aH as pe,aI as ye,aJ as xe,aK as be,aL as we,aM as me,aN as Se,aO as Le,aP as ve,aQ as Ee,aR as _e,aS as ke,aT as Te,aU as De,aV as Ne,aW as Ie,aX as Ce,aY as Be,aZ as Oe,a_ as Re,a$ as Ae,b0 as ze,b1 as Me,_ as u,l as v,d as M,b2 as Y,b3 as Pe,G as nt,ao as Et,j as O,b4 as rt,ax as Fe,u as at,b5 as We,S as Ye,O as He,k as Ke,v as Ue,C as Xe,T as Ve,e as je,i as Ot,b6 as Rt,b7 as Ge}from"./mermaid.core-dda71dbd.js";import{G as Ze}from"./graph-7008991d.js";import{c as qe}from"./channel-c2f54369.js";import"./index-60bae2ec.js";function Je(e){return Array.isArray(e)}function Qe(e){if(fe(e))return e;const t=Ut(e);if(!$e(e))return{};if(Je(e)){const s=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(s.index=e.index,s.input=e.input),s}if(pe(e)){const s=e,i=s.constructor;return new i(s.buffer,s.byteOffset,s.length)}if(t==="[object ArrayBuffer]")return new ArrayBuffer(e.byteLength);if(t==="[object DataView]"){const s=e,i=s.buffer,c=s.byteOffset,r=s.byteLength,n=new ArrayBuffer(r),l=new Uint8Array(i,c,r);return new Uint8Array(n).set(l),new DataView(n)}if(t==="[object Boolean]"||t==="[object Number]"||t==="[object String]"){const s=e.constructor,i=new s(e.valueOf());return t==="[object String]"?er(i,e):xt(i,e),i}if(t==="[object Date]")return new Date(Number(e));if(t==="[object RegExp]"){const s=e,i=new RegExp(s.source,s.flags);return i.lastIndex=s.lastIndex,i}if(t==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(e));if(t==="[object Map]"){const s=e,i=new Map;return s.forEach((c,r)=>{i.set(r,c)}),i}if(t==="[object Set]"){const s=e,i=new Set;return s.forEach(c=>{i.add(c)}),i}if(t==="[object Arguments]"){const s=e,i={};return xt(i,s),i.length=s.length,i[Symbol.iterator]=s[Symbol.iterator],i}const a={};return rr(a,e),xt(a,e),tr(a,e),a}function $e(e){switch(Ut(e)){case Me:case ze:case Ae:case Re:case Oe:case Be:case Ce:case Ie:case Ne:case De:case Te:case ke:case _e:case Ee:case ve:case Le:case Se:case me:case we:case be:case xe:case ye:return!0;default:return!1}}function xt(e,t){for(const a in t)Object.hasOwn(t,a)&&(e[a]=t[a])}function tr(e,t){const a=Object.getOwnPropertySymbols(t);for(let s=0;s<a.length;s++){const i=a[s];Object.prototype.propertyIsEnumerable.call(t,i)&&(e[i]=t[i])}}function er(e,t){const a=t.valueOf().length;for(const s in t)Object.hasOwn(t,s)&&(Number.isNaN(Number(s))||Number(s)>=a)&&(e[s]=t[s])}function rr(e,t){const a=Object.getPrototypeOf(t);a!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,a)}var wt=function(){var e=u(function(N,b,d,y){for(d=d||{},y=N.length;y--;d[N[y]]=b);return d},"o"),t=[1,15],a=[1,7],s=[1,13],i=[1,14],c=[1,19],r=[1,16],n=[1,17],l=[1,18],g=[8,30],h=[8,10,21,28,29,30,31,39,43,46],p=[1,23],m=[1,24],x=[8,10,15,16,21,28,29,30,31,39,43,46],S=[8,10,15,16,21,27,28,29,30,31,39,43,46],_=[1,49],L={trace:u(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:u(function(b,d,y,w,D,o,k){var f=o.length-1;switch(D){case 4:w.getLogger().debug("Rule: separator (NL) ");break;case 5:w.getLogger().debug("Rule: separator (Space) ");break;case 6:w.getLogger().debug("Rule: separator (EOF) ");break;case 7:w.getLogger().debug("Rule: hierarchy: ",o[f-1]),w.setHierarchy(o[f-1]);break;case 8:w.getLogger().debug("Stop NL ");break;case 9:w.getLogger().debug("Stop EOF ");break;case 10:w.getLogger().debug("Stop NL2 ");break;case 11:w.getLogger().debug("Stop EOF2 ");break;case 12:w.getLogger().debug("Rule: statement: ",o[f]),typeof o[f].length=="number"?this.$=o[f]:this.$=[o[f]];break;case 13:w.getLogger().debug("Rule: statement #2: ",o[f-1]),this.$=[o[f-1]].concat(o[f]);break;case 14:w.getLogger().debug("Rule: link: ",o[f],b),this.$={edgeTypeStr:o[f],label:""};break;case 15:w.getLogger().debug("Rule: LABEL link: ",o[f-3],o[f-1],o[f]),this.$={edgeTypeStr:o[f],label:o[f-1]};break;case 18:const E=parseInt(o[f]),T=w.generateId();this.$={id:T,type:"space",label:"",width:E,children:[]};break;case 23:w.getLogger().debug("Rule: (nodeStatement link node) ",o[f-2],o[f-1],o[f]," typestr: ",o[f-1].edgeTypeStr);const z=w.edgeStrToEdgeData(o[f-1].edgeTypeStr),F=w.edgeStrToEdgeStartData(o[f-1].edgeTypeStr),q=w.edgeStrToThickness(o[f-1].edgeTypeStr),I=w.edgeStrToPattern(o[f-1].edgeTypeStr);this.$=[{id:o[f-2].id,label:o[f-2].label,type:o[f-2].type,directions:o[f-2].directions},{id:o[f-2].id+"-"+o[f].id,start:o[f-2].id,end:o[f].id,label:o[f-1].label,type:"edge",thickness:q,pattern:I,directions:o[f].directions,arrowTypeEnd:z,arrowTypeStart:F},{id:o[f].id,label:o[f].label,type:w.typeStr2Type(o[f].typeStr),directions:o[f].directions}];break;case 24:w.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[f-1],o[f]),this.$={id:o[f-1].id,label:o[f-1].label,type:w.typeStr2Type(o[f-1].typeStr),directions:o[f-1].directions,widthInColumns:parseInt(o[f],10)};break;case 25:w.getLogger().debug("Rule: nodeStatement (node) ",o[f]),this.$={id:o[f].id,label:o[f].label,type:w.typeStr2Type(o[f].typeStr),directions:o[f].directions,widthInColumns:1};break;case 26:w.getLogger().debug("APA123",this?this:"na"),w.getLogger().debug("COLUMNS: ",o[f]),this.$={type:"column-setting",columns:o[f]==="auto"?-1:parseInt(o[f])};break;case 27:w.getLogger().debug("Rule: id-block statement : ",o[f-2],o[f-1]),w.generateId(),this.$={...o[f-2],type:"composite",children:o[f-1]};break;case 28:w.getLogger().debug("Rule: blockStatement : ",o[f-2],o[f-1],o[f]);const K=w.generateId();this.$={id:K,type:"composite",label:"",children:o[f-1]};break;case 29:w.getLogger().debug("Rule: node (NODE_ID separator): ",o[f]),this.$={id:o[f]};break;case 30:w.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[f-1],o[f]),this.$={id:o[f-1],label:o[f].label,typeStr:o[f].typeStr,directions:o[f].directions};break;case 31:w.getLogger().debug("Rule: dirList: ",o[f]),this.$=[o[f]];break;case 32:w.getLogger().debug("Rule: dirList: ",o[f-1],o[f]),this.$=[o[f-1]].concat(o[f]);break;case 33:w.getLogger().debug("Rule: nodeShapeNLabel: ",o[f-2],o[f-1],o[f]),this.$={typeStr:o[f-2]+o[f],label:o[f-1]};break;case 34:w.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[f-3],o[f-2]," #3:",o[f-1],o[f]),this.$={typeStr:o[f-3]+o[f],label:o[f-2],directions:o[f-1]};break;case 35:case 36:this.$={type:"classDef",id:o[f-1].trim(),css:o[f].trim()};break;case 37:this.$={type:"applyClass",id:o[f-1].trim(),styleClass:o[f].trim()};break;case 38:this.$={type:"applyStyles",id:o[f-1].trim(),stylesStr:o[f].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{8:[1,20]},e(g,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:s,29:i,31:c,39:r,43:n,46:l}),e(h,[2,16],{14:22,15:p,16:m}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(x,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,31:c},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(S,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(g,[2,13]),{26:35,31:c},{31:[2,14]},{17:[1,36]},e(x,[2,24]),{10:t,11:37,13:4,14:22,15:p,16:m,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(S,[2,30]),{18:[1,43]},{18:[1,44]},e(x,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{36:[1,47]},{33:48,34:_},{15:[1,50]},e(h,[2,27]),e(S,[2,33]),{38:[1,51]},{33:52,34:_,38:[2,31]},{31:[2,15]},e(S,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:u(function(b,d){if(d.recoverable)this.trace(b);else{var y=new Error(b);throw y.hash=d,y}},"parseError"),parse:u(function(b){var d=this,y=[0],w=[],D=[null],o=[],k=this.table,f="",E=0,T=0,z=2,F=1,q=o.slice.call(arguments,1),I=Object.create(this.lexer),K={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(K.yy[J]=this.yy[J]);I.setInput(b,K.yy),K.yy.lexer=I,K.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var et=I.yylloc;o.push(et);var ft=I.options&&I.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(U){y.length=y.length-2*U,D.length=D.length-U,o.length=o.length-U}u(ue,"popStack");function Ct(){var U;return U=w.pop()||I.lex()||F,typeof U!="number"&&(U instanceof Array&&(w=U,U=w.pop()),U=d.symbols_[U]||U),U}u(Ct,"lex");for(var H,$,V,pt,tt={},ct,Q,Bt,lt;;){if($=y[y.length-1],this.defaultActions[$]?V=this.defaultActions[$]:((H===null||typeof H>"u")&&(H=Ct()),V=k[$]&&k[$][H]),typeof V>"u"||!V.length||!V[0]){var yt="";lt=[];for(ct in k[$])this.terminals_[ct]&&ct>z&&lt.push("'"+this.terminals_[ct]+"'");I.showPosition?yt="Parse error on line "+(E+1)+`:
1
+ import{g as de}from"./chunk-5VM5RSS4-3f60ca61.js";import{aF as fe,aG as Ut,aH as pe,aI as ye,aJ as xe,aK as be,aL as we,aM as me,aN as Se,aO as Le,aP as ve,aQ as Ee,aR as _e,aS as ke,aT as Te,aU as De,aV as Ne,aW as Ie,aX as Ce,aY as Be,aZ as Oe,a_ as Re,a$ as Ae,b0 as ze,b1 as Me,_ as u,l as v,d as M,b2 as Y,b3 as Pe,G as nt,ao as Et,j as O,b4 as rt,ax as Fe,u as at,b5 as We,S as Ye,O as He,k as Ke,v as Ue,C as Xe,T as Ve,e as je,i as Ot,b6 as Rt,b7 as Ge}from"./mermaid.core-691e4744.js";import{G as Ze}from"./graph-7008991d.js";import{c as qe}from"./channel-c1d35bcb.js";import"./index-4d3efe4a.js";function Je(e){return Array.isArray(e)}function Qe(e){if(fe(e))return e;const t=Ut(e);if(!$e(e))return{};if(Je(e)){const s=Array.from(e);return e.length>0&&typeof e[0]=="string"&&Object.hasOwn(e,"index")&&(s.index=e.index,s.input=e.input),s}if(pe(e)){const s=e,i=s.constructor;return new i(s.buffer,s.byteOffset,s.length)}if(t==="[object ArrayBuffer]")return new ArrayBuffer(e.byteLength);if(t==="[object DataView]"){const s=e,i=s.buffer,c=s.byteOffset,r=s.byteLength,n=new ArrayBuffer(r),l=new Uint8Array(i,c,r);return new Uint8Array(n).set(l),new DataView(n)}if(t==="[object Boolean]"||t==="[object Number]"||t==="[object String]"){const s=e.constructor,i=new s(e.valueOf());return t==="[object String]"?er(i,e):xt(i,e),i}if(t==="[object Date]")return new Date(Number(e));if(t==="[object RegExp]"){const s=e,i=new RegExp(s.source,s.flags);return i.lastIndex=s.lastIndex,i}if(t==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(e));if(t==="[object Map]"){const s=e,i=new Map;return s.forEach((c,r)=>{i.set(r,c)}),i}if(t==="[object Set]"){const s=e,i=new Set;return s.forEach(c=>{i.add(c)}),i}if(t==="[object Arguments]"){const s=e,i={};return xt(i,s),i.length=s.length,i[Symbol.iterator]=s[Symbol.iterator],i}const a={};return rr(a,e),xt(a,e),tr(a,e),a}function $e(e){switch(Ut(e)){case Me:case ze:case Ae:case Re:case Oe:case Be:case Ce:case Ie:case Ne:case De:case Te:case ke:case _e:case Ee:case ve:case Le:case Se:case me:case we:case be:case xe:case ye:return!0;default:return!1}}function xt(e,t){for(const a in t)Object.hasOwn(t,a)&&(e[a]=t[a])}function tr(e,t){const a=Object.getOwnPropertySymbols(t);for(let s=0;s<a.length;s++){const i=a[s];Object.prototype.propertyIsEnumerable.call(t,i)&&(e[i]=t[i])}}function er(e,t){const a=t.valueOf().length;for(const s in t)Object.hasOwn(t,s)&&(Number.isNaN(Number(s))||Number(s)>=a)&&(e[s]=t[s])}function rr(e,t){const a=Object.getPrototypeOf(t);a!==null&&typeof t.constructor=="function"&&Object.setPrototypeOf(e,a)}var wt=function(){var e=u(function(N,b,d,y){for(d=d||{},y=N.length;y--;d[N[y]]=b);return d},"o"),t=[1,15],a=[1,7],s=[1,13],i=[1,14],c=[1,19],r=[1,16],n=[1,17],l=[1,18],g=[8,30],h=[8,10,21,28,29,30,31,39,43,46],p=[1,23],m=[1,24],x=[8,10,15,16,21,28,29,30,31,39,43,46],S=[8,10,15,16,21,27,28,29,30,31,39,43,46],_=[1,49],L={trace:u(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:u(function(b,d,y,w,D,o,k){var f=o.length-1;switch(D){case 4:w.getLogger().debug("Rule: separator (NL) ");break;case 5:w.getLogger().debug("Rule: separator (Space) ");break;case 6:w.getLogger().debug("Rule: separator (EOF) ");break;case 7:w.getLogger().debug("Rule: hierarchy: ",o[f-1]),w.setHierarchy(o[f-1]);break;case 8:w.getLogger().debug("Stop NL ");break;case 9:w.getLogger().debug("Stop EOF ");break;case 10:w.getLogger().debug("Stop NL2 ");break;case 11:w.getLogger().debug("Stop EOF2 ");break;case 12:w.getLogger().debug("Rule: statement: ",o[f]),typeof o[f].length=="number"?this.$=o[f]:this.$=[o[f]];break;case 13:w.getLogger().debug("Rule: statement #2: ",o[f-1]),this.$=[o[f-1]].concat(o[f]);break;case 14:w.getLogger().debug("Rule: link: ",o[f],b),this.$={edgeTypeStr:o[f],label:""};break;case 15:w.getLogger().debug("Rule: LABEL link: ",o[f-3],o[f-1],o[f]),this.$={edgeTypeStr:o[f],label:o[f-1]};break;case 18:const E=parseInt(o[f]),T=w.generateId();this.$={id:T,type:"space",label:"",width:E,children:[]};break;case 23:w.getLogger().debug("Rule: (nodeStatement link node) ",o[f-2],o[f-1],o[f]," typestr: ",o[f-1].edgeTypeStr);const z=w.edgeStrToEdgeData(o[f-1].edgeTypeStr),F=w.edgeStrToEdgeStartData(o[f-1].edgeTypeStr),q=w.edgeStrToThickness(o[f-1].edgeTypeStr),I=w.edgeStrToPattern(o[f-1].edgeTypeStr);this.$=[{id:o[f-2].id,label:o[f-2].label,type:o[f-2].type,directions:o[f-2].directions},{id:o[f-2].id+"-"+o[f].id,start:o[f-2].id,end:o[f].id,label:o[f-1].label,type:"edge",thickness:q,pattern:I,directions:o[f].directions,arrowTypeEnd:z,arrowTypeStart:F},{id:o[f].id,label:o[f].label,type:w.typeStr2Type(o[f].typeStr),directions:o[f].directions}];break;case 24:w.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[f-1],o[f]),this.$={id:o[f-1].id,label:o[f-1].label,type:w.typeStr2Type(o[f-1].typeStr),directions:o[f-1].directions,widthInColumns:parseInt(o[f],10)};break;case 25:w.getLogger().debug("Rule: nodeStatement (node) ",o[f]),this.$={id:o[f].id,label:o[f].label,type:w.typeStr2Type(o[f].typeStr),directions:o[f].directions,widthInColumns:1};break;case 26:w.getLogger().debug("APA123",this?this:"na"),w.getLogger().debug("COLUMNS: ",o[f]),this.$={type:"column-setting",columns:o[f]==="auto"?-1:parseInt(o[f])};break;case 27:w.getLogger().debug("Rule: id-block statement : ",o[f-2],o[f-1]),w.generateId(),this.$={...o[f-2],type:"composite",children:o[f-1]};break;case 28:w.getLogger().debug("Rule: blockStatement : ",o[f-2],o[f-1],o[f]);const K=w.generateId();this.$={id:K,type:"composite",label:"",children:o[f-1]};break;case 29:w.getLogger().debug("Rule: node (NODE_ID separator): ",o[f]),this.$={id:o[f]};break;case 30:w.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[f-1],o[f]),this.$={id:o[f-1],label:o[f].label,typeStr:o[f].typeStr,directions:o[f].directions};break;case 31:w.getLogger().debug("Rule: dirList: ",o[f]),this.$=[o[f]];break;case 32:w.getLogger().debug("Rule: dirList: ",o[f-1],o[f]),this.$=[o[f-1]].concat(o[f]);break;case 33:w.getLogger().debug("Rule: nodeShapeNLabel: ",o[f-2],o[f-1],o[f]),this.$={typeStr:o[f-2]+o[f],label:o[f-1]};break;case 34:w.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[f-3],o[f-2]," #3:",o[f-1],o[f]),this.$={typeStr:o[f-3]+o[f],label:o[f-2],directions:o[f-1]};break;case 35:case 36:this.$={type:"classDef",id:o[f-1].trim(),css:o[f].trim()};break;case 37:this.$={type:"applyClass",id:o[f-1].trim(),styleClass:o[f].trim()};break;case 38:this.$={type:"applyStyles",id:o[f-1].trim(),stylesStr:o[f].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{8:[1,20]},e(g,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:s,29:i,31:c,39:r,43:n,46:l}),e(h,[2,16],{14:22,15:p,16:m}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(x,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,31:c},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(S,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(g,[2,13]),{26:35,31:c},{31:[2,14]},{17:[1,36]},e(x,[2,24]),{10:t,11:37,13:4,14:22,15:p,16:m,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:s,29:i,31:c,39:r,43:n,46:l},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(S,[2,30]),{18:[1,43]},{18:[1,44]},e(x,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{36:[1,47]},{33:48,34:_},{15:[1,50]},e(h,[2,27]),e(S,[2,33]),{38:[1,51]},{33:52,34:_,38:[2,31]},{31:[2,15]},e(S,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:u(function(b,d){if(d.recoverable)this.trace(b);else{var y=new Error(b);throw y.hash=d,y}},"parseError"),parse:u(function(b){var d=this,y=[0],w=[],D=[null],o=[],k=this.table,f="",E=0,T=0,z=2,F=1,q=o.slice.call(arguments,1),I=Object.create(this.lexer),K={yy:{}};for(var J in this.yy)Object.prototype.hasOwnProperty.call(this.yy,J)&&(K.yy[J]=this.yy[J]);I.setInput(b,K.yy),K.yy.lexer=I,K.yy.parser=this,typeof I.yylloc>"u"&&(I.yylloc={});var et=I.yylloc;o.push(et);var ft=I.options&&I.options.ranges;typeof K.yy.parseError=="function"?this.parseError=K.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ue(U){y.length=y.length-2*U,D.length=D.length-U,o.length=o.length-U}u(ue,"popStack");function Ct(){var U;return U=w.pop()||I.lex()||F,typeof U!="number"&&(U instanceof Array&&(w=U,U=w.pop()),U=d.symbols_[U]||U),U}u(Ct,"lex");for(var H,$,V,pt,tt={},ct,Q,Bt,lt;;){if($=y[y.length-1],this.defaultActions[$]?V=this.defaultActions[$]:((H===null||typeof H>"u")&&(H=Ct()),V=k[$]&&k[$][H]),typeof V>"u"||!V.length||!V[0]){var yt="";lt=[];for(ct in k[$])this.terminals_[ct]&&ct>z&&lt.push("'"+this.terminals_[ct]+"'");I.showPosition?yt="Parse error on line "+(E+1)+`:
2
2
  `+I.showPosition()+`
3
3
  Expecting `+lt.join(", ")+", got '"+(this.terminals_[H]||H)+"'":yt="Parse error on line "+(E+1)+": Unexpected "+(H==F?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(yt,{text:I.match,token:this.terminals_[H]||H,line:I.yylineno,loc:et,expected:lt})}if(V[0]instanceof Array&&V.length>1)throw new Error("Parse Error: multiple actions possible at state: "+$+", token: "+H);switch(V[0]){case 1:y.push(H),D.push(I.yytext),o.push(I.yylloc),y.push(V[1]),H=null,T=I.yyleng,f=I.yytext,E=I.yylineno,et=I.yylloc;break;case 2:if(Q=this.productions_[V[1]][1],tt.$=D[D.length-Q],tt._$={first_line:o[o.length-(Q||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(Q||1)].first_column,last_column:o[o.length-1].last_column},ft&&(tt._$.range=[o[o.length-(Q||1)].range[0],o[o.length-1].range[1]]),pt=this.performAction.apply(tt,[f,T,E,K.yy,V[1],D,o].concat(q)),typeof pt<"u")return pt;Q&&(y=y.slice(0,-1*Q*2),D=D.slice(0,-1*Q),o=o.slice(0,-1*Q)),y.push(this.productions_[V[1]][0]),D.push(tt.$),o.push(tt._$),Bt=k[y[y.length-2]][y[y.length-1]],y.push(Bt);break;case 3:return!0}}return!0},"parse")},C=function(){var N={EOF:1,parseError:u(function(d,y){if(this.yy.parser)this.yy.parser.parseError(d,y);else throw new Error(d)},"parseError"),setInput:u(function(b,d){return this.yy=d||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:u(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var d=b.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},"input"),unput:u(function(b){var d=b.length,y=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var w=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var D=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:y?(y.length===w.length?this.yylloc.first_column:0)+w[w.length-y.length].length-y[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[D[0],D[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},"unput"),more:u(function(){return this._more=!0,this},"more"),reject:u(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:u(function(b){this.unput(this.match.slice(b))},"less"),pastInput:u(function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:u(function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:u(function(){var b=this.pastInput(),d=new Array(b.length+1).join("-");return b+this.upcomingInput()+`
@@ -1,4 +1,4 @@
1
- import{d as Se,g as De}from"./chunk-32BRIVSS-6f80ca5a.js";import{_ as y,a as Pe,s as Be,g as Ie,b as Me,c as Le,d as Dt,w as Ne,e as $t,f as de,h as Tt,i as ge,j as jt,l as fe,k as Ye,m as je}from"./mermaid.core-dda71dbd.js";import"./index-60bae2ec.js";var Ft=function(){var a=y(function(_t,x,v,E){for(v=v||{},E=_t.length;E--;v[_t[E]]=x);return v},"o"),t=[1,24],s=[1,25],o=[1,26],r=[1,27],l=[1,28],e=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],f=[1,68],g=[1,69],m=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],st=[1,47],rt=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Qt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],A=[1,82],k=[1,83],C=[1,84],w=[1,85],T=[12,14,42],le=[12,14,33,42],Mt=[12,14,33,42,76,77,79,80],vt=[12,33],Ht=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],qt={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(x,v,E,b,R,h,Rt){var p=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[p-3]);break;case 19:b.setTitle(h[p].substring(6)),this.$=h[p].substring(6);break;case 20:b.setAccDescription(h[p].substring(15)),this.$=h[p].substring(15);break;case 21:this.$=h[p].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[p].trim(),b.setAccDescription(this.$);break;case 28:h[p].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 29:h[p].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 30:b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 31:h[p].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[p]),this.$=h[p];break;case 32:b.addDeploymentNode("node",...h[p]),this.$=h[p];break;case 33:b.addDeploymentNode("nodeL",...h[p]),this.$=h[p];break;case 34:b.addDeploymentNode("nodeR",...h[p]),this.$=h[p];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[p]),this.$=h[p];break;case 40:b.addPersonOrSystem("external_person",...h[p]),this.$=h[p];break;case 41:b.addPersonOrSystem("system",...h[p]),this.$=h[p];break;case 42:b.addPersonOrSystem("system_db",...h[p]),this.$=h[p];break;case 43:b.addPersonOrSystem("system_queue",...h[p]),this.$=h[p];break;case 44:b.addPersonOrSystem("external_system",...h[p]),this.$=h[p];break;case 45:b.addPersonOrSystem("external_system_db",...h[p]),this.$=h[p];break;case 46:b.addPersonOrSystem("external_system_queue",...h[p]),this.$=h[p];break;case 47:b.addContainer("container",...h[p]),this.$=h[p];break;case 48:b.addContainer("container_db",...h[p]),this.$=h[p];break;case 49:b.addContainer("container_queue",...h[p]),this.$=h[p];break;case 50:b.addContainer("external_container",...h[p]),this.$=h[p];break;case 51:b.addContainer("external_container_db",...h[p]),this.$=h[p];break;case 52:b.addContainer("external_container_queue",...h[p]),this.$=h[p];break;case 53:b.addComponent("component",...h[p]),this.$=h[p];break;case 54:b.addComponent("component_db",...h[p]),this.$=h[p];break;case 55:b.addComponent("component_queue",...h[p]),this.$=h[p];break;case 56:b.addComponent("external_component",...h[p]),this.$=h[p];break;case 57:b.addComponent("external_component_db",...h[p]),this.$=h[p];break;case 58:b.addComponent("external_component_queue",...h[p]),this.$=h[p];break;case 60:b.addRel("rel",...h[p]),this.$=h[p];break;case 61:b.addRel("birel",...h[p]),this.$=h[p];break;case 62:b.addRel("rel_u",...h[p]),this.$=h[p];break;case 63:b.addRel("rel_d",...h[p]),this.$=h[p];break;case 64:b.addRel("rel_l",...h[p]),this.$=h[p];break;case 65:b.addRel("rel_r",...h[p]),this.$=h[p];break;case 66:b.addRel("rel_b",...h[p]),this.$=h[p];break;case 67:h[p].splice(0,1),b.addRel("rel",...h[p]),this.$=h[p];break;case 68:b.updateElStyle("update_el_style",...h[p]),this.$=h[p];break;case 69:b.updateRelStyle("update_rel_style",...h[p]),this.$=h[p];break;case 70:b.updateLayoutConfig("update_layout_config",...h[p]),this.$=h[p];break;case 71:this.$=[h[p]];break;case 72:h[p].unshift(h[p-1]),this.$=h[p];break;case 73:case 75:this.$=h[p].trim();break;case 74:let Et={};Et[h[p-1].trim()]=h[p].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},a(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:e,36:n,37:i,38:u,39:d,40:f,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),a(Ct,[2,14]),a(Qt,[2,16],{12:[1,76]}),a(Ct,[2,36],{12:[1,77]}),a(Ot,[2,19]),a(Ot,[2,20]),{25:[1,78]},{27:[1,79]},a(Ot,[2,23]),{35:80,75:81,76:A,77:k,79:C,80:w},{35:86,75:81,76:A,77:k,79:C,80:w},{35:87,75:81,76:A,77:k,79:C,80:w},{35:88,75:81,76:A,77:k,79:C,80:w},{35:89,75:81,76:A,77:k,79:C,80:w},{35:90,75:81,76:A,77:k,79:C,80:w},{35:91,75:81,76:A,77:k,79:C,80:w},{35:92,75:81,76:A,77:k,79:C,80:w},{35:93,75:81,76:A,77:k,79:C,80:w},{35:94,75:81,76:A,77:k,79:C,80:w},{35:95,75:81,76:A,77:k,79:C,80:w},{35:96,75:81,76:A,77:k,79:C,80:w},{35:97,75:81,76:A,77:k,79:C,80:w},{35:98,75:81,76:A,77:k,79:C,80:w},{35:99,75:81,76:A,77:k,79:C,80:w},{35:100,75:81,76:A,77:k,79:C,80:w},{35:101,75:81,76:A,77:k,79:C,80:w},{35:102,75:81,76:A,77:k,79:C,80:w},{35:103,75:81,76:A,77:k,79:C,80:w},{35:104,75:81,76:A,77:k,79:C,80:w},a(T,[2,59]),{35:105,75:81,76:A,77:k,79:C,80:w},{35:106,75:81,76:A,77:k,79:C,80:w},{35:107,75:81,76:A,77:k,79:C,80:w},{35:108,75:81,76:A,77:k,79:C,80:w},{35:109,75:81,76:A,77:k,79:C,80:w},{35:110,75:81,76:A,77:k,79:C,80:w},{35:111,75:81,76:A,77:k,79:C,80:w},{35:112,75:81,76:A,77:k,79:C,80:w},{35:113,75:81,76:A,77:k,79:C,80:w},{35:114,75:81,76:A,77:k,79:C,80:w},{35:115,75:81,76:A,77:k,79:C,80:w},{20:116,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:A,77:k,79:C,80:w},{35:120,75:81,76:A,77:k,79:C,80:w},{35:121,75:81,76:A,77:k,79:C,80:w},{35:122,75:81,76:A,77:k,79:C,80:w},{35:123,75:81,76:A,77:k,79:C,80:w},{35:124,75:81,76:A,77:k,79:C,80:w},{35:125,75:81,76:A,77:k,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},a(Ct,[2,15]),a(Qt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:r,28:l}),a(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:r,28:l,34:e,36:n,37:i,38:u,39:d,40:f,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),a(Ot,[2,21]),a(Ot,[2,22]),a(T,[2,39]),a(le,[2,71],{75:81,35:132,76:A,77:k,79:C,80:w}),a(Mt,[2,73]),{78:[1,133]},a(Mt,[2,75]),a(Mt,[2,76]),a(T,[2,40]),a(T,[2,41]),a(T,[2,42]),a(T,[2,43]),a(T,[2,44]),a(T,[2,45]),a(T,[2,46]),a(T,[2,47]),a(T,[2,48]),a(T,[2,49]),a(T,[2,50]),a(T,[2,51]),a(T,[2,52]),a(T,[2,53]),a(T,[2,54]),a(T,[2,55]),a(T,[2,56]),a(T,[2,57]),a(T,[2,58]),a(T,[2,60]),a(T,[2,61]),a(T,[2,62]),a(T,[2,63]),a(T,[2,64]),a(T,[2,65]),a(T,[2,66]),a(T,[2,67]),a(T,[2,68]),a(T,[2,69]),a(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},a(vt,[2,28]),a(vt,[2,29]),a(vt,[2,30]),a(vt,[2,31]),a(vt,[2,32]),a(vt,[2,33]),a(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},a(Qt,[2,18]),a(Ct,[2,38]),a(le,[2,72]),a(Mt,[2,74]),a(T,[2,24]),a(T,[2,35]),a(Ht,[2,25]),a(Ht,[2,26],{12:[1,138]}),a(Ht,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(x,v){if(v.recoverable)this.trace(x);else{var E=new Error(x);throw E.hash=v,E}},"parseError"),parse:y(function(x){var v=this,E=[0],b=[],R=[null],h=[],Rt=this.table,p="",Et=0,oe=0,we=2,ce=1,Te=h.slice.call(arguments,1),D=Object.create(this.lexer),At={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(At.yy[Gt]=this.yy[Gt]);D.setInput(x,At.yy),At.yy.lexer=D,At.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Kt=D.yylloc;h.push(Kt);var Oe=D.options&&D.options.ranges;typeof At.yy.parseError=="function"?this.parseError=At.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Re(L){E.length=E.length-2*L,R.length=R.length-L,h.length=h.length-L}y(Re,"popStack");function he(){var L;return L=b.pop()||D.lex()||ce,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=v.symbols_[L]||L),L}y(he,"lex");for(var I,kt,N,Jt,wt={},Nt,W,ue,Yt;;){if(kt=E[E.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((I===null||typeof I>"u")&&(I=he()),N=Rt[kt]&&Rt[kt][I]),typeof N>"u"||!N.length||!N[0]){var Zt="";Yt=[];for(Nt in Rt[kt])this.terminals_[Nt]&&Nt>we&&Yt.push("'"+this.terminals_[Nt]+"'");D.showPosition?Zt="Parse error on line "+(Et+1)+`:
1
+ import{d as Se,g as De}from"./chunk-32BRIVSS-1d402c0b.js";import{_ as y,a as Pe,s as Be,g as Ie,b as Me,c as Le,d as Dt,w as Ne,e as $t,f as de,h as Tt,i as ge,j as jt,l as fe,k as Ye,m as je}from"./mermaid.core-691e4744.js";import"./index-4d3efe4a.js";var Ft=function(){var a=y(function(_t,x,v,E){for(v=v||{},E=_t.length;E--;v[_t[E]]=x);return v},"o"),t=[1,24],s=[1,25],o=[1,26],r=[1,27],l=[1,28],e=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],f=[1,68],g=[1,69],m=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],st=[1,47],rt=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Qt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],A=[1,82],k=[1,83],C=[1,84],w=[1,85],T=[12,14,42],le=[12,14,33,42],Mt=[12,14,33,42,76,77,79,80],vt=[12,33],Ht=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],qt={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(x,v,E,b,R,h,Rt){var p=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[p-3]);break;case 19:b.setTitle(h[p].substring(6)),this.$=h[p].substring(6);break;case 20:b.setAccDescription(h[p].substring(15)),this.$=h[p].substring(15);break;case 21:this.$=h[p].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[p].trim(),b.setAccDescription(this.$);break;case 28:h[p].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 29:h[p].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 30:b.addPersonOrSystemBoundary(...h[p]),this.$=h[p];break;case 31:h[p].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[p]),this.$=h[p];break;case 32:b.addDeploymentNode("node",...h[p]),this.$=h[p];break;case 33:b.addDeploymentNode("nodeL",...h[p]),this.$=h[p];break;case 34:b.addDeploymentNode("nodeR",...h[p]),this.$=h[p];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[p]),this.$=h[p];break;case 40:b.addPersonOrSystem("external_person",...h[p]),this.$=h[p];break;case 41:b.addPersonOrSystem("system",...h[p]),this.$=h[p];break;case 42:b.addPersonOrSystem("system_db",...h[p]),this.$=h[p];break;case 43:b.addPersonOrSystem("system_queue",...h[p]),this.$=h[p];break;case 44:b.addPersonOrSystem("external_system",...h[p]),this.$=h[p];break;case 45:b.addPersonOrSystem("external_system_db",...h[p]),this.$=h[p];break;case 46:b.addPersonOrSystem("external_system_queue",...h[p]),this.$=h[p];break;case 47:b.addContainer("container",...h[p]),this.$=h[p];break;case 48:b.addContainer("container_db",...h[p]),this.$=h[p];break;case 49:b.addContainer("container_queue",...h[p]),this.$=h[p];break;case 50:b.addContainer("external_container",...h[p]),this.$=h[p];break;case 51:b.addContainer("external_container_db",...h[p]),this.$=h[p];break;case 52:b.addContainer("external_container_queue",...h[p]),this.$=h[p];break;case 53:b.addComponent("component",...h[p]),this.$=h[p];break;case 54:b.addComponent("component_db",...h[p]),this.$=h[p];break;case 55:b.addComponent("component_queue",...h[p]),this.$=h[p];break;case 56:b.addComponent("external_component",...h[p]),this.$=h[p];break;case 57:b.addComponent("external_component_db",...h[p]),this.$=h[p];break;case 58:b.addComponent("external_component_queue",...h[p]),this.$=h[p];break;case 60:b.addRel("rel",...h[p]),this.$=h[p];break;case 61:b.addRel("birel",...h[p]),this.$=h[p];break;case 62:b.addRel("rel_u",...h[p]),this.$=h[p];break;case 63:b.addRel("rel_d",...h[p]),this.$=h[p];break;case 64:b.addRel("rel_l",...h[p]),this.$=h[p];break;case 65:b.addRel("rel_r",...h[p]),this.$=h[p];break;case 66:b.addRel("rel_b",...h[p]),this.$=h[p];break;case 67:h[p].splice(0,1),b.addRel("rel",...h[p]),this.$=h[p];break;case 68:b.updateElStyle("update_el_style",...h[p]),this.$=h[p];break;case 69:b.updateRelStyle("update_rel_style",...h[p]),this.$=h[p];break;case 70:b.updateLayoutConfig("update_layout_config",...h[p]),this.$=h[p];break;case 71:this.$=[h[p]];break;case 72:h[p].unshift(h[p-1]),this.$=h[p];break;case 73:case 75:this.$=h[p].trim();break;case 74:let Et={};Et[h[p-1].trim()]=h[p].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:r,28:l,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},a(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:e,36:n,37:i,38:u,39:d,40:f,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),a(Ct,[2,14]),a(Qt,[2,16],{12:[1,76]}),a(Ct,[2,36],{12:[1,77]}),a(Ot,[2,19]),a(Ot,[2,20]),{25:[1,78]},{27:[1,79]},a(Ot,[2,23]),{35:80,75:81,76:A,77:k,79:C,80:w},{35:86,75:81,76:A,77:k,79:C,80:w},{35:87,75:81,76:A,77:k,79:C,80:w},{35:88,75:81,76:A,77:k,79:C,80:w},{35:89,75:81,76:A,77:k,79:C,80:w},{35:90,75:81,76:A,77:k,79:C,80:w},{35:91,75:81,76:A,77:k,79:C,80:w},{35:92,75:81,76:A,77:k,79:C,80:w},{35:93,75:81,76:A,77:k,79:C,80:w},{35:94,75:81,76:A,77:k,79:C,80:w},{35:95,75:81,76:A,77:k,79:C,80:w},{35:96,75:81,76:A,77:k,79:C,80:w},{35:97,75:81,76:A,77:k,79:C,80:w},{35:98,75:81,76:A,77:k,79:C,80:w},{35:99,75:81,76:A,77:k,79:C,80:w},{35:100,75:81,76:A,77:k,79:C,80:w},{35:101,75:81,76:A,77:k,79:C,80:w},{35:102,75:81,76:A,77:k,79:C,80:w},{35:103,75:81,76:A,77:k,79:C,80:w},{35:104,75:81,76:A,77:k,79:C,80:w},a(T,[2,59]),{35:105,75:81,76:A,77:k,79:C,80:w},{35:106,75:81,76:A,77:k,79:C,80:w},{35:107,75:81,76:A,77:k,79:C,80:w},{35:108,75:81,76:A,77:k,79:C,80:w},{35:109,75:81,76:A,77:k,79:C,80:w},{35:110,75:81,76:A,77:k,79:C,80:w},{35:111,75:81,76:A,77:k,79:C,80:w},{35:112,75:81,76:A,77:k,79:C,80:w},{35:113,75:81,76:A,77:k,79:C,80:w},{35:114,75:81,76:A,77:k,79:C,80:w},{35:115,75:81,76:A,77:k,79:C,80:w},{20:116,29:49,30:61,32:62,34:e,36:n,37:i,38:u,39:d,40:f,41:g,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:A,77:k,79:C,80:w},{35:120,75:81,76:A,77:k,79:C,80:w},{35:121,75:81,76:A,77:k,79:C,80:w},{35:122,75:81,76:A,77:k,79:C,80:w},{35:123,75:81,76:A,77:k,79:C,80:w},{35:124,75:81,76:A,77:k,79:C,80:w},{35:125,75:81,76:A,77:k,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},a(Ct,[2,15]),a(Qt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:r,28:l}),a(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:r,28:l,34:e,36:n,37:i,38:u,39:d,40:f,41:g,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:st,63:rt,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),a(Ot,[2,21]),a(Ot,[2,22]),a(T,[2,39]),a(le,[2,71],{75:81,35:132,76:A,77:k,79:C,80:w}),a(Mt,[2,73]),{78:[1,133]},a(Mt,[2,75]),a(Mt,[2,76]),a(T,[2,40]),a(T,[2,41]),a(T,[2,42]),a(T,[2,43]),a(T,[2,44]),a(T,[2,45]),a(T,[2,46]),a(T,[2,47]),a(T,[2,48]),a(T,[2,49]),a(T,[2,50]),a(T,[2,51]),a(T,[2,52]),a(T,[2,53]),a(T,[2,54]),a(T,[2,55]),a(T,[2,56]),a(T,[2,57]),a(T,[2,58]),a(T,[2,60]),a(T,[2,61]),a(T,[2,62]),a(T,[2,63]),a(T,[2,64]),a(T,[2,65]),a(T,[2,66]),a(T,[2,67]),a(T,[2,68]),a(T,[2,69]),a(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},a(vt,[2,28]),a(vt,[2,29]),a(vt,[2,30]),a(vt,[2,31]),a(vt,[2,32]),a(vt,[2,33]),a(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},a(Qt,[2,18]),a(Ct,[2,38]),a(le,[2,72]),a(Mt,[2,74]),a(T,[2,24]),a(T,[2,35]),a(Ht,[2,25]),a(Ht,[2,26],{12:[1,138]}),a(Ht,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(x,v){if(v.recoverable)this.trace(x);else{var E=new Error(x);throw E.hash=v,E}},"parseError"),parse:y(function(x){var v=this,E=[0],b=[],R=[null],h=[],Rt=this.table,p="",Et=0,oe=0,we=2,ce=1,Te=h.slice.call(arguments,1),D=Object.create(this.lexer),At={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(At.yy[Gt]=this.yy[Gt]);D.setInput(x,At.yy),At.yy.lexer=D,At.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Kt=D.yylloc;h.push(Kt);var Oe=D.options&&D.options.ranges;typeof At.yy.parseError=="function"?this.parseError=At.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Re(L){E.length=E.length-2*L,R.length=R.length-L,h.length=h.length-L}y(Re,"popStack");function he(){var L;return L=b.pop()||D.lex()||ce,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=v.symbols_[L]||L),L}y(he,"lex");for(var I,kt,N,Jt,wt={},Nt,W,ue,Yt;;){if(kt=E[E.length-1],this.defaultActions[kt]?N=this.defaultActions[kt]:((I===null||typeof I>"u")&&(I=he()),N=Rt[kt]&&Rt[kt][I]),typeof N>"u"||!N.length||!N[0]){var Zt="";Yt=[];for(Nt in Rt[kt])this.terminals_[Nt]&&Nt>we&&Yt.push("'"+this.terminals_[Nt]+"'");D.showPosition?Zt="Parse error on line "+(Et+1)+`:
2
2
  `+D.showPosition()+`
3
3
  Expecting `+Yt.join(", ")+", got '"+(this.terminals_[I]||I)+"'":Zt="Parse error on line "+(Et+1)+": Unexpected "+(I==ce?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(Zt,{text:D.match,token:this.terminals_[I]||I,line:D.yylineno,loc:Kt,expected:Yt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+kt+", token: "+I);switch(N[0]){case 1:E.push(I),R.push(D.yytext),h.push(D.yylloc),E.push(N[1]),I=null,oe=D.yyleng,p=D.yytext,Et=D.yylineno,Kt=D.yylloc;break;case 2:if(W=this.productions_[N[1]][1],wt.$=R[R.length-W],wt._$={first_line:h[h.length-(W||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(W||1)].first_column,last_column:h[h.length-1].last_column},Oe&&(wt._$.range=[h[h.length-(W||1)].range[0],h[h.length-1].range[1]]),Jt=this.performAction.apply(wt,[p,oe,Et,At.yy,N[1],R,h].concat(Te)),typeof Jt<"u")return Jt;W&&(E=E.slice(0,-1*W*2),R=R.slice(0,-1*W),h=h.slice(0,-1*W)),E.push(this.productions_[N[1]][0]),R.push(wt.$),h.push(wt._$),ue=Rt[E[E.length-2]][E[E.length-1]],E.push(ue);break;case 3:return!0}}return!0},"parse")},Ce=function(){var _t={EOF:1,parseError:y(function(v,E){if(this.yy.parser)this.yy.parser.parseError(v,E);else throw new Error(v)},"parseError"),setInput:y(function(x,v){return this.yy=v||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:y(function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var v=x.match(/(?:\r\n?|\n).*/g);return v?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},"input"),unput:y(function(x){var v=x.length,E=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-v),this.offset-=v;var b=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1&&(this.yylineno-=E.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===b.length?this.yylloc.first_column:0)+b[b.length-E.length].length-E[0].length:this.yylloc.first_column-v},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-v]),this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(x){this.unput(this.match.slice(x))},"less"),pastInput:y(function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var x=this.pastInput(),v=new Array(x.length+1).join("-");return x+this.upcomingInput()+`
@@ -0,0 +1 @@
1
+ import{aj as o,ak as r}from"./mermaid.core-691e4744.js";const s=(a,n)=>o.lang.round(r.parse(a)[n]),e=s;export{e as c};