junhost 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/bin/jun.js +173 -24
  2. package/dist/browser-mcp-server.js +1 -1
  3. package/dist/index.js +58 -58
  4. package/dist/mcp-server.js +1 -1
  5. package/package.json +1 -1
  6. package/ui-dist/assets/BrowserPage-BwT5k8-s.js +1 -0
  7. package/ui-dist/assets/{DashboardPage-BvNlgB4B.js → DashboardPage-BvxkAL6I.js} +1 -1
  8. package/ui-dist/assets/{FilesPage-C1IqnxpR.js → FilesPage-Br3C0Pem.js} +1 -1
  9. package/ui-dist/assets/LogsPage-D7DXOEb9.js +1 -0
  10. package/ui-dist/assets/McpPage-CecHRhqq.js +1 -0
  11. package/ui-dist/assets/MemoriesPage-DBq4WGnc.js +1 -0
  12. package/ui-dist/assets/{RunsPage-BpBj82Ux.js → RunsPage-D0xR47tG.js} +4 -4
  13. package/ui-dist/assets/SchedulesPage-P4MkReA9.js +1 -0
  14. package/ui-dist/assets/{SettingsPage-C5vG-RLn.js → SettingsPage-DCe6V1dk.js} +1 -1
  15. package/ui-dist/assets/SkillsPage-CbJM3z7o.js +1 -0
  16. package/ui-dist/assets/architecture-7EHR7CIX-D_7WJiS2.js +1 -0
  17. package/ui-dist/assets/{architectureDiagram-3BPJPVTR-CQ1UyWn-.js → architectureDiagram-3BPJPVTR-k2gsD5OO.js} +1 -1
  18. package/ui-dist/assets/{blockDiagram-GPEHLZMM-DO2WH3yT.js → blockDiagram-GPEHLZMM-DW56ELL9.js} +1 -1
  19. package/ui-dist/assets/{c4Diagram-AAUBKEIU-CDcDkAFN.js → c4Diagram-AAUBKEIU-a19n5MC0.js} +1 -1
  20. package/ui-dist/assets/channel-D9Lx8ecr.js +1 -0
  21. package/ui-dist/assets/{checkbox-BO9cBKlP.js → checkbox-Bwtgo2Iq.js} +1 -1
  22. package/ui-dist/assets/{chunk-2J33WTMH-CxE9IMxF.js → chunk-2J33WTMH-Dq1oKvzF.js} +1 -1
  23. package/ui-dist/assets/{chunk-3OPIFGDE-CWe0ghtO.js → chunk-3OPIFGDE-DOjepp5u.js} +1 -1
  24. package/ui-dist/assets/{chunk-5ZQYHXKU-D9lXR7-a.js → chunk-5ZQYHXKU-DQd7S-DN.js} +1 -1
  25. package/ui-dist/assets/{chunk-727SXJPM-1INZms_u.js → chunk-727SXJPM-ZC51AjIP.js} +1 -1
  26. package/ui-dist/assets/{chunk-AQP2D5EJ-Bo5P94jR.js → chunk-AQP2D5EJ-CWf39VtR.js} +1 -1
  27. package/ui-dist/assets/{chunk-BO2N2NFS-Bb9QKS7r.js → chunk-BO2N2NFS-HkysRQLG.js} +4 -4
  28. package/ui-dist/assets/{chunk-CSCIHK7Q-BXW0kTPy.js → chunk-CSCIHK7Q-Bbq9a-f4.js} +3 -3
  29. package/ui-dist/assets/{chunk-KSCS5N6A-su0hRnFY.js → chunk-KSCS5N6A-BKp-kveo.js} +1 -1
  30. package/ui-dist/assets/{chunk-L5ZTLDWV-CLjULdtO.js → chunk-L5ZTLDWV-C8BqtMre.js} +1 -1
  31. package/ui-dist/assets/{chunk-LZXEDZCA-DSupe1kd.js → chunk-LZXEDZCA-Diyjko3L.js} +2 -2
  32. package/ui-dist/assets/{chunk-ND2GUHAM-DVaKW6-I.js → chunk-ND2GUHAM-BV6JTPNQ.js} +1 -1
  33. package/ui-dist/assets/{chunk-NZK2D7GU-DP_luiUT.js → chunk-NZK2D7GU-CB-RR-1q.js} +1 -1
  34. package/ui-dist/assets/{chunk-O5CBEL6O-DJ6oobwT.js → chunk-O5CBEL6O-Zyg3pbBu.js} +1 -1
  35. package/ui-dist/assets/{chunk-WU5MYG2G-BJCNi6Df.js → chunk-WU5MYG2G-CPYS59Yv.js} +1 -1
  36. package/ui-dist/assets/classDiagram-4FO5ZUOK-DdMTKe_j.js +1 -0
  37. package/ui-dist/assets/classDiagram-v2-Q7XG4LA2-DdMTKe_j.js +1 -0
  38. package/ui-dist/assets/{collapsible-0tqcZUWD.js → collapsible-BbFbh2zH.js} +1 -1
  39. package/ui-dist/assets/{dagre-BM42HDAG-CRyL8hRI.js → dagre-BM42HDAG-B0nNmf3c.js} +1 -1
  40. package/ui-dist/assets/{diagram-2AECGRRQ-DyjpW-BD.js → diagram-2AECGRRQ-CmnP-Pwj.js} +1 -1
  41. package/ui-dist/assets/{diagram-5GNKFQAL-CBTUCxgf.js → diagram-5GNKFQAL-DoplqwrH.js} +1 -1
  42. package/ui-dist/assets/{diagram-KO2AKTUF-C7inOR0g.js → diagram-KO2AKTUF-C82yVEmF.js} +1 -1
  43. package/ui-dist/assets/{diagram-LMA3HP47-CfCMRg_H.js → diagram-LMA3HP47-CVf08v2e.js} +1 -1
  44. package/ui-dist/assets/{diagram-OG6HWLK6-DLl3GKVl.js → diagram-OG6HWLK6-GN7yiGuE.js} +1 -1
  45. package/ui-dist/assets/{dialog-gLEpdaG1.js → dialog-BlNguSbT.js} +1 -1
  46. package/ui-dist/assets/{erDiagram-TEJ5UH35-D3SsdlGo.js → erDiagram-TEJ5UH35-1_XoHZAp.js} +1 -1
  47. package/ui-dist/assets/eventmodeling-FCH6USID-CYsRhu9T.js +1 -0
  48. package/ui-dist/assets/{flowDiagram-I6XJVG4X-BIZoa3Ff.js → flowDiagram-I6XJVG4X-c8jaDuzg.js} +1 -1
  49. package/ui-dist/assets/{ganttDiagram-6RSMTGT7-DoIzzrgl.js → ganttDiagram-6RSMTGT7-Ck7UsWeu.js} +1 -1
  50. package/ui-dist/assets/{gitGraph-WXDBUCRP-tT7WczwY.js → gitGraph-WXDBUCRP-sFX7u0r_.js} +1 -1
  51. package/ui-dist/assets/{gitGraphDiagram-PVQCEYII-CwoMoyS1.js → gitGraphDiagram-PVQCEYII-DSvNtio2.js} +1 -1
  52. package/ui-dist/assets/{highlighted-body-OFNGDK62-X8dg_vaO.js → highlighted-body-OFNGDK62-DesBT53i.js} +1 -1
  53. package/ui-dist/assets/index-73cjKBdb.js +12 -0
  54. package/ui-dist/assets/index-CZzHSXB1.css +2 -0
  55. package/ui-dist/assets/{info-J43DQDTF-Da0djCPL.js → info-J43DQDTF-Lf1TcbL5.js} +1 -1
  56. package/ui-dist/assets/{infoDiagram-5YYISTIA-D-OHDMDH.js → infoDiagram-5YYISTIA-CMVUnYwe.js} +1 -1
  57. package/ui-dist/assets/{input-BPTmfk5i.js → input-DHLFV6Sc.js} +1 -1
  58. package/ui-dist/assets/{ishikawaDiagram-YF4QCWOH-Bzg0E0Z1.js → ishikawaDiagram-YF4QCWOH-8CQOcn5a.js} +1 -1
  59. package/ui-dist/assets/{journeyDiagram-JHISSGLW-rmeE-f4I.js → journeyDiagram-JHISSGLW-CrgcWtuA.js} +1 -1
  60. package/ui-dist/assets/{kanban-definition-UN3LZRKU-DSy_xosI.js → kanban-definition-UN3LZRKU-DM4XwTkG.js} +1 -1
  61. package/ui-dist/assets/katex-9FE8ZsoR.js +1 -0
  62. package/ui-dist/assets/{line-6Sq5fd7W.js → line-8DyrseaS.js} +1 -1
  63. package/ui-dist/assets/mermaid-GHXKKRXX-DBJCUbG7.js +1 -0
  64. package/ui-dist/assets/{mermaid-parser.core-C6nlL4jI.js → mermaid-parser.core-BflpgWAW.js} +2 -2
  65. package/ui-dist/assets/{mindmap-definition-RKZ34NQL-CSJ0pwqG.js → mindmap-definition-RKZ34NQL-Bjgr9zoF.js} +1 -1
  66. package/ui-dist/assets/{packet-YPE3B663-CJYSZVBB.js → packet-YPE3B663-BhtAK3Ll.js} +1 -1
  67. package/ui-dist/assets/pause-h76ixDr5.js +1 -0
  68. package/ui-dist/assets/{pie-LRSECV5Y-B7FDQxHq.js → pie-LRSECV5Y-BsSRI3VF.js} +1 -1
  69. package/ui-dist/assets/{pieDiagram-4H26LBE5-BYco3Xpn.js → pieDiagram-4H26LBE5-Bp52danX.js} +1 -1
  70. package/ui-dist/assets/{quadrantDiagram-W4KKPZXB-BSzj1BbK.js → quadrantDiagram-W4KKPZXB-2-HXTKYE.js} +1 -1
  71. package/ui-dist/assets/{radar-GUYGQ44K-CIqNKREz.js → radar-GUYGQ44K-jd5iouXS.js} +1 -1
  72. package/ui-dist/assets/{requirementDiagram-4Y6WPE33-DTMmHobs.js → requirementDiagram-4Y6WPE33-BilSVdwW.js} +1 -1
  73. package/ui-dist/assets/{sankeyDiagram-5OEKKPKP-v48Pd1Sj.js → sankeyDiagram-5OEKKPKP-CoFgnJWS.js} +1 -1
  74. package/ui-dist/assets/{select-jBmyVjXL.js → select-D9XYqRQR.js} +1 -1
  75. package/ui-dist/assets/{sequenceDiagram-3UESZ5HK-Cutc-QJ-.js → sequenceDiagram-3UESZ5HK-joTVEA7C.js} +1 -1
  76. package/ui-dist/assets/{stateDiagram-AJRCARHV-C9wjw5vE.js → stateDiagram-AJRCARHV-D79-k_XU.js} +1 -1
  77. package/ui-dist/assets/stateDiagram-v2-BHNVJYJU-BtJOy0q4.js +1 -0
  78. package/ui-dist/assets/{tabs-BUCI-mwA.js → tabs-DnAM3F1s.js} +1 -1
  79. package/ui-dist/assets/textarea-5JHEEgU-.js +1 -0
  80. package/ui-dist/assets/{timeline-definition-PNZ67QCA-Be0sJR3F.js → timeline-definition-PNZ67QCA-D8MLBaMD.js} +1 -1
  81. package/ui-dist/assets/trash-2-D4CnL8wv.js +1 -0
  82. package/ui-dist/assets/{treeView-BLDUP644-BuO1c41a.js → treeView-BLDUP644-POJvg-dl.js} +1 -1
  83. package/ui-dist/assets/{treemap-LRROVOQU-DnqRpBrL.js → treemap-LRROVOQU-DS7TnyOD.js} +1 -1
  84. package/ui-dist/assets/{useCompositeListItem-BMeUcGkY.js → useCompositeListItem-C7NilwuX.js} +1 -1
  85. package/ui-dist/assets/{vennDiagram-CIIHVFJN-BU-tyhcP.js → vennDiagram-CIIHVFJN-D0EqM2aD.js} +1 -1
  86. package/ui-dist/assets/{wardley-L42UT6IY-C4lBe1D1.js → wardley-L42UT6IY-ZBPaCQPM.js} +1 -1
  87. package/ui-dist/assets/{wardleyDiagram-YWT4CUSO-Ba4GgkxA.js → wardleyDiagram-YWT4CUSO-CN9nmvW3.js} +1 -1
  88. package/ui-dist/assets/{xychartDiagram-2RQKCTM6-BZYGoMGR.js → xychartDiagram-2RQKCTM6-CTV-CuX-.js} +1 -1
  89. package/ui-dist/index.html +2 -2
  90. package/ui-dist/assets/BrowserPage-Bw1kBIM_.js +0 -1
  91. package/ui-dist/assets/McpPage-BgXcKazm.js +0 -1
  92. package/ui-dist/assets/MemoriesPage-DYOob4W0.js +0 -1
  93. package/ui-dist/assets/SchedulesPage-mIWaXymg.js +0 -1
  94. package/ui-dist/assets/SkillsPage-DuFQfdSR.js +0 -1
  95. package/ui-dist/assets/architecture-7EHR7CIX-BMNBOS2i.js +0 -1
  96. package/ui-dist/assets/channel-BMSobhoT.js +0 -1
  97. package/ui-dist/assets/classDiagram-4FO5ZUOK-C8buBHXm.js +0 -1
  98. package/ui-dist/assets/classDiagram-v2-Q7XG4LA2-C8buBHXm.js +0 -1
  99. package/ui-dist/assets/eventmodeling-FCH6USID-Dl7jZkr1.js +0 -1
  100. package/ui-dist/assets/index-C_NJsn6Z.css +0 -2
  101. package/ui-dist/assets/index-DXYsuK0q.js +0 -12
  102. package/ui-dist/assets/katex-BNbsei-7.js +0 -1
  103. package/ui-dist/assets/mermaid-GHXKKRXX-eP_ygZe4.js +0 -1
  104. package/ui-dist/assets/stateDiagram-v2-BHNVJYJU-0qv-iPvr.js +0 -1
  105. package/ui-dist/assets/textarea-BkUbRqKD.js +0 -1
@@ -1,4 +1,4 @@
1
- import{g as e,h as t,m as n,p as r}from"./src-D-NMWEou.js";import{J as i,a,b as o,et as s,o as c,rt as l,tt as u,x as d}from"./chunk-CSCIHK7Q-BXW0kTPy.js";import{t as f}from"./arc-8BWbC-0s.js";import{p}from"./chunk-5ZQYHXKU-D9lXR7-a.js";import{t as m}from"./chunk-WU5MYG2G-BJCNi6Df.js";var h=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,11,13,14,15,17,19,20,23,24],r=[1,12],i=[1,13],a=[1,14],o=[1,15],s=[1,16],c=[1,19],l=[1,20],u={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:`error`,6:`EOF`,7:`timeline`,8:`timeline_lr`,9:`timeline_td`,11:`SPACE`,13:`NEWLINE`,14:`title`,15:`acc_title`,16:`acc_title_value`,17:`acc_descr`,18:`acc_descr_value`,19:`acc_descr_multiline_value`,20:`section`,23:`period`,24:`event`},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 3:r.setDirection(`LR`);break;case 4:r.setDirection(`TD`);break;case 5:this.$=[];break;case 6:a[s-1].push(a[s]),this.$=a[s-1];break;case 7:case 8:this.$=a[s];break;case 9:case 10:this.$=[];break;case 11:r.getCommonDb().setDiagramTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 12:this.$=a[s].trim(),r.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=a[s].trim(),r.getCommonDb().setAccDescription(this.$);break;case 15:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 18:r.addTask(a[s],0,``),this.$=a[s];break;case 19:r.addEvent(a[s].substr(2)),this.$=a[s];break}},`anonymous`),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},e(n,[2,5],{5:6}),e(n,[2,2]),e(n,[2,3]),e(n,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:r,15:i,17:a,19:o,20:s,21:17,22:18,23:c,24:l},e(n,[2,10],{1:[2,1]}),e(n,[2,6]),{12:21,14:r,15:i,17:a,19:o,20:s,21:17,22:18,23:c,24:l},e(n,[2,8]),e(n,[2,9]),e(n,[2,11]),{16:[1,22]},{18:[1,23]},e(n,[2,14]),e(n,[2,15]),e(n,[2,16]),e(n,[2,17]),e(n,[2,18]),e(n,[2,19]),e(n,[2,7]),e(n,[2,12]),e(n,[2,13])],defaultActions:{},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{g as e,h as t,m as n,p as r}from"./src-D-NMWEou.js";import{J as i,a,b as o,et as s,o as c,rt as l,tt as u,x as d}from"./chunk-CSCIHK7Q-Bbq9a-f4.js";import{t as f}from"./arc-8BWbC-0s.js";import{p}from"./chunk-5ZQYHXKU-DQd7S-DN.js";import{t as m}from"./chunk-WU5MYG2G-CPYS59Yv.js";var h=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,11,13,14,15,17,19,20,23,24],r=[1,12],i=[1,13],a=[1,14],o=[1,15],s=[1,16],c=[1,19],l=[1,20],u={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:`error`,6:`EOF`,7:`timeline`,8:`timeline_lr`,9:`timeline_td`,11:`SPACE`,13:`NEWLINE`,14:`title`,15:`acc_title`,16:`acc_title_value`,17:`acc_descr`,18:`acc_descr_value`,19:`acc_descr_multiline_value`,20:`section`,23:`period`,24:`event`},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 3:r.setDirection(`LR`);break;case 4:r.setDirection(`TD`);break;case 5:this.$=[];break;case 6:a[s-1].push(a[s]),this.$=a[s-1];break;case 7:case 8:this.$=a[s];break;case 9:case 10:this.$=[];break;case 11:r.getCommonDb().setDiagramTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 12:this.$=a[s].trim(),r.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=a[s].trim(),r.getCommonDb().setAccDescription(this.$);break;case 15:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 18:r.addTask(a[s],0,``),this.$=a[s];break;case 19:r.addEvent(a[s].substr(2)),this.$=a[s];break}},`anonymous`),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},e(n,[2,5],{5:6}),e(n,[2,2]),e(n,[2,3]),e(n,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:r,15:i,17:a,19:o,20:s,21:17,22:18,23:c,24:l},e(n,[2,10],{1:[2,1]}),e(n,[2,6]),{12:21,14:r,15:i,17:a,19:o,20:s,21:17,22:18,23:c,24:l},e(n,[2,8]),e(n,[2,9]),e(n,[2,11]),{16:[1,22]},{18:[1,23]},e(n,[2,14]),e(n,[2,15]),e(n,[2,16]),e(n,[2,17]),e(n,[2,18]),e(n,[2,19]),e(n,[2,7]),e(n,[2,12]),e(n,[2,13])],defaultActions:{},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};u.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(function(e,t){return this.yy=t||this.yy||{},this._input=e,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:t(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:t(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=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),n.length-1&&(this.yylineno-=n.length-1);var i=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:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:t(function(){return this._more=!0,this},`more`),reject:t(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:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:t(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -0,0 +1 @@
1
+ import{x as e}from"./useBaseUiId-dSIElxm7.js";var t=e(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]);export{t};
@@ -1 +1 @@
1
- import"./chunk-NNHCCRGN-DlpIbxXb.js";import{s as e}from"./mermaid-parser.core-C6nlL4jI.js";export{e as createTreeViewServices};
1
+ import"./chunk-NNHCCRGN-DlpIbxXb.js";import{s as e}from"./mermaid-parser.core-BflpgWAW.js";export{e as createTreeViewServices};
@@ -1 +1 @@
1
- import"./chunk-NNHCCRGN-DlpIbxXb.js";import{a as e}from"./mermaid-parser.core-C6nlL4jI.js";export{e as createTreemapServices};
1
+ import"./chunk-NNHCCRGN-DlpIbxXb.js";import{a as e}from"./mermaid-parser.core-BflpgWAW.js";export{e as createTreemapServices};
@@ -1 +1 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{D as r,N as i,O as a,P as o,_ as s,d as c,f as l,l as u,o as d,s as f,w as p,x as m}from"./utils-BX1Diber.js";import{i as h,l as g,r as _,x as v,y}from"./useBaseUiId-dSIElxm7.js";import{$ as ee,At as b,B as x,Bt as te,Ct as ne,Dt as re,Et as ie,Ft as ae,G as oe,Ht as se,It as ce,Lt as le,Ot as S,Q as ue,Rt as de,St as fe,Tt as pe,Vt as me,Z as he,_t as ge,at as _e,bt as C,et as w,it as ve,kt as T,nt as ye,pt as be,q as xe,rt as Se,tt as Ce,wt as E,xt as we,zt as D}from"./index-DXYsuK0q.js";import{n as O}from"./label-CxX4-RmK.js";var k=v(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),A=e(t()),j=0;function Te(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(j);function a(){i&&!i()||e?.focus({preventScroll:n})}if(r)return a(),l;let o=requestAnimationFrame(a);return j=o,()=>{j===o&&(cancelAnimationFrame(o),j=0)}}var M={inert:new WeakMap,"aria-hidden":new WeakMap},Ee=`data-base-ui-inert`,N={inert:new WeakSet,"aria-hidden":new WeakSet},P=new WeakMap,F=0;function I(e){return N[e]}function L(e){return e?a(e)?e.host:L(e.parentNode):null}var R=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=L(t);return e.contains(n)?n:null}).filter(e=>e!=null),z=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},B=(e,t,n)=>{let r=[],i=e=>{!e||n.has(e)||Array.from(e.children).forEach(e=>{s(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function V(e,t,n,r,{mark:i=!0,markerIgnoreElements:a=[]}){let o=r?`inert`:n?`aria-hidden`:null,s=null,c=null,l=R(t,e),u=i?R(t,a):[],d=new Set(u),f=i?B(t,z(l),new Set(l)).filter(e=>!d.has(e)):[],p=[],m=[];if(o){let e=M[o],n=I(o);c=n,s=e;let r=R(t,Array.from(t.querySelectorAll(`[aria-live]`))),i=l.concat(r);B(t,z(i),new Set(i)).forEach(t=>{let r=t.getAttribute(o),i=r!==null&&r!==`false`,a=(e.get(t)||0)+1;e.set(t,a),p.push(t),a===1&&i&&n.add(t),i||t.setAttribute(o,o===`inert`?``:`true`)})}return i&&f.forEach(e=>{let t=(P.get(e)||0)+1;P.set(e,t),m.push(e),t===1&&e.setAttribute(Ee,``)}),F+=1,()=>{s&&p.forEach(e=>{let t=(s.get(e)||0)-1;s.set(e,t),t||(!c?.has(e)&&o&&e.removeAttribute(o),c?.delete(e))}),i&&m.forEach(e=>{let t=(P.get(e)||0)-1;P.set(e,t),t||e.removeAttribute(Ee)}),--F,F||(M.inert=new WeakMap,M[`aria-hidden`]=new WeakMap,N.inert=new WeakSet,N[`aria-hidden`]=new WeakSet,P=new WeakMap)}}function De(e,t={}){let{ariaHidden:n=!1,inert:r=!1,mark:i=!0,markerIgnoreElements:a=[]}=t,o=_(e[0]).body;return V(e,o,n,r,{mark:i,markerIgnoreElements:a})}var H=n();function Oe(e,t){let n=m(b(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||`keyboard`:`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var U=20,W=[];function ke(){W=W.filter(e=>e.deref()?.isConnected)}function Ae(e){ke(),e&&s(e)!==`body`&&(W.push(new WeakRef(e)),W.length>U&&(W=W.slice(-20)))}function je(){return ke(),W[W.length-1]?.deref()}function Me(e){return e?ve(e)?e:_e(e)[0]||e:null}function Ne(e,t){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!t.current.includes(`floating`)&&!e.getAttribute(`role`)?.includes(`dialog`))return;let n=w(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return ve(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),r=e.getAttribute(`tabindex`);t.current.includes(`floating`)||n.length===0?r!==`0`&&e.setAttribute(`tabindex`,`0`):(r!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function Pe(e){let{context:t,children:n,disabled:r=!1,initialFocus:a=!0,returnFocus:o=!0,restoreFocus:s=!1,modal:c=!0,closeOnFocusOut:l=!0,openInteractionType:d=``,nextFocusableElement:m,previousFocusableElement:v,beforeContentFocusGuardRef:y,externalTree:ae,getInsideElements:me}=e,C=`rootStore`in t?t.rootStore:t,w=C.useState(`open`),D=C.useState(`domReferenceElement`),O=C.useState(`floatingElement`),{events:k,dataRef:j}=C.context,M=f(()=>j.current.floatingContext?.nodeId),Ee=a===!1,N=ie(D)&&Ee,P=A.useRef([`content`]),F=fe(a),I=fe(o),L=fe(d),R=oe(ae),z=xe(),B=A.useRef(!1),V=A.useRef(!1),U=A.useRef(!1),W=A.useRef(null),Pe=A.useRef(``),G=A.useRef(``),K=A.useRef(null),q=A.useRef(null),Fe=u(K,y,z?.beforeInsideRef),Ie=u(q,z?.afterInsideRef),J=se(),Y=se(),Le=we(),Re=z!=null,X=pe(O),Z=f((e=X)=>e?_e(e):[]),Q=f(()=>me?.().filter(e=>e!=null)??[]);A.useEffect(()=>{if(r||!c)return;function e(e){e.key===`Tab`&&T(X,S(_(X)))&&Z().length===0&&!N&&de(e)}return E(_(X),`keydown`,e)},[r,X,c,N,Z]),A.useEffect(()=>{if(r||!w)return;let e=_(X);function t(){U.current=!1}function n(e){let t=b(e),n=Q();U.current=!(T(O,t)||T(D,t)||T(z?.portalNode,t)||n.some(e=>e===t||T(e,t))),G.current=e.pointerType||`keyboard`,t?.closest(`[data-base-ui-click-trigger]`)&&(V.current=!0)}function i(){G.current=`keyboard`}return ne(E(e,`pointerdown`,n,!0),E(e,`pointerup`,t,!0),E(e,`pointercancel`,t,!0),E(e,`keydown`,i,!0))},[r,O,D,X,w,z,Q]),A.useEffect(()=>{if(r||!l)return;let e=_(X);function t(){V.current=!0,Y.start(0,()=>{V.current=!1})}function n(e){let t=b(e);ve(t)&&(W.current=t)}function i(t){let n=t.relatedTarget,r=t.currentTarget,i=b(t);queueMicrotask(()=>{let a=M(),o=C.context.triggerElements,l=Q(),u=n?.hasAttribute(he(`focus-guard`))&&[K.current,q.current,z?.beforeInsideRef.current,z?.afterInsideRef.current,z?.beforeOutsideRef.current,z?.afterOutsideRef.current,x(v),x(m)].includes(n),d=!(T(D,n)||T(O,n)||T(n,O)||T(z?.portalNode,n)||l.some(e=>e===n||T(e,n))||n!=null&&o.hasElement(n)||o.hasMatchingElement(e=>T(e,n))||u||R&&(ee(R.nodesRef.current,a).find(e=>T(e.context?.elements.floating,n)||T(e.context?.elements.domReference,n))||ue(R.nodesRef.current,a).find(e=>[e.context?.elements.floating,pe(e.context?.elements.floating)].includes(n)||e.context?.elements.domReference===n)));if(r===D&&X&&Ne(X,P),s&&r!==D&&!be(i)&&S(e)===e.body){if(p(X)&&(X.focus(),s===`popup`)){Le.request(()=>{X.focus()});return}let e=Z(),t=W.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||X;p(n)&&n.focus()}if(j.current.insideReactTree){j.current.insideReactTree=!1;return}(N||!c)&&n&&d&&!V.current&&(N||n!==je())&&(B.current=!0,C.setOpen(!1,h(g,t)))})}function a(){U.current||(j.current.insideReactTree=!0,J.start(0,()=>{j.current.insideReactTree=!1}))}let o=p(D)?D:null;if(!(!O&&!o))return ne(o&&E(o,`focusout`,i),o&&E(o,`pointerdown`,t),O&&E(O,`focusin`,n),O&&E(O,`focusout`,i),O&&z&&E(O,`focusout`,a,!0))},[r,D,O,X,c,R,z,C,l,s,Z,N,M,P,j,J,Y,Le,m,v,Q]),A.useEffect(()=>{if(r||!O||!w)return;let e=Array.from(z?.portalNode?.querySelectorAll(`[${he(`portal`)}]`)||[]),t=(R?ue(R.nodesRef.current,M()):[]).find(e=>ie(e.context?.elements.domReference||null))?.context?.elements.domReference,n=De([O,...e,K.current,q.current,z?.beforeOutsideRef.current,z?.afterOutsideRef.current,...Q(),t,x(v),x(m),N?D:null].filter(e=>e!=null),{ariaHidden:c||N,mark:!1}),i=De([O,...e].filter(e=>e!=null));return()=>{i(),n()}},[w,r,D,O,c,z,N,R,M,m,v,Q]),i(()=>{if(!w||r||!p(X))return;let e=_(X),t=S(e);queueMicrotask(()=>{let n=F.current,r=typeof n==`function`?n(L.current||``):n;if(r===void 0||r===!1||T(X,t))return;let i=null,a=()=>(i??=Z(X),i[0]||X),o;o=r===!0||r===null?a():x(r),o||=a();let s=T(X,S(e));Te(o,{preventScroll:o===X,shouldFocus(){if(s)return!0;let t=S(e);return!(t!==o&&T(X,t))}})})},[r,w,X,Z,F,L]),i(()=>{if(r||!X)return;let e=_(X);Ae(S(e));function t(e){if(e.open||(Pe.current=Oe(e.nativeEvent,G.current)),e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`&&(B.current=!0),e.reason===`outside-press`)if(e.nested)B.current=!1;else if(ce(e.nativeEvent)||le(e.nativeEvent))B.current=!1;else{let e=!1;_(X).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?B.current=!1:B.current=!0}}k.on(`openchange`,t);function n(){let e=I.current,t=typeof e==`function`?e(Pe.current):e;if(t===void 0||t===!1)return null;if(t===null&&(t=!0),typeof t==`boolean`)return D?.isConnected?D:je()||null;let n=D?.isConnected?D:je();return x(t)||n||null}return()=>{k.off(`openchange`,t);let r=S(e),i=Q(),a=T(O,r)||i.some(e=>e===r||T(e,r))||R&&ee(R.nodesRef.current,M(),!1).some(e=>T(e.context?.elements.floating,r)),o=I.current,s=n();queueMicrotask(()=>{let t=Me(s),n=typeof o!=`boolean`;o&&!B.current&&p(t)&&(!(!n&&t!==r&&r!==e.body)||a)&&t.focus({preventScroll:!0}),B.current=!1})}},[r,O,X,I,k,R,D,M,Q]),i(()=>{if(!te||w||!O)return;let e=S(_(O));!p(e)||!re(e)||T(O,e)&&e.blur()},[w,O]),i(()=>{if(!(r||!z))return z.setFocusManagerState({modal:c,closeOnFocusOut:l,open:w,onOpenChange:C.setOpen,domReference:D}),()=>{z.setFocusManagerState(null)}},[r,z,c,w,C,l,D]),i(()=>{if(!(r||!X))return Ne(X,P),()=>{queueMicrotask(ke)}},[r,X,P]);let ze=!r&&(c?!N:!0)&&(Re||c);return(0,H.jsxs)(A.Fragment,{children:[ze&&(0,H.jsx)(ge,{"data-type":`inside`,ref:Fe,onFocus:e=>{if(c){let e=Z();Te(e[e.length-1])}else z?.portalNode&&(B.current=!1,Se(e,z.portalNode)?Ce(D)?.focus():x(v??z.beforeOutsideRef)?.focus())}}),n,ze&&(0,H.jsx)(ge,{"data-type":`inside`,ref:Ie,onFocus:e=>{c?Te(Z()[0]):z?.portalNode&&(l&&(B.current=!0),Se(e,z.portalNode)?ye(D)?.focus():x(m??z.afterOutsideRef)?.focus())}})]})}function G(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:l=y}=t,u=`rootStore`in e?e.rootStore:e,d=u.context.dataRef,f=A.useRef(void 0),p=we(),m=se(),g=A.useMemo(()=>{function e(e,t,n,r){let i=h(l,t,n);e&&r===`touch`&&s>0?m.start(s,()=>{u.setOpen(!0,i)}):u.setOpen(e,i)}function t(e,t,n){let r=d.current.openEvent,a=u.select(`domReferenceElement`)!==t;return e&&a||!e||!i?!0:r&&o?!n(r.type):!1}return{onPointerDown(e){f.current=e.pointerType},onMouseDown(n){let i=f.current,o=n.nativeEvent,s=u.select(`open`);if(n.button!==0||r===`click`||ae(i,!0)&&a)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),l=b(o);if(re(l)){e(c,o,l,i);return}let d=n.currentTarget;p.request(()=>{e(c,o,d,i)})},onClick(n){if(r===`mousedown-only`)return;let i=f.current;if(r===`mousedown`&&i){f.current=void 0;return}ae(i,!0)&&a||e(t(u.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,i)},onKeyDown(){f.current=void 0}}},[d,r,a,l,u,o,i,p,m,s]);return A.useMemo(()=>n?{reference:g}:c,[n,g])}function K(e){return d(19)?e:e?`true`:void 0}var q=`ArrowUp`,Fe=`ArrowDown`,Ie=`ArrowLeft`,J=`ArrowRight`,Y=`Home`,Le=new Set([Ie,J]),Re=new Set([Ie,J,Y,`End`]),X=new Set([q,Fe]),Z=new Set([q,Fe,Y,`End`]),Q=new Set([...Le,...X]),ze=new Set([...Q,Y,`End`]),Be=new Set([`Shift`,`Control`,`Alt`,`Meta`]);function Ve(e){return p(e)&&e.tagName===`INPUT`}function He(e){return!!(Ve(e)&&e.selectionStart!=null||p(e)&&e.tagName===`TEXTAREA`)}function Ue(e,t,n,r){if(!e||!t||!t.scrollTo)return;let i=e.scrollLeft,a=e.scrollTop,o=e.clientWidth<e.scrollWidth,s=e.clientHeight<e.scrollHeight;if(o&&r!==`vertical`){let r=We(e,t,`left`),a=$(e),o=$(t);n===`ltr`&&(r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight?i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight:r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft&&(i=r-o.scrollMarginLeft-a.scrollPaddingLeft)),n===`rtl`&&(r-o.scrollMarginRight<e.scrollLeft+a.scrollPaddingLeft?i=r-o.scrollMarginLeft-a.scrollPaddingLeft:r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight&&(i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight))}if(s&&r!==`horizontal`){let n=We(e,t,`top`),r=$(e),i=$(t);n-i.scrollMarginTop<e.scrollTop+r.scrollPaddingTop?a=n-i.scrollMarginTop-r.scrollPaddingTop:n+t.offsetHeight+i.scrollMarginBottom>e.scrollTop+e.clientHeight-r.scrollPaddingBottom&&(a=n+t.offsetHeight+i.scrollMarginBottom-e.clientHeight+r.scrollPaddingBottom)}e.scrollTo({left:i,top:a,behavior:`auto`})}function We(e,t,n){let r=n===`left`?`offsetLeft`:`offsetTop`,i=0;for(;t.offsetParent&&(i+=t[r],t.offsetParent!==e);)t=t.offsetParent;return i}function $(e){let t=getComputedStyle(e);return{scrollMarginTop:parseFloat(t.scrollMarginTop)||0,scrollMarginRight:parseFloat(t.scrollMarginRight)||0,scrollMarginBottom:parseFloat(t.scrollMarginBottom)||0,scrollMarginLeft:parseFloat(t.scrollMarginLeft)||0,scrollPaddingTop:parseFloat(t.scrollPaddingTop)||0,scrollPaddingRight:parseFloat(t.scrollPaddingRight)||0,scrollPaddingBottom:parseFloat(t.scrollPaddingBottom)||0,scrollPaddingLeft:parseFloat(t.scrollPaddingLeft)||0}}var Ge=A.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,H.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})}),Ke={},qe={},Je=``;function Ye(e){if(typeof document>`u`)return!1;let t=_(e);return m(t).innerWidth-t.documentElement.clientWidth>0}function Xe(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=_(e),n=t.documentElement,i=t.body,a=r(n)?n:i,o=a.style.overflowY,s=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,a.style.overflowY=`scroll`;let c=a.offsetWidth;a.style.overflowY=`hidden`;let l=a.offsetWidth;return a.style.overflowY=o,n.style.scrollbarGutter=s,c===l}function Ze(e){let t=_(e),n=t.documentElement,i=t.body,a=r(n)?n:i,o={overflowY:a.style.overflowY,overflowX:a.style.overflowX};return Object.assign(a.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(a.style,o)}}function Qe(e){let t=_(e),n=t.documentElement,i=t.body,a=m(n),o=0,s=0,c=!1,l=C.create();if(te&&(a.visualViewport?.scale??1)!==1)return()=>{};function u(){let t=a.getComputedStyle(n),l=a.getComputedStyle(i),u=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;o=n.scrollTop,s=n.scrollLeft,Ke={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Je=n.style.scrollBehavior,qe={position:i.style.position,height:i.style.height,width:i.style.width,boxSizing:i.style.boxSizing,overflowY:i.style.overflowY,overflowX:i.style.overflowX,scrollBehavior:i.style.scrollBehavior};let d=n.scrollHeight>n.clientHeight,f=n.scrollWidth>n.clientWidth,p=t.overflowY===`scroll`||l.overflowY===`scroll`,m=t.overflowX===`scroll`||l.overflowX===`scroll`,h=Math.max(0,a.innerWidth-i.clientWidth),g=Math.max(0,a.innerHeight-i.clientHeight),_=parseFloat(l.marginTop)+parseFloat(l.marginBottom),v=parseFloat(l.marginLeft)+parseFloat(l.marginRight),y=r(n)?n:i;if(c=Xe(e),c){n.style.scrollbarGutter=u,y.style.overflowY=`hidden`,y.style.overflowX=`hidden`;return}Object.assign(n.style,{scrollbarGutter:u,overflowY:`hidden`,overflowX:`hidden`}),(d||p)&&(n.style.overflowY=`scroll`),(f||m)&&(n.style.overflowX=`scroll`),Object.assign(i.style,{position:`relative`,height:_||g?`calc(100dvh - ${_+g}px)`:`100dvh`,width:v||h?`calc(100vw - ${v+h}px)`:`100vw`,boxSizing:`border-box`,overflow:`hidden`,scrollBehavior:`unset`}),i.scrollTop=o,i.scrollLeft=s,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`}function d(){Object.assign(n.style,Ke),Object.assign(i.style,qe),c||(n.scrollTop=o,n.scrollLeft=s,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Je)}function f(){d(),l.request(u)}u();let p=E(a,`resize`,f);return()=>{l.cancel(),d(),typeof a.removeEventListener==`function`&&p()}}var $e=new class{lockCount=0;restore=null;timeoutLock=me.create();timeoutUnlock=me.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=_(e).documentElement,n=m(t).getComputedStyle(t).overflowY;if(n===`hidden`||n===`clip`){this.restore=l;return}let r=D||!Ye(e);this.restore=r?Ze(e):Qe(e)}};function et(e=!0,t=null){i(()=>{if(e)return $e.acquire(t)},[e,t])}function tt(e){let t=A.useRef(``),n=A.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:A.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function nt(e,t){let{onClick:n,onPointerDown:r}=tt(f((n,r)=>{(typeof e==`function`?e():e)||t(r||(D?`touch`:``))}));return A.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function rt(e){let[t,n]=A.useState(null),r=nt(e,n);return O(e,t=>{t&&!e&&n(null)}),A.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}var it=A.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function at(){return A.useContext(it)}function ot(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:a}=e,s=f(a),c=A.useRef(0),l=o(ct).current,u=o(st).current,[d,p]=A.useState(0),m=A.useRef(d),h=f((e,t)=>{u.set(e,t??null),m.current+=1,p(m.current)}),g=f(e=>{u.delete(e),m.current+=1,p(m.current)}),_=A.useMemo(()=>{let e=new Map;return Array.from(u.keys()).filter(e=>e.isConnected).sort(lt).forEach((t,n)=>{let r=u.get(t)??{};e.set(t,{...r,index:n})}),e},[u,d]);i(()=>{if(typeof MutationObserver!=`function`||_.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(m.current+=1,p(m.current))});return _.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[_]),i(()=>{m.current===d&&(n.current.length!==_.size&&(n.current.length=_.size),r&&r.current.length!==_.size&&(r.current.length=_.size),c.current=_.size),s(_)},[s,_,n,r,d]),i(()=>()=>{n.current=[]},[n]),i(()=>()=>{r&&(r.current=[])},[r]);let v=f(e=>(l.add(e),()=>{l.delete(e)}));i(()=>{l.forEach(e=>e(_))},[l,_]);let y=A.useMemo(()=>({register:h,unregister:g,subscribeMapChange:v,elementsRef:n,labelsRef:r,nextIndexRef:c}),[h,g,v,n,r,c]);return(0,H.jsx)(it.Provider,{value:y,children:t})}function st(){return new Map}function ct(){return new Set}function lt(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}var ut=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function dt(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:a,index:o}=e,{register:s,unregister:c,subscribeMapChange:l,elementsRef:u,labelsRef:d,nextIndexRef:f}=at(),p=A.useRef(-1),[m,h]=A.useState(o??(a===ut.GuessFromOrder?()=>{if(p.current===-1){let e=f.current;f.current+=1,p.current=e}return p.current}:-1)),g=A.useRef(null),_=A.useCallback(e=>{if(g.current=e,m!==-1&&e!==null&&(u.current[m]=e,d)){let n=t!==void 0;d.current[m]=n?t:r?.current?.textContent??e.textContent}},[m,u,d,t,r]);return i(()=>{if(o!=null)return;let e=g.current;if(e)return s(e,n),()=>{c(e)}},[o,s,c,n]),i(()=>{if(o==null)return l(e=>{let t=g.current?e.get(g.current)?.index:null;t!=null&&h(t)})},[o,l,h]),A.useMemo(()=>({ref:_,index:m}),[m,_])}export{G as C,k as E,K as S,Te as T,Be as _,nt as a,He as b,Fe as c,J as d,q as f,Re as g,Le as h,rt as i,Q as l,Y as m,dt as n,et as o,ze as p,ot as r,Ge as s,ut as t,Ie as u,X as v,Pe as w,Ue as x,Z as y};
1
+ import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{D as r,N as i,O as a,P as o,_ as s,d as c,f as l,l as u,o as d,s as f,w as p,x as m}from"./utils-BX1Diber.js";import{i as h,l as g,r as _,x as v,y}from"./useBaseUiId-dSIElxm7.js";import{$ as ee,At as b,B as x,Bt as te,Ct as ne,Dt as re,Et as ie,Ft as ae,G as oe,Ht as se,It as ce,Lt as le,Ot as S,Q as ue,Rt as de,St as fe,Tt as pe,Vt as me,Z as he,_t as ge,at as _e,bt as C,et as w,it as ve,kt as T,nt as ye,pt as be,q as xe,rt as Se,tt as Ce,wt as E,xt as we,zt as D}from"./index-73cjKBdb.js";import{n as O}from"./label-CxX4-RmK.js";var k=v(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),A=e(t()),j=0;function Te(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(j);function a(){i&&!i()||e?.focus({preventScroll:n})}if(r)return a(),l;let o=requestAnimationFrame(a);return j=o,()=>{j===o&&(cancelAnimationFrame(o),j=0)}}var M={inert:new WeakMap,"aria-hidden":new WeakMap},Ee=`data-base-ui-inert`,N={inert:new WeakSet,"aria-hidden":new WeakSet},P=new WeakMap,F=0;function I(e){return N[e]}function L(e){return e?a(e)?e.host:L(e.parentNode):null}var R=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=L(t);return e.contains(n)?n:null}).filter(e=>e!=null),z=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},B=(e,t,n)=>{let r=[],i=e=>{!e||n.has(e)||Array.from(e.children).forEach(e=>{s(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function V(e,t,n,r,{mark:i=!0,markerIgnoreElements:a=[]}){let o=r?`inert`:n?`aria-hidden`:null,s=null,c=null,l=R(t,e),u=i?R(t,a):[],d=new Set(u),f=i?B(t,z(l),new Set(l)).filter(e=>!d.has(e)):[],p=[],m=[];if(o){let e=M[o],n=I(o);c=n,s=e;let r=R(t,Array.from(t.querySelectorAll(`[aria-live]`))),i=l.concat(r);B(t,z(i),new Set(i)).forEach(t=>{let r=t.getAttribute(o),i=r!==null&&r!==`false`,a=(e.get(t)||0)+1;e.set(t,a),p.push(t),a===1&&i&&n.add(t),i||t.setAttribute(o,o===`inert`?``:`true`)})}return i&&f.forEach(e=>{let t=(P.get(e)||0)+1;P.set(e,t),m.push(e),t===1&&e.setAttribute(Ee,``)}),F+=1,()=>{s&&p.forEach(e=>{let t=(s.get(e)||0)-1;s.set(e,t),t||(!c?.has(e)&&o&&e.removeAttribute(o),c?.delete(e))}),i&&m.forEach(e=>{let t=(P.get(e)||0)-1;P.set(e,t),t||e.removeAttribute(Ee)}),--F,F||(M.inert=new WeakMap,M[`aria-hidden`]=new WeakMap,N.inert=new WeakSet,N[`aria-hidden`]=new WeakSet,P=new WeakMap)}}function De(e,t={}){let{ariaHidden:n=!1,inert:r=!1,mark:i=!0,markerIgnoreElements:a=[]}=t,o=_(e[0]).body;return V(e,o,n,r,{mark:i,markerIgnoreElements:a})}var H=n();function Oe(e,t){let n=m(b(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||`keyboard`:`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var U=20,W=[];function ke(){W=W.filter(e=>e.deref()?.isConnected)}function Ae(e){ke(),e&&s(e)!==`body`&&(W.push(new WeakRef(e)),W.length>U&&(W=W.slice(-20)))}function je(){return ke(),W[W.length-1]?.deref()}function Me(e){return e?ve(e)?e:_e(e)[0]||e:null}function Ne(e,t){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!t.current.includes(`floating`)&&!e.getAttribute(`role`)?.includes(`dialog`))return;let n=w(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return ve(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),r=e.getAttribute(`tabindex`);t.current.includes(`floating`)||n.length===0?r!==`0`&&e.setAttribute(`tabindex`,`0`):(r!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function Pe(e){let{context:t,children:n,disabled:r=!1,initialFocus:a=!0,returnFocus:o=!0,restoreFocus:s=!1,modal:c=!0,closeOnFocusOut:l=!0,openInteractionType:d=``,nextFocusableElement:m,previousFocusableElement:v,beforeContentFocusGuardRef:y,externalTree:ae,getInsideElements:me}=e,C=`rootStore`in t?t.rootStore:t,w=C.useState(`open`),D=C.useState(`domReferenceElement`),O=C.useState(`floatingElement`),{events:k,dataRef:j}=C.context,M=f(()=>j.current.floatingContext?.nodeId),Ee=a===!1,N=ie(D)&&Ee,P=A.useRef([`content`]),F=fe(a),I=fe(o),L=fe(d),R=oe(ae),z=xe(),B=A.useRef(!1),V=A.useRef(!1),U=A.useRef(!1),W=A.useRef(null),Pe=A.useRef(``),G=A.useRef(``),K=A.useRef(null),q=A.useRef(null),Fe=u(K,y,z?.beforeInsideRef),Ie=u(q,z?.afterInsideRef),J=se(),Y=se(),Le=we(),Re=z!=null,X=pe(O),Z=f((e=X)=>e?_e(e):[]),Q=f(()=>me?.().filter(e=>e!=null)??[]);A.useEffect(()=>{if(r||!c)return;function e(e){e.key===`Tab`&&T(X,S(_(X)))&&Z().length===0&&!N&&de(e)}return E(_(X),`keydown`,e)},[r,X,c,N,Z]),A.useEffect(()=>{if(r||!w)return;let e=_(X);function t(){U.current=!1}function n(e){let t=b(e),n=Q();U.current=!(T(O,t)||T(D,t)||T(z?.portalNode,t)||n.some(e=>e===t||T(e,t))),G.current=e.pointerType||`keyboard`,t?.closest(`[data-base-ui-click-trigger]`)&&(V.current=!0)}function i(){G.current=`keyboard`}return ne(E(e,`pointerdown`,n,!0),E(e,`pointerup`,t,!0),E(e,`pointercancel`,t,!0),E(e,`keydown`,i,!0))},[r,O,D,X,w,z,Q]),A.useEffect(()=>{if(r||!l)return;let e=_(X);function t(){V.current=!0,Y.start(0,()=>{V.current=!1})}function n(e){let t=b(e);ve(t)&&(W.current=t)}function i(t){let n=t.relatedTarget,r=t.currentTarget,i=b(t);queueMicrotask(()=>{let a=M(),o=C.context.triggerElements,l=Q(),u=n?.hasAttribute(he(`focus-guard`))&&[K.current,q.current,z?.beforeInsideRef.current,z?.afterInsideRef.current,z?.beforeOutsideRef.current,z?.afterOutsideRef.current,x(v),x(m)].includes(n),d=!(T(D,n)||T(O,n)||T(n,O)||T(z?.portalNode,n)||l.some(e=>e===n||T(e,n))||n!=null&&o.hasElement(n)||o.hasMatchingElement(e=>T(e,n))||u||R&&(ee(R.nodesRef.current,a).find(e=>T(e.context?.elements.floating,n)||T(e.context?.elements.domReference,n))||ue(R.nodesRef.current,a).find(e=>[e.context?.elements.floating,pe(e.context?.elements.floating)].includes(n)||e.context?.elements.domReference===n)));if(r===D&&X&&Ne(X,P),s&&r!==D&&!be(i)&&S(e)===e.body){if(p(X)&&(X.focus(),s===`popup`)){Le.request(()=>{X.focus()});return}let e=Z(),t=W.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||X;p(n)&&n.focus()}if(j.current.insideReactTree){j.current.insideReactTree=!1;return}(N||!c)&&n&&d&&!V.current&&(N||n!==je())&&(B.current=!0,C.setOpen(!1,h(g,t)))})}function a(){U.current||(j.current.insideReactTree=!0,J.start(0,()=>{j.current.insideReactTree=!1}))}let o=p(D)?D:null;if(!(!O&&!o))return ne(o&&E(o,`focusout`,i),o&&E(o,`pointerdown`,t),O&&E(O,`focusin`,n),O&&E(O,`focusout`,i),O&&z&&E(O,`focusout`,a,!0))},[r,D,O,X,c,R,z,C,l,s,Z,N,M,P,j,J,Y,Le,m,v,Q]),A.useEffect(()=>{if(r||!O||!w)return;let e=Array.from(z?.portalNode?.querySelectorAll(`[${he(`portal`)}]`)||[]),t=(R?ue(R.nodesRef.current,M()):[]).find(e=>ie(e.context?.elements.domReference||null))?.context?.elements.domReference,n=De([O,...e,K.current,q.current,z?.beforeOutsideRef.current,z?.afterOutsideRef.current,...Q(),t,x(v),x(m),N?D:null].filter(e=>e!=null),{ariaHidden:c||N,mark:!1}),i=De([O,...e].filter(e=>e!=null));return()=>{i(),n()}},[w,r,D,O,c,z,N,R,M,m,v,Q]),i(()=>{if(!w||r||!p(X))return;let e=_(X),t=S(e);queueMicrotask(()=>{let n=F.current,r=typeof n==`function`?n(L.current||``):n;if(r===void 0||r===!1||T(X,t))return;let i=null,a=()=>(i??=Z(X),i[0]||X),o;o=r===!0||r===null?a():x(r),o||=a();let s=T(X,S(e));Te(o,{preventScroll:o===X,shouldFocus(){if(s)return!0;let t=S(e);return!(t!==o&&T(X,t))}})})},[r,w,X,Z,F,L]),i(()=>{if(r||!X)return;let e=_(X);Ae(S(e));function t(e){if(e.open||(Pe.current=Oe(e.nativeEvent,G.current)),e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`&&(B.current=!0),e.reason===`outside-press`)if(e.nested)B.current=!1;else if(ce(e.nativeEvent)||le(e.nativeEvent))B.current=!1;else{let e=!1;_(X).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?B.current=!1:B.current=!0}}k.on(`openchange`,t);function n(){let e=I.current,t=typeof e==`function`?e(Pe.current):e;if(t===void 0||t===!1)return null;if(t===null&&(t=!0),typeof t==`boolean`)return D?.isConnected?D:je()||null;let n=D?.isConnected?D:je();return x(t)||n||null}return()=>{k.off(`openchange`,t);let r=S(e),i=Q(),a=T(O,r)||i.some(e=>e===r||T(e,r))||R&&ee(R.nodesRef.current,M(),!1).some(e=>T(e.context?.elements.floating,r)),o=I.current,s=n();queueMicrotask(()=>{let t=Me(s),n=typeof o!=`boolean`;o&&!B.current&&p(t)&&(!(!n&&t!==r&&r!==e.body)||a)&&t.focus({preventScroll:!0}),B.current=!1})}},[r,O,X,I,k,R,D,M,Q]),i(()=>{if(!te||w||!O)return;let e=S(_(O));!p(e)||!re(e)||T(O,e)&&e.blur()},[w,O]),i(()=>{if(!(r||!z))return z.setFocusManagerState({modal:c,closeOnFocusOut:l,open:w,onOpenChange:C.setOpen,domReference:D}),()=>{z.setFocusManagerState(null)}},[r,z,c,w,C,l,D]),i(()=>{if(!(r||!X))return Ne(X,P),()=>{queueMicrotask(ke)}},[r,X,P]);let ze=!r&&(c?!N:!0)&&(Re||c);return(0,H.jsxs)(A.Fragment,{children:[ze&&(0,H.jsx)(ge,{"data-type":`inside`,ref:Fe,onFocus:e=>{if(c){let e=Z();Te(e[e.length-1])}else z?.portalNode&&(B.current=!1,Se(e,z.portalNode)?Ce(D)?.focus():x(v??z.beforeOutsideRef)?.focus())}}),n,ze&&(0,H.jsx)(ge,{"data-type":`inside`,ref:Ie,onFocus:e=>{c?Te(Z()[0]):z?.portalNode&&(l&&(B.current=!0),Se(e,z.portalNode)?ye(D)?.focus():x(m??z.afterOutsideRef)?.focus())}})]})}function G(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:l=y}=t,u=`rootStore`in e?e.rootStore:e,d=u.context.dataRef,f=A.useRef(void 0),p=we(),m=se(),g=A.useMemo(()=>{function e(e,t,n,r){let i=h(l,t,n);e&&r===`touch`&&s>0?m.start(s,()=>{u.setOpen(!0,i)}):u.setOpen(e,i)}function t(e,t,n){let r=d.current.openEvent,a=u.select(`domReferenceElement`)!==t;return e&&a||!e||!i?!0:r&&o?!n(r.type):!1}return{onPointerDown(e){f.current=e.pointerType},onMouseDown(n){let i=f.current,o=n.nativeEvent,s=u.select(`open`);if(n.button!==0||r===`click`||ae(i,!0)&&a)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),l=b(o);if(re(l)){e(c,o,l,i);return}let d=n.currentTarget;p.request(()=>{e(c,o,d,i)})},onClick(n){if(r===`mousedown-only`)return;let i=f.current;if(r===`mousedown`&&i){f.current=void 0;return}ae(i,!0)&&a||e(t(u.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,i)},onKeyDown(){f.current=void 0}}},[d,r,a,l,u,o,i,p,m,s]);return A.useMemo(()=>n?{reference:g}:c,[n,g])}function K(e){return d(19)?e:e?`true`:void 0}var q=`ArrowUp`,Fe=`ArrowDown`,Ie=`ArrowLeft`,J=`ArrowRight`,Y=`Home`,Le=new Set([Ie,J]),Re=new Set([Ie,J,Y,`End`]),X=new Set([q,Fe]),Z=new Set([q,Fe,Y,`End`]),Q=new Set([...Le,...X]),ze=new Set([...Q,Y,`End`]),Be=new Set([`Shift`,`Control`,`Alt`,`Meta`]);function Ve(e){return p(e)&&e.tagName===`INPUT`}function He(e){return!!(Ve(e)&&e.selectionStart!=null||p(e)&&e.tagName===`TEXTAREA`)}function Ue(e,t,n,r){if(!e||!t||!t.scrollTo)return;let i=e.scrollLeft,a=e.scrollTop,o=e.clientWidth<e.scrollWidth,s=e.clientHeight<e.scrollHeight;if(o&&r!==`vertical`){let r=We(e,t,`left`),a=$(e),o=$(t);n===`ltr`&&(r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight?i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight:r-o.scrollMarginLeft<e.scrollLeft+a.scrollPaddingLeft&&(i=r-o.scrollMarginLeft-a.scrollPaddingLeft)),n===`rtl`&&(r-o.scrollMarginRight<e.scrollLeft+a.scrollPaddingLeft?i=r-o.scrollMarginLeft-a.scrollPaddingLeft:r+t.offsetWidth+o.scrollMarginRight>e.scrollLeft+e.clientWidth-a.scrollPaddingRight&&(i=r+t.offsetWidth+o.scrollMarginRight-e.clientWidth+a.scrollPaddingRight))}if(s&&r!==`horizontal`){let n=We(e,t,`top`),r=$(e),i=$(t);n-i.scrollMarginTop<e.scrollTop+r.scrollPaddingTop?a=n-i.scrollMarginTop-r.scrollPaddingTop:n+t.offsetHeight+i.scrollMarginBottom>e.scrollTop+e.clientHeight-r.scrollPaddingBottom&&(a=n+t.offsetHeight+i.scrollMarginBottom-e.clientHeight+r.scrollPaddingBottom)}e.scrollTo({left:i,top:a,behavior:`auto`})}function We(e,t,n){let r=n===`left`?`offsetLeft`:`offsetTop`,i=0;for(;t.offsetParent&&(i+=t[r],t.offsetParent!==e);)t=t.offsetParent;return i}function $(e){let t=getComputedStyle(e);return{scrollMarginTop:parseFloat(t.scrollMarginTop)||0,scrollMarginRight:parseFloat(t.scrollMarginRight)||0,scrollMarginBottom:parseFloat(t.scrollMarginBottom)||0,scrollMarginLeft:parseFloat(t.scrollMarginLeft)||0,scrollPaddingTop:parseFloat(t.scrollPaddingTop)||0,scrollPaddingRight:parseFloat(t.scrollPaddingRight)||0,scrollPaddingBottom:parseFloat(t.scrollPaddingBottom)||0,scrollPaddingLeft:parseFloat(t.scrollPaddingLeft)||0}}var Ge=A.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,H.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})}),Ke={},qe={},Je=``;function Ye(e){if(typeof document>`u`)return!1;let t=_(e);return m(t).innerWidth-t.documentElement.clientWidth>0}function Xe(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=_(e),n=t.documentElement,i=t.body,a=r(n)?n:i,o=a.style.overflowY,s=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,a.style.overflowY=`scroll`;let c=a.offsetWidth;a.style.overflowY=`hidden`;let l=a.offsetWidth;return a.style.overflowY=o,n.style.scrollbarGutter=s,c===l}function Ze(e){let t=_(e),n=t.documentElement,i=t.body,a=r(n)?n:i,o={overflowY:a.style.overflowY,overflowX:a.style.overflowX};return Object.assign(a.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(a.style,o)}}function Qe(e){let t=_(e),n=t.documentElement,i=t.body,a=m(n),o=0,s=0,c=!1,l=C.create();if(te&&(a.visualViewport?.scale??1)!==1)return()=>{};function u(){let t=a.getComputedStyle(n),l=a.getComputedStyle(i),u=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;o=n.scrollTop,s=n.scrollLeft,Ke={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Je=n.style.scrollBehavior,qe={position:i.style.position,height:i.style.height,width:i.style.width,boxSizing:i.style.boxSizing,overflowY:i.style.overflowY,overflowX:i.style.overflowX,scrollBehavior:i.style.scrollBehavior};let d=n.scrollHeight>n.clientHeight,f=n.scrollWidth>n.clientWidth,p=t.overflowY===`scroll`||l.overflowY===`scroll`,m=t.overflowX===`scroll`||l.overflowX===`scroll`,h=Math.max(0,a.innerWidth-i.clientWidth),g=Math.max(0,a.innerHeight-i.clientHeight),_=parseFloat(l.marginTop)+parseFloat(l.marginBottom),v=parseFloat(l.marginLeft)+parseFloat(l.marginRight),y=r(n)?n:i;if(c=Xe(e),c){n.style.scrollbarGutter=u,y.style.overflowY=`hidden`,y.style.overflowX=`hidden`;return}Object.assign(n.style,{scrollbarGutter:u,overflowY:`hidden`,overflowX:`hidden`}),(d||p)&&(n.style.overflowY=`scroll`),(f||m)&&(n.style.overflowX=`scroll`),Object.assign(i.style,{position:`relative`,height:_||g?`calc(100dvh - ${_+g}px)`:`100dvh`,width:v||h?`calc(100vw - ${v+h}px)`:`100vw`,boxSizing:`border-box`,overflow:`hidden`,scrollBehavior:`unset`}),i.scrollTop=o,i.scrollLeft=s,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`}function d(){Object.assign(n.style,Ke),Object.assign(i.style,qe),c||(n.scrollTop=o,n.scrollLeft=s,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=Je)}function f(){d(),l.request(u)}u();let p=E(a,`resize`,f);return()=>{l.cancel(),d(),typeof a.removeEventListener==`function`&&p()}}var $e=new class{lockCount=0;restore=null;timeoutLock=me.create();timeoutUnlock=me.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=_(e).documentElement,n=m(t).getComputedStyle(t).overflowY;if(n===`hidden`||n===`clip`){this.restore=l;return}let r=D||!Ye(e);this.restore=r?Ze(e):Qe(e)}};function et(e=!0,t=null){i(()=>{if(e)return $e.acquire(t)},[e,t])}function tt(e){let t=A.useRef(``),n=A.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:A.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function nt(e,t){let{onClick:n,onPointerDown:r}=tt(f((n,r)=>{(typeof e==`function`?e():e)||t(r||(D?`touch`:``))}));return A.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function rt(e){let[t,n]=A.useState(null),r=nt(e,n);return O(e,t=>{t&&!e&&n(null)}),A.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}var it=A.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},elementsRef:{current:[]},nextIndexRef:{current:0}});function at(){return A.useContext(it)}function ot(e){let{children:t,elementsRef:n,labelsRef:r,onMapChange:a}=e,s=f(a),c=A.useRef(0),l=o(ct).current,u=o(st).current,[d,p]=A.useState(0),m=A.useRef(d),h=f((e,t)=>{u.set(e,t??null),m.current+=1,p(m.current)}),g=f(e=>{u.delete(e),m.current+=1,p(m.current)}),_=A.useMemo(()=>{let e=new Map;return Array.from(u.keys()).filter(e=>e.isConnected).sort(lt).forEach((t,n)=>{let r=u.get(t)??{};e.set(t,{...r,index:n})}),e},[u,d]);i(()=>{if(typeof MutationObserver!=`function`||_.size===0)return;let e=new MutationObserver(e=>{let t=new Set,n=e=>t.has(e)?t.delete(e):t.add(e);e.forEach(e=>{e.removedNodes.forEach(n),e.addedNodes.forEach(n)}),t.size===0&&(m.current+=1,p(m.current))});return _.forEach((t,n)=>{n.parentElement&&e.observe(n.parentElement,{childList:!0})}),()=>{e.disconnect()}},[_]),i(()=>{m.current===d&&(n.current.length!==_.size&&(n.current.length=_.size),r&&r.current.length!==_.size&&(r.current.length=_.size),c.current=_.size),s(_)},[s,_,n,r,d]),i(()=>()=>{n.current=[]},[n]),i(()=>()=>{r&&(r.current=[])},[r]);let v=f(e=>(l.add(e),()=>{l.delete(e)}));i(()=>{l.forEach(e=>e(_))},[l,_]);let y=A.useMemo(()=>({register:h,unregister:g,subscribeMapChange:v,elementsRef:n,labelsRef:r,nextIndexRef:c}),[h,g,v,n,r,c]);return(0,H.jsx)(it.Provider,{value:y,children:t})}function st(){return new Map}function ct(){return new Set}function lt(e,t){let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}var ut=function(e){return e[e.None=0]=`None`,e[e.GuessFromOrder=1]=`GuessFromOrder`,e}({});function dt(e={}){let{label:t,metadata:n,textRef:r,indexGuessBehavior:a,index:o}=e,{register:s,unregister:c,subscribeMapChange:l,elementsRef:u,labelsRef:d,nextIndexRef:f}=at(),p=A.useRef(-1),[m,h]=A.useState(o??(a===ut.GuessFromOrder?()=>{if(p.current===-1){let e=f.current;f.current+=1,p.current=e}return p.current}:-1)),g=A.useRef(null),_=A.useCallback(e=>{if(g.current=e,m!==-1&&e!==null&&(u.current[m]=e,d)){let n=t!==void 0;d.current[m]=n?t:r?.current?.textContent??e.textContent}},[m,u,d,t,r]);return i(()=>{if(o!=null)return;let e=g.current;if(e)return s(e,n),()=>{c(e)}},[o,s,c,n]),i(()=>{if(o==null)return l(e=>{let t=g.current?e.get(g.current)?.index:null;t!=null&&h(t)})},[o,l,h]),A.useMemo(()=>({ref:_,index:m}),[m,_])}export{G as C,k as E,K as S,Te as T,Be as _,nt as a,He as b,Fe as c,J as d,q as f,Re as g,Le as h,rt as i,Q as l,Y as m,dt as n,et as o,ze as p,ot as r,Ge as s,ut as t,Ie as u,X as v,Pe as w,Ue as x,Z as y};
@@ -1,4 +1,4 @@
1
- import{h as e,p as t}from"./src-D-NMWEou.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-CSCIHK7Q-BXW0kTPy.js";import{i as g}from"./chunk-5ZQYHXKU-D9lXR7-a.js";import{t as _}from"./chunk-WU5MYG2G-BJCNi6Df.js";import{t as v}from"./rough.esm-CSKSodPl.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function ee(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function te(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||oe,r=t.lossFunction||z,i=re(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var ne=1e-10;function R(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+ne?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function re(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function ie(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=R(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ae(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function oe(e,t={}){let n=ce(e,t),r=t.lossFunction||z;if(e.length>=8){let i=se(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function se(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=ie(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ae(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=ee(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function ce(e,t){let n=t&&t.lossFunction?t.lossFunction:z,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+ne>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=R(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=R(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function z(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function le(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function ue(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function de(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function B(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function fe(e,t,n){t??=Math.PI/2;let r=he(e).map(e=>Object.assign({},e)),i=de(r);for(let e of i){ue(e,t,n);let r=B(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=B(r);return me(r)}function pe(e,t,n,r,i){let a=he(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=B(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return me(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function me(e){let t={};for(let n of e)t[n.setid]=n;return t}function he(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function ge(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=te,x=z;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=fe(e,o,f)),S=pe(e,n,r,i,c),C=ye(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=xe(t))});function k(e){return t=>we(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>we(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,V(S,T)):I.each(`end`,V(S,T)):I.each(V(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let ee=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),ee.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?z:e===`logRatio`?le:e,S):x},S}function V(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function H(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function _e(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=H(r[0],e,t);for(let n=1;n<r.length;++n){let o=H(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*H({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?_e(e,[]):O(l.arcs.map(e=>e.p1))}function ve(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ye(e,t,n){let r={},i=ve(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=_e(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function be(e,t,n){let r=[];return r.push(`
1
+ import{h as e,p as t}from"./src-D-NMWEou.js";import{H as n,K as r,U as i,a,b as o,c as s,et as c,f as l,nt as u,rt as d,tt as f,v as p,w as m,y as h}from"./chunk-CSCIHK7Q-Bbq9a-f4.js";import{i as g}from"./chunk-5ZQYHXKU-DQd7S-DN.js";import{t as _}from"./chunk-WU5MYG2G-CPYS59Yv.js";import{t as v}from"./rough.esm-CSKSodPl.js";var y=(e,t)=>u(e,`a`,-t),b=1e-10;function x(e,t){let n=C(e),r=n.filter(t=>S(t,e)),i=0,a=0,o=[];if(r.length>1){let t=O(r);for(let e=0;e<r.length;++e){let n=r[e];n.angle=Math.atan2(n.x-t.x,n.y-t.y)}r.sort((e,t)=>t.angle-e.angle);let n=r[r.length-1];for(let t=0;t<r.length;++t){let s=r[t];a+=(n.x+s.x)*(s.y-n.y);let c={x:(s.x+n.x)/2,y:(s.y+n.y)/2},l=null;for(let t=0;t<s.parentIndex.length;++t)if(n.parentIndex.includes(s.parentIndex[t])){let r=e[s.parentIndex[t]],i=Math.atan2(s.x-r.x,s.y-r.y),a=Math.atan2(n.x-r.x,n.y-r.y),o=a-i;o<0&&(o+=2*Math.PI);let u=a-o/2,d=T(c,{x:r.x+r.radius*Math.sin(u),y:r.y+r.radius*Math.cos(u)});d>r.radius*2&&(d=r.radius*2),(l==null||l.width>d)&&(l={circle:r,width:d,p1:s,p2:n,large:d>r.radius,sweep:!0})}l!=null&&(o.push(l),i+=w(l.circle.radius,l.width),n=s)}}else{let t=e[0];for(let n=1;n<e.length;++n)e[n].radius<t.radius&&(t=e[n]);let n=!1;for(let r=0;r<e.length;++r)if(T(e[r],t)>Math.abs(t.radius-e[r].radius)){n=!0;break}n?i=a=0:(i=t.radius*t.radius*Math.PI,o.push({circle:t,p1:{x:t.x,y:t.y+t.radius},p2:{x:t.x-b,y:t.y+t.radius},width:t.radius*2,large:!0,sweep:!0}))}return a/=2,t&&(t.area=i+a,t.arcArea=i,t.polygonArea=a,t.arcs=o,t.innerPoints=r,t.intersectionPoints=n),i+a}function S(e,t){return t.every(t=>T(e,t)<t.radius+b)}function C(e){let t=[];for(let n=0;n<e.length;++n)for(let r=n+1;r<e.length;++r){let i=D(e[n],e[r]);for(let e of i)e.parentIndex=[n,r],t.push(e)}return t}function w(e,t){return e*e*Math.acos(1-t/e)-(e-t)*Math.sqrt(t*(2*e-t))}function T(e,t){return Math.sqrt((e.x-t.x)*(e.x-t.x)+(e.y-t.y)*(e.y-t.y))}function E(e,t,n){if(n>=e+t)return 0;if(n<=Math.abs(e-t))return Math.PI*Math.min(e,t)*Math.min(e,t);let r=e-(n*n-t*t+e*e)/(2*n),i=t-(n*n-e*e+t*t)/(2*n);return w(e,r)+w(t,i)}function D(e,t){let n=T(e,t),r=e.radius,i=t.radius;if(n>=r+i||n<=Math.abs(r-i))return[];let a=(r*r-i*i+n*n)/(2*n),o=Math.sqrt(r*r-a*a),s=e.x+a*(t.x-e.x)/n,c=e.y+a*(t.y-e.y)/n,l=-(t.y-e.y)*(o/n),u=-(t.x-e.x)*(o/n);return[{x:s+l,y:c-u},{x:s-l,y:c+u}]}function O(e){let t={x:0,y:0};for(let n of e)t.x+=n.x,t.y+=n.y;return t.x/=e.length,t.y/=e.length,t}function k(e,t,n,r){r||={};let i=r.maxIterations||100,a=r.tolerance||1e-10,o=e(t),s=e(n),c=n-t;if(o*s>0)throw`Initial bisect points must have opposite signs`;if(o===0)return t;if(s===0)return n;for(let n=0;n<i;++n){c/=2;let n=t+c,r=e(n);if(r*o>=0&&(t=n),Math.abs(c)<a||r===0)return n}return t+c}function A(e){let t=Array(e);for(let n=0;n<e;++n)t[n]=0;return t}function j(e,t){return A(e).map(()=>A(t))}function M(e,t){let n=0;for(let r=0;r<e.length;++r)n+=e[r]*t[r];return n}function N(e){return Math.sqrt(M(e,e))}function P(e,t,n){for(let r=0;r<t.length;++r)e[r]=t[r]*n}function F(e,t,n,r,i){for(let a=0;a<e.length;++a)e[a]=t*n[a]+r*i[a]}function I(e,t,n){n||={};let r=n.maxIterations||t.length*200,i=n.nonZeroDelta||1.05,a=n.zeroDelta||.001,o=n.minErrorDelta||1e-6,s=n.minErrorDelta||1e-5,c=n.rho===void 0?1:n.rho,l=n.chi===void 0?2:n.chi,u=n.psi===void 0?-.5:n.psi,d=n.sigma===void 0?.5:n.sigma,f,p=t.length,m=Array(p+1);m[0]=t,m[0].fx=e(t),m[0].id=0;for(let n=0;n<p;++n){let r=t.slice();r[n]=r[n]?r[n]*i:a,m[n+1]=r,m[n+1].fx=e(r),m[n+1].id=n+1}function h(e){for(let t=0;t<e.length;t++)m[p][t]=e[t];m[p].fx=e.fx}let g=(e,t)=>e.fx-t.fx,_=t.slice(),v=t.slice(),y=t.slice(),b=t.slice();for(let t=0;t<r;++t){if(m.sort(g),n.history){let e=m.map(e=>{let t=e.slice();return t.fx=e.fx,t.id=e.id,t});e.sort((e,t)=>e.id-t.id),n.history.push({x:m[0].slice(),fx:m[0].fx,simplex:e})}f=0;for(let e=0;e<p;++e)f=Math.max(f,Math.abs(m[0][e]-m[1][e]));if(Math.abs(m[0].fx-m[p].fx)<o&&f<s)break;for(let e=0;e<p;++e){_[e]=0;for(let t=0;t<p;++t)_[e]+=m[t][e];_[e]/=p}let t=m[p];if(F(v,1+c,_,-c,t),v.fx=e(v),v.fx<m[0].fx)F(b,1+l,_,-l,t),b.fx=e(b),b.fx<v.fx?h(b):h(v);else if(v.fx>=m[p-1].fx){let n=!1;if(v.fx>t.fx?(F(y,1+u,_,-u,t),y.fx=e(y),y.fx<t.fx?h(y):n=!0):(F(y,1-u*c,_,u*c,t),y.fx=e(y),y.fx<v.fx?h(y):n=!0),n){if(d>=1)break;for(let t=1;t<m.length;++t)F(m[t],1-d,m[0],d,m[t]),m[t].fx=e(m[t])}}else h(v)}return m.sort(g),{fx:m[0].fx,x:m[0]}}function L(e,t,n,r,i,a,o){let s=n.fx,c=M(n.fxprime,t),l=s,u=s,d=c,f=0;i||=1,a||=1e-6,o||=.1;function p(u,f,p){for(let m=0;m<16;++m)if(i=(u+f)/2,F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||l>=p)f=i;else{if(Math.abs(d)<=-o*c)return i;d*(f-u)>=0&&(f=u),u=i,p=l}return 0}for(let m=0;m<10;++m){if(F(r.x,1,n.x,i,t),l=r.fx=e(r.x,r.fxprime),d=M(r.fxprime,t),l>s+a*i*c||m&&l>=u)return p(f,i,u);if(Math.abs(d)<=-o*c)return i;if(d>=0)return p(i,f,l);u=l,f=i,i*=2}return i}function ee(e,t,n){let r={x:t.slice(),fx:0,fxprime:t.slice()},i={x:t.slice(),fx:0,fxprime:t.slice()},a=t.slice(),o,s,c=1,l;n||={},l=n.maxIterations||t.length*20,r.fx=e(r.x,r.fxprime),o=r.fxprime.slice(),P(o,r.fxprime,-1);for(let t=0;t<l;++t){if(c=L(e,o,r,i,c),n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),!c)P(o,r.fxprime,-1);else{F(a,1,i.fxprime,-1,r.fxprime);let e=M(r.fxprime,r.fxprime),t=Math.max(0,M(a,i.fxprime)/e);F(o,t,o,-1,i.fxprime),s=r,r=i,i=s}if(N(r.fxprime)<=1e-5)break}return n.history&&n.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:c}),r}function te(e,t={}){t.maxIterations=t.maxIterations||500;let n=t.initialLayout||oe,r=t.lossFunction||z,i=re(e,t),a=n(i,t),o=Object.keys(a),s=[];for(let e of o)s.push(a[e].x),s.push(a[e].y);let c=I(e=>{let t={};for(let n=0;n<o.length;++n){let r=o[n];t[r]={x:e[2*n],y:e[2*n+1],radius:a[r].radius}}return r(t,i)},s,t).x;for(let e=0;e<o.length;++e){let t=o[e];a[t].x=c[2*e],a[t].y=c[2*e+1]}return a}var ne=1e-10;function R(e,t,n){return Math.min(e,t)*Math.min(e,t)*Math.PI<=n+ne?Math.abs(e-t):k(r=>E(e,t,r)-n,0,e+t)}function re(e,t={}){let n=t.distinct,r=e.map(e=>Object.assign({},e));function i(e){return e.join(`;`)}if(n){let e=new Map;for(let t of r)for(let n=0;n<t.sets.length;n++){let r=String(t.sets[n]);e.set(r,t.size+(e.get(r)||0));for(let i=n+1;i<t.sets.length;i++){let n=String(t.sets[i]),a=`${r};${n}`,o=`${n};${r}`;e.set(a,t.size+(e.get(a)||0)),e.set(o,t.size+(e.get(o)||0))}}for(let t of r)t.sets.length<3&&(t.size=e.get(i(t.sets)))}let a=[],o=new Set;for(let e of r)if(e.sets.length===1)a.push(e.sets[0]);else if(e.sets.length===2){let t=e.sets[0],n=e.sets[1];o.add(i(e.sets)),o.add(i([n,t]))}a.sort((e,t)=>e===t?0:e<t?-1:1);for(let e=0;e<a.length;++e){let t=a[e];for(let n=e+1;n<a.length;++n){let e=a[n];o.has(i([t,e]))||r.push({sets:[t,e],size:0})}}return r}function ie(e,t,n){let r=j(t.length,t.length),i=j(t.length,t.length);return e.filter(e=>e.sets.length===2).forEach(e=>{let a=n[e.sets[0]],o=n[e.sets[1]],s=R(Math.sqrt(t[a].size/Math.PI),Math.sqrt(t[o].size/Math.PI),e.size);r[a][o]=r[o][a]=s;let c=0;e.size+1e-10>=Math.min(t[a].size,t[o].size)?c=1:e.size<=1e-10&&(c=-1),i[a][o]=i[o][a]=c}),{distances:r,constraints:i}}function ae(e,t,n,r){for(let e=0;e<t.length;++e)t[e]=0;let i=0;for(let a=0;a<n.length;++a){let o=e[2*a],s=e[2*a+1];for(let c=a+1;c<n.length;++c){let l=e[2*c],u=e[2*c+1],d=n[a][c],f=r[a][c],p=(l-o)*(l-o)+(u-s)*(u-s),m=Math.sqrt(p),h=p-d*d;f>0&&m<=d||f<0&&m>=d||(i+=2*h*h,t[2*a]+=4*h*(o-l),t[2*a+1]+=4*h*(s-u),t[2*c]+=4*h*(l-o),t[2*c+1]+=4*h*(u-s))}}return i}function oe(e,t={}){let n=ce(e,t),r=t.lossFunction||z;if(e.length>=8){let i=se(e,t),a=r(i,e),o=r(n,e);a+1e-8<o&&(n=i)}return n}function se(e,t={}){let n=t.restarts||10,r=[],i={};for(let t of e)t.sets.length===1&&(i[t.sets[0]]=r.length,r.push(t));let{distances:a,constraints:o}=ie(e,r,i),s=N(a.map(N))/a.length;a=a.map(e=>e.map(e=>e/s));let c=(e,t)=>ae(e,t,a,o),l=null;for(let e=0;e<n;++e){let e=ee(c,A(a.length*2).map(Math.random),t);(!l||e.fx<l.fx)&&(l=e)}let u=l.x,d={};for(let e=0;e<r.length;++e){let t=r[e];d[t.sets[0]]={x:u[2*e]*s,y:u[2*e+1]*s,radius:Math.sqrt(t.size/Math.PI)}}if(t.history)for(let e of t.history)P(e.x,s);return d}function ce(e,t){let n=t&&t.lossFunction?t.lossFunction:z,r={},i={};for(let t of e)if(t.sets.length===1){let e=t.sets[0];r[e]={x:1e10,y:1e10,rowid:r.length,size:t.size,radius:Math.sqrt(t.size/Math.PI)},i[e]=[]}e=e.filter(e=>e.sets.length===2);for(let t of e){let e=t.weight==null?1:t.weight,n=t.sets[0],a=t.sets[1];t.size+ne>=Math.min(r[n].size,r[a].size)&&(e=0),i[n].push({set:a,size:t.size,weight:e}),i[a].push({set:n,size:t.size,weight:e})}let a=[];Object.keys(i).forEach(e=>{let t=0;for(let n=0;n<i[e].length;++n)t+=i[e][n].size*i[e][n].weight;a.push({set:e,size:t})});function o(e,t){return t.size-e.size}a.sort(o);let s={};function c(e){return e.set in s}function l(e,t){r[t].x=e.x,r[t].y=e.y,s[t]=!0}l({x:0,y:0},a[0].set);for(let t=1;t<a.length;++t){let s=a[t].set,d=i[s].filter(c),f=r[s];if(d.sort(o),d.length===0)throw`ERROR: missing pairwise overlap information`;let p=[];for(var u=0;u<d.length;++u){let e=r[d[u].set],t=R(f.radius,e.radius,d[u].size);p.push({x:e.x+t,y:e.y}),p.push({x:e.x-t,y:e.y}),p.push({y:e.y+t,x:e.x}),p.push({y:e.y-t,x:e.x});for(let n=u+1;n<d.length;++n){let i=r[d[n].set],a=R(f.radius,i.radius,d[n].size),o=D({x:e.x,y:e.y,radius:t},{x:i.x,y:i.y,radius:a});p.push(...o)}}let m=1e50,h=p[0];for(let t of p){r[s].x=t.x,r[s].y=t.y;let i=n(r,e);i<m&&(m=i,h=t)}l(h,s)}return r}function z(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight;n+=i*(t-r.size)*(t-r.size)}return n}function le(e,t){let n=0;for(let r of t){if(r.sets.length===1)continue;let t;if(r.sets.length===2){let n=e[r.sets[0]],i=e[r.sets[1]];t=E(n.radius,i.radius,T(n,i))}else t=x(r.sets.map(t=>e[t]));let i=r.weight==null?1:r.weight,a=Math.log((t+1)/(r.size+1));n+=i*a*a}return n}function ue(e,t,n){if(n==null?e.sort((e,t)=>t.radius-e.radius):e.sort(n),e.length>0){let t=e[0].x,n=e[0].y;for(let r of e)r.x-=t,r.y-=n}if(e.length===2&&T(e[0],e[1])<Math.abs(e[1].radius-e[0].radius)&&(e[1].x=e[0].x+e[0].radius-e[1].radius-1e-10,e[1].y=e[0].y),e.length>1){let n=Math.atan2(e[1].x,e[1].y)-t,r=Math.cos(n),i=Math.sin(n);for(let t of e){let e=t.x,n=t.y;t.x=r*e-i*n,t.y=i*e+r*n}}if(e.length>2){let n=Math.atan2(e[2].x,e[2].y)-t;for(;n<0;)n+=2*Math.PI;for(;n>2*Math.PI;)n-=2*Math.PI;if(n>Math.PI){let t=e[1].y/(1e-10+e[1].x);for(let n of e){var r=(n.x+t*n.y)/(1+t*t);n.x=2*r-n.x,n.y=2*r*t-n.y}}}}function de(e){e.forEach(e=>{e.parent=e});function t(e){return e.parent!==e&&(e.parent=t(e.parent)),e.parent}function n(e,n){let r=t(e);r.parent=t(n)}for(let t=0;t<e.length;++t)for(let r=t+1;r<e.length;++r){let i=e[t].radius+e[r].radius;T(e[t],e[r])+1e-10<i&&n(e[r],e[t])}let r=new Map;for(let n=0;n<e.length;++n){let i=t(e[n]).parent.setid;r.has(i)||r.set(i,[]),r.get(i).push(e[n])}return e.forEach(e=>{delete e.parent}),Array.from(r.values())}function B(e){let t=t=>({max:e.reduce((e,n)=>Math.max(e,n[t]+n.radius),-1/0),min:e.reduce((e,n)=>Math.min(e,n[t]-n.radius),1/0)});return{xRange:t(`x`),yRange:t(`y`)}}function fe(e,t,n){t??=Math.PI/2;let r=he(e).map(e=>Object.assign({},e)),i=de(r);for(let e of i){ue(e,t,n);let r=B(e);e.size=(r.xRange.max-r.xRange.min)*(r.yRange.max-r.yRange.min),e.bounds=r}i.sort((e,t)=>t.size-e.size),r=i[0];let a=r.bounds,o=(a.xRange.max-a.xRange.min)/50;function s(e,t,n){if(!e)return;let i=e.bounds,s,c;if(t)s=a.xRange.max-i.xRange.min+o;else{s=a.xRange.max-i.xRange.max;let e=(i.xRange.max-i.xRange.min)/2-(a.xRange.max-a.xRange.min)/2;e<0&&(s+=e)}if(n)c=a.yRange.max-i.yRange.min+o;else{c=a.yRange.max-i.yRange.max;let e=(i.yRange.max-i.yRange.min)/2-(a.yRange.max-a.yRange.min)/2;e<0&&(c+=e)}for(let t of e)t.x+=s,t.y+=c,r.push(t)}let c=1;for(;c<i.length;)s(i[c],!0,!1),s(i[c+1],!1,!0),s(i[c+2],!0,!0),c+=3,a=B(r);return me(r)}function pe(e,t,n,r,i){let a=he(e);t-=2*r,n-=2*r;let{xRange:o,yRange:s}=B(a);if(o.max===o.min||s.max===s.min)return console.log(`not scaling solution: zero size detected`),e;let c,l;if(i){let e=Math.sqrt(i/Math.PI)*2;c=t/e,l=n/e}else c=t/(o.max-o.min),l=n/(s.max-s.min);let u=Math.min(l,c),d=(t-(o.max-o.min)*u)/2,f=(n-(s.max-s.min)*u)/2;return me(a.map(e=>({radius:u*e.radius,x:r+d+(e.x-o.min)*u,y:r+f+(e.y-s.min)*u,setid:e.setid})))}function me(e){let t={};for(let n of e)t[n.setid]=n;return t}function he(e){return Object.keys(e).map(t=>Object.assign(e[t],{setid:t}))}function ge(e={}){let t=!1,n=600,r=350,i=15,a=1e3,o=Math.PI/2,s=!0,c=null,l=!0,u=!0,d=null,f=null,p=!1,m=null,h=e&&e.symmetricalTextCentre?e.symmetricalTextCentre:!1,g={},_=e&&e.colourScheme?e.colourScheme:e&&e.colorScheme?e.colorScheme:[`#1f77b4`,`#ff7f0e`,`#2ca02c`,`#d62728`,`#9467bd`,`#8c564b`,`#e377c2`,`#7f7f7f`,`#bcbd22`,`#17becf`],v=0,y=function(e){if(e in g)return g[e];var t=g[e]=_[v];return v+=1,v>=_.length&&(v=0),t},b=te,x=z;function S(g){let _=g.datum(),v=new Set;_.forEach(e=>{e.size==0&&e.sets.length==1&&v.add(e.sets[0])}),_=_.filter(e=>!e.sets.some(e=>v.has(e)));let S={},C={};if(_.length>0){let e=b(_,{lossFunction:x,distinct:p});s&&(e=fe(e,o,f)),S=pe(e,n,r,i,c),C=ye(S,_,h)}let w={};_.forEach(e=>{e.label&&(w[e.sets]=e.label)});function T(e){if(e.sets in w)return w[e.sets];if(e.sets.length==1)return``+e.sets[0]}g.selectAll(`svg`).data([S]).enter().append(`svg`);let E=g.select(`svg`);t?E.attr(`viewBox`,`0 0 ${n} ${r}`):E.attr(`width`,n).attr(`height`,r);let D={},O=!1;E.selectAll(`.venn-area path`).each(function(e){let t=this.getAttribute(`d`);e.sets.length==1&&t&&!p&&(O=!0,D[e.sets[0]]=xe(t))});function k(e){return t=>we(e.sets.map(e=>{let i=D[e],a=S[e];return i||={x:n/2,y:r/2,radius:1},a||={x:n/2,y:r/2,radius:1},{x:i.x*(1-t)+a.x*t,y:i.y*(1-t)+a.y*t,radius:i.radius*(1-t)+a.radius*t}}),m)}let A=E.selectAll(`.venn-area`).data(_,e=>e.sets),j=A.enter().append(`g`).attr(`class`,e=>`venn-area venn-${e.sets.length==1?`circle`:`intersection`}${e.colour||e.color?` venn-coloured`:``}`).attr(`data-venn-sets`,e=>e.sets.join(`_`)),M=j.append(`path`),N=j.append(`text`).attr(`class`,`label`).text(e=>T(e)).attr(`text-anchor`,`middle`).attr(`dy`,`.35em`).attr(`x`,n/2).attr(`y`,r/2);u&&(M.style(`fill-opacity`,`0`).filter(e=>e.sets.length==1).style(`fill`,e=>e.colour?e.colour:e.color?e.color:y(e.sets)).style(`fill-opacity`,`.25`),N.style(`fill`,t=>t.colour||t.color?`#FFF`:e.textFill?e.textFill:t.sets.length==1?y(t.sets):`#444`));function P(e){return typeof e.transition==`function`?e.transition(`venn`).duration(a):e}let F=g;O&&typeof F.transition==`function`?(F=P(g),F.selectAll(`path`).attrTween(`d`,k)):F.selectAll(`path`).attr(`d`,e=>we(e.sets.map(e=>S[e])),m);let I=F.selectAll(`text`).filter(e=>e.sets in C).text(e=>T(e)).attr(`x`,e=>Math.floor(C[e.sets].x)).attr(`y`,e=>Math.floor(C[e.sets].y));l&&(O?`on`in I?I.on(`end`,V(S,T)):I.each(`end`,V(S,T)):I.each(V(S,T)));let L=P(A.exit()).remove();typeof A.transition==`function`&&L.selectAll(`path`).attrTween(`d`,k);let ee=L.selectAll(`text`).attr(`x`,n/2).attr(`y`,r/2);return d!==null&&(N.style(`font-size`,`0px`),I.style(`font-size`,d),ee.style(`font-size`,`0px`)),{circles:S,textCentres:C,nodes:A,enter:j,update:F,exit:L}}return S.wrap=function(e){return arguments.length?(l=e,S):l},S.useViewBox=function(){return t=!0,S},S.width=function(e){return arguments.length?(n=e,S):n},S.height=function(e){return arguments.length?(r=e,S):r},S.padding=function(e){return arguments.length?(i=e,S):i},S.distinct=function(e){return arguments.length?(p=e,S):p},S.colours=function(e){return arguments.length?(y=e,S):y},S.colors=function(e){return arguments.length?(y=e,S):y},S.fontSize=function(e){return arguments.length?(d=e,S):d},S.round=function(e){return arguments.length?(m=e,S):m},S.duration=function(e){return arguments.length?(a=e,S):a},S.layoutFunction=function(e){return arguments.length?(b=e,S):b},S.normalize=function(e){return arguments.length?(s=e,S):s},S.scaleToFit=function(e){return arguments.length?(c=e,S):c},S.styled=function(e){return arguments.length?(u=e,S):u},S.orientation=function(e){return arguments.length?(o=e,S):o},S.orientationOrder=function(e){return arguments.length?(f=e,S):f},S.lossFunction=function(e){return arguments.length?(x=e==="default"?z:e===`logRatio`?le:e,S):x},S}function V(e,t){return function(n){let r=this,i=e[n.sets[0]].radius||50,a=t(n)||``,o=a.split(/\s+/).reverse(),s=(a.length+o.length)/3,c=o.pop(),l=[c],u=0,d=1.1;r.textContent=null;let f=[];function p(e){let t=r.ownerDocument.createElementNS(r.namespaceURI,`tspan`);return t.textContent=e,f.push(t),r.append(t),t}let m=p(c);for(;c=o.pop(),c;){l.push(c);let e=l.join(` `);m.textContent=e,e.length>s&&m.getComputedTextLength()>i&&(l.pop(),m.textContent=l.join(` `),l=[c],m=p(c),u++)}let h=.35-u*d/2,g=r.getAttribute(`x`),_=r.getAttribute(`y`);f.forEach((e,t)=>{e.setAttribute(`x`,g),e.setAttribute(`y`,_),e.setAttribute(`dy`,`${h+t*d}em`)})}}function H(e,t,n){let r=t[0].radius-T(t[0],e);for(let n=1;n<t.length;++n){let i=t[n].radius-T(t[n],e);i<=r&&(r=i)}for(let t=0;t<n.length;++t){let i=T(n[t],e)-n[t].radius;i<=r&&(r=i)}return r}function _e(e,t,n){let r=[];for(let t of e)r.push({x:t.x,y:t.y}),r.push({x:t.x+t.radius/2,y:t.y}),r.push({x:t.x-t.radius/2,y:t.y}),r.push({x:t.x,y:t.y+t.radius/2}),r.push({x:t.x,y:t.y-t.radius/2});let i=r[0],a=H(r[0],e,t);for(let n=1;n<r.length;++n){let o=H(r[n],e,t);o>=a&&(i=r[n],a=o)}let o=I(n=>-1*H({x:n[0],y:n[1]},e,t),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,s={x:n?0:o[0],y:o[1]},c=!0;for(let t of e)if(T(s,t)>t.radius){c=!1;break}for(let e of t)if(T(s,e)<e.radius){c=!1;break}if(c)return s;if(e.length==1)return{x:e[0].x,y:e[0].y};let l={};return x(e,l),l.arcs.length===0?{x:0,y:-1e3,disjoint:!0}:l.arcs.length==1?{x:l.arcs[0].circle.x,y:l.arcs[0].circle.y}:t.length?_e(e,[]):O(l.arcs.map(e=>e.p1))}function ve(e){let t={},n=Object.keys(e);for(let e of n)t[e]=[];for(let r=0;r<n.length;r++){let i=n[r],a=e[i];for(let o=r+1;o<n.length;++o){let r=n[o],s=e[r],c=T(a,s);c+s.radius<=a.radius+1e-10?t[r].push(i):c+a.radius<=s.radius+1e-10&&t[i].push(r)}}return t}function ye(e,t,n){let r={},i=ve(e);for(let a=0;a<t.length;++a){let o=t[a].sets,s={},c={};for(let e=0;e<o.length;++e){s[o[e]]=!0;let t=i[o[e]];for(let e=0;e<t.length;++e)c[t[e]]=!0}let l=[],u=[];for(let t in e)t in s?l.push(e[t]):t in c||u.push(e[t]);let d=_e(l,u,n);r[o]=d,d.disjoint&&t[a].size>0&&console.log(`WARNING: area `+o+` not represented on screen`)}return r}function be(e,t,n){let r=[];return r.push(`
2
2
  M`,e,t),r.push(`
3
3
  m`,-n,0),r.push(`
4
4
  a`,n,n,0,1,0,n*2,0),r.push(`
@@ -1 +1 @@
1
- import"./chunk-NNHCCRGN-DlpIbxXb.js";import{r as e}from"./mermaid-parser.core-C6nlL4jI.js";export{e as createWardleyServices};
1
+ import"./chunk-NNHCCRGN-DlpIbxXb.js";import{r as e}from"./mermaid-parser.core-BflpgWAW.js";export{e as createWardleyServices};
@@ -1,4 +1,4 @@
1
- import{g as e,h as t}from"./src-D-NMWEou.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,v as l,w as u,x as d,y as f}from"./chunk-CSCIHK7Q-BXW0kTPy.js";import{i as p}from"./chunk-5ZQYHXKU-D9lXR7-a.js";import{t as m}from"./chunk-WU5MYG2G-BJCNi6Df.js";import{t as h}from"./mermaid-parser.core-C6nlL4jI.js";import{t as g}from"./chunk-4BX2VUAB-C0kf5ycP.js";var _=t((e,t)=>{let n=e<=1?e*100:e;if(n<0||n>100)throw Error(`${t} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return n},`toPercent`),v=t((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=t(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=t(e=>{if(!e?.startsWith(`+`))return{};let t=/^\+'([^']*)'/.exec(e)?.[1];return e.includes(`<>`)?{flow:`bidirectional`,label:t}:e.includes(`<`)?{flow:`backward`,label:t}:e.includes(`>`)?{flow:`forward`,label:t}:{label:t}},`extractFlowFromArrow`),x=t((e,t)=>{if(g(e,t),e.size&&t.setSize(e.size.width,e.size.height),e.evolution){let n=e.evolution.stages.map(e=>e.secondName?`${e.name.trim()} / ${e.secondName.trim()}`:e.name.trim()),r=e.evolution.stages.filter(e=>e.boundary!==void 0).map(e=>e.boundary);t.updateAxes({stages:n,stageBoundaries:r})}if(e.anchors.forEach(e=>{let n=v(e.visibility,e.evolution,`Anchor "${e.name}"`);t.addNode(e.name,e.name,n.x,n.y,`anchor`)}),e.components.forEach(e=>{let n=v(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,i=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,a=e.decorator?.strategy;t.addNode(e.name,e.name,n.x,n.y,`component`,r,i,e.inertia,a)}),e.notes.forEach(e=>{let n=v(e.visibility,e.evolution,`Note "${e.text}"`);t.addNote(e.text,n.x,n.y)}),e.pipelines.forEach(e=>{let n=t.getNode(e.parent);if(!n||typeof n.y!=`number`)throw Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);let r=n.y;t.startPipeline(e.parent),e.components.forEach(n=>{let i=`${e.parent}_${n.name}`,a=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,o=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,s=_(n.evolution,`Pipeline component "${n.name}" evolution`);t.addNode(i,n.name,s,r,`pipeline-component`,a,o),t.addPipelineComponent(e.parent,i)})}),e.links.forEach(e=>{let n=!!e.arrow&&(e.arrow.includes(`-.->`)||e.arrow.includes(`.-.`)),r=y(e.fromPort)??y(e.toPort),{flow:i,label:a}=b(e.arrow);!r&&i&&(r=i);let o=e.linkLabel,s=a??o;t.addLink(t.resolveNodeId(e.from),t.resolveNodeId(e.to),n,s,r)}),e.evolves.forEach(e=>{let n=t.getNode(e.component);if(n?.y!==void 0){let r=_(e.target,`Evolve target for "${e.component}"`);t.addTrend(e.component,r,n.y)}}),e.annotations.length>0){let n=e.annotations[0],r=v(n.x,n.y,`Annotations box`);t.setAnnotationsBox(r.x,r.y)}e.annotation.forEach(e=>{let n=v(e.x,e.y,`Annotation ${e.number}`);t.addAnnotation(e.number,[{x:n.x,y:n.y}],e.text)}),e.accelerators.forEach(e=>{let n=v(e.x,e.y,`Accelerator "${e.name}"`);t.addAccelerator(e.name,n.x,n.y)}),e.deaccelerators.forEach(e=>{let n=v(e.x,e.y,`Deaccelerator "${e.name}"`);t.addDeaccelerator(e.name,n.x,n.y)})},`populateDb`),S={parser:{yy:void 0},parse:t(async t=>{let n=await h(`wardley`,t);e.debug(n);let r=S.parser?.yy;if(!r||typeof r.addNode!=`function`)throw Error(`parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);x(n,r)},`parse`)},C=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,`WardleyBuilder`)}addNode(e){let t=this.nodes.get(e.id)??{id:e.id,label:e.label},n={...t,...e,className:e.className??t.className,labelOffsetX:e.labelOffsetX??t.labelOffsetX,labelOffsetY:e.labelOffsetY??t.labelOffsetY};this.nodes.set(e.id,n)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let t=this.nodes.get(e);t&&(t.isPipelineParent=!0)}addPipelineComponent(e,t){let n=this.pipelines.get(e);n&&n.componentIds.push(t);let r=this.nodes.get(t);r&&(r.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,t){this.annotationsBox={x:e,y:t}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,t){this.size={width:e,height:t}}getNode(e){return this.nodes.get(e)}resolveNodeId(e){if(this.nodes.has(e))return e;for(let[t,n]of this.nodes)if(n.label===e)return t;return e}build(){let e=[];for(let t of this.nodes.values()){if(typeof t.x!=`number`||typeof t.y!=`number`)throw Error(`Node "${t.label}" is missing coordinates`);e.push(t)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function w(){return d()[`wardley-beta`]}t(w,`getConfig`);function T(e,t,n,r,i,a,o,s,c){C.addNode({id:e,label:t,x:n,y:r,className:i,labelOffsetX:a,labelOffsetY:o,inertia:s,sourceStrategy:c})}t(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}t(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}t(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}t(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}t(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}t(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}t(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}t(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}t(N,`setSize`);function P(e){C.startPipeline(e)}t(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}t(F,`addPipelineComponent`);function I(e){C.setAxes(e)}t(I,`updateAxes`);function L(e){return C.getNode(e)}t(L,`getNode`);function R(e){return C.resolveNodeId(e)}t(R,`resolveNodeId`);function z(){return C.build()}t(z,`getWardleyData`);function B(){C.clear(),o()}t(B,`clear`);var V={getConfig:w,addNode:T,addLink:E,addTrend:D,addAnnotation:O,addNote:k,addAccelerator:A,addDeaccelerator:j,setAnnotationsBox:M,setSize:N,startPipeline:P,addPipelineComponent:F,updateAxes:I,getNode:L,resolveNodeId:R,getWardleyData:z,clear:B,setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:u,getAccDescription:l,setAccDescription:r},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=t(()=>{let{themeVariables:e}=d();return{backgroundColor:e.wardley?.backgroundColor??e.background??`#fff`,axisColor:e.wardley?.axisColor??`#000`,axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??`#222`,gridColor:e.wardley?.gridColor??`rgba(100, 100, 100, 0.2)`,componentFill:e.wardley?.componentFill??`#fff`,componentStroke:e.wardley?.componentStroke??`#000`,componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??`#222`,linkStroke:e.wardley?.linkStroke??`#000`,evolutionStroke:e.wardley?.evolutionStroke??`#dc3545`,annotationStroke:e.wardley?.annotationStroke??`#000`,annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??`#222`,annotationFill:e.wardley?.annotationFill??e.background??`#fff`}},`getTheme`),W=t(()=>{let e=d()[`wardley-beta`];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},`getConfigValues`),G={parser:S,db:V,renderer:{draw:t((n,r,i,a)=>{e.debug(`Rendering Wardley map
1
+ import{g as e,h as t}from"./src-D-NMWEou.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,v as l,w as u,x as d,y as f}from"./chunk-CSCIHK7Q-Bbq9a-f4.js";import{i as p}from"./chunk-5ZQYHXKU-DQd7S-DN.js";import{t as m}from"./chunk-WU5MYG2G-CPYS59Yv.js";import{t as h}from"./mermaid-parser.core-BflpgWAW.js";import{t as g}from"./chunk-4BX2VUAB-C0kf5ycP.js";var _=t((e,t)=>{let n=e<=1?e*100:e;if(n<0||n>100)throw Error(`${t} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return n},`toPercent`),v=t((e,t,n)=>({x:_(t,`${n} evolution`),y:_(e,`${n} visibility`)}),`toCoordinates`),y=t(e=>{if(e){if(e===`+<>`)return`bidirectional`;if(e===`+<`)return`backward`;if(e===`+>`)return`forward`}},`getFlowFromPort`),b=t(e=>{if(!e?.startsWith(`+`))return{};let t=/^\+'([^']*)'/.exec(e)?.[1];return e.includes(`<>`)?{flow:`bidirectional`,label:t}:e.includes(`<`)?{flow:`backward`,label:t}:e.includes(`>`)?{flow:`forward`,label:t}:{label:t}},`extractFlowFromArrow`),x=t((e,t)=>{if(g(e,t),e.size&&t.setSize(e.size.width,e.size.height),e.evolution){let n=e.evolution.stages.map(e=>e.secondName?`${e.name.trim()} / ${e.secondName.trim()}`:e.name.trim()),r=e.evolution.stages.filter(e=>e.boundary!==void 0).map(e=>e.boundary);t.updateAxes({stages:n,stageBoundaries:r})}if(e.anchors.forEach(e=>{let n=v(e.visibility,e.evolution,`Anchor "${e.name}"`);t.addNode(e.name,e.name,n.x,n.y,`anchor`)}),e.components.forEach(e=>{let n=v(e.visibility,e.evolution,`Component "${e.name}"`),r=e.label?(e.label.negX?-1:1)*e.label.offsetX:void 0,i=e.label?(e.label.negY?-1:1)*e.label.offsetY:void 0,a=e.decorator?.strategy;t.addNode(e.name,e.name,n.x,n.y,`component`,r,i,e.inertia,a)}),e.notes.forEach(e=>{let n=v(e.visibility,e.evolution,`Note "${e.text}"`);t.addNote(e.text,n.x,n.y)}),e.pipelines.forEach(e=>{let n=t.getNode(e.parent);if(!n||typeof n.y!=`number`)throw Error(`Pipeline "${e.parent}" must reference an existing component with coordinates.`);let r=n.y;t.startPipeline(e.parent),e.components.forEach(n=>{let i=`${e.parent}_${n.name}`,a=n.label?(n.label.negX?-1:1)*n.label.offsetX:void 0,o=n.label?(n.label.negY?-1:1)*n.label.offsetY:void 0,s=_(n.evolution,`Pipeline component "${n.name}" evolution`);t.addNode(i,n.name,s,r,`pipeline-component`,a,o),t.addPipelineComponent(e.parent,i)})}),e.links.forEach(e=>{let n=!!e.arrow&&(e.arrow.includes(`-.->`)||e.arrow.includes(`.-.`)),r=y(e.fromPort)??y(e.toPort),{flow:i,label:a}=b(e.arrow);!r&&i&&(r=i);let o=e.linkLabel,s=a??o;t.addLink(t.resolveNodeId(e.from),t.resolveNodeId(e.to),n,s,r)}),e.evolves.forEach(e=>{let n=t.getNode(e.component);if(n?.y!==void 0){let r=_(e.target,`Evolve target for "${e.component}"`);t.addTrend(e.component,r,n.y)}}),e.annotations.length>0){let n=e.annotations[0],r=v(n.x,n.y,`Annotations box`);t.setAnnotationsBox(r.x,r.y)}e.annotation.forEach(e=>{let n=v(e.x,e.y,`Annotation ${e.number}`);t.addAnnotation(e.number,[{x:n.x,y:n.y}],e.text)}),e.accelerators.forEach(e=>{let n=v(e.x,e.y,`Accelerator "${e.name}"`);t.addAccelerator(e.name,n.x,n.y)}),e.deaccelerators.forEach(e=>{let n=v(e.x,e.y,`Deaccelerator "${e.name}"`);t.addDeaccelerator(e.name,n.x,n.y)})},`populateDb`),S={parser:{yy:void 0},parse:t(async t=>{let n=await h(`wardley`,t);e.debug(n);let r=S.parser?.yy;if(!r||typeof r.addNode!=`function`)throw Error(`parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);x(n,r)},`parse`)},C=new class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{t(this,`WardleyBuilder`)}addNode(e){let t=this.nodes.get(e.id)??{id:e.id,label:e.label},n={...t,...e,className:e.className??t.className,labelOffsetX:e.labelOffsetX??t.labelOffsetX,labelOffsetY:e.labelOffsetY??t.labelOffsetY};this.nodes.set(e.id,n)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let t=this.nodes.get(e);t&&(t.isPipelineParent=!0)}addPipelineComponent(e,t){let n=this.pipelines.get(e);n&&n.componentIds.push(t);let r=this.nodes.get(t);r&&(r.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,t){this.annotationsBox={x:e,y:t}}setAxes(e){this.axes={...this.axes,...e}}setSize(e,t){this.size={width:e,height:t}}getNode(e){return this.nodes.get(e)}resolveNodeId(e){if(this.nodes.has(e))return e;for(let[t,n]of this.nodes)if(n.label===e)return t;return e}build(){let e=[];for(let t of this.nodes.values()){if(typeof t.x!=`number`||typeof t.y!=`number`)throw Error(`Node "${t.label}" is missing coordinates`);e.push(t)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}};function w(){return d()[`wardley-beta`]}t(w,`getConfig`);function T(e,t,n,r,i,a,o,s,c){C.addNode({id:e,label:t,x:n,y:r,className:i,labelOffsetX:a,labelOffsetY:o,inertia:s,sourceStrategy:c})}t(T,`addNode`);function E(e,t,n=!1,r,i){C.addLink({source:e,target:t,dashed:n,label:r,flow:i})}t(E,`addLink`);function D(e,t,n){C.addTrend({nodeId:e,targetX:t,targetY:n})}t(D,`addTrend`);function O(e,t,n){C.addAnnotation({number:e,coordinates:t,text:n})}t(O,`addAnnotation`);function k(e,t,n){C.addNote({text:e,x:t,y:n})}t(k,`addNote`);function A(e,t,n){C.addAccelerator({name:e,x:t,y:n})}t(A,`addAccelerator`);function j(e,t,n){C.addDeaccelerator({name:e,x:t,y:n})}t(j,`addDeaccelerator`);function M(e,t){C.setAnnotationsBox(e,t)}t(M,`setAnnotationsBox`);function N(e,t){C.setSize(e,t)}t(N,`setSize`);function P(e){C.startPipeline(e)}t(P,`startPipeline`);function F(e,t){C.addPipelineComponent(e,t)}t(F,`addPipelineComponent`);function I(e){C.setAxes(e)}t(I,`updateAxes`);function L(e){return C.getNode(e)}t(L,`getNode`);function R(e){return C.resolveNodeId(e)}t(R,`resolveNodeId`);function z(){return C.build()}t(z,`getWardleyData`);function B(){C.clear(),o()}t(B,`clear`);var V={getConfig:w,addNode:T,addLink:E,addTrend:D,addAnnotation:O,addNote:k,addAccelerator:A,addDeaccelerator:j,setAnnotationsBox:M,setSize:N,startPipeline:P,addPipelineComponent:F,updateAxes:I,getNode:L,resolveNodeId:R,getWardleyData:z,clear:B,setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:u,getAccDescription:l,setAccDescription:r},H=[`Genesis`,`Custom Built`,`Product`,`Commodity`],U=t(()=>{let{themeVariables:e}=d();return{backgroundColor:e.wardley?.backgroundColor??e.background??`#fff`,axisColor:e.wardley?.axisColor??`#000`,axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??`#222`,gridColor:e.wardley?.gridColor??`rgba(100, 100, 100, 0.2)`,componentFill:e.wardley?.componentFill??`#fff`,componentStroke:e.wardley?.componentStroke??`#000`,componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??`#222`,linkStroke:e.wardley?.linkStroke??`#000`,evolutionStroke:e.wardley?.evolutionStroke??`#dc3545`,annotationStroke:e.wardley?.annotationStroke??`#000`,annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??`#222`,annotationFill:e.wardley?.annotationFill??e.background??`#fff`}},`getTheme`),W=t(()=>{let e=d()[`wardley-beta`];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},`getConfigValues`),G={parser:S,db:V,renderer:{draw:t((n,r,i,a)=>{e.debug(`Rendering Wardley map
2
2
  `+n);let o=W(),s=U(),l=o.nodeRadius*1.6,u=a.db,d=u.getWardleyData(),f=u.getDiagramTitle(),p=d.size?.width??o.width,h=d.size?.height??o.height,g=m(r);g.selectAll(`*`).remove(),c(g,h,p,o.useMaxWidth),g.attr(`viewBox`,`0 0 ${p} ${h}`);let _=g.append(`g`).attr(`class`,`wardley-map`),v=g.append(`defs`);v.append(`marker`).attr(`id`,`arrow-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto-start-reverse`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.evolutionStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-end-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0 0 L 10 5 L 0 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),v.append(`marker`).attr(`id`,`link-arrow-start-${r}`).attr(`viewBox`,`0 0 10 10`).attr(`refX`,1).attr(`refY`,5).attr(`markerWidth`,5).attr(`markerHeight`,5).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 z`).attr(`fill`,s.linkStroke).attr(`stroke`,`none`),_.append(`rect`).attr(`class`,`wardley-background`).attr(`width`,p).attr(`height`,h).attr(`fill`,s.backgroundColor);let y=p-o.padding*2,b=h-o.padding*2;f&&_.append(`text`).attr(`class`,`wardley-title`).attr(`x`,p/2).attr(`y`,o.padding/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize*1.05).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(f);let x=t(e=>o.padding+e/100*y,`projectX`),S=t(e=>h-o.padding-e/100*b,`projectY`),C=_.append(`g`).attr(`class`,`wardley-axes`);C.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1),C.append(`line`).attr(`x1`,o.padding).attr(`x2`,o.padding).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.axisColor).attr(`stroke-width`,1);let w=d.axes.xLabel??`Evolution`,T=d.axes.yLabel??`Visibility`;C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-x`).attr(`x`,o.padding+y/2).attr(`y`,h-o.padding/4).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).text(w),C.append(`text`).attr(`class`,`wardley-axis-label wardley-axis-label-y`).attr(`x`,o.padding/3).attr(`y`,o.padding+b/2).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize).attr(`font-weight`,`bold`).attr(`text-anchor`,`middle`).attr(`transform`,`rotate(-90 ${o.padding/3} ${o.padding+b/2})`).text(T);let E=d.axes.stages&&d.axes.stages.length>0?d.axes.stages:H;if(E.length>0){let e=_.append(`g`).attr(`class`,`wardley-stages`),t=d.axes.stageBoundaries,n=[];if(t&&t.length===E.length){let e=0;t.forEach(t=>{n.push({start:e,end:t}),e=t})}else{let e=1/E.length;E.forEach((t,r)=>{n.push({start:r*e,end:(r+1)*e})})}E.forEach((t,r)=>{let i=n[r],a=o.padding+i.start*y,c=(a+(o.padding+i.end*y))/2;r>0&&e.append(`line`).attr(`x1`,a).attr(`x2`,a).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,`#000`).attr(`stroke-width`,1).attr(`stroke-dasharray`,`5 5`).attr(`opacity`,.8),e.append(`text`).attr(`class`,`wardley-stage-label`).attr(`x`,c).attr(`y`,h-o.padding/1.5).attr(`fill`,s.axisTextColor).attr(`font-size`,o.axisFontSize-2).attr(`text-anchor`,`middle`).text(t)})}if(o.showGrid){let e=_.append(`g`).attr(`class`,`wardley-grid`);for(let t=1;t<4;t++){let n=t/4,r=o.padding+y*n;e.append(`line`).attr(`x1`,r).attr(`x2`,r).attr(`y1`,o.padding).attr(`y2`,h-o.padding).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`),e.append(`line`).attr(`x1`,o.padding).attr(`x2`,p-o.padding).attr(`y1`,h-o.padding-b*n).attr(`y2`,h-o.padding-b*n).attr(`stroke`,s.gridColor).attr(`stroke-dasharray`,`2 6`)}}let D=new Map;if(d.nodes.forEach(e=>{D.set(e.id,{x:x(e.x),y:S(e.y),node:e})}),d.pipelines.length>0){let e=_.append(`g`).attr(`class`,`wardley-pipelines`),t=_.append(`g`).attr(`class`,`wardley-pipeline-links`);d.pipelines.forEach(n=>{if(n.componentIds.length===0)return;let r=n.componentIds.map(e=>({id:e,pos:D.get(e),node:d.nodes.find(t=>t.id===e)})).filter(e=>e.pos&&e.node).sort((e,t)=>e.node.x-t.node.x);for(let e=0;e<r.length-1;e++){let n=r[e],i=r[e+1];t.append(`line`).attr(`class`,`wardley-pipeline-evolution-link`).attr(`x1`,n.pos.x).attr(`y1`,n.pos.y).attr(`x2`,i.pos.x).attr(`y2`,i.pos.y).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`)}let i=1/0,a=-1/0,c=0;if(n.componentIds.forEach(e=>{let t=D.get(e);t&&(i=Math.min(i,t.x),a=Math.max(a,t.x),c=t.y)}),i!==1/0&&a!==-1/0){let t=o.nodeRadius*4,r=c-t/2,u=D.get(n.nodeId);u&&(u.x=(i+a)/2,u.y=r-l/6),e.append(`rect`).attr(`class`,`wardley-pipeline-box`).attr(`x`,i-15).attr(`y`,r).attr(`width`,a-i+30).attr(`height`,t).attr(`fill`,`none`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}})}let O=_.append(`g`).attr(`class`,`wardley-links`),k=new Map;d.pipelines.forEach(e=>{k.set(e.nodeId,new Set(e.componentIds))});let A=d.links.filter(e=>!(!D.has(e.source)||!D.has(e.target)||k.get(e.target)?.has(e.source)));O.selectAll(`line`).data(A).enter().append(`line`).attr(`class`,e=>`wardley-link${e.dashed?` wardley-link--dashed`:``}`).attr(`x1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.x+i/s*r}).attr(`y1`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.source).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=n.x-t.x,a=n.y-t.y,s=Math.sqrt(i*i+a*a);return t.y+a/s*r}).attr(`x2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.x+i/s*r}).attr(`y2`,e=>{let t=D.get(e.source),n=D.get(e.target),r=d.nodes.find(t=>t.id===e.target).isPipelineParent?l/Math.sqrt(2):o.nodeRadius,i=t.x-n.x,a=t.y-n.y,s=Math.sqrt(i*i+a*a);return n.y+a/s*r}).attr(`stroke`,s.linkStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,e=>e.dashed?`6 6`:null).attr(`marker-end`,e=>e.flow===`forward`||e.flow===`bidirectional`?`url(#link-arrow-end-${r})`:null).attr(`marker-start`,e=>e.flow===`backward`||e.flow===`bidirectional`?`url(#link-arrow-start-${r})`:null),O.selectAll(`text`).data(A.filter(e=>e.label)).enter().append(`text`).attr(`class`,`wardley-link-label`).attr(`x`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=n.y-t.y,a=n.x-t.x;return r+i/Math.sqrt(a*a+i*i)*8}).attr(`y`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.y+n.y)/2,i=n.x-t.x,a=n.y-t.y,o=Math.sqrt(i*i+a*a);return r+-i/o*8}).attr(`fill`,s.axisTextColor).attr(`font-size`,o.labelFontSize).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).attr(`transform`,e=>{let t=D.get(e.source),n=D.get(e.target),r=(t.x+n.x)/2,i=(t.y+n.y)/2,a=n.x-t.x,o=n.y-t.y,s=Math.sqrt(a*a+o*o),c=o/s,l=-a/s,u=r+c*8,d=i+l*8,f=Math.atan2(o,a)*180/Math.PI;return(f>90||f<-90)&&(f+=180),`rotate(${f} ${u} ${d})`}).text(e=>e.label);let j=_.append(`g`).attr(`class`,`wardley-trends`),M=d.trends.map(e=>{let t=D.get(e.nodeId);if(!t)return null;let n=x(e.targetX),r=S(e.targetY),i=n-t.x,a=r-t.y,s=Math.sqrt(i*i+a*a),c=o.nodeRadius+2;return{origin:t,targetX:n,targetY:r,adjustedX2:s>c?n-i/s*c:n,adjustedY2:s>c?r-a/s*c:r}}).filter(e=>e!==null);j.selectAll(`line`).data(M).enter().append(`line`).attr(`class`,`wardley-trend`).attr(`x1`,e=>e.origin.x).attr(`y1`,e=>e.origin.y).attr(`x2`,e=>e.adjustedX2).attr(`y2`,e=>e.adjustedY2).attr(`stroke`,s.evolutionStroke).attr(`stroke-width`,1).attr(`stroke-dasharray`,`4 4`).attr(`marker-end`,`url(#arrow-${r})`);let N=_.append(`g`).attr(`class`,`wardley-nodes`).selectAll(`g`).data(d.nodes).enter().append(`g`).attr(`class`,e=>[`wardley-node`,e.className?`wardley-node--${e.className}`:``].filter(Boolean).join(` `));N.filter(e=>e.sourceStrategy===`outsource`).append(`circle`).attr(`class`,`wardley-outsource-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#666`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`buy`).append(`circle`).attr(`class`,`wardley-buy-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#ccc`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.sourceStrategy===`build`).append(`circle`).attr(`class`,`wardley-build-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`#eee`).attr(`stroke`,`#000`).attr(`stroke-width`,1);let P=N.filter(e=>e.sourceStrategy===`market`);P.append(`circle`).attr(`class`,`wardley-market-overlay`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius*2).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>!e.isPipelineParent&&e.sourceStrategy!==`market`&&e.className!==`anchor`).append(`circle`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y).attr(`r`,o.nodeRadius).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1);let F=o.nodeRadius*.7,I=o.nodeRadius*1.2;if(P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x).attr(`y1`,e=>D.get(e.id).y-I).attr(`x2`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y2`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`line`).attr(`class`,`wardley-market-line`).attr(`x1`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`y1`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`x2`,e=>D.get(e.id).x).attr(`y2`,e=>D.get(e.id).y-I).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x).attr(`cy`,e=>D.get(e.id).y-I).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x-I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),P.append(`circle`).attr(`class`,`wardley-market-dot`).attr(`cx`,e=>D.get(e.id).x+I*Math.cos(Math.PI/6)).attr(`cy`,e=>D.get(e.id).y+I*Math.sin(Math.PI/6)).attr(`r`,F).attr(`fill`,`white`).attr(`stroke`,s.componentStroke).attr(`stroke-width`,2),N.filter(e=>e.isPipelineParent===!0).append(`rect`).attr(`x`,e=>D.get(e.id).x-l/2).attr(`y`,e=>D.get(e.id).y-l/2).attr(`width`,l).attr(`height`,l).attr(`fill`,s.componentFill).attr(`stroke`,s.componentStroke).attr(`stroke-width`,1),N.filter(e=>e.inertia===!0).append(`line`).attr(`class`,`wardley-inertia`).attr(`x1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y1`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y-n/2}).attr(`x2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l/2+15:o.nodeRadius+15;return e.sourceStrategy&&(n+=o.nodeRadius+10),t.x+n}).attr(`y2`,e=>{let t=D.get(e.id),n=e.isPipelineParent?l:o.nodeRadius*2;return t.y+n/2}).attr(`stroke`,s.componentStroke).attr(`stroke-width`,6),N.append(`text`).attr(`x`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetX===void 0?t.x:t.x+e.labelOffsetX;let n=o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetX===void 0&&(n+=10);let r=e.labelOffsetX??n;return t.x+r}).attr(`y`,e=>{let t=D.get(e.id);if(e.className===`anchor`)return e.labelOffsetY===void 0?t.y-3:t.y+e.labelOffsetY;let n=-o.nodeLabelOffset;e.sourceStrategy&&e.labelOffsetY===void 0&&(n-=10);let r=e.labelOffsetY??n;return t.y+r}).attr(`class`,`wardley-node-label`).attr(`fill`,e=>e.className===`evolved`?s.evolutionStroke:e.className===`anchor`?`#000`:s.componentLabelColor).attr(`font-size`,o.labelFontSize).attr(`font-weight`,e=>e.className===`anchor`?`bold`:`normal`).attr(`text-anchor`,e=>e.className===`anchor`?`middle`:`start`).attr(`dominant-baseline`,e=>e.className===`anchor`?`middle`:`auto`).text(e=>e.label),d.annotations.length>0){let e=_.append(`g`).attr(`class`,`wardley-annotations`);if(d.annotations.forEach(t=>{let n=t.coordinates.map(e=>({x:x(e.x),y:S(e.y)}));if(n.length>1)for(let t=0;t<n.length-1;t++)e.append(`line`).attr(`class`,`wardley-annotation-line`).attr(`x1`,n[t].x).attr(`y1`,n[t].y).attr(`x2`,n[t+1].x).attr(`y2`,n[t+1].y).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`stroke-dasharray`,`4 4`);n.forEach(n=>{let r=e.append(`g`).attr(`class`,`wardley-annotation`);r.append(`circle`).attr(`cx`,n.x).attr(`cy`,n.y).attr(`r`,10).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5),r.append(`text`).attr(`x`,n.x).attr(`y`,n.y).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,10).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.number)})}),d.annotationsBox){let t=x(d.annotationsBox.x),n=S(d.annotationsBox.y),r=e.append(`g`).attr(`class`,`wardley-annotations-box`),i=[...d.annotations].filter(e=>e.text).sort((e,t)=>e.number-t.number),a=[];if(i.forEach((e,i)=>{let o=r.append(`text`).attr(`x`,t+10).attr(`y`,n+10+(i+1)*16).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`middle`).text(`${e.number}. ${e.text}`);a.push(o)}),a.length>0){let e=0,c=0;a.forEach(t=>{let n=t.node(),r=n.getComputedTextLength();e=Math.max(e,r);let i=n.getBBox();c=Math.max(c,i.height)});let l=e+20+105,u=i.length*16+20+c/2,d=o.padding,f=p-o.padding-l,m=o.padding,g=h-o.padding-u;t=Math.max(d,Math.min(t,f)),n=Math.max(m,Math.min(n,g)),a.forEach((e,r)=>{e.attr(`x`,t+10).attr(`y`,n+10+(r+1)*16)}),r.insert(`rect`,`text`).attr(`x`,t).attr(`y`,n).attr(`width`,l).attr(`height`,u).attr(`fill`,`white`).attr(`stroke`,s.axisColor).attr(`stroke-width`,1.5).attr(`rx`,4).attr(`ry`,4)}}}if(d.notes.length>0){let e=_.append(`g`).attr(`class`,`wardley-notes`);d.notes.forEach(t=>{let n=x(t.x),r=S(t.y);e.append(`text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,`start`).attr(`font-size`,11).attr(`fill`,s.axisTextColor).attr(`font-weight`,`bold`).text(t.text)})}if(d.accelerators.length>0){let e=_.append(`g`).attr(`class`,`wardley-accelerators`);d.accelerators.forEach(t=>{let n=x(t.x),r=S(t.y),i=`
3
3
  M ${n} ${r-30/2}
4
4
  L ${n+60-20} ${r-30/2}
@@ -1,4 +1,4 @@
1
- import{g as e,h as t}from"./src-D-NMWEou.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-CSCIHK7Q-BXW0kTPy.js";import{t as m}from"./linear-BktLjFGX.js";import{t as h}from"./ordinal-hYBb2elL.js";import{t as g}from"./init-D6jRqBbL.js";import{i as _}from"./chunk-5ZQYHXKU-D9lXR7-a.js";import{t as v}from"./line-6Sq5fd7W.js";import{t as y}from"./chunk-WU5MYG2G-BJCNi6Df.js";import{t as b}from"./chunk-O5CBEL6O-DJ6oobwT.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,34,35,36],E=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],D=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],O=[1,64],k={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,27:`NUMBER_WITH_DECIMAL`,28:`COMMA`,31:`ARROW_DELIMITER`,34:`NEWLINE`,35:`SEMI`,36:`EOF`,38:`STR`,39:`MD_STR`,41:`AMP`,42:`NUM`,43:`ALPHA`,44:`PLUS`,45:`EQUALS`,46:`MULT`,47:`DOT`,48:`BRKT`,49:`MINUS`,50:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:this.$=[Number(a[s-2]),...a[s]];break;case 21:this.$=[Number(a[s])];break;case 22:r.setXAxisTitle(a[s]);break;case 23:r.setXAxisTitle(a[s-1]);break;case 24:r.setXAxisTitle({type:`text`,text:``});break;case 25:r.setXAxisBand(a[s]);break;case 26:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 27:this.$=a[s-1];break;case 28:this.$=[a[s-2],...a[s]];break;case 29:this.$=[a[s]];break;case 30:r.setYAxisTitle(a[s]);break;case 31:r.setYAxisTitle(a[s-1]);break;case 32:r.setYAxisTitle({type:`text`,text:``});break;case 33:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 37:this.$={text:a[s],type:`text`};break;case 38:this.$={text:a[s],type:`text`};break;case 39:this.$={text:a[s],type:`markdown`};break;case 40:this.$=a[s];break;case 41:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[e(n,r,{3:1,4:2,7:4,5:i,34:a,35:o,36:s}),{1:[3]},e(n,r,{4:2,7:4,3:8,5:i,34:a,35:o,36:s}),e(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],34:a,35:o,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(c,[2,34]),e(c,[2,35]),e(c,[2,36]),{1:[2,1]},e(n,r,{4:2,7:4,3:21,5:i,34:a,35:o,36:s}),{1:[2,3]},e(c,[2,5]),e(n,[2,7],{4:22,34:a,35:o,36:s}),{11:23,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:39,13:38,24:x,27:S,29:40,30:41,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:45,15:44,27:C,33:46,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:49,17:48,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:52,17:51,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{20:[1,53]},{22:[1,54]},e(T,[2,18]),{1:[2,2]},e(T,[2,8]),e(T,[2,9]),e(E,[2,37],{40:55,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b}),e(E,[2,38]),e(E,[2,39]),e(D,[2,40]),e(D,[2,42]),e(D,[2,43]),e(D,[2,44]),e(D,[2,45]),e(D,[2,46]),e(D,[2,47]),e(D,[2,48]),e(D,[2,49]),e(D,[2,50]),e(D,[2,51]),e(T,[2,10]),e(T,[2,22],{30:41,29:56,24:x,27:S}),e(T,[2,24]),e(T,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,11]),e(T,[2,30],{33:60,27:C}),e(T,[2,32]),{31:[1,61]},e(T,[2,12]),{17:62,24:w},{25:63,27:O},e(T,[2,14]),{17:65,24:w},e(T,[2,16]),e(T,[2,17]),e(D,[2,41]),e(T,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(T,[2,31]),{27:[1,69]},e(T,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(T,[2,15]),e(T,[2,26]),e(T,[2,27]),{11:59,32:72,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,33]),e(T,[2,19]),{25:73,27:O},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{g as e,h as t}from"./src-D-NMWEou.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-CSCIHK7Q-Bbq9a-f4.js";import{t as m}from"./linear-BktLjFGX.js";import{t as h}from"./ordinal-hYBb2elL.js";import{t as g}from"./init-D6jRqBbL.js";import{i as _}from"./chunk-5ZQYHXKU-DQd7S-DN.js";import{t as v}from"./line-8DyrseaS.js";import{t as y}from"./chunk-WU5MYG2G-CPYS59Yv.js";import{t as b}from"./chunk-O5CBEL6O-Zyg3pbBu.js";function x(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function S(){var e=h().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=x(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return S(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},g.apply(d(),arguments)}var C=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,34,35,36],E=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],D=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],O=[1,64],k={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,27:`NUMBER_WITH_DECIMAL`,28:`COMMA`,31:`ARROW_DELIMITER`,34:`NEWLINE`,35:`SEMI`,36:`EOF`,38:`STR`,39:`MD_STR`,41:`AMP`,42:`NUM`,43:`ALPHA`,44:`PLUS`,45:`EQUALS`,46:`MULT`,47:`DOT`,48:`BRKT`,49:`MINUS`,50:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:this.$=[Number(a[s-2]),...a[s]];break;case 21:this.$=[Number(a[s])];break;case 22:r.setXAxisTitle(a[s]);break;case 23:r.setXAxisTitle(a[s-1]);break;case 24:r.setXAxisTitle({type:`text`,text:``});break;case 25:r.setXAxisBand(a[s]);break;case 26:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 27:this.$=a[s-1];break;case 28:this.$=[a[s-2],...a[s]];break;case 29:this.$=[a[s]];break;case 30:r.setYAxisTitle(a[s]);break;case 31:r.setYAxisTitle(a[s-1]);break;case 32:r.setYAxisTitle({type:`text`,text:``});break;case 33:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 37:this.$={text:a[s],type:`text`};break;case 38:this.$={text:a[s],type:`text`};break;case 39:this.$={text:a[s],type:`markdown`};break;case 40:this.$=a[s];break;case 41:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[e(n,r,{3:1,4:2,7:4,5:i,34:a,35:o,36:s}),{1:[3]},e(n,r,{4:2,7:4,3:8,5:i,34:a,35:o,36:s}),e(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],34:a,35:o,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(c,[2,34]),e(c,[2,35]),e(c,[2,36]),{1:[2,1]},e(n,r,{4:2,7:4,3:21,5:i,34:a,35:o,36:s}),{1:[2,3]},e(c,[2,5]),e(n,[2,7],{4:22,34:a,35:o,36:s}),{11:23,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:39,13:38,24:x,27:S,29:40,30:41,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:45,15:44,27:C,33:46,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:49,17:48,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:52,17:51,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{20:[1,53]},{22:[1,54]},e(T,[2,18]),{1:[2,2]},e(T,[2,8]),e(T,[2,9]),e(E,[2,37],{40:55,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b}),e(E,[2,38]),e(E,[2,39]),e(D,[2,40]),e(D,[2,42]),e(D,[2,43]),e(D,[2,44]),e(D,[2,45]),e(D,[2,46]),e(D,[2,47]),e(D,[2,48]),e(D,[2,49]),e(D,[2,50]),e(D,[2,51]),e(T,[2,10]),e(T,[2,22],{30:41,29:56,24:x,27:S}),e(T,[2,24]),e(T,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,11]),e(T,[2,30],{33:60,27:C}),e(T,[2,32]),{31:[1,61]},e(T,[2,12]),{17:62,24:w},{25:63,27:O},e(T,[2,14]),{17:65,24:w},e(T,[2,16]),e(T,[2,17]),e(D,[2,41]),e(T,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(T,[2,31]),{27:[1,69]},e(T,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(T,[2,15]),e(T,[2,26]),e(T,[2,27]),{11:59,32:72,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,33]),e(T,[2,19]),{25:73,27:O},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};k.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(function(e,t){return this.yy=t||this.yy||{},this._input=e,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:t(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:t(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=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),n.length-1&&(this.yylineno-=n.length-1);var i=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:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:t(function(){return this._more=!0,this},`more`),reject:t(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:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:t(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -5,13 +5,13 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
7
7
  <title>Jun</title>
8
- <script type="module" crossorigin src="/assets/index-DXYsuK0q.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-73cjKBdb.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/chunk-Cyuzqnbw.js">
10
10
  <link rel="modulepreload" crossorigin href="/assets/bundle-mjs-DssaXR6m.js">
11
11
  <link rel="modulepreload" crossorigin href="/assets/utils-BX1Diber.js">
12
12
  <link rel="modulepreload" crossorigin href="/assets/useBaseUiId-dSIElxm7.js">
13
13
  <link rel="modulepreload" crossorigin href="/assets/react-dom-Bm-PY09n.js">
14
- <link rel="stylesheet" crossorigin href="/assets/index-C_NJsn6Z.css">
14
+ <link rel="stylesheet" crossorigin href="/assets/index-CZzHSXB1.css">
15
15
  </head>
16
16
  <body>
17
17
  <div id="root"></div>
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{I as r,L as i,V as a,t as o}from"./utils-BX1Diber.js";import{x as s}from"./useBaseUiId-dSIElxm7.js";import{t as c}from"./play-B4R5rXMZ.js";import{t as l}from"./rotate-cw-B1ZRM7VI.js";import{t as u}from"./square-_9cV5Fet.js";import{Yt as d,t as f}from"./index-DXYsuK0q.js";import{t as p}from"./button-Cg-0y2B2.js";import{t as m}from"./input-BPTmfk5i.js";var h=s(`arrow-left`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),ee=s(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),g=s(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),_=s(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),v=s(`mouse-pointer`,[[`path`,{d:`M12.586 12.586 19 19`,key:`ea5xo7`}],[`path`,{d:`M3.688 3.037a.497.497 0 0 0-.651.651l6.5 15.999a.501.501 0 0 0 .947-.062l1.569-6.083a2 2 0 0 1 1.448-1.479l6.124-1.579a.5.5 0 0 0 .063-.947z`,key:`277e5u`}]]),y=s(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),b=e(t(),1),x=n(),S={width:1280,height:720},C=[{value:`agent`,label:`Agent`,icon:g},{value:`user`,label:`You`,icon:v},{value:`paused`,label:`Paused`,icon:y}];function w(e){return!!e.altKey|(e.ctrlKey?2:0)|(e.metaKey?4:0)|(e.shiftKey?8:0)}var T=[`left`,`middle`,`right`];function E(){let[e,t]=(0,b.useState)(null),[n,s]=(0,b.useState)([]),[g,y]=(0,b.useState)(``),[E,D]=(0,b.useState)(null),[O,te]=(0,b.useState)(null),[k,A]=(0,b.useState)(!1),[j,M]=(0,b.useState)(null),N=(0,b.useRef)(null),P=(0,b.useRef)(null),F=(0,b.useRef)(null),I=(0,b.useRef)(null),L=(0,b.useCallback)(()=>{let e=I.current;if(!e)return;let t=S.width/S.height,n=e.clientWidth,r=e.clientHeight;if(n===0||r===0)return;let i=n,a=n/t;a>r&&(a=r,i=r*t);let o={w:Math.floor(i),h:Math.floor(a)};te(e=>e?.w===o.w&&e?.h===o.h?e:o)},[]);(0,b.useEffect)(()=>{L();let e=new ResizeObserver(L);return I.current&&e.observe(I.current),()=>e.disconnect()},[L]);let R=(0,b.useRef)(!1),z=(0,b.useRef)(0),B=e?.streaming??!1,V=e?.running??!1,H=e?.controller??`agent`,U=H===`user`,W=(0,b.useCallback)(async()=>{try{let[{status:e},{actions:n}]=await Promise.all([r(`/api/browser/status`),r(`/api/browser/actions`)]);t(e),s(n),!R.current&&e.url&&e.url!==`about:blank`&&y(e.url),M(null)}catch(e){M(e instanceof Error?e.message:String(e))}},[]);f(W,5e3),(0,b.useEffect)(()=>{U&&F.current?.focus()},[U]),(0,b.useEffect)(()=>{if(!B){D(null);return}let e=!1,t=null,n=0,r=()=>{let i=a(`/api/browser/stream`);N.current=i,i.onmessage=e=>{try{let t=JSON.parse(String(e.data));t.type===`frame`&&t.data&&(n=0,D(`data:image/jpeg;base64,${t.data}`))}catch{}},i.onclose=()=>{if(N.current===i&&(N.current=null),e)return;let a=Math.min(1e3*2**n,1e4);n+=1,t=setTimeout(r,a)}};return r(),()=>{e=!0,t&&clearTimeout(t),N.current?.close(),N.current=null}},[B]);let G=(0,b.useCallback)(async e=>{A(!0),M(null);try{await e(),await W()}catch(e){M(e instanceof Error?e.message:String(e))}finally{A(!1)}},[W]),K=()=>G(()=>i(`/api/browser/start`,{url:g.trim()||void 0})),q=()=>G(()=>i(`/api/browser/stop`)),J=()=>{let e=g.trim();if(!e)return;let t=/^[a-z]+:\/\//i.test(e)?e:`https://${e}`;return G(()=>i(`/api/browser/navigate`,{url:t}))},Y=e=>G(()=>i(`/api/browser/${e}`)),ne=()=>G(()=>i(`/api/browser/screenshot`)),X=e=>G(()=>i(`/api/browser/control`,{controller:e})),Z=e=>{let t=N.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify(e))},re=e=>{let t=P.current;if(!t)return null;let n=t.getBoundingClientRect();return n.width===0||n.height===0?null:{x:Math.round((e.clientX-n.left)/n.width*S.width),y:Math.round((e.clientY-n.top)/n.height*S.height)}},Q=(e,t,n={})=>{if(!U)return;let r=re(e);r&&(e.preventDefault(),Z({type:`input_mouse`,eventType:t,...r,button:T[e.button]??`left`,clickCount:e.detail||1,modifiers:w(e),...n}))},ie=e=>{let t=performance.now();t-z.current<33||(z.current=t,Q(e,`mouseMoved`))},ae=e=>{let t=e.ctrlKey||e.metaKey||e.altKey;if(e.key.length===1&&!t)return null;let n=[];return e.ctrlKey&&n.push(`Control`),e.shiftKey&&n.push(`Shift`),e.altKey&&n.push(`Alt`),e.metaKey&&n.push(`Meta`),n.push(e.key===` `?`Space`:e.key),n.join(`+`)},$=(e,t)=>{if(!U)return;e.preventDefault();let n=ae(e);if(n){t===`keyDown`&&i(`/api/browser/key`,{key:n}).catch(()=>{});return}Z({type:`input_keyboard`,eventType:t,key:e.key,code:e.code,text:t===`keyDown`?e.key:void 0,modifiers:w(e)})};return(0,x.jsxs)(`div`,{className:`flex h-full min-h-0`,children:[(0,x.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 p-4`,children:[(0,x.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,x.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,x.jsx)(p,{size:`icon-sm`,variant:`outline`,disabled:!V||k,onClick:()=>Y(`back`),children:(0,x.jsx)(h,{})}),(0,x.jsx)(p,{size:`icon-sm`,variant:`outline`,disabled:!V||k,onClick:()=>Y(`forward`),children:(0,x.jsx)(ee,{})}),(0,x.jsx)(p,{size:`icon-sm`,variant:`outline`,disabled:!V||k,onClick:()=>Y(`reload`),children:(0,x.jsx)(l,{})})]}),(0,x.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,x.jsx)(m,{placeholder:`https://example.com`,value:g,onChange:e=>y(e.target.value),onFocus:()=>R.current=!0,onBlur:()=>R.current=!1,onKeyDown:e=>{e.key===`Enter`&&(V?J:K)()}}),(0,x.jsx)(p,{size:`sm`,variant:`outline`,disabled:k||g.trim().length===0,onClick:()=>V?J():K(),children:`Go`})]}),(0,x.jsx)(p,{size:`icon-sm`,variant:`outline`,disabled:!V||k,onClick:ne,title:`Screenshot → workspace/screenshots`,children:(0,x.jsx)(_,{})}),(0,x.jsx)(`div`,{className:`flex items-center rounded-md border p-0.5`,children:C.map(({value:e,label:t,icon:n})=>(0,x.jsxs)(p,{size:`sm`,variant:H===e?`secondary`:`ghost`,className:`h-7 gap-1.5 px-2`,disabled:k,onClick:()=>X(e),children:[(0,x.jsx)(n,{className:`size-3.5`}),t]},e))}),V?(0,x.jsxs)(p,{size:`sm`,variant:`outline`,className:`text-destructive hover:text-destructive`,disabled:k,onClick:q,children:[(0,x.jsx)(u,{className:`size-3.5`}),` Stop`]}):(0,x.jsxs)(p,{size:`sm`,disabled:k,onClick:K,children:[(0,x.jsx)(c,{className:`size-3.5`}),` Start`]})]}),(0,x.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,x.jsx)(`span`,{className:o(`inline-block size-2 rounded-full`,V?`bg-emerald-500`:`bg-neutral-300`)}),V?e?.title||e?.url||`Browser running`:`Browser stopped`,U&&V&&(0,x.jsx)(`span`,{className:`rounded bg-primary/10 px-1.5 py-0.5 font-medium text-primary`,children:`You have control — click the page and type`})]}),j&&(0,x.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:j}),(0,x.jsx)(`div`,{ref:I,className:`flex min-h-0 flex-1 items-center justify-center`,children:(0,x.jsxs)(`div`,{ref:F,style:O?{width:O.w,height:O.h}:void 0,className:o(`group relative flex items-center justify-center overflow-hidden rounded-lg border bg-neutral-950/95 outline-none`,U&&`ring-2 ring-primary/60`),tabIndex:0,onMouseDown:()=>{U&&F.current?.focus()},onKeyDown:e=>$(e,`keyDown`),onKeyUp:e=>$(e,`keyUp`),children:[E?(0,x.jsx)(`img`,{ref:P,src:E,alt:`Browser viewport`,draggable:!1,className:o(`h-full w-full select-none object-contain`,U?`cursor-crosshair`:`cursor-default`),onMouseDown:e=>Q(e,`mousePressed`),onMouseUp:e=>Q(e,`mouseReleased`),onMouseMove:ie,onContextMenu:e=>U&&e.preventDefault(),onWheel:e=>Q(e,`mouseWheel`,{deltaX:e.deltaX,deltaY:e.deltaY})}):(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-2 text-sm text-neutral-400`,children:[(0,x.jsx)(d,{className:`size-8`}),V?`Waiting for viewport frames…`:`Start the browser to see the live viewport.`]}),!U&&E&&(0,x.jsx)(`div`,{className:`absolute inset-0 flex items-end justify-center pb-4 opacity-0 transition-opacity group-hover:opacity-100`,children:(0,x.jsxs)(p,{size:`sm`,className:`shadow-lg`,onClick:()=>X(`user`),children:[(0,x.jsx)(v,{className:`size-3.5`}),` Take control`]})})]})})]}),(0,x.jsxs)(`aside`,{className:`flex w-72 shrink-0 flex-col border-l`,children:[(0,x.jsx)(`div`,{className:`border-b px-3 py-2 text-sm font-semibold`,children:`Action log`}),(0,x.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-1 overflow-auto p-2`,children:[n.map(e=>(0,x.jsxs)(`div`,{className:`rounded-md px-2 py-1.5 text-xs hover:bg-muted/60`,children:[(0,x.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,x.jsx)(`span`,{className:`font-medium`,children:e.kind}),(0,x.jsx)(`span`,{className:`text-muted-foreground`,children:new Date(e.ts).toLocaleTimeString()})]}),e.detail&&(0,x.jsx)(`div`,{className:`truncate text-muted-foreground`,title:e.detail,children:e.detail})]},e.id)),n.length===0&&(0,x.jsx)(`p`,{className:`px-2 py-4 text-xs text-muted-foreground`,children:`No actions yet. Start the browser or navigate somewhere.`})]})]})]})}export{E as BrowserPage};
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{F as r,I as i,L as a,R as o,t as s}from"./utils-BX1Diber.js";import{x as c}from"./useBaseUiId-dSIElxm7.js";import{i as l,n as u,r as d,t as f}from"./collapsible-0tqcZUWD.js";import{t as p}from"./circle-x-BSTd_gmE.js";import{t as m}from"./key-round-D965pLEl.js";import{a as h,i as g,n as _,r as v,t as y}from"./tabs-BUCI-mwA.js";import{E as b}from"./useCompositeListItem-BMeUcGkY.js";import{t as x}from"./rotate-cw-B1ZRM7VI.js";import{n as S,t as C}from"./textarea-BkUbRqKD.js";import{a as w,i as T,o as E,r as D,s as O,t as k}from"./dialog-gLEpdaG1.js";import{qt as A}from"./index-DXYsuK0q.js";import{t as j}from"./button-Cg-0y2B2.js";import{t as M}from"./input-BPTmfk5i.js";import{t as N}from"./badge-DjyNiZCE.js";import{t as P}from"./label-CxX4-RmK.js";var F=c(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),I=c(`circle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),L=e(t(),1),R=n();function z({server:e}){if(!e.enabled)return(0,R.jsx)(N,{variant:`outline`,children:`disabled`});switch(e.startupState){case`ready`:return(0,R.jsxs)(N,{variant:`secondary`,className:`gap-1`,children:[(0,R.jsx)(F,{className:`size-3 text-emerald-600`}),` ready`]});case`starting`:return(0,R.jsxs)(N,{variant:`secondary`,className:`gap-1`,children:[(0,R.jsx)(h,{className:`size-3 animate-spin`}),` starting`]});case`failed`:case`cancelled`:return(0,R.jsxs)(N,{variant:`outline`,className:`gap-1 text-destructive`,children:[(0,R.jsx)(p,{className:`size-3`}),` `,e.startupState]});default:return(0,R.jsxs)(N,{variant:`outline`,className:`gap-1`,children:[(0,R.jsx)(I,{className:`size-3`}),` not connected`]})}}function B(){let[e,t]=(0,L.useState)([]),[n,c]=(0,L.useState)(``),[p,h]=(0,L.useState)(!1),[w,T]=(0,L.useState)(null),[E,D]=(0,L.useState)(!1),[O,k]=(0,L.useState)(null),[M,P]=(0,L.useState)(!1),F=(0,L.useCallback)(async()=>{try{let[{servers:e},{toml:n}]=await Promise.all([i(`/api/mcp`),i(`/api/mcp/config`)]);t(e),p||c(n),T(null)}catch(e){T(e instanceof Error?e.message:String(e))}},[p]);(0,L.useEffect)(()=>{F()},[F]);let I=(0,L.useCallback)(async e=>{D(!0),T(null);try{await e(),await F()}catch(e){T(e instanceof Error?e.message:String(e))}finally{D(!1)}},[F]),B=()=>I(()=>a(`/api/mcp/reload`)),H=()=>I(async()=>{await o(`/api/mcp/config`,{toml:n}),h(!1),await a(`/api/mcp/reload`)}),U=e=>I(async()=>{await a(`/api/mcp/servers/${e.name}/enable`,{enabled:!e.enabled}),await a(`/api/mcp/reload`)}),W=e=>I(async()=>{window.confirm(`Remove MCP server "${e}"?`)&&(await r(`/api/mcp/servers/${e}`),await a(`/api/mcp/reload`))});return(0,R.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-3 p-4`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,R.jsx)(`h1`,{className:`text-base font-semibold`,children:`MCP servers`}),(0,R.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,R.jsxs)(j,{size:`sm`,variant:`outline`,onClick:B,disabled:E,children:[(0,R.jsx)(x,{className:`size-3.5`}),` Reload`]}),(0,R.jsxs)(j,{size:`sm`,onClick:()=>P(!0),disabled:E,children:[(0,R.jsx)(b,{className:`size-3.5`}),` Add server`]})]})]}),w&&(0,R.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:w}),(0,R.jsxs)(y,{defaultValue:`servers`,className:`flex min-h-0 flex-1 flex-col`,children:[(0,R.jsxs)(v,{children:[(0,R.jsx)(g,{value:`servers`,children:`Servers`}),(0,R.jsx)(g,{value:`toml`,children:`config.toml`})]}),(0,R.jsx)(_,{value:`servers`,className:`min-h-0 flex-1 overflow-auto pt-2`,children:(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[e.map(e=>(0,R.jsx)(`div`,{className:`rounded-lg border bg-card`,children:(0,R.jsxs)(f,{open:O===e.name,onOpenChange:t=>k(t?e.name:null),children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-3 p-3`,children:[(0,R.jsx)(A,{className:`size-4 shrink-0 text-muted-foreground`}),(0,R.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,R.jsx)(z,{server:e}),e.tools.length>0&&(0,R.jsxs)(N,{variant:`outline`,children:[e.tools.length,` tools`]}),e.authStatus===`notLoggedIn`&&(0,R.jsxs)(N,{variant:`outline`,className:`gap-1`,children:[(0,R.jsx)(m,{className:`size-3`}),` login required`]})]}),(0,R.jsx)(`code`,{className:`block truncate text-xs text-muted-foreground`,children:e.url??[e.command,...e.args??[]].join(` `)}),e.envKeys&&e.envKeys.length>0&&(0,R.jsxs)(`div`,{className:`text-xs text-muted-foreground/70`,children:[`env: `,e.envKeys.map(e=>`${e}=••••`).join(` `)]})]}),(0,R.jsx)(j,{size:`sm`,variant:`outline`,onClick:()=>U(e),disabled:E,children:e.enabled?`Disable`:`Enable`}),(0,R.jsx)(j,{size:`icon-sm`,variant:`ghost`,className:`text-destructive hover:text-destructive`,onClick:()=>W(e.name),disabled:E,children:(0,R.jsx)(S,{})}),e.tools.length>0&&(0,R.jsx)(d,{className:`flex size-7 items-center justify-center rounded-md text-muted-foreground hover:bg-muted`,children:(0,R.jsx)(l,{className:s(`size-4 transition-transform`,O===e.name&&`rotate-90`)})})]}),(0,R.jsx)(u,{children:(0,R.jsx)(`div`,{className:`grid gap-1 border-t p-3 sm:grid-cols-2`,children:e.tools.map(e=>(0,R.jsxs)(`div`,{className:`rounded-md bg-muted/40 px-2 py-1.5`,children:[(0,R.jsx)(`code`,{className:`text-xs font-medium`,children:e.name}),e.description&&(0,R.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,title:e.description,children:e.description})]},e.name))})})]})},e.name)),e.length===0&&(0,R.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-4 py-12 text-center text-sm text-muted-foreground`,children:[(0,R.jsx)(A,{className:`size-8`}),`No MCP servers configured. Add one to give Codex extra tools.`]})]})}),(0,R.jsxs)(_,{value:`toml`,className:`flex min-h-0 flex-1 flex-col gap-2 pt-2`,children:[(0,R.jsx)(C,{value:n,spellCheck:!1,className:`min-h-0 flex-1 resize-none font-mono text-sm`,onChange:e=>{c(e.target.value),h(!0)}}),(0,R.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,R.jsx)(j,{size:`sm`,onClick:H,disabled:!p||E,children:E?`Saving…`:`Save & reload`}),(0,R.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Editing here preserves your comments; structured edits reformat the file.`})]})]})]}),(0,R.jsx)(V,{open:M,onOpenChange:P,onAdded:()=>I(()=>a(`/api/mcp/reload`))})]})}function V({open:e,onOpenChange:t,onAdded:n}){let[r,i]=(0,L.useState)(``),[o,s]=(0,L.useState)(``),[c,l]=(0,L.useState)(``),[u,d]=(0,L.useState)(``),[f,p]=(0,L.useState)(null),[m,h]=(0,L.useState)(!1);return(0,R.jsx)(k,{open:e,onOpenChange:t,children:(0,R.jsxs)(D,{children:[(0,R.jsxs)(E,{children:[(0,R.jsx)(O,{children:`Add MCP server`}),(0,R.jsxs)(T,{children:[`A stdio command server (e.g. `,(0,R.jsx)(`code`,{children:`npx -y @scope/pkg`}),`). For URL or advanced transports, use the config.toml tab.`]})]}),f&&(0,R.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:f}),(0,R.jsxs)(`div`,{className:`grid gap-3`,children:[(0,R.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,R.jsx)(P,{htmlFor:`mcp-name`,children:`Name`}),(0,R.jsx)(M,{id:`mcp-name`,value:r,placeholder:`context7`,onChange:e=>i(e.target.value)})]}),(0,R.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,R.jsx)(P,{htmlFor:`mcp-command`,children:`Command`}),(0,R.jsx)(M,{id:`mcp-command`,value:o,placeholder:`npx`,onChange:e=>s(e.target.value)})]}),(0,R.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,R.jsx)(P,{htmlFor:`mcp-args`,children:`Args (space-separated)`}),(0,R.jsx)(M,{id:`mcp-args`,value:c,placeholder:`-y @upstash/context7-mcp`,onChange:e=>l(e.target.value)})]}),(0,R.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,R.jsx)(P,{htmlFor:`mcp-env`,children:`Env (KEY=value per line)`}),(0,R.jsx)(C,{id:`mcp-env`,value:u,rows:3,placeholder:`API_KEY=sk-…`,onChange:e=>d(e.target.value)})]})]}),(0,R.jsxs)(w,{children:[(0,R.jsx)(j,{variant:`outline`,onClick:()=>t(!1),children:`Cancel`}),(0,R.jsx)(j,{onClick:async()=>{h(!0),p(null);try{let e={};for(let t of u.split(/\r?\n/)){let n=t.indexOf(`=`);n>0&&(e[t.slice(0,n).trim()]=t.slice(n+1).trim())}await a(`/api/mcp/servers`,{name:r.trim(),command:o.trim()||void 0,args:c.trim()?c.trim().split(/\s+/):void 0,env:Object.keys(e).length>0?e:void 0}),t(!1),i(``),s(``),l(``),d(``),n()}catch(e){p(e instanceof Error?e.message:String(e))}finally{h(!1)}},disabled:m||r.trim().length===0||o.trim().length===0,children:m?`Adding…`:`Add & reload`})]})]})})}export{B as McpPage};
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{F as r,I as i,R as a,t as o}from"./utils-BX1Diber.js";import{t as s}from"./checkbox-BO9cBKlP.js";import{t as c}from"./rotate-cw-B1ZRM7VI.js";import{n as l,t as u}from"./textarea-BkUbRqKD.js";import{Qt as d}from"./index-DXYsuK0q.js";import{t as f}from"./button-Cg-0y2B2.js";import{t as p}from"./input-BPTmfk5i.js";import{t as m}from"./badge-DjyNiZCE.js";import{t as h}from"./label-CxX4-RmK.js";var g=e(t(),1),_=n();function v(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/(1024*1024)).toFixed(1)} MB`}function y(){let[e,t]=(0,g.useState)(null),[n,y]=(0,g.useState)(null),[b,x]=(0,g.useState)(!1),[S,C]=(0,g.useState)(null),[w,T]=(0,g.useState)(``),[E,D]=(0,g.useState)(!1),[O,k]=(0,g.useState)(``),A=(0,g.useCallback)(async()=>{try{let e=await i(`/api/memories`);t(e),k(e.settings.minRateLimitRemainingPercent===void 0?``:String(e.settings.minRateLimitRemainingPercent)),y(null)}catch(e){y(e instanceof Error?e.message:String(e))}},[]);(0,g.useEffect)(()=>{A()},[A]);let j=(0,g.useCallback)(async e=>{x(!0),y(null);try{await e(),await A()}catch(e){y(e instanceof Error?e.message:String(e))}finally{x(!1)}},[A]),M=()=>j(()=>a(`/api/memories/config`,{enabled:!e?.enabled})),N=e=>j(()=>a(`/api/memories/config`,{settings:e})),P=()=>{let e=Number(O);if(!Number.isFinite(e)||e<0||e>100){y(`Rate-limit threshold must be a number between 0 and 100`);return}N({minRateLimitRemainingPercent:e})},F=e=>j(async()=>{let t=await i(`/api/memories/file?path=${encodeURIComponent(e.path)}`);C(t.path),T(t.content),D(!1)}),I=()=>j(async()=>{S&&(await a(`/api/memories/file`,{path:S,content:w}),D(!1))}),L=e=>j(async()=>{window.confirm(`Delete memory file "${e}"?`)&&(await r(`/api/memories/file?path=${encodeURIComponent(e)}`),S===e&&(C(null),T(``),D(!1)))}),R=e?.enabled??!1,z=e?.settings??{},B=e?.files??[];return(0,_.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-3 p-4`,children:[(0,_.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,_.jsx)(`h1`,{className:`text-base font-semibold`,children:`Memories`}),(0,_.jsx)(m,{variant:`outline`,children:`beta`}),e&&e.liveEnabled!==null&&e.liveEnabled!==R&&(0,_.jsx)(m,{variant:`outline`,className:`text-amber-600`,children:`engine state differs — restart pending`}),(0,_.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,_.jsxs)(f,{size:`sm`,variant:`outline`,onClick:()=>A(),disabled:b,children:[(0,_.jsx)(c,{className:`size-3.5`}),` Refresh`]}),(0,_.jsx)(f,{size:`sm`,onClick:M,disabled:b||!e,children:R?`Disable`:`Enable`})]})]}),(0,_.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Codex turns useful context from past sessions into local memory files and brings them into new conversations. Memories are global across workspaces (they live in the shared Codex home) and are generated in the background — new files can take a while to appear.`}),n&&(0,_.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:n}),(0,_.jsxs)(`div`,{className:o(`flex flex-col gap-3`,!R&&`opacity-60`),children:[(0,_.jsxs)(`div`,{className:`rounded-lg border bg-card p-3`,children:[(0,_.jsx)(`div`,{className:`mb-2 text-sm font-medium`,children:`Behavior`}),(0,_.jsxs)(`div`,{className:`grid gap-2`,children:[(0,_.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,_.jsx)(s,{checked:z.generateMemories!==!1,disabled:b||!R,onCheckedChange:e=>N({generateMemories:e===!0})}),`Generate memories from new sessions`]}),(0,_.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,_.jsx)(s,{checked:z.useMemories!==!1,disabled:b||!R,onCheckedChange:e=>N({useMemories:e===!0})}),`Use existing memories in new sessions`]}),(0,_.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,_.jsx)(s,{checked:z.disableOnExternalContext===!0,disabled:b||!R,onCheckedChange:e=>N({disableOnExternalContext:e===!0})}),`Skip sessions that used external context (MCP tools, web search)`]}),(0,_.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,_.jsx)(h,{htmlFor:`mem-rate`,className:`font-normal`,children:`Pause generation below`}),(0,_.jsx)(p,{id:`mem-rate`,type:`number`,min:0,max:100,placeholder:`25`,className:`h-7 w-20`,value:O,disabled:b||!R,onChange:e=>k(e.target.value),onBlur:()=>{O!==``&&P()},onKeyDown:e=>{e.key===`Enter`&&O!==``&&P()}}),(0,_.jsx)(`span`,{className:`text-muted-foreground`,children:`% rate limit remaining`})]})]}),(0,_.jsx)(`div`,{className:`mt-2 text-xs text-muted-foreground`,children:`Behavior settings are read by the engine at startup; the on/off toggle applies immediately.`})]}),(0,_.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-3`,children:[(0,_.jsxs)(`div`,{className:`flex w-72 shrink-0 flex-col gap-1 overflow-auto`,children:[(0,_.jsxs)(`div`,{className:`text-sm font-medium`,children:[`Memory files`,B.length>0&&` (${B.length})`]}),B.map(e=>(0,_.jsxs)(`div`,{className:o(`group flex cursor-pointer items-center gap-2 rounded-md border px-2 py-1.5`,S===e.path?`border-foreground/30 bg-muted/60`:`bg-card hover:bg-muted/40`),onClick:()=>F(e),children:[(0,_.jsx)(d,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,_.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,_.jsx)(`div`,{className:`truncate text-sm`,title:e.path,children:e.path}),(0,_.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[v(e.size),` · `,new Date(e.modifiedAt).toLocaleString()]})]}),(0,_.jsx)(f,{size:`icon-sm`,variant:`ghost`,className:`invisible text-destructive hover:text-destructive group-hover:visible`,disabled:b,onClick:t=>{t.stopPropagation(),L(e.path)},children:(0,_.jsx)(l,{})})]},e.path)),B.length===0&&(0,_.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-4 py-10 text-center text-sm text-muted-foreground`,children:[(0,_.jsx)(d,{className:`size-8`}),R?`No memories yet. Codex builds them in the background from finished sessions.`:`Enable memories to let Codex remember context across sessions.`]})]}),(0,_.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-2`,children:S?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,_.jsx)(`code`,{className:`truncate text-xs text-muted-foreground`,children:S}),(0,_.jsx)(f,{size:`sm`,className:`ml-auto`,onClick:I,disabled:!E||b,children:b?`Saving…`:`Save`})]}),(0,_.jsx)(u,{value:w,spellCheck:!1,className:`min-h-0 flex-1 resize-none font-mono text-sm`,onChange:e=>{T(e.target.value),D(!0)}})]}):(0,_.jsx)(`div`,{className:`flex flex-1 items-center justify-center rounded-lg border border-dashed text-sm text-muted-foreground`,children:`Select a memory file to inspect or edit it`})})]})]})]})}export{y as MemoriesPage};
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{F as r,H as i,I as a,L as o,R as s,t as c}from"./utils-BX1Diber.js";import{a as l,i as u,n as d,r as f,t as p}from"./select-jBmyVjXL.js";import{t as m}from"./checkbox-BO9cBKlP.js";import{t as h}from"./play-B4R5rXMZ.js";import{E as g}from"./useCompositeListItem-BMeUcGkY.js";import{t as _}from"./rotate-cw-B1ZRM7VI.js";import{n as v,t as y}from"./textarea-BkUbRqKD.js";import{Zt as b,en as x}from"./index-DXYsuK0q.js";import{t as S}from"./button-Cg-0y2B2.js";import{t as C}from"./input-BPTmfk5i.js";import{t as w}from"./badge-DjyNiZCE.js";import{t as T}from"./label-CxX4-RmK.js";var E=e(t(),1),D=n(),O={unattended:{label:`Unattended`,hint:`A Codex subagent approves for you · workspace-write (recommended for 24/7)`,mode:{sandbox:`workspaceWrite`,approvalPolicy:`onRequest`,approvalsReviewer:`auto_review`}},all:{label:`Allow everything`,hint:`⚠ No approvals + full disk/network access. Use with care.`,mode:{sandbox:`dangerFullAccess`,approvalPolicy:`never`,approvalsReviewer:`user`}}};function k(e){for(let t of Object.keys(O)){let n=O[t].mode;if(e.sandbox===n.sandbox&&e.approvalPolicy===n.approvalPolicy&&e.approvalsReviewer===n.approvalsReviewer)return t}return`unattended`}var A=[{label:`Every hour`,cron:`0 * * * *`},{label:`Daily 9am`,cron:`0 9 * * *`},{label:`Weekdays 9am`,cron:`0 9 * * 1-5`},{label:`Mondays 8am`,cron:`0 8 * * 1`},{label:`1st of month`,cron:`0 9 1 * *`}];function j(e){if(!e)return``;let t=new Date(e);if(Number.isNaN(t.getTime()))return``;let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())}T${n(t.getHours())}:${n(t.getMinutes())}`}function M(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?`—`:t.toLocaleString()}var N=Intl.DateTimeFormat().resolvedOptions().timeZone;function P(){return{name:``,prompt:``,kind:`cron`,cron:`0 9 * * *`,runAtLocal:``,tz:N,modeKey:`unattended`,model:``,effort:``,resume:!1,enabled:!0}}function F(e){return{name:e.name,prompt:e.prompt,kind:e.kind,cron:e.cron??`0 9 * * *`,runAtLocal:j(e.runAt),tz:e.tz??``,modeKey:k(e.mode),model:e.mode.model??``,effort:e.mode.effort??``,resume:e.resume??!1,enabled:e.enabled}}function I(){let{activeProjectId:e,activeProject:t}=x(),[n,k]=(0,E.useState)([]),[j,I]=(0,E.useState)([]),[L,R]=(0,E.useState)(null),[z,B]=(0,E.useState)(!1),[V,H]=(0,E.useState)(P),[U,W]=(0,E.useState)(null),[G,K]=(0,E.useState)(!1),q=(0,E.useCallback)(async()=>{try{let{schedules:t}=await a(i(`/api/schedules`,e));k(t),W(null)}catch(e){W(e instanceof Error?e.message:String(e))}},[e]);(0,E.useEffect)(()=>{q()},[q]),(0,E.useEffect)(()=>{a(`/api/models`).then(({models:e})=>I(e)).catch(()=>{})},[]),(0,E.useEffect)(()=>{R(null),B(!1)},[e]);let J=()=>{R(null),B(!0),H(P()),W(null)},ee=e=>{R(e.id),B(!1),H(F(e)),W(null)},Y=(0,E.useCallback)(async e=>{K(!0),W(null);try{await e(),await q()}catch(e){W(e instanceof Error?e.message:String(e))}finally{K(!1)}},[q]),te=()=>{let t=O[V.modeKey].mode;return{name:V.name,prompt:V.prompt,projectId:e,kind:V.kind,cron:V.kind===`cron`?V.cron:void 0,runAt:V.kind===`once`&&V.runAtLocal?new Date(V.runAtLocal).toISOString():void 0,tz:V.tz||void 0,mode:{...t,model:V.model||void 0,effort:V.effort||void 0},resume:V.resume,enabled:V.enabled}},ne=()=>{if(!V.name.trim()){W(`Name is required`);return}if(!V.prompt.trim()){W(`Prompt is required`);return}Y(async()=>{let t=te();if(z){let{schedule:n}=await o(i(`/api/schedules`,e),t);R(n.id),B(!1),H(F(n))}else if(L){let{schedule:e}=await s(`/api/schedules/${L}`,t);H(F(e))}})},re=e=>Y(()=>s(`/api/schedules/${e.id}`,{enabled:!e.enabled})),X=e=>Y(()=>o(`/api/schedules/${e.id}/run`)),ie=e=>Y(async()=>{window.confirm(`Delete schedule "${e.name}"?`)&&(await r(`/api/schedules/${e.id}`),L===e.id&&(R(null),B(!1)))}),Z=(0,E.useMemo)(()=>n.find(e=>e.id===L)??null,[n,L]),ae=z||Z!==null,Q=j.find(e=>e.model===V.model),oe=Q?.supportedReasoningEfforts??[],$=(e,t)=>H(n=>({...n,[e]:t}));return(0,D.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-3 p-4`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`h1`,{className:`text-base font-semibold`,children:`Schedules`}),(0,D.jsx)(w,{variant:`outline`,children:t?.name??e}),(0,D.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,D.jsxs)(S,{size:`sm`,variant:`outline`,onClick:()=>q(),disabled:G,children:[(0,D.jsx)(_,{className:`size-3.5`}),` Refresh`]}),(0,D.jsxs)(S,{size:`sm`,onClick:J,disabled:G,children:[(0,D.jsx)(g,{className:`size-3.5`}),` New schedule`]})]})]}),(0,D.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Run a prompt automatically on a cron schedule or once at a set time. Scheduled runs fire in the background and appear in the Runs page — they default to Unattended mode so approvals don't block while no one is watching.`}),U&&(0,D.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:U}),(0,D.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-3`,children:[(0,D.jsxs)(`div`,{className:`flex w-80 shrink-0 flex-col gap-1 overflow-auto`,children:[n.map(e=>(0,D.jsxs)(`div`,{className:c(`group flex cursor-pointer items-start gap-2 rounded-md border px-2 py-2`,L===e.id?`border-foreground/30 bg-muted/60`:`bg-card hover:bg-muted/40`),onClick:()=>ee(e),children:[(0,D.jsx)(b,{className:c(`mt-0.5 size-4 shrink-0`,e.enabled?`text-foreground`:`text-muted-foreground`)}),(0,D.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,D.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.name}),!e.enabled&&(0,D.jsx)(w,{variant:`outline`,className:`text-muted-foreground`,children:`paused`})]}),(0,D.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.kind===`cron`?(0,D.jsx)(`code`,{children:e.cron}):`once · ${M(e.runAt)}`}),(0,D.jsx)(`div`,{className:`text-xs text-muted-foreground`,children:e.enabled?`next: ${M(e.nextRunAt)}`:`paused`}),e.lastError&&(0,D.jsxs)(`div`,{className:`truncate text-xs text-destructive`,title:e.lastError,children:[`last error: `,e.lastError]})]}),(0,D.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-1`,children:[(0,D.jsx)(S,{size:`icon-sm`,variant:`ghost`,title:`Run now`,disabled:G,onClick:t=>{t.stopPropagation(),X(e)},children:(0,D.jsx)(h,{})}),(0,D.jsx)(S,{size:`icon-sm`,variant:`ghost`,className:`text-destructive hover:text-destructive`,title:`Delete`,disabled:G,onClick:t=>{t.stopPropagation(),ie(e)},children:(0,D.jsx)(v,{})})]})]},e.id)),n.length===0&&(0,D.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-4 py-10 text-center text-sm text-muted-foreground`,children:[(0,D.jsx)(b,{className:`size-8`}),`No schedules in this workspace yet. Create one to run a prompt on a timer.`]})]}),(0,D.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-3 overflow-auto`,children:ae?(0,D.jsxs)(`div`,{className:`flex flex-col gap-3 rounded-lg border bg-card p-4`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(`span`,{className:`text-sm font-medium`,children:z?`New schedule`:`Edit schedule`}),Z&&(0,D.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,D.jsxs)(S,{size:`sm`,variant:`outline`,onClick:()=>X(Z),disabled:G,children:[(0,D.jsx)(h,{className:`size-3.5`}),` Run now`]}),(0,D.jsx)(S,{size:`sm`,variant:`outline`,onClick:()=>re(Z),disabled:G,children:Z.enabled?`Pause`:`Resume`})]})]}),(0,D.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,D.jsx)(T,{htmlFor:`sch-name`,children:`Name`}),(0,D.jsx)(C,{id:`sch-name`,value:V.name,placeholder:`Morning report`,onChange:e=>$(`name`,e.target.value)})]}),(0,D.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,D.jsx)(T,{htmlFor:`sch-prompt`,children:`Prompt`}),(0,D.jsx)(y,{id:`sch-prompt`,value:V.prompt,placeholder:`What should the agent do each time?`,className:`min-h-24 resize-y font-mono text-sm`,onChange:e=>$(`prompt`,e.target.value)})]}),(0,D.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,D.jsx)(T,{children:`When`}),(0,D.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,D.jsxs)(p,{value:V.kind,onValueChange:e=>$(`kind`,e??`cron`),children:[(0,D.jsx)(u,{size:`sm`,className:`w-32`,children:(0,D.jsx)(l,{children:V.kind===`cron`?`Repeating`:`One-off`})}),(0,D.jsxs)(d,{children:[(0,D.jsx)(f,{value:`cron`,children:`Repeating (cron)`}),(0,D.jsx)(f,{value:`once`,children:`One-off`})]})]}),V.kind===`cron`?(0,D.jsx)(C,{value:V.cron,placeholder:`0 9 * * *`,className:`w-44 font-mono`,onChange:e=>$(`cron`,e.target.value)}):(0,D.jsx)(C,{type:`datetime-local`,value:V.runAtLocal,className:`w-56`,onChange:e=>$(`runAtLocal`,e.target.value)})]}),V.kind===`cron`&&(0,D.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:A.map(e=>(0,D.jsx)(S,{size:`sm`,variant:`outline`,className:`h-6 text-xs`,onClick:()=>$(`cron`,e.cron),children:e.label},e.cron))}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(T,{htmlFor:`sch-tz`,className:`font-normal text-muted-foreground`,children:`Timezone`}),(0,D.jsx)(C,{id:`sch-tz`,value:V.tz,placeholder:N,className:`h-7 w-56`,onChange:e=>$(`tz`,e.target.value)})]}),(0,D.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Cron fields: minute hour day-of-month month day-of-week. Times are evaluated in the timezone above (defaults to the daemon's local time if blank).`})]}),(0,D.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,D.jsx)(T,{children:`Run mode`}),(0,D.jsxs)(p,{value:V.modeKey,onValueChange:e=>$(`modeKey`,e??`unattended`),children:[(0,D.jsx)(u,{size:`sm`,className:`w-full`,children:(0,D.jsx)(l,{children:O[V.modeKey].label})}),(0,D.jsx)(d,{children:Object.keys(O).map(e=>(0,D.jsx)(f,{value:e,children:(0,D.jsxs)(`span`,{className:`channel-mode-item`,children:[(0,D.jsx)(`span`,{className:`channel-mode-label`,children:O[e].label}),(0,D.jsx)(`span`,{className:`channel-mode-hint`,children:O[e].hint})]})},e))})]})]}),(0,D.jsxs)(`div`,{className:`flex flex-wrap gap-3`,children:[(0,D.jsxs)(`div`,{className:`grid flex-1 gap-1.5`,children:[(0,D.jsx)(T,{children:`Model`}),(0,D.jsxs)(p,{value:V.model||`__default`,onValueChange:e=>$(`model`,e===`__default`?``:e??``),children:[(0,D.jsx)(u,{size:`sm`,className:`w-full`,children:(0,D.jsx)(l,{children:Q?.displayName??`Engine default`})}),(0,D.jsxs)(d,{children:[(0,D.jsx)(f,{value:`__default`,children:`Engine default`}),j.map(e=>(0,D.jsxs)(f,{value:e.model,children:[e.displayName,e.isDefault?` · default`:``]},e.id))]})]})]}),(0,D.jsxs)(`div`,{className:`grid flex-1 gap-1.5`,children:[(0,D.jsx)(T,{children:`Reasoning effort`}),(0,D.jsxs)(p,{value:V.effort||`__default`,onValueChange:e=>$(`effort`,e===`__default`?``:e??``),children:[(0,D.jsx)(u,{size:`sm`,className:`w-full`,children:(0,D.jsx)(l,{children:V.effort||`Default (medium)`})}),(0,D.jsxs)(d,{children:[(0,D.jsx)(f,{value:`__default`,children:`Default (medium)`}),oe.map(e=>(0,D.jsx)(f,{value:e.reasoningEffort,children:e.reasoningEffort},e.reasoningEffort))]})]})]})]}),(0,D.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,D.jsx)(m,{checked:V.resume,onCheckedChange:e=>$(`resume`,e===!0)}),`Resume one persistent conversation each fire (context accumulates across runs)`]}),(0,D.jsxs)(`label`,{className:`flex items-center gap-2 text-sm`,children:[(0,D.jsx)(m,{checked:V.enabled,onCheckedChange:e=>$(`enabled`,e===!0)}),`Enabled`]}),(0,D.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(S,{onClick:ne,disabled:G,children:G?`Saving…`:z?`Create schedule`:`Save changes`}),(0,D.jsx)(S,{variant:`ghost`,onClick:()=>{B(!1),R(null)},disabled:G,children:`Cancel`})]}),Z&&(0,D.jsxs)(`div`,{className:`mt-1 grid gap-0.5 border-t pt-2 text-xs text-muted-foreground`,children:[(0,D.jsxs)(`div`,{children:[`Next run: `,M(Z.nextRunAt)]}),(0,D.jsxs)(`div`,{children:[`Last run: `,M(Z.lastRunAt)]}),Z.lastRunId&&(0,D.jsxs)(`div`,{children:[`Last run id: `,Z.lastRunId]}),Z.lastError&&(0,D.jsxs)(`div`,{className:`text-destructive`,children:[`Last error: `,Z.lastError]})]})]}):(0,D.jsx)(`div`,{className:`flex flex-1 items-center justify-center rounded-lg border border-dashed text-sm text-muted-foreground`,children:`Select a schedule to edit, or create a new one.`})})]})]})}export{I as SchedulesPage};
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-Cyuzqnbw.js";import{i as t,r as n}from"./bundle-mjs-DssaXR6m.js";import{F as r,H as i,I as a,L as o,R as ee,t as s}from"./utils-BX1Diber.js";import{x as c}from"./useBaseUiId-dSIElxm7.js";import{t as te}from"./external-link-DiZ5uX5z.js";import{a as l,i as u,n as d,r as ne,t as re}from"./tabs-BUCI-mwA.js";import{E as ie}from"./useCompositeListItem-BMeUcGkY.js";import{t as ae}from"./search-09Pme-NO.js";import{n as oe,t as f}from"./textarea-BkUbRqKD.js";import{a as se,i as p,o as m,r as ce,s as h,t as g}from"./dialog-gLEpdaG1.js";import{$t as _,en as le,tn as ue}from"./index-DXYsuK0q.js";import{t as v}from"./button-Cg-0y2B2.js";import{t as y}from"./input-BPTmfk5i.js";import{t as b}from"./badge-DjyNiZCE.js";import{t as x}from"./label-CxX4-RmK.js";var de=c(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),fe=c(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),pe=c(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),me=c(`store`,[[`path`,{d:`M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5`,key:`slp6dd`}],[`path`,{d:`M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244`,key:`o0xfot`}],[`path`,{d:`M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05`,key:`wn3emo`}]]),S=e(t(),1),C=n();function w({className:e,...t}){return(0,C.jsx)(l,{role:`status`,"aria-label":`Loading`,className:s(`size-4 animate-spin`,e),...t})}function he(e){let t=/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/.exec(e.replace(/^/,``));if(!t)return{name:``,description:``,body:e,ok:!1};let n={};for(let e of t[1].split(/\r?\n/)){let t=/^([A-Za-z_][\w-]*):\s*(.*)$/.exec(e);t&&(n[t[1].toLowerCase()]=t[2].trim().replace(/^["']|["']$/g,``))}return{name:n.name??``,description:n.description??``,body:t[2].replace(/^\r?\n/,``),ok:!0}}function T(e,t,n){return`---\nname: ${e}\ndescription: ${t}\n---\n\n${n.trim()}\n`}function E(){let{activeProjectId:e,activeProject:t}=le(),[n,c]=(0,S.useState)([]),[l,E]=(0,S.useState)(null),[D,O]=(0,S.useState)(null),[k,A]=(0,S.useState)(``),[ge,j]=(0,S.useState)(!1),[_e,ve]=(0,S.useState)(!1),[M,N]=(0,S.useState)(!1),[P,F]=(0,S.useState)(null),[ye,I]=(0,S.useState)(!1),[L,R]=(0,S.useState)(``),[z,B]=(0,S.useState)(``),[V,be]=(0,S.useState)(``),[xe,H]=(0,S.useState)(null),[U,W]=(0,S.useState)(!1),[Se,G]=(0,S.useState)(!1),[K,Ce]=(0,S.useState)(``),[we,Te]=(0,S.useState)([]),[q,Ee]=(0,S.useState)(!1),[De,Oe]=(0,S.useState)(!1),[ke,J]=(0,S.useState)(null),[Y,Ae]=(0,S.useState)(null),[je,Me]=(0,S.useState)(new Set),X=(0,S.useCallback)(async()=>{try{let{skills:t}=await a(i(`/api/skills`,e));c(t),F(null)}catch(e){F(e instanceof Error?e.message:String(e))}},[e]);(0,S.useEffect)(()=>{X()},[X]),(0,S.useEffect)(()=>{E(null),O(null)},[e]);let Z=(0,S.useCallback)(async t=>{E(t),O(null),H(null),ve(!0);try{let{skill:n}=await a(i(`/api/skills/${t}`,e));O(n),A(n.content),j(!1)}catch(e){F(e instanceof Error?e.message:String(e))}finally{ve(!1)}},[e]),Q=(0,S.useMemo)(()=>he(k),[k]),Ne=async()=>{if(!(!l||M)){N(!0),F(null);try{let{skill:t}=await ee(i(`/api/skills/${l}`,e),{content:k});O(t),A(t.content),j(!1),await X()}catch(e){F(e instanceof Error?e.message:String(e))}finally{N(!1)}}},Pe=async()=>{let t=L.trim(),n=z.trim();if(!(!t||!n)){F(null);try{let{skill:r}=await o(i(`/api/skills`,e),{name:t,description:n});I(!1),R(``),B(``),await X(),await Z(r.info.id)}catch(e){F(e instanceof Error?e.message:String(e))}}},Fe=async()=>{if(l&&window.confirm(`Delete skill "${l}"? This removes its folder.`))try{await r(i(`/api/skills/${l}`,e)),E(null),O(null),await X()}catch(e){F(e instanceof Error?e.message:String(e))}},Ie=async()=>{if(!(!l||!D))try{await o(i(`/api/skills/${l}/enable`,e),{enabled:!D.info.enabled}),await X(),await Z(l)}catch(e){F(e instanceof Error?e.message:String(e))}},Le=async()=>{if(!(!l||U)){W(!0),H(null),F(null);try{let{run:t}=await o(i(`/api/skills/${l}/test`,e),{prompt:V.trim()||void 0});H(t)}catch(e){F(e instanceof Error?e.message:String(e))}finally{W(!1)}}},Re=async()=>{let e=K.trim();if(!(!e||q)){Ee(!0),J(null);try{let{results:t}=await a(`/api/skills/registry/search?q=${encodeURIComponent(e)}`);Te(t),Oe(!0)}catch(e){J(e instanceof Error?e.message:String(e))}finally{Ee(!1)}}},ze=async t=>{if(!Y){Ae(t),J(null);try{let n=await o(i(`/api/skills/registry/install`,e),{source:t});Me(e=>new Set(e).add(t)),c(n.skills)}catch(e){J(e instanceof Error?e.message:String(e))}finally{Ae(null)}}},$=(e,t)=>{A(e===`description`?T(Q.name||l||``,t,Q.body):T(Q.name||l||``,Q.description,t)),j(!0)};return(0,C.jsxs)(`div`,{className:`flex h-full min-h-0`,children:[(0,C.jsxs)(`aside`,{className:`flex w-72 shrink-0 flex-col border-r`,children:[(0,C.jsxs)(`div`,{className:`flex items-center justify-between border-b px-3 py-2`,children:[(0,C.jsx)(`span`,{className:`text-sm font-semibold`,children:`Skills`}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,C.jsxs)(v,{size:`sm`,variant:`outline`,onClick:()=>G(!0),children:[(0,C.jsx)(me,{className:`size-3.5`}),` Browse`]}),(0,C.jsx)(v,{size:`icon-sm`,variant:`outline`,onClick:()=>I(!0),children:(0,C.jsx)(ie,{})})]})]}),(0,C.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-auto p-2`,children:[n.map(e=>(0,C.jsxs)(`button`,{type:`button`,onClick:()=>Z(e.id),className:s(`w-full rounded-md px-2.5 py-2 text-left transition-colors hover:bg-muted/60`,e.id===l&&`bg-muted`),children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.name}),e.errors.length>0&&(0,C.jsx)(de,{className:`size-3.5 shrink-0 text-destructive`}),!e.enabled&&(0,C.jsx)(b,{variant:`outline`,className:`shrink-0`,children:`disabled`})]}),(0,C.jsx)(`div`,{className:`truncate text-xs text-muted-foreground`,children:e.description||`No description`})]},e.id)),n.length===0&&(0,C.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-4 py-10 text-center text-sm text-muted-foreground`,children:[(0,C.jsx)(_,{className:`size-8`}),`No skills in the `,t?.name??e,` workspace yet. Create one — it becomes a folder with a SKILL.md, available to runs in this workspace.`]})]})]}),(0,C.jsxs)(`section`,{className:`flex min-w-0 flex-1 flex-col gap-3 p-4`,children:[P&&(0,C.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:P}),!l&&(0,C.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-2 text-sm text-muted-foreground`,children:[(0,C.jsx)(_,{className:`size-8`}),`Select a skill or create a new one.`]}),l&&_e&&(0,C.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,C.jsx)(w,{})}),l&&D&&!_e&&(0,C.jsxs)(C.Fragment,{children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsx)(`h2`,{className:`text-base font-semibold`,children:D.info.name}),(0,C.jsx)(b,{variant:D.info.enabled?`secondary`:`outline`,children:D.info.enabled?`enabled`:`disabled`}),(0,C.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,C.jsx)(v,{size:`sm`,variant:`outline`,onClick:Ie,children:D.info.enabled?`Disable`:`Enable`}),(0,C.jsxs)(v,{size:`sm`,variant:`outline`,className:`text-destructive hover:text-destructive`,onClick:Fe,children:[(0,C.jsx)(oe,{className:`size-3.5`}),` Delete`]}),(0,C.jsx)(v,{size:`sm`,onClick:Ne,disabled:!ge||M,children:M?`Saving…`:ge?`Save`:`Saved`})]})]}),D.info.errors.length>0&&(0,C.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm text-destructive`,children:D.info.errors.map(e=>(0,C.jsx)(`div`,{children:e},e))}),(0,C.jsxs)(re,{defaultValue:Q.ok?`simple`:`advanced`,className:`flex min-h-0 flex-1 flex-col`,children:[(0,C.jsxs)(ne,{children:[(0,C.jsx)(u,{value:`simple`,disabled:!Q.ok,children:`Simple`}),(0,C.jsx)(u,{value:`advanced`,children:`Advanced`}),(0,C.jsxs)(u,{value:`test`,children:[(0,C.jsx)(pe,{className:`size-3.5`}),` Test`]})]}),(0,C.jsxs)(d,{value:`simple`,className:`flex min-h-0 flex-1 flex-col gap-3 pt-2`,children:[(0,C.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,C.jsx)(x,{htmlFor:`skill-description`,children:`Description`}),(0,C.jsx)(y,{id:`skill-description`,value:Q.description,placeholder:`When should Codex reach for this skill?`,onChange:e=>$(`description`,e.target.value)}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Codex reads this to decide when the skill applies.`})]}),(0,C.jsxs)(`div`,{className:`grid min-h-0 flex-1 gap-1.5`,children:[(0,C.jsx)(x,{htmlFor:`skill-instructions`,children:`Instructions`}),(0,C.jsx)(f,{id:`skill-instructions`,value:Q.body,placeholder:`Step-by-step instructions for Codex…`,className:`min-h-0 flex-1 resize-none font-mono text-sm`,onChange:e=>$(`body`,e.target.value)})]})]}),(0,C.jsxs)(d,{value:`advanced`,className:`flex min-h-0 flex-1 flex-col gap-2 pt-2`,children:[(0,C.jsx)(f,{value:k,className:`min-h-0 flex-1 resize-none font-mono text-sm`,onChange:e=>{A(e.target.value),j(!0)}}),D.files.length>0&&(0,C.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[`Extra files: `,D.files.join(`, `),` (edit via the Files page)`]})]}),(0,C.jsxs)(d,{value:`test`,className:`flex flex-col gap-3 pt-2`,children:[(0,C.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,C.jsx)(x,{htmlFor:`test-prompt`,children:`Test prompt`}),(0,C.jsx)(f,{id:`test-prompt`,value:V,rows:3,placeholder:`Leave empty for a default prompt that exercises "${D.info.name}".`,onChange:e=>be(e.target.value)})]}),(0,C.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,C.jsx)(v,{size:`sm`,onClick:Le,disabled:U,children:U?`Starting…`:`Run test with Codex`}),xe&&(0,C.jsxs)(`span`,{className:`text-sm text-muted-foreground`,children:[`Test run started —`,` `,(0,C.jsx)(ue,{to:`/runs`,className:`text-primary underline-offset-2 hover:underline`,children:`watch it in Runs`})]})]}),(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`The run loads this skill explicitly, so Codex follows its instructions even for a generic prompt.`})]})]})]})]}),(0,C.jsx)(g,{open:ye,onOpenChange:I,children:(0,C.jsxs)(ce,{children:[(0,C.jsxs)(m,{children:[(0,C.jsx)(h,{children:`New skill`}),(0,C.jsxs)(p,{children:[`Creates `,(0,C.jsx)(`code`,{children:`.agents/skills/<name>/SKILL.md`}),` in the`,` `,t?.name??e,` workspace.`]})]}),(0,C.jsxs)(`div`,{className:`grid gap-3`,children:[(0,C.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,C.jsx)(x,{htmlFor:`new-skill-name`,children:`Name`}),(0,C.jsx)(y,{id:`new-skill-name`,value:L,placeholder:`my-skill (lowercase, dashes)`,onChange:e=>R(e.target.value)})]}),(0,C.jsxs)(`div`,{className:`grid gap-1.5`,children:[(0,C.jsx)(x,{htmlFor:`new-skill-description`,children:`Description`}),(0,C.jsx)(y,{id:`new-skill-description`,value:z,placeholder:`What this skill does and when to use it`,onChange:e=>B(e.target.value)})]})]}),(0,C.jsxs)(se,{children:[(0,C.jsx)(v,{variant:`outline`,onClick:()=>I(!1),children:`Cancel`}),(0,C.jsx)(v,{onClick:Pe,disabled:L.trim().length===0||z.trim().length===0,children:`Create`})]})]})}),(0,C.jsx)(g,{open:Se,onOpenChange:G,children:(0,C.jsxs)(ce,{className:`flex max-h-[80vh] flex-col sm:max-w-2xl`,children:[(0,C.jsxs)(m,{children:[(0,C.jsx)(h,{children:`Browse skills.sh`}),(0,C.jsxs)(p,{children:[`Search the`,` `,(0,C.jsx)(`a`,{href:`https://skills.sh`,target:`_blank`,rel:`noreferrer`,className:`text-primary underline-offset-2 hover:underline`,children:`skills.sh`}),` `,`registry and install into the`,` `,t?.name??e,` workspace. Skills run with full agent permissions — review before use.`]})]}),(0,C.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:e=>{e.preventDefault(),Re()},children:[(0,C.jsx)(y,{autoFocus:!0,value:K,placeholder:`Search skills (e.g. react, deploy, postgres)…`,onChange:e=>Ce(e.target.value)}),(0,C.jsxs)(v,{type:`submit`,disabled:q||K.trim().length===0,children:[q?(0,C.jsx)(w,{className:`size-4`}):(0,C.jsx)(ae,{className:`size-4`}),`Search`]})]}),ke&&(0,C.jsx)(`div`,{className:`rounded-md border border-destructive/40 bg-destructive/10 px-3 py-2 text-sm whitespace-pre-wrap text-destructive`,children:ke}),(0,C.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-auto`,children:[De&&we.length===0&&!q&&(0,C.jsxs)(`div`,{className:`py-10 text-center text-sm text-muted-foreground`,children:[`No skills found for “`,K.trim(),`”.`]}),(0,C.jsx)(`div`,{className:`flex flex-col gap-2`,children:we.map(e=>{let t=je.has(e.source);return(0,C.jsxs)(`div`,{className:`flex items-start gap-3 rounded-md border px-3 py-2`,children:[(0,C.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,C.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.name}),e.installs&&(0,C.jsx)(b,{variant:`outline`,className:`shrink-0`,children:e.installs})]}),(0,C.jsxs)(`div`,{className:`flex items-center gap-1 truncate text-xs text-muted-foreground`,children:[e.repo,e.url&&(0,C.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center hover:text-foreground`,children:(0,C.jsx)(te,{className:`size-3`})})]})]}),(0,C.jsx)(v,{size:`sm`,variant:t?`secondary`:`outline`,disabled:t||Y!==null,onClick:()=>ze(e.source),children:Y===e.source?(0,C.jsx)(w,{className:`size-4`}):t?`Installed`:(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(fe,{className:`size-3.5`}),` Install`]})})]},e.source)})})]})]})})]})}export{E as SkillsPage};
@@ -1 +0,0 @@
1
- import"./chunk-NNHCCRGN-DlpIbxXb.js";import{x as e}from"./mermaid-parser.core-C6nlL4jI.js";export{e as createArchitectureServices};
@@ -1 +0,0 @@
1
- import{at as e,ot as t}from"./chunk-CSCIHK7Q-BXW0kTPy.js";var n=(n,r)=>t.lang.round(e.parse(n)[r]);export{n as t};
@@ -1 +0,0 @@
1
- import{h as e}from"./src-D-NMWEou.js";import"./chunk-CSCIHK7Q-BXW0kTPy.js";import"./chunk-5ZQYHXKU-D9lXR7-a.js";import"./chunk-BSJP7CBP-DIpfLhEz.js";import"./chunk-L5ZTLDWV-CLjULdtO.js";import"./chunk-NZK2D7GU-DP_luiUT.js";import"./chunk-O5CBEL6O-DJ6oobwT.js";import"./chunk-3OPIFGDE-CWe0ghtO.js";import"./chunk-KSCS5N6A-su0hRnFY.js";import"./chunk-LZXEDZCA-DSupe1kd.js";import"./chunk-FMBD7UC4-C9D6P7Uq.js";import"./chunk-ND2GUHAM-DVaKW6-I.js";import"./chunk-55IACEB6-QyFAFTWp.js";import"./chunk-2J33WTMH-CxE9IMxF.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-1INZms_u.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import{h as e}from"./src-D-NMWEou.js";import"./chunk-CSCIHK7Q-BXW0kTPy.js";import"./chunk-5ZQYHXKU-D9lXR7-a.js";import"./chunk-BSJP7CBP-DIpfLhEz.js";import"./chunk-L5ZTLDWV-CLjULdtO.js";import"./chunk-NZK2D7GU-DP_luiUT.js";import"./chunk-O5CBEL6O-DJ6oobwT.js";import"./chunk-3OPIFGDE-CWe0ghtO.js";import"./chunk-KSCS5N6A-su0hRnFY.js";import"./chunk-LZXEDZCA-DSupe1kd.js";import"./chunk-FMBD7UC4-C9D6P7Uq.js";import"./chunk-ND2GUHAM-DVaKW6-I.js";import"./chunk-55IACEB6-QyFAFTWp.js";import"./chunk-2J33WTMH-CxE9IMxF.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-1INZms_u.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./chunk-NNHCCRGN-DlpIbxXb.js";import{y as e}from"./mermaid-parser.core-C6nlL4jI.js";export{e as createEventModelingServices};