@plumile/ui 0.1.99 → 0.1.101

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 (122) hide show
  1. package/lib/esm/{BackofficeJsonViewerAsync-GenasLA-.js → BackofficeJsonViewerAsync-niwHe9is.js} +2 -2
  2. package/lib/esm/{BackofficeJsonViewerAsync-GenasLA-.js.map → BackofficeJsonViewerAsync-niwHe9is.js.map} +1 -1
  3. package/lib/esm/HighlightCode-KpWSo7Zx.js.map +1 -1
  4. package/lib/esm/{MarkdownCodeBlock-DZRdzjJ9.js → MarkdownCodeBlock-CLK5KJgU.js} +3 -3
  5. package/lib/esm/{MarkdownCodeBlock-DZRdzjJ9.js.map → MarkdownCodeBlock-CLK5KJgU.js.map} +1 -1
  6. package/lib/esm/{MarkdownRenderer-DBpMvD98.js → MarkdownRenderer-c_Ic29c2.js} +2 -2
  7. package/lib/esm/{MarkdownRenderer-DBpMvD98.js.map → MarkdownRenderer-c_Ic29c2.js.map} +1 -1
  8. package/lib/esm/{MarkdownShikiCodeBlock-BhdpnKJo.js → MarkdownShikiCodeBlock-CbaOKfZO.js} +1180 -1175
  9. package/lib/esm/MarkdownShikiCodeBlock-CbaOKfZO.js.map +1 -0
  10. package/lib/esm/_baseFor-Z--4BB_X.js.map +1 -1
  11. package/lib/esm/arc-BUZ4igwO.js.map +1 -1
  12. package/lib/esm/architectureDiagram-Q4EWVU46-DpoNV55s.js.map +1 -1
  13. package/lib/esm/array-CTFiDRBi.js.map +1 -1
  14. package/lib/esm/blockDiagram-DXYQGD6D-DJxDffAk.js.map +1 -1
  15. package/lib/esm/c4Diagram-AHTNJAMY-DxAt6CyF.js.map +1 -1
  16. package/lib/esm/chunk-2KRD3SAO-C5ZUgIak.js.map +1 -1
  17. package/lib/esm/{chunk-336JU56O-24m8cXIL.js → chunk-336JU56O-BsMYboJR.js} +3 -3
  18. package/lib/esm/{chunk-336JU56O-24m8cXIL.js.map → chunk-336JU56O-BsMYboJR.js.map} +1 -1
  19. package/lib/esm/chunk-426QAEUC-b2PRuT9o.js.map +1 -1
  20. package/lib/esm/chunk-4BX2VUAB-BkyyJ41z.js.map +1 -1
  21. package/lib/esm/{chunk-4TB4RGXK-CsiupxiO.js → chunk-4TB4RGXK-LzOZn6e3.js} +2 -2
  22. package/lib/esm/{chunk-4TB4RGXK-CsiupxiO.js.map → chunk-4TB4RGXK-LzOZn6e3.js.map} +1 -1
  23. package/lib/esm/chunk-55IACEB6-CZ1WMXNv.js.map +1 -1
  24. package/lib/esm/chunk-5FUZZQ4R-Hp5ZXYAE.js.map +1 -1
  25. package/lib/esm/chunk-5PVQY5BW-CQdr0IGy.js.map +1 -1
  26. package/lib/esm/chunk-67CJDMHE-DQCJ08Vv.js.map +1 -1
  27. package/lib/esm/chunk-7N4EOEYR-CTdQRezU.js.map +1 -1
  28. package/lib/esm/chunk-AA7GKIK3-x61iJxkf.js.map +1 -1
  29. package/lib/esm/chunk-BSJP7CBP-BRqWaFD3.js.map +1 -1
  30. package/lib/esm/chunk-CIAEETIT-Dm4nDheA.js.map +1 -1
  31. package/lib/esm/chunk-EDXVE4YY-CyZVAPxl.js.map +1 -1
  32. package/lib/esm/chunk-ENJZ2VHE-D1RBdOy4.js.map +1 -1
  33. package/lib/esm/chunk-FOC6F5B3-DTxKWzfh.js.map +1 -1
  34. package/lib/esm/chunk-ICPOFSXX-BQ7-Poft.js.map +1 -1
  35. package/lib/esm/chunk-K5T4RW27-BZbwqbnj.js.map +1 -1
  36. package/lib/esm/chunk-KGLVRYIC-DGO8PqNS.js.map +1 -1
  37. package/lib/esm/chunk-LIHQZDEY-DRQpYuDY.js.map +1 -1
  38. package/lib/esm/chunk-ORNJ4GCN-BWnkQx42.js.map +1 -1
  39. package/lib/esm/{chunk-OYMX7WX6-C3qIK5JJ.js → chunk-OYMX7WX6-C3p3qx9s.js} +2 -2
  40. package/lib/esm/{chunk-OYMX7WX6-C3qIK5JJ.js.map → chunk-OYMX7WX6-C3p3qx9s.js.map} +1 -1
  41. package/lib/esm/chunk-QZHKN3VN-BIoC_CBh.js.map +1 -1
  42. package/lib/esm/chunk-U2HBQHQK-CNpf2t7b.js.map +1 -1
  43. package/lib/esm/chunk-X2U36JSP-Dh9T66Fy.js.map +1 -1
  44. package/lib/esm/chunk-XPW4576I-CdsuZylH.js.map +1 -1
  45. package/lib/esm/chunk-YZCP3GAM-D-LQWFJc.js.map +1 -1
  46. package/lib/esm/chunk-ZZ45TVLE-CP_4OsJR.js.map +1 -1
  47. package/lib/esm/{classDiagram-6PBFFD2Q-CfClLEok.js → classDiagram-6PBFFD2Q-CfucyocV.js} +3 -3
  48. package/lib/esm/{classDiagram-6PBFFD2Q-CfClLEok.js.map → classDiagram-6PBFFD2Q-CfucyocV.js.map} +1 -1
  49. package/lib/esm/{classDiagram-v2-HSJHXN6E-BlbDAEH6.js → classDiagram-v2-HSJHXN6E-BcU6iB1L.js} +3 -3
  50. package/lib/esm/{classDiagram-v2-HSJHXN6E-BlbDAEH6.js.map → classDiagram-v2-HSJHXN6E-BcU6iB1L.js.map} +1 -1
  51. package/lib/esm/clone-DhB5s2T9.js.map +1 -1
  52. package/lib/esm/cose-bilkent-S5V4N54A-BdVqhM8C.js.map +1 -1
  53. package/lib/esm/cytoscape.esm-CT-fsRss.js.map +1 -1
  54. package/lib/esm/dagre-BQULeUjQ.js.map +1 -1
  55. package/lib/esm/dagre-KV5264BT-DTy5YJ5_.js.map +1 -1
  56. package/lib/esm/diagram-5BDNPKRD-w19gCTBw.js.map +1 -1
  57. package/lib/esm/diagram-G4DWMVQ6-EfJtDPEB.js.map +1 -1
  58. package/lib/esm/diagram-MMDJMWI5-DsPB2uYP.js.map +1 -1
  59. package/lib/esm/diagram-TYMM5635-D3ecq7oF.js.map +1 -1
  60. package/lib/esm/dist-CZs_brJz.js.map +1 -1
  61. package/lib/esm/{erDiagram-SMLLAGMA-sgCGzaHO.js → erDiagram-SMLLAGMA-DsYSva8K.js} +2 -2
  62. package/lib/esm/{erDiagram-SMLLAGMA-sgCGzaHO.js.map → erDiagram-SMLLAGMA-DsYSva8K.js.map} +1 -1
  63. package/lib/esm/flatten-CRDGWjhS.js.map +1 -1
  64. package/lib/esm/{flowDiagram-DWJPFMVM-BlOft6GA.js → flowDiagram-DWJPFMVM-BkxIhdyA.js} +2 -2
  65. package/lib/esm/{flowDiagram-DWJPFMVM-BlOft6GA.js.map → flowDiagram-DWJPFMVM-BkxIhdyA.js.map} +1 -1
  66. package/lib/esm/ganttDiagram-T4ZO3ILL-BGrn6yEi.js.map +1 -1
  67. package/lib/esm/gitGraphDiagram-UUTBAWPF-BV73nor5.js.map +1 -1
  68. package/lib/esm/graphlib-B76sPwTV.js.map +1 -1
  69. package/lib/esm/infoDiagram-42DDH7IO-CYONnQuR.js.map +1 -1
  70. package/lib/esm/init-DcYXQL-k.js.map +1 -1
  71. package/lib/esm/isEmpty-DLTQgX7m.js.map +1 -1
  72. package/lib/esm/ishikawaDiagram-UXIWVN3A-B2ISni0r.js.map +1 -1
  73. package/lib/esm/journeyDiagram-VCZTEJTY-CjNMX7wx.js.map +1 -1
  74. package/lib/esm/kanban-definition-6JOO6SKY-BNsv25Cl.js.map +1 -1
  75. package/lib/esm/katex-DpumU0Fc.js.map +1 -1
  76. package/lib/esm/line-Dyv5of1r.js.map +1 -1
  77. package/lib/esm/linear-LpGdIFrk.js.map +1 -1
  78. package/lib/esm/mermaid-parser.core-D5sUsnWF.js.map +1 -1
  79. package/lib/esm/{mermaid.core-o6lwF-Gt.js → mermaid.core-i12yADTp.js} +12 -12
  80. package/lib/esm/{mermaid.core-o6lwF-Gt.js.map → mermaid.core-i12yADTp.js.map} +1 -1
  81. package/lib/esm/{mindmap-definition-QFDTVHPH-C63UTb48.js → mindmap-definition-QFDTVHPH-BfrBPDUJ.js} +2 -2
  82. package/lib/esm/{mindmap-definition-QFDTVHPH-C63UTb48.js.map → mindmap-definition-QFDTVHPH-BfrBPDUJ.js.map} +1 -1
  83. package/lib/esm/ordinal-B2RGggQH.js.map +1 -1
  84. package/lib/esm/path-Bg_3NlDP.js.map +1 -1
  85. package/lib/esm/pieDiagram-DEJITSTG-YByZ__0R.js.map +1 -1
  86. package/lib/esm/quadrantDiagram-34T5L4WZ-DLFKZc02.js.map +1 -1
  87. package/lib/esm/reduce-0ekdtexD.js.map +1 -1
  88. package/lib/esm/{requirementDiagram-MS252O5E-CJXcr8r4.js → requirementDiagram-MS252O5E-CulfPmse.js} +2 -2
  89. package/lib/esm/{requirementDiagram-MS252O5E-CJXcr8r4.js.map → requirementDiagram-MS252O5E-CulfPmse.js.map} +1 -1
  90. package/lib/esm/rough.esm-IQz7gRXZ.js.map +1 -1
  91. package/lib/esm/sankeyDiagram-XADWPNL6-DMByY6gK.js.map +1 -1
  92. package/lib/esm/sequenceDiagram-FGHM5R23-vJC9cjdX.js.map +1 -1
  93. package/lib/esm/src-BZm6Awwh.js.map +1 -1
  94. package/lib/esm/{src-C5doNKmD.js → src-DT2iBPF8.js} +629 -541
  95. package/lib/esm/src-DT2iBPF8.js.map +1 -0
  96. package/lib/esm/{stateDiagram-FHFEXIEX-G9WWEBGm.js → stateDiagram-FHFEXIEX-CofVLBPX.js} +3 -3
  97. package/lib/esm/{stateDiagram-FHFEXIEX-G9WWEBGm.js.map → stateDiagram-FHFEXIEX-CofVLBPX.js.map} +1 -1
  98. package/lib/esm/{stateDiagram-v2-QKLJ7IA2-BSg62pbb.js → stateDiagram-v2-QKLJ7IA2-DTXym7Y8.js} +3 -3
  99. package/lib/esm/{stateDiagram-v2-QKLJ7IA2-BSg62pbb.js.map → stateDiagram-v2-QKLJ7IA2-DTXym7Y8.js.map} +1 -1
  100. package/lib/esm/style.css +1 -1
  101. package/lib/esm/timeline-definition-GMOUNBTQ-DeWjV_e-.js.map +1 -1
  102. package/lib/esm/ui.js +4 -4
  103. package/lib/esm/vennDiagram-DHZGUBPP-CKdXCzw7.js.map +1 -1
  104. package/lib/esm/wardleyDiagram-NUSXRM2D-BzD8LDJv.js.map +1 -1
  105. package/lib/esm/xychartDiagram-5P7HB3ND-C2ITEA5J.js.map +1 -1
  106. package/lib/types/backoffice/molecules/backoffice_load_more/BackofficeLoadMore.d.ts +2 -1
  107. package/lib/types/backoffice/molecules/backoffice_load_more/BackofficeLoadMore.d.ts.map +1 -1
  108. package/lib/types/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.d.ts +1 -0
  109. package/lib/types/backoffice/molecules/backoffice_load_more/backofficeLoadMore.css.d.ts.map +1 -1
  110. package/lib/types/backoffice/molecules/sidebar_nav_section/SidebarNavSection.d.ts +1 -1
  111. package/lib/types/backoffice/molecules/sidebar_nav_section/SidebarNavSection.d.ts.map +1 -1
  112. package/lib/types/components/data-table/DataTable.d.ts +2 -0
  113. package/lib/types/components/data-table/DataTable.d.ts.map +1 -1
  114. package/lib/types/components/data-table/ResponsiveRecordList.css.d.ts +21 -0
  115. package/lib/types/components/data-table/ResponsiveRecordList.css.d.ts.map +1 -0
  116. package/lib/types/components/data-table/ResponsiveRecordList.d.ts +17 -0
  117. package/lib/types/components/data-table/ResponsiveRecordList.d.ts.map +1 -0
  118. package/lib/types/index.d.ts +2 -0
  119. package/lib/types/index.d.ts.map +1 -1
  120. package/package.json +12 -12
  121. package/lib/esm/MarkdownShikiCodeBlock-BhdpnKJo.js.map +0 -1
  122. package/lib/esm/src-C5doNKmD.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"journeyDiagram-VCZTEJTY-CjNMX7wx.js","names":["getConfig","d3arc","select"],"sources":["../../../../node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-VCZTEJTY.mjs"],"sourcesContent":["import {\n getIconStyles\n} from \"./chunk-FMBD7UC4.mjs\";\nimport {\n drawBackgroundRect,\n drawRect,\n drawText,\n getNoteRect\n} from \"./chunk-YZCP3GAM.mjs\";\nimport {\n clear,\n configureSvgSize,\n getAccDescription,\n getAccTitle,\n getConfig2 as getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-ICPOFSXX.mjs\";\nimport {\n __name\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/user-journey/parser/journey.jison\nvar parser = (function() {\n var o = /* @__PURE__ */ __name(function(k, v, o2, l) {\n for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n return o2;\n }, \"o\"), $V0 = [6, 8, 10, 11, 12, 14, 16, 17, 18], $V1 = [1, 9], $V2 = [1, 10], $V3 = [1, 11], $V4 = [1, 12], $V5 = [1, 13], $V6 = [1, 14];\n var parser2 = {\n trace: /* @__PURE__ */ __name(function trace() {\n }, \"trace\"),\n yy: {},\n symbols_: { \"error\": 2, \"start\": 3, \"journey\": 4, \"document\": 5, \"EOF\": 6, \"line\": 7, \"SPACE\": 8, \"statement\": 9, \"NEWLINE\": 10, \"title\": 11, \"acc_title\": 12, \"acc_title_value\": 13, \"acc_descr\": 14, \"acc_descr_value\": 15, \"acc_descr_multiline_value\": 16, \"section\": 17, \"taskName\": 18, \"taskData\": 19, \"$accept\": 0, \"$end\": 1 },\n terminals_: { 2: \"error\", 4: \"journey\", 6: \"EOF\", 8: \"SPACE\", 10: \"NEWLINE\", 11: \"title\", 12: \"acc_title\", 13: \"acc_title_value\", 14: \"acc_descr\", 15: \"acc_descr_value\", 16: \"acc_descr_multiline_value\", 17: \"section\", 18: \"taskName\", 19: \"taskData\" },\n productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 1], [9, 2]],\n performAction: /* @__PURE__ */ __name(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n var $0 = $$.length - 1;\n switch (yystate) {\n case 1:\n return $$[$0 - 1];\n break;\n case 2:\n this.$ = [];\n break;\n case 3:\n $$[$0 - 1].push($$[$0]);\n this.$ = $$[$0 - 1];\n break;\n case 4:\n case 5:\n this.$ = $$[$0];\n break;\n case 6:\n case 7:\n this.$ = [];\n break;\n case 8:\n yy.setDiagramTitle($$[$0].substr(6));\n this.$ = $$[$0].substr(6);\n break;\n case 9:\n this.$ = $$[$0].trim();\n yy.setAccTitle(this.$);\n break;\n case 10:\n case 11:\n this.$ = $$[$0].trim();\n yy.setAccDescription(this.$);\n break;\n case 12:\n yy.addSection($$[$0].substr(8));\n this.$ = $$[$0].substr(8);\n break;\n case 13:\n yy.addTask($$[$0 - 1], $$[$0]);\n this.$ = \"task\";\n break;\n }\n }, \"anonymous\"),\n table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, o($V0, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 7], { 1: [2, 1] }), o($V0, [2, 3]), { 9: 15, 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 5]), o($V0, [2, 6]), o($V0, [2, 8]), { 13: [1, 16] }, { 15: [1, 17] }, o($V0, [2, 11]), o($V0, [2, 12]), { 19: [1, 18] }, o($V0, [2, 4]), o($V0, [2, 9]), o($V0, [2, 10]), o($V0, [2, 13])],\n defaultActions: {},\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (hash.recoverable) {\n this.trace(str);\n } else {\n var error = new Error(str);\n error.hash = hash;\n throw error;\n }\n }, \"parseError\"),\n parse: /* @__PURE__ */ __name(function parse(input) {\n var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n var args = lstack.slice.call(arguments, 1);\n var lexer2 = Object.create(this.lexer);\n var sharedState = { yy: {} };\n for (var k in this.yy) {\n if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n sharedState.yy[k] = this.yy[k];\n }\n }\n lexer2.setInput(input, sharedState.yy);\n sharedState.yy.lexer = lexer2;\n sharedState.yy.parser = this;\n if (typeof lexer2.yylloc == \"undefined\") {\n lexer2.yylloc = {};\n }\n var yyloc = lexer2.yylloc;\n lstack.push(yyloc);\n var ranges = lexer2.options && lexer2.options.ranges;\n if (typeof sharedState.yy.parseError === \"function\") {\n this.parseError = sharedState.yy.parseError;\n } else {\n this.parseError = Object.getPrototypeOf(this).parseError;\n }\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n __name(popStack, \"popStack\");\n function lex() {\n var token;\n token = tstack.pop() || lexer2.lex() || EOF;\n if (typeof token !== \"number\") {\n if (token instanceof Array) {\n tstack = token;\n token = tstack.pop();\n }\n token = self.symbols_[token] || token;\n }\n return token;\n }\n __name(lex, \"lex\");\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n expected = [];\n for (p in table[state]) {\n if (this.terminals_[p] && p > TERROR) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n }\n if (lexer2.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {\n text: lexer2.match,\n token: this.terminals_[symbol] || symbol,\n line: lexer2.yylineno,\n loc: yyloc,\n expected\n });\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(lexer2.yytext);\n lstack.push(lexer2.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = lexer2.yyleng;\n yytext = lexer2.yytext;\n yylineno = lexer2.yylineno;\n yyloc = lexer2.yylloc;\n if (recovering > 0) {\n recovering--;\n }\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {\n first_line: lstack[lstack.length - (len || 1)].first_line,\n last_line: lstack[lstack.length - 1].last_line,\n first_column: lstack[lstack.length - (len || 1)].first_column,\n last_column: lstack[lstack.length - 1].last_column\n };\n if (ranges) {\n yyval._$.range = [\n lstack[lstack.length - (len || 1)].range[0],\n lstack[lstack.length - 1].range[1]\n ];\n }\n r = this.performAction.apply(yyval, [\n yytext,\n yyleng,\n yylineno,\n sharedState.yy,\n action[1],\n vstack,\n lstack\n ].concat(args));\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n }, \"parse\")\n };\n var lexer = /* @__PURE__ */ (function() {\n var lexer2 = {\n EOF: 1,\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n }, \"parseError\"),\n // resets the lexer, sets new input\n setInput: /* @__PURE__ */ __name(function(input, yy) {\n this.yy = yy || this.yy || {};\n this._input = input;\n this._more = this._backtrack = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = \"\";\n this.conditionStack = [\"INITIAL\"];\n this.yylloc = {\n first_line: 1,\n first_column: 0,\n last_line: 1,\n last_column: 0\n };\n if (this.options.ranges) {\n this.yylloc.range = [0, 0];\n }\n this.offset = 0;\n return this;\n }, \"setInput\"),\n // consumes and returns one char from the input\n input: /* @__PURE__ */ __name(function() {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) {\n this.yylloc.range[1]++;\n }\n this._input = this._input.slice(1);\n return ch;\n }, \"input\"),\n // unshifts one char (or a string) into the input\n unput: /* @__PURE__ */ __name(function(ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length - len);\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length - 1);\n this.matched = this.matched.substr(0, this.matched.length - 1);\n if (lines.length - 1) {\n this.yylineno -= lines.length - 1;\n }\n var r = this.yylloc.range;\n this.yylloc = {\n first_line: this.yylloc.first_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.first_column,\n last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n };\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n this.yyleng = this.yytext.length;\n return this;\n }, \"unput\"),\n // When called from action, caches matched text and appends it on next action\n more: /* @__PURE__ */ __name(function() {\n this._more = true;\n return this;\n }, \"more\"),\n // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n reject: /* @__PURE__ */ __name(function() {\n if (this.options.backtrack_lexer) {\n this._backtrack = true;\n } else {\n 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).\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n return this;\n }, \"reject\"),\n // retain first n characters of the match\n less: /* @__PURE__ */ __name(function(n) {\n this.unput(this.match.slice(n));\n }, \"less\"),\n // displays already matched input, i.e. for error messages\n pastInput: /* @__PURE__ */ __name(function() {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n }, \"pastInput\"),\n // displays upcoming input, i.e. for error messages\n upcomingInput: /* @__PURE__ */ __name(function() {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20 - next.length);\n }\n return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n }, \"upcomingInput\"),\n // displays the character position where the lexing error occurred, i.e. for error messages\n showPosition: /* @__PURE__ */ __name(function() {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n }, \"showPosition\"),\n // test the lexed token: return FALSE when not a match, otherwise return token\n test_match: /* @__PURE__ */ __name(function(match, indexed_rule) {\n var token, lines, backup;\n if (this.options.backtrack_lexer) {\n backup = {\n yylineno: this.yylineno,\n yylloc: {\n first_line: this.yylloc.first_line,\n last_line: this.last_line,\n first_column: this.yylloc.first_column,\n last_column: this.yylloc.last_column\n },\n yytext: this.yytext,\n match: this.match,\n matches: this.matches,\n matched: this.matched,\n yyleng: this.yyleng,\n offset: this.offset,\n _more: this._more,\n _input: this._input,\n yy: this.yy,\n conditionStack: this.conditionStack.slice(0),\n done: this.done\n };\n if (this.options.ranges) {\n backup.yylloc.range = this.yylloc.range.slice(0);\n }\n }\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno += lines.length;\n }\n this.yylloc = {\n first_line: this.yylloc.last_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n };\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._backtrack = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n if (this.done && this._input) {\n this.done = false;\n }\n if (token) {\n return token;\n } else if (this._backtrack) {\n for (var k in backup) {\n this[k] = backup[k];\n }\n return false;\n }\n return false;\n }, \"test_match\"),\n // return next match in input\n next: /* @__PURE__ */ __name(function() {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) {\n this.done = true;\n }\n var token, match, tempMatch, index;\n if (!this._more) {\n this.yytext = \"\";\n this.match = \"\";\n }\n var rules = this._currentRules();\n for (var i = 0; i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (this.options.backtrack_lexer) {\n token = this.test_match(tempMatch, rules[i]);\n if (token !== false) {\n return token;\n } else if (this._backtrack) {\n match = false;\n continue;\n } else {\n return false;\n }\n } else if (!this.options.flex) {\n break;\n }\n }\n }\n if (match) {\n token = this.test_match(match, rules[index]);\n if (token !== false) {\n return token;\n }\n return false;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n }, \"next\"),\n // return next match that has a token\n lex: /* @__PURE__ */ __name(function lex() {\n var r = this.next();\n if (r) {\n return r;\n } else {\n return this.lex();\n }\n }, \"lex\"),\n // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n begin: /* @__PURE__ */ __name(function begin(condition) {\n this.conditionStack.push(condition);\n }, \"begin\"),\n // pop the previously active lexer condition state off the condition stack\n popState: /* @__PURE__ */ __name(function popState() {\n var n = this.conditionStack.length - 1;\n if (n > 0) {\n return this.conditionStack.pop();\n } else {\n return this.conditionStack[0];\n }\n }, \"popState\"),\n // produce the lexer rule set which is active for the currently active lexer condition state\n _currentRules: /* @__PURE__ */ __name(function _currentRules() {\n if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n } else {\n return this.conditions[\"INITIAL\"].rules;\n }\n }, \"_currentRules\"),\n // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n topState: /* @__PURE__ */ __name(function topState(n) {\n n = this.conditionStack.length - 1 - Math.abs(n || 0);\n if (n >= 0) {\n return this.conditionStack[n];\n } else {\n return \"INITIAL\";\n }\n }, \"topState\"),\n // alias for begin(condition)\n pushState: /* @__PURE__ */ __name(function pushState(condition) {\n this.begin(condition);\n }, \"pushState\"),\n // return the number of states currently on the stack\n stateStackSize: /* @__PURE__ */ __name(function stateStackSize() {\n return this.conditionStack.length;\n }, \"stateStackSize\"),\n options: { \"case-insensitive\": true },\n performAction: /* @__PURE__ */ __name(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n var YYSTATE = YY_START;\n switch ($avoiding_name_collisions) {\n case 0:\n break;\n case 1:\n break;\n case 2:\n return 10;\n break;\n case 3:\n break;\n case 4:\n break;\n case 5:\n return 4;\n break;\n case 6:\n return 11;\n break;\n case 7:\n this.begin(\"acc_title\");\n return 12;\n break;\n case 8:\n this.popState();\n return \"acc_title_value\";\n break;\n case 9:\n this.begin(\"acc_descr\");\n return 14;\n break;\n case 10:\n this.popState();\n return \"acc_descr_value\";\n break;\n case 11:\n this.begin(\"acc_descr_multiline\");\n break;\n case 12:\n this.popState();\n break;\n case 13:\n return \"acc_descr_multiline_value\";\n break;\n case 14:\n return 17;\n break;\n case 15:\n return 18;\n break;\n case 16:\n return 19;\n break;\n case 17:\n return \":\";\n break;\n case 18:\n return 6;\n break;\n case 19:\n return \"INVALID\";\n break;\n }\n }, \"anonymous\"),\n rules: [/^(?:%(?!\\{)[^\\n]*)/i, /^(?:[^\\}]%%[^\\n]*)/i, /^(?:[\\n]+)/i, /^(?:\\s+)/i, /^(?:#[^\\n]*)/i, /^(?:journey\\b)/i, /^(?:title\\s[^#\\n;]+)/i, /^(?:accTitle\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*\\{\\s*)/i, /^(?:[\\}])/i, /^(?:[^\\}]*)/i, /^(?:section\\s[^#:\\n;]+)/i, /^(?:[^#:\\n;]+)/i, /^(?::[^#\\n;]+)/i, /^(?::)/i, /^(?:$)/i, /^(?:.)/i],\n conditions: { \"acc_descr_multiline\": { \"rules\": [12, 13], \"inclusive\": false }, \"acc_descr\": { \"rules\": [10], \"inclusive\": false }, \"acc_title\": { \"rules\": [8], \"inclusive\": false }, \"INITIAL\": { \"rules\": [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19], \"inclusive\": true } }\n };\n return lexer2;\n })();\n parser2.lexer = lexer;\n function Parser() {\n this.yy = {};\n }\n __name(Parser, \"Parser\");\n Parser.prototype = parser2;\n parser2.Parser = Parser;\n return new Parser();\n})();\nparser.parser = parser;\nvar journey_default = parser;\n\n// src/diagrams/user-journey/journeyDb.js\nvar currentSection = \"\";\nvar sections = [];\nvar tasks = [];\nvar rawTasks = [];\nvar clear2 = /* @__PURE__ */ __name(function() {\n sections.length = 0;\n tasks.length = 0;\n currentSection = \"\";\n rawTasks.length = 0;\n clear();\n}, \"clear\");\nvar addSection = /* @__PURE__ */ __name(function(txt) {\n currentSection = txt;\n sections.push(txt);\n}, \"addSection\");\nvar getSections = /* @__PURE__ */ __name(function() {\n return sections;\n}, \"getSections\");\nvar getTasks = /* @__PURE__ */ __name(function() {\n let allItemsProcessed = compileTasks();\n const maxDepth = 100;\n let iterationCount = 0;\n while (!allItemsProcessed && iterationCount < maxDepth) {\n allItemsProcessed = compileTasks();\n iterationCount++;\n }\n tasks.push(...rawTasks);\n return tasks;\n}, \"getTasks\");\nvar updateActors = /* @__PURE__ */ __name(function() {\n const tempActors = [];\n tasks.forEach((task) => {\n if (task.people) {\n tempActors.push(...task.people);\n }\n });\n const unique = new Set(tempActors);\n return [...unique].sort();\n}, \"updateActors\");\nvar addTask = /* @__PURE__ */ __name(function(descr, taskData) {\n const pieces = taskData.substr(1).split(\":\");\n let score = 0;\n let peeps = [];\n if (pieces.length === 1) {\n score = Number(pieces[0]);\n peeps = [];\n } else {\n score = Number(pieces[0]);\n peeps = pieces[1].split(\",\");\n }\n const peopleList = peeps.map((s) => s.trim());\n const rawTask = {\n section: currentSection,\n type: currentSection,\n people: peopleList,\n task: descr,\n score\n };\n rawTasks.push(rawTask);\n}, \"addTask\");\nvar addTaskOrg = /* @__PURE__ */ __name(function(descr) {\n const newTask = {\n section: currentSection,\n type: currentSection,\n description: descr,\n task: descr,\n classes: []\n };\n tasks.push(newTask);\n}, \"addTaskOrg\");\nvar compileTasks = /* @__PURE__ */ __name(function() {\n const compileTask = /* @__PURE__ */ __name(function(pos) {\n return rawTasks[pos].processed;\n }, \"compileTask\");\n let allProcessed = true;\n for (const [i, rawTask] of rawTasks.entries()) {\n compileTask(i);\n allProcessed = allProcessed && rawTask.processed;\n }\n return allProcessed;\n}, \"compileTasks\");\nvar getActors = /* @__PURE__ */ __name(function() {\n return updateActors();\n}, \"getActors\");\nvar journeyDb_default = {\n getConfig: /* @__PURE__ */ __name(() => getConfig().journey, \"getConfig\"),\n clear: clear2,\n setDiagramTitle,\n getDiagramTitle,\n setAccTitle,\n getAccTitle,\n setAccDescription,\n getAccDescription,\n addSection,\n getSections,\n getTasks,\n addTask,\n addTaskOrg,\n getActors\n};\n\n// src/diagrams/user-journey/styles.js\nvar getStyles = /* @__PURE__ */ __name((options) => `.label {\n font-family: ${options.fontFamily};\n color: ${options.textColor};\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ${options.textColor}\n }\n\n .legend {\n fill: ${options.textColor};\n font-family: ${options.fontFamily};\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ${options.textColor}\n }\n\n .face {\n ${options.faceColor ? `fill: ${options.faceColor}` : \"fill: #FFF8DC\"};\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${options.mainBkg};\n stroke: ${options.nodeBorder};\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${options.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${options.lineColor};\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ${options.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${options.edgeLabelBackground};\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ${options.titleColor};\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${options.fontFamily};\n font-size: 12px;\n background: ${options.tertiaryColor};\n border: 1px solid ${options.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ${options.fillType0 ? `fill: ${options.fillType0}` : \"\"};\n }\n .task-type-1, .section-type-1 {\n ${options.fillType0 ? `fill: ${options.fillType1}` : \"\"};\n }\n .task-type-2, .section-type-2 {\n ${options.fillType0 ? `fill: ${options.fillType2}` : \"\"};\n }\n .task-type-3, .section-type-3 {\n ${options.fillType0 ? `fill: ${options.fillType3}` : \"\"};\n }\n .task-type-4, .section-type-4 {\n ${options.fillType0 ? `fill: ${options.fillType4}` : \"\"};\n }\n .task-type-5, .section-type-5 {\n ${options.fillType0 ? `fill: ${options.fillType5}` : \"\"};\n }\n .task-type-6, .section-type-6 {\n ${options.fillType0 ? `fill: ${options.fillType6}` : \"\"};\n }\n .task-type-7, .section-type-7 {\n ${options.fillType0 ? `fill: ${options.fillType7}` : \"\"};\n }\n\n .actor-0 {\n ${options.actor0 ? `fill: ${options.actor0}` : \"\"};\n }\n .actor-1 {\n ${options.actor1 ? `fill: ${options.actor1}` : \"\"};\n }\n .actor-2 {\n ${options.actor2 ? `fill: ${options.actor2}` : \"\"};\n }\n .actor-3 {\n ${options.actor3 ? `fill: ${options.actor3}` : \"\"};\n }\n .actor-4 {\n ${options.actor4 ? `fill: ${options.actor4}` : \"\"};\n }\n .actor-5 {\n ${options.actor5 ? `fill: ${options.actor5}` : \"\"};\n }\n ${getIconStyles()}\n`, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/user-journey/journeyRenderer.ts\nimport { select } from \"d3\";\n\n// src/diagrams/user-journey/svgDraw.js\nimport { arc as d3arc } from \"d3\";\nvar drawRect2 = /* @__PURE__ */ __name(function(elem, rectData) {\n return drawRect(elem, rectData);\n}, \"drawRect\");\nvar drawFace = /* @__PURE__ */ __name(function(element, faceData) {\n const radius = 15;\n const circleElement = element.append(\"circle\").attr(\"cx\", faceData.cx).attr(\"cy\", faceData.cy).attr(\"class\", \"face\").attr(\"r\", radius).attr(\"stroke-width\", 2).attr(\"overflow\", \"visible\");\n const face = element.append(\"g\");\n face.append(\"circle\").attr(\"cx\", faceData.cx - radius / 3).attr(\"cy\", faceData.cy - radius / 3).attr(\"r\", 1.5).attr(\"stroke-width\", 2).attr(\"fill\", \"#666\").attr(\"stroke\", \"#666\");\n face.append(\"circle\").attr(\"cx\", faceData.cx + radius / 3).attr(\"cy\", faceData.cy - radius / 3).attr(\"r\", 1.5).attr(\"stroke-width\", 2).attr(\"fill\", \"#666\").attr(\"stroke\", \"#666\");\n function smile(face2) {\n const arc = d3arc().startAngle(Math.PI / 2).endAngle(3 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2);\n face2.append(\"path\").attr(\"class\", \"mouth\").attr(\"d\", arc).attr(\"transform\", \"translate(\" + faceData.cx + \",\" + (faceData.cy + 2) + \")\");\n }\n __name(smile, \"smile\");\n function sad(face2) {\n const arc = d3arc().startAngle(3 * Math.PI / 2).endAngle(5 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2);\n face2.append(\"path\").attr(\"class\", \"mouth\").attr(\"d\", arc).attr(\"transform\", \"translate(\" + faceData.cx + \",\" + (faceData.cy + 7) + \")\");\n }\n __name(sad, \"sad\");\n function ambivalent(face2) {\n face2.append(\"line\").attr(\"class\", \"mouth\").attr(\"stroke\", 2).attr(\"x1\", faceData.cx - 5).attr(\"y1\", faceData.cy + 7).attr(\"x2\", faceData.cx + 5).attr(\"y2\", faceData.cy + 7).attr(\"class\", \"mouth\").attr(\"stroke-width\", \"1px\").attr(\"stroke\", \"#666\");\n }\n __name(ambivalent, \"ambivalent\");\n if (faceData.score > 3) {\n smile(face);\n } else if (faceData.score < 3) {\n sad(face);\n } else {\n ambivalent(face);\n }\n return circleElement;\n}, \"drawFace\");\nvar drawCircle = /* @__PURE__ */ __name(function(element, circleData) {\n const circleElement = element.append(\"circle\");\n circleElement.attr(\"cx\", circleData.cx);\n circleElement.attr(\"cy\", circleData.cy);\n circleElement.attr(\"class\", \"actor-\" + circleData.pos);\n circleElement.attr(\"fill\", circleData.fill);\n circleElement.attr(\"stroke\", circleData.stroke);\n circleElement.attr(\"r\", circleData.r);\n if (circleElement.class !== void 0) {\n circleElement.attr(\"class\", circleElement.class);\n }\n if (circleData.title !== void 0) {\n circleElement.append(\"title\").text(circleData.title);\n }\n return circleElement;\n}, \"drawCircle\");\nvar drawText2 = /* @__PURE__ */ __name(function(elem, textData) {\n return drawText(elem, textData);\n}, \"drawText\");\nvar drawLabel = /* @__PURE__ */ __name(function(elem, txtObject) {\n function genPoints(x, y, width, height, cut) {\n return x + \",\" + y + \" \" + (x + width) + \",\" + y + \" \" + (x + width) + \",\" + (y + height - cut) + \" \" + (x + width - cut * 1.2) + \",\" + (y + height) + \" \" + x + \",\" + (y + height);\n }\n __name(genPoints, \"genPoints\");\n const polygon = elem.append(\"polygon\");\n polygon.attr(\"points\", genPoints(txtObject.x, txtObject.y, 50, 20, 7));\n polygon.attr(\"class\", \"labelBox\");\n txtObject.y = txtObject.y + txtObject.labelMargin;\n txtObject.x = txtObject.x + 0.5 * txtObject.labelMargin;\n drawText2(elem, txtObject);\n}, \"drawLabel\");\nvar drawSection = /* @__PURE__ */ __name(function(elem, section, conf2) {\n const g = elem.append(\"g\");\n const rect = getNoteRect();\n rect.x = section.x;\n rect.y = section.y;\n rect.fill = section.fill;\n rect.width = conf2.width * section.taskCount + // width of the tasks\n conf2.diagramMarginX * (section.taskCount - 1);\n rect.height = conf2.height;\n rect.class = \"journey-section section-type-\" + section.num;\n rect.rx = 3;\n rect.ry = 3;\n drawRect2(g, rect);\n _drawTextCandidateFunc(conf2)(\n section.text,\n g,\n rect.x,\n rect.y,\n rect.width,\n rect.height,\n { class: \"journey-section section-type-\" + section.num },\n conf2,\n section.colour\n );\n}, \"drawSection\");\nvar taskCount = -1;\nvar drawTask = /* @__PURE__ */ __name(function(elem, task, conf2, diagramId) {\n const center = task.x + conf2.width / 2;\n const g = elem.append(\"g\");\n taskCount++;\n const maxHeight = 300 + 5 * 30;\n g.append(\"line\").attr(\"id\", diagramId + \"-task\" + taskCount).attr(\"x1\", center).attr(\"y1\", task.y).attr(\"x2\", center).attr(\"y2\", maxHeight).attr(\"class\", \"task-line\").attr(\"stroke-width\", \"1px\").attr(\"stroke-dasharray\", \"4 2\").attr(\"stroke\", \"#666\");\n drawFace(g, {\n cx: center,\n cy: 300 + (5 - task.score) * 30,\n score: task.score\n });\n const rect = getNoteRect();\n rect.x = task.x;\n rect.y = task.y;\n rect.fill = task.fill;\n rect.width = conf2.width;\n rect.height = conf2.height;\n rect.class = \"task task-type-\" + task.num;\n rect.rx = 3;\n rect.ry = 3;\n drawRect2(g, rect);\n let xPos = task.x + 14;\n task.people.forEach((person) => {\n const colour = task.actors[person].color;\n const circle = {\n cx: xPos,\n cy: task.y,\n r: 7,\n fill: colour,\n stroke: \"#000\",\n title: person,\n pos: task.actors[person].position\n };\n drawCircle(g, circle);\n xPos += 10;\n });\n _drawTextCandidateFunc(conf2)(\n task.task,\n g,\n rect.x,\n rect.y,\n rect.width,\n rect.height,\n { class: \"task\" },\n conf2,\n task.colour\n );\n}, \"drawTask\");\nvar drawBackgroundRect2 = /* @__PURE__ */ __name(function(elem, bounds2) {\n drawBackgroundRect(elem, bounds2);\n}, \"drawBackgroundRect\");\nvar _drawTextCandidateFunc = /* @__PURE__ */ (function() {\n function byText(content, g, x, y, width, height, textAttrs, colour) {\n const text = g.append(\"text\").attr(\"x\", x + width / 2).attr(\"y\", y + height / 2 + 5).style(\"font-color\", colour).style(\"text-anchor\", \"middle\").text(content);\n _setTextAttrs(text, textAttrs);\n }\n __name(byText, \"byText\");\n function byTspan(content, g, x, y, width, height, textAttrs, conf2, colour) {\n const { taskFontSize, taskFontFamily } = conf2;\n const lines = content.split(/<br\\s*\\/?>/gi);\n for (let i = 0; i < lines.length; i++) {\n const dy = i * taskFontSize - taskFontSize * (lines.length - 1) / 2;\n const text = g.append(\"text\").attr(\"x\", x + width / 2).attr(\"y\", y).attr(\"fill\", colour).style(\"text-anchor\", \"middle\").style(\"font-size\", taskFontSize).style(\"font-family\", taskFontFamily);\n text.append(\"tspan\").attr(\"x\", x + width / 2).attr(\"dy\", dy).text(lines[i]);\n text.attr(\"y\", y + height / 2).attr(\"dominant-baseline\", \"central\").attr(\"alignment-baseline\", \"central\");\n _setTextAttrs(text, textAttrs);\n }\n }\n __name(byTspan, \"byTspan\");\n function byFo(content, g, x, y, width, height, textAttrs, conf2) {\n const body = g.append(\"switch\");\n const f = body.append(\"foreignObject\").attr(\"x\", x).attr(\"y\", y).attr(\"width\", width).attr(\"height\", height).attr(\"position\", \"fixed\");\n const text = f.append(\"xhtml:div\").style(\"display\", \"table\").style(\"height\", \"100%\").style(\"width\", \"100%\");\n text.append(\"div\").attr(\"class\", \"label\").style(\"display\", \"table-cell\").style(\"text-align\", \"center\").style(\"vertical-align\", \"middle\").text(content);\n byTspan(content, body, x, y, width, height, textAttrs, conf2);\n _setTextAttrs(text, textAttrs);\n }\n __name(byFo, \"byFo\");\n function _setTextAttrs(toText, fromTextAttrsDict) {\n for (const key in fromTextAttrsDict) {\n if (key in fromTextAttrsDict) {\n toText.attr(key, fromTextAttrsDict[key]);\n }\n }\n }\n __name(_setTextAttrs, \"_setTextAttrs\");\n return function(conf2) {\n return conf2.textPlacement === \"fo\" ? byFo : conf2.textPlacement === \"old\" ? byText : byTspan;\n };\n})();\nvar initGraphics = /* @__PURE__ */ __name(function(graphics, id) {\n taskCount = -1;\n graphics.append(\"defs\").append(\"marker\").attr(\"id\", id + \"-arrowhead\").attr(\"refX\", 5).attr(\"refY\", 2).attr(\"markerWidth\", 6).attr(\"markerHeight\", 4).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 0,0 V 4 L6,2 Z\");\n}, \"initGraphics\");\nvar svgDraw_default = {\n drawRect: drawRect2,\n drawCircle,\n drawSection,\n drawText: drawText2,\n drawLabel,\n drawTask,\n drawBackgroundRect: drawBackgroundRect2,\n initGraphics\n};\n\n// src/diagrams/user-journey/journeyRenderer.ts\nvar setConf = /* @__PURE__ */ __name(function(cnf) {\n const keys = Object.keys(cnf);\n keys.forEach(function(key) {\n conf[key] = cnf[key];\n });\n}, \"setConf\");\nvar actors = {};\nvar maxWidth = 0;\nfunction drawActorLegend(diagram2) {\n const conf2 = getConfig().journey;\n const maxLabelWidth = conf2.maxLabelWidth;\n maxWidth = 0;\n let yPos = 60;\n Object.keys(actors).forEach((person) => {\n const colour = actors[person].color;\n const circleData = {\n cx: 20,\n cy: yPos,\n r: 7,\n fill: colour,\n stroke: \"#000\",\n pos: actors[person].position\n };\n svgDraw_default.drawCircle(diagram2, circleData);\n let measureText = diagram2.append(\"text\").attr(\"visibility\", \"hidden\").text(person);\n const fullTextWidth = measureText.node().getBoundingClientRect().width;\n measureText.remove();\n let lines = [];\n if (fullTextWidth <= maxLabelWidth) {\n lines = [person];\n } else {\n const words = person.split(\" \");\n let currentLine = \"\";\n measureText = diagram2.append(\"text\").attr(\"visibility\", \"hidden\");\n words.forEach((word) => {\n const testLine = currentLine ? `${currentLine} ${word}` : word;\n measureText.text(testLine);\n const textWidth = measureText.node().getBoundingClientRect().width;\n if (textWidth > maxLabelWidth) {\n if (currentLine) {\n lines.push(currentLine);\n }\n currentLine = word;\n measureText.text(word);\n if (measureText.node().getBoundingClientRect().width > maxLabelWidth) {\n let brokenWord = \"\";\n for (const char of word) {\n brokenWord += char;\n measureText.text(brokenWord + \"-\");\n if (measureText.node().getBoundingClientRect().width > maxLabelWidth) {\n lines.push(brokenWord.slice(0, -1) + \"-\");\n brokenWord = char;\n }\n }\n currentLine = brokenWord;\n }\n } else {\n currentLine = testLine;\n }\n });\n if (currentLine) {\n lines.push(currentLine);\n }\n measureText.remove();\n }\n lines.forEach((line, index) => {\n const labelData = {\n x: 40,\n y: yPos + 7 + index * 20,\n fill: \"#666\",\n text: line,\n textMargin: conf2.boxTextMargin ?? 5\n };\n const textElement = svgDraw_default.drawText(diagram2, labelData);\n const lineWidth = textElement.node().getBoundingClientRect().width;\n if (lineWidth > maxWidth && lineWidth > conf2.leftMargin - lineWidth) {\n maxWidth = lineWidth;\n }\n });\n yPos += Math.max(20, lines.length * 20);\n });\n}\n__name(drawActorLegend, \"drawActorLegend\");\nvar conf = getConfig().journey;\nvar leftMargin = 0;\nvar draw = /* @__PURE__ */ __name(function(text, id, version, diagObj) {\n const configObject = getConfig();\n const titleColor = configObject.journey.titleColor;\n const titleFontSize = configObject.journey.titleFontSize;\n const titleFontFamily = configObject.journey.titleFontFamily;\n const securityLevel = configObject.securityLevel;\n let sandboxElement;\n if (securityLevel === \"sandbox\") {\n sandboxElement = select(\"#i\" + id);\n }\n const root = securityLevel === \"sandbox\" ? select(sandboxElement.nodes()[0].contentDocument.body) : select(\"body\");\n bounds.init();\n const diagram2 = root.select(\"#\" + id);\n svgDraw_default.initGraphics(diagram2, id);\n const tasks2 = diagObj.db.getTasks();\n const title = diagObj.db.getDiagramTitle();\n const actorNames = diagObj.db.getActors();\n for (const member in actors) {\n delete actors[member];\n }\n let actorPos = 0;\n actorNames.forEach((actorName) => {\n actors[actorName] = {\n color: conf.actorColours[actorPos % conf.actorColours.length],\n position: actorPos\n };\n actorPos++;\n });\n drawActorLegend(diagram2);\n leftMargin = conf.leftMargin + maxWidth;\n bounds.insert(0, 0, leftMargin, Object.keys(actors).length * 50);\n drawTasks(diagram2, tasks2, 0, id);\n const box = bounds.getBounds();\n if (title) {\n diagram2.append(\"text\").text(title).attr(\"x\", leftMargin).attr(\"font-size\", titleFontSize).attr(\"font-weight\", \"bold\").attr(\"y\", 25).attr(\"fill\", titleColor).attr(\"font-family\", titleFontFamily);\n }\n const height = box.stopy - box.starty + 2 * conf.diagramMarginY;\n const width = leftMargin + box.stopx + 2 * conf.diagramMarginX;\n configureSvgSize(diagram2, height, width, conf.useMaxWidth);\n diagram2.append(\"line\").attr(\"x1\", leftMargin).attr(\"y1\", conf.height * 4).attr(\"x2\", width - leftMargin - 4).attr(\"y2\", conf.height * 4).attr(\"stroke-width\", 4).attr(\"stroke\", \"black\").attr(\"marker-end\", \"url(#\" + id + \"-arrowhead)\");\n const extraVertForTitle = title ? 70 : 0;\n diagram2.attr(\"viewBox\", `${box.startx} -25 ${width} ${height + extraVertForTitle}`);\n diagram2.attr(\"preserveAspectRatio\", \"xMinYMin meet\");\n diagram2.attr(\"height\", height + extraVertForTitle + 25);\n}, \"draw\");\nvar bounds = {\n data: {\n startx: void 0,\n stopx: void 0,\n starty: void 0,\n stopy: void 0\n },\n verticalPos: 0,\n sequenceItems: [],\n init: /* @__PURE__ */ __name(function() {\n this.sequenceItems = [];\n this.data = {\n startx: void 0,\n stopx: void 0,\n starty: void 0,\n stopy: void 0\n };\n this.verticalPos = 0;\n }, \"init\"),\n updateVal: /* @__PURE__ */ __name(function(obj, key, val, fun) {\n if (obj[key] === void 0) {\n obj[key] = val;\n } else {\n obj[key] = fun(val, obj[key]);\n }\n }, \"updateVal\"),\n updateBounds: /* @__PURE__ */ __name(function(startx, starty, stopx, stopy) {\n const conf2 = getConfig().journey;\n const _self = this;\n let cnt = 0;\n function updateFn(type) {\n return /* @__PURE__ */ __name(function updateItemBounds(item) {\n cnt++;\n const n = _self.sequenceItems.length - cnt + 1;\n _self.updateVal(item, \"starty\", starty - n * conf2.boxMargin, Math.min);\n _self.updateVal(item, \"stopy\", stopy + n * conf2.boxMargin, Math.max);\n _self.updateVal(bounds.data, \"startx\", startx - n * conf2.boxMargin, Math.min);\n _self.updateVal(bounds.data, \"stopx\", stopx + n * conf2.boxMargin, Math.max);\n if (!(type === \"activation\")) {\n _self.updateVal(item, \"startx\", startx - n * conf2.boxMargin, Math.min);\n _self.updateVal(item, \"stopx\", stopx + n * conf2.boxMargin, Math.max);\n _self.updateVal(bounds.data, \"starty\", starty - n * conf2.boxMargin, Math.min);\n _self.updateVal(bounds.data, \"stopy\", stopy + n * conf2.boxMargin, Math.max);\n }\n }, \"updateItemBounds\");\n }\n __name(updateFn, \"updateFn\");\n this.sequenceItems.forEach(updateFn());\n }, \"updateBounds\"),\n insert: /* @__PURE__ */ __name(function(startx, starty, stopx, stopy) {\n const _startx = Math.min(startx, stopx);\n const _stopx = Math.max(startx, stopx);\n const _starty = Math.min(starty, stopy);\n const _stopy = Math.max(starty, stopy);\n this.updateVal(bounds.data, \"startx\", _startx, Math.min);\n this.updateVal(bounds.data, \"starty\", _starty, Math.min);\n this.updateVal(bounds.data, \"stopx\", _stopx, Math.max);\n this.updateVal(bounds.data, \"stopy\", _stopy, Math.max);\n this.updateBounds(_startx, _starty, _stopx, _stopy);\n }, \"insert\"),\n bumpVerticalPos: /* @__PURE__ */ __name(function(bump) {\n this.verticalPos = this.verticalPos + bump;\n this.data.stopy = this.verticalPos;\n }, \"bumpVerticalPos\"),\n getVerticalPos: /* @__PURE__ */ __name(function() {\n return this.verticalPos;\n }, \"getVerticalPos\"),\n getBounds: /* @__PURE__ */ __name(function() {\n return this.data;\n }, \"getBounds\")\n};\nvar fills = conf.sectionFills;\nvar textColours = conf.sectionColours;\nvar drawTasks = /* @__PURE__ */ __name(function(diagram2, tasks2, verticalPos, diagramId) {\n const conf2 = getConfig().journey;\n let lastSection = \"\";\n const sectionVHeight = conf2.height * 2 + conf2.diagramMarginY;\n const taskPos = verticalPos + sectionVHeight;\n let sectionNumber = 0;\n let fill = \"#CCC\";\n let colour = \"black\";\n let num = 0;\n for (const [i, task] of tasks2.entries()) {\n if (lastSection !== task.section) {\n fill = fills[sectionNumber % fills.length];\n num = sectionNumber % fills.length;\n colour = textColours[sectionNumber % textColours.length];\n let taskInSectionCount = 0;\n const currentSection2 = task.section;\n for (let taskIndex = i; taskIndex < tasks2.length; taskIndex++) {\n if (tasks2[taskIndex].section == currentSection2) {\n taskInSectionCount = taskInSectionCount + 1;\n } else {\n break;\n }\n }\n const section = {\n x: i * conf2.taskMargin + i * conf2.width + leftMargin,\n y: 50,\n text: task.section,\n fill,\n num,\n colour,\n taskCount: taskInSectionCount\n };\n svgDraw_default.drawSection(diagram2, section, conf2);\n lastSection = task.section;\n sectionNumber++;\n }\n const taskActors = task.people.reduce((acc, actorName) => {\n if (actors[actorName]) {\n acc[actorName] = actors[actorName];\n }\n return acc;\n }, {});\n task.x = i * conf2.taskMargin + i * conf2.width + leftMargin;\n task.y = taskPos;\n task.width = conf2.diagramMarginX;\n task.height = conf2.diagramMarginY;\n task.colour = colour;\n task.fill = fill;\n task.num = num;\n task.actors = taskActors;\n svgDraw_default.drawTask(diagram2, task, conf2, diagramId);\n bounds.insert(task.x, task.y, task.x + task.width + conf2.taskMargin, 300 + 5 * 30);\n }\n}, \"drawTasks\");\nvar journeyRenderer_default = {\n setConf,\n draw\n};\n\n// src/diagrams/user-journey/journeyDiagram.ts\nvar diagram = {\n parser: journey_default,\n db: journeyDb_default,\n renderer: journeyRenderer_default,\n styles: styles_default,\n init: /* @__PURE__ */ __name((cnf) => {\n journeyRenderer_default.setConf(cnf.journey);\n journeyDb_default.clear();\n }, \"init\")\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"journeyDiagram-VCZTEJTY-CjNMX7wx.js","names":["getConfig","d3arc","select"],"sources":["../../../../node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-VCZTEJTY.mjs"],"sourcesContent":["import {\n getIconStyles\n} from \"./chunk-FMBD7UC4.mjs\";\nimport {\n drawBackgroundRect,\n drawRect,\n drawText,\n getNoteRect\n} from \"./chunk-YZCP3GAM.mjs\";\nimport {\n clear,\n configureSvgSize,\n getAccDescription,\n getAccTitle,\n getConfig2 as getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-ICPOFSXX.mjs\";\nimport {\n __name\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/user-journey/parser/journey.jison\nvar parser = (function() {\n var o = /* @__PURE__ */ __name(function(k, v, o2, l) {\n for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n return o2;\n }, \"o\"), $V0 = [6, 8, 10, 11, 12, 14, 16, 17, 18], $V1 = [1, 9], $V2 = [1, 10], $V3 = [1, 11], $V4 = [1, 12], $V5 = [1, 13], $V6 = [1, 14];\n var parser2 = {\n trace: /* @__PURE__ */ __name(function trace() {\n }, \"trace\"),\n yy: {},\n symbols_: { \"error\": 2, \"start\": 3, \"journey\": 4, \"document\": 5, \"EOF\": 6, \"line\": 7, \"SPACE\": 8, \"statement\": 9, \"NEWLINE\": 10, \"title\": 11, \"acc_title\": 12, \"acc_title_value\": 13, \"acc_descr\": 14, \"acc_descr_value\": 15, \"acc_descr_multiline_value\": 16, \"section\": 17, \"taskName\": 18, \"taskData\": 19, \"$accept\": 0, \"$end\": 1 },\n terminals_: { 2: \"error\", 4: \"journey\", 6: \"EOF\", 8: \"SPACE\", 10: \"NEWLINE\", 11: \"title\", 12: \"acc_title\", 13: \"acc_title_value\", 14: \"acc_descr\", 15: \"acc_descr_value\", 16: \"acc_descr_multiline_value\", 17: \"section\", 18: \"taskName\", 19: \"taskData\" },\n productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 1], [9, 2]],\n performAction: /* @__PURE__ */ __name(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n var $0 = $$.length - 1;\n switch (yystate) {\n case 1:\n return $$[$0 - 1];\n break;\n case 2:\n this.$ = [];\n break;\n case 3:\n $$[$0 - 1].push($$[$0]);\n this.$ = $$[$0 - 1];\n break;\n case 4:\n case 5:\n this.$ = $$[$0];\n break;\n case 6:\n case 7:\n this.$ = [];\n break;\n case 8:\n yy.setDiagramTitle($$[$0].substr(6));\n this.$ = $$[$0].substr(6);\n break;\n case 9:\n this.$ = $$[$0].trim();\n yy.setAccTitle(this.$);\n break;\n case 10:\n case 11:\n this.$ = $$[$0].trim();\n yy.setAccDescription(this.$);\n break;\n case 12:\n yy.addSection($$[$0].substr(8));\n this.$ = $$[$0].substr(8);\n break;\n case 13:\n yy.addTask($$[$0 - 1], $$[$0]);\n this.$ = \"task\";\n break;\n }\n }, \"anonymous\"),\n table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, o($V0, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 7], { 1: [2, 1] }), o($V0, [2, 3]), { 9: 15, 11: $V1, 12: $V2, 14: $V3, 16: $V4, 17: $V5, 18: $V6 }, o($V0, [2, 5]), o($V0, [2, 6]), o($V0, [2, 8]), { 13: [1, 16] }, { 15: [1, 17] }, o($V0, [2, 11]), o($V0, [2, 12]), { 19: [1, 18] }, o($V0, [2, 4]), o($V0, [2, 9]), o($V0, [2, 10]), o($V0, [2, 13])],\n defaultActions: {},\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (hash.recoverable) {\n this.trace(str);\n } else {\n var error = new Error(str);\n error.hash = hash;\n throw error;\n }\n }, \"parseError\"),\n parse: /* @__PURE__ */ __name(function parse(input) {\n var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n var args = lstack.slice.call(arguments, 1);\n var lexer2 = Object.create(this.lexer);\n var sharedState = { yy: {} };\n for (var k in this.yy) {\n if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n sharedState.yy[k] = this.yy[k];\n }\n }\n lexer2.setInput(input, sharedState.yy);\n sharedState.yy.lexer = lexer2;\n sharedState.yy.parser = this;\n if (typeof lexer2.yylloc == \"undefined\") {\n lexer2.yylloc = {};\n }\n var yyloc = lexer2.yylloc;\n lstack.push(yyloc);\n var ranges = lexer2.options && lexer2.options.ranges;\n if (typeof sharedState.yy.parseError === \"function\") {\n this.parseError = sharedState.yy.parseError;\n } else {\n this.parseError = Object.getPrototypeOf(this).parseError;\n }\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n __name(popStack, \"popStack\");\n function lex() {\n var token;\n token = tstack.pop() || lexer2.lex() || EOF;\n if (typeof token !== \"number\") {\n if (token instanceof Array) {\n tstack = token;\n token = tstack.pop();\n }\n token = self.symbols_[token] || token;\n }\n return token;\n }\n __name(lex, \"lex\");\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n expected = [];\n for (p in table[state]) {\n if (this.terminals_[p] && p > TERROR) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n }\n if (lexer2.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {\n text: lexer2.match,\n token: this.terminals_[symbol] || symbol,\n line: lexer2.yylineno,\n loc: yyloc,\n expected\n });\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(lexer2.yytext);\n lstack.push(lexer2.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = lexer2.yyleng;\n yytext = lexer2.yytext;\n yylineno = lexer2.yylineno;\n yyloc = lexer2.yylloc;\n if (recovering > 0) {\n recovering--;\n }\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {\n first_line: lstack[lstack.length - (len || 1)].first_line,\n last_line: lstack[lstack.length - 1].last_line,\n first_column: lstack[lstack.length - (len || 1)].first_column,\n last_column: lstack[lstack.length - 1].last_column\n };\n if (ranges) {\n yyval._$.range = [\n lstack[lstack.length - (len || 1)].range[0],\n lstack[lstack.length - 1].range[1]\n ];\n }\n r = this.performAction.apply(yyval, [\n yytext,\n yyleng,\n yylineno,\n sharedState.yy,\n action[1],\n vstack,\n lstack\n ].concat(args));\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n }, \"parse\")\n };\n var lexer = /* @__PURE__ */ (function() {\n var lexer2 = {\n EOF: 1,\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n }, \"parseError\"),\n // resets the lexer, sets new input\n setInput: /* @__PURE__ */ __name(function(input, yy) {\n this.yy = yy || this.yy || {};\n this._input = input;\n this._more = this._backtrack = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = \"\";\n this.conditionStack = [\"INITIAL\"];\n this.yylloc = {\n first_line: 1,\n first_column: 0,\n last_line: 1,\n last_column: 0\n };\n if (this.options.ranges) {\n this.yylloc.range = [0, 0];\n }\n this.offset = 0;\n return this;\n }, \"setInput\"),\n // consumes and returns one char from the input\n input: /* @__PURE__ */ __name(function() {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) {\n this.yylloc.range[1]++;\n }\n this._input = this._input.slice(1);\n return ch;\n }, \"input\"),\n // unshifts one char (or a string) into the input\n unput: /* @__PURE__ */ __name(function(ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length - len);\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length - 1);\n this.matched = this.matched.substr(0, this.matched.length - 1);\n if (lines.length - 1) {\n this.yylineno -= lines.length - 1;\n }\n var r = this.yylloc.range;\n this.yylloc = {\n first_line: this.yylloc.first_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.first_column,\n last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n };\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n this.yyleng = this.yytext.length;\n return this;\n }, \"unput\"),\n // When called from action, caches matched text and appends it on next action\n more: /* @__PURE__ */ __name(function() {\n this._more = true;\n return this;\n }, \"more\"),\n // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n reject: /* @__PURE__ */ __name(function() {\n if (this.options.backtrack_lexer) {\n this._backtrack = true;\n } else {\n 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).\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n return this;\n }, \"reject\"),\n // retain first n characters of the match\n less: /* @__PURE__ */ __name(function(n) {\n this.unput(this.match.slice(n));\n }, \"less\"),\n // displays already matched input, i.e. for error messages\n pastInput: /* @__PURE__ */ __name(function() {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n }, \"pastInput\"),\n // displays upcoming input, i.e. for error messages\n upcomingInput: /* @__PURE__ */ __name(function() {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20 - next.length);\n }\n return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n }, \"upcomingInput\"),\n // displays the character position where the lexing error occurred, i.e. for error messages\n showPosition: /* @__PURE__ */ __name(function() {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n }, \"showPosition\"),\n // test the lexed token: return FALSE when not a match, otherwise return token\n test_match: /* @__PURE__ */ __name(function(match, indexed_rule) {\n var token, lines, backup;\n if (this.options.backtrack_lexer) {\n backup = {\n yylineno: this.yylineno,\n yylloc: {\n first_line: this.yylloc.first_line,\n last_line: this.last_line,\n first_column: this.yylloc.first_column,\n last_column: this.yylloc.last_column\n },\n yytext: this.yytext,\n match: this.match,\n matches: this.matches,\n matched: this.matched,\n yyleng: this.yyleng,\n offset: this.offset,\n _more: this._more,\n _input: this._input,\n yy: this.yy,\n conditionStack: this.conditionStack.slice(0),\n done: this.done\n };\n if (this.options.ranges) {\n backup.yylloc.range = this.yylloc.range.slice(0);\n }\n }\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno += lines.length;\n }\n this.yylloc = {\n first_line: this.yylloc.last_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n };\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._backtrack = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n if (this.done && this._input) {\n this.done = false;\n }\n if (token) {\n return token;\n } else if (this._backtrack) {\n for (var k in backup) {\n this[k] = backup[k];\n }\n return false;\n }\n return false;\n }, \"test_match\"),\n // return next match in input\n next: /* @__PURE__ */ __name(function() {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) {\n this.done = true;\n }\n var token, match, tempMatch, index;\n if (!this._more) {\n this.yytext = \"\";\n this.match = \"\";\n }\n var rules = this._currentRules();\n for (var i = 0; i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (this.options.backtrack_lexer) {\n token = this.test_match(tempMatch, rules[i]);\n if (token !== false) {\n return token;\n } else if (this._backtrack) {\n match = false;\n continue;\n } else {\n return false;\n }\n } else if (!this.options.flex) {\n break;\n }\n }\n }\n if (match) {\n token = this.test_match(match, rules[index]);\n if (token !== false) {\n return token;\n }\n return false;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n }, \"next\"),\n // return next match that has a token\n lex: /* @__PURE__ */ __name(function lex() {\n var r = this.next();\n if (r) {\n return r;\n } else {\n return this.lex();\n }\n }, \"lex\"),\n // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n begin: /* @__PURE__ */ __name(function begin(condition) {\n this.conditionStack.push(condition);\n }, \"begin\"),\n // pop the previously active lexer condition state off the condition stack\n popState: /* @__PURE__ */ __name(function popState() {\n var n = this.conditionStack.length - 1;\n if (n > 0) {\n return this.conditionStack.pop();\n } else {\n return this.conditionStack[0];\n }\n }, \"popState\"),\n // produce the lexer rule set which is active for the currently active lexer condition state\n _currentRules: /* @__PURE__ */ __name(function _currentRules() {\n if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n } else {\n return this.conditions[\"INITIAL\"].rules;\n }\n }, \"_currentRules\"),\n // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n topState: /* @__PURE__ */ __name(function topState(n) {\n n = this.conditionStack.length - 1 - Math.abs(n || 0);\n if (n >= 0) {\n return this.conditionStack[n];\n } else {\n return \"INITIAL\";\n }\n }, \"topState\"),\n // alias for begin(condition)\n pushState: /* @__PURE__ */ __name(function pushState(condition) {\n this.begin(condition);\n }, \"pushState\"),\n // return the number of states currently on the stack\n stateStackSize: /* @__PURE__ */ __name(function stateStackSize() {\n return this.conditionStack.length;\n }, \"stateStackSize\"),\n options: { \"case-insensitive\": true },\n performAction: /* @__PURE__ */ __name(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n var YYSTATE = YY_START;\n switch ($avoiding_name_collisions) {\n case 0:\n break;\n case 1:\n break;\n case 2:\n return 10;\n break;\n case 3:\n break;\n case 4:\n break;\n case 5:\n return 4;\n break;\n case 6:\n return 11;\n break;\n case 7:\n this.begin(\"acc_title\");\n return 12;\n break;\n case 8:\n this.popState();\n return \"acc_title_value\";\n break;\n case 9:\n this.begin(\"acc_descr\");\n return 14;\n break;\n case 10:\n this.popState();\n return \"acc_descr_value\";\n break;\n case 11:\n this.begin(\"acc_descr_multiline\");\n break;\n case 12:\n this.popState();\n break;\n case 13:\n return \"acc_descr_multiline_value\";\n break;\n case 14:\n return 17;\n break;\n case 15:\n return 18;\n break;\n case 16:\n return 19;\n break;\n case 17:\n return \":\";\n break;\n case 18:\n return 6;\n break;\n case 19:\n return \"INVALID\";\n break;\n }\n }, \"anonymous\"),\n rules: [/^(?:%(?!\\{)[^\\n]*)/i, /^(?:[^\\}]%%[^\\n]*)/i, /^(?:[\\n]+)/i, /^(?:\\s+)/i, /^(?:#[^\\n]*)/i, /^(?:journey\\b)/i, /^(?:title\\s[^#\\n;]+)/i, /^(?:accTitle\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*\\{\\s*)/i, /^(?:[\\}])/i, /^(?:[^\\}]*)/i, /^(?:section\\s[^#:\\n;]+)/i, /^(?:[^#:\\n;]+)/i, /^(?::[^#\\n;]+)/i, /^(?::)/i, /^(?:$)/i, /^(?:.)/i],\n conditions: { \"acc_descr_multiline\": { \"rules\": [12, 13], \"inclusive\": false }, \"acc_descr\": { \"rules\": [10], \"inclusive\": false }, \"acc_title\": { \"rules\": [8], \"inclusive\": false }, \"INITIAL\": { \"rules\": [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19], \"inclusive\": true } }\n };\n return lexer2;\n })();\n parser2.lexer = lexer;\n function Parser() {\n this.yy = {};\n }\n __name(Parser, \"Parser\");\n Parser.prototype = parser2;\n parser2.Parser = Parser;\n return new Parser();\n})();\nparser.parser = parser;\nvar journey_default = parser;\n\n// src/diagrams/user-journey/journeyDb.js\nvar currentSection = \"\";\nvar sections = [];\nvar tasks = [];\nvar rawTasks = [];\nvar clear2 = /* @__PURE__ */ __name(function() {\n sections.length = 0;\n tasks.length = 0;\n currentSection = \"\";\n rawTasks.length = 0;\n clear();\n}, \"clear\");\nvar addSection = /* @__PURE__ */ __name(function(txt) {\n currentSection = txt;\n sections.push(txt);\n}, \"addSection\");\nvar getSections = /* @__PURE__ */ __name(function() {\n return sections;\n}, \"getSections\");\nvar getTasks = /* @__PURE__ */ __name(function() {\n let allItemsProcessed = compileTasks();\n const maxDepth = 100;\n let iterationCount = 0;\n while (!allItemsProcessed && iterationCount < maxDepth) {\n allItemsProcessed = compileTasks();\n iterationCount++;\n }\n tasks.push(...rawTasks);\n return tasks;\n}, \"getTasks\");\nvar updateActors = /* @__PURE__ */ __name(function() {\n const tempActors = [];\n tasks.forEach((task) => {\n if (task.people) {\n tempActors.push(...task.people);\n }\n });\n const unique = new Set(tempActors);\n return [...unique].sort();\n}, \"updateActors\");\nvar addTask = /* @__PURE__ */ __name(function(descr, taskData) {\n const pieces = taskData.substr(1).split(\":\");\n let score = 0;\n let peeps = [];\n if (pieces.length === 1) {\n score = Number(pieces[0]);\n peeps = [];\n } else {\n score = Number(pieces[0]);\n peeps = pieces[1].split(\",\");\n }\n const peopleList = peeps.map((s) => s.trim());\n const rawTask = {\n section: currentSection,\n type: currentSection,\n people: peopleList,\n task: descr,\n score\n };\n rawTasks.push(rawTask);\n}, \"addTask\");\nvar addTaskOrg = /* @__PURE__ */ __name(function(descr) {\n const newTask = {\n section: currentSection,\n type: currentSection,\n description: descr,\n task: descr,\n classes: []\n };\n tasks.push(newTask);\n}, \"addTaskOrg\");\nvar compileTasks = /* @__PURE__ */ __name(function() {\n const compileTask = /* @__PURE__ */ __name(function(pos) {\n return rawTasks[pos].processed;\n }, \"compileTask\");\n let allProcessed = true;\n for (const [i, rawTask] of rawTasks.entries()) {\n compileTask(i);\n allProcessed = allProcessed && rawTask.processed;\n }\n return allProcessed;\n}, \"compileTasks\");\nvar getActors = /* @__PURE__ */ __name(function() {\n return updateActors();\n}, \"getActors\");\nvar journeyDb_default = {\n getConfig: /* @__PURE__ */ __name(() => getConfig().journey, \"getConfig\"),\n clear: clear2,\n setDiagramTitle,\n getDiagramTitle,\n setAccTitle,\n getAccTitle,\n setAccDescription,\n getAccDescription,\n addSection,\n getSections,\n getTasks,\n addTask,\n addTaskOrg,\n getActors\n};\n\n// src/diagrams/user-journey/styles.js\nvar getStyles = /* @__PURE__ */ __name((options) => `.label {\n font-family: ${options.fontFamily};\n color: ${options.textColor};\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ${options.textColor}\n }\n\n .legend {\n fill: ${options.textColor};\n font-family: ${options.fontFamily};\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ${options.textColor}\n }\n\n .face {\n ${options.faceColor ? `fill: ${options.faceColor}` : \"fill: #FFF8DC\"};\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${options.mainBkg};\n stroke: ${options.nodeBorder};\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${options.arrowheadColor};\n }\n\n .edgePath .path {\n stroke: ${options.lineColor};\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ${options.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${options.edgeLabelBackground};\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ${options.titleColor};\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${options.fontFamily};\n font-size: 12px;\n background: ${options.tertiaryColor};\n border: 1px solid ${options.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ${options.fillType0 ? `fill: ${options.fillType0}` : \"\"};\n }\n .task-type-1, .section-type-1 {\n ${options.fillType0 ? `fill: ${options.fillType1}` : \"\"};\n }\n .task-type-2, .section-type-2 {\n ${options.fillType0 ? `fill: ${options.fillType2}` : \"\"};\n }\n .task-type-3, .section-type-3 {\n ${options.fillType0 ? `fill: ${options.fillType3}` : \"\"};\n }\n .task-type-4, .section-type-4 {\n ${options.fillType0 ? `fill: ${options.fillType4}` : \"\"};\n }\n .task-type-5, .section-type-5 {\n ${options.fillType0 ? `fill: ${options.fillType5}` : \"\"};\n }\n .task-type-6, .section-type-6 {\n ${options.fillType0 ? `fill: ${options.fillType6}` : \"\"};\n }\n .task-type-7, .section-type-7 {\n ${options.fillType0 ? `fill: ${options.fillType7}` : \"\"};\n }\n\n .actor-0 {\n ${options.actor0 ? `fill: ${options.actor0}` : \"\"};\n }\n .actor-1 {\n ${options.actor1 ? `fill: ${options.actor1}` : \"\"};\n }\n .actor-2 {\n ${options.actor2 ? `fill: ${options.actor2}` : \"\"};\n }\n .actor-3 {\n ${options.actor3 ? `fill: ${options.actor3}` : \"\"};\n }\n .actor-4 {\n ${options.actor4 ? `fill: ${options.actor4}` : \"\"};\n }\n .actor-5 {\n ${options.actor5 ? `fill: ${options.actor5}` : \"\"};\n }\n ${getIconStyles()}\n`, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/user-journey/journeyRenderer.ts\nimport { select } from \"d3\";\n\n// src/diagrams/user-journey/svgDraw.js\nimport { arc as d3arc } from \"d3\";\nvar drawRect2 = /* @__PURE__ */ __name(function(elem, rectData) {\n return drawRect(elem, rectData);\n}, \"drawRect\");\nvar drawFace = /* @__PURE__ */ __name(function(element, faceData) {\n const radius = 15;\n const circleElement = element.append(\"circle\").attr(\"cx\", faceData.cx).attr(\"cy\", faceData.cy).attr(\"class\", \"face\").attr(\"r\", radius).attr(\"stroke-width\", 2).attr(\"overflow\", \"visible\");\n const face = element.append(\"g\");\n face.append(\"circle\").attr(\"cx\", faceData.cx - radius / 3).attr(\"cy\", faceData.cy - radius / 3).attr(\"r\", 1.5).attr(\"stroke-width\", 2).attr(\"fill\", \"#666\").attr(\"stroke\", \"#666\");\n face.append(\"circle\").attr(\"cx\", faceData.cx + radius / 3).attr(\"cy\", faceData.cy - radius / 3).attr(\"r\", 1.5).attr(\"stroke-width\", 2).attr(\"fill\", \"#666\").attr(\"stroke\", \"#666\");\n function smile(face2) {\n const arc = d3arc().startAngle(Math.PI / 2).endAngle(3 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2);\n face2.append(\"path\").attr(\"class\", \"mouth\").attr(\"d\", arc).attr(\"transform\", \"translate(\" + faceData.cx + \",\" + (faceData.cy + 2) + \")\");\n }\n __name(smile, \"smile\");\n function sad(face2) {\n const arc = d3arc().startAngle(3 * Math.PI / 2).endAngle(5 * (Math.PI / 2)).innerRadius(radius / 2).outerRadius(radius / 2.2);\n face2.append(\"path\").attr(\"class\", \"mouth\").attr(\"d\", arc).attr(\"transform\", \"translate(\" + faceData.cx + \",\" + (faceData.cy + 7) + \")\");\n }\n __name(sad, \"sad\");\n function ambivalent(face2) {\n face2.append(\"line\").attr(\"class\", \"mouth\").attr(\"stroke\", 2).attr(\"x1\", faceData.cx - 5).attr(\"y1\", faceData.cy + 7).attr(\"x2\", faceData.cx + 5).attr(\"y2\", faceData.cy + 7).attr(\"class\", \"mouth\").attr(\"stroke-width\", \"1px\").attr(\"stroke\", \"#666\");\n }\n __name(ambivalent, \"ambivalent\");\n if (faceData.score > 3) {\n smile(face);\n } else if (faceData.score < 3) {\n sad(face);\n } else {\n ambivalent(face);\n }\n return circleElement;\n}, \"drawFace\");\nvar drawCircle = /* @__PURE__ */ __name(function(element, circleData) {\n const circleElement = element.append(\"circle\");\n circleElement.attr(\"cx\", circleData.cx);\n circleElement.attr(\"cy\", circleData.cy);\n circleElement.attr(\"class\", \"actor-\" + circleData.pos);\n circleElement.attr(\"fill\", circleData.fill);\n circleElement.attr(\"stroke\", circleData.stroke);\n circleElement.attr(\"r\", circleData.r);\n if (circleElement.class !== void 0) {\n circleElement.attr(\"class\", circleElement.class);\n }\n if (circleData.title !== void 0) {\n circleElement.append(\"title\").text(circleData.title);\n }\n return circleElement;\n}, \"drawCircle\");\nvar drawText2 = /* @__PURE__ */ __name(function(elem, textData) {\n return drawText(elem, textData);\n}, \"drawText\");\nvar drawLabel = /* @__PURE__ */ __name(function(elem, txtObject) {\n function genPoints(x, y, width, height, cut) {\n return x + \",\" + y + \" \" + (x + width) + \",\" + y + \" \" + (x + width) + \",\" + (y + height - cut) + \" \" + (x + width - cut * 1.2) + \",\" + (y + height) + \" \" + x + \",\" + (y + height);\n }\n __name(genPoints, \"genPoints\");\n const polygon = elem.append(\"polygon\");\n polygon.attr(\"points\", genPoints(txtObject.x, txtObject.y, 50, 20, 7));\n polygon.attr(\"class\", \"labelBox\");\n txtObject.y = txtObject.y + txtObject.labelMargin;\n txtObject.x = txtObject.x + 0.5 * txtObject.labelMargin;\n drawText2(elem, txtObject);\n}, \"drawLabel\");\nvar drawSection = /* @__PURE__ */ __name(function(elem, section, conf2) {\n const g = elem.append(\"g\");\n const rect = getNoteRect();\n rect.x = section.x;\n rect.y = section.y;\n rect.fill = section.fill;\n rect.width = conf2.width * section.taskCount + // width of the tasks\n conf2.diagramMarginX * (section.taskCount - 1);\n rect.height = conf2.height;\n rect.class = \"journey-section section-type-\" + section.num;\n rect.rx = 3;\n rect.ry = 3;\n drawRect2(g, rect);\n _drawTextCandidateFunc(conf2)(\n section.text,\n g,\n rect.x,\n rect.y,\n rect.width,\n rect.height,\n { class: \"journey-section section-type-\" + section.num },\n conf2,\n section.colour\n );\n}, \"drawSection\");\nvar taskCount = -1;\nvar drawTask = /* @__PURE__ */ __name(function(elem, task, conf2, diagramId) {\n const center = task.x + conf2.width / 2;\n const g = elem.append(\"g\");\n taskCount++;\n const maxHeight = 300 + 5 * 30;\n g.append(\"line\").attr(\"id\", diagramId + \"-task\" + taskCount).attr(\"x1\", center).attr(\"y1\", task.y).attr(\"x2\", center).attr(\"y2\", maxHeight).attr(\"class\", \"task-line\").attr(\"stroke-width\", \"1px\").attr(\"stroke-dasharray\", \"4 2\").attr(\"stroke\", \"#666\");\n drawFace(g, {\n cx: center,\n cy: 300 + (5 - task.score) * 30,\n score: task.score\n });\n const rect = getNoteRect();\n rect.x = task.x;\n rect.y = task.y;\n rect.fill = task.fill;\n rect.width = conf2.width;\n rect.height = conf2.height;\n rect.class = \"task task-type-\" + task.num;\n rect.rx = 3;\n rect.ry = 3;\n drawRect2(g, rect);\n let xPos = task.x + 14;\n task.people.forEach((person) => {\n const colour = task.actors[person].color;\n const circle = {\n cx: xPos,\n cy: task.y,\n r: 7,\n fill: colour,\n stroke: \"#000\",\n title: person,\n pos: task.actors[person].position\n };\n drawCircle(g, circle);\n xPos += 10;\n });\n _drawTextCandidateFunc(conf2)(\n task.task,\n g,\n rect.x,\n rect.y,\n rect.width,\n rect.height,\n { class: \"task\" },\n conf2,\n task.colour\n );\n}, \"drawTask\");\nvar drawBackgroundRect2 = /* @__PURE__ */ __name(function(elem, bounds2) {\n drawBackgroundRect(elem, bounds2);\n}, \"drawBackgroundRect\");\nvar _drawTextCandidateFunc = /* @__PURE__ */ (function() {\n function byText(content, g, x, y, width, height, textAttrs, colour) {\n const text = g.append(\"text\").attr(\"x\", x + width / 2).attr(\"y\", y + height / 2 + 5).style(\"font-color\", colour).style(\"text-anchor\", \"middle\").text(content);\n _setTextAttrs(text, textAttrs);\n }\n __name(byText, \"byText\");\n function byTspan(content, g, x, y, width, height, textAttrs, conf2, colour) {\n const { taskFontSize, taskFontFamily } = conf2;\n const lines = content.split(/<br\\s*\\/?>/gi);\n for (let i = 0; i < lines.length; i++) {\n const dy = i * taskFontSize - taskFontSize * (lines.length - 1) / 2;\n const text = g.append(\"text\").attr(\"x\", x + width / 2).attr(\"y\", y).attr(\"fill\", colour).style(\"text-anchor\", \"middle\").style(\"font-size\", taskFontSize).style(\"font-family\", taskFontFamily);\n text.append(\"tspan\").attr(\"x\", x + width / 2).attr(\"dy\", dy).text(lines[i]);\n text.attr(\"y\", y + height / 2).attr(\"dominant-baseline\", \"central\").attr(\"alignment-baseline\", \"central\");\n _setTextAttrs(text, textAttrs);\n }\n }\n __name(byTspan, \"byTspan\");\n function byFo(content, g, x, y, width, height, textAttrs, conf2) {\n const body = g.append(\"switch\");\n const f = body.append(\"foreignObject\").attr(\"x\", x).attr(\"y\", y).attr(\"width\", width).attr(\"height\", height).attr(\"position\", \"fixed\");\n const text = f.append(\"xhtml:div\").style(\"display\", \"table\").style(\"height\", \"100%\").style(\"width\", \"100%\");\n text.append(\"div\").attr(\"class\", \"label\").style(\"display\", \"table-cell\").style(\"text-align\", \"center\").style(\"vertical-align\", \"middle\").text(content);\n byTspan(content, body, x, y, width, height, textAttrs, conf2);\n _setTextAttrs(text, textAttrs);\n }\n __name(byFo, \"byFo\");\n function _setTextAttrs(toText, fromTextAttrsDict) {\n for (const key in fromTextAttrsDict) {\n if (key in fromTextAttrsDict) {\n toText.attr(key, fromTextAttrsDict[key]);\n }\n }\n }\n __name(_setTextAttrs, \"_setTextAttrs\");\n return function(conf2) {\n return conf2.textPlacement === \"fo\" ? byFo : conf2.textPlacement === \"old\" ? byText : byTspan;\n };\n})();\nvar initGraphics = /* @__PURE__ */ __name(function(graphics, id) {\n taskCount = -1;\n graphics.append(\"defs\").append(\"marker\").attr(\"id\", id + \"-arrowhead\").attr(\"refX\", 5).attr(\"refY\", 2).attr(\"markerWidth\", 6).attr(\"markerHeight\", 4).attr(\"orient\", \"auto\").append(\"path\").attr(\"d\", \"M 0,0 V 4 L6,2 Z\");\n}, \"initGraphics\");\nvar svgDraw_default = {\n drawRect: drawRect2,\n drawCircle,\n drawSection,\n drawText: drawText2,\n drawLabel,\n drawTask,\n drawBackgroundRect: drawBackgroundRect2,\n initGraphics\n};\n\n// src/diagrams/user-journey/journeyRenderer.ts\nvar setConf = /* @__PURE__ */ __name(function(cnf) {\n const keys = Object.keys(cnf);\n keys.forEach(function(key) {\n conf[key] = cnf[key];\n });\n}, \"setConf\");\nvar actors = {};\nvar maxWidth = 0;\nfunction drawActorLegend(diagram2) {\n const conf2 = getConfig().journey;\n const maxLabelWidth = conf2.maxLabelWidth;\n maxWidth = 0;\n let yPos = 60;\n Object.keys(actors).forEach((person) => {\n const colour = actors[person].color;\n const circleData = {\n cx: 20,\n cy: yPos,\n r: 7,\n fill: colour,\n stroke: \"#000\",\n pos: actors[person].position\n };\n svgDraw_default.drawCircle(diagram2, circleData);\n let measureText = diagram2.append(\"text\").attr(\"visibility\", \"hidden\").text(person);\n const fullTextWidth = measureText.node().getBoundingClientRect().width;\n measureText.remove();\n let lines = [];\n if (fullTextWidth <= maxLabelWidth) {\n lines = [person];\n } else {\n const words = person.split(\" \");\n let currentLine = \"\";\n measureText = diagram2.append(\"text\").attr(\"visibility\", \"hidden\");\n words.forEach((word) => {\n const testLine = currentLine ? `${currentLine} ${word}` : word;\n measureText.text(testLine);\n const textWidth = measureText.node().getBoundingClientRect().width;\n if (textWidth > maxLabelWidth) {\n if (currentLine) {\n lines.push(currentLine);\n }\n currentLine = word;\n measureText.text(word);\n if (measureText.node().getBoundingClientRect().width > maxLabelWidth) {\n let brokenWord = \"\";\n for (const char of word) {\n brokenWord += char;\n measureText.text(brokenWord + \"-\");\n if (measureText.node().getBoundingClientRect().width > maxLabelWidth) {\n lines.push(brokenWord.slice(0, -1) + \"-\");\n brokenWord = char;\n }\n }\n currentLine = brokenWord;\n }\n } else {\n currentLine = testLine;\n }\n });\n if (currentLine) {\n lines.push(currentLine);\n }\n measureText.remove();\n }\n lines.forEach((line, index) => {\n const labelData = {\n x: 40,\n y: yPos + 7 + index * 20,\n fill: \"#666\",\n text: line,\n textMargin: conf2.boxTextMargin ?? 5\n };\n const textElement = svgDraw_default.drawText(diagram2, labelData);\n const lineWidth = textElement.node().getBoundingClientRect().width;\n if (lineWidth > maxWidth && lineWidth > conf2.leftMargin - lineWidth) {\n maxWidth = lineWidth;\n }\n });\n yPos += Math.max(20, lines.length * 20);\n });\n}\n__name(drawActorLegend, \"drawActorLegend\");\nvar conf = getConfig().journey;\nvar leftMargin = 0;\nvar draw = /* @__PURE__ */ __name(function(text, id, version, diagObj) {\n const configObject = getConfig();\n const titleColor = configObject.journey.titleColor;\n const titleFontSize = configObject.journey.titleFontSize;\n const titleFontFamily = configObject.journey.titleFontFamily;\n const securityLevel = configObject.securityLevel;\n let sandboxElement;\n if (securityLevel === \"sandbox\") {\n sandboxElement = select(\"#i\" + id);\n }\n const root = securityLevel === \"sandbox\" ? select(sandboxElement.nodes()[0].contentDocument.body) : select(\"body\");\n bounds.init();\n const diagram2 = root.select(\"#\" + id);\n svgDraw_default.initGraphics(diagram2, id);\n const tasks2 = diagObj.db.getTasks();\n const title = diagObj.db.getDiagramTitle();\n const actorNames = diagObj.db.getActors();\n for (const member in actors) {\n delete actors[member];\n }\n let actorPos = 0;\n actorNames.forEach((actorName) => {\n actors[actorName] = {\n color: conf.actorColours[actorPos % conf.actorColours.length],\n position: actorPos\n };\n actorPos++;\n });\n drawActorLegend(diagram2);\n leftMargin = conf.leftMargin + maxWidth;\n bounds.insert(0, 0, leftMargin, Object.keys(actors).length * 50);\n drawTasks(diagram2, tasks2, 0, id);\n const box = bounds.getBounds();\n if (title) {\n diagram2.append(\"text\").text(title).attr(\"x\", leftMargin).attr(\"font-size\", titleFontSize).attr(\"font-weight\", \"bold\").attr(\"y\", 25).attr(\"fill\", titleColor).attr(\"font-family\", titleFontFamily);\n }\n const height = box.stopy - box.starty + 2 * conf.diagramMarginY;\n const width = leftMargin + box.stopx + 2 * conf.diagramMarginX;\n configureSvgSize(diagram2, height, width, conf.useMaxWidth);\n diagram2.append(\"line\").attr(\"x1\", leftMargin).attr(\"y1\", conf.height * 4).attr(\"x2\", width - leftMargin - 4).attr(\"y2\", conf.height * 4).attr(\"stroke-width\", 4).attr(\"stroke\", \"black\").attr(\"marker-end\", \"url(#\" + id + \"-arrowhead)\");\n const extraVertForTitle = title ? 70 : 0;\n diagram2.attr(\"viewBox\", `${box.startx} -25 ${width} ${height + extraVertForTitle}`);\n diagram2.attr(\"preserveAspectRatio\", \"xMinYMin meet\");\n diagram2.attr(\"height\", height + extraVertForTitle + 25);\n}, \"draw\");\nvar bounds = {\n data: {\n startx: void 0,\n stopx: void 0,\n starty: void 0,\n stopy: void 0\n },\n verticalPos: 0,\n sequenceItems: [],\n init: /* @__PURE__ */ __name(function() {\n this.sequenceItems = [];\n this.data = {\n startx: void 0,\n stopx: void 0,\n starty: void 0,\n stopy: void 0\n };\n this.verticalPos = 0;\n }, \"init\"),\n updateVal: /* @__PURE__ */ __name(function(obj, key, val, fun) {\n if (obj[key] === void 0) {\n obj[key] = val;\n } else {\n obj[key] = fun(val, obj[key]);\n }\n }, \"updateVal\"),\n updateBounds: /* @__PURE__ */ __name(function(startx, starty, stopx, stopy) {\n const conf2 = getConfig().journey;\n const _self = this;\n let cnt = 0;\n function updateFn(type) {\n return /* @__PURE__ */ __name(function updateItemBounds(item) {\n cnt++;\n const n = _self.sequenceItems.length - cnt + 1;\n _self.updateVal(item, \"starty\", starty - n * conf2.boxMargin, Math.min);\n _self.updateVal(item, \"stopy\", stopy + n * conf2.boxMargin, Math.max);\n _self.updateVal(bounds.data, \"startx\", startx - n * conf2.boxMargin, Math.min);\n _self.updateVal(bounds.data, \"stopx\", stopx + n * conf2.boxMargin, Math.max);\n if (!(type === \"activation\")) {\n _self.updateVal(item, \"startx\", startx - n * conf2.boxMargin, Math.min);\n _self.updateVal(item, \"stopx\", stopx + n * conf2.boxMargin, Math.max);\n _self.updateVal(bounds.data, \"starty\", starty - n * conf2.boxMargin, Math.min);\n _self.updateVal(bounds.data, \"stopy\", stopy + n * conf2.boxMargin, Math.max);\n }\n }, \"updateItemBounds\");\n }\n __name(updateFn, \"updateFn\");\n this.sequenceItems.forEach(updateFn());\n }, \"updateBounds\"),\n insert: /* @__PURE__ */ __name(function(startx, starty, stopx, stopy) {\n const _startx = Math.min(startx, stopx);\n const _stopx = Math.max(startx, stopx);\n const _starty = Math.min(starty, stopy);\n const _stopy = Math.max(starty, stopy);\n this.updateVal(bounds.data, \"startx\", _startx, Math.min);\n this.updateVal(bounds.data, \"starty\", _starty, Math.min);\n this.updateVal(bounds.data, \"stopx\", _stopx, Math.max);\n this.updateVal(bounds.data, \"stopy\", _stopy, Math.max);\n this.updateBounds(_startx, _starty, _stopx, _stopy);\n }, \"insert\"),\n bumpVerticalPos: /* @__PURE__ */ __name(function(bump) {\n this.verticalPos = this.verticalPos + bump;\n this.data.stopy = this.verticalPos;\n }, \"bumpVerticalPos\"),\n getVerticalPos: /* @__PURE__ */ __name(function() {\n return this.verticalPos;\n }, \"getVerticalPos\"),\n getBounds: /* @__PURE__ */ __name(function() {\n return this.data;\n }, \"getBounds\")\n};\nvar fills = conf.sectionFills;\nvar textColours = conf.sectionColours;\nvar drawTasks = /* @__PURE__ */ __name(function(diagram2, tasks2, verticalPos, diagramId) {\n const conf2 = getConfig().journey;\n let lastSection = \"\";\n const sectionVHeight = conf2.height * 2 + conf2.diagramMarginY;\n const taskPos = verticalPos + sectionVHeight;\n let sectionNumber = 0;\n let fill = \"#CCC\";\n let colour = \"black\";\n let num = 0;\n for (const [i, task] of tasks2.entries()) {\n if (lastSection !== task.section) {\n fill = fills[sectionNumber % fills.length];\n num = sectionNumber % fills.length;\n colour = textColours[sectionNumber % textColours.length];\n let taskInSectionCount = 0;\n const currentSection2 = task.section;\n for (let taskIndex = i; taskIndex < tasks2.length; taskIndex++) {\n if (tasks2[taskIndex].section == currentSection2) {\n taskInSectionCount = taskInSectionCount + 1;\n } else {\n break;\n }\n }\n const section = {\n x: i * conf2.taskMargin + i * conf2.width + leftMargin,\n y: 50,\n text: task.section,\n fill,\n num,\n colour,\n taskCount: taskInSectionCount\n };\n svgDraw_default.drawSection(diagram2, section, conf2);\n lastSection = task.section;\n sectionNumber++;\n }\n const taskActors = task.people.reduce((acc, actorName) => {\n if (actors[actorName]) {\n acc[actorName] = actors[actorName];\n }\n return acc;\n }, {});\n task.x = i * conf2.taskMargin + i * conf2.width + leftMargin;\n task.y = taskPos;\n task.width = conf2.diagramMarginX;\n task.height = conf2.diagramMarginY;\n task.colour = colour;\n task.fill = fill;\n task.num = num;\n task.actors = taskActors;\n svgDraw_default.drawTask(diagram2, task, conf2, diagramId);\n bounds.insert(task.x, task.y, task.x + task.width + conf2.taskMargin, 300 + 5 * 30);\n }\n}, \"drawTasks\");\nvar journeyRenderer_default = {\n setConf,\n draw\n};\n\n// src/diagrams/user-journey/journeyDiagram.ts\nvar diagram = {\n parser: journey_default,\n db: journeyDb_default,\n renderer: journeyRenderer_default,\n styles: styles_default,\n init: /* @__PURE__ */ __name((cnf) => {\n journeyRenderer_default.setConf(cnf.journey);\n journeyDb_default.clear();\n }, \"init\")\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0],"mappings":"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"}