local-operator-ui 0.25.4 → 0.25.5

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 (69) hide show
  1. package/out/renderer/assets/{_basePickBy-BscwSWby.js → _basePickBy-CU6cbfV-.js} +1 -1
  2. package/out/renderer/assets/{_baseUniq-Bq8rIyPa.js → _baseUniq-3eW3-sWy.js} +1 -1
  3. package/out/renderer/assets/{agent-details-page-ivKhDvMP.js → agent-details-page-B9tJtnsB.js} +1 -1
  4. package/out/renderer/assets/{agent-hub-page-BRSfPpxs.js → agent-hub-page-DzfzgwPB.js} +1 -1
  5. package/out/renderer/assets/{agents-page-BXA50JQo.js → agents-page-BvOGxAAb.js} +2 -2
  6. package/out/renderer/assets/{arc-Cx6W8CnP.js → arc-2_87zcwb.js} +1 -1
  7. package/out/renderer/assets/{architectureDiagram-IEHRJDOE-CR83alnq.js → architectureDiagram-IEHRJDOE-Dfs7RsUV.js} +1 -1
  8. package/out/renderer/assets/{arrow-left-BXdcLSfZ.js → arrow-left-CcktVilP.js} +1 -1
  9. package/out/renderer/assets/{blockDiagram-JOT3LUYC-CH_Sgky8.js → blockDiagram-JOT3LUYC-DNwa0Hfv.js} +1 -1
  10. package/out/renderer/assets/{browser-page-CaEMXIlH.js → browser-page-CBufKj--.js} +1 -1
  11. package/out/renderer/assets/{c4Diagram-VJAJSXHY-BIRvs-yr.js → c4Diagram-VJAJSXHY-KeZkxF7Y.js} +1 -1
  12. package/out/renderer/assets/channel-D3Qk6DSD.js +1 -0
  13. package/out/renderer/assets/{chunk-4BMEZGHF-CtuKHark.js → chunk-4BMEZGHF-BTCRyTKZ.js} +1 -1
  14. package/out/renderer/assets/{chunk-A2AXSNBT-ik4IqtZy.js → chunk-A2AXSNBT-DLMWYufm.js} +1 -1
  15. package/out/renderer/assets/{chunk-AEK57VVT-Cf8NfeAY.js → chunk-AEK57VVT-DIOpHfUC.js} +1 -1
  16. package/out/renderer/assets/{chunk-D6G4REZN-B4p-ZLXS.js → chunk-D6G4REZN-3kvxiifv.js} +1 -1
  17. package/out/renderer/assets/{chunk-RZ5BOZE2-DV_xVoQ0.js → chunk-RZ5BOZE2-DNWczlot.js} +1 -1
  18. package/out/renderer/assets/{chunk-XZIHB7SX-CgjcsRC9.js → chunk-XZIHB7SX-x5aN2jja.js} +1 -1
  19. package/out/renderer/assets/classDiagram-GIVACNV2-SA9scKTw.js +1 -0
  20. package/out/renderer/assets/classDiagram-v2-COTLJTTW-SA9scKTw.js +1 -0
  21. package/out/renderer/assets/clone-Bl4GsLEn.js +1 -0
  22. package/out/renderer/assets/{compact-pagination-BCoT0aK3.js → compact-pagination-DKAy-IR2.js} +1 -1
  23. package/out/renderer/assets/{dagre-OKDRZEBW-DBOYFkWu.js → dagre-OKDRZEBW-CDUKiMzY.js} +1 -1
  24. package/out/renderer/assets/{diagram-SSKATNLV-C8g9Wvpq.js → diagram-SSKATNLV-B2kH_yx8.js} +1 -1
  25. package/out/renderer/assets/{diagram-VNBRO52H-Cl7yp4FL.js → diagram-VNBRO52H-jfKWU-Lm.js} +1 -1
  26. package/out/renderer/assets/{erDiagram-Q7BY3M3F-PxPe3xYX.js → erDiagram-Q7BY3M3F-7XQUHMG0.js} +1 -1
  27. package/out/renderer/assets/{flowDiagram-4HSFHLVR-D0aO2EhK.js → flowDiagram-4HSFHLVR-TzsaCK4n.js} +1 -1
  28. package/out/renderer/assets/{ganttDiagram-APWFNJXF-BZX_gpdM.js → ganttDiagram-APWFNJXF-yehmMRqe.js} +1 -1
  29. package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-ClWb2ZCI.js → gitGraphDiagram-7IBYFJ6S-BjJi9W8H.js} +1 -1
  30. package/out/renderer/assets/{graph-BryxOIX2.js → graph-qAJoLSKS.js} +1 -1
  31. package/out/renderer/assets/icon-DU3qS4xX.css +1 -0
  32. package/out/renderer/assets/{index-DEIco5bJ.js → index-B59GZTl_.js} +1 -1
  33. package/out/renderer/assets/{index-BTuayxaH.js → index-CRN0i7I1.js} +1 -1
  34. package/out/renderer/assets/{index-VRWRSi6M.js → index-Du_04xLY.js} +355 -355
  35. package/out/renderer/assets/{infoDiagram-PH2N3AL5-BiDkIP91.js → infoDiagram-PH2N3AL5--ktj13x4.js} +1 -1
  36. package/out/renderer/assets/{installer-HE4JP-jH.js → installer-B_gSn64f.js} +1 -1
  37. package/out/renderer/assets/{journeyDiagram-U35MCT3I-DTjHd4fx.js → journeyDiagram-U35MCT3I-BKVaP-gO.js} +1 -1
  38. package/out/renderer/assets/{kanban-definition-NDS4AKOZ-CPIgdRNX.js → kanban-definition-NDS4AKOZ-CeSOSCcU.js} +1 -1
  39. package/out/renderer/assets/{layout-CB_oT77J.js → layout-D2Cfz3aw.js} +1 -1
  40. package/out/renderer/assets/{legacy-agents-page-BvZyJkHI.js → legacy-agents-page-5_OwD2vD.js} +1 -1
  41. package/out/renderer/assets/{mermaid.core-B2I2nVa9.js → mermaid.core-DsqDVkGt.js} +5 -5
  42. package/out/renderer/assets/{mindmap-definition-ALO5MXBD-B6m31dk_.js → mindmap-definition-ALO5MXBD-cXlbqLJn.js} +1 -1
  43. package/out/renderer/assets/{page-header-CnUxH87U.js → page-header-ehyv1ujj.js} +1 -1
  44. package/out/renderer/assets/{parseISO-BOZv8_4d.js → parseISO-CHtHZJU3.js} +1 -1
  45. package/out/renderer/assets/{pieDiagram-IB7DONF6-DeLePplT.js → pieDiagram-IB7DONF6-BnYWJ3Cc.js} +1 -1
  46. package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-b2v7KRRc.js → quadrantDiagram-7GDLP6J5-DzGWwKDC.js} +1 -1
  47. package/out/renderer/assets/{radar-MK3ICKWK-C0H2uwS9.js → radar-MK3ICKWK-Cz8qP9DC.js} +1 -1
  48. package/out/renderer/assets/{radient-auth-buttons-BN4fSCna.js → radient-auth-buttons-mhEV8xEj.js} +1 -1
  49. package/out/renderer/assets/{requirementDiagram-KVF5MWMF-UGyKyosM.js → requirementDiagram-KVF5MWMF-Cx-mDTR6.js} +1 -1
  50. package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-DO0G1fuX.js → sankeyDiagram-QLVOVGJD-Bc1DOPhd.js} +1 -1
  51. package/out/renderer/assets/{schedules-page-qLOZGthc.js → schedules-page-DWV64xxK.js} +1 -1
  52. package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-DqNUq_s9.js → sequenceDiagram-X6HHIX6F-CIN-8sm7.js} +1 -1
  53. package/out/renderer/assets/{settings-page-CnLe3mD3.js → settings-page-vtL6TaYz.js} +1 -1
  54. package/out/renderer/assets/{shield-check-DSW4Iuaq.js → shield-check-Biv7u3YI.js} +1 -1
  55. package/out/renderer/assets/{stateDiagram-DGXRK772-CkMy0-06.js → stateDiagram-DGXRK772-DVmGEm-f.js} +1 -1
  56. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-Cr8PVgPH.js +1 -0
  57. package/out/renderer/assets/{timeline-definition-BDJGKUSR-BjhWtqSr.js → timeline-definition-BDJGKUSR-B1LptBCI.js} +1 -1
  58. package/out/renderer/assets/{use-agent-like-mutation-BDJB8L39.js → use-agent-like-mutation-HFVpi3nG.js} +1 -1
  59. package/out/renderer/assets/{xychartDiagram-VJFVF3MP-DhzgBoNG.js → xychartDiagram-VJFVF3MP-CB_p7m3M.js} +1 -1
  60. package/out/renderer/index.html +3 -3
  61. package/out/renderer/installer.html +4 -4
  62. package/package.json +2 -2
  63. package/out/renderer/assets/channel-DosNkcuk.js +0 -1
  64. package/out/renderer/assets/classDiagram-GIVACNV2-BeGl3Rsy.js +0 -1
  65. package/out/renderer/assets/classDiagram-v2-COTLJTTW-BeGl3Rsy.js +0 -1
  66. package/out/renderer/assets/clone-DwbOGjM3.js +0 -1
  67. package/out/renderer/assets/icon-CsnByQOh.css +0 -1
  68. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-BxgmWEB3.js +0 -1
  69. /package/out/renderer/assets/{icon-DAf2pA-P.js → icon-hwUlaPPO.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{a as o}from"./icon-DAf2pA-P.js";/**
1
+ import{a as o}from"./icon-hwUlaPPO.js";/**
2
2
  * @license lucide-react v0.507.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{_ as d,G as rt,d as O,e as oe,l as L,z as he,B as de,c as R,a3 as ge,a4 as j,a5 as Wt,a6 as ue,u as $,k as pe,a7 as fe,a8 as xt,a9 as xe,i as Tt}from"./mermaid.core-B2I2nVa9.js";import{c as ye}from"./clone-DwbOGjM3.js";import{G as be}from"./graph-BryxOIX2.js";import{c as we}from"./channel-DosNkcuk.js";import{E as me,F as Le}from"./index-VRWRSi6M.js";import"./icon-DAf2pA-P.js";import"./_baseUniq-Bq8rIyPa.js";var yt=function(){var e=d(function(D,y,g,f){for(g=g||{},f=D.length;f--;g[D[f]]=y);return g},"o"),t=[1,7],s=[1,13],n=[1,14],i=[1,15],r=[1,19],a=[1,16],l=[1,17],c=[1,18],u=[8,30],h=[8,21,28,29,30,31,32,40,44,47],x=[1,23],w=[1,24],b=[8,15,16,21,28,29,30,31,32,40,44,47],S=[8,15,16,21,27,28,29,30,31,32,40,44,47],E=[1,49],k={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:d(function(y,g,f,m,v,o,W){var p=o.length-1;switch(v){case 4:m.getLogger().debug("Rule: separator (NL) ");break;case 5:m.getLogger().debug("Rule: separator (Space) ");break;case 6:m.getLogger().debug("Rule: separator (EOF) ");break;case 7:m.getLogger().debug("Rule: hierarchy: ",o[p-1]),m.setHierarchy(o[p-1]);break;case 8:m.getLogger().debug("Stop NL ");break;case 9:m.getLogger().debug("Stop EOF ");break;case 10:m.getLogger().debug("Stop NL2 ");break;case 11:m.getLogger().debug("Stop EOF2 ");break;case 12:m.getLogger().debug("Rule: statement: ",o[p]),typeof o[p].length=="number"?this.$=o[p]:this.$=[o[p]];break;case 13:m.getLogger().debug("Rule: statement #2: ",o[p-1]),this.$=[o[p-1]].concat(o[p]);break;case 14:m.getLogger().debug("Rule: link: ",o[p],y),this.$={edgeTypeStr:o[p],label:""};break;case 15:m.getLogger().debug("Rule: LABEL link: ",o[p-3],o[p-1],o[p]),this.$={edgeTypeStr:o[p],label:o[p-1]};break;case 18:const I=parseInt(o[p]),Z=m.generateId();this.$={id:Z,type:"space",label:"",width:I,children:[]};break;case 23:m.getLogger().debug("Rule: (nodeStatement link node) ",o[p-2],o[p-1],o[p]," typestr: ",o[p-1].edgeTypeStr);const V=m.edgeStrToEdgeData(o[p-1].edgeTypeStr);this.$=[{id:o[p-2].id,label:o[p-2].label,type:o[p-2].type,directions:o[p-2].directions},{id:o[p-2].id+"-"+o[p].id,start:o[p-2].id,end:o[p].id,label:o[p-1].label,type:"edge",directions:o[p].directions,arrowTypeEnd:V,arrowTypeStart:"arrow_open"},{id:o[p].id,label:o[p].label,type:m.typeStr2Type(o[p].typeStr),directions:o[p].directions}];break;case 24:m.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[p-1],o[p]),this.$={id:o[p-1].id,label:o[p-1].label,type:m.typeStr2Type(o[p-1].typeStr),directions:o[p-1].directions,widthInColumns:parseInt(o[p],10)};break;case 25:m.getLogger().debug("Rule: nodeStatement (node) ",o[p]),this.$={id:o[p].id,label:o[p].label,type:m.typeStr2Type(o[p].typeStr),directions:o[p].directions,widthInColumns:1};break;case 26:m.getLogger().debug("APA123",this?this:"na"),m.getLogger().debug("COLUMNS: ",o[p]),this.$={type:"column-setting",columns:o[p]==="auto"?-1:parseInt(o[p])};break;case 27:m.getLogger().debug("Rule: id-block statement : ",o[p-2],o[p-1]),m.generateId(),this.$={...o[p-2],type:"composite",children:o[p-1]};break;case 28:m.getLogger().debug("Rule: blockStatement : ",o[p-2],o[p-1],o[p]);const at=m.generateId();this.$={id:at,type:"composite",label:"",children:o[p-1]};break;case 29:m.getLogger().debug("Rule: node (NODE_ID separator): ",o[p]),this.$={id:o[p]};break;case 30:m.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[p-1],o[p]),this.$={id:o[p-1],label:o[p].label,typeStr:o[p].typeStr,directions:o[p].directions};break;case 31:m.getLogger().debug("Rule: dirList: ",o[p]),this.$=[o[p]];break;case 32:m.getLogger().debug("Rule: dirList: ",o[p-1],o[p]),this.$=[o[p-1]].concat(o[p]);break;case 33:m.getLogger().debug("Rule: nodeShapeNLabel: ",o[p-2],o[p-1],o[p]),this.$={typeStr:o[p-2]+o[p],label:o[p-1]};break;case 34:m.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[p-3],o[p-2]," #3:",o[p-1],o[p]),this.$={typeStr:o[p-3]+o[p],label:o[p-2],directions:o[p-1]};break;case 35:case 36:this.$={type:"classDef",id:o[p-1].trim(),css:o[p].trim()};break;case 37:this.$={type:"applyClass",id:o[p-1].trim(),styleClass:o[p].trim()};break;case 38:this.$={type:"applyStyles",id:o[p-1].trim(),stylesStr:o[p].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{8:[1,20]},e(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:s,29:n,31:i,32:r,40:a,44:l,47:c}),e(h,[2,16],{14:22,15:x,16:w}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(b,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,32:r},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(S,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(u,[2,13]),{26:35,32:r},{32:[2,14]},{17:[1,36]},e(b,[2,24]),{11:37,13:4,14:22,15:x,16:w,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(S,[2,30]),{18:[1,43]},{18:[1,44]},e(b,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{37:[1,47]},{34:48,35:E},{15:[1,50]},e(h,[2,27]),e(S,[2,33]),{39:[1,51]},{34:52,35:E,39:[2,31]},{32:[2,15]},e(S,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:d(function(y,g){if(g.recoverable)this.trace(y);else{var f=new Error(y);throw f.hash=g,f}},"parseError"),parse:d(function(y){var g=this,f=[0],m=[],v=[null],o=[],W=this.table,p="",I=0,Z=0,V=2,at=1,ne=o.slice.call(arguments,1),z=Object.create(this.lexer),q={yy:{}};for(var gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gt)&&(q.yy[gt]=this.yy[gt]);z.setInput(y,q.yy),q.yy.lexer=z,q.yy.parser=this,typeof z.yylloc>"u"&&(z.yylloc={});var ut=z.yylloc;o.push(ut);var le=z.options&&z.options.ranges;typeof q.yy.parseError=="function"?this.parseError=q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ce(P){f.length=f.length-2*P,v.length=v.length-P,o.length=o.length-P}d(ce,"popStack");function Dt(){var P;return P=m.pop()||z.lex()||at,typeof P!="number"&&(P instanceof Array&&(m=P,P=m.pop()),P=g.symbols_[P]||P),P}d(Dt,"lex");for(var F,J,H,pt,Q={},st,G,Nt,it;;){if(J=f[f.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((F===null||typeof F>"u")&&(F=Dt()),H=W[J]&&W[J][F]),typeof H>"u"||!H.length||!H[0]){var ft="";it=[];for(st in W[J])this.terminals_[st]&&st>V&&it.push("'"+this.terminals_[st]+"'");z.showPosition?ft="Parse error on line "+(I+1)+`:
1
+ import{_ as d,G as rt,d as O,e as oe,l as L,z as he,B as de,c as R,a3 as ge,a4 as j,a5 as Wt,a6 as ue,u as $,k as pe,a7 as fe,a8 as xt,a9 as xe,i as Tt}from"./mermaid.core-DsqDVkGt.js";import{c as ye}from"./clone-Bl4GsLEn.js";import{G as be}from"./graph-qAJoLSKS.js";import{c as we}from"./channel-D3Qk6DSD.js";import{E as me,F as Le}from"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";import"./_baseUniq-3eW3-sWy.js";var yt=function(){var e=d(function(D,y,g,f){for(g=g||{},f=D.length;f--;g[D[f]]=y);return g},"o"),t=[1,7],s=[1,13],n=[1,14],i=[1,15],r=[1,19],a=[1,16],l=[1,17],c=[1,18],u=[8,30],h=[8,21,28,29,30,31,32,40,44,47],x=[1,23],w=[1,24],b=[8,15,16,21,28,29,30,31,32,40,44,47],S=[8,15,16,21,27,28,29,30,31,32,40,44,47],E=[1,49],k={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,block:31,NODE_ID:32,nodeShapeNLabel:33,dirList:34,DIR:35,NODE_DSTART:36,NODE_DEND:37,BLOCK_ARROW_START:38,BLOCK_ARROW_END:39,classDef:40,CLASSDEF_ID:41,CLASSDEF_STYLEOPTS:42,DEFAULT:43,class:44,CLASSENTITY_IDS:45,STYLECLASS:46,style:47,STYLE_ENTITY_IDS:48,STYLE_DEFINITION_DATA:49,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"block",32:"NODE_ID",35:"DIR",36:"NODE_DSTART",37:"NODE_DEND",38:"BLOCK_ARROW_START",39:"BLOCK_ARROW_END",40:"classDef",41:"CLASSDEF_ID",42:"CLASSDEF_STYLEOPTS",43:"DEFAULT",44:"class",45:"CLASSENTITY_IDS",46:"STYLECLASS",47:"style",48:"STYLE_ENTITY_IDS",49:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[34,1],[34,2],[33,3],[33,4],[23,3],[23,3],[24,3],[25,3]],performAction:d(function(y,g,f,m,v,o,W){var p=o.length-1;switch(v){case 4:m.getLogger().debug("Rule: separator (NL) ");break;case 5:m.getLogger().debug("Rule: separator (Space) ");break;case 6:m.getLogger().debug("Rule: separator (EOF) ");break;case 7:m.getLogger().debug("Rule: hierarchy: ",o[p-1]),m.setHierarchy(o[p-1]);break;case 8:m.getLogger().debug("Stop NL ");break;case 9:m.getLogger().debug("Stop EOF ");break;case 10:m.getLogger().debug("Stop NL2 ");break;case 11:m.getLogger().debug("Stop EOF2 ");break;case 12:m.getLogger().debug("Rule: statement: ",o[p]),typeof o[p].length=="number"?this.$=o[p]:this.$=[o[p]];break;case 13:m.getLogger().debug("Rule: statement #2: ",o[p-1]),this.$=[o[p-1]].concat(o[p]);break;case 14:m.getLogger().debug("Rule: link: ",o[p],y),this.$={edgeTypeStr:o[p],label:""};break;case 15:m.getLogger().debug("Rule: LABEL link: ",o[p-3],o[p-1],o[p]),this.$={edgeTypeStr:o[p],label:o[p-1]};break;case 18:const I=parseInt(o[p]),Z=m.generateId();this.$={id:Z,type:"space",label:"",width:I,children:[]};break;case 23:m.getLogger().debug("Rule: (nodeStatement link node) ",o[p-2],o[p-1],o[p]," typestr: ",o[p-1].edgeTypeStr);const V=m.edgeStrToEdgeData(o[p-1].edgeTypeStr);this.$=[{id:o[p-2].id,label:o[p-2].label,type:o[p-2].type,directions:o[p-2].directions},{id:o[p-2].id+"-"+o[p].id,start:o[p-2].id,end:o[p].id,label:o[p-1].label,type:"edge",directions:o[p].directions,arrowTypeEnd:V,arrowTypeStart:"arrow_open"},{id:o[p].id,label:o[p].label,type:m.typeStr2Type(o[p].typeStr),directions:o[p].directions}];break;case 24:m.getLogger().debug("Rule: nodeStatement (abc88 node size) ",o[p-1],o[p]),this.$={id:o[p-1].id,label:o[p-1].label,type:m.typeStr2Type(o[p-1].typeStr),directions:o[p-1].directions,widthInColumns:parseInt(o[p],10)};break;case 25:m.getLogger().debug("Rule: nodeStatement (node) ",o[p]),this.$={id:o[p].id,label:o[p].label,type:m.typeStr2Type(o[p].typeStr),directions:o[p].directions,widthInColumns:1};break;case 26:m.getLogger().debug("APA123",this?this:"na"),m.getLogger().debug("COLUMNS: ",o[p]),this.$={type:"column-setting",columns:o[p]==="auto"?-1:parseInt(o[p])};break;case 27:m.getLogger().debug("Rule: id-block statement : ",o[p-2],o[p-1]),m.generateId(),this.$={...o[p-2],type:"composite",children:o[p-1]};break;case 28:m.getLogger().debug("Rule: blockStatement : ",o[p-2],o[p-1],o[p]);const at=m.generateId();this.$={id:at,type:"composite",label:"",children:o[p-1]};break;case 29:m.getLogger().debug("Rule: node (NODE_ID separator): ",o[p]),this.$={id:o[p]};break;case 30:m.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",o[p-1],o[p]),this.$={id:o[p-1],label:o[p].label,typeStr:o[p].typeStr,directions:o[p].directions};break;case 31:m.getLogger().debug("Rule: dirList: ",o[p]),this.$=[o[p]];break;case 32:m.getLogger().debug("Rule: dirList: ",o[p-1],o[p]),this.$=[o[p-1]].concat(o[p]);break;case 33:m.getLogger().debug("Rule: nodeShapeNLabel: ",o[p-2],o[p-1],o[p]),this.$={typeStr:o[p-2]+o[p],label:o[p-1]};break;case 34:m.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",o[p-3],o[p-2]," #3:",o[p-1],o[p]),this.$={typeStr:o[p-3]+o[p],label:o[p-2],directions:o[p-1]};break;case 35:case 36:this.$={type:"classDef",id:o[p-1].trim(),css:o[p].trim()};break;case 37:this.$={type:"applyClass",id:o[p-1].trim(),styleClass:o[p].trim()};break;case 38:this.$={type:"applyStyles",id:o[p-1].trim(),stylesStr:o[p].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{8:[1,20]},e(u,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,21:t,28:s,29:n,31:i,32:r,40:a,44:l,47:c}),e(h,[2,16],{14:22,15:x,16:w}),e(h,[2,17]),e(h,[2,18]),e(h,[2,19]),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(b,[2,25],{27:[1,25]}),e(h,[2,26]),{19:26,26:12,32:r},{11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{41:[1,28],43:[1,29]},{45:[1,30]},{48:[1,31]},e(S,[2,29],{33:32,36:[1,33],38:[1,34]}),{1:[2,7]},e(u,[2,13]),{26:35,32:r},{32:[2,14]},{17:[1,36]},e(b,[2,24]),{11:37,13:4,14:22,15:x,16:w,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:s,29:n,31:i,32:r,40:a,44:l,47:c},{30:[1,38]},{42:[1,39]},{42:[1,40]},{46:[1,41]},{49:[1,42]},e(S,[2,30]),{18:[1,43]},{18:[1,44]},e(b,[2,23]),{18:[1,45]},{30:[1,46]},e(h,[2,28]),e(h,[2,35]),e(h,[2,36]),e(h,[2,37]),e(h,[2,38]),{37:[1,47]},{34:48,35:E},{15:[1,50]},e(h,[2,27]),e(S,[2,33]),{39:[1,51]},{34:52,35:E,39:[2,31]},{32:[2,15]},e(S,[2,34]),{39:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:d(function(y,g){if(g.recoverable)this.trace(y);else{var f=new Error(y);throw f.hash=g,f}},"parseError"),parse:d(function(y){var g=this,f=[0],m=[],v=[null],o=[],W=this.table,p="",I=0,Z=0,V=2,at=1,ne=o.slice.call(arguments,1),z=Object.create(this.lexer),q={yy:{}};for(var gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,gt)&&(q.yy[gt]=this.yy[gt]);z.setInput(y,q.yy),q.yy.lexer=z,q.yy.parser=this,typeof z.yylloc>"u"&&(z.yylloc={});var ut=z.yylloc;o.push(ut);var le=z.options&&z.options.ranges;typeof q.yy.parseError=="function"?this.parseError=q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ce(P){f.length=f.length-2*P,v.length=v.length-P,o.length=o.length-P}d(ce,"popStack");function Dt(){var P;return P=m.pop()||z.lex()||at,typeof P!="number"&&(P instanceof Array&&(m=P,P=m.pop()),P=g.symbols_[P]||P),P}d(Dt,"lex");for(var F,J,H,pt,Q={},st,G,Nt,it;;){if(J=f[f.length-1],this.defaultActions[J]?H=this.defaultActions[J]:((F===null||typeof F>"u")&&(F=Dt()),H=W[J]&&W[J][F]),typeof H>"u"||!H.length||!H[0]){var ft="";it=[];for(st in W[J])this.terminals_[st]&&st>V&&it.push("'"+this.terminals_[st]+"'");z.showPosition?ft="Parse error on line "+(I+1)+`:
2
2
  `+z.showPosition()+`
3
3
  Expecting `+it.join(", ")+", got '"+(this.terminals_[F]||F)+"'":ft="Parse error on line "+(I+1)+": Unexpected "+(F==at?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(ft,{text:z.match,token:this.terminals_[F]||F,line:z.yylineno,loc:ut,expected:it})}if(H[0]instanceof Array&&H.length>1)throw new Error("Parse Error: multiple actions possible at state: "+J+", token: "+F);switch(H[0]){case 1:f.push(F),v.push(z.yytext),o.push(z.yylloc),f.push(H[1]),F=null,Z=z.yyleng,p=z.yytext,I=z.yylineno,ut=z.yylloc;break;case 2:if(G=this.productions_[H[1]][1],Q.$=v[v.length-G],Q._$={first_line:o[o.length-(G||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(G||1)].first_column,last_column:o[o.length-1].last_column},le&&(Q._$.range=[o[o.length-(G||1)].range[0],o[o.length-1].range[1]]),pt=this.performAction.apply(Q,[p,Z,I,q.yy,H[1],v,o].concat(ne)),typeof pt<"u")return pt;G&&(f=f.slice(0,-1*G*2),v=v.slice(0,-1*G),o=o.slice(0,-1*G)),f.push(this.productions_[H[1]][0]),v.push(Q.$),o.push(Q._$),Nt=W[f[f.length-2]][f[f.length-1]],f.push(Nt);break;case 3:return!0}}return!0},"parse")},B=function(){var D={EOF:1,parseError:d(function(g,f){if(this.yy.parser)this.yy.parser.parseError(g,f);else throw new Error(g)},"parseError"),setInput:d(function(y,g){return this.yy=g||this.yy||{},this._input=y,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:d(function(){var y=this._input[0];this.yytext+=y,this.yyleng++,this.offset++,this.match+=y,this.matched+=y;var g=y.match(/(?:\r\n?|\n).*/g);return g?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),y},"input"),unput:d(function(y){var g=y.length,f=y.split(/(?:\r\n?|\n)/g);this._input=y+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-g),this.offset-=g;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var v=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===m.length?this.yylloc.first_column:0)+m[m.length-f.length].length-f[0].length:this.yylloc.first_column-g},this.options.ranges&&(this.yylloc.range=[v[0],v[0]+this.yyleng-g]),this.yyleng=this.yytext.length,this},"unput"),more:d(function(){return this._more=!0,this},"more"),reject:d(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:d(function(y){this.unput(this.match.slice(y))},"less"),pastInput:d(function(){var y=this.matched.substr(0,this.matched.length-this.match.length);return(y.length>20?"...":"")+y.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:d(function(){var y=this.match;return y.length<20&&(y+=this._input.substr(0,20-y.length)),(y.substr(0,20)+(y.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:d(function(){var y=this.pastInput(),g=new Array(y.length+1).join("-");return y+this.upcomingInput()+`
@@ -1 +1 @@
1
- import{r as o,j as e,B as l,S as P,L as q,h as G,i as W,k as Y,l as X,m as K,n as V,o as Q,p as J,q as Z,s as ee,t as te,b as se,c as M,D as ae,u as ne,v as re,w as E,g as T,X as z,R as U,I as ie,x as oe,y as le,z as ce}from"./icon-DAf2pA-P.js";import{i as O,aO as de,aL as he,aP as ue,P as me,B as xe,aQ as I,aR as pe,aS as ge,aT as be,aU as ve}from"./index-VRWRSi6M.js";import{S as we}from"./shield-check-DSW4Iuaq.js";import{A as fe}from"./arrow-left-BXdcLSfZ.js";function S(){return window.api?.browser??null}function je(){return S()!==null}function A(t){S()?.setContentRect(t).catch(()=>{})}function ke(){const[t,i]=o.useState(null),[c,u]=o.useState(null),[g,h]=o.useState(null),[b,m]=o.useState(null),f=je(),a=g??c,v=o.useCallback(async()=>{const n=S();if(n)try{const w=await n.state();w&&Array.isArray(w.tabs)&&(i(w),u(null),w.url&&w.url!=="about:blank"&&m(null))}catch(w){u(_(w))}},[]);o.useEffect(()=>{if(!f)return;v();const n=window.api?.browser;if(!n)return;const w=n.onStateChanged(()=>void v()),j=n.onConsentChanged(()=>void v());return()=>{w(),j()}},[f,v]);const r=o.useCallback(async n=>{try{await n(),h(null)}catch(w){h(_(w))}await v()},[v]),d=o.useCallback(()=>{h(null),u(null)},[]),x=o.useRef(null),N=o.useRef(null),k=o.useCallback(n=>{if(n===null){x.current!==null&&(cancelAnimationFrame(x.current),x.current=null),N.current=null,A(null);return}N.current=n,x.current===null&&(x.current=requestAnimationFrame(()=>{x.current=null,A(N.current)}))},[]);o.useEffect(()=>()=>{x.current!==null&&cancelAnimationFrame(x.current),A(null)},[]);const C=o.useCallback(n=>{S()?.setViewVisible(n).catch(()=>{})},[]),p=S();return o.useMemo(()=>({state:t,pendingUrl:b,error:a,dismissError:d,available:f,refresh:v,newTab:()=>r(()=>p?.newTab()),closeTab:n=>r(()=>p?.closeTab(n)),activateTab:n=>r(()=>p?.activateTab(n)),navigate:n=>(m(n),r(()=>p?.navigate(n))),reload:()=>r(()=>p?.reload()),stop:()=>r(()=>p?.stop()),history:n=>r(()=>p?.history(n)),setContentRect:k,setViewVisible:C,respondToConsent:(n,w)=>r(()=>p?.respondToConsent(n,w)),handOver:(n,w)=>r(()=>p?.handOver(n,w)),revokeHandOver:n=>r(()=>p?.revokeHandOver(n)),revokeApproval:n=>r(()=>p?.revokeApproval(n)),revokeAllApprovals:()=>r(()=>p?.revokeAllApprovals()),forgetSite:n=>r(()=>p?.forgetSite(n)),clearData:n=>r(()=>p?.clearData(n))}),[t,b,a,d,f,v,r,k,C,p])}const Ne=/^Error invoking remote method '[^']+':\s*/;function _(t){return(t instanceof Error?t.message:String(t)).replace(Ne,"").trim()}function ye(t,i){if(!t)return"An agent";const c=i.find(u=>u.session_id===t)?.title;return c?.trim()?`The agent in '${c.trim()}'`:`The agent in conversation ${t}`}const Ce=({pending:t,waitingBehind:i,busy:c,onDecide:u})=>{const g=O(m=>m.sessions),h=ye(t.requesterSessionId,g),b=m=>u(t.entryId,m);return e.jsxs("section",{className:"flex flex-col gap-2 border-control border-b bg-surface px-3 py-2","aria-label":"Site approval request","data-tour-tag":"browser-consent-bar",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(de,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-warning"}),e.jsxs("div",{className:"min-w-0 grow",children:[e.jsxs("p",{className:"text-body text-ink","data-tour-tag":"browser-consent-who",children:[h," wants to open"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:t.authority}),"."]}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"This browser keeps sign-ins across conversations and app restarts, so an agent you approve here can use those signed-in accounts on the sites you allow it. You can open this site yourself either way — this only controls what the agent may reach."})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2 pl-6",children:[e.jsx(l,{variant:"primary",size:"sm",disabled:c,onClick:()=>b("once"),"data-tour-tag":"browser-consent-once",children:"Allow once"}),e.jsx(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("session"),"data-tour-tag":"browser-consent-session",children:"Allow until the app quits"}),e.jsx(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("site"),"data-tour-tag":"browser-consent-site",children:"Always allow this site"}),t.broad&&e.jsxs(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("domain"),"data-tour-tag":"browser-consent-domain",children:["Allow all of ",t.broad.key]}),e.jsx(l,{variant:"ghost",size:"sm",disabled:c,onClick:()=>b("deny"),"data-tour-tag":"browser-consent-deny",children:"Don't allow"}),c&&e.jsxs("span",{className:"flex items-center gap-1.5 text-meta text-ink-muted","data-tour-tag":"browser-consent-busy",children:[e.jsx(P,{size:"sm"}),"Recording your choice…"]})]}),e.jsxs("dl",{className:"ml-6 grid grid-cols-[max-content_1fr] gap-x-4 gap-y-0.5 text-meta text-ink-dim","data-tour-tag":"browser-consent-scopes",children:[e.jsx("dt",{className:"text-ink-muted",children:"Allow once"}),e.jsx("dd",{children:"one navigation, for that conversation, up to ten minutes"}),e.jsx("dt",{className:"text-ink-muted",children:"Allow until the app quits"}),e.jsx("dd",{children:"this site, for this run only, and for every conversation"}),e.jsx("dt",{className:"text-ink-muted",children:"Always allow this site"}),e.jsx("dd",{children:"kept until you revoke it, and shared with every conversation"}),t.broad&&e.jsxs(e.Fragment,{children:[e.jsxs("dt",{className:"text-ink-muted",children:["Allow all of ",t.broad.key]}),e.jsxs("dd",{children:["every site under ",t.broad.key,", kept until you revoke it, shared with every conversation"]})]}),e.jsx("dt",{className:"text-ink-muted",children:"Don't allow"}),e.jsx("dd",{children:"the agent stops asking about this site until you revoke the denial in Sites"})]}),i>0&&e.jsx("p",{className:"ml-6 text-meta text-ink-dim",children:i===1?"One other request is waiting.":`${i} other requests are waiting.`})]})},Te=({open:t,tab:i,busy:c,onClose:u,onConfirm:g})=>{const h=O(a=>a.sessions),b=O(a=>a.fetchSessions),[m,f]=o.useState("");return o.useEffect(()=>{t&&b()},[t,b]),o.useEffect(()=>{t||f("")},[t]),e.jsx(he,{open:t,onClose:u,title:"Let an agent use this tab",dataTourTag:"browser-hand-over-dialog",actions:e.jsxs(e.Fragment,{children:[e.jsx(l,{variant:"ghost",size:"sm",onClick:u,children:"Cancel"}),e.jsx(l,{variant:"primary",size:"sm",disabled:c||!m||!i,onClick:()=>{i&&m&&g(i.tabId,m)},"data-tour-tag":"browser-hand-over-confirm",children:"Hand over"})]}),children:e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsx("p",{className:"text-body text-ink-muted",children:"The agent can use this tab — and only reach sites you have approved. Both gates apply, so handing this tab over does not approve the site it is showing."}),i&&e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink-dim",children:i.title}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx(q,{htmlFor:"browser-hand-over-session",children:"Session"}),e.jsxs(G,{value:m,onValueChange:f,children:[e.jsx(W,{id:"browser-hand-over-session","data-tour-tag":"browser-hand-over-session",children:e.jsx(Y,{placeholder:"Choose a session"})}),e.jsx(X,{children:h.map(a=>e.jsx(K,{value:a.session_id,children:a.title||a.session_id},a.session_id))})]}),h.length===0&&e.jsx("p",{className:"text-meta text-ink-dim",children:"No session is available yet. Start one in chat, then hand the tab over."})]})]})})},Se={ERR_NAME_NOT_RESOLVED:"That address does not resolve. Check the spelling.",ERR_CONNECTION_REFUSED:"The site refused the connection. It may be down, or refusing this app.",ERR_CONNECTION_TIMED_OUT:"The site did not answer in time.",ERR_EMPTY_RESPONSE:"The site closed the connection without sending a response.",ERR_CONNECTION_RESET:"The connection was reset before the page arrived.",ERR_INTERNET_DISCONNECTED:"This machine is not connected to the network.",ERR_ADDRESS_UNREACHABLE:"That address is not reachable from this machine.",ERR_CERT_DATE_INVALID:"The site's certificate has expired or is not yet valid.",ERR_CERT_AUTHORITY_INVALID:"The site's certificate is not from an authority this app trusts.",ERR_SSL_PROTOCOL_ERROR:"The secure connection could not be established."};function Re(t){return Se[t]??"The page could not be loaded."}const Ee=({failure:t,onRetry:i})=>e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-6 text-center","data-tour-tag":"browser-load-failure",children:[e.jsx(V,{"aria-hidden":!0,className:"size-6 text-warning"}),e.jsx("p",{className:"text-title text-ink",children:"Couldn't load this page"}),e.jsxs("p",{className:"max-w-lg text-body-sm text-ink-muted",children:[Re(t.description)," Try again, or correct the address in the bar above — it is still yours to edit."]}),e.jsxs("p",{className:"max-w-lg truncate font-mono text-mono-sm text-ink-dim",title:t.url,children:[t.description," ",t.url]}),e.jsx(l,{variant:"primary",size:"sm",onClick:i,"data-tour-tag":"browser-load-failure-retry",children:"Try again"})]}),ze={origin:"This site",domain:"Whole domain",host:"This host",deny:"Denied",session:"This session only"};function L(t){return t?new Date(t).toLocaleString():""}const Ae=({open:t,onOpenChange:i,approvals:c,currentOrigin:u,busy:g,onRevoke:h,onRevokeAll:b,onForgetSite:m,onClearData:f})=>{const a=c.filter(r=>r.scope!=="deny"),v=c.filter(r=>r.scope==="deny");return e.jsx(Q,{open:t,onOpenChange:i,children:e.jsxs(J,{side:"right",className:"w-96 overflow-y-auto","data-tour-tag":"browser-sites-sheet",children:[e.jsxs(Z,{children:[e.jsx(ee,{children:"Sites agents can act on as you"}),e.jsx(te,{children:"Approvals are kept per origin and are separate from cookies. Revoking one does not sign you out; clearing cookies does not restore a denial. This app's browser keeps its sign-ins across conversations and app restarts, and an approval here applies to every conversation — not only the one that asked."})]}),e.jsxs("div",{className:"mt-4 flex items-start gap-2 rounded-sm bg-accent-wash px-3 py-2","data-tour-tag":"browser-agents-notice",children:[e.jsx(we,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-ink"}),e.jsx("p",{className:"text-body-sm text-ink",children:"Agents can drive tabs in this app. Each site below was approved by a click in this window, and none of them can be reached without one."})]}),e.jsxs("section",{className:"mt-5","aria-label":"Approved sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Approved"}),a.length===0?e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"No site is approved yet. The agent will ask the first time it needs one."}):e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:a.map(r=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink",children:r.origin}),e.jsxs("p",{className:"text-meta text-ink-dim",children:[ze[r.scope],L(r.grantedAt)?` · ${L(r.grantedAt)}`:""]})]}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>h(r.origin),"data-tour-tag":"browser-revoke-approval",children:"Revoke"})]},`${r.scope}:${r.origin}`))}),a.length>0&&e.jsx(l,{variant:"ghost",size:"sm",className:"mt-3",disabled:g,onClick:b,"data-tour-tag":"browser-revoke-all",children:"Revoke all site approvals"})]}),v.length>0&&e.jsxs("section",{className:"mt-5","aria-label":"Denied sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Denied"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The agent stops asking about these. Revoking a denial lets it ask again."}),e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:v.map(r=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsx("p",{className:"min-w-0 truncate font-mono text-mono-sm text-ink",children:r.origin}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>h(r.origin),children:"Revoke"})]},`${r.scope}:${r.origin}`))})]}),u&&e.jsxs("section",{className:"mt-5","aria-label":"Current site",children:[e.jsx("h3",{className:"text-heading text-ink",children:"This site"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The page the active tab is on right now."}),e.jsx("p",{className:"mt-2 truncate font-mono text-mono-sm text-ink",children:u}),e.jsx(l,{variant:"danger",size:"sm",className:"mt-3",disabled:g,onClick:()=>m(u),"data-tour-tag":"browser-forget-site",children:"Forget this site"}),e.jsx("p",{className:"mt-1 text-meta text-ink-dim",children:"Revokes any approval for it and clears what this app stored for it. It does not touch your real browser's data."})]}),e.jsx(se,{className:"my-5"}),e.jsxs("section",{"aria-label":"Browsing data",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Browsing data"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"These clear what this app's browser profile stored. They do not change which sites the agent may reach — that is the list above."}),e.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("cookies"),"data-tour-tag":"browser-clear-cookies",children:"Clear cookies and site data"}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("cache"),children:"Clear cache"}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("everything"),children:"Clear everything"})]}),e.jsx("p",{className:"mt-2 text-meta text-ink-dim",children:"Clearing cookies signs this app out of sites you logged into inside it. Your approvals are kept, so the agent will not have to ask again for a site you already approved."})]})]})})},Oe=({tab:t,loading:i})=>i&&t.active?e.jsx(U,{"aria-hidden":!0,className:"size-4 shrink-0 animate-spin text-ink-muted"}):t.owner==="agent"?e.jsx(xe,{"aria-hidden":!0,className:"size-4 shrink-0 text-accent"}):e.jsx(I,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-dim"}),Ie=({tabs:t,activeTabId:i,loading:c,waitingTabIds:u,onActivate:g,onClose:h,onNewTab:b,onHandOver:m,onRevokeHandOver:f})=>e.jsxs("div",{className:"flex min-h-10 items-stretch gap-1 border-control border-b bg-sunken px-2 py-1",role:"tablist","aria-label":"Browser tabs","data-tour-tag":"browser-tab-strip",children:[e.jsx("div",{className:"flex min-w-0 grow items-stretch gap-1 overflow-x-auto",children:t.map(a=>{const v=a.tabId===i,r=u.includes(a.tabId);return e.jsxs("div",{className:M("group flex min-w-32 max-w-[50%] grow basis-32 items-center gap-1.5 rounded-sm border px-2","text-body-sm",v?"border-control bg-elevated text-ink":"border-transparent bg-surface text-ink-muted hover:bg-elevated hover:text-ink"),children:[e.jsxs("button",{type:"button",role:"tab","aria-selected":v,onClick:()=>g(a.tabId),className:"flex min-w-0 grow items-center gap-1.5 py-1.5 text-left","data-tour-tag":"browser-tab",children:[e.jsx(Oe,{tab:a,loading:c}),e.jsx("span",{className:"min-w-0 grow truncate",title:a.title,children:a.title}),a.owner==="agent"&&e.jsx("span",{className:"shrink-0 rounded-sm border border-accent bg-accent-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-agent-marker",children:"Agent"}),a.handedOver&&e.jsx("span",{className:"shrink-0 rounded-sm bg-sunken px-1 text-meta text-ink-muted",children:"Shared"}),a.restored&&e.jsx("span",{className:"shrink-0 text-meta text-ink-dim",children:"Restored"}),a.failed&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control bg-danger-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-failed",children:"Failed"}),r&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control bg-warning-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-waiting",children:"Waiting"})]}),e.jsxs(ae,{children:[e.jsx(ne,{asChild:!0,children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":`Tab actions for ${a.title}`,"data-tour-tag":"browser-tab-menu",children:e.jsx(ue,{"aria-hidden":!0,className:"size-3.5"})})}),e.jsxs(re,{align:"start",children:[e.jsx(E,{onSelect:()=>g(a.tabId),children:"Switch to this tab"}),a.owner==="user"&&!a.handedOver&&e.jsx(E,{onSelect:()=>m(a),children:"Let an agent use this tab…"}),(a.handedOver||a.owner==="agent")&&e.jsx(E,{onSelect:()=>f(a.tabId),children:"Stop letting the agent use this tab"}),e.jsx(E,{onSelect:()=>h(a.tabId),children:"Close tab"})]})]}),e.jsx(T,{content:"Close tab",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":`Close ${a.title}`,onClick:()=>h(a.tabId),"data-tour-tag":"browser-tab-close",children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})})]},a.tabId)})}),e.jsx(T,{content:"New tab",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"New tab",onClick:b,"data-tour-tag":"browser-new-tab",children:e.jsx(me,{"aria-hidden":!0,className:"size-4"})})})]});function Be(t){return t==="about:blank"?"":t}const De=({url:t,pendingUrl:i,loading:c,canGoBack:u,canGoForward:g,disabled:h,onNavigate:b,onBack:m,onForward:f,onReload:a,onStop:v,onOpenSites:r,approvalCount:d})=>{const[x,N]=o.useState(null),k=Be(t),C=x??k,p=x!==null,n=()=>{const j=x?.trim();j&&j!==k&&b(j),N(null)},w=j=>{if(j.key==="Enter"){j.preventDefault(),n();return}j.key==="Escape"&&(j.preventDefault(),N(null))};return e.jsxs("div",{className:"flex items-center gap-1 border-control border-b bg-canvas px-2 py-1","data-tour-tag":"browser-url-bar",children:[e.jsx(T,{content:"Back",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Back",disabled:h||!u,onClick:m,"data-tour-tag":"browser-back",children:e.jsx(fe,{"aria-hidden":!0,className:"size-4"})})}),e.jsx(T,{content:"Forward",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Forward",disabled:h||!g,onClick:f,"data-tour-tag":"browser-forward",children:e.jsx(pe,{"aria-hidden":!0,className:"size-4"})})}),c?e.jsx(T,{content:"Stop loading",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Stop loading",disabled:h,onClick:v,"data-tour-tag":"browser-stop",children:e.jsx(z,{"aria-hidden":!0,className:"size-4"})})}):e.jsx(T,{content:"Reload",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Reload",disabled:h,onClick:a,"data-tour-tag":"browser-reload",children:e.jsx(U,{"aria-hidden":!0,className:"size-4"})})}),e.jsxs("div",{className:"relative min-w-0 grow",children:[e.jsx(ie,{value:C,disabled:h,onChange:j=>N(j.target.value),onKeyDown:w,onFocus:()=>N(j=>j??k),onBlur:n,spellCheck:!1,autoComplete:"off","aria-label":"Address",placeholder:c&&!k?i??void 0:void 0,"data-tour-tag":"browser-address",className:M("pr-7",p&&"font-mono text-mono-sm")}),c&&e.jsx(ge,{"aria-hidden":!0,className:"pointer-events-none absolute top-1/2 right-2 size-3.5 -translate-y-1/2 animate-spin text-ink-dim"})]}),e.jsxs(l,{variant:"outline",size:"sm",onClick:r,disabled:h,"data-tour-tag":"browser-sites",children:["Sites",d>0&&e.jsx("span",{className:"text-ink-dim",children:d})]})]})};function _e(t){const i=t.getBoundingClientRect();return{x:Math.round(i.left),y:Math.round(i.top),width:Math.round(i.width),height:Math.round(i.height)}}const Ue=()=>{const t=ke(),i=oe(),c=le(),u=o.useRef(null),[g,h]=o.useState(!1),[b,m]=o.useState(null),[f,a]=o.useState(!1),[v,r]=o.useState(null),d=t.state,x=d?.tabs??[],N=x.find(s=>s.tabId===d?.activeTabId)??null;o.useLayoutEffect(()=>{const s=u.current;if(!s)return;const y=()=>t.setContentRect(_e(s));y();const D=new ResizeObserver(y);return D.observe(s),window.addEventListener("resize",y),()=>{D.disconnect(),window.removeEventListener("resize",y),t.setContentRect(null)}},[t.setContentRect]),o.useEffect(()=>{t.setViewVisible(!i)},[t.setViewVisible,i]),o.useEffect(()=>{const s=window.api?.browser;if(s)return s.onPopupBlocked(y=>r(y))},[]),o.useEffect(()=>{const s=window.api?.browser;if(s)return s.onConsentAttention(()=>void t.refresh())},[t.refresh]);const k=o.useCallback(async s=>{a(!0);try{await s()}finally{a(!1)}},[]),C=be(),p=d?.pendingConsent??[],n=C?p.find(s=>s.entryId===C):void 0,w=n??p[0]??null;o.useEffect(()=>{C&&!n&&ve(C)},[C,n]);const j=x.filter(s=>d?.pendingConsent?.some(y=>F(s.url)===y.origin)).map(s=>s.tabId),H=N?F(N.url):null,R=d?.navFailure??null,B=(c?c.split(","):[]).some(s=>s&&!s.startsWith("browser-load-failure:")),$=R!==null&&d!==null&&x.length>0&&!B;return ce(R!==null,"browser-load-failure"),t.available?e.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-canvas",children:[e.jsx(Ie,{tabs:x,activeTabId:d?.activeTabId??null,loading:!!d?.loading,waitingTabIds:j,onActivate:s=>void t.activateTab(s),onClose:s=>void t.closeTab(s),onNewTab:()=>void t.newTab(),onHandOver:s=>m(s),onRevokeHandOver:s=>void t.revokeHandOver(s)}),e.jsx(De,{url:d?.url??"",pendingUrl:t.pendingUrl,loading:!!d?.loading,canGoBack:!!d?.canGoBack,canGoForward:!!d?.canGoForward,disabled:x.length===0,onNavigate:s=>void t.navigate(s),onBack:()=>void t.history("back"),onForward:()=>void t.history("forward"),onReload:()=>void t.reload(),onStop:()=>void t.stop(),onOpenSites:()=>h(!0),approvalCount:d?.approvals.filter(s=>s.scope!=="deny").length??0}),w&&e.jsx("div",{"aria-live":"polite",children:e.jsx(Ce,{pending:w,waitingBehind:p.length-1,busy:f,onDecide:(s,y)=>void k(()=>t.respondToConsent(s,y))})}),v&&e.jsxs("div",{className:"flex items-center gap-2 border-control border-b bg-surface px-3 py-1.5","data-tour-tag":"browser-popup-notice",children:[e.jsx(V,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-muted"}),e.jsxs("p",{className:"min-w-0 grow truncate text-body-sm text-ink-muted",children:["A popup to"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:v.url})," ","was blocked."]}),e.jsx(l,{variant:"outline",size:"sm",onClick:()=>{const s=v.url;r(null),k(async()=>{await t.newTab(),await t.navigate(s)})},children:"Open in a new tab"}),e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>r(null),children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})]}),t.error&&e.jsxs("output",{className:"flex items-center gap-2 border-control border-b bg-danger-wash px-3 py-1.5","data-tour-tag":"browser-error",children:[e.jsx("p",{className:"min-w-0 grow text-body-sm text-ink",children:t.error}),e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>t.dismissError(),children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})]}),e.jsxs("div",{ref:u,className:"relative min-h-0 grow bg-canvas","data-tour-tag":"browser-content","data-suppressed-by":c,children:[!d&&e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(P,{size:"lg",label:"Loading browser"})}),d&&x.length===0&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsx(I,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),e.jsx("p",{className:"text-body text-ink-muted",children:"No tabs are open."}),e.jsx(l,{variant:"primary",size:"sm",onClick:()=>void t.newTab(),children:"New tab"})]}),d&&x.length>0&&!N&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsx(I,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),e.jsx("p",{className:"text-body text-ink-muted",children:"No tab is selected. Pick a tab above, or open a new one."}),e.jsx(l,{variant:"outline",size:"sm",onClick:()=>void t.newTab(),children:"New tab"})]}),i&&B&&d&&x.length>0&&e.jsxs("output",{className:"flex h-full flex-col items-center justify-center gap-1 px-6 text-center","data-tour-tag":"browser-paused","data-suppressed-by":c,children:[e.jsx("p",{className:"max-w-lg truncate text-title text-ink",children:d.title||N?.title||"This page"}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"Paused while a dialog or panel is open — close it to bring the page back."})]}),$&&R&&e.jsx(Ee,{failure:R,onRetry:()=>void t.reload()})]}),e.jsx(Ae,{open:g,onOpenChange:h,approvals:d?.approvals??[],currentOrigin:H,busy:f,onRevoke:s=>void k(()=>t.revokeApproval(s)),onRevokeAll:()=>void k(()=>t.revokeAllApprovals()),onForgetSite:s=>void k(()=>t.forgetSite(s)),onClearData:s=>void k(()=>t.clearData(s))}),e.jsx(Te,{open:b!==null,tab:b,busy:f,onClose:()=>m(null),onConfirm:(s,y)=>{m(null),k(()=>t.handOver(s,y))}})]}):e.jsx("div",{className:"flex h-full items-center justify-center bg-canvas p-6",children:e.jsx("p",{className:"text-body text-ink-muted",children:"The browser is only available in the desktop app."})})};function F(t){try{const i=new URL(t);return i.protocol==="http:"||i.protocol==="https:"?i.origin:null}catch{return null}}export{Ue as BrowserPage};
1
+ import{r as o,j as e,B as l,S as P,L as q,h as G,i as W,k as Y,l as X,m as K,n as V,o as Q,p as J,q as Z,s as ee,t as te,b as se,c as M,D as ae,u as ne,v as re,w as E,g as T,X as z,R as U,I as ie,x as oe,y as le,z as ce}from"./icon-hwUlaPPO.js";import{i as O,aO as de,aL as he,aP as ue,P as me,B as xe,aQ as I,aR as pe,aS as ge,aT as be,aU as ve}from"./index-Du_04xLY.js";import{S as we}from"./shield-check-Biv7u3YI.js";import{A as fe}from"./arrow-left-CcktVilP.js";function S(){return window.api?.browser??null}function je(){return S()!==null}function A(t){S()?.setContentRect(t).catch(()=>{})}function ke(){const[t,i]=o.useState(null),[c,u]=o.useState(null),[g,h]=o.useState(null),[b,m]=o.useState(null),f=je(),a=g??c,v=o.useCallback(async()=>{const n=S();if(n)try{const w=await n.state();w&&Array.isArray(w.tabs)&&(i(w),u(null),w.url&&w.url!=="about:blank"&&m(null))}catch(w){u(_(w))}},[]);o.useEffect(()=>{if(!f)return;v();const n=window.api?.browser;if(!n)return;const w=n.onStateChanged(()=>void v()),j=n.onConsentChanged(()=>void v());return()=>{w(),j()}},[f,v]);const r=o.useCallback(async n=>{try{await n(),h(null)}catch(w){h(_(w))}await v()},[v]),d=o.useCallback(()=>{h(null),u(null)},[]),x=o.useRef(null),N=o.useRef(null),k=o.useCallback(n=>{if(n===null){x.current!==null&&(cancelAnimationFrame(x.current),x.current=null),N.current=null,A(null);return}N.current=n,x.current===null&&(x.current=requestAnimationFrame(()=>{x.current=null,A(N.current)}))},[]);o.useEffect(()=>()=>{x.current!==null&&cancelAnimationFrame(x.current),A(null)},[]);const C=o.useCallback(n=>{S()?.setViewVisible(n).catch(()=>{})},[]),p=S();return o.useMemo(()=>({state:t,pendingUrl:b,error:a,dismissError:d,available:f,refresh:v,newTab:()=>r(()=>p?.newTab()),closeTab:n=>r(()=>p?.closeTab(n)),activateTab:n=>r(()=>p?.activateTab(n)),navigate:n=>(m(n),r(()=>p?.navigate(n))),reload:()=>r(()=>p?.reload()),stop:()=>r(()=>p?.stop()),history:n=>r(()=>p?.history(n)),setContentRect:k,setViewVisible:C,respondToConsent:(n,w)=>r(()=>p?.respondToConsent(n,w)),handOver:(n,w)=>r(()=>p?.handOver(n,w)),revokeHandOver:n=>r(()=>p?.revokeHandOver(n)),revokeApproval:n=>r(()=>p?.revokeApproval(n)),revokeAllApprovals:()=>r(()=>p?.revokeAllApprovals()),forgetSite:n=>r(()=>p?.forgetSite(n)),clearData:n=>r(()=>p?.clearData(n))}),[t,b,a,d,f,v,r,k,C,p])}const Ne=/^Error invoking remote method '[^']+':\s*/;function _(t){return(t instanceof Error?t.message:String(t)).replace(Ne,"").trim()}function ye(t,i){if(!t)return"An agent";const c=i.find(u=>u.session_id===t)?.title;return c?.trim()?`The agent in '${c.trim()}'`:`The agent in conversation ${t}`}const Ce=({pending:t,waitingBehind:i,busy:c,onDecide:u})=>{const g=O(m=>m.sessions),h=ye(t.requesterSessionId,g),b=m=>u(t.entryId,m);return e.jsxs("section",{className:"flex flex-col gap-2 border-control border-b bg-surface px-3 py-2","aria-label":"Site approval request","data-tour-tag":"browser-consent-bar",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(de,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-warning"}),e.jsxs("div",{className:"min-w-0 grow",children:[e.jsxs("p",{className:"text-body text-ink","data-tour-tag":"browser-consent-who",children:[h," wants to open"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:t.authority}),"."]}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"This browser keeps sign-ins across conversations and app restarts, so an agent you approve here can use those signed-in accounts on the sites you allow it. You can open this site yourself either way — this only controls what the agent may reach."})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2 pl-6",children:[e.jsx(l,{variant:"primary",size:"sm",disabled:c,onClick:()=>b("once"),"data-tour-tag":"browser-consent-once",children:"Allow once"}),e.jsx(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("session"),"data-tour-tag":"browser-consent-session",children:"Allow until the app quits"}),e.jsx(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("site"),"data-tour-tag":"browser-consent-site",children:"Always allow this site"}),t.broad&&e.jsxs(l,{variant:"outline",size:"sm",disabled:c,onClick:()=>b("domain"),"data-tour-tag":"browser-consent-domain",children:["Allow all of ",t.broad.key]}),e.jsx(l,{variant:"ghost",size:"sm",disabled:c,onClick:()=>b("deny"),"data-tour-tag":"browser-consent-deny",children:"Don't allow"}),c&&e.jsxs("span",{className:"flex items-center gap-1.5 text-meta text-ink-muted","data-tour-tag":"browser-consent-busy",children:[e.jsx(P,{size:"sm"}),"Recording your choice…"]})]}),e.jsxs("dl",{className:"ml-6 grid grid-cols-[max-content_1fr] gap-x-4 gap-y-0.5 text-meta text-ink-dim","data-tour-tag":"browser-consent-scopes",children:[e.jsx("dt",{className:"text-ink-muted",children:"Allow once"}),e.jsx("dd",{children:"one navigation, for that conversation, up to ten minutes"}),e.jsx("dt",{className:"text-ink-muted",children:"Allow until the app quits"}),e.jsx("dd",{children:"this site, for this run only, and for every conversation"}),e.jsx("dt",{className:"text-ink-muted",children:"Always allow this site"}),e.jsx("dd",{children:"kept until you revoke it, and shared with every conversation"}),t.broad&&e.jsxs(e.Fragment,{children:[e.jsxs("dt",{className:"text-ink-muted",children:["Allow all of ",t.broad.key]}),e.jsxs("dd",{children:["every site under ",t.broad.key,", kept until you revoke it, shared with every conversation"]})]}),e.jsx("dt",{className:"text-ink-muted",children:"Don't allow"}),e.jsx("dd",{children:"the agent stops asking about this site until you revoke the denial in Sites"})]}),i>0&&e.jsx("p",{className:"ml-6 text-meta text-ink-dim",children:i===1?"One other request is waiting.":`${i} other requests are waiting.`})]})},Te=({open:t,tab:i,busy:c,onClose:u,onConfirm:g})=>{const h=O(a=>a.sessions),b=O(a=>a.fetchSessions),[m,f]=o.useState("");return o.useEffect(()=>{t&&b()},[t,b]),o.useEffect(()=>{t||f("")},[t]),e.jsx(he,{open:t,onClose:u,title:"Let an agent use this tab",dataTourTag:"browser-hand-over-dialog",actions:e.jsxs(e.Fragment,{children:[e.jsx(l,{variant:"ghost",size:"sm",onClick:u,children:"Cancel"}),e.jsx(l,{variant:"primary",size:"sm",disabled:c||!m||!i,onClick:()=>{i&&m&&g(i.tabId,m)},"data-tour-tag":"browser-hand-over-confirm",children:"Hand over"})]}),children:e.jsxs("div",{className:"flex flex-col gap-3",children:[e.jsx("p",{className:"text-body text-ink-muted",children:"The agent can use this tab — and only reach sites you have approved. Both gates apply, so handing this tab over does not approve the site it is showing."}),i&&e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink-dim",children:i.title}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx(q,{htmlFor:"browser-hand-over-session",children:"Session"}),e.jsxs(G,{value:m,onValueChange:f,children:[e.jsx(W,{id:"browser-hand-over-session","data-tour-tag":"browser-hand-over-session",children:e.jsx(Y,{placeholder:"Choose a session"})}),e.jsx(X,{children:h.map(a=>e.jsx(K,{value:a.session_id,children:a.title||a.session_id},a.session_id))})]}),h.length===0&&e.jsx("p",{className:"text-meta text-ink-dim",children:"No session is available yet. Start one in chat, then hand the tab over."})]})]})})},Se={ERR_NAME_NOT_RESOLVED:"That address does not resolve. Check the spelling.",ERR_CONNECTION_REFUSED:"The site refused the connection. It may be down, or refusing this app.",ERR_CONNECTION_TIMED_OUT:"The site did not answer in time.",ERR_EMPTY_RESPONSE:"The site closed the connection without sending a response.",ERR_CONNECTION_RESET:"The connection was reset before the page arrived.",ERR_INTERNET_DISCONNECTED:"This machine is not connected to the network.",ERR_ADDRESS_UNREACHABLE:"That address is not reachable from this machine.",ERR_CERT_DATE_INVALID:"The site's certificate has expired or is not yet valid.",ERR_CERT_AUTHORITY_INVALID:"The site's certificate is not from an authority this app trusts.",ERR_SSL_PROTOCOL_ERROR:"The secure connection could not be established."};function Re(t){return Se[t]??"The page could not be loaded."}const Ee=({failure:t,onRetry:i})=>e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-6 text-center","data-tour-tag":"browser-load-failure",children:[e.jsx(V,{"aria-hidden":!0,className:"size-6 text-warning"}),e.jsx("p",{className:"text-title text-ink",children:"Couldn't load this page"}),e.jsxs("p",{className:"max-w-lg text-body-sm text-ink-muted",children:[Re(t.description)," Try again, or correct the address in the bar above — it is still yours to edit."]}),e.jsxs("p",{className:"max-w-lg truncate font-mono text-mono-sm text-ink-dim",title:t.url,children:[t.description," ",t.url]}),e.jsx(l,{variant:"primary",size:"sm",onClick:i,"data-tour-tag":"browser-load-failure-retry",children:"Try again"})]}),ze={origin:"This site",domain:"Whole domain",host:"This host",deny:"Denied",session:"This session only"};function L(t){return t?new Date(t).toLocaleString():""}const Ae=({open:t,onOpenChange:i,approvals:c,currentOrigin:u,busy:g,onRevoke:h,onRevokeAll:b,onForgetSite:m,onClearData:f})=>{const a=c.filter(r=>r.scope!=="deny"),v=c.filter(r=>r.scope==="deny");return e.jsx(Q,{open:t,onOpenChange:i,children:e.jsxs(J,{side:"right",className:"w-96 overflow-y-auto","data-tour-tag":"browser-sites-sheet",children:[e.jsxs(Z,{children:[e.jsx(ee,{children:"Sites agents can act on as you"}),e.jsx(te,{children:"Approvals are kept per origin and are separate from cookies. Revoking one does not sign you out; clearing cookies does not restore a denial. This app's browser keeps its sign-ins across conversations and app restarts, and an approval here applies to every conversation — not only the one that asked."})]}),e.jsxs("div",{className:"mt-4 flex items-start gap-2 rounded-sm bg-accent-wash px-3 py-2","data-tour-tag":"browser-agents-notice",children:[e.jsx(we,{"aria-hidden":!0,className:"mt-0.5 size-4 shrink-0 text-ink"}),e.jsx("p",{className:"text-body-sm text-ink",children:"Agents can drive tabs in this app. Each site below was approved by a click in this window, and none of them can be reached without one."})]}),e.jsxs("section",{className:"mt-5","aria-label":"Approved sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Approved"}),a.length===0?e.jsx("p",{className:"mt-2 text-body-sm text-ink-muted",children:"No site is approved yet. The agent will ask the first time it needs one."}):e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:a.map(r=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate font-mono text-mono-sm text-ink",children:r.origin}),e.jsxs("p",{className:"text-meta text-ink-dim",children:[ze[r.scope],L(r.grantedAt)?` · ${L(r.grantedAt)}`:""]})]}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>h(r.origin),"data-tour-tag":"browser-revoke-approval",children:"Revoke"})]},`${r.scope}:${r.origin}`))}),a.length>0&&e.jsx(l,{variant:"ghost",size:"sm",className:"mt-3",disabled:g,onClick:b,"data-tour-tag":"browser-revoke-all",children:"Revoke all site approvals"})]}),v.length>0&&e.jsxs("section",{className:"mt-5","aria-label":"Denied sites",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Denied"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The agent stops asking about these. Revoking a denial lets it ask again."}),e.jsx("ul",{className:"mt-2 flex flex-col gap-2",children:v.map(r=>e.jsxs("li",{className:"flex items-center justify-between gap-2 rounded-sm bg-surface px-2 py-1.5",children:[e.jsx("p",{className:"min-w-0 truncate font-mono text-mono-sm text-ink",children:r.origin}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>h(r.origin),children:"Revoke"})]},`${r.scope}:${r.origin}`))})]}),u&&e.jsxs("section",{className:"mt-5","aria-label":"Current site",children:[e.jsx("h3",{className:"text-heading text-ink",children:"This site"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"The page the active tab is on right now."}),e.jsx("p",{className:"mt-2 truncate font-mono text-mono-sm text-ink",children:u}),e.jsx(l,{variant:"danger",size:"sm",className:"mt-3",disabled:g,onClick:()=>m(u),"data-tour-tag":"browser-forget-site",children:"Forget this site"}),e.jsx("p",{className:"mt-1 text-meta text-ink-dim",children:"Revokes any approval for it and clears what this app stored for it. It does not touch your real browser's data."})]}),e.jsx(se,{className:"my-5"}),e.jsxs("section",{"aria-label":"Browsing data",children:[e.jsx("h3",{className:"text-heading text-ink",children:"Browsing data"}),e.jsx("p",{className:"mt-1 text-body-sm text-ink-muted",children:"These clear what this app's browser profile stored. They do not change which sites the agent may reach — that is the list above."}),e.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("cookies"),"data-tour-tag":"browser-clear-cookies",children:"Clear cookies and site data"}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("cache"),children:"Clear cache"}),e.jsx(l,{variant:"outline",size:"sm",disabled:g,onClick:()=>f("everything"),children:"Clear everything"})]}),e.jsx("p",{className:"mt-2 text-meta text-ink-dim",children:"Clearing cookies signs this app out of sites you logged into inside it. Your approvals are kept, so the agent will not have to ask again for a site you already approved."})]})]})})},Oe=({tab:t,loading:i})=>i&&t.active?e.jsx(U,{"aria-hidden":!0,className:"size-4 shrink-0 animate-spin text-ink-muted"}):t.owner==="agent"?e.jsx(xe,{"aria-hidden":!0,className:"size-4 shrink-0 text-accent"}):e.jsx(I,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-dim"}),Ie=({tabs:t,activeTabId:i,loading:c,waitingTabIds:u,onActivate:g,onClose:h,onNewTab:b,onHandOver:m,onRevokeHandOver:f})=>e.jsxs("div",{className:"flex min-h-10 items-stretch gap-1 border-control border-b bg-sunken px-2 py-1",role:"tablist","aria-label":"Browser tabs","data-tour-tag":"browser-tab-strip",children:[e.jsx("div",{className:"flex min-w-0 grow items-stretch gap-1 overflow-x-auto",children:t.map(a=>{const v=a.tabId===i,r=u.includes(a.tabId);return e.jsxs("div",{className:M("group flex min-w-32 max-w-[50%] grow basis-32 items-center gap-1.5 rounded-sm border px-2","text-body-sm",v?"border-control bg-elevated text-ink":"border-transparent bg-surface text-ink-muted hover:bg-elevated hover:text-ink"),children:[e.jsxs("button",{type:"button",role:"tab","aria-selected":v,onClick:()=>g(a.tabId),className:"flex min-w-0 grow items-center gap-1.5 py-1.5 text-left","data-tour-tag":"browser-tab",children:[e.jsx(Oe,{tab:a,loading:c}),e.jsx("span",{className:"min-w-0 grow truncate",title:a.title,children:a.title}),a.owner==="agent"&&e.jsx("span",{className:"shrink-0 rounded-sm border border-accent bg-accent-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-agent-marker",children:"Agent"}),a.handedOver&&e.jsx("span",{className:"shrink-0 rounded-sm bg-sunken px-1 text-meta text-ink-muted",children:"Shared"}),a.restored&&e.jsx("span",{className:"shrink-0 text-meta text-ink-dim",children:"Restored"}),a.failed&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control bg-danger-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-failed",children:"Failed"}),r&&e.jsx("span",{className:"shrink-0 rounded-sm border border-control bg-warning-wash px-1 text-meta text-ink","data-tour-tag":"browser-tab-waiting",children:"Waiting"})]}),e.jsxs(ae,{children:[e.jsx(ne,{asChild:!0,children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":`Tab actions for ${a.title}`,"data-tour-tag":"browser-tab-menu",children:e.jsx(ue,{"aria-hidden":!0,className:"size-3.5"})})}),e.jsxs(re,{align:"start",children:[e.jsx(E,{onSelect:()=>g(a.tabId),children:"Switch to this tab"}),a.owner==="user"&&!a.handedOver&&e.jsx(E,{onSelect:()=>m(a),children:"Let an agent use this tab…"}),(a.handedOver||a.owner==="agent")&&e.jsx(E,{onSelect:()=>f(a.tabId),children:"Stop letting the agent use this tab"}),e.jsx(E,{onSelect:()=>h(a.tabId),children:"Close tab"})]})]}),e.jsx(T,{content:"Close tab",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":`Close ${a.title}`,onClick:()=>h(a.tabId),"data-tour-tag":"browser-tab-close",children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})})]},a.tabId)})}),e.jsx(T,{content:"New tab",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"New tab",onClick:b,"data-tour-tag":"browser-new-tab",children:e.jsx(me,{"aria-hidden":!0,className:"size-4"})})})]});function Be(t){return t==="about:blank"?"":t}const De=({url:t,pendingUrl:i,loading:c,canGoBack:u,canGoForward:g,disabled:h,onNavigate:b,onBack:m,onForward:f,onReload:a,onStop:v,onOpenSites:r,approvalCount:d})=>{const[x,N]=o.useState(null),k=Be(t),C=x??k,p=x!==null,n=()=>{const j=x?.trim();j&&j!==k&&b(j),N(null)},w=j=>{if(j.key==="Enter"){j.preventDefault(),n();return}j.key==="Escape"&&(j.preventDefault(),N(null))};return e.jsxs("div",{className:"flex items-center gap-1 border-control border-b bg-canvas px-2 py-1","data-tour-tag":"browser-url-bar",children:[e.jsx(T,{content:"Back",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Back",disabled:h||!u,onClick:m,"data-tour-tag":"browser-back",children:e.jsx(fe,{"aria-hidden":!0,className:"size-4"})})}),e.jsx(T,{content:"Forward",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Forward",disabled:h||!g,onClick:f,"data-tour-tag":"browser-forward",children:e.jsx(pe,{"aria-hidden":!0,className:"size-4"})})}),c?e.jsx(T,{content:"Stop loading",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Stop loading",disabled:h,onClick:v,"data-tour-tag":"browser-stop",children:e.jsx(z,{"aria-hidden":!0,className:"size-4"})})}):e.jsx(T,{content:"Reload",children:e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Reload",disabled:h,onClick:a,"data-tour-tag":"browser-reload",children:e.jsx(U,{"aria-hidden":!0,className:"size-4"})})}),e.jsxs("div",{className:"relative min-w-0 grow",children:[e.jsx(ie,{value:C,disabled:h,onChange:j=>N(j.target.value),onKeyDown:w,onFocus:()=>N(j=>j??k),onBlur:n,spellCheck:!1,autoComplete:"off","aria-label":"Address",placeholder:c&&!k?i??void 0:void 0,"data-tour-tag":"browser-address",className:M("pr-7",p&&"font-mono text-mono-sm")}),c&&e.jsx(ge,{"aria-hidden":!0,className:"pointer-events-none absolute top-1/2 right-2 size-3.5 -translate-y-1/2 animate-spin text-ink-dim"})]}),e.jsxs(l,{variant:"outline",size:"sm",onClick:r,disabled:h,"data-tour-tag":"browser-sites",children:["Sites",d>0&&e.jsx("span",{className:"text-ink-dim",children:d})]})]})};function _e(t){const i=t.getBoundingClientRect();return{x:Math.round(i.left),y:Math.round(i.top),width:Math.round(i.width),height:Math.round(i.height)}}const Ue=()=>{const t=ke(),i=oe(),c=le(),u=o.useRef(null),[g,h]=o.useState(!1),[b,m]=o.useState(null),[f,a]=o.useState(!1),[v,r]=o.useState(null),d=t.state,x=d?.tabs??[],N=x.find(s=>s.tabId===d?.activeTabId)??null;o.useLayoutEffect(()=>{const s=u.current;if(!s)return;const y=()=>t.setContentRect(_e(s));y();const D=new ResizeObserver(y);return D.observe(s),window.addEventListener("resize",y),()=>{D.disconnect(),window.removeEventListener("resize",y),t.setContentRect(null)}},[t.setContentRect]),o.useEffect(()=>{t.setViewVisible(!i)},[t.setViewVisible,i]),o.useEffect(()=>{const s=window.api?.browser;if(s)return s.onPopupBlocked(y=>r(y))},[]),o.useEffect(()=>{const s=window.api?.browser;if(s)return s.onConsentAttention(()=>void t.refresh())},[t.refresh]);const k=o.useCallback(async s=>{a(!0);try{await s()}finally{a(!1)}},[]),C=be(),p=d?.pendingConsent??[],n=C?p.find(s=>s.entryId===C):void 0,w=n??p[0]??null;o.useEffect(()=>{C&&!n&&ve(C)},[C,n]);const j=x.filter(s=>d?.pendingConsent?.some(y=>F(s.url)===y.origin)).map(s=>s.tabId),H=N?F(N.url):null,R=d?.navFailure??null,B=(c?c.split(","):[]).some(s=>s&&!s.startsWith("browser-load-failure:")),$=R!==null&&d!==null&&x.length>0&&!B;return ce(R!==null,"browser-load-failure"),t.available?e.jsxs("div",{className:"flex h-full min-h-0 flex-col bg-canvas",children:[e.jsx(Ie,{tabs:x,activeTabId:d?.activeTabId??null,loading:!!d?.loading,waitingTabIds:j,onActivate:s=>void t.activateTab(s),onClose:s=>void t.closeTab(s),onNewTab:()=>void t.newTab(),onHandOver:s=>m(s),onRevokeHandOver:s=>void t.revokeHandOver(s)}),e.jsx(De,{url:d?.url??"",pendingUrl:t.pendingUrl,loading:!!d?.loading,canGoBack:!!d?.canGoBack,canGoForward:!!d?.canGoForward,disabled:x.length===0,onNavigate:s=>void t.navigate(s),onBack:()=>void t.history("back"),onForward:()=>void t.history("forward"),onReload:()=>void t.reload(),onStop:()=>void t.stop(),onOpenSites:()=>h(!0),approvalCount:d?.approvals.filter(s=>s.scope!=="deny").length??0}),w&&e.jsx("div",{"aria-live":"polite",children:e.jsx(Ce,{pending:w,waitingBehind:p.length-1,busy:f,onDecide:(s,y)=>void k(()=>t.respondToConsent(s,y))})}),v&&e.jsxs("div",{className:"flex items-center gap-2 border-control border-b bg-surface px-3 py-1.5","data-tour-tag":"browser-popup-notice",children:[e.jsx(V,{"aria-hidden":!0,className:"size-4 shrink-0 text-ink-muted"}),e.jsxs("p",{className:"min-w-0 grow truncate text-body-sm text-ink-muted",children:["A popup to"," ",e.jsx("span",{className:"font-mono text-mono-sm",children:v.url})," ","was blocked."]}),e.jsx(l,{variant:"outline",size:"sm",onClick:()=>{const s=v.url;r(null),k(async()=>{await t.newTab(),await t.navigate(s)})},children:"Open in a new tab"}),e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>r(null),children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})]}),t.error&&e.jsxs("output",{className:"flex items-center gap-2 border-control border-b bg-danger-wash px-3 py-1.5","data-tour-tag":"browser-error",children:[e.jsx("p",{className:"min-w-0 grow text-body-sm text-ink",children:t.error}),e.jsx(l,{variant:"ghost",size:"icon-sm","aria-label":"Dismiss",onClick:()=>t.dismissError(),children:e.jsx(z,{"aria-hidden":!0,className:"size-3.5"})})]}),e.jsxs("div",{ref:u,className:"relative min-h-0 grow bg-canvas","data-tour-tag":"browser-content","data-suppressed-by":c,children:[!d&&e.jsx("div",{className:"flex h-full items-center justify-center",children:e.jsx(P,{size:"lg",label:"Loading browser"})}),d&&x.length===0&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsx(I,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),e.jsx("p",{className:"text-body text-ink-muted",children:"No tabs are open."}),e.jsx(l,{variant:"primary",size:"sm",onClick:()=>void t.newTab(),children:"New tab"})]}),d&&x.length>0&&!N&&e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsx(I,{"aria-hidden":!0,className:"size-6 text-ink-dim"}),e.jsx("p",{className:"text-body text-ink-muted",children:"No tab is selected. Pick a tab above, or open a new one."}),e.jsx(l,{variant:"outline",size:"sm",onClick:()=>void t.newTab(),children:"New tab"})]}),i&&B&&d&&x.length>0&&e.jsxs("output",{className:"flex h-full flex-col items-center justify-center gap-1 px-6 text-center","data-tour-tag":"browser-paused","data-suppressed-by":c,children:[e.jsx("p",{className:"max-w-lg truncate text-title text-ink",children:d.title||N?.title||"This page"}),e.jsx("p",{className:"text-body-sm text-ink-muted",children:"Paused while a dialog or panel is open — close it to bring the page back."})]}),$&&R&&e.jsx(Ee,{failure:R,onRetry:()=>void t.reload()})]}),e.jsx(Ae,{open:g,onOpenChange:h,approvals:d?.approvals??[],currentOrigin:H,busy:f,onRevoke:s=>void k(()=>t.revokeApproval(s)),onRevokeAll:()=>void k(()=>t.revokeAllApprovals()),onForgetSite:s=>void k(()=>t.forgetSite(s)),onClearData:s=>void k(()=>t.clearData(s))}),e.jsx(Te,{open:b!==null,tab:b,busy:f,onClose:()=>m(null),onConfirm:(s,y)=>{m(null),k(()=>t.handOver(s,y))}})]}):e.jsx("div",{className:"flex h-full items-center justify-center bg-canvas p-6",children:e.jsx("p",{className:"text-body text-ink-muted",children:"The browser is only available in the desktop app."})})};function F(t){try{const i=new URL(t);return i.protocol==="http:"||i.protocol==="https:"?i.origin:null}catch{return null}}export{Ue as BrowserPage};
@@ -1,4 +1,4 @@
1
- import{g as Oe,d as Re}from"./chunk-D6G4REZN-B4p-ZLXS.js";import{_ as g,s as Se,g as De,a as Pe,b as Be,c as Dt,d as Nt,l as he,e as Ie,f as Me,h as Tt,i as pe,j as Le,w as Ne,k as Jt,m as ue}from"./mermaid.core-B2I2nVa9.js";import"./index-VRWRSi6M.js";import"./icon-DAf2pA-P.js";var jt=function(){var e=g(function(_t,x,m,v){for(m=m||{},v=_t.length;v--;m[_t[v]]=x);return m},"o"),t=[1,24],s=[1,25],o=[1,26],l=[1,27],a=[1,28],r=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],y=[1,68],p=[1,69],E=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],rt=[1,47],st=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Xt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],k=[1,82],A=[1,83],C=[1,84],w=[1,85],T=[12,14,42],re=[12,14,33,42],Bt=[12,14,33,42,76,77,79,80],vt=[12,33],Wt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Qt={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:g(function(x,m,v,b,R,h,Rt){var f=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[f-3]);break;case 19:b.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:b.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),b.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:b.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:b.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:b.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:b.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:b.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:b.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:b.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:b.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:b.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:b.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:b.addContainer("container",...h[f]),this.$=h[f];break;case 48:b.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:b.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:b.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:b.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:b.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:b.addComponent("component",...h[f]),this.$=h[f];break;case 54:b.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:b.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:b.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:b.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:b.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:b.addRel("rel",...h[f]),this.$=h[f];break;case 61:b.addRel("birel",...h[f]),this.$=h[f];break;case 62:b.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:b.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:b.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:b.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:b.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),b.addRel("rel",...h[f]),this.$=h[f];break;case 68:b.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:b.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:b.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let Et={};Et[h[f-1].trim()]=h[f].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},e(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:r,36:n,37:i,38:u,39:d,40:y,41:p,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ct,[2,14]),e(Xt,[2,16],{12:[1,76]}),e(Ct,[2,36],{12:[1,77]}),e(Ot,[2,19]),e(Ot,[2,20]),{25:[1,78]},{27:[1,79]},e(Ot,[2,23]),{35:80,75:81,76:k,77:A,79:C,80:w},{35:86,75:81,76:k,77:A,79:C,80:w},{35:87,75:81,76:k,77:A,79:C,80:w},{35:88,75:81,76:k,77:A,79:C,80:w},{35:89,75:81,76:k,77:A,79:C,80:w},{35:90,75:81,76:k,77:A,79:C,80:w},{35:91,75:81,76:k,77:A,79:C,80:w},{35:92,75:81,76:k,77:A,79:C,80:w},{35:93,75:81,76:k,77:A,79:C,80:w},{35:94,75:81,76:k,77:A,79:C,80:w},{35:95,75:81,76:k,77:A,79:C,80:w},{35:96,75:81,76:k,77:A,79:C,80:w},{35:97,75:81,76:k,77:A,79:C,80:w},{35:98,75:81,76:k,77:A,79:C,80:w},{35:99,75:81,76:k,77:A,79:C,80:w},{35:100,75:81,76:k,77:A,79:C,80:w},{35:101,75:81,76:k,77:A,79:C,80:w},{35:102,75:81,76:k,77:A,79:C,80:w},{35:103,75:81,76:k,77:A,79:C,80:w},{35:104,75:81,76:k,77:A,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:k,77:A,79:C,80:w},{35:106,75:81,76:k,77:A,79:C,80:w},{35:107,75:81,76:k,77:A,79:C,80:w},{35:108,75:81,76:k,77:A,79:C,80:w},{35:109,75:81,76:k,77:A,79:C,80:w},{35:110,75:81,76:k,77:A,79:C,80:w},{35:111,75:81,76:k,77:A,79:C,80:w},{35:112,75:81,76:k,77:A,79:C,80:w},{35:113,75:81,76:k,77:A,79:C,80:w},{35:114,75:81,76:k,77:A,79:C,80:w},{35:115,75:81,76:k,77:A,79:C,80:w},{20:116,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:k,77:A,79:C,80:w},{35:120,75:81,76:k,77:A,79:C,80:w},{35:121,75:81,76:k,77:A,79:C,80:w},{35:122,75:81,76:k,77:A,79:C,80:w},{35:123,75:81,76:k,77:A,79:C,80:w},{35:124,75:81,76:k,77:A,79:C,80:w},{35:125,75:81,76:k,77:A,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Ct,[2,15]),e(Xt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:l,28:a}),e(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:l,28:a,34:r,36:n,37:i,38:u,39:d,40:y,41:p,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ot,[2,21]),e(Ot,[2,22]),e(T,[2,39]),e(re,[2,71],{75:81,35:132,76:k,77:A,79:C,80:w}),e(Bt,[2,73]),{78:[1,133]},e(Bt,[2,75]),e(Bt,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Xt,[2,18]),e(Ct,[2,38]),e(re,[2,72]),e(Bt,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Wt,[2,25]),e(Wt,[2,26],{12:[1,138]}),e(Wt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:g(function(x,m){if(m.recoverable)this.trace(x);else{var v=new Error(x);throw v.hash=m,v}},"parseError"),parse:g(function(x){var m=this,v=[0],b=[],R=[null],h=[],Rt=this.table,f="",Et=0,se=0,Ae=2,le=1,Ce=h.slice.call(arguments,1),D=Object.create(this.lexer),kt={yy:{}};for(var Ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ht)&&(kt.yy[Ht]=this.yy[Ht]);D.setInput(x,kt.yy),kt.yy.lexer=D,kt.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var qt=D.yylloc;h.push(qt);var we=D.options&&D.options.ranges;typeof kt.yy.parseError=="function"?this.parseError=kt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Te(L){v.length=v.length-2*L,R.length=R.length-L,h.length=h.length-L}g(Te,"popStack");function oe(){var L;return L=b.pop()||D.lex()||le,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=m.symbols_[L]||L),L}g(oe,"lex");for(var I,At,N,Gt,wt={},Mt,W,ce,Lt;;){if(At=v[v.length-1],this.defaultActions[At]?N=this.defaultActions[At]:((I===null||typeof I>"u")&&(I=oe()),N=Rt[At]&&Rt[At][I]),typeof N>"u"||!N.length||!N[0]){var Kt="";Lt=[];for(Mt in Rt[At])this.terminals_[Mt]&&Mt>Ae&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Kt="Parse error on line "+(Et+1)+`:
1
+ import{g as Oe,d as Re}from"./chunk-D6G4REZN-3kvxiifv.js";import{_ as g,s as Se,g as De,a as Pe,b as Be,c as Dt,d as Nt,l as he,e as Ie,f as Me,h as Tt,i as pe,j as Le,w as Ne,k as Jt,m as ue}from"./mermaid.core-DsqDVkGt.js";import"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";var jt=function(){var e=g(function(_t,x,m,v){for(m=m||{},v=_t.length;v--;m[_t[v]]=x);return m},"o"),t=[1,24],s=[1,25],o=[1,26],l=[1,27],a=[1,28],r=[1,63],n=[1,64],i=[1,65],u=[1,66],d=[1,67],y=[1,68],p=[1,69],E=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],nt=[1,46],rt=[1,47],st=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],gt=[1,59],bt=[1,60],Ct=[14,42],Xt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ot=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],k=[1,82],A=[1,83],C=[1,84],w=[1,85],T=[12,14,42],re=[12,14,33,42],Bt=[12,14,33,42,76,77,79,80],vt=[12,33],Wt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Qt={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:g(function(x,m,v,b,R,h,Rt){var f=h.length-1;switch(R){case 3:b.setDirection("TB");break;case 4:b.setDirection("BT");break;case 5:b.setDirection("RL");break;case 6:b.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:b.setC4Type(h[f-3]);break;case 19:b.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:b.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),b.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),b.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:b.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),b.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:b.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:b.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:b.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:b.popBoundaryParseStack();break;case 39:b.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:b.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:b.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:b.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:b.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:b.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:b.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:b.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:b.addContainer("container",...h[f]),this.$=h[f];break;case 48:b.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:b.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:b.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:b.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:b.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:b.addComponent("component",...h[f]),this.$=h[f];break;case 54:b.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:b.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:b.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:b.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:b.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:b.addRel("rel",...h[f]),this.$=h[f];break;case 61:b.addRel("birel",...h[f]),this.$=h[f];break;case 62:b.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:b.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:b.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:b.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:b.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),b.addRel("rel",...h[f]),this.$=h[f];break;case 68:b.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:b.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:b.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let Et={};Et[h[f-1].trim()]=h[f].trim(),this.$=Et;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{14:[1,74]},e(Ct,[2,13],{43:23,29:49,30:61,32:62,20:75,34:r,36:n,37:i,38:u,39:d,40:y,41:p,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ct,[2,14]),e(Xt,[2,16],{12:[1,76]}),e(Ct,[2,36],{12:[1,77]}),e(Ot,[2,19]),e(Ot,[2,20]),{25:[1,78]},{27:[1,79]},e(Ot,[2,23]),{35:80,75:81,76:k,77:A,79:C,80:w},{35:86,75:81,76:k,77:A,79:C,80:w},{35:87,75:81,76:k,77:A,79:C,80:w},{35:88,75:81,76:k,77:A,79:C,80:w},{35:89,75:81,76:k,77:A,79:C,80:w},{35:90,75:81,76:k,77:A,79:C,80:w},{35:91,75:81,76:k,77:A,79:C,80:w},{35:92,75:81,76:k,77:A,79:C,80:w},{35:93,75:81,76:k,77:A,79:C,80:w},{35:94,75:81,76:k,77:A,79:C,80:w},{35:95,75:81,76:k,77:A,79:C,80:w},{35:96,75:81,76:k,77:A,79:C,80:w},{35:97,75:81,76:k,77:A,79:C,80:w},{35:98,75:81,76:k,77:A,79:C,80:w},{35:99,75:81,76:k,77:A,79:C,80:w},{35:100,75:81,76:k,77:A,79:C,80:w},{35:101,75:81,76:k,77:A,79:C,80:w},{35:102,75:81,76:k,77:A,79:C,80:w},{35:103,75:81,76:k,77:A,79:C,80:w},{35:104,75:81,76:k,77:A,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:k,77:A,79:C,80:w},{35:106,75:81,76:k,77:A,79:C,80:w},{35:107,75:81,76:k,77:A,79:C,80:w},{35:108,75:81,76:k,77:A,79:C,80:w},{35:109,75:81,76:k,77:A,79:C,80:w},{35:110,75:81,76:k,77:A,79:C,80:w},{35:111,75:81,76:k,77:A,79:C,80:w},{35:112,75:81,76:k,77:A,79:C,80:w},{35:113,75:81,76:k,77:A,79:C,80:w},{35:114,75:81,76:k,77:A,79:C,80:w},{35:115,75:81,76:k,77:A,79:C,80:w},{20:116,29:49,30:61,32:62,34:r,36:n,37:i,38:u,39:d,40:y,41:p,43:23,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt},{12:[1,118],33:[1,117]},{35:119,75:81,76:k,77:A,79:C,80:w},{35:120,75:81,76:k,77:A,79:C,80:w},{35:121,75:81,76:k,77:A,79:C,80:w},{35:122,75:81,76:k,77:A,79:C,80:w},{35:123,75:81,76:k,77:A,79:C,80:w},{35:124,75:81,76:k,77:A,79:C,80:w},{35:125,75:81,76:k,77:A,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(Ct,[2,15]),e(Xt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:l,28:a}),e(Ct,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:l,28:a,34:r,36:n,37:i,38:u,39:d,40:y,41:p,44:E,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:nt,62:rt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:gt,74:bt}),e(Ot,[2,21]),e(Ot,[2,22]),e(T,[2,39]),e(re,[2,71],{75:81,35:132,76:k,77:A,79:C,80:w}),e(Bt,[2,73]),{78:[1,133]},e(Bt,[2,75]),e(Bt,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Xt,[2,18]),e(Ct,[2,38]),e(re,[2,72]),e(Bt,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Wt,[2,25]),e(Wt,[2,26],{12:[1,138]}),e(Wt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:g(function(x,m){if(m.recoverable)this.trace(x);else{var v=new Error(x);throw v.hash=m,v}},"parseError"),parse:g(function(x){var m=this,v=[0],b=[],R=[null],h=[],Rt=this.table,f="",Et=0,se=0,Ae=2,le=1,Ce=h.slice.call(arguments,1),D=Object.create(this.lexer),kt={yy:{}};for(var Ht in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ht)&&(kt.yy[Ht]=this.yy[Ht]);D.setInput(x,kt.yy),kt.yy.lexer=D,kt.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var qt=D.yylloc;h.push(qt);var we=D.options&&D.options.ranges;typeof kt.yy.parseError=="function"?this.parseError=kt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Te(L){v.length=v.length-2*L,R.length=R.length-L,h.length=h.length-L}g(Te,"popStack");function oe(){var L;return L=b.pop()||D.lex()||le,typeof L!="number"&&(L instanceof Array&&(b=L,L=b.pop()),L=m.symbols_[L]||L),L}g(oe,"lex");for(var I,At,N,Gt,wt={},Mt,W,ce,Lt;;){if(At=v[v.length-1],this.defaultActions[At]?N=this.defaultActions[At]:((I===null||typeof I>"u")&&(I=oe()),N=Rt[At]&&Rt[At][I]),typeof N>"u"||!N.length||!N[0]){var Kt="";Lt=[];for(Mt in Rt[At])this.terminals_[Mt]&&Mt>Ae&&Lt.push("'"+this.terminals_[Mt]+"'");D.showPosition?Kt="Parse error on line "+(Et+1)+`:
2
2
  `+D.showPosition()+`
3
3
  Expecting `+Lt.join(", ")+", got '"+(this.terminals_[I]||I)+"'":Kt="Parse error on line "+(Et+1)+": Unexpected "+(I==le?"end of input":"'"+(this.terminals_[I]||I)+"'"),this.parseError(Kt,{text:D.match,token:this.terminals_[I]||I,line:D.yylineno,loc:qt,expected:Lt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+At+", token: "+I);switch(N[0]){case 1:v.push(I),R.push(D.yytext),h.push(D.yylloc),v.push(N[1]),I=null,se=D.yyleng,f=D.yytext,Et=D.yylineno,qt=D.yylloc;break;case 2:if(W=this.productions_[N[1]][1],wt.$=R[R.length-W],wt._$={first_line:h[h.length-(W||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(W||1)].first_column,last_column:h[h.length-1].last_column},we&&(wt._$.range=[h[h.length-(W||1)].range[0],h[h.length-1].range[1]]),Gt=this.performAction.apply(wt,[f,se,Et,kt.yy,N[1],R,h].concat(Ce)),typeof Gt<"u")return Gt;W&&(v=v.slice(0,-1*W*2),R=R.slice(0,-1*W),h=h.slice(0,-1*W)),v.push(this.productions_[N[1]][0]),R.push(wt.$),h.push(wt._$),ce=Rt[v[v.length-2]][v[v.length-1]],v.push(ce);break;case 3:return!0}}return!0},"parse")},ke=function(){var _t={EOF:1,parseError:g(function(m,v){if(this.yy.parser)this.yy.parser.parseError(m,v);else throw new Error(m)},"parseError"),setInput:g(function(x,m){return this.yy=m||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var m=x.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},"input"),unput:g(function(x){var m=x.length,v=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var b=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),v.length-1&&(this.yylineno-=v.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:v?(v.length===b.length?this.yylloc.first_column:0)+b[b.length-v.length].length-v[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:g(function(x){this.unput(this.match.slice(x))},"less"),pastInput:g(function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:g(function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:g(function(){var x=this.pastInput(),m=new Array(x.length+1).join("-");return x+this.upcomingInput()+`
@@ -0,0 +1 @@
1
+ import{U as a,C as n}from"./mermaid.core-DsqDVkGt.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
@@ -1 +1 @@
1
- import{_ as i}from"./mermaid.core-B2I2nVa9.js";function t(c,e){c.accDescr&&e.setAccDescription?.(c.accDescr),c.accTitle&&e.setAccTitle?.(c.accTitle),c.title&&e.setDiagramTitle?.(c.title)}i(t,"populateCommonDb");export{t as p};
1
+ import{_ as i}from"./mermaid.core-DsqDVkGt.js";function t(c,e){c.accDescr&&e.setAccDescription?.(c.accDescr),c.accTitle&&e.setAccTitle?.(c.accTitle),c.title&&e.setDiagramTitle?.(c.title)}i(t,"populateCommonDb");export{t as p};
@@ -1,4 +1,4 @@
1
- import{g as Ze,s as $e}from"./chunk-RZ5BOZE2-DV_xVoQ0.js";import{_ as p,l as ve,c as D,p as et,r as tt,u as Ie,d as H,b as st,a as it,s as at,g as nt,q as rt,t as ut,k as x,z as lt,y as ct,i as ot,S as M}from"./mermaid.core-B2I2nVa9.js";var Oe=function(){var e=p(function(v,l,c,d){for(c=c||{},d=v.length;d--;c[v[d]]=l);return c},"o"),i=[1,18],r=[1,19],u=[1,20],a=[1,41],o=[1,42],A=[1,26],f=[1,24],T=[1,25],_=[1,32],he=[1,33],de=[1,34],C=[1,45],pe=[1,35],Ae=[1,36],fe=[1,37],ge=[1,38],Ce=[1,27],me=[1,28],be=[1,29],Ee=[1,30],ye=[1,31],m=[1,44],b=[1,46],E=[1,43],k=[1,47],Te=[1,9],h=[1,8,9],J=[1,58],Z=[1,59],$=[1,60],ee=[1,61],te=[1,62],ke=[1,63],De=[1,64],se=[1,8,9,41],we=[1,76],V=[1,8,9,12,13,22,39,41,44,66,67,68,69,70,71,72,77,79],ie=[1,8,9,12,13,17,20,22,39,41,44,48,58,66,67,68,69,70,71,72,77,79,84,99,101,102],ae=[13,58,84,99,101,102],R=[13,58,71,72,84,99,101,102],Ve=[13,58,66,67,68,69,70,84,99,101,102],Fe=[1,98],G=[1,115],U=[1,107],z=[1,113],K=[1,108],Y=[1,109],Q=[1,110],W=[1,111],j=[1,112],X=[1,114],Pe=[22,58,59,80,84,85,86,87,88,89],Be=[1,8,9,39,41,44],ne=[1,8,9,22],Me=[1,143],Re=[1,8,9,59],N=[1,8,9,22,58,59,80,84,85,86,87,88,89],_e={trace:p(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,DOT:17,className:18,classLiteralName:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,ANNOTATION_START:47,ANNOTATION_END:48,MEMBER:49,SEPARATOR:50,relation:51,NOTE_FOR:52,noteText:53,NOTE:54,CLASSDEF:55,classList:56,stylesOpt:57,ALPHA:58,COMMA:59,direction_tb:60,direction_bt:61,direction_rl:62,direction_lr:63,relationType:64,lineType:65,AGGREGATION:66,EXTENSION:67,COMPOSITION:68,DEPENDENCY:69,LOLLIPOP:70,LINE:71,DOTTED_LINE:72,CALLBACK:73,LINK:74,LINK_TARGET:75,CLICK:76,CALLBACK_NAME:77,CALLBACK_ARGS:78,HREF:79,STYLE:80,CSSCLASS:81,style:82,styleComponent:83,NUM:84,COLON:85,UNIT:86,SPACE:87,BRKT:88,PCT:89,commentToken:90,textToken:91,graphCodeTokens:92,textNoTagsToken:93,TAGSTART:94,TAGEND:95,"==":96,"--":97,DEFAULT:98,MINUS:99,keywords:100,UNICODE_TEXT:101,BQUOTE_STR:102,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",47:"ANNOTATION_START",48:"ANNOTATION_END",49:"MEMBER",50:"SEPARATOR",52:"NOTE_FOR",54:"NOTE",55:"CLASSDEF",58:"ALPHA",59:"COMMA",60:"direction_tb",61:"direction_bt",62:"direction_rl",63:"direction_lr",66:"AGGREGATION",67:"EXTENSION",68:"COMPOSITION",69:"DEPENDENCY",70:"LOLLIPOP",71:"LINE",72:"DOTTED_LINE",73:"CALLBACK",74:"LINK",75:"LINK_TARGET",76:"CLICK",77:"CALLBACK_NAME",78:"CALLBACK_ARGS",79:"HREF",80:"STYLE",81:"CSSCLASS",84:"NUM",85:"COLON",86:"UNIT",87:"SPACE",88:"BRKT",89:"PCT",92:"graphCodeTokens",94:"TAGSTART",95:"TAGEND",96:"==",97:"--",98:"DEFAULT",99:"MINUS",100:"keywords",101:"UNICODE_TEXT",102:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,6],[43,2],[43,3],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[56,1],[56,3],[32,1],[32,1],[32,1],[32,1],[51,3],[51,2],[51,2],[51,1],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[57,1],[57,3],[82,1],[82,2],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[90,1],[90,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[93,1],[93,1],[93,1],[93,1],[16,1],[16,1],[16,1],[16,1],[19,1],[53,1]],performAction:p(function(l,c,d,n,g,t,q){var s=t.length-1;switch(g){case 8:this.$=t[s-1];break;case 9:case 12:case 14:this.$=t[s];break;case 10:case 13:this.$=t[s-2]+"."+t[s];break;case 11:case 15:this.$=t[s-1]+t[s];break;case 16:case 17:this.$=t[s-1]+"~"+t[s]+"~";break;case 18:n.addRelation(t[s]);break;case 19:t[s-1].title=n.cleanupLabel(t[s]),n.addRelation(t[s-1]);break;case 30:this.$=t[s].trim(),n.setAccTitle(this.$);break;case 31:case 32:this.$=t[s].trim(),n.setAccDescription(this.$);break;case 33:n.addClassesToNamespace(t[s-3],t[s-1]);break;case 34:n.addClassesToNamespace(t[s-4],t[s-1]);break;case 35:this.$=t[s],n.addNamespace(t[s]);break;case 36:this.$=[t[s]];break;case 37:this.$=[t[s-1]];break;case 38:t[s].unshift(t[s-2]),this.$=t[s];break;case 40:n.setCssClass(t[s-2],t[s]);break;case 41:n.addMembers(t[s-3],t[s-1]);break;case 42:n.setCssClass(t[s-5],t[s-3]),n.addMembers(t[s-5],t[s-1]);break;case 43:this.$=t[s],n.addClass(t[s]);break;case 44:this.$=t[s-1],n.addClass(t[s-1]),n.setClassLabel(t[s-1],t[s]);break;case 45:n.addAnnotation(t[s],t[s-2]);break;case 46:case 59:this.$=[t[s]];break;case 47:t[s].push(t[s-1]),this.$=t[s];break;case 48:break;case 49:n.addMember(t[s-1],n.cleanupLabel(t[s]));break;case 50:break;case 51:break;case 52:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 53:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 54:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 55:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 56:n.addNote(t[s],t[s-1]);break;case 57:n.addNote(t[s]);break;case 58:this.$=t[s-2],n.defineClass(t[s-1],t[s]);break;case 60:this.$=t[s-2].concat([t[s]]);break;case 61:n.setDirection("TB");break;case 62:n.setDirection("BT");break;case 63:n.setDirection("RL");break;case 64:n.setDirection("LR");break;case 65:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 66:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 67:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 68:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 69:this.$=n.relationType.AGGREGATION;break;case 70:this.$=n.relationType.EXTENSION;break;case 71:this.$=n.relationType.COMPOSITION;break;case 72:this.$=n.relationType.DEPENDENCY;break;case 73:this.$=n.relationType.LOLLIPOP;break;case 74:this.$=n.lineType.LINE;break;case 75:this.$=n.lineType.DOTTED_LINE;break;case 76:case 82:this.$=t[s-2],n.setClickEvent(t[s-1],t[s]);break;case 77:case 83:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 78:this.$=t[s-2],n.setLink(t[s-1],t[s]);break;case 79:this.$=t[s-3],n.setLink(t[s-2],t[s-1],t[s]);break;case 80:this.$=t[s-3],n.setLink(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 81:this.$=t[s-4],n.setLink(t[s-3],t[s-2],t[s]),n.setTooltip(t[s-3],t[s-1]);break;case 84:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1],t[s]);break;case 85:this.$=t[s-4],n.setClickEvent(t[s-3],t[s-2],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 86:this.$=t[s-3],n.setLink(t[s-2],t[s]);break;case 87:this.$=t[s-4],n.setLink(t[s-3],t[s-1],t[s]);break;case 88:this.$=t[s-4],n.setLink(t[s-3],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 89:this.$=t[s-5],n.setLink(t[s-4],t[s-2],t[s]),n.setTooltip(t[s-4],t[s-1]);break;case 90:this.$=t[s-2],n.setCssStyle(t[s-1],t[s]);break;case 91:n.setCssClass(t[s-1],t[s]);break;case 92:this.$=[t[s]];break;case 93:t[s-2].push(t[s]),this.$=t[s-2];break;case 95:this.$=t[s-1]+t[s];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:r,37:u,38:22,42:a,43:23,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(Te,[2,5],{8:[1,48]}),{8:[1,49]},e(h,[2,18],{22:[1,50]}),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(h,[2,23]),e(h,[2,24]),e(h,[2,25]),e(h,[2,26]),e(h,[2,27]),e(h,[2,28]),e(h,[2,29]),{34:[1,51]},{36:[1,52]},e(h,[2,32]),e(h,[2,48],{51:53,64:56,65:57,13:[1,54],22:[1,55],66:J,67:Z,68:$,69:ee,70:te,71:ke,72:De}),{39:[1,65]},e(se,[2,39],{39:[1,67],44:[1,66]}),e(h,[2,50]),e(h,[2,51]),{16:68,58:C,84:m,99:b,101:E},{16:39,18:69,19:40,58:C,84:m,99:b,101:E,102:k},{16:39,18:70,19:40,58:C,84:m,99:b,101:E,102:k},{16:39,18:71,19:40,58:C,84:m,99:b,101:E,102:k},{58:[1,72]},{13:[1,73]},{16:39,18:74,19:40,58:C,84:m,99:b,101:E,102:k},{13:we,53:75},{56:77,58:[1,78]},e(h,[2,61]),e(h,[2,62]),e(h,[2,63]),e(h,[2,64]),e(V,[2,12],{16:39,19:40,18:80,17:[1,79],20:[1,81],58:C,84:m,99:b,101:E,102:k}),e(V,[2,14],{20:[1,82]}),{15:83,16:84,58:C,84:m,99:b,101:E},{16:39,18:85,19:40,58:C,84:m,99:b,101:E,102:k},e(ie,[2,118]),e(ie,[2,119]),e(ie,[2,120]),e(ie,[2,121]),e([1,8,9,12,13,20,22,39,41,44,66,67,68,69,70,71,72,77,79],[2,122]),e(Te,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,18:21,38:22,43:23,16:39,19:40,5:86,33:i,35:r,37:u,42:a,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k}),{5:87,10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:r,37:u,38:22,42:a,43:23,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k},e(h,[2,19]),e(h,[2,30]),e(h,[2,31]),{13:[1,89],16:39,18:88,19:40,58:C,84:m,99:b,101:E,102:k},{51:90,64:56,65:57,66:J,67:Z,68:$,69:ee,70:te,71:ke,72:De},e(h,[2,49]),{65:91,71:ke,72:De},e(ae,[2,68],{64:92,66:J,67:Z,68:$,69:ee,70:te}),e(R,[2,69]),e(R,[2,70]),e(R,[2,71]),e(R,[2,72]),e(R,[2,73]),e(Ve,[2,74]),e(Ve,[2,75]),{8:[1,94],24:95,40:93,43:23,46:o},{16:96,58:C,84:m,99:b,101:E},{45:97,49:Fe},{48:[1,99]},{13:[1,100]},{13:[1,101]},{77:[1,102],79:[1,103]},{22:G,57:104,58:U,80:z,82:105,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},{58:[1,116]},{13:we,53:117},e(h,[2,57]),e(h,[2,123]),{22:G,57:118,58:U,59:[1,119],80:z,82:105,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},e(Pe,[2,59]),{16:39,18:120,19:40,58:C,84:m,99:b,101:E,102:k},e(V,[2,15]),e(V,[2,16]),e(V,[2,17]),{39:[2,35]},{15:122,16:84,17:[1,121],39:[2,9],58:C,84:m,99:b,101:E},e(Be,[2,43],{11:123,12:[1,124]}),e(Te,[2,7]),{9:[1,125]},e(ne,[2,52]),{16:39,18:126,19:40,58:C,84:m,99:b,101:E,102:k},{13:[1,128],16:39,18:127,19:40,58:C,84:m,99:b,101:E,102:k},e(ae,[2,67],{64:129,66:J,67:Z,68:$,69:ee,70:te}),e(ae,[2,66]),{41:[1,130]},{24:95,40:131,43:23,46:o},{8:[1,132],41:[2,36]},e(se,[2,40],{39:[1,133]}),{41:[1,134]},{41:[2,46],45:135,49:Fe},{16:39,18:136,19:40,58:C,84:m,99:b,101:E,102:k},e(h,[2,76],{13:[1,137]}),e(h,[2,78],{13:[1,139],75:[1,138]}),e(h,[2,82],{13:[1,140],78:[1,141]}),{13:[1,142]},e(h,[2,90],{59:Me}),e(Re,[2,92],{83:144,22:G,58:U,80:z,84:K,85:Y,86:Q,87:W,88:j,89:X}),e(N,[2,94]),e(N,[2,96]),e(N,[2,97]),e(N,[2,98]),e(N,[2,99]),e(N,[2,100]),e(N,[2,101]),e(N,[2,102]),e(N,[2,103]),e(N,[2,104]),e(h,[2,91]),e(h,[2,56]),e(h,[2,58],{59:Me}),{58:[1,145]},e(V,[2,13]),{15:146,16:84,58:C,84:m,99:b,101:E},{39:[2,11]},e(Be,[2,44]),{13:[1,147]},{1:[2,4]},e(ne,[2,54]),e(ne,[2,53]),{16:39,18:148,19:40,58:C,84:m,99:b,101:E,102:k},e(ae,[2,65]),e(h,[2,33]),{41:[1,149]},{24:95,40:150,41:[2,37],43:23,46:o},{45:151,49:Fe},e(se,[2,41]),{41:[2,47]},e(h,[2,45]),e(h,[2,77]),e(h,[2,79]),e(h,[2,80],{75:[1,152]}),e(h,[2,83]),e(h,[2,84],{13:[1,153]}),e(h,[2,86],{13:[1,155],75:[1,154]}),{22:G,58:U,80:z,82:156,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},e(N,[2,95]),e(Pe,[2,60]),{39:[2,10]},{14:[1,157]},e(ne,[2,55]),e(h,[2,34]),{41:[2,38]},{41:[1,158]},e(h,[2,81]),e(h,[2,85]),e(h,[2,87]),e(h,[2,88],{75:[1,159]}),e(Re,[2,93],{83:144,22:G,58:U,80:z,84:K,85:Y,86:Q,87:W,88:j,89:X}),e(Be,[2,8]),e(se,[2,42]),e(h,[2,89])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,35],122:[2,11],125:[2,4],135:[2,47],146:[2,10],150:[2,38]},parseError:p(function(l,c){if(c.recoverable)this.trace(l);else{var d=new Error(l);throw d.hash=c,d}},"parseError"),parse:p(function(l){var c=this,d=[0],n=[],g=[null],t=[],q=this.table,s="",ue=0,Ge=0,Xe=2,Ue=1,qe=t.slice.call(arguments,1),y=Object.create(this.lexer),I={yy:{}};for(var Se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Se)&&(I.yy[Se]=this.yy[Se]);y.setInput(l,I.yy),I.yy.lexer=y,I.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var Ne=y.yylloc;t.push(Ne);var He=y.options&&y.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Je(B){d.length=d.length-2*B,g.length=g.length-B,t.length=t.length-B}p(Je,"popStack");function ze(){var B;return B=n.pop()||y.lex()||Ue,typeof B!="number"&&(B instanceof Array&&(n=B,B=n.pop()),B=c.symbols_[B]||B),B}p(ze,"lex");for(var F,O,S,Le,P={},le,L,Ke,ce;;){if(O=d[d.length-1],this.defaultActions[O]?S=this.defaultActions[O]:((F===null||typeof F>"u")&&(F=ze()),S=q[O]&&q[O][F]),typeof S>"u"||!S.length||!S[0]){var xe="";ce=[];for(le in q[O])this.terminals_[le]&&le>Xe&&ce.push("'"+this.terminals_[le]+"'");y.showPosition?xe="Parse error on line "+(ue+1)+`:
1
+ import{g as Ze,s as $e}from"./chunk-RZ5BOZE2-DNWczlot.js";import{_ as p,l as ve,c as D,p as et,r as tt,u as Ie,d as H,b as st,a as it,s as at,g as nt,q as rt,t as ut,k as x,z as lt,y as ct,i as ot,S as M}from"./mermaid.core-DsqDVkGt.js";var Oe=function(){var e=p(function(v,l,c,d){for(c=c||{},d=v.length;d--;c[v[d]]=l);return c},"o"),i=[1,18],r=[1,19],u=[1,20],a=[1,41],o=[1,42],A=[1,26],f=[1,24],T=[1,25],_=[1,32],he=[1,33],de=[1,34],C=[1,45],pe=[1,35],Ae=[1,36],fe=[1,37],ge=[1,38],Ce=[1,27],me=[1,28],be=[1,29],Ee=[1,30],ye=[1,31],m=[1,44],b=[1,46],E=[1,43],k=[1,47],Te=[1,9],h=[1,8,9],J=[1,58],Z=[1,59],$=[1,60],ee=[1,61],te=[1,62],ke=[1,63],De=[1,64],se=[1,8,9,41],we=[1,76],V=[1,8,9,12,13,22,39,41,44,66,67,68,69,70,71,72,77,79],ie=[1,8,9,12,13,17,20,22,39,41,44,48,58,66,67,68,69,70,71,72,77,79,84,99,101,102],ae=[13,58,84,99,101,102],R=[13,58,71,72,84,99,101,102],Ve=[13,58,66,67,68,69,70,84,99,101,102],Fe=[1,98],G=[1,115],U=[1,107],z=[1,113],K=[1,108],Y=[1,109],Q=[1,110],W=[1,111],j=[1,112],X=[1,114],Pe=[22,58,59,80,84,85,86,87,88,89],Be=[1,8,9,39,41,44],ne=[1,8,9,22],Me=[1,143],Re=[1,8,9,59],N=[1,8,9,22,58,59,80,84,85,86,87,88,89],_e={trace:p(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,DOT:17,className:18,classLiteralName:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,ANNOTATION_START:47,ANNOTATION_END:48,MEMBER:49,SEPARATOR:50,relation:51,NOTE_FOR:52,noteText:53,NOTE:54,CLASSDEF:55,classList:56,stylesOpt:57,ALPHA:58,COMMA:59,direction_tb:60,direction_bt:61,direction_rl:62,direction_lr:63,relationType:64,lineType:65,AGGREGATION:66,EXTENSION:67,COMPOSITION:68,DEPENDENCY:69,LOLLIPOP:70,LINE:71,DOTTED_LINE:72,CALLBACK:73,LINK:74,LINK_TARGET:75,CLICK:76,CALLBACK_NAME:77,CALLBACK_ARGS:78,HREF:79,STYLE:80,CSSCLASS:81,style:82,styleComponent:83,NUM:84,COLON:85,UNIT:86,SPACE:87,BRKT:88,PCT:89,commentToken:90,textToken:91,graphCodeTokens:92,textNoTagsToken:93,TAGSTART:94,TAGEND:95,"==":96,"--":97,DEFAULT:98,MINUS:99,keywords:100,UNICODE_TEXT:101,BQUOTE_STR:102,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",17:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",47:"ANNOTATION_START",48:"ANNOTATION_END",49:"MEMBER",50:"SEPARATOR",52:"NOTE_FOR",54:"NOTE",55:"CLASSDEF",58:"ALPHA",59:"COMMA",60:"direction_tb",61:"direction_bt",62:"direction_rl",63:"direction_lr",66:"AGGREGATION",67:"EXTENSION",68:"COMPOSITION",69:"DEPENDENCY",70:"LOLLIPOP",71:"LINE",72:"DOTTED_LINE",73:"CALLBACK",74:"LINK",75:"LINK_TARGET",76:"CLICK",77:"CALLBACK_NAME",78:"CALLBACK_ARGS",79:"HREF",80:"STYLE",81:"CSSCLASS",84:"NUM",85:"COLON",86:"UNIT",87:"SPACE",88:"BRKT",89:"PCT",92:"graphCodeTokens",94:"TAGSTART",95:"TAGEND",96:"==",97:"--",98:"DEFAULT",99:"MINUS",100:"keywords",101:"UNICODE_TEXT",102:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,3],[15,2],[18,1],[18,3],[18,1],[18,2],[18,2],[18,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,6],[43,2],[43,3],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[56,1],[56,3],[32,1],[32,1],[32,1],[32,1],[51,3],[51,2],[51,2],[51,1],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[57,1],[57,3],[82,1],[82,2],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[90,1],[90,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[93,1],[93,1],[93,1],[93,1],[16,1],[16,1],[16,1],[16,1],[19,1],[53,1]],performAction:p(function(l,c,d,n,g,t,q){var s=t.length-1;switch(g){case 8:this.$=t[s-1];break;case 9:case 12:case 14:this.$=t[s];break;case 10:case 13:this.$=t[s-2]+"."+t[s];break;case 11:case 15:this.$=t[s-1]+t[s];break;case 16:case 17:this.$=t[s-1]+"~"+t[s]+"~";break;case 18:n.addRelation(t[s]);break;case 19:t[s-1].title=n.cleanupLabel(t[s]),n.addRelation(t[s-1]);break;case 30:this.$=t[s].trim(),n.setAccTitle(this.$);break;case 31:case 32:this.$=t[s].trim(),n.setAccDescription(this.$);break;case 33:n.addClassesToNamespace(t[s-3],t[s-1]);break;case 34:n.addClassesToNamespace(t[s-4],t[s-1]);break;case 35:this.$=t[s],n.addNamespace(t[s]);break;case 36:this.$=[t[s]];break;case 37:this.$=[t[s-1]];break;case 38:t[s].unshift(t[s-2]),this.$=t[s];break;case 40:n.setCssClass(t[s-2],t[s]);break;case 41:n.addMembers(t[s-3],t[s-1]);break;case 42:n.setCssClass(t[s-5],t[s-3]),n.addMembers(t[s-5],t[s-1]);break;case 43:this.$=t[s],n.addClass(t[s]);break;case 44:this.$=t[s-1],n.addClass(t[s-1]),n.setClassLabel(t[s-1],t[s]);break;case 45:n.addAnnotation(t[s],t[s-2]);break;case 46:case 59:this.$=[t[s]];break;case 47:t[s].push(t[s-1]),this.$=t[s];break;case 48:break;case 49:n.addMember(t[s-1],n.cleanupLabel(t[s]));break;case 50:break;case 51:break;case 52:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 53:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 54:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 55:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 56:n.addNote(t[s],t[s-1]);break;case 57:n.addNote(t[s]);break;case 58:this.$=t[s-2],n.defineClass(t[s-1],t[s]);break;case 60:this.$=t[s-2].concat([t[s]]);break;case 61:n.setDirection("TB");break;case 62:n.setDirection("BT");break;case 63:n.setDirection("RL");break;case 64:n.setDirection("LR");break;case 65:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 66:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 67:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 68:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 69:this.$=n.relationType.AGGREGATION;break;case 70:this.$=n.relationType.EXTENSION;break;case 71:this.$=n.relationType.COMPOSITION;break;case 72:this.$=n.relationType.DEPENDENCY;break;case 73:this.$=n.relationType.LOLLIPOP;break;case 74:this.$=n.lineType.LINE;break;case 75:this.$=n.lineType.DOTTED_LINE;break;case 76:case 82:this.$=t[s-2],n.setClickEvent(t[s-1],t[s]);break;case 77:case 83:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 78:this.$=t[s-2],n.setLink(t[s-1],t[s]);break;case 79:this.$=t[s-3],n.setLink(t[s-2],t[s-1],t[s]);break;case 80:this.$=t[s-3],n.setLink(t[s-2],t[s-1]),n.setTooltip(t[s-2],t[s]);break;case 81:this.$=t[s-4],n.setLink(t[s-3],t[s-2],t[s]),n.setTooltip(t[s-3],t[s-1]);break;case 84:this.$=t[s-3],n.setClickEvent(t[s-2],t[s-1],t[s]);break;case 85:this.$=t[s-4],n.setClickEvent(t[s-3],t[s-2],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 86:this.$=t[s-3],n.setLink(t[s-2],t[s]);break;case 87:this.$=t[s-4],n.setLink(t[s-3],t[s-1],t[s]);break;case 88:this.$=t[s-4],n.setLink(t[s-3],t[s-1]),n.setTooltip(t[s-3],t[s]);break;case 89:this.$=t[s-5],n.setLink(t[s-4],t[s-2],t[s]),n.setTooltip(t[s-4],t[s-1]);break;case 90:this.$=t[s-2],n.setCssStyle(t[s-1],t[s]);break;case 91:n.setCssClass(t[s-1],t[s]);break;case 92:this.$=[t[s]];break;case 93:t[s-2].push(t[s]),this.$=t[s-2];break;case 95:this.$=t[s-1]+t[s];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:r,37:u,38:22,42:a,43:23,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(Te,[2,5],{8:[1,48]}),{8:[1,49]},e(h,[2,18],{22:[1,50]}),e(h,[2,20]),e(h,[2,21]),e(h,[2,22]),e(h,[2,23]),e(h,[2,24]),e(h,[2,25]),e(h,[2,26]),e(h,[2,27]),e(h,[2,28]),e(h,[2,29]),{34:[1,51]},{36:[1,52]},e(h,[2,32]),e(h,[2,48],{51:53,64:56,65:57,13:[1,54],22:[1,55],66:J,67:Z,68:$,69:ee,70:te,71:ke,72:De}),{39:[1,65]},e(se,[2,39],{39:[1,67],44:[1,66]}),e(h,[2,50]),e(h,[2,51]),{16:68,58:C,84:m,99:b,101:E},{16:39,18:69,19:40,58:C,84:m,99:b,101:E,102:k},{16:39,18:70,19:40,58:C,84:m,99:b,101:E,102:k},{16:39,18:71,19:40,58:C,84:m,99:b,101:E,102:k},{58:[1,72]},{13:[1,73]},{16:39,18:74,19:40,58:C,84:m,99:b,101:E,102:k},{13:we,53:75},{56:77,58:[1,78]},e(h,[2,61]),e(h,[2,62]),e(h,[2,63]),e(h,[2,64]),e(V,[2,12],{16:39,19:40,18:80,17:[1,79],20:[1,81],58:C,84:m,99:b,101:E,102:k}),e(V,[2,14],{20:[1,82]}),{15:83,16:84,58:C,84:m,99:b,101:E},{16:39,18:85,19:40,58:C,84:m,99:b,101:E,102:k},e(ie,[2,118]),e(ie,[2,119]),e(ie,[2,120]),e(ie,[2,121]),e([1,8,9,12,13,20,22,39,41,44,66,67,68,69,70,71,72,77,79],[2,122]),e(Te,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,18:21,38:22,43:23,16:39,19:40,5:86,33:i,35:r,37:u,42:a,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k}),{5:87,10:5,16:39,18:21,19:40,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:r,37:u,38:22,42:a,43:23,46:o,47:A,49:f,50:T,52:_,54:he,55:de,58:C,60:pe,61:Ae,62:fe,63:ge,73:Ce,74:me,76:be,80:Ee,81:ye,84:m,99:b,101:E,102:k},e(h,[2,19]),e(h,[2,30]),e(h,[2,31]),{13:[1,89],16:39,18:88,19:40,58:C,84:m,99:b,101:E,102:k},{51:90,64:56,65:57,66:J,67:Z,68:$,69:ee,70:te,71:ke,72:De},e(h,[2,49]),{65:91,71:ke,72:De},e(ae,[2,68],{64:92,66:J,67:Z,68:$,69:ee,70:te}),e(R,[2,69]),e(R,[2,70]),e(R,[2,71]),e(R,[2,72]),e(R,[2,73]),e(Ve,[2,74]),e(Ve,[2,75]),{8:[1,94],24:95,40:93,43:23,46:o},{16:96,58:C,84:m,99:b,101:E},{45:97,49:Fe},{48:[1,99]},{13:[1,100]},{13:[1,101]},{77:[1,102],79:[1,103]},{22:G,57:104,58:U,80:z,82:105,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},{58:[1,116]},{13:we,53:117},e(h,[2,57]),e(h,[2,123]),{22:G,57:118,58:U,59:[1,119],80:z,82:105,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},e(Pe,[2,59]),{16:39,18:120,19:40,58:C,84:m,99:b,101:E,102:k},e(V,[2,15]),e(V,[2,16]),e(V,[2,17]),{39:[2,35]},{15:122,16:84,17:[1,121],39:[2,9],58:C,84:m,99:b,101:E},e(Be,[2,43],{11:123,12:[1,124]}),e(Te,[2,7]),{9:[1,125]},e(ne,[2,52]),{16:39,18:126,19:40,58:C,84:m,99:b,101:E,102:k},{13:[1,128],16:39,18:127,19:40,58:C,84:m,99:b,101:E,102:k},e(ae,[2,67],{64:129,66:J,67:Z,68:$,69:ee,70:te}),e(ae,[2,66]),{41:[1,130]},{24:95,40:131,43:23,46:o},{8:[1,132],41:[2,36]},e(se,[2,40],{39:[1,133]}),{41:[1,134]},{41:[2,46],45:135,49:Fe},{16:39,18:136,19:40,58:C,84:m,99:b,101:E,102:k},e(h,[2,76],{13:[1,137]}),e(h,[2,78],{13:[1,139],75:[1,138]}),e(h,[2,82],{13:[1,140],78:[1,141]}),{13:[1,142]},e(h,[2,90],{59:Me}),e(Re,[2,92],{83:144,22:G,58:U,80:z,84:K,85:Y,86:Q,87:W,88:j,89:X}),e(N,[2,94]),e(N,[2,96]),e(N,[2,97]),e(N,[2,98]),e(N,[2,99]),e(N,[2,100]),e(N,[2,101]),e(N,[2,102]),e(N,[2,103]),e(N,[2,104]),e(h,[2,91]),e(h,[2,56]),e(h,[2,58],{59:Me}),{58:[1,145]},e(V,[2,13]),{15:146,16:84,58:C,84:m,99:b,101:E},{39:[2,11]},e(Be,[2,44]),{13:[1,147]},{1:[2,4]},e(ne,[2,54]),e(ne,[2,53]),{16:39,18:148,19:40,58:C,84:m,99:b,101:E,102:k},e(ae,[2,65]),e(h,[2,33]),{41:[1,149]},{24:95,40:150,41:[2,37],43:23,46:o},{45:151,49:Fe},e(se,[2,41]),{41:[2,47]},e(h,[2,45]),e(h,[2,77]),e(h,[2,79]),e(h,[2,80],{75:[1,152]}),e(h,[2,83]),e(h,[2,84],{13:[1,153]}),e(h,[2,86],{13:[1,155],75:[1,154]}),{22:G,58:U,80:z,82:156,83:106,84:K,85:Y,86:Q,87:W,88:j,89:X},e(N,[2,95]),e(Pe,[2,60]),{39:[2,10]},{14:[1,157]},e(ne,[2,55]),e(h,[2,34]),{41:[2,38]},{41:[1,158]},e(h,[2,81]),e(h,[2,85]),e(h,[2,87]),e(h,[2,88],{75:[1,159]}),e(Re,[2,93],{83:144,22:G,58:U,80:z,84:K,85:Y,86:Q,87:W,88:j,89:X}),e(Be,[2,8]),e(se,[2,42]),e(h,[2,89])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,35],122:[2,11],125:[2,4],135:[2,47],146:[2,10],150:[2,38]},parseError:p(function(l,c){if(c.recoverable)this.trace(l);else{var d=new Error(l);throw d.hash=c,d}},"parseError"),parse:p(function(l){var c=this,d=[0],n=[],g=[null],t=[],q=this.table,s="",ue=0,Ge=0,Xe=2,Ue=1,qe=t.slice.call(arguments,1),y=Object.create(this.lexer),I={yy:{}};for(var Se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Se)&&(I.yy[Se]=this.yy[Se]);y.setInput(l,I.yy),I.yy.lexer=y,I.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var Ne=y.yylloc;t.push(Ne);var He=y.options&&y.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Je(B){d.length=d.length-2*B,g.length=g.length-B,t.length=t.length-B}p(Je,"popStack");function ze(){var B;return B=n.pop()||y.lex()||Ue,typeof B!="number"&&(B instanceof Array&&(n=B,B=n.pop()),B=c.symbols_[B]||B),B}p(ze,"lex");for(var F,O,S,Le,P={},le,L,Ke,ce;;){if(O=d[d.length-1],this.defaultActions[O]?S=this.defaultActions[O]:((F===null||typeof F>"u")&&(F=ze()),S=q[O]&&q[O][F]),typeof S>"u"||!S.length||!S[0]){var xe="";ce=[];for(le in q[O])this.terminals_[le]&&le>Xe&&ce.push("'"+this.terminals_[le]+"'");y.showPosition?xe="Parse error on line "+(ue+1)+`:
2
2
  `+y.showPosition()+`
3
3
  Expecting `+ce.join(", ")+", got '"+(this.terminals_[F]||F)+"'":xe="Parse error on line "+(ue+1)+": Unexpected "+(F==Ue?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(xe,{text:y.match,token:this.terminals_[F]||F,line:y.yylineno,loc:Ne,expected:ce})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+F);switch(S[0]){case 1:d.push(F),g.push(y.yytext),t.push(y.yylloc),d.push(S[1]),F=null,Ge=y.yyleng,s=y.yytext,ue=y.yylineno,Ne=y.yylloc;break;case 2:if(L=this.productions_[S[1]][1],P.$=g[g.length-L],P._$={first_line:t[t.length-(L||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(L||1)].first_column,last_column:t[t.length-1].last_column},He&&(P._$.range=[t[t.length-(L||1)].range[0],t[t.length-1].range[1]]),Le=this.performAction.apply(P,[s,Ge,ue,I.yy,S[1],g,t].concat(qe)),typeof Le<"u")return Le;L&&(d=d.slice(0,-1*L*2),g=g.slice(0,-1*L),t=t.slice(0,-1*L)),d.push(this.productions_[S[1]][0]),g.push(P.$),t.push(P._$),Ke=q[d[d.length-2]][d[d.length-1]],d.push(Ke);break;case 3:return!0}}return!0},"parse")},je=function(){var v={EOF:1,parseError:p(function(c,d){if(this.yy.parser)this.yy.parser.parseError(c,d);else throw new Error(c)},"parseError"),setInput:p(function(l,c){return this.yy=c||this.yy||{},this._input=l,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:p(function(){var l=this._input[0];this.yytext+=l,this.yyleng++,this.offset++,this.match+=l,this.matched+=l;var c=l.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),l},"input"),unput:p(function(l){var c=l.length,d=l.split(/(?:\r\n?|\n)/g);this._input=l+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var g=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===n.length?this.yylloc.first_column:0)+n[n.length-d.length].length-d[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[g[0],g[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:p(function(){return this._more=!0,this},"more"),reject:p(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:p(function(l){this.unput(this.match.slice(l))},"less"),pastInput:p(function(){var l=this.matched.substr(0,this.matched.length-this.match.length);return(l.length>20?"...":"")+l.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:p(function(){var l=this.match;return l.length<20&&(l+=this._input.substr(0,20-l.length)),(l.substr(0,20)+(l.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:p(function(){var l=this.pastInput(),c=new Array(l.length+1).join("-");return l+this.upcomingInput()+`
@@ -1,4 +1,4 @@
1
- import{g as se,s as ie}from"./chunk-RZ5BOZE2-DV_xVoQ0.js";import{_ as u,l as b,c as C,r as re,u as ae,T as ne,k as V,z as le,a as oe,b as ce,g as he,s as ue,q as de,t as fe}from"./mermaid.core-B2I2nVa9.js";var mt=function(){var t=u(function(w,l,c,a){for(c=c||{},a=w.length;a--;c[w[a]]=l);return c},"o"),e=[1,2],o=[1,3],r=[1,4],d=[2,4],i=[1,9],p=[1,11],g=[1,16],n=[1,17],T=[1,18],m=[1,19],R=[1,32],A=[1,20],f=[1,21],x=[1,22],L=[1,23],P=[1,24],B=[1,26],O=[1,27],N=[1,28],q=[1,29],Q=[1,30],Z=[1,31],tt=[1,34],et=[1,35],st=[1,36],it=[1,37],j=[1,33],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],rt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],Ct=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],ft={trace:u(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:u(function(l,c,a,y,_,s,z){var h=s.length-1;switch(_){case 3:return y.setRootDoc(s[h]),s[h];case 4:this.$=[];break;case 5:s[h]!="nl"&&(s[h-1].push(s[h]),this.$=s[h-1]);break;case 6:case 7:this.$=s[h];break;case 8:this.$="nl";break;case 12:this.$=s[h];break;case 13:const H=s[h-1];H.description=y.trimColon(s[h]),this.$=H;break;case 14:this.$={stmt:"relation",state1:s[h-2],state2:s[h]};break;case 15:const pt=y.trimColon(s[h]);this.$={stmt:"relation",state1:s[h-3],state2:s[h-1],description:pt};break;case 19:this.$={stmt:"state",id:s[h-3],type:"default",description:"",doc:s[h-1]};break;case 20:var G=s[h],M=s[h-2].trim();if(s[h].match(":")){var nt=s[h].split(":");G=nt[0],M=[M,nt[1]]}this.$={stmt:"state",id:G,type:"default",description:M};break;case 21:this.$={stmt:"state",id:s[h-3],type:"default",description:s[h-5],doc:s[h-1]};break;case 22:this.$={stmt:"state",id:s[h],type:"fork"};break;case 23:this.$={stmt:"state",id:s[h],type:"join"};break;case 24:this.$={stmt:"state",id:s[h],type:"choice"};break;case 25:this.$={stmt:"state",id:y.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:s[h-1].trim(),note:{position:s[h-2].trim(),text:s[h].trim()}};break;case 29:this.$=s[h].trim(),y.setAccTitle(this.$);break;case 30:case 31:this.$=s[h].trim(),y.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:s[h-1].trim(),classes:s[h].trim()};break;case 34:this.$={stmt:"style",id:s[h-1].trim(),styleClass:s[h].trim()};break;case 35:this.$={stmt:"applyClass",id:s[h-1].trim(),styleClass:s[h].trim()};break;case 36:y.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:y.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:y.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:y.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:s[h].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:s[h-2].trim(),classes:[s[h].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:s[h-2].trim(),classes:[s[h].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:r},{1:[3]},{3:5,4:e,5:o,6:r},{3:6,4:e,5:o,6:r},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],d,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:g,17:n,19:T,22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,39],15:[1,40]}),t(S,[2,16]),{18:[1,41]},t(S,[2,18],{20:[1,42]}),{23:[1,43]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(S,[2,28]),{34:[1,48]},{36:[1,49]},t(S,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(rt,[2,42],{55:[1,54]}),t(rt,[2,43],{55:[1,55]}),t(S,[2,36]),t(S,[2,37]),t(S,[2,38]),t(S,[2,39]),t(S,[2,6]),t(S,[2,13]),{13:56,24:R,54:j},t(S,[2,17]),t(Ct,d,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(S,[2,29]),t(S,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(S,[2,14],{14:[1,67]}),{4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,21:[1,68],22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(S,[2,32]),t(S,[2,33]),t(S,[2,34]),t(S,[2,35]),t(rt,[2,44]),t(rt,[2,45]),t(S,[2,15]),t(S,[2,19]),t(Ct,d,{7:72}),t(S,[2,26]),t(S,[2,27]),{4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,21:[1,73],22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:u(function(l,c){if(c.recoverable)this.trace(l);else{var a=new Error(l);throw a.hash=c,a}},"parseError"),parse:u(function(l){var c=this,a=[0],y=[],_=[null],s=[],z=this.table,h="",G=0,M=0,nt=2,H=1,pt=s.slice.call(arguments,1),E=Object.create(this.lexer),Y={yy:{}};for(var St in this.yy)Object.prototype.hasOwnProperty.call(this.yy,St)&&(Y.yy[St]=this.yy[St]);E.setInput(l,Y.yy),Y.yy.lexer=E,Y.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var yt=E.yylloc;s.push(yt);var te=E.options&&E.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(v){a.length=a.length-2*v,_.length=_.length-v,s.length=s.length-v}u(ee,"popStack");function xt(){var v;return v=y.pop()||E.lex()||H,typeof v!="number"&&(v instanceof Array&&(y=v,v=y.pop()),v=c.symbols_[v]||v),v}u(xt,"lex");for(var D,F,k,gt,U={},lt,I,At,ot;;){if(F=a[a.length-1],this.defaultActions[F]?k=this.defaultActions[F]:((D===null||typeof D>"u")&&(D=xt()),k=z[F]&&z[F][D]),typeof k>"u"||!k.length||!k[0]){var Tt="";ot=[];for(lt in z[F])this.terminals_[lt]&&lt>nt&&ot.push("'"+this.terminals_[lt]+"'");E.showPosition?Tt="Parse error on line "+(G+1)+`:
1
+ import{g as se,s as ie}from"./chunk-RZ5BOZE2-DNWczlot.js";import{_ as u,l as b,c as C,r as re,u as ae,T as ne,k as V,z as le,a as oe,b as ce,g as he,s as ue,q as de,t as fe}from"./mermaid.core-DsqDVkGt.js";var mt=function(){var t=u(function(w,l,c,a){for(c=c||{},a=w.length;a--;c[w[a]]=l);return c},"o"),e=[1,2],o=[1,3],r=[1,4],d=[2,4],i=[1,9],p=[1,11],g=[1,16],n=[1,17],T=[1,18],m=[1,19],R=[1,32],A=[1,20],f=[1,21],x=[1,22],L=[1,23],P=[1,24],B=[1,26],O=[1,27],N=[1,28],q=[1,29],Q=[1,30],Z=[1,31],tt=[1,34],et=[1,35],st=[1,36],it=[1,37],j=[1,33],S=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],rt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],Ct=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],ft={trace:u(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,style:42,STYLE_IDS:43,STYLEDEF_STYLEOPTS:44,class:45,CLASSENTITY_IDS:46,STYLECLASS:47,direction_tb:48,direction_bt:49,direction_rl:50,direction_lr:51,eol:52,";":53,EDGE_STATE:54,STYLE_SEPARATOR:55,left_of:56,right_of:57,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"style",43:"STYLE_IDS",44:"STYLEDEF_STYLEOPTS",45:"class",46:"CLASSENTITY_IDS",47:"STYLECLASS",48:"direction_tb",49:"direction_bt",50:"direction_rl",51:"direction_lr",53:";",54:"EDGE_STATE",55:"STYLE_SEPARATOR",56:"left_of",57:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[52,1],[52,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:u(function(l,c,a,y,_,s,z){var h=s.length-1;switch(_){case 3:return y.setRootDoc(s[h]),s[h];case 4:this.$=[];break;case 5:s[h]!="nl"&&(s[h-1].push(s[h]),this.$=s[h-1]);break;case 6:case 7:this.$=s[h];break;case 8:this.$="nl";break;case 12:this.$=s[h];break;case 13:const H=s[h-1];H.description=y.trimColon(s[h]),this.$=H;break;case 14:this.$={stmt:"relation",state1:s[h-2],state2:s[h]};break;case 15:const pt=y.trimColon(s[h]);this.$={stmt:"relation",state1:s[h-3],state2:s[h-1],description:pt};break;case 19:this.$={stmt:"state",id:s[h-3],type:"default",description:"",doc:s[h-1]};break;case 20:var G=s[h],M=s[h-2].trim();if(s[h].match(":")){var nt=s[h].split(":");G=nt[0],M=[M,nt[1]]}this.$={stmt:"state",id:G,type:"default",description:M};break;case 21:this.$={stmt:"state",id:s[h-3],type:"default",description:s[h-5],doc:s[h-1]};break;case 22:this.$={stmt:"state",id:s[h],type:"fork"};break;case 23:this.$={stmt:"state",id:s[h],type:"join"};break;case 24:this.$={stmt:"state",id:s[h],type:"choice"};break;case 25:this.$={stmt:"state",id:y.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:s[h-1].trim(),note:{position:s[h-2].trim(),text:s[h].trim()}};break;case 29:this.$=s[h].trim(),y.setAccTitle(this.$);break;case 30:case 31:this.$=s[h].trim(),y.setAccDescription(this.$);break;case 32:case 33:this.$={stmt:"classDef",id:s[h-1].trim(),classes:s[h].trim()};break;case 34:this.$={stmt:"style",id:s[h-1].trim(),styleClass:s[h].trim()};break;case 35:this.$={stmt:"applyClass",id:s[h-1].trim(),styleClass:s[h].trim()};break;case 36:y.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 37:y.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 38:y.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 39:y.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 42:case 43:this.$={stmt:"state",id:s[h].trim(),type:"default",description:""};break;case 44:this.$={stmt:"state",id:s[h-2].trim(),classes:[s[h].trim()],type:"default",description:""};break;case 45:this.$={stmt:"state",id:s[h-2].trim(),classes:[s[h].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:o,6:r},{1:[3]},{3:5,4:e,5:o,6:r},{3:6,4:e,5:o,6:r},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,45,48,49,50,51,54],d,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,5]),{9:38,10:12,11:13,12:14,13:15,16:g,17:n,19:T,22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,7]),t(S,[2,8]),t(S,[2,9]),t(S,[2,10]),t(S,[2,11]),t(S,[2,12],{14:[1,39],15:[1,40]}),t(S,[2,16]),{18:[1,41]},t(S,[2,18],{20:[1,42]}),{23:[1,43]},t(S,[2,22]),t(S,[2,23]),t(S,[2,24]),t(S,[2,25]),{30:44,31:[1,45],56:[1,46],57:[1,47]},t(S,[2,28]),{34:[1,48]},{36:[1,49]},t(S,[2,31]),{39:[1,50],41:[1,51]},{43:[1,52]},{46:[1,53]},t(rt,[2,42],{55:[1,54]}),t(rt,[2,43],{55:[1,55]}),t(S,[2,36]),t(S,[2,37]),t(S,[2,38]),t(S,[2,39]),t(S,[2,6]),t(S,[2,13]),{13:56,24:R,54:j},t(S,[2,17]),t(Ct,d,{7:57}),{24:[1,58]},{24:[1,59]},{23:[1,60]},{24:[2,46]},{24:[2,47]},t(S,[2,29]),t(S,[2,30]),{40:[1,61]},{40:[1,62]},{44:[1,63]},{47:[1,64]},{24:[1,65]},{24:[1,66]},t(S,[2,14],{14:[1,67]}),{4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,21:[1,68],22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,20],{20:[1,69]}),{31:[1,70]},{24:[1,71]},t(S,[2,32]),t(S,[2,33]),t(S,[2,34]),t(S,[2,35]),t(rt,[2,44]),t(rt,[2,45]),t(S,[2,15]),t(S,[2,19]),t(Ct,d,{7:72}),t(S,[2,26]),t(S,[2,27]),{4:i,5:p,8:8,9:10,10:12,11:13,12:14,13:15,16:g,17:n,19:T,21:[1,73],22:m,24:R,25:A,26:f,27:x,28:L,29:P,32:25,33:B,35:O,37:N,38:q,42:Q,45:Z,48:tt,49:et,50:st,51:it,54:j},t(S,[2,21])],defaultActions:{5:[2,1],6:[2,2],46:[2,46],47:[2,47]},parseError:u(function(l,c){if(c.recoverable)this.trace(l);else{var a=new Error(l);throw a.hash=c,a}},"parseError"),parse:u(function(l){var c=this,a=[0],y=[],_=[null],s=[],z=this.table,h="",G=0,M=0,nt=2,H=1,pt=s.slice.call(arguments,1),E=Object.create(this.lexer),Y={yy:{}};for(var St in this.yy)Object.prototype.hasOwnProperty.call(this.yy,St)&&(Y.yy[St]=this.yy[St]);E.setInput(l,Y.yy),Y.yy.lexer=E,Y.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var yt=E.yylloc;s.push(yt);var te=E.options&&E.options.ranges;typeof Y.yy.parseError=="function"?this.parseError=Y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(v){a.length=a.length-2*v,_.length=_.length-v,s.length=s.length-v}u(ee,"popStack");function xt(){var v;return v=y.pop()||E.lex()||H,typeof v!="number"&&(v instanceof Array&&(y=v,v=y.pop()),v=c.symbols_[v]||v),v}u(xt,"lex");for(var D,F,k,gt,U={},lt,I,At,ot;;){if(F=a[a.length-1],this.defaultActions[F]?k=this.defaultActions[F]:((D===null||typeof D>"u")&&(D=xt()),k=z[F]&&z[F][D]),typeof k>"u"||!k.length||!k[0]){var Tt="";ot=[];for(lt in z[F])this.terminals_[lt]&&lt>nt&&ot.push("'"+this.terminals_[lt]+"'");E.showPosition?Tt="Parse error on line "+(G+1)+`:
2
2
  `+E.showPosition()+`
3
3
  Expecting `+ot.join(", ")+", got '"+(this.terminals_[D]||D)+"'":Tt="Parse error on line "+(G+1)+": Unexpected "+(D==H?"end of input":"'"+(this.terminals_[D]||D)+"'"),this.parseError(Tt,{text:E.match,token:this.terminals_[D]||D,line:E.yylineno,loc:yt,expected:ot})}if(k[0]instanceof Array&&k.length>1)throw new Error("Parse Error: multiple actions possible at state: "+F+", token: "+D);switch(k[0]){case 1:a.push(D),_.push(E.yytext),s.push(E.yylloc),a.push(k[1]),D=null,M=E.yyleng,h=E.yytext,G=E.yylineno,yt=E.yylloc;break;case 2:if(I=this.productions_[k[1]][1],U.$=_[_.length-I],U._$={first_line:s[s.length-(I||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(I||1)].first_column,last_column:s[s.length-1].last_column},te&&(U._$.range=[s[s.length-(I||1)].range[0],s[s.length-1].range[1]]),gt=this.performAction.apply(U,[h,M,G,Y.yy,k[1],_,s].concat(pt)),typeof gt<"u")return gt;I&&(a=a.slice(0,-1*I*2),_=_.slice(0,-1*I),s=s.slice(0,-1*I)),a.push(this.productions_[k[1]][0]),_.push(U.$),s.push(U._$),At=z[a[a.length-2]][a[a.length-1]],a.push(At);break;case 3:return!0}}return!0},"parse")},Zt=function(){var w={EOF:1,parseError:u(function(c,a){if(this.yy.parser)this.yy.parser.parseError(c,a);else throw new Error(c)},"parseError"),setInput:u(function(l,c){return this.yy=c||this.yy||{},this._input=l,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:u(function(){var l=this._input[0];this.yytext+=l,this.yyleng++,this.offset++,this.match+=l,this.matched+=l;var c=l.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),l},"input"),unput:u(function(l){var c=l.length,a=l.split(/(?:\r\n?|\n)/g);this._input=l+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var _=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===y.length?this.yylloc.first_column:0)+y[y.length-a.length].length-a[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[_[0],_[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:u(function(){return this._more=!0,this},"more"),reject:u(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:u(function(l){this.unput(this.match.slice(l))},"less"),pastInput:u(function(){var l=this.matched.substr(0,this.matched.length-this.match.length);return(l.length>20?"...":"")+l.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:u(function(){var l=this.match;return l.length<20&&(l+=this._input.substr(0,20-l.length)),(l.substr(0,20)+(l.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:u(function(){var l=this.pastInput(),c=new Array(l.length+1).join("-");return l+this.upcomingInput()+`
@@ -1 +1 @@
1
- import{_ as n,n as o,j as l}from"./mermaid.core-B2I2nVa9.js";var x=n((s,t)=>{const e=s.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(const r in t.attrs)e.attr(r,t.attrs[r]);return t.class&&e.attr("class",t.class),e},"drawRect"),d=n((s,t)=>{const e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};x(s,e).lower()},"drawBackgroundRect"),g=n((s,t)=>{const e=t.text.replace(o," "),r=s.append("text");r.attr("x",t.x),r.attr("y",t.y),r.attr("class","legend"),r.style("text-anchor",t.anchor),t.class&&r.attr("class",t.class);const a=r.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),r},"drawText"),h=n((s,t,e,r)=>{const a=s.append("image");a.attr("x",t),a.attr("y",e);const i=l.sanitizeUrl(r);a.attr("xlink:href",i)},"drawImage"),m=n((s,t,e,r)=>{const a=s.append("use");a.attr("x",t),a.attr("y",e);const i=l.sanitizeUrl(r);a.attr("xlink:href",`#${i}`)},"drawEmbeddedImage"),y=n(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),p=n(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj");export{d as a,p as b,m as c,x as d,h as e,g as f,y as g};
1
+ import{_ as n,n as o,j as l}from"./mermaid.core-DsqDVkGt.js";var x=n((s,t)=>{const e=s.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(const r in t.attrs)e.attr(r,t.attrs[r]);return t.class&&e.attr("class",t.class),e},"drawRect"),d=n((s,t)=>{const e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};x(s,e).lower()},"drawBackgroundRect"),g=n((s,t)=>{const e=t.text.replace(o," "),r=s.append("text");r.attr("x",t.x),r.attr("y",t.y),r.attr("class","legend"),r.style("text-anchor",t.anchor),t.class&&r.attr("class",t.class);const a=r.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),r},"drawText"),h=n((s,t,e,r)=>{const a=s.append("image");a.attr("x",t),a.attr("y",e);const i=l.sanitizeUrl(r);a.attr("xlink:href",i)},"drawImage"),m=n((s,t,e,r)=>{const a=s.append("use");a.attr("x",t),a.attr("y",e);const i=l.sanitizeUrl(r);a.attr("xlink:href",`#${i}`)},"drawEmbeddedImage"),y=n(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),p=n(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj");export{d as a,p as b,m as c,x as d,h as e,g as f,y as g};
@@ -1 +1 @@
1
- import{_ as n,d as r,e as d,l as g}from"./mermaid.core-B2I2nVa9.js";var u=n((e,t)=>{let o;return t==="sandbox"&&(o=r("#i"+e)),(t==="sandbox"?r(o.nodes()[0].contentDocument.body):r("body")).select(`[id="${e}"]`)},"getDiagramElement"),b=n((e,t,o,a)=>{e.attr("class",o);const{width:i,height:s,x:h,y:x}=l(e,t);d(e,s,i,a);const c=w(h,x,i,s,t);e.attr("viewBox",c),g.debug(`viewBox configured: ${c} with padding: ${t}`)},"setupViewPortForSVG"),l=n((e,t)=>{const o=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:o.width+t*2,height:o.height+t*2,x:o.x,y:o.y}},"calculateDimensionsWithPadding"),w=n((e,t,o,a,i)=>`${e-i} ${t-i} ${o} ${a}`,"createViewBox");export{u as g,b as s};
1
+ import{_ as n,d as r,e as d,l as g}from"./mermaid.core-DsqDVkGt.js";var u=n((e,t)=>{let o;return t==="sandbox"&&(o=r("#i"+e)),(t==="sandbox"?r(o.nodes()[0].contentDocument.body):r("body")).select(`[id="${e}"]`)},"getDiagramElement"),b=n((e,t,o,a)=>{e.attr("class",o);const{width:i,height:s,x:h,y:x}=l(e,t);d(e,s,i,a);const c=w(h,x,i,s,t);e.attr("viewBox",c),g.debug(`viewBox configured: ${c} with padding: ${t}`)},"setupViewPortForSVG"),l=n((e,t)=>{const o=e.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:o.width+t*2,height:o.height+t*2,x:o.x,y:o.y}},"calculateDimensionsWithPadding"),w=n((e,t,o,a,i)=>`${e-i} ${t-i} ${o} ${a}`,"createViewBox");export{u as g,b as s};
@@ -1 +1 @@
1
- import{_ as i}from"./mermaid.core-B2I2nVa9.js";var r=class{constructor(t){this.init=t,this.records=this.init()}static{i(this,"ImperativeState")}reset(){this.records=this.init()}};export{r as I};
1
+ import{_ as i}from"./mermaid.core-DsqDVkGt.js";var r=class{constructor(t){this.init=t,this.records=this.init()}static{i(this,"ImperativeState")}reset(){this.records=this.init()}};export{r as I};
@@ -0,0 +1 @@
1
+ import{s as a,c as s,a as e,C as t}from"./chunk-A2AXSNBT-DLMWYufm.js";import{_ as i}from"./mermaid.core-DsqDVkGt.js";import"./chunk-RZ5BOZE2-DNWczlot.js";import"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
@@ -0,0 +1 @@
1
+ import{s as a,c as s,a as e,C as t}from"./chunk-A2AXSNBT-DLMWYufm.js";import{_ as i}from"./mermaid.core-DsqDVkGt.js";import"./chunk-RZ5BOZE2-DNWczlot.js";import"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
@@ -0,0 +1 @@
1
+ import{b as r}from"./_baseUniq-3eW3-sWy.js";var e=4;function a(o){return r(o,e)}export{a as c};
@@ -1 +1 @@
1
- import{j as s,B as r,C as o}from"./icon-DAf2pA-P.js";import{C as l}from"./index-VRWRSi6M.js";const x=({page:e,count:i,onChange:t})=>{const n=()=>{e>1&&t(e-1)},a=()=>{e<i&&t(e+1)};return i<=1?null:s.jsxs("div",{className:"sticky bottom-0 left-0 right-0 z-10 flex min-h-13 items-center justify-between border-t border-hairline bg-surface px-4 py-2",children:[s.jsx(r,{variant:"ghost",size:"icon-sm",onClick:n,disabled:e<=1,"aria-label":"Previous page",children:s.jsx(l,{})}),s.jsxs("span",{className:"select-none text-meta text-ink-dim",children:["Page ",e," of ",i]}),s.jsx(r,{variant:"ghost",size:"icon-sm",onClick:a,disabled:e>=i,"aria-label":"Next page",children:s.jsx(o,{})})]})};export{x as C};
1
+ import{j as s,B as r,C as o}from"./icon-hwUlaPPO.js";import{C as l}from"./index-Du_04xLY.js";const x=({page:e,count:i,onChange:t})=>{const n=()=>{e>1&&t(e-1)},a=()=>{e<i&&t(e+1)};return i<=1?null:s.jsxs("div",{className:"sticky bottom-0 left-0 right-0 z-10 flex min-h-13 items-center justify-between border-t border-hairline bg-surface px-4 py-2",children:[s.jsx(r,{variant:"ghost",size:"icon-sm",onClick:n,disabled:e<=1,"aria-label":"Previous page",children:s.jsx(l,{})}),s.jsxs("span",{className:"select-none text-meta text-ink-dim",children:["Page ",e," of ",i]}),s.jsx(r,{variant:"ghost",size:"icon-sm",onClick:a,disabled:e>=i,"aria-label":"Next page",children:s.jsx(o,{})})]})};export{x as C};
@@ -1,4 +1,4 @@
1
- import{_ as w,af as F,ag as Y,ah as _,ai as H,l as i,c as V,aj as U,ak as $,a1 as q,a6 as z,a2 as P,a0 as K,al as Q,am as W,an as Z}from"./mermaid.core-B2I2nVa9.js";import{G as B}from"./graph-BryxOIX2.js";import{l as I}from"./layout-CB_oT77J.js";import{i as b}from"./_baseUniq-Bq8rIyPa.js";import{c as L}from"./clone-DwbOGjM3.js";import{m as A}from"./_basePickBy-BscwSWby.js";import"./index-VRWRSi6M.js";import"./icon-DAf2pA-P.js";function h(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ee(e),edges:ne(e)};return b(e.graph())||(t.value=L(e.graph())),t}function ee(e){return A(e.nodes(),function(t){var n=e.node(t),a=e.parent(t),r={v:t};return b(n)||(r.value=n),b(a)||(r.parent=a),r})}function ne(e){return A(e.edges(),function(t){var n=e.edge(t),a={v:t.v,w:t.w};return b(t.name)||(a.name=t.name),b(n)||(a.value=n),a})}var d=new Map,X=new Map,J=new Map,te=w(()=>{X.clear(),J.clear(),d.clear()},"clear"),D=w((e,t)=>{const n=X.get(t)||[];return i.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),se=w((e,t)=>{const n=X.get(t)||[];return i.info("Descendants of ",t," is ",n),i.info("Edge is ",e),e.v===t||e.w===t?!1:n?n.includes(e.v)||D(e.v,t)||D(e.w,t)||n.includes(e.w):(i.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),G=w((e,t,n,a)=>{i.warn("Copying children of ",e,"root",a,"data",t.node(e),a);const r=t.children(e)||[];e!==a&&r.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",r),r.forEach(o=>{if(t.children(o).length>0)G(o,t,n,a);else{const l=t.node(o);i.info("cp ",o," to ",a," with parent ",e),n.setNode(o,l),a!==t.parent(o)&&(i.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==a&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",a,"data",t.node(e),a),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==a,"node!==clusterId",o!==e));const u=t.edges(o);i.debug("Copying Edges",u),u.forEach(c=>{i.info("Edge",c);const m=t.edge(c.v,c.w,c.name);i.info("Edge data",m,a);try{se(c,a)?(i.info("Copying as ",c.v,c.w,m,c.name),n.setEdge(c.v,c.w,m,c.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",c.v,"-->",c.w," rootId: ",a," clusterId:",e)}catch(v){i.error(v)}})}i.debug("Removing node",o),t.removeNode(o)})},"copy"),R=w((e,t)=>{const n=t.children(e);let a=[...n];for(const r of n)J.set(r,e),a=[...a,...R(r,t)];return a},"extractDescendants"),ie=w((e,t,n)=>{const a=e.edges().filter(c=>c.v===t||c.w===t),r=e.edges().filter(c=>c.v===n||c.w===n),o=a.map(c=>({v:c.v===t?n:c.v,w:c.w===t?t:c.w})),l=r.map(c=>({v:c.v,w:c.w}));return o.filter(c=>l.some(m=>c.v===m.v&&c.w===m.w))},"findCommonEdges"),C=w((e,t,n)=>{const a=t.children(e);if(i.trace("Searching children of id ",e,a),a.length<1)return e;let r;for(const o of a){const l=C(o,t,n),u=ie(t,n,l);if(l)if(u.length>0)r=l;else return l}return r},"findNonClusterChild"),k=w(e=>!d.has(e)||!d.get(e).externalConnections?e:d.has(e)?d.get(e).id:e,"getAnchorId"),re=w((e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",C(n,e,n)),X.set(n,R(n,e)),d.set(n,{id:C(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const a=e.children(n),r=e.edges();a.length>0?(i.debug("Cluster identified",n,X),r.forEach(o=>{const l=D(o.v,n),u=D(o.w,n);l^u&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",X.get(n)),d.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,X)});for(let n of d.keys()){const a=d.get(n).id,r=e.parent(a);r!==n&&d.has(r)&&!d.get(r).externalConnections&&(d.get(n).id=r)}e.edges().forEach(function(n){const a=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let r=n.v,o=n.w;if(i.warn("Fix XXX",d,"ids:",n.v,n.w,"Translating: ",d.get(n.v)," --- ",d.get(n.w)),d.get(n.v)||d.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=k(n.v),o=k(n.w),e.removeEdge(n.v,n.w,n.name),r!==n.v){const l=e.parent(r);d.get(l).externalConnections=!0,a.fromCluster=n.v}if(o!==n.w){const l=e.parent(o);d.get(l).externalConnections=!0,a.toCluster=n.w}i.warn("Fix Replacing with XXX",r,o,n.name),e.setEdge(r,o,a,n.name)}}),i.warn("Adjusted Graph",h(e)),T(e,0),i.trace(d)},"adjustClustersAndEdges"),T=w((e,t)=>{if(i.warn("extractor - ",t,h(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),a=!1;for(const r of n){const o=e.children(r);a=a||o.length>0}if(!a){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const r of n)if(i.debug("Extracting node",r,d,d.has(r)&&!d.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",t),!d.has(r))i.debug("Not a cluster",r,t);else if(!d.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){i.warn("Cluster without external connections, without a parent and with children",r,t);let l=e.graph().rankdir==="TB"?"LR":"TB";d.get(r)?.clusterData?.dir&&(l=d.get(r).clusterData.dir,i.warn("Fixing dir",d.get(r).clusterData.dir,l));const u=new B({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",h(e)),G(r,e,u,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:d.get(r).clusterData,label:d.get(r).label,graph:u}),i.warn("New graph after copy node: (",r,")",h(u)),i.debug("Old graph after copy",h(e))}else i.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!d.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),t),i.debug(d);n=e.nodes(),i.warn("New list of nodes",n);for(const r of n){const o=e.node(r);i.warn(" Now next level",r,o),o?.clusterNode&&T(o.graph,t+1)}},"extractor"),M=w((e,t)=>{if(t.length===0)return[];let n=Object.assign([],t);return t.forEach(a=>{const r=e.children(a),o=M(e,r);n=[...n,...o]}),n},"sorter"),oe=w(e=>M(e,e.children()),"sortNodesByHierarchy"),j=w(async(e,t,n,a,r,o)=>{i.warn("Graph in recursive render:XAX",h(t),r);const l=t.graph().rankdir;i.trace("Dir in recursive render - dir:",l);const u=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.info("Recursive edges",t.edge(t.edges()[0]));const c=u.insert("g").attr("class","clusters"),m=u.insert("g").attr("class","edgePaths"),v=u.insert("g").attr("class","edgeLabels"),p=u.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(f){const s=t.node(f);if(r!==void 0){const g=JSON.parse(JSON.stringify(r.clusterData));i.trace(`Setting data for parent cluster XXX
1
+ import{_ as w,af as F,ag as Y,ah as _,ai as H,l as i,c as V,aj as U,ak as $,a1 as q,a6 as z,a2 as P,a0 as K,al as Q,am as W,an as Z}from"./mermaid.core-DsqDVkGt.js";import{G as B}from"./graph-qAJoLSKS.js";import{l as I}from"./layout-D2Cfz3aw.js";import{i as b}from"./_baseUniq-3eW3-sWy.js";import{c as L}from"./clone-Bl4GsLEn.js";import{m as A}from"./_basePickBy-CU6cbfV-.js";import"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";function h(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:ee(e),edges:ne(e)};return b(e.graph())||(t.value=L(e.graph())),t}function ee(e){return A(e.nodes(),function(t){var n=e.node(t),a=e.parent(t),r={v:t};return b(n)||(r.value=n),b(a)||(r.parent=a),r})}function ne(e){return A(e.edges(),function(t){var n=e.edge(t),a={v:t.v,w:t.w};return b(t.name)||(a.name=t.name),b(n)||(a.value=n),a})}var d=new Map,X=new Map,J=new Map,te=w(()=>{X.clear(),J.clear(),d.clear()},"clear"),D=w((e,t)=>{const n=X.get(t)||[];return i.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),se=w((e,t)=>{const n=X.get(t)||[];return i.info("Descendants of ",t," is ",n),i.info("Edge is ",e),e.v===t||e.w===t?!1:n?n.includes(e.v)||D(e.v,t)||D(e.w,t)||n.includes(e.w):(i.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),G=w((e,t,n,a)=>{i.warn("Copying children of ",e,"root",a,"data",t.node(e),a);const r=t.children(e)||[];e!==a&&r.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",r),r.forEach(o=>{if(t.children(o).length>0)G(o,t,n,a);else{const l=t.node(o);i.info("cp ",o," to ",a," with parent ",e),n.setNode(o,l),a!==t.parent(o)&&(i.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==a&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",a,"data",t.node(e),a),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==a,"node!==clusterId",o!==e));const u=t.edges(o);i.debug("Copying Edges",u),u.forEach(c=>{i.info("Edge",c);const m=t.edge(c.v,c.w,c.name);i.info("Edge data",m,a);try{se(c,a)?(i.info("Copying as ",c.v,c.w,m,c.name),n.setEdge(c.v,c.w,m,c.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",c.v,"-->",c.w," rootId: ",a," clusterId:",e)}catch(v){i.error(v)}})}i.debug("Removing node",o),t.removeNode(o)})},"copy"),R=w((e,t)=>{const n=t.children(e);let a=[...n];for(const r of n)J.set(r,e),a=[...a,...R(r,t)];return a},"extractDescendants"),ie=w((e,t,n)=>{const a=e.edges().filter(c=>c.v===t||c.w===t),r=e.edges().filter(c=>c.v===n||c.w===n),o=a.map(c=>({v:c.v===t?n:c.v,w:c.w===t?t:c.w})),l=r.map(c=>({v:c.v,w:c.w}));return o.filter(c=>l.some(m=>c.v===m.v&&c.w===m.w))},"findCommonEdges"),C=w((e,t,n)=>{const a=t.children(e);if(i.trace("Searching children of id ",e,a),a.length<1)return e;let r;for(const o of a){const l=C(o,t,n),u=ie(t,n,l);if(l)if(u.length>0)r=l;else return l}return r},"findNonClusterChild"),k=w(e=>!d.has(e)||!d.get(e).externalConnections?e:d.has(e)?d.get(e).id:e,"getAnchorId"),re=w((e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",C(n,e,n)),X.set(n,R(n,e)),d.set(n,{id:C(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const a=e.children(n),r=e.edges();a.length>0?(i.debug("Cluster identified",n,X),r.forEach(o=>{const l=D(o.v,n),u=D(o.w,n);l^u&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",X.get(n)),d.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,X)});for(let n of d.keys()){const a=d.get(n).id,r=e.parent(a);r!==n&&d.has(r)&&!d.get(r).externalConnections&&(d.get(n).id=r)}e.edges().forEach(function(n){const a=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let r=n.v,o=n.w;if(i.warn("Fix XXX",d,"ids:",n.v,n.w,"Translating: ",d.get(n.v)," --- ",d.get(n.w)),d.get(n.v)||d.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),r=k(n.v),o=k(n.w),e.removeEdge(n.v,n.w,n.name),r!==n.v){const l=e.parent(r);d.get(l).externalConnections=!0,a.fromCluster=n.v}if(o!==n.w){const l=e.parent(o);d.get(l).externalConnections=!0,a.toCluster=n.w}i.warn("Fix Replacing with XXX",r,o,n.name),e.setEdge(r,o,a,n.name)}}),i.warn("Adjusted Graph",h(e)),T(e,0),i.trace(d)},"adjustClustersAndEdges"),T=w((e,t)=>{if(i.warn("extractor - ",t,h(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),a=!1;for(const r of n){const o=e.children(r);a=a||o.length>0}if(!a){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(const r of n)if(i.debug("Extracting node",r,d,d.has(r)&&!d.get(r).externalConnections,!e.parent(r),e.node(r),e.children("D")," Depth ",t),!d.has(r))i.debug("Not a cluster",r,t);else if(!d.get(r).externalConnections&&e.children(r)&&e.children(r).length>0){i.warn("Cluster without external connections, without a parent and with children",r,t);let l=e.graph().rankdir==="TB"?"LR":"TB";d.get(r)?.clusterData?.dir&&(l=d.get(r).clusterData.dir,i.warn("Fixing dir",d.get(r).clusterData.dir,l));const u=new B({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",h(e)),G(r,e,u,r),e.setNode(r,{clusterNode:!0,id:r,clusterData:d.get(r).clusterData,label:d.get(r).label,graph:u}),i.warn("New graph after copy node: (",r,")",h(u)),i.debug("Old graph after copy",h(e))}else i.warn("Cluster ** ",r," **not meeting the criteria !externalConnections:",!d.get(r).externalConnections," no parent: ",!e.parent(r)," children ",e.children(r)&&e.children(r).length>0,e.children("D"),t),i.debug(d);n=e.nodes(),i.warn("New list of nodes",n);for(const r of n){const o=e.node(r);i.warn(" Now next level",r,o),o?.clusterNode&&T(o.graph,t+1)}},"extractor"),M=w((e,t)=>{if(t.length===0)return[];let n=Object.assign([],t);return t.forEach(a=>{const r=e.children(a),o=M(e,r);n=[...n,...o]}),n},"sorter"),oe=w(e=>M(e,e.children()),"sortNodesByHierarchy"),j=w(async(e,t,n,a,r,o)=>{i.warn("Graph in recursive render:XAX",h(t),r);const l=t.graph().rankdir;i.trace("Dir in recursive render - dir:",l);const u=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.info("Recursive edges",t.edge(t.edges()[0]));const c=u.insert("g").attr("class","clusters"),m=u.insert("g").attr("class","edgePaths"),v=u.insert("g").attr("class","edgeLabels"),p=u.insert("g").attr("class","nodes");await Promise.all(t.nodes().map(async function(f){const s=t.node(f);if(r!==void 0){const g=JSON.parse(JSON.stringify(r.clusterData));i.trace(`Setting data for parent cluster XXX
2
2
  Node.id = `,f,`
3
3
  data=`,g.height,`
4
4
  Parent cluster`,r.height),t.setNode(r.id,g),t.parent(f)||(i.trace("Setting parent",f,r.id),t.setParent(f,r.id,g))}if(i.info("(Insert) Node XXX"+f+": "+JSON.stringify(t.node(f))),s?.clusterNode){i.info("Cluster identified XBX",f,s.width,t.node(f));const{ranksep:g,nodesep:E}=t.graph();s.graph.setGraph({...s.graph.graph(),ranksep:g+25,nodesep:E});const N=await j(p,s.graph,n,a,t.node(f),o),x=N.elem;U(s,x),s.diff=N.diff||0,i.info("New compound node after recursive render XAX",f,"width",s.width,"height",s.height),$(x,s)}else t.children(f).length>0?(i.trace("Cluster - the non recursive path XBX",f,s.id,s,s.width,"Graph:",t),i.trace(C(s.id,t)),d.set(s.id,{id:C(s.id,t),node:s})):(i.trace("Node - the non recursive path XAX",f,p,t.node(f),l),await q(p,t.node(f),{config:o,dir:l}))})),await w(async()=>{const f=t.edges().map(async function(s){const g=t.edge(s.v,s.w,s.name);i.info("Edge "+s.v+" -> "+s.w+": "+JSON.stringify(s)),i.info("Edge "+s.v+" -> "+s.w+": ",s," ",JSON.stringify(t.edge(s))),i.info("Fix",d,"ids:",s.v,s.w,"Translating: ",d.get(s.v),d.get(s.w)),await Z(v,g)});await Promise.all(f)},"processEdges")(),i.info("Graph before layout:",JSON.stringify(h(t))),i.info("############################################# XXX"),i.info("### Layout ### XXX"),i.info("############################################# XXX"),I(t),i.info("Graph after layout:",JSON.stringify(h(t)));let O=0,{subGraphTitleTotalMargin:S}=z(o);return await Promise.all(oe(t).map(async function(f){const s=t.node(f);if(i.info("Position XBX => "+f+": ("+s.x,","+s.y,") width: ",s.width," height: ",s.height),s?.clusterNode)s.y+=S,i.info("A tainted cluster node XBX1",f,s.id,s.width,s.height,s.x,s.y,t.parent(f)),d.get(s.id).node=s,P(s);else if(t.children(f).length>0){i.info("A pure cluster node XBX1",f,s.id,s.x,s.y,s.width,s.height,t.parent(f)),s.height+=S,t.node(s.parentId);const g=s?.padding/2||0,E=s?.labelBBox?.height||0,N=E-g||0;i.debug("OffsetY",N,"labelHeight",E,"halfPadding",g),await K(c,s),d.get(s.id).node=s}else{const g=t.node(s.parentId);s.y+=S/2,i.info("A regular node XBX1 - using the padding",s.id,"parent",s.parentId,s.width,s.height,s.x,s.y,"offsetY",s.offsetY,"parent",g,g?.offsetY,s),P(s)}})),t.edges().forEach(function(f){const s=t.edge(f);i.info("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(s),s),s.points.forEach(x=>x.y+=S/2);const g=t.node(f.v);var E=t.node(f.w);const N=Q(m,s,d,n,g,E,a);W(s,N)}),t.nodes().forEach(function(f){const s=t.node(f);i.info(f,s.type,s.diff),s.isGroup&&(O=s.diff)}),i.warn("Returning from recursive render XAX",u,O),{elem:u,diff:O}},"recursiveRender"),me=w(async(e,t)=>{const n=new B({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=t.select("g");F(a,e.markers,e.type,e.diagramId),Y(),_(),H(),te(),e.nodes.forEach(o=>{n.setNode(o.id,{...o}),o.parentId&&n.setParent(o.id,o.parentId)}),i.debug("Edges:",e.edges),e.edges.forEach(o=>{if(o.start===o.end){const l=o.start,u=l+"---"+l+"---1",c=l+"---"+l+"---2",m=n.node(l);n.setNode(u,{domId:u,id:u,parentId:m.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(u,m.parentId),n.setNode(c,{domId:c,id:c,parentId:m.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(c,m.parentId);const v=structuredClone(o),p=structuredClone(o),y=structuredClone(o);v.label="",v.arrowTypeEnd="none",v.id=l+"-cyclic-special-1",p.arrowTypeStart="none",p.arrowTypeEnd="none",p.id=l+"-cyclic-special-mid",y.label="",m.isGroup&&(v.fromCluster=l,y.toCluster=l),y.id=l+"-cyclic-special-2",y.arrowTypeStart="none",n.setEdge(l,u,v,l+"-cyclic-special-0"),n.setEdge(u,c,p,l+"-cyclic-special-1"),n.setEdge(c,l,y,l+"-cyc<lic-special-2")}else n.setEdge(o.start,o.end,{...o},o.id)}),i.warn("Graph at first:",JSON.stringify(h(n))),re(n),i.warn("Graph after XAX:",JSON.stringify(h(n)));const r=V();await j(a,n,e.type,e.diagramId,void 0,r)},"render");export{me as render};
@@ -1,4 +1,4 @@
1
- import{p as k}from"./chunk-4BMEZGHF-CtuKHark.js";import{_ as l,s as R,g as F,t as I,q as _,a as E,b as D,K as G,z,F as y,G as C,H as P,l as H,M as V}from"./mermaid.core-B2I2nVa9.js";import{p as W}from"./radar-MK3ICKWK-C0H2uwS9.js";import"./index-VRWRSi6M.js";import"./icon-DAf2pA-P.js";import"./_baseUniq-Bq8rIyPa.js";import"./_basePickBy-BscwSWby.js";import"./clone-DwbOGjM3.js";var h={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:h},m=structuredClone(w),B=P.radar,j=l(()=>y({...B,...C().radar}),"getConfig"),b=l(()=>m.axes,"getAxes"),q=l(()=>m.curves,"getCurves"),K=l(()=>m.options,"getOptions"),N=l(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),U=l(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:X(t.entries)}))},"setCurves"),X=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),Y=l(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});m.options={showLegend:t.showLegend?.value??h.showLegend,ticks:t.ticks?.value??h.ticks,max:t.max?.value??h.max,min:t.min?.value??h.min,graticule:t.graticule?.value??h.graticule}},"setOptions"),Z=l(()=>{z(),m=structuredClone(w)},"clear"),$={getAxes:b,getCurves:q,getOptions:K,setAxes:N,setCurves:U,setOptions:Y,getConfig:j,clear:Z,setAccTitle:D,getAccTitle:E,setDiagramTitle:_,getDiagramTitle:I,getAccDescription:F,setAccDescription:R},J=l(a=>{k(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),Q={parse:l(async a=>{const t=await W("radar",a);H.debug(t),J(t)},"parse")},tt=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),u=G(t),p=et(u,c),g=n.max??Math.max(...i.map(f=>Math.max(...f.entries))),x=n.min,v=Math.min(c.width,c.height)/2;at(p,o,v,n.ticks,n.graticule),rt(p,o,v,c),M(p,o,i,x,g,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),et=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return a.attr("viewbox",`0 0 ${e} ${r}`).attr("width",e).attr("height",r),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),at=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,u)=>{const p=2*u*Math.PI/o-Math.PI/2,g=n*Math.cos(p),x=n*Math.sin(p);return`${g},${x}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),rt=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,u)=>{if(d.entries.length!==n)return;const p=d.entries.map((g,x)=>{const v=2*Math.PI*x/n-Math.PI/2,f=A(g,r,s,c),O=f*Math.cos(v),S=f*Math.sin(v);return{x:O,y:S}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${u}`):o==="polygon"&&a.append("polygon").attr("points",p.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${u}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},u={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${u.x},${u.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var st={draw:tt},nt=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
1
+ import{p as k}from"./chunk-4BMEZGHF-BTCRyTKZ.js";import{_ as l,s as R,g as F,t as I,q as _,a as E,b as D,K as G,z,F as y,G as C,H as P,l as H,M as V}from"./mermaid.core-DsqDVkGt.js";import{p as W}from"./radar-MK3ICKWK-Cz8qP9DC.js";import"./index-Du_04xLY.js";import"./icon-hwUlaPPO.js";import"./_baseUniq-3eW3-sWy.js";import"./_basePickBy-CU6cbfV-.js";import"./clone-Bl4GsLEn.js";var h={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:h},m=structuredClone(w),B=P.radar,j=l(()=>y({...B,...C().radar}),"getConfig"),b=l(()=>m.axes,"getAxes"),q=l(()=>m.curves,"getCurves"),K=l(()=>m.options,"getOptions"),N=l(a=>{m.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),U=l(a=>{m.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:X(t.entries)}))},"setCurves"),X=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),Y=l(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});m.options={showLegend:t.showLegend?.value??h.showLegend,ticks:t.ticks?.value??h.ticks,max:t.max?.value??h.max,min:t.min?.value??h.min,graticule:t.graticule?.value??h.graticule}},"setOptions"),Z=l(()=>{z(),m=structuredClone(w)},"clear"),$={getAxes:b,getCurves:q,getOptions:K,setAxes:N,setCurves:U,setOptions:Y,getConfig:j,clear:Z,setAccTitle:D,getAccTitle:E,setDiagramTitle:_,getDiagramTitle:I,getAccDescription:F,setAccDescription:R},J=l(a=>{k(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),Q={parse:l(async a=>{const t=await W("radar",a);H.debug(t),J(t)},"parse")},tt=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),u=G(t),p=et(u,c),g=n.max??Math.max(...i.map(f=>Math.max(...f.entries))),x=n.min,v=Math.min(c.width,c.height)/2;at(p,o,v,n.ticks,n.graticule),rt(p,o,v,c),M(p,o,i,x,g,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),et=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return a.attr("viewbox",`0 0 ${e} ${r}`).attr("width",e).attr("height",r),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),at=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,u)=>{const p=2*u*Math.PI/o-Math.PI/2,g=n*Math.cos(p),x=n*Math.sin(p);return`${g},${x}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),rt=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,u)=>{if(d.entries.length!==n)return;const p=d.entries.map((g,x)=>{const v=2*Math.PI*x/n-Math.PI/2,f=A(g,r,s,c),O=f*Math.cos(v),S=f*Math.sin(v);return{x:O,y:S}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${u}`):o==="polygon"&&a.append("polygon").attr("points",p.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${u}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},u={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${u.x},${u.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var st={draw:tt},nt=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
2
2
  .radarCurve-${r} {
3
3
  color: ${s};
4
4
  fill: ${s};