@covro/covro 0.2.1-dev.2 → 0.2.1-dev.3

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 (104) hide show
  1. package/README.md +3 -1
  2. package/README.zh-CN.md +3 -1
  3. package/dist/web/assets/abnfDiagram-WEYOIA3C-6n1mVJ0V.js +1 -0
  4. package/dist/web/assets/arc-DFIzIYgQ.js +1 -0
  5. package/dist/web/assets/architecture-WOLXFQ4H-CoZpoP0F.js +1 -0
  6. package/dist/web/assets/architectureDiagram-ZHVYKT53-LcqVhgRh.js +36 -0
  7. package/dist/web/assets/array-BifhSqXX.js +1 -0
  8. package/dist/web/assets/blockDiagram-RJAE7QA3-CnVQsmM8.js +140 -0
  9. package/dist/web/assets/c4Diagram-XDPPPE54-C38UO-rV.js +38 -0
  10. package/dist/web/assets/channel-CV6Myu73.js +1 -0
  11. package/dist/web/assets/chunk-2E7WHVMD-SlpXCVVC.js +88 -0
  12. package/dist/web/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  13. package/dist/web/assets/chunk-4EMNKR2T-BPJa0lfJ.js +1 -0
  14. package/dist/web/assets/chunk-55XCU76K-CkP_cE5N.js +1 -0
  15. package/dist/web/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  16. package/dist/web/assets/chunk-7S6XSTFO-BnrWU32l.js +2 -0
  17. package/dist/web/assets/chunk-AQDTSKZB-J2M9tBY-.js +72 -0
  18. package/dist/web/assets/chunk-DSNLSHJZ-ClfNpgVO.js +129 -0
  19. package/dist/web/assets/chunk-DUW6YSOI-Dgx8z5s3.js +1 -0
  20. package/dist/web/assets/chunk-HAGFOTED-k7XcZqWB.js +62 -0
  21. package/dist/web/assets/chunk-HNE4Q36P-DHHenyG4.js +1 -0
  22. package/dist/web/assets/chunk-J5ZVWO5B-oDCd-gWO.js +1 -0
  23. package/dist/web/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  24. package/dist/web/assets/chunk-NGNAAXSQ-C2Wy9Xmz.js +136 -0
  25. package/dist/web/assets/chunk-NQOKRVIF-CkA3TLYc.js +213 -0
  26. package/dist/web/assets/chunk-UHW7PFBP-DSLKZJoJ.js +1 -0
  27. package/dist/web/assets/chunk-VQ5W62QI-BBkSWILl.js +1 -0
  28. package/dist/web/assets/chunk-WQQL4CDK-BeKgda0U.js +10 -0
  29. package/dist/web/assets/chunk-XXDRQBXY-BC-ozzjn.js +1 -0
  30. package/dist/web/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  31. package/dist/web/assets/chunk-YZO67HFG-C19e3AP5.js +1 -0
  32. package/dist/web/assets/chunk-ZAUX2LTX-C03NsQfr.js +1 -0
  33. package/dist/web/assets/chunk-ZCHMQSOR-CrXzPEWh.js +2 -0
  34. package/dist/web/assets/classDiagram-v2-4MYWR3UA-DCbxTUm6.js +217 -0
  35. package/dist/web/assets/cose-bilkent-JH36ORCC-CQZjK1BR.js +1 -0
  36. package/dist/web/assets/cynefin-EF2NZ3EQ-i1jWxeqI.js +1 -0
  37. package/dist/web/assets/cynefinDiagram-WF24UDRP-DfVYiPE9.js +62 -0
  38. package/dist/web/assets/cytoscape.esm-BegBNzOV.js +321 -0
  39. package/dist/web/assets/dagre-NK4GIZVX-OhkyZBvK.js +4 -0
  40. package/dist/web/assets/defaultLocale-BFoDCU3G.js +1 -0
  41. package/dist/web/assets/diagram-CBK3MWTC-CXdVEIne.js +24 -0
  42. package/dist/web/assets/diagram-I5XIIV2D-BjrxVPW0.js +24 -0
  43. package/dist/web/assets/diagram-ODIL2UCW-C5BpAqPG.js +30 -0
  44. package/dist/web/assets/diagram-PFBEJUXE-3yWOE5ZP.js +3 -0
  45. package/dist/web/assets/diagram-RJA3I4VV-DdRZojn9.js +41 -0
  46. package/dist/web/assets/diagram-TYUNFSNR-m_gnI0-3.js +200 -0
  47. package/dist/web/assets/dist-DMGebNoK.js +1 -0
  48. package/dist/web/assets/ebnfDiagram-V4P3TTPT-CVwc9K-O.js +1 -0
  49. package/dist/web/assets/elk-QONTBCTQ-BDC-J8E3.js +27 -0
  50. package/dist/web/assets/erDiagram-KYQIGQAA-D-dqUb0a.js +99 -0
  51. package/dist/web/assets/eventmodeling-K75KTNOO-ByZ_MfSZ.js +1 -0
  52. package/dist/web/assets/flowDiagram-IUGLLWBU-CiUTloqN.js +1 -0
  53. package/dist/web/assets/ganttDiagram-R7GPNTJY-BHzyPnqV.js +292 -0
  54. package/dist/web/assets/gitGraph-VSP46ZUC-DQhxrj3o.js +1 -0
  55. package/dist/web/assets/gitGraphDiagram-PDYL7XHY-8M2oNXTx.js +106 -0
  56. package/dist/web/assets/graphlib-DS17s2tU.js +1 -0
  57. package/dist/web/assets/index-DYwdlB-_.js +142 -0
  58. package/dist/web/assets/index-TP24ydrn.css +1 -0
  59. package/dist/web/assets/info-OHQRW6UA-717A6Kfa.js +1 -0
  60. package/dist/web/assets/infoDiagram-MVDRKAX5-D-fxOvE-.js +2 -0
  61. package/dist/web/assets/init-C-OQMol4.js +1 -0
  62. package/dist/web/assets/ishikawaDiagram-HPEHV2GE-CKrXOGrR.js +70 -0
  63. package/dist/web/assets/journeyDiagram-BOSHW7O7-BLD4lmI6.js +139 -0
  64. package/dist/web/assets/kanban-definition-FNSA4HC5-Mj1GI5Fb.js +89 -0
  65. package/dist/web/assets/katex-B_JcIwqj.js +257 -0
  66. package/dist/web/assets/line-DotNyRbu.js +1 -0
  67. package/dist/web/assets/linear-DQ0Uvp2K.js +1 -0
  68. package/dist/web/assets/mermaid-parser.core-BtFC_UVn.js +7 -0
  69. package/dist/web/assets/mermaid.core-DHL14mKq.js +44 -0
  70. package/dist/web/assets/mindmap-definition-6OY57UG3-CMCguBhk.js +98 -0
  71. package/dist/web/assets/ordinal-BDEzSJ7C.js +1 -0
  72. package/dist/web/assets/packet-JDAUHWVQ-CGyEqUmo.js +1 -0
  73. package/dist/web/assets/path-fybaL0A-.js +1 -0
  74. package/dist/web/assets/pegDiagram-ECIUJNBX-DPgLxTHJ.js +1 -0
  75. package/dist/web/assets/pie-XZMESJXO-Ddsl6geS.js +1 -0
  76. package/dist/web/assets/pieDiagram-GNMPY74T-BJdkqrU_.js +39 -0
  77. package/dist/web/assets/quadrantDiagram-D57K4MC3-47l23gov.js +7 -0
  78. package/dist/web/assets/radar-ABXABTNO-DAyB1li0.js +1 -0
  79. package/dist/web/assets/railroad-I3PHUGI6-BZYuBfPR.js +1 -0
  80. package/dist/web/assets/railroad-abnf-LNEFI6M7-PBkoxIWP.js +1 -0
  81. package/dist/web/assets/railroad-ebnf-DWYD2UWJ-Bl_rTgpR.js +1 -0
  82. package/dist/web/assets/railroad-peg-JR7BVNR7-U9kj7aP3.js +1 -0
  83. package/dist/web/assets/railroadDiagram-Y72NRBL7-Dpq4us5_.js +1 -0
  84. package/dist/web/assets/requirementDiagram-EQYSW5RA-CCqQbcTz.js +84 -0
  85. package/dist/web/assets/rough.esm-Dy-Kn_BL.js +1 -0
  86. package/dist/web/assets/sankeyDiagram-SY24JHO5-DDwytZM3.js +40 -0
  87. package/dist/web/assets/sequenceDiagram-BLEHNHQU-C-z57Y06.js +169 -0
  88. package/dist/web/assets/sizeCapture-INFHLROL-3uHXrFqA.js +1 -0
  89. package/dist/web/assets/src-CK51kAyQ.js +1 -0
  90. package/dist/web/assets/stateDiagram-v2-A6IESKWZ-DgTp0O6g.js +291 -0
  91. package/dist/web/assets/swimlanes-B3ENRKFQ-BiyS7wH3.js +1 -0
  92. package/dist/web/assets/swimlanesDiagram-AYQRV4AK-DJ90Jhqq.js +8 -0
  93. package/dist/web/assets/timeline-definition-JXYKGLGB-D_PAPA8Z.js +120 -0
  94. package/dist/web/assets/treeView-D4JQ5SDB-m1fbOydD.js +1 -0
  95. package/dist/web/assets/treemap-SAJKECNS-Bxt7Udu9.js +1 -0
  96. package/dist/web/assets/usecaseDiagram-WPOLBNNX-BTrMcoPL.js +328 -0
  97. package/dist/web/assets/vennDiagram-Q3Y3IDCW-C_kOOxPJ.js +34 -0
  98. package/dist/web/assets/wardley-7MLQ67FV-C33rdYbB.js +1 -0
  99. package/dist/web/assets/wardleyDiagram-IVAIDKWA-DpG2rl09.js +78 -0
  100. package/dist/web/assets/xychartDiagram-4URNHDU4-5a7LnsSZ.js +7 -0
  101. package/dist/web/index.html +2 -2
  102. package/package.json +4 -3
  103. package/dist/web/assets/index-D4yT2i6A.js +0 -140
  104. package/dist/web/assets/index-Du6go0-C.css +0 -1
@@ -0,0 +1 @@
1
+ .collapsible-activity{--activity-sticky-offset:var(--conversation-sticky-offset,0px);--activity-surface:#fbfcfb;overflow:clip}.collapsible-activity.activity-failed{--activity-surface:#fff5f3}.collapsible-activity>summary{background:var(--activity-surface);border-radius:6px}.collapsible-activity[open]>summary{top:var(--activity-sticky-offset);z-index:1;border-bottom-right-radius:0;border-bottom-left-radius:0;position:sticky;box-shadow:0 1px #e8ebea}.collapsible-activity>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.activity-collapse-hint{flex-shrink:0;font-size:10px;display:none}.collapsible-activity[open]>summary>.activity-collapse-hint{display:inline}.collapsible-activity-group{--activity-group-header-height:44px}.collapsible-activity-group>summary{min-height:44px}.collapsible-activity-group[open]>summary{z-index:2}.collapsible-activity-group .collapsible-activity{--activity-sticky-offset:calc(var(--conversation-sticky-offset,0px) + var(--activity-group-header-height))}.activity-group{--activity-surface:#f5f8f6;background:#fbfcfb;border:1px solid #e8ebea;border-radius:7px;min-width:0;margin:10px 0}.activity-group>summary{color:#7b8780;background:#f5f8f6;align-items:center;gap:8px;padding:11px 12px;font-size:11px;list-style:none;display:flex}.activity-group>summary>svg{flex-shrink:0}.activity-group>summary::-webkit-details-marker{display:none}.auto-review-card>summary::-webkit-details-marker{display:none}.activity-group[open]>summary>svg:last-child,.auto-review-card[open]>summary>svg:last-child{transform:rotate(90deg)}.activity-group>summary .activity-description{flex:1}.activity-group-reviews{color:#7b8780;flex-shrink:0;font-size:10px}.activity-group-status{color:#7b8780;flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:3px 8px;max-width:55%;font-size:10px;display:flex}.activity-group-status>span{white-space:nowrap}.activity-group-running{color:#55785f;font-weight:600}.activity-group-problem{color:var(--destructive);font-weight:600}.activity-group-attention{color:#8b6726;font-weight:600}.activity-group-items{border-top:1px solid #e8ebea;min-width:0;padding:1px 10px}.activity-group-items>.activity,.activity-group-items>.auto-review-card{margin:9px 0}.auto-review-card.collapsible-activity{--activity-surface:#fafcfb;padding:0}.auto-review-card.auto-review-inProgress,.auto-review-card.auto-review-timedOut{--activity-surface:#fdfbf5}.auto-review-card.auto-review-denied{--activity-surface:#fff6f4}.auto-review-card.collapsible-activity>summary{min-height:44px;color:inherit;align-items:center;gap:8px;padding:11px 12px;font-size:11px;list-style:none;display:flex}.auto-review-card.collapsible-activity .activity-description{flex:1}.auto-review-card.auto-review-denied>summary{color:#ae4c42}.auto-review-card.auto-review-inProgress>summary,.auto-review-card.auto-review-timedOut>summary{color:#8f7135}.auto-review-body{font-size:11px}@media (width<=760px){.activity-group-reviews,.activity-group>summary .command-summary{display:none}.activity-group>summary{gap:6px}.activity-group-status{gap:2px 6px;max-width:58%;font-size:9px}.activity-group-items{padding-inline:6px}}.shell-panel{border-top:1px solid var(--border);background:var(--surface,#fff);flex-direction:column;flex:none;min-height:0;max-height:60dvh;display:flex}.main-panel.shell-visible{overflow:hidden}.main-panel.shell-visible .conversation-area{min-height:0}.main-panel.shell-visible>.bottom-region{flex-shrink:1;min-height:0;max-height:22dvh}.main-panel.shell-visible .composer-box textarea{--composer-min-height:48px;--composer-max-height:90px;padding-top:9px}.shell-header{flex-shrink:0}.shell-header,.shell-heading,.shell-actions,.shell-result-toolbar,.shell-submit-row{align-items:center;gap:10px;display:flex}.shell-header{justify-content:space-between;padding:7px 24px}.shell-heading{min-width:0;font-size:12px}.shell-heading>span{text-overflow:ellipsis;white-space:nowrap;color:#737d87;overflow:hidden}.shell-heading .shell-running{color:#25724b;flex-shrink:0}.shell-body{flex:1;min-height:0;padding:0 24px 14px;overflow:auto}.shell-location{color:#737d87;align-items:baseline;gap:10px;font-size:11px;display:flex}.shell-location>span{flex-shrink:0}.shell-location code{overflow-wrap:anywhere;color:#3f4c58}.shell-help,.shell-collapsed-note,.shell-background{color:#737d87;margin:6px 0 10px;font-size:11px;line-height:1.6}.shell-collapsed-note{margin:-3px 24px 8px}.shell-background{color:#2f7255}.shell-warning{color:#975327;overflow-wrap:anywhere;background:#fff6e9;border-radius:6px;margin:6px 0;padding:7px 10px;font-size:12px;line-height:1.6}.shell-result{border:1px solid #dce2e5;border-radius:8px;overflow:hidden}.shell-result-toolbar{background:#f5f7f8;justify-content:space-between;padding:5px 10px}.shell-result-toolbar label{color:#737d87;flex:1;align-items:center;gap:8px;min-width:0;font-size:10px;display:flex}.shell-result-toolbar select{color:#3f4c58;min-width:0;max-width:100%;font:inherit;background:0 0;border:0;flex:1;padding:4px;font-size:11px}.shell-result-toolbar button{flex-shrink:0}.shell-command-line{color:#e2eaf0;background:#18212b;gap:10px;padding:10px 12px 0;font-size:12px;display:flex}.shell-command-line>span{color:#81c9a1}.shell-command-line code{white-space:pre-wrap;overflow-wrap:anywhere}.shell-output{color:#e2eaf0;white-space:pre-wrap;overflow-wrap:anywhere;background:#18212b;height:110px;margin:0;padding:10px 12px 16px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.shell-stderr{color:#ffb6a9}.shell-output-empty{color:#9aaaba}.shell-result-status{color:#3f6b52;background:#f5f7f8;flex-wrap:wrap;gap:14px;padding:6px 12px;font-size:11px;display:flex}.shell-status-failed,.shell-status-unknown{color:#a94f35}.shell-empty{text-align:center;color:#737d87;padding:20px 12px;font-size:12px}.shell-empty p{margin:7px 0}.shell-empty>span{font-size:11px}.shell-form{margin-top:10px}.shell-form textarea{box-sizing:border-box;resize:vertical;color:#28333d;background:#fff;border:1px solid #dce2e5;border-radius:7px;width:100%;max-height:120px;padding:9px 11px;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.shell-form textarea:focus{outline-offset:1px;outline:2px solid #8ba99a}.shell-submit-row{justify-content:space-between;margin-top:7px}.shell-submit-row>span{color:#737d87;font-size:10px}.shell-entry{gap:5px}.shell-entry-count{color:#2d6d48;background:#e5f2e9;border-radius:8px;padding:0 5px}.topbar{position:relative}.topbar .diagnostics-panel{top:calc(100% - 6px)}@media (width<=760px){.main-panel.shell-visible>.bottom-region{display:none}.shell-panel{max-height:70dvh}.shell-header{padding:5px 12px}.shell-body{padding:0 12px 10px}.shell-collapsed-note{margin-left:12px}.shell-output{height:110px}.shell-submit-row{gap:6px}.shell-submit-row>span{max-width:58%;line-height:1.5}.shell-entry{padding:6px}}:root{color:#252b32;font-synthesis:none;--border:#e6e8eb;--muted:#7b838c;--accent:#13765d;--accent-soft:#eaf4ef;--sidebar:#f7f8fa;--destructive:#ae3e39;background:#fff;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,summary,select{-webkit-tap-highlight-color:transparent}button,select,summary{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed;opacity:.5}button,input,textarea,select,summary,a{outline-offset:3px}:focus-visible{outline:2px solid #18866b}a{color:var(--accent);text-underline-offset:3px}p{line-height:1.7}h1,h2,h3,p{margin-top:0}pre,code,.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.7;overflow-x:auto}svg{vertical-align:middle;flex-shrink:0}.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 13px;font-size:13px;font-weight:550;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.button-primary{color:#fff;background:#243d34;border-color:#243d34}.button-primary:hover:not(:disabled){background:#315346}.button-secondary{color:#343c43;background:#fff;border-color:#dde1e4;box-shadow:0 1px 2px #00000004}.button-secondary:hover:not(:disabled){background:#f4f6f5;border-color:#bfc7c2}.button-ghost{color:#727b85;background:0 0}.button-ghost:hover:not(:disabled){color:#35443d;background:#edf0ef}.button-destructive{color:#fff;background:#ae3e39}.button-small{min-height:32px;padding:6px 10px;font-size:12px}.button-icon{width:32px;height:32px;min-height:32px;padding:6px}.app-shell{height:100dvh;display:flex;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--sidebar);flex-direction:column;flex-shrink:0;width:292px;padding:16px 12px 18px;display:flex}.sidebar-header{flex-shrink:0;min-width:0}.brand{letter-spacing:-.7px;align-items:center;gap:8px;margin-bottom:12px;padding:0 2px;font-size:18px;font-weight:700;display:flex}.brand-mark{flex-shrink:0;width:28px;height:28px}.brand-mark img{display:block}.brand-name{flex:1;min-width:0}.brand>.button{flex-shrink:0}.project-search{margin-bottom:8px}.eyebrow{color:#9a9fa5;letter-spacing:1px;font-size:11px;font-weight:600;display:block}.project-search input{color:#303b35;background:#fff;border:1px solid #dce1e3;border-radius:8px;width:100%;min-width:0;min-height:36px;padding:8px 10px;font-size:12px}.project-search input::placeholder{color:#939ba2}.sidebar-toolbar{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.project-list{overscroll-behavior:contain;flex:1;min-height:0;margin:4px -6px;padding:0 6px;scroll-padding-top:40px;overflow:hidden auto}.add-project{margin:0}.project-group{border-top:1px solid var(--border);padding:12px 0 16px}.project-group:first-child{border-top:0}.project-heading{z-index:2;background:var(--sidebar);align-items:center;gap:3px;margin:0;font-size:13px;display:flex;position:sticky;top:0}.project-heading>.control-hint{flex-shrink:0}.project-heading>.button,.project-heading>.control-hint>.button{color:#7b8881;flex-shrink:0}.project-link{color:#55635b;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;flex:1;align-items:center;gap:8px;width:100%;min-width:0;padding:8px;font-weight:600;display:flex}.project-dialog{border:1px solid var(--border);color:#303b35;background:#fff;border-radius:16px;width:min(500px,100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:22px;overflow-y:auto;box-shadow:0 20px 80px #172a2233}.project-dialog::backdrop{background:#172a2255}.project-dialog-heading,.project-dialog-heading>div{align-items:center;gap:10px;display:flex}.project-dialog-heading{justify-content:space-between;margin-bottom:12px}.project-dialog h2{margin:0;font-size:18px;font-weight:600}.project-dialog form>p{color:#748078;font-size:13px}.project-field{flex-direction:column;gap:8px;margin-top:19px;font-size:13px;font-weight:550;display:flex}.project-field input{color:#303b35;background:#fff;border:1px solid #d5ddd8;border-radius:8px;width:100%;min-width:0;min-height:42px;padding:10px 12px;font-size:14px}.project-field input::placeholder{color:#99a19c}.project-field small{color:#7b867f;font-size:12px;font-weight:400;line-height:1.7}.project-directory{background:#f4f7f5;border-radius:8px;flex-direction:column;gap:7px;padding:12px;font-size:12px;display:flex}.project-directory span{color:#748078}.project-directory code{overflow-wrap:anywhere;line-height:1.7}.project-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:25px;display:flex}.project-dialog-actions .project-remove-button{color:var(--destructive);margin-right:auto}.project-dialog form>.project-dialog-error{color:var(--destructive);overflow-wrap:anywhere;margin:16px 0 0}.project-removal-note{color:#687568;background:#f8f9f5;border:1px solid #e6e8df;border-radius:8px;padding:14px;font-size:13px}.project-removal-note p:last-child{margin-bottom:0}.project-link>span:first-of-type{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.project-link:hover{background:#eef0f2}.project-activity{color:#236443;text-align:center;background:#dcebe1;border-radius:10px;flex-shrink:0;min-width:19px;margin-left:auto;padding:2px 5px;font-size:10px}.project-error{overflow-wrap:anywhere;margin:8px}.thread-list{min-width:0}.thread-link{text-align:left;color:#879088;background:0 0;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:6px;width:100%;min-height:36px;padding:8px 10px;display:flex}.thread-link:hover{background:#eef0f2}.thread-link>svg{margin-top:1px}.thread-selected{color:#446451;background:#ebefec}.thread-selected:hover{background:#e7ece8}.thread-link-content{flex:1;min-width:0}.thread-title{color:#4d555e;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;line-height:18px;display:block;overflow:hidden}.thread-selected .thread-title{color:#244734}.sidebar-empty{color:#9aa1a7;margin-bottom:0;padding:10px 12px;font-size:12px}.thread-pagination{text-align:center;flex-direction:column;display:flex}.sidebar-pagination-status,.load-more{border:1px solid #0000;margin:0;padding:2px 12px;font-size:11px;font-weight:400;line-height:16px}.sidebar-pagination-status,.load-more:disabled{color:#969da4}.load-more{justify-content:center;width:100%;min-height:22px}.load-more:disabled{opacity:1;cursor:wait}.load-more-error{color:#966724;background:#fbf5e9}.load-more-error:hover:not(:disabled){color:#80571d;background:#f5ead4}.sidebar-footer{border-top:1px solid var(--border);margin:18px 8px 0;padding-top:16px;position:relative}.privacy-mark{color:#66786c;align-items:center;gap:6px;font-size:11px;display:flex}.notification-settings-button{justify-content:flex-start;height:24px;min-height:24px;padding:2px 5px;font-size:11px;position:absolute;top:12px;right:0}.notification-settings-status{color:#748078;font-size:10px}.notification-dialog>p,.gateway-intro,.gateway-help,.gateway-review>p,.gateway-conflict p,.notification-background{color:#66786c;font-size:13px;line-height:1.7}.gateway-settings-button{height:26px;min-height:26px;margin:-5px 0 10px -5px;padding:3px 5px;font-size:12px}.gateway-settings-button~.notification-settings-button{top:11px}.gateway-dialog{width:min(800px,100vw - 24px);padding:24px}.gateway-dialog .project-dialog-heading{z-index:2;background:#fff;margin:-1px -1px 12px;padding:8px 0;position:sticky;top:-24px}.gateway-file{border:1px solid var(--border);background:#f7f9f7;border-radius:9px;gap:5px;padding:12px 14px;font-size:12px;display:grid}.gateway-file span{color:#748078}.gateway-file code,.gateway-changes span{overflow-wrap:anywhere;white-space:pre-wrap}.gateway-status{color:#375e47;background:#edf5ee;border-radius:9px;gap:6px;margin:14px 0;padding:12px 14px;font-size:12px;display:grid}.gateway-status[data-pending=true]{color:#795d20;background:#faf2dc}.gateway-tools{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.gateway-section{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.gateway-section h3,.gateway-section>summary,.gateway-review h3{color:#354e40;margin:0;font-size:14px;font-weight:600}.gateway-section>summary{cursor:pointer}.gateway-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 22px;display:grid}.gateway-fields .project-field{min-width:0;margin-top:15px}.gateway-fields textarea,.gateway-fields select{color:#303b35;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #d5ddd8;border-radius:8px;padding:10px 12px;font-weight:400}.gateway-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.gateway-dialog input:disabled,.gateway-dialog textarea:disabled,.gateway-dialog select:disabled{opacity:.65}.project-field .gateway-running{color:#8a6a2d;overflow-wrap:anywhere;white-space:pre-wrap;border-left:2px solid #b8954c;padding-left:8px}.gateway-error,.gateway-notice{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;padding:12px;font-size:12px;line-height:1.8}.gateway-error{color:#a5372f;background:#fff0ed}.gateway-notice{color:#375e47;background:#edf5ee}.gateway-save-bar{border-top:1px solid var(--border);color:#748078;background:#fff;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:14px 0 8px;font-size:12px;display:flex;position:sticky;bottom:-24px}.gateway-review{margin-top:24px}.gateway-changes{gap:10px;display:grid}.gateway-changes>div{border:1px solid var(--border);border-radius:9px;gap:8px;padding:14px;font-size:12px;display:grid}.gateway-changes span{color:#66786c}.gateway-json{margin-top:18px;font-size:12px}.gateway-json pre{background:#f7f9f7;max-height:300px;padding:14px;overflow:auto}@media (width<=600px){.gateway-dialog{padding:18px}.gateway-fields{grid-template-columns:minmax(0,1fr)}.gateway-dialog .project-dialog-heading{top:-18px}.gateway-save-bar{bottom:-18px}}.notification-control{border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding:14px;display:flex}.notification-control>div{flex-direction:column;gap:5px;min-width:0;font-size:13px;display:flex}.notification-control span{color:#748078;font-size:12px}.notification-control .button{flex-shrink:0}.notification-dialog .notification-help{font-size:12px}.notification-background{border-top:1px solid var(--border);margin-top:22px;padding-top:16px}.notification-background h3{color:#303b35;margin:0;font-size:13px}.notification-background summary{cursor:pointer;color:#405e4c}.notification-background ul{padding-left:20px}.notification-background li+li{margin-top:8px}.notification-background a{color:#337052;margin-left:5px;text-decoration:underline}.privacy-mark:before{content:"";background:#739c82;border-radius:50%;width:5px;height:5px}.sidebar-footer p{color:#a1a6ac;margin:7px 0 0;font-size:10px}.main-panel{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.topbar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;min-height:84px;padding:20px 32px;display:flex}.topbar-title{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.topbar-title>div{flex:1;min-width:0}.breadcrumb{color:#899199;align-items:center;gap:7px;margin-bottom:6px;font-size:10px;display:flex}.breadcrumb span{color:#a5aab0}.topbar h1{white-space:nowrap;text-overflow:ellipsis;max-width:360px;margin:0;font-size:15px;font-weight:550;overflow:hidden}.topbar-status{align-items:center;gap:17px;font-size:11px;display:flex}.thread-title-editor{min-width:0;max-width:480px}.thread-title-editor .thread-title-hint{display:block}.thread-title-editor h1:not(.sr-only){overflow:visible}.thread-title-trigger{max-width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:3px 0;display:flex}.thread-title-trigger span{text-overflow:ellipsis;overflow:hidden}.thread-title-trigger svg{color:var(--muted);flex-shrink:0}.thread-title-trigger:hover,.thread-title-trigger:focus-visible{color:var(--accent)}.thread-title-trigger[aria-disabled=true]{cursor:default;color:inherit}.thread-title-fields{align-items:center;gap:6px;display:flex}.thread-title-fields input{border:1px solid var(--border);width:100%;min-width:0;color:inherit;font:inherit;background:#fff;border-radius:7px;padding:7px 9px;font-size:15px}.thread-title-fields .button{flex-shrink:0}.thread-title-help,.thread-title-error{overflow-wrap:anywhere;margin:6px 0 0;font-size:11px;line-height:1.5}.thread-title-help{color:var(--muted)}.thread-title-error{color:var(--destructive)}.status{color:#828a90;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.status-running,.status-completed{color:#56866a}.status-waitingApproval,.status-waitingInput,.status-unknown{color:#ad7d26}.status-failed{color:#ac534e}.connection-badge{color:#8b949b;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.connection-connected .status-dot{color:#6c997f}.connection-disconnected,.connection-authenticationRequired{color:#ab6c33}.connection-banner,.compatibility-banner,.demo-banner{color:#8a733b;background:#f8f4e9;flex-shrink:0;padding:8px 30px;font-size:12px}.compatibility-notice{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.compatibility-notice>span{flex:1;min-width:180px;line-height:1.65}.compatibility-dialog{color:#42463d;background:#fffefb;border:1px solid #ddd8c8;border-radius:14px;width:min(520px,100vw - 32px);max-height:calc(100dvh - 40px);padding:24px;overflow-y:auto;box-shadow:0 20px 80px #172a2233}.compatibility-dialog::backdrop{background:#172a2255}.compatibility-dialog-heading{color:#8b7037;align-items:center;gap:10px;display:flex}.compatibility-dialog h2{margin:0;font-size:17px;font-weight:600}.compatibility-dialog>p{margin:17px 0;font-size:13px;line-height:1.8}.compatibility-dialog dl{background:#f7f5ed;border-radius:7px;padding:14px;font-size:12px}.compatibility-dialog dt{color:#817d6b}.compatibility-dialog dd{color:#514f43}.compatibility-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.compatibility-uncertain{background:#fcf8ed;border:1px solid #e6ddc6;border-radius:7px;padding:12px;font-size:12px}.compatibility-uncertain p{margin-bottom:10px}.connection-banner{justify-content:space-between;align-items:center;gap:10px;display:flex}.demo-banner{color:#6476a6;text-align:center;background:#eef1fa;padding:6px;font-size:10px}.error-banner{color:#a75248;overflow-wrap:anywhere;background:#fff5f3;border:1px solid #efd6d3;border-radius:7px;align-items:center;gap:10px;margin:12px 0;padding:11px 13px;font-size:12px;line-height:1.6;display:flex}.error-banner.dismissible{justify-content:space-between;margin:10px 30px 0}.persistent-banner{flex-shrink:0;margin:10px 30px 0}.persistent-banner a{margin-left:auto}.conversation-area{flex-direction:column;flex:1;min-height:100px;display:flex;position:relative}.conversation-viewport{--conversation-sticky-offset:0px;--prompt-sticky-height:40px;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.conversation-scroll{overscroll-behavior:contain;scroll-behavior:auto;flex:1;min-height:0;overflow-y:auto}.conversation-content,.sticky-prompt-slot{width:min(100%,872px);margin:0 auto}.conversation-content{padding:30px 38px 25px}.conversation-viewport:has(.sticky-prompt){--conversation-sticky-offset:var(--prompt-sticky-height)}.conversation-viewport:has(.sticky-prompt) .conversation-scroll{scroll-padding-top:calc(var(--conversation-sticky-offset) + 8px)}.sticky-prompt-slot{z-index:3;height:0;padding-inline:38px;position:absolute;top:0;left:0;right:0}.sticky-prompt{width:100%;height:var(--prompt-sticky-height);min-height:var(--prompt-sticky-height);background:var(--accent-soft);color:#284d3f;text-align:left;border:1px solid #dce7e0;border-top:0;border-radius:0 0 8px 8px;gap:10px;padding:0 12px;line-height:20px;box-shadow:0 2px 5px #243d2810}.sticky-prompt:hover{background:#e5eee8}.sticky-prompt-label,.sticky-prompt>svg{flex-shrink:0}.sticky-prompt-label{color:var(--accent);font-size:10px;font-weight:600}.sticky-prompt-text{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;font-weight:400;overflow:hidden}.context-compaction-pinned{flex-shrink:0;width:min(100%,872px);margin:0 auto;padding:14px 38px 0}.context-compaction{color:var(--muted);align-items:flex-start;gap:10px;margin:18px 0;font-size:12px;line-height:1.6;display:flex}.context-compaction>div{min-width:0}.context-compaction strong{font-weight:500}.context-compaction p{overflow-wrap:anywhere;margin:3px 0 0}.compaction-icon{flex-shrink:0;padding-top:1px;display:flex}.context-compaction-inProgress{color:#33665f;background:#f0f7f6;border:1px solid #c9dfdc;border-radius:10px;margin:0;padding:12px 14px}.context-compaction-inProgress .compaction-icon{animation:1.8s ease-in-out infinite compaction-pulse}.context-compaction-failed{color:#a75248}@keyframes compaction-pulse{50%{opacity:.4}}.codex-reconnect-pinned{flex-shrink:0;width:min(100%,872px);margin:0 auto;padding:14px 38px 0}.codex-reconnect{color:#79601f;background:#fff9e9;border:1px solid #eadbb0;border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:12px;line-height:1.6;display:flex}.codex-reconnect>svg{flex-shrink:0;margin-top:2px}.codex-reconnect-content{min-width:0}.codex-reconnect strong{font-weight:600}.codex-reconnect p{margin:4px 0 0}.codex-reconnect details{margin-top:5px;font-size:11px}.codex-reconnect-message{overflow-wrap:anywhere;white-space:pre-wrap;max-height:100px;overflow-y:auto}.codex-reconnect-failed{color:#a75248;background:#fff5f3;border-color:#efd6d3}.turn>.codex-reconnect{margin-bottom:24px}.empty-state{text-align:center;margin:max(4vh,30px) auto 30px;padding:28px 0}.empty-symbol{color:#58715f;background:#f3f5f2;border:1px solid #e9ede7;border-radius:23px;place-items:center;width:76px;height:76px;margin:0 auto 30px;display:grid;transform:rotate(-5deg);box-shadow:0 5px 15px #223b2404}.empty-state .eyebrow{color:#99a09a;margin-bottom:15px;font-size:10px}.empty-state h1{letter-spacing:-.8px;color:#343c35;margin-bottom:15px;font-size:clamp(21px,2.5vw,30px);font-weight:550}.empty-state>p:not(.eyebrow){color:#8d9599;font-size:12px;line-height:1.9}.empty-features{color:#a1a8a3;justify-content:center;gap:25px;padding-top:25px;font-size:10px;display:flex}.empty-features span{align-items:center;gap:6px;display:flex}.turn{padding-bottom:25px}.turn+.turn{border-top:1px solid #f0f1f3;padding-top:23px}.turn-heading{color:#a7adb2;justify-content:space-between;margin:0 0 24px 41px;font-size:10px;display:flex}.turn:has(>.turn-completion){padding-bottom:12px}.turn>:has(+.turn-completion){margin-bottom:0}.turn-completion{color:var(--muted);overflow-wrap:anywhere;margin:8px 0 0;font-size:11px;line-height:1.6}.turn-completion-status{white-space:nowrap}.turn-tps{white-space:nowrap;cursor:help;text-underline-offset:3px;-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.turn-completion-status svg{margin-right:5px}.reply-copy-controls{vertical-align:middle;align-items:center;gap:4px;max-width:100%;margin-left:6px;display:inline-flex}.reply-copy-button{width:28px;height:28px;min-height:28px;color:inherit;padding:5px}.reply-copy-feedback:empty{opacity:0}.reply-copy-failed{color:var(--destructive)}.message{margin-bottom:25px;display:flex}.message-content{flex:1;min-width:0;font-size:13px;line-height:1.9}.user-message{justify-content:flex-end}.user-message .message-content{background:var(--accent-soft);color:#284d3f;border-radius:18px;flex:0 auto;max-width:85%;padding:12px 18px}.user-text{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:0}.user-question-reply+.user-question-reply{margin-top:16px}.user-question-reply blockquote{color:#526b5e;white-space:pre-wrap;overflow-wrap:anywhere;border-left:3px solid #b5cfc0;margin:0 0 8px;padding-left:12px}.user-message:focus-visible{outline:none}.user-message:focus-visible .message-content{outline:2px solid var(--accent);outline-offset:3px}.markdown{color:#48515b;overflow-wrap:anywhere;line-height:1.85}.markdown p{margin-bottom:12px}.markdown p:last-child{margin-bottom:0}.markdown h1,.markdown h2,.markdown h3{color:#354139;margin:20px 0 10px;font-size:1.15em;font-weight:600}.markdown ul,.markdown ol{padding-left:23px}.markdown li{padding:3px 0}.markdown code{background:#f0f3f1;border-radius:3px;padding:2px 4px;font-size:11px}.markdown pre{border:1px solid var(--border);background:#f7f8f8;border-radius:7px;padding:13px 15px}.markdown pre code{background:0 0;padding:0}.markdown-code-block{border:1px solid var(--border);background:#f7f8f8;border-radius:7px;min-width:0;max-width:100%;margin:0 0 12px;position:relative}.markdown-code-block:last-child{margin-bottom:0}.markdown-code-toolbar{position:absolute;top:6px;right:6px}.code-copy-feedback{z-index:1;border:1px solid var(--border);width:max-content;max-width:min(260px,100vw - 64px);color:var(--accent);pointer-events:none;background:#fff;border-radius:6px;padding:6px 9px;font-size:12px;line-height:1.5;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 2px 8px #0000000d}.code-copy-feedback:empty{opacity:0}.code-copy-failed{color:#ae3e39}.markdown .markdown-code-block pre{white-space:pre;overflow-wrap:normal;outline-offset:-3px;border:0;margin:0 44px 0 0}.mermaid-block{border:1px solid var(--border);color:#48515b;background:#fff;border-radius:7px;min-width:0;max-width:100%;margin:0 0 12px;overflow:hidden}.mermaid-block:last-child{margin-bottom:0}.mermaid-toolbar{border-bottom:1px solid var(--border);background:#f7f8f8;flex-wrap:wrap;align-items:center;gap:4px;padding:6px 8px;display:flex}.mermaid-label{margin-right:auto;font-size:12px;font-weight:600}.mermaid-toolbar .button{min-height:32px;color:inherit;padding:5px 7px}.markdown .mermaid-notice,.markdown .mermaid-feedback{margin:0;padding:10px 14px;font-size:12px}.mermaid-error{color:#ae3e39}.mermaid-diagram{outline-offset:-3px;max-height:min(65vh,640px);padding:16px;overflow:auto}.mermaid-diagram img{height:auto;margin:0 auto;display:block}.mermaid-diagram.mermaid-actual-size img{max-width:none;margin:0}.markdown .mermaid-source{white-space:pre;overflow-wrap:normal;outline-offset:-3px;border:0;border-radius:0;max-height:min(65vh,640px);margin:0;overflow:auto}.mermaid-block[data-theme=dark]{color:#e2e8ee;background:#20252b;border-color:#46515b}.mermaid-block[data-theme=dark] .mermaid-toolbar,.mermaid-block[data-theme=dark] .mermaid-source{background:#252c33;border-color:#46515b}.mermaid-block[data-theme=dark] .mermaid-error{color:#ffb5af}.mermaid-block[data-theme=dark] .button-ghost:hover:not(:disabled),.mermaid-block[data-theme=dark] .button[aria-pressed=true]{background:#36424d}.markdown blockquote{color:#7b8780;border-left:3px solid #d4dfd6;margin-left:0;padding-left:15px}.markdown img{max-width:100%}.markdown-table-scroll{outline-offset:-2px;max-width:100%;margin:0 0 12px;overflow-x:auto}.markdown-table-scroll:last-child{margin-bottom:0}.markdown table{border-collapse:collapse;width:100%;min-width:480px}.markdown th,.markdown td{border:1px solid var(--border);vertical-align:top;min-width:6rem;padding:9px 12px}.markdown th{color:#354139;background:#f0f3f1;font-weight:600}.markdown th:not([align]){text-align:left}.markdown td code{white-space:nowrap}.markdown tbody tr:nth-child(2n){background:#fafcfb}.auto-review-card{color:#66756c;overflow-wrap:anywhere;background:#fafcfb;border:1px solid #e2e7e3;border-radius:7px;min-width:0;margin:10px 0 10px 40px;padding:12px 14px;font-size:11px}.auto-review-heading{align-items:center;gap:7px;margin-bottom:10px;display:flex}.auto-review-heading>svg{flex-shrink:0}.auto-review-heading h3{min-width:0;margin:0;font-size:11px;font-weight:600}.auto-review-status{color:#617267;white-space:nowrap;background:#edf1ee;border-radius:4px;flex-shrink:0;margin-left:auto;padding:3px 7px;font-size:10px;font-weight:600}.auto-review-inProgress,.auto-review-timedOut{background:#fdfbf5;border-color:#e8dfc9}.auto-review-inProgress .auto-review-heading,.auto-review-timedOut .auto-review-heading{color:#8f7135}.auto-review-inProgress .auto-review-status,.auto-review-timedOut .auto-review-status{color:#8b6726;background:#f5edd9}.auto-review-approved .auto-review-status{color:#41694c;background:#e9f2eb}.auto-review-denied{background:#fff6f4;border-color:#efd0cc}.auto-review-denied .auto-review-heading{color:#ae4c42}.auto-review-denied .auto-review-status{color:#a13e34;background:#fae5e1}.auto-review-operation{gap:5px;min-width:0;display:grid}.auto-review-operation>span{color:#66746b;font-weight:600}.auto-review-operation>code{color:#4e6154;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.6}.auto-review-rationale{margin-top:10px;line-height:1.6}.auto-review-rationale strong{font-weight:600}.auto-review-rationale p{color:#56655c;white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0 0}.auto-review-details{margin-top:10px;font-size:10px}.auto-review-details>summary{color:#839087}.auto-review-details dl{border-top:1px solid #e4e8e3;grid-template-columns:max-content minmax(0,1fr);gap:6px 12px;margin:10px 0 0;padding-top:10px;line-height:1.5;display:grid}.auto-review-details dt{color:#7c897f}.auto-review-details dd{color:#586b5d;overflow-wrap:anywhere;min-width:0;margin:0}.activity{background:#fbfcfb;border:1px solid #e8ebea;border-radius:7px;margin:10px 0 10px 40px;overflow:clip}.activity>summary{color:#7b8780;align-items:center;gap:8px;padding:11px 12px;font-size:11px;list-style:none;display:flex}.activity>summary::-webkit-details-marker{display:none}.activity-description{align-items:center;gap:8px;min-width:0;display:flex}.activity-label{white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:100%;overflow:hidden}.command-summary{white-space:nowrap;text-overflow:ellipsis;color:#a0a8a2;min-width:0;font-size:10px;overflow:hidden}.activity-status{color:#9ba79d;white-space:nowrap;flex-shrink:0;margin-left:auto;font-size:10px}.activity-failed{background:#fff5f3;border-color:#efd6d3}.activity-failed>summary,.activity-failed .activity-status{color:var(--destructive)}.activity-failed .activity-status{font-weight:600}.activity[open]>summary>svg:last-child{transform:rotate(90deg)}.activity-body{border-top:1px solid #ebeeeb;padding:13px;font-size:12px}.activity-body>:last-child{margin-bottom:0}.command,.tool-output{color:#506453;background:#f1f4f2;border-radius:5px;margin:8px 0;padding:11px}.tool-output{color:#657068;background:#fff}.truncation{color:#a18145;align-items:center;gap:6px;font-size:11px;display:flex}.file-change-link{text-align:left;gap:8px;width:100%;margin:6px 0;font-size:12px;display:flex}.file-change-link code{overflow-wrap:anywhere;white-space:normal;min-width:0}.file-change-link>span{white-space:nowrap;color:var(--muted);margin-left:auto;font-size:11px}.file-change-link>svg{flex-shrink:0}.turn-diff{border:1px solid var(--border);text-align:left;color:#526458;border-radius:8px;justify-content:flex-start;gap:10px;width:100%;height:auto;margin:18px 0 0;padding:12px 14px;display:flex}.turn-diff>span{flex:1;font-size:12px}.turn-diff small{color:var(--muted);margin-top:3px;font-size:11px;font-weight:400;display:block}.back-to-bottom{position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 3px 15px #18321f12}.bottom-region{flex-shrink:0;width:min(100%,872px);max-height:65%;margin:0 auto;padding:0 38px;overflow-y:auto}.composer-region{padding-bottom:max(12px, env(safe-area-inset-bottom))}.composer-resume-status{color:#65776a;align-items:center;gap:6px;margin:0 0 8px;padding:0 2px;font-size:12px;line-height:1.5;display:flex}.composer-resume-status svg{animation:1.2s linear infinite composer-resume-spin}@keyframes composer-resume-spin{to{transform:rotate(360deg)}}.composer-box{background:#fff;border:1px solid #d9dfda;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 3px 12px #26432705}.composer-box:focus-within{border-color:#96afa0;box-shadow:0 0 0 2px #5e956410}.composer-resize-handle{z-index:1;color:#9baaa0;cursor:ns-resize;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;width:32px;height:32px;padding:0;position:absolute;top:0;right:0}.composer-resize-handle svg{pointer-events:none;position:absolute;top:0;right:0}.composer-resize-handle path{stroke:currentColor;stroke-width:3px;stroke-linecap:round}.composer-resize-handle:hover,.composer-resize-handle:focus-visible,.composer-resize-handle:active,.composer-resize-handle[data-resizing=true]{color:var(--accent)}.composer-resize-handle:focus-visible{outline:none}html.composer-resizing,html.composer-resizing *{cursor:ns-resize!important;-webkit-user-select:none!important;user-select:none!important}@media (pointer:coarse){.composer-resize-handle{width:44px;height:44px}}.slash-menu{background:#fafcfb;border-bottom:1px solid #e1e8e3}.slash-menu-heading,.slash-menu-footer{color:#536b5d;justify-content:space-between;gap:8px;padding:9px 14px;font-size:11px;display:flex}.slash-menu-heading>span,.slash-menu-footer{color:#748379}.slash-menu-heading{padding-right:48px}.slash-options{max-height:min(260px,30dvh);padding:0 6px;scroll-padding-block:4px;overflow-y:auto}.slash-option{color:#536359;text-align:left;width:100%;min-height:60px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;gap:4px;padding:10px 9px;font-size:12px;line-height:1.5;display:flex}.slash-option[aria-selected=true]{background:#edf5ef;border-color:#bfd4c5}.slash-option-title{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.slash-option-title strong{color:#244b34;font-size:13px}.slash-option-title>span{color:#77867c;font-size:11px}.slash-unavailable{color:#8b6144}.slash-feedback,.slash-empty{color:#46644e;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:10px 14px;font-size:12px;line-height:1.6}.slash-feedback{background:#f4f8f4;border-bottom:1px solid #e1e8e3;padding-right:48px}.slash-feedback[role=alert]{color:#934922;background:#fdf7f1}.composer-box textarea{--composer-min-height:93px;--composer-max-height:230px;resize:none;width:100%;min-height:var(--composer-min-height);max-height:min(var(--composer-max-height), var(--composer-available-height,230px));color:#45534a;background:0 0;border:0;outline:0;padding:17px 44px 7px 17px;font-size:13px;line-height:1.7}.composer-box textarea::placeholder{color:#a8aeab}.composer-images{flex-wrap:wrap;gap:10px;margin:0;padding:14px 44px 0 14px;list-style:none;display:flex}.composer-images li{background:#f4f7f4;border:1px solid #d9dfda;border-radius:8px;width:104px;position:relative;overflow:hidden}.composer-images img,.composer-images li>span:first-child{object-fit:contain;width:100%;height:72px;display:block}.composer-image-name{text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:10px;display:block;overflow:hidden}.composer-images button{width:26px;height:26px;padding:0;position:absolute;top:3px;right:3px}.composer-image-error{color:#a33b36;margin:12px 14px 0;font-size:12px}.message-images{flex-wrap:wrap;gap:8px;display:flex}.message-images img{object-fit:contain;border-radius:8px;max-width:min(100%,260px);max-height:200px}.composer-box{container-type:inline-size}.composer-actions{justify-content:space-between;align-items:center;gap:12px;padding:7px 12px 12px;display:flex}.composer-context,.composer-send-controls{align-items:center;gap:7px;min-width:0;display:flex}.composer-context{flex:1 1 0}.composer-send-controls{flex:none;margin-left:auto}.composer-send-controls>:not(.settings-model){flex-shrink:0}.composer-target{color:#8d9b90;flex:0 auto;align-items:center;gap:6px;min-width:0;max-width:180px;font-size:11px;display:flex}.composer-target svg{flex-shrink:0}.composer-target>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.control-hint{display:inline-flex}.control-hint>:disabled{pointer-events:none}.tooltip-content{z-index:100;width:max-content;max-width:min(260px, var(--radix-tooltip-content-available-width));max-height:var(--radix-tooltip-content-available-height);color:#fff;white-space:normal;overflow-wrap:anywhere;text-align:left;background:#243d33;border-radius:6px;padding:7px 10px;font-size:11px;line-height:1.5;box-shadow:0 3px 12px #18321f20}.control-hint-content>span,.control-hint-description>span{display:block}.tooltip-arrow{fill:#243d33}.composer-note{text-align:center;color:#a9b1ac;margin:0;padding-top:10px;font-size:9px}.settings-panel{color:#65776a;font-size:12px}.select-trigger{border:1px solid var(--border);color:#314b38;min-width:0;min-height:36px;font:inherit;white-space:nowrap;background:#fff;border-radius:6px;justify-content:space-between;align-items:center;gap:7px;padding:7px 10px;display:inline-flex}.select-chevron{opacity:.65}.select-content{z-index:100;min-width:160px;max-width:min(360px,100vw - 16px);max-height:min(320px, var(--radix-select-content-available-height));color:#314b38;background:#fff;border:1px solid #dce5de;border-radius:8px;font-size:12px;line-height:1.5;overflow:hidden;box-shadow:0 6px 24px #18321f20}.select-viewport{padding:4px}.select-item{cursor:default;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;border-radius:4px;outline:none;align-items:center;gap:7px;width:100%;padding:7px 30px 7px 8px;display:flex;position:relative}.select-item[data-highlighted]{color:#243d33;background:#edf3ee}.select-item[data-disabled]{opacity:.5;pointer-events:none}.select-item-indicator{justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.select-label{color:#748479;padding:6px 8px;font-size:11px}.select-scroll-button{justify-content:center;align-items:center;padding:4px;display:flex}.settings-choice{background:#f5f8f5;border:0;border-radius:16px;align-items:center;min-width:0;min-height:32px;display:flex;position:relative}.settings-choice:hover:not(:disabled),.settings-choice[data-state=open]{background:#edf3ee}.settings-model{flex:0 160px;width:160px;max-width:160px;padding:6px 9px 6px 10px}.settings-model .select-chevron{flex-shrink:0}.settings-model-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.settings-effort{justify-content:center;width:34px;padding:4px}.settings-speed{cursor:pointer;color:#637669;background:0 0;justify-content:center;width:28px;padding:4px}.settings-speed[data-fast=true]{color:#326744}.settings-effort .select-chevron{display:none}.reasoning-tier[data-effort=max]{--effort-color:#a65310;--effort-surface:#fff4e5;--effort-hover:#ffead0;--effort-glow:#e9953340}.reasoning-tier[data-effort=ultra]{--effort-color:#7c3ad9;--effort-surface:#f4edff;--effort-hover:#eadcff;--effort-glow:#aa78ed40}.reasoning-tier:is([data-effort=max],[data-effort=ultra]){color:var(--effort-color)}.settings-effort:is([data-effort=max],[data-effort=ultra]){background:var(--effort-surface);width:80px;padding:4px 8px}.settings-effort:is([data-effort=max],[data-effort=ultra]):is(:hover:not(:disabled),[data-state=open]),.select-item.reasoning-tier:is([data-effort=max],[data-effort=ultra])[data-highlighted]{background:var(--effort-hover)}.reasoning-effort-display{border-radius:inherit;justify-content:center;align-items:center;gap:4px;display:inline-flex}.reasoning-tier-label{font-size:11px;font-weight:650;line-height:20px}.settings-effort[data-effort=max] .reasoning-effort-display{animation:.9s ease-out effort-max-ignite}.settings-effort[data-effort=ultra] .reasoning-effort-display{animation:1.25s ease-out effort-ultra-ignite}@keyframes effort-max-ignite{0%,to{box-shadow:0 0 #0000}35%{box-shadow:0 0 0 5px var(--effort-glow), 0 0 14px var(--effort-glow)}70%{box-shadow:0 0 0 2px var(--effort-glow)}}@keyframes effort-ultra-ignite{0%,to{filter:drop-shadow(0 0 #0000);box-shadow:0 0 #0000}30%,65%{filter:drop-shadow(0 0 4px var(--effort-glow));box-shadow:-5px 0 12px var(--effort-glow), 5px 0 12px var(--effort-glow)}48%{filter:drop-shadow(0 0 1px var(--effort-glow));box-shadow:0 0 4px var(--effort-glow)}}@media (prefers-reduced-motion:reduce){.settings-effort[data-effort] .reasoning-effort-display{animation:none}}.settings-choice:focus-visible{outline-offset:2px;outline:2px solid #6b9674}.settings-choice:disabled{opacity:.6;cursor:default}.settings-policy{cursor:pointer;color:#637669;min-height:32px;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:16px;flex-shrink:0;align-items:center;gap:5px;padding:5px 7px;font-size:11px;display:flex}.settings-policy:hover,.settings-policy[aria-expanded=true]{background:#edf3ee}.settings-policy{flex-shrink:0;min-width:0;max-width:190px}.permission-mode-label{text-overflow:ellipsis;overflow:hidden}.permission-pending-dot{background:#ac7d2e;border-radius:50%;flex-shrink:0;width:5px;height:5px}.settings-details-toggle{color:#748479;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;width:28px;height:30px;padding:0;display:grid}.settings-details-toggle:hover,.settings-details-toggle[aria-expanded=true]{color:#415e49;background:#edf3ee}.permission-mode-menu{width:min(350px,100vw - 24px);max-height:min(440px, var(--radix-select-content-available-height))}.permission-mode-menu .select-item{flex-direction:column;align-items:flex-start;gap:4px;padding-top:10px;padding-bottom:10px}.permission-mode-menu .select-item-description{color:#6b7c6f;font-size:11px;line-height:1.6}.permission-mode-menu strong{font-size:12px;font-weight:600}.permission-description>span{display:block}.permission-mode-menu .permission-unavailable{color:#85682c}.permission-mode-menu .select-item[data-disabled]{opacity:.7}.permission-values{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 20px;margin:0;font-size:11px;line-height:1.6;display:grid}.permission-values>div{min-width:0}.permission-values dt{color:#748479}.permission-values dd{color:#415e49;overflow-wrap:anywhere;margin:2px 0 0}.settings-fields{background:#f8faf8;border:1px solid #e3e9e4;border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0 12px 8px;padding:14px;display:grid}.settings-heading{grid-column:1/-1;justify-content:space-between;gap:12px;font-size:11px;display:flex}.settings-heading span{color:#748479}.settings-fields label{flex-direction:column;gap:7px;min-width:0;font-size:11px;display:flex}.settings-fields .select-trigger{color:#415e49;background:#fff;border:1px solid #dee5df;border-radius:5px;width:100%;padding:7px 8px;font-size:11px}.settings-note,.settings-observed{color:#6b7c6f;overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:10px;line-height:1.6}.settings-observed{flex-wrap:wrap;gap:4px 18px;display:flex}.settings-pending,.settings-defaults,.settings-error{overflow-wrap:anywhere;color:#85682c;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:4px 14px 10px;font-size:11px;line-height:1.5;display:flex}.settings-pending button,.settings-defaults button,.settings-error button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.settings-defaults[data-state=saved]{color:#52735a}.settings-pending>span{min-width:0;max-width:100%}@container (width<=700px){.composer-actions{gap:8px}.composer-action-label{display:none}.composer-send-controls .button{width:32px;height:32px;padding:0}}@container (width<=600px){.composer-actions{gap:4px}.settings-policy>span,.settings-policy>svg:last-child{display:none}.settings-policy{justify-content:center;width:28px;min-height:32px;padding:6px}.settings-details-toggle{width:28px;min-height:32px}.permission-values{grid-template-columns:minmax(0,1fr)}.composer-context,.composer-send-controls{gap:3px}.settings-model{flex-basis:auto;gap:3px;width:clamp(50px,22cqw,160px);padding:6px 5px}.settings-model .select-chevron{flex-shrink:0;width:12px}.settings-choice.settings-effort{width:28px;padding:2px}.reasoning-tier-label{display:none}.settings-speed{width:24px;padding:3px}.settings-fields{grid-template-columns:minmax(0,1fr);padding:12px}}@container (width<=330px){.composer-target{flex:none}.composer-target>span{display:none}.settings-model{width:60px}}.pending-actions{overscroll-behavior:contain;max-height:38vh;margin-bottom:12px;overflow-y:auto}.async-question-card{overflow-wrap:anywhere;background:#f8faf8;border:1px solid #dce5df;border-radius:12px;min-width:0;padding:18px;font-size:12px}.async-question-heading,.async-question-heading>span,.async-question-footer{align-items:center;gap:8px;display:flex}.async-question-heading{color:#415e49;justify-content:space-between;margin-bottom:18px}.async-question-heading small,.async-question-footer>span{color:#748479;font-size:11px}.async-question-card fieldset{border:0;min-width:0;margin:0 0 18px;padding:0}.async-question-card legend{margin-bottom:6px;padding:0;font-weight:600;line-height:1.7}.async-question-card .question-option{background:#fff;border-color:#dce5df}.async-question-card .question-option:has(input:checked){background:#edf4ee;border-color:#8bab95}.async-question-card .text-input{resize:vertical;width:100%;line-height:1.6}.async-question-answer{white-space:pre-wrap;color:#415e49;margin:4px 0 0}.async-question-footer{flex-wrap:wrap;justify-content:space-between}.async-question-footer>button{margin-left:auto}.action-card{overflow-wrap:anywhere;background:#fdfbf5;border:1px solid #eadfc6;border-radius:10px;min-width:0;margin-bottom:10px;padding:16px;font-size:12px}.action-card:last-child{margin-bottom:0}.action-heading{align-items:center;gap:8px;margin-bottom:11px;display:flex}.action-icon{color:#ad955c;flex-shrink:0}.action-heading h3{color:#736343;margin:0;font-size:12px;font-weight:600}.action-state{white-space:nowrap;color:#b5a179;flex-shrink:0;margin-left:auto;font-size:10px}.action-card p{color:#8d826a;font-size:11px}.action-cwd>span{white-space:nowrap}.action-options{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.action-card fieldset{border:0;margin:0 0 10px;padding:5px 0 12px}.action-card legend{color:#8e7b4a;font-size:11px;font-weight:600}.question-option{cursor:pointer;background:#fffefa;border:1px solid #eee5d5;border-radius:6px;align-items:center;gap:8px;margin:7px 0;padding:10px 12px;display:flex}.question-option:has(input:checked){background:#faf5e8;border-color:#c2b488}.question-option strong{color:#756a4e;font-size:11px;font-weight:550;display:block}.question-option small{color:#a39b87;margin-top:4px;font-size:10px;display:block}.option-number{color:#c1b69a;margin-left:auto;font-size:9px}input[type=checkbox],input[type=radio]{accent-color:#557963}.text-input{color:#6d6755;background:#fff;border:1px solid #dddccb;border-radius:6px;width:100%;padding:10px;font-size:12px}.action-card-unsupported{background:#fff8f7;border-color:#e4c2bc}.action-card-unsupported .action-state,.action-card-unsupported .action-icon{color:#a84339}.permission-details{color:#665a40;background:#fffefa;border:1px solid #e7decb;border-radius:7px;gap:12px;margin:14px 0;padding:12px;display:grid}.permission-network{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.permission-details h4{margin:0 0 8px;font-size:11px;font-weight:600}.permission-paths{gap:8px;margin:0;padding:0;list-style:none;display:grid}.permission-paths li{align-items:flex-start;gap:10px;min-width:0;display:flex}.permission-paths code{overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.6}.permission-access{color:#4c6b52;text-align:center;background:#edf1e9;border-radius:4px;flex-shrink:0;min-width:38px;padding:2px 5px;font-size:10px}.permission-access-write{color:#866123;background:#f5ead2}.permission-access-deny{color:#a84339;background:#fae7e4}.elicitation-source strong{color:#665a40;font-weight:600}.elicitation-fields{gap:16px;margin-top:16px;display:grid}.elicitation-field{min-width:0}.elicitation-field-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:7px;display:flex}.elicitation-field-heading label{color:#665a40;font-weight:600}.field-necessity{color:#928367;margin-left:8px;font-size:10px;font-weight:400}.field-unset{color:#6d765f;text-underline-offset:3px;font:inherit;cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:2px 0;text-decoration:underline}.field-unset:disabled{cursor:default;opacity:.5}.elicitation-field .text-input{min-width:0;min-height:39px}.elicitation-field [aria-invalid=true]{border-color:#bd6056}.action-card .field-description,.action-card .field-hint{color:#817456;margin:5px 0 8px;line-height:1.5}.action-card .field-hint{margin-bottom:0;font-size:10px}.action-card .elicitation-error{color:#a23c33;margin:7px 0 0;line-height:1.5}.elicitation-multi-options{border:1px solid #0000;border-radius:6px;flex-wrap:wrap;gap:8px;display:flex}.elicitation-multi-options .question-option{margin:0}.elicitation-url{color:#665a40;background:#fffefa;border:1px solid #e7decb;border-radius:7px;justify-items:start;gap:10px;padding:12px;display:grid}.elicitation-url code{overflow-wrap:anywhere;max-width:100%;font-size:11px}.elicitation-url a{color:#446b55;text-underline-offset:3px}.elicitation-url p{margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.session-resume-notice{color:#917b4e;background:#fdfbf5;border:1px solid #eadfc6;border-radius:8px;margin-bottom:14px;padding:15px;font-size:12px}.session-resume-notice strong{color:#8a7446;font-weight:550}.session-resume-notice p{margin:9px 0;font-size:11px}.session-resume-notice button+button{margin-left:8px}.pending-notice{color:#a18d59;background:#fcf9f0;border:1px solid #eee6d5;border-radius:7px;align-items:center;gap:7px;margin-bottom:12px;padding:8px 10px;font-size:10px;display:flex}.pending-notice .button{flex-shrink:0}.pending-notice>span{margin-right:auto}.subtle{color:#96a097;overflow-wrap:anywhere;font-size:11px}.inline-error{overflow-wrap:anywhere;font-size:11px;color:#b36f63!important}.raw-details{color:#98a097;margin:10px 0;font-size:10px}.raw-details summary{color:#8d978d;font-size:10px}.raw-details pre{background:#ffffff80;border:1px solid #e9ebe4;border-radius:5px;max-height:260px;padding:9px;font-size:10px;overflow:auto}.diagnostics>summary{color:#8f9991;white-space:nowrap;align-items:center;gap:5px;font-size:10px;list-style:none;display:flex}.diagnostics>summary::-webkit-details-marker{display:none}.diagnostics-panel{z-index:5;background:#fff;border:1px solid #e2e8e3;border-radius:12px;width:390px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);padding:20px;position:absolute;top:73px;right:25px;overflow-y:auto;box-shadow:0 12px 50px #1a38241a}.diagnostics-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.diagnostics-heading h2{color:#586b5d;margin:0;font-size:13px;font-weight:600}dl{grid-template-columns:90px 1fr;gap:9px 15px;margin:0;font-size:11px;line-height:1.6;display:grid}dt{color:#a0aaa3}dd{color:#6a7b70;overflow-wrap:anywhere;min-width:0;margin:0}.count-badge{text-align:center;color:#a08951;background:#f7efdc;border-radius:5px;min-width:16px;padding:1px 4px;font-size:9px}.operation-section{border-top:1px solid #e9ede9;margin:20px 0;padding-top:16px}.operation-section>h3{color:#7f896b;margin-bottom:12px;font-size:12px}.operation-card{background:#fafbf8;border:1px solid #e7eadf;border-radius:7px;margin-bottom:10px;padding:12px}.operation-title{color:#a59e83;justify-content:space-between;gap:7px;margin-bottom:12px;font-size:9px;display:flex}.operation-title strong{color:#8e865f;font-size:11px}.operation-card dl{grid-template-columns:60px 1fr;font-size:10px}.reconcile p{color:#9d9c88;margin:10px 0;font-size:10px}.reconcile label{color:#8c906e;gap:5px;margin:10px 0;font-size:10px;line-height:1.5;display:flex}.mobile-only,.sidebar-backdrop{display:none}@media (width>=1550px){.sidebar{width:312px}.conversation-content{padding-top:42px}}@media (width<=1150px){.sidebar{width:268px}.topbar{padding:19px 24px}.topbar-status{gap:10px}.topbar-status>.status{display:none}.connection-badge{font-size:10px}}@media (width<=760px){.mobile-only{display:inline-flex}.sidebar{z-index:20;width:min(320px,100vw - 36px);padding:16px 12px;transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-open{transform:translate(0)}.sidebar-backdrop{z-index:19;background:#18261e44;border:0;display:block;position:fixed;inset:0}.topbar{flex-wrap:wrap;gap:10px;min-height:78px;padding:15px 15px 14px 10px}.topbar h1{max-width:calc(100vw - 220px);font-size:13px}.topbar:has(.thread-title-editing) .topbar-title{flex-basis:100%}.thread-title-fields input{min-height:44px;font-size:16px}.thread-title-fields .button{width:44px;height:44px}.topbar-status{flex-direction:column;align-items:flex-end;gap:7px;margin-left:auto}.breadcrumb{font-size:9px}.diagnostics-panel{padding:15px;top:73px;right:12px}.connection-badge,.diagnostics>summary{font-size:9px}.conversation-content{padding:25px 20px}.sticky-prompt-slot{padding-inline:20px}.context-compaction-pinned,.codex-reconnect-pinned{padding:12px 20px 0}.bottom-region{max-height:65%;padding:0 16px}.empty-state{margin-top:30px;padding:25px 5px}.empty-state h1{font-size:23px}.empty-features{flex-wrap:wrap;gap:16px;font-size:9px}.empty-features span:last-child{display:none}.empty-symbol{width:65px;height:65px;margin-bottom:25px}.message-content{font-size:12px}.user-message .message-content{max-width:90%;padding:11px 15px}.activity,.auto-review-card,.turn-diff,.turn-heading{margin-left:0}.composer-box textarea{--composer-min-height:83px;padding:14px 48px 5px 13px;font-size:13px}.composer-target{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:9px;overflow:hidden}.composer-actions{padding:5px 9px 9px}.composer-note{font-size:8px}.error-banner.dismissible,.persistent-banner{margin:8px 15px 0;font-size:10px}.connection-banner,.compatibility-banner{padding:6px 16px;font-size:10px}.persistent-banner{flex-wrap:wrap}.pending-notice{flex-wrap:wrap;font-size:9px}.action-card{padding:13px}.action-heading{flex-wrap:wrap}.action-state{font-size:9px}.action-card p{font-size:10px}.action-options .button{min-height:38px}}@media (prefers-reduced-motion:reduce){.context-compaction-inProgress .compaction-icon,.composer-resume-status svg{animation:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.archive-switch{gap:4px;display:flex}.thread-row{border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;margin-bottom:2px;display:grid;position:relative}.thread-row:has(.thread-selected){background:#ebefec}.thread-row .thread-link{min-width:0;padding-right:4px}.thread-row-actions{align-items:center;gap:0;padding:4px 4px 0 0;display:flex}.thread-status-placeholder,.thread-status-indicator{width:20px;height:28px;color:var(--muted);flex:0 0 20px;justify-content:center;align-items:center;display:inline-flex;position:relative}.thread-status-glyph{justify-content:center;align-items:center;display:inline-flex}.thread-status-dot{border:1px solid;border-radius:50%;width:7px;height:7px}.thread-status-completed,.thread-status-running{color:var(--accent)}.thread-status-completed .thread-status-dot{background:currentColor}.thread-status-waitingApproval,.thread-status-waitingInput,.thread-status-unknown{color:#986414}.thread-status-failed{color:var(--destructive)}.thread-status-notification{border:1px solid var(--sidebar);background:#986414;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:0}.thread-status-spinning{animation:1s linear infinite thread-status-spin}@keyframes thread-status-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.thread-status-spinning{animation:none}}.thread-details-trigger,.thread-fork>.button,.thread-archive>button{width:24px;height:28px;min-height:28px;color:var(--muted)}.thread-details-trigger[aria-expanded=true]{color:var(--accent);background:var(--accent-soft)}.thread-archive>button[aria-disabled=true]{cursor:default}.thread-details{border:1px solid var(--border);color:#59636c;overflow-wrap:anywhere;background:#fff;border-radius:8px;grid-column:1/-1;margin:3px 4px 8px;padding:12px;font-size:12px}.thread-details h3{color:#35463e;margin-bottom:10px;font-size:13px;line-height:1.6}.thread-details dl{margin:0 0 10px;display:block}.thread-details dl>div{grid-template-columns:4em minmax(0,1fr);align-items:start;gap:8px;margin-top:6px;display:grid}.thread-details dt{color:var(--muted)}.thread-details dd{margin:0}.thread-details dl>.thread-id-row{grid-template-columns:5em minmax(0,1fr)}.thread-id-value{align-items:flex-start;gap:6px;min-width:0;display:flex}.thread-id-value code{overflow-wrap:anywhere;white-space:normal;-webkit-user-select:text;user-select:text;flex:1;min-width:0}.thread-id-copy{flex:none;width:24px;height:24px;min-height:24px}.thread-id-feedback{color:var(--muted);font-size:11px;display:block}.thread-id-failed{color:var(--destructive)}.thread-details .status{font-size:inherit;background:0 0;padding:0}.thread-details p{margin:8px 0 0}.thread-origin-note{color:var(--muted)}@media (pointer:coarse){.thread-row .thread-link{min-height:44px;padding:12px 4px 12px 10px}.thread-row-actions{gap:0;padding:0}.thread-details-trigger,.thread-fork>.button,.thread-archive>button{width:32px;height:44px;min-height:44px}}.archive-notice{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;gap:12px;margin:12px 24px 0;padding:12px 16px;font-size:13px;display:flex}.archive-notice div{flex:1;min-width:0}.archive-notice p{color:var(--muted);margin:3px 0 0;font-size:12px}@media (width<=700px){.archive-notice{flex-wrap:wrap;margin-inline:12px}}.local-image{vertical-align:top;max-width:100%;margin:8px 0;display:inline-block}.local-image-open{border:1px solid var(--border);color:#526458;cursor:zoom-in;text-align:left;background:#f8faf8;border-radius:9px;flex-direction:column;max-width:min(100%,432px);padding:5px;display:flex;overflow:hidden}.markdown .local-image-thumbnail{object-fit:contain;border-radius:5px;width:auto;max-width:min(100%,420px);height:auto;max-height:280px;display:block}.local-image-caption{overflow-wrap:anywhere;max-width:100%;padding:4px 5px 0;font-size:11px}.local-image-link{text-underline-offset:3px;text-decoration-style:dotted}.local-image-loading,.local-image-error{color:#627269;background:#f3f5f3;border-radius:7px;flex-direction:column;align-items:flex-start;gap:7px;max-width:100%;padding:13px;font-size:12px;display:flex}.local-image-error{color:#995338;background:#fff8f4;border:1px solid #e9d6cd}.local-image-error code,.local-image-loading code{overflow-wrap:anywhere;white-space:normal}.image-retry{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.image-preview-dialog{border:1px solid var(--border);color:#354139;background:#fff;border-radius:12px;width:min(1120px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);padding:18px;box-shadow:0 24px 80px #162d2540}.image-preview-dialog::backdrop{background:#14251dd9}.image-preview-heading,.image-preview-toolbar{align-items:center;gap:10px;display:flex}.image-preview-heading{justify-content:space-between}.image-preview-heading h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:16px}.image-preview-heading>button{flex-shrink:0}.image-preview-toolbar{flex-wrap:wrap;margin:12px 0}.image-preview-toolbar output{text-align:center;font-variant-numeric:tabular-nums;min-width:42px;font-size:12px}.image-preview-shortcuts{color:#76847b;margin-left:auto;font-size:11px}.image-preview-viewport{border:1px solid var(--border);outline-offset:-3px;background:#edf1ee;border-radius:7px;height:min(65dvh,760px);min-height:100px;overflow:auto}.image-preview-canvas{justify-content:center;align-items:center;width:max-content;min-width:100%;min-height:100%;display:flex}.image-preview-canvas img{flex-shrink:0;display:block}.image-preview-path{color:#718077;gap:8px;margin:12px 0 0;font-size:11px;display:flex}.image-preview-path>span{flex-shrink:0}.image-preview-path code{overflow-wrap:anywhere;white-space:normal;min-width:0}@media (width<=600px){.image-preview-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px}.image-preview-viewport{height:58dvh}.image-preview-shortcuts{display:none}}.local-file-link{text-decoration-style:dotted;text-decoration-thickness:1px}.local-file-link:hover{text-decoration-style:solid}.file-preview{border:0;border-left:1px solid var(--border);color:inherit;background:#fff;flex:none;width:clamp(420px,43vw,800px);min-width:0;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:relative;overflow:hidden}.file-preview[open]{flex-direction:column;display:flex}.file-preview-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:18px 20px;display:flex}.file-preview-header>.button,.file-preview-icon{flex-shrink:0}.file-preview-header>.button:first-child{order:4}.file-preview-icon{color:var(--accent)}.file-preview-title{flex:1;min-width:0}.file-preview-title h2{text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:14px;font-weight:600;overflow:hidden}.file-preview-title>span{color:var(--muted);font-size:11px}.file-preview-back{display:none}.file-preview-toolbar{color:var(--muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 20px;font-size:11px;display:flex}.file-preview-toolbar>div{gap:4px;display:flex}.file-preview-toolbar [aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.file-preview-feedback{color:var(--accent);margin:0;padding:0 24px;font-size:12px}.file-preview-feedback:empty{display:none}.file-preview-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:20px 32px 48px;scroll-padding:24px;overflow:auto}.file-preview-scroll>.markdown{max-width:760px;margin:0 auto;font-size:15px;line-height:1.9}.file-preview-scroll .markdown h1{font-size:1.65em}.file-preview-scroll .markdown h2{font-size:1.3em}.file-preview-scroll .markdown>:first-child{margin-top:0}.file-preview-source{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;background:0 0;border:0;margin:0;padding:0;font-size:13px}.json-preview{tab-size:2;line-height:1.8}.json-key{color:#6f42a1}.json-string{color:#17664b}.json-number{color:#175fa8}.json-boolean,.json-null{color:#a33f21}.json-preview-warning{color:#80501b;background:#fff8ed;border:1px solid #e3c69d;border-radius:8px;margin:0 0 20px;padding:12px 14px;font-size:13px;line-height:1.7}.file-preview-error{text-align:center;padding:40px 0;font-size:14px}.file-preview-error>svg{color:var(--muted);margin-bottom:20px}.file-preview-error h3{font-size:16px}.file-preview-loading{color:var(--muted);font-size:14px}.file-preview-path{border-top:1px solid var(--border);padding:10px 20px max(10px, env(safe-area-inset-bottom));color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;font:10px/1.5 SFMono-Regular,Consolas,monospace;overflow:hidden}@media (width<=1279px){.file-preview{border:0;width:100%;height:100dvh;position:fixed;inset:0}.file-preview::backdrop{background:#fff}.file-preview-header{padding:max(12px, env(safe-area-inset-top)) 12px 12px;gap:8px}.file-preview-header>.button:first-child{order:0}.file-preview-header>.button{min-height:44px}.file-preview-back{display:block}.file-preview-close,.file-preview-icon{display:none}.file-preview-toolbar{padding:8px 20px}.file-preview-toolbar .button{min-height:40px;padding-inline:16px}.file-preview-scroll{padding:18px 22px 40px}.file-preview-scroll>.markdown{font-size:16px}}.update-dialog{width:min(540px,100vw - 32px)}.update-version,.update-available{flex-wrap:wrap;align-items:baseline;gap:12px;padding:16px 0;display:flex}.update-version strong{letter-spacing:-.03em;font-size:22px}.update-version code,.update-available code{color:var(--muted);font-size:12px}.update-codex{border:1px solid var(--border);overflow-wrap:anywhere;background:#f7f8fa;border-radius:9px;margin:0 0 16px;padding:12px 14px}.update-codex h3{color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}.update-codex>div{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.update-codex p{margin:8px 0 0;font-size:12px;line-height:1.6}.update-codex-status{color:#4f6658;margin-left:auto}.update-codex[data-state=verified]{background:#f4f8f5;border-color:#c0d6c7}.update-codex[data-state=unverified],.update-codex[data-state=unknown]{background:#fcfaf4;border-color:#dfd4b6}.update-codex[data-state=unsupported]{background:#fcf6f5;border-color:#e2c0be}.update-codex-consent{margin-top:12px}.update-channel{justify-content:space-between;align-items:center;gap:16px;font-weight:600;display:flex}.update-channel select{border:1px solid var(--border);color:#303b35;min-width:148px;font:inherit;background:#f7f8fa;border-radius:8px;padding:8px 12px}.update-control{border-block:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:18px 0;display:flex}.update-control p{margin:5px 0 0}.update-buttons{justify-content:flex-end;gap:10px;margin:18px 0;display:flex}.update-progress{border:1px solid var(--border);background:#f7f8fa;border-radius:10px;gap:7px;margin:18px 0;padding:16px;display:grid}.update-progress>span{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.update-progress p{margin:0;line-height:1.65}.update-progress progress{accent-color:#303b35;width:100%;height:6px;margin-top:8px}.update-progress[data-phase=failed]{border-color:#e5a7a7}.update-progress[data-phase=succeeded]{border-color:#a3c6b0}.update-notice{background:#f7f8fa;border-radius:8px;padding:12px;font-size:13px;line-height:1.6}.update-source{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;font-size:12px;display:flex}.update-source a{color:inherit;align-items:center;gap:4px;display:inline-flex}.update-downgrade{align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;display:flex}.covro-brand-button{min-height:32px;color:inherit;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:flex}.covro-brand-button svg{opacity:.55}.covro-brand-button[data-update-available=true] svg{color:var(--accent);opacity:1}.history-pagination{min-height:48px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.conversation-scroll{overflow-anchor:none}.history-opening{color:var(--muted);padding:48px 16px}.history-skeleton{gap:14px;margin-top:28px;display:grid}.history-skeleton span{background:var(--border);border-radius:6px;width:75%;height:16px}.history-skeleton span:nth-child(2){width:92%}.history-skeleton span:nth-child(3){width:55%}.history-cache-notice{background:var(--surface);color:var(--muted);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.diff-scope{color:var(--muted);border-bottom:1px solid var(--border);margin:0;padding:14px 20px;font-size:12px;line-height:1.7}.diff-list-toolbar{color:var(--muted);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.diff-files{overscroll-behavior:contain;flex:1;min-height:0;padding:0 12px 12px;scroll-padding-top:12px;overflow:auto}.diff-file{border:1px solid var(--border);border-radius:8px;min-width:0;margin-bottom:16px;overflow:clip}.diff-file:first-child{margin-top:12px}.diff-file:last-child{margin-bottom:0}.diff-file-heading{z-index:2;box-shadow:0 1px 0 var(--border);background:#f7f9f8;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex;position:sticky;top:0}.diff-file-heading h3{overflow-wrap:anywhere;min-width:0;font-size:inherit;flex:180px;margin:0;font-weight:500;line-height:1.7}.diff-file-heading h3 code{white-space:normal}.diff-file-heading .button{margin-left:auto}.diff-collapsed{color:var(--muted);margin:0;padding:16px 12px;font-size:12px;line-height:1.8}.diff-file .diff-empty{min-height:0;padding:24px 16px}.diff-collapse-bottom{margin:8px auto;display:flex}.diff-kind{color:#476580;background:#edf2f6;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px}.diff-kind-added{color:#257145;background:#e7f4eb}.diff-kind-deleted{color:#a34039;background:#fff0ed}.diff-kind-renamed{color:#865d21;background:#faf0df}.diff-stats{flex-shrink:0;gap:8px;font:11px/1.8 monospace;display:inline-flex}.diff-stats>:first-child{color:#257145}.diff-stats>:last-child{color:#ab453d}.diff-rename{overflow-wrap:anywhere;color:var(--muted);margin:0;padding:8px 12px;font-size:11px}.diff-controls{color:var(--muted);justify-content:flex-end;align-items:center;gap:6px;padding:4px 8px;font-size:11px;display:flex}.diff-warning{color:#865d21;background:#fff7e8;margin:0;padding:8px 20px;font-size:12px;line-height:1.6}.diff-content{border-top:1px solid var(--border);overflow-x:auto}.diff-table{border-collapse:separate;border-spacing:0;tab-size:4;width:100%;font:12px/1.8 SFMono-Regular,Consolas,monospace}.diff-table th{color:var(--muted);text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);background:#f7f9f8;padding:5px 7px;font-size:10px;font-weight:400}.diff-table th:first-child,.diff-table th:nth-child(2){text-align:right}.diff-hunk td{color:#4b6f85;white-space:pre-wrap;overflow-wrap:anywhere;background:#eef4f8;padding:7px 12px;font-size:11px}.diff-hunk span{margin-right:8px;font-family:inherit;font-weight:600}.diff-line td{vertical-align:top}.diff-line-number{text-align:right;color:#89938d;-webkit-user-select:none;user-select:none;background:#f7f9f8;border-right:1px solid #e9eeeb;width:1%;min-width:38px;padding:0 7px}.diff-marker{-webkit-user-select:none;user-select:none;width:1%;padding:0 6px}.diff-code{white-space:pre;padding:0 16px 0 4px}.diff-code code{font:inherit}.diff-added{color:#245c37;background:#eaf6ee}.diff-removed{color:#983f38;background:#fff0ed}.diff-added .diff-line-number{color:#4f7b5d;background:#dff0e5}.diff-removed .diff-line-number{color:#a66b62;background:#fbe4df}.diff-note{color:var(--muted);font-style:italic}.diff-wrap .diff-table{table-layout:fixed}.diff-wrap .diff-code{white-space:pre-wrap;overflow-wrap:anywhere}.diff-wrap th:first-child,.diff-wrap th:nth-child(2){width:42px}.diff-wrap th:nth-child(3){width:22px}.diff-empty{text-align:center;min-height:180px;color:var(--muted);flex:1;padding:40px 24px;font-size:13px}.diff-empty h3{color:var(--foreground);font-size:15px}.diff-empty p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}@media (width<=600px){.diff-scope{padding:12px 16px;font-size:11px}.diff-files{padding:0 8px 8px}.diff-file:first-child{margin-top:8px}.diff-file-heading{gap:6px;padding:8px}.diff-file-heading h3{flex-basis:100%}.diff-file-heading .button{min-height:40px}.diff-controls{padding:4px 8px 8px}.diff-controls .button{min-height:40px}.diff-table{font-size:11px}.diff-warning{padding:8px 16px;font-size:11px}}.diff-loading{flex:1;padding:24px}.diff-inline-change{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:0}.diff-added .diff-inline-change{background:#abdfb8}.diff-removed .diff-inline-change{background:#f6bdb6}
@@ -0,0 +1 @@
1
+ import"./chunk-NGNAAXSQ-C2Wy9Xmz.js";export{w as createInfoServices}from"./mermaid-parser.core-BtFC_UVn.js";
@@ -0,0 +1,2 @@
1
+ import{n as e}from"./mermaid-parser.core-BtFC_UVn.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as n}from"./src-CK51kAyQ.js";import{c as r}from"./chunk-DSNLSHJZ-ClfNpgVO.js";import{a as i}from"./mermaid.core-DHL14mKq.js";var a={parse:t(async t=>{let r=await e(`info`,t);n.debug(r)},`parse`)},o={version:`12.2.0`},s={parser:a,db:{getVersion:t(()=>o.version,`getVersion`)},renderer:{draw:t((e,t,a)=>{n.debug(`rendering info diagram
2
+ `+e);let o=i(t);r(o,100,400,!0),o.append(`g`).append(`text`).attr(`x`,100).attr(`y`,40).attr(`class`,`version`).attr(`font-size`,32).style(`text-anchor`,`middle`).text(`v${a}`)},`draw`)}};export{s as diagram};
@@ -0,0 +1 @@
1
+ function e(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}export{e as t};
@@ -0,0 +1,70 @@
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-CK51kAyQ.js";import{C as t,H as n,U as r,_ as i,a,b as o,c as s,q as c,s as l,v as u}from"./chunk-DSNLSHJZ-ClfNpgVO.js";import{m as d}from"./chunk-7S6XSTFO-BnrWU32l.js";import{t as f}from"./rough.esm-Dy-Kn_BL.js";import{a as p}from"./mermaid.core-DHL14mKq.js";var m=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,4],r=[1,14],i=[1,12],a=[1,13],o=[6,7,8],s=[1,20],c=[1,18],l=[1,19],u=[6,7,11],d=[1,6,13,14],f=[1,23],p=[1,24],m=[1,6,7,11,13,14],h={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:`error`,6:`SPACELINE`,7:`NL`,8:`ISHIKAWA`,11:`EOF`,13:`SPACELIST`,14:`TEXT`},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 6:case 7:return r;case 15:r.addNode(a[s-1].length,a[s].trim());break;case 16:r.addNode(0,a[s].trim())}},`anonymous`),table:[{3:1,4:2,5:3,6:[1,5],8:n},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:n},{6:r,7:[1,10],9:9,12:11,13:i,14:a},t(o,[2,3]),{1:[2,2]},t(o,[2,4]),t(o,[2,5]),{1:[2,6],6:r,12:15,13:i,14:a},{6:r,9:16,12:11,13:i,14:a},{6:s,7:c,10:17,11:l},t(u,[2,18],{14:[1,21]}),t(u,[2,16]),t(u,[2,17]),{6:s,7:c,10:22,11:l},{1:[2,7],6:r,12:15,13:i,14:a},t(d,[2,14],{7:f,11:p}),t(m,[2,8]),t(m,[2,9]),t(m,[2,10]),t(u,[2,15]),t(d,[2,13],{7:f,11:p}),t(m,[2,11]),t(m,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){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(t,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;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(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}e(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
+ `+h.showPosition()+`
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`)};h.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(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:e(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:e(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:e(function(){return this._more=!0,this},`more`),reject:e(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
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(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:e(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:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
5
+ `+t+`^`},`showPosition`),test_match:e(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:e(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e!==!1&&e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(e,t,n,r){switch(n){case 0:return 6;case 1:return 8;case 2:return 8;case 3:return 6;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},`anonymous`),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}}})();function g(){this.yy={}}return e(g,`Parser`),g.prototype=h,h.Parser=g,new g})();m.parser=m;var h=m,g=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{e(this,`IshikawaDB`)}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,a()}getRoot(){return this.root}addNode(e,t){let n=l.sanitizeText(t,o());if(!this.root){this.root={text:n,children:[]},this.stack=[{level:0,node:this.root}],c(n);return}this.baseLevel??=e;let r=e-this.baseLevel+1;for(r<=0&&(r=1);this.stack.length>1&&this.stack[this.stack.length-1].level>=r;)this.stack.pop();let i=this.stack[this.stack.length-1].node,a={text:n,children:[]};i.children.push(a),this.stack.push({level:r,node:a})}getAccTitle(){return u()}setAccTitle(e){r(e)}getAccDescription(){return i()}setAccDescription(e){n(e)}getDiagramTitle(){return t()}setDiagramTitle(e){c(e)}},_=14,v=250,y=30,b=60,x=5,S=82*Math.PI/180,C=Math.cos(S),w=Math.sin(S),T=e((e,t,n)=>{let r=e.node().getBBox(),i=r.width+t*2,a=r.height+t*2;s(e,a,i,n),e.attr(`viewBox`,`${r.x-t} ${r.y-t} ${i} ${a}`)},`applyPaddedViewBox`),E=e((e,t,n,r)=>{let i=r.db.getRoot();if(!i)return;let a=o(),{look:s,handDrawnSeed:c,themeVariables:l}=a,u=d(a.fontSize)[0]??_,m=s===`handDrawn`,h=i.children??[],g=a.ishikawa?.diagramPadding??20,y=a.ishikawa?.useMaxWidth??!1,b=p(t),x=b.append(`g`).attr(`class`,`ishikawa`),S=m?f.svg(b.node()):void 0,C=S?{roughSvg:S,seed:c??0,lineColor:l?.lineColor??`#333`,fillColor:l?.mainBkg??`#fff`}:void 0,w=`ishikawa-arrow-${t}`;m||x.append(`defs`).append(`marker`).attr(`id`,w).attr(`viewBox`,`0 0 10 10`).attr(`refX`,0).attr(`refY`,5).attr(`markerWidth`,6).attr(`markerHeight`,6).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 10 0 L 0 5 L 10 10 Z`).attr(`class`,`ishikawa-arrow`);let E=0,k=v,A=m?void 0:L(x,E,k,E,k,`ishikawa-spine`);if(O(x,E,k,i.text,u,C),!h.length){m&&L(x,E,k,E,k,`ishikawa-spine`,C),T(b,g,y);return}E-=20;let j=h.filter((e,t)=>t%2==0),N=h.filter((e,t)=>t%2==1),P=D(j),F=D(N),I=P.total+F.total,R=v,z=v;if(I>0){let e=v*2,t=v*.3;R=Math.max(t,e*(P.total/I)),z=Math.max(t,e*(F.total/I))}let B=u*2;R=Math.max(R,P.max*B),z=Math.max(z,F.max*B),k=Math.max(R,v),A&&A.attr(`y1`,k).attr(`y2`,k),x.select(`.ishikawa-head-group`).attr(`transform`,`translate(0,${k})`);let V=Math.ceil(h.length/2);for(let e=0;e<V;e++){let t=x.append(`g`).attr(`class`,`ishikawa-pair`);for(let[n,r,i]of[[h[e*2],-1,R],[h[e*2+1],1,z]])n&&M(t,n,E,k,r,i,u,C);E=t.selectAll(`text`).nodes().reduce((e,t)=>Math.min(e,t.getBBox().x),1/0)}if(m)L(x,E,k,0,k,`ishikawa-spine`,C);else{A.attr(`x1`,E);let e=`url(#${w})`;x.selectAll(`line.ishikawa-branch, line.ishikawa-sub-branch`).attr(`marker-start`,e)}T(b,g,y)},`draw`),D=e(t=>{let n=e(e=>e.children.reduce((e,t)=>e+1+n(t),0),`countDescendants`);return t.reduce((e,t)=>{let r=n(t);return e.total+=r,e.max=Math.max(e.max,r),e},{total:0,max:0})},`sideStats`),O=e((e,t,n,r,i,a)=>{let o=Math.max(6,Math.floor(110/(i*.6))),s=e.append(`g`).attr(`class`,`ishikawa-head-group`).attr(`transform`,`translate(${t},${n})`),c=F(s,P(r,o),0,0,`ishikawa-head-label`,`start`,i),l=c.node().getBBox(),u=Math.max(60,l.width+6),d=Math.max(40,l.height*2+40),f=`M 0 ${-d/2} L 0 ${d/2} Q ${u*2.4} 0 0 ${-d/2} Z`;if(a){let e=a.roughSvg.path(f,{roughness:1.5,seed:a.seed,fill:a.fillColor,fillStyle:`hachure`,fillWeight:2.5,hachureGap:5,stroke:a.lineColor,strokeWidth:2});s.insert(()=>e,`:first-child`).attr(`class`,`ishikawa-head`)}else s.insert(`path`,`:first-child`).attr(`class`,`ishikawa-head`).attr(`d`,f);c.attr(`transform`,`translate(${(u-l.width)/2-l.x+3},${-l.y-l.height/2})`)},`drawHead`),k=e((t,n)=>{let r=[],i=[],a=e((e,t,o)=>{let s=n===-1?[...e].reverse():e;for(let e of s){let n=r.length,s=e.children??[];r.push({depth:o,text:P(e.text,15),parentIndex:t,childCount:s.length}),o%2==0?(i.push(n),s.length&&a(s,n,o+1)):(s.length&&a(s,n,o+1),i.push(n))}},`walk`);return a(t,-1,2),{entries:r,yOrder:i}},`flattenTree`),A=e((e,t,n,r,i,a,o)=>{let s=e.append(`g`).attr(`class`,`ishikawa-label-group`),c=F(s,t,n,r+11*i,`ishikawa-label cause`,`middle`,a).node().getBBox();if(o){let e=o.roughSvg.rectangle(c.x-20,c.y-2,c.width+40,c.height+4,{roughness:1.5,seed:o.seed,fill:o.fillColor,fillStyle:`hachure`,fillWeight:2.5,hachureGap:5,stroke:o.lineColor,strokeWidth:2});s.insert(()=>e,`:first-child`).attr(`class`,`ishikawa-label-box`)}else s.insert(`rect`,`:first-child`).attr(`class`,`ishikawa-label-box`).attr(`x`,c.x-20).attr(`y`,c.y-2).attr(`width`,c.width+40).attr(`height`,c.height+4)},`drawCauseLabel`),j=e((e,t,n,r,i,a)=>{let o=Math.sqrt(r*r+i*i);if(o===0)return;let s=r/o,c=i/o,l=-c*6,u=s*6,d=t,f=n,p=`M ${d} ${f} L ${d-s*6*2+l} ${f-c*6*2+u} L ${d-s*6*2-l} ${f-c*6*2-u} Z`,m=a.roughSvg.path(p,{roughness:1,seed:a.seed,fill:a.lineColor,fillStyle:`solid`,stroke:a.lineColor,strokeWidth:1});e.append(()=>m)},`drawArrowMarker`),M=e((e,t,n,r,i,a,o,s)=>{let c=t.children??[],l=a*(c.length?1:.2),u=-C*l,d=w*l*i,f=n+u,p=r+d;if(L(e,n,r,f,p,`ishikawa-branch`,s),s&&j(e,n,r,n-f,r-p,s),A(e,t.text,f,p,i,o,s),!c.length)return;let{entries:m,yOrder:h}=k(c,i),g=m.length,_=Array(g);for(let[e,t]of h.entries())_[t]=r+d*((e+1)/(g+1));let v=new Map;v.set(-1,{x0:n,y0:r,x1:f,y1:p,childCount:c.length,childrenDrawn:0});let S=-C,T=w*i,E=i<0?`ishikawa-label up`:`ishikawa-label down`;for(let[t,n]of m.entries()){let r=_[t],i=v.get(n.parentIndex),a=e.append(`g`).attr(`class`,`ishikawa-sub-group`),c=0,l=0,u=0;if(n.depth%2==0){let e=i.y1-i.y0;c=I(i.x0,i.x1,e?(r-i.y0)/e:.5),l=r,u=c-(n.childCount>0?b+n.childCount*x:y),L(a,c,r,u,r,`ishikawa-sub-branch`,s),s&&j(a,c,r,1,0,s),F(a,n.text,u,r,`ishikawa-label align`,`end`,o)}else{let e=i.childrenDrawn++;c=I(i.x0,i.x1,(i.childCount-e)/(i.childCount+1)),l=i.y0,u=c+S*((r-l)/T),L(a,c,l,u,r,`ishikawa-sub-branch`,s),s&&j(a,c,l,c-u,l-r,s),F(a,n.text,u,r,E,`end`,o)}n.childCount>0&&v.set(t,{x0:c,y0:l,x1:u,y1:r,childCount:n.childCount,childrenDrawn:0})}},`drawBranch`),N=e(e=>e.split(/<br\s*\/?>|\n/),`splitLines`),P=e((e,t)=>{if(e.length<=t)return e;let n=[];for(let r of e.split(/\s+/)){let e=n.length-1;e>=0&&n[e].length+1+r.length<=t?n[e]+=` `+r:n.push(r)}return n.join(`
7
+ `)},`wrapText`),F=e((e,t,n,r,i,a,o)=>{let s=N(t),c=o*1.05,l=e.append(`text`).attr(`class`,i).attr(`text-anchor`,a).attr(`x`,n).attr(`y`,r-(s.length-1)*c/2);for(let[e,t]of s.entries())l.append(`tspan`).attr(`x`,n).attr(`dy`,e===0?0:c).text(t);return l},`drawMultilineText`),I=e((e,t,n)=>e+(t-e)*n,`lerp`),L=e((e,t,n,r,i,a,o)=>{if(o){let s=o.roughSvg.line(t,n,r,i,{roughness:1.5,seed:o.seed,stroke:o.lineColor,strokeWidth:2});e.append(()=>s).attr(`class`,a)}else return e.append(`line`).attr(`class`,a).attr(`x1`,t).attr(`y1`,n).attr(`x2`,r).attr(`y2`,i)},`drawLine`),R={parser:h,get db(){return new g},renderer:{draw:E},styles:e(e=>`
8
+ .ishikawa .ishikawa-spine,
9
+ .ishikawa .ishikawa-branch,
10
+ .ishikawa .ishikawa-sub-branch {
11
+ stroke: ${e.lineColor};
12
+ stroke-width: 2;
13
+ fill: none;
14
+ }
15
+
16
+ .ishikawa .ishikawa-sub-branch {
17
+ stroke-width: 1;
18
+ }
19
+
20
+ .ishikawa .ishikawa-arrow {
21
+ fill: ${e.lineColor};
22
+ }
23
+
24
+ .ishikawa .ishikawa-head {
25
+ fill: ${e.mainBkg};
26
+ stroke: ${e.lineColor};
27
+ stroke-width: 2;
28
+ }
29
+
30
+ .ishikawa .ishikawa-label-box {
31
+ fill: ${e.mainBkg};
32
+ stroke: ${e.lineColor};
33
+ stroke-width: 2;
34
+ }
35
+
36
+ .ishikawa text {
37
+ font-family: ${e.fontFamily};
38
+ font-size: ${e.fontSize};
39
+ fill: ${e.textColor};
40
+ }
41
+
42
+ .ishikawa .ishikawa-head-label {
43
+ font-weight: 600;
44
+ text-anchor: middle;
45
+ dominant-baseline: middle;
46
+ font-size: 14px;
47
+ }
48
+
49
+ .ishikawa .ishikawa-label {
50
+ text-anchor: end;
51
+ }
52
+
53
+ .ishikawa .ishikawa-label.cause {
54
+ text-anchor: middle;
55
+ dominant-baseline: middle;
56
+ }
57
+
58
+ .ishikawa .ishikawa-label.align {
59
+ text-anchor: end;
60
+ dominant-baseline: middle;
61
+ }
62
+
63
+ .ishikawa .ishikawa-label.up {
64
+ dominant-baseline: baseline;
65
+ }
66
+
67
+ .ishikawa .ishikawa-label.down {
68
+ dominant-baseline: hanging;
69
+ }
70
+ `,`getStyles`)};export{R as diagram};
@@ -0,0 +1,139 @@
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{p as t}from"./src-CK51kAyQ.js";import{C as n,H as r,U as i,_ as a,a as o,b as s,c,q as l,v as u}from"./chunk-DSNLSHJZ-ClfNpgVO.js";import{t as d}from"./arc-DFIzIYgQ.js";import{t as f}from"./chunk-5VM5RSS4-ZNzvKenW.js";import{a as p,n as m,o as h,s as g}from"./chunk-55XCU76K-CkP_cE5N.js";var _=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,8,10,11,12,14,16,17,18],r=[1,9],i=[1,10],a=[1,11],o=[1,12],s=[1,13],c=[1,14],l={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:`error`,4:`journey`,6:`EOF`,8:`SPACE`,10:`NEWLINE`,11:`title`,12:`acc_title`,13:`acc_title_value`,14:`acc_descr`,15:`acc_descr_value`,16:`acc_descr_multiline_value`,17:`section`,18:`taskName`,19:`taskData`},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 2:this.$=[];break;case 3:a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 5:this.$=a[s];break;case 6:case 7:this.$=[];break;case 8:r.setDiagramTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 9:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 10:case 11:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 12:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 13:r.addTask(a[s-1],a[s]),this.$=`task`}},`anonymous`),table:[{3:1,4:[1,2]},{1:[3]},t(n,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:r,12:i,14:a,16:o,17:s,18:c},t(n,[2,7],{1:[2,1]}),t(n,[2,3]),{9:15,11:r,12:i,14:a,16:o,17:s,18:c},t(n,[2,5]),t(n,[2,6]),t(n,[2,8]),{13:[1,16]},{15:[1,17]},t(n,[2,11]),t(n,[2,12]),{19:[1,18]},t(n,[2,4]),t(n,[2,9]),t(n,[2,10]),t(n,[2,13])],defaultActions:{},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){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(t,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;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(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}e(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
+ `+h.showPosition()+`
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`)};l.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(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:e(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:e(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:e(function(){return this._more=!0,this},`more`),reject:e(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
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(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:e(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:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
5
+ `+t+`^`},`showPosition`),test_match:e(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:e(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e!==!1&&e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(e,t,n,r){switch(n){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin(`acc_title`),12;case 8:return this.popState(),`acc_title_value`;case 9:return this.begin(`acc_descr`),14;case 10:return this.popState(),`acc_descr_value`;case 11:this.begin(`acc_descr_multiline`);break;case 12:this.popState();break;case 13:return`acc_descr_multiline_value`;case 14:return 17;case 15:return 18;case 16:return 19;case 17:return`:`;case 18:return 6;case 19:return`INVALID`}},`anonymous`),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}}})();function u(){this.yy={}}return e(u,`Parser`),u.prototype=l,l.Parser=u,new u})();_.parser=_;var v=_,y=``,b=[],x=[],S=[],C=e(function(){b.length=0,x.length=0,y=``,S.length=0,o()},`clear`),w=e(function(e){y=e,b.push(e)},`addSection`),T=e(function(){return b},`getSections`),E=e(function(){let e=A(),t=0;for(;!e&&t<100;)e=A(),t++;return x.push(...S),x},`getTasks`),D=e(function(){let e=[];return x.forEach(t=>{t.people&&e.push(...t.people)}),[...new Set(e)].sort()},`updateActors`),O=e(function(e,t){let n=t.substr(1).split(`:`),r=0,i=[];n.length===1?(r=Number(n[0]),i=[]):(r=Number(n[0]),i=n[1].split(`,`));let a=i.map(e=>e.trim()),o={section:y,type:y,people:a,task:e,score:r};S.push(o)},`addTask`),k=e(function(e){let t={section:y,type:y,description:e,task:e,classes:[]};x.push(t)},`addTaskOrg`),A=e(function(){let t=e(function(e){return S[e].processed},`compileTask`),n=!0;for(let[e,r]of S.entries())t(e),n&&=r.processed;return n},`compileTasks`),j={getConfig:e(()=>s().journey,`getConfig`),clear:C,setDiagramTitle:l,getDiagramTitle:n,setAccTitle:i,getAccTitle:u,setAccDescription:r,getAccDescription:a,addSection:w,getSections:T,getTasks:E,addTask:O,addTaskOrg:k,getActors:e(function(){return D()},`getActors`)},M=e(e=>`.label {
7
+ font-family: ${e.fontFamily};
8
+ color: ${e.textColor};
9
+ }
10
+ .mouth {
11
+ stroke: #666;
12
+ }
13
+
14
+ line {
15
+ stroke: ${e.textColor}
16
+ }
17
+
18
+ .legend {
19
+ fill: ${e.textColor};
20
+ font-family: ${e.fontFamily};
21
+ }
22
+
23
+ .label text {
24
+ fill: #333;
25
+ }
26
+ .label {
27
+ color: ${e.textColor}
28
+ }
29
+
30
+ .face {
31
+ ${e.faceColor?`fill: ${e.faceColor}`:`fill: #FFF8DC`};
32
+ stroke: #999;
33
+ }
34
+
35
+ .node rect,
36
+ .node circle,
37
+ .node ellipse,
38
+ .node polygon,
39
+ .node path {
40
+ fill: ${e.mainBkg};
41
+ stroke: ${e.nodeBorder};
42
+ stroke-width: 1px;
43
+ }
44
+
45
+ .node .label {
46
+ text-align: center;
47
+ }
48
+ .node.clickable {
49
+ cursor: pointer;
50
+ }
51
+
52
+ .arrowheadPath {
53
+ fill: ${e.arrowheadColor};
54
+ }
55
+
56
+ .edgePaths .path {
57
+ stroke: ${e.lineColor};
58
+ stroke-width: 1.5px;
59
+ }
60
+
61
+ .flowchart-link {
62
+ stroke: ${e.lineColor};
63
+ fill: none;
64
+ }
65
+
66
+ .edgeLabel {
67
+ background-color: ${e.edgeLabelBackground};
68
+ rect {
69
+ opacity: 0.5;
70
+ }
71
+ text-align: center;
72
+ }
73
+
74
+ .cluster rect {
75
+ }
76
+
77
+ .cluster text {
78
+ fill: ${e.titleColor};
79
+ }
80
+
81
+ div.mermaidTooltip {
82
+ position: absolute;
83
+ text-align: center;
84
+ max-width: 200px;
85
+ padding: 2px;
86
+ font-family: ${e.fontFamily};
87
+ font-size: 12px;
88
+ background: ${e.tertiaryColor};
89
+ border: 1px solid ${e.border2};
90
+ border-radius: 2px;
91
+ pointer-events: none;
92
+ z-index: 100;
93
+ }
94
+
95
+ .task-type-0, .section-type-0 {
96
+ ${e.fillType0?`fill: ${e.fillType0}`:``};
97
+ }
98
+ .task-type-1, .section-type-1 {
99
+ ${e.fillType0?`fill: ${e.fillType1}`:``};
100
+ }
101
+ .task-type-2, .section-type-2 {
102
+ ${e.fillType0?`fill: ${e.fillType2}`:``};
103
+ }
104
+ .task-type-3, .section-type-3 {
105
+ ${e.fillType0?`fill: ${e.fillType3}`:``};
106
+ }
107
+ .task-type-4, .section-type-4 {
108
+ ${e.fillType0?`fill: ${e.fillType4}`:``};
109
+ }
110
+ .task-type-5, .section-type-5 {
111
+ ${e.fillType0?`fill: ${e.fillType5}`:``};
112
+ }
113
+ .task-type-6, .section-type-6 {
114
+ ${e.fillType0?`fill: ${e.fillType6}`:``};
115
+ }
116
+ .task-type-7, .section-type-7 {
117
+ ${e.fillType0?`fill: ${e.fillType7}`:``};
118
+ }
119
+
120
+ .actor-0 {
121
+ ${e.actor0?`fill: ${e.actor0}`:``};
122
+ }
123
+ .actor-1 {
124
+ ${e.actor1?`fill: ${e.actor1}`:``};
125
+ }
126
+ .actor-2 {
127
+ ${e.actor2?`fill: ${e.actor2}`:``};
128
+ }
129
+ .actor-3 {
130
+ ${e.actor3?`fill: ${e.actor3}`:``};
131
+ }
132
+ .actor-4 {
133
+ ${e.actor4?`fill: ${e.actor4}`:``};
134
+ }
135
+ .actor-5 {
136
+ ${e.actor5?`fill: ${e.actor5}`:``};
137
+ }
138
+ ${f()}
139
+ `,`getStyles`),N=e(function(e,t){return p(e,t)},`drawRect`),P=e(function(t,n){let r=t.append(`circle`).attr(`cx`,n.cx).attr(`cy`,n.cy).attr(`class`,`face`).attr(`r`,15).attr(`stroke-width`,2).attr(`overflow`,`visible`),i=t.append(`g`);i.append(`circle`).attr(`cx`,n.cx-5).attr(`cy`,n.cy-5).attr(`r`,1.5).attr(`stroke-width`,2).attr(`fill`,`#666`).attr(`stroke`,`#666`),i.append(`circle`).attr(`cx`,n.cx+5).attr(`cy`,n.cy-5).attr(`r`,1.5).attr(`stroke-width`,2).attr(`fill`,`#666`).attr(`stroke`,`#666`);function a(e){let t=d().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(15/2).outerRadius(15/2.2);e.append(`path`).attr(`class`,`mouth`).attr(`d`,t).attr(`transform`,`translate(`+n.cx+`,`+(n.cy+2)+`)`)}e(a,`smile`);function o(e){let t=d().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(15/2).outerRadius(15/2.2);e.append(`path`).attr(`class`,`mouth`).attr(`d`,t).attr(`transform`,`translate(`+n.cx+`,`+(n.cy+7)+`)`)}e(o,`sad`);function s(e){e.append(`line`).attr(`class`,`mouth`).attr(`stroke`,2).attr(`x1`,n.cx-5).attr(`y1`,n.cy+7).attr(`x2`,n.cx+5).attr(`y2`,n.cy+7).attr(`class`,`mouth`).attr(`stroke-width`,`1px`).attr(`stroke`,`#666`)}return e(s,`ambivalent`),n.score>3?a(i):n.score<3?o(i):s(i),r},`drawFace`),F=e(function(e,t){let n=e.append(`circle`);return n.attr(`cx`,t.cx),n.attr(`cy`,t.cy),n.attr(`class`,`actor-`+t.pos),n.attr(`fill`,t.fill),n.attr(`stroke`,t.stroke),n.attr(`r`,t.r),n.class!==void 0&&n.attr(`class`,n.class),t.title!==void 0&&n.append(`title`).text(t.title),n},`drawCircle`),I=e(function(e,t){return h(e,t)},`drawText`),L=e(function(t,n){function r(e,t,n,r,i){return e+`,`+t+` `+(e+n)+`,`+t+` `+(e+n)+`,`+(t+r-i)+` `+(e+n-i*1.2)+`,`+(t+r)+` `+e+`,`+(t+r)}e(r,`genPoints`);let i=t.append(`polygon`);i.attr(`points`,r(n.x,n.y,50,20,7)),i.attr(`class`,`labelBox`),n.y+=n.labelMargin,n.x+=.5*n.labelMargin,I(t,n)},`drawLabel`),R=e(function(e,t,n){let r=e.append(`g`),i=g();i.x=t.x,i.y=t.y,i.fill=t.fill,i.width=n.width*t.taskCount+n.diagramMarginX*(t.taskCount-1),i.height=n.height,i.class=`journey-section section-type-`+t.num,i.rx=3,i.ry=3,N(r,i),H(n)(t.text,r,i.x,i.y,i.width,i.height,{class:`journey-section section-type-`+t.num},n,t.colour)},`drawSection`),z=-1,B=e(function(e,t,n,r){let i=t.x+n.width/2,a=e.append(`g`);z++,a.append(`line`).attr(`id`,r+`-task`+z).attr(`x1`,i).attr(`y1`,t.y).attr(`x2`,i).attr(`y2`,450).attr(`class`,`task-line`).attr(`stroke-width`,`1px`).attr(`stroke-dasharray`,`4 2`).attr(`stroke`,`#666`),P(a,{cx:i,cy:300+(5-t.score)*30,score:t.score});let o=g();o.x=t.x,o.y=t.y,o.fill=t.fill,o.width=n.width,o.height=n.height,o.class=`task task-type-`+t.num,o.rx=3,o.ry=3,N(a,o);let s=t.x+14;t.people.forEach(e=>{let n=t.actors[e].color,r={cx:s,cy:t.y,r:7,fill:n,stroke:`#000`,title:e,pos:t.actors[e].position};F(a,r),s+=10}),H(n)(t.task,a,o.x,o.y,o.width,o.height,{class:`task`},n,t.colour)},`drawTask`),V=e(function(e,t){m(e,t)},`drawBackgroundRect`),H=(function(){function t(e,t,n,r,a,o,s,c){i(t.append(`text`).attr(`x`,n+a/2).attr(`y`,r+o/2+5).style(`font-color`,c).style(`text-anchor`,`middle`).text(e),s)}e(t,`byText`);function n(e,t,n,r,a,o,s,c,l){let{taskFontSize:u,taskFontFamily:d}=c,f=e.split(/<br\s*\/?>/gi);for(let e=0;e<f.length;e++){let c=e*u-u*(f.length-1)/2,p=t.append(`text`).attr(`x`,n+a/2).attr(`y`,r).attr(`fill`,l).style(`text-anchor`,`middle`).style(`font-size`,u).style(`font-family`,d);p.append(`tspan`).attr(`x`,n+a/2).attr(`dy`,c).text(f[e]),p.attr(`y`,r+o/2).attr(`dominant-baseline`,`central`).attr(`alignment-baseline`,`central`),i(p,s)}}e(n,`byTspan`);function r(e,t,r,a,o,s,c,l){let u=t.append(`switch`),d=u.append(`foreignObject`).attr(`x`,r).attr(`y`,a).attr(`width`,o).attr(`height`,s).attr(`position`,`fixed`).append(`xhtml:div`).style(`display`,`table`).style(`height`,`100%`).style(`width`,`100%`);d.append(`div`).attr(`class`,`label`).style(`display`,`table-cell`).style(`text-align`,`center`).style(`vertical-align`,`middle`).text(e),n(e,u,r,a,o,s,c,l),i(d,c)}e(r,`byFo`);function i(e,t){for(let n in t)n in t&&e.attr(n,t[n])}return e(i,`_setTextAttrs`),function(e){return e.textPlacement===`fo`?r:e.textPlacement===`old`?t:n}})(),U={drawRect:N,drawCircle:F,drawSection:R,drawText:I,drawLabel:L,drawTask:B,drawBackgroundRect:V,initGraphics:e(function(e,t){z=-1,e.append(`defs`).append(`marker`).attr(`id`,t+`-arrowhead`).attr(`refX`,5).attr(`refY`,2).attr(`markerWidth`,6).attr(`markerHeight`,4).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 0,0 V 4 L6,2 Z`)},`initGraphics`)},W=e(function(e){Object.keys(e).forEach(function(t){J[t]=e[t]})},`setConf`),G={},K=0;function q(e){let t=s().journey,n=t.maxLabelWidth;K=0;let r=60;Object.keys(G).forEach(i=>{let a=G[i].color,o={cx:20,cy:r,r:7,fill:a,stroke:`#000`,pos:G[i].position};U.drawCircle(e,o);let s=e.append(`text`).attr(`visibility`,`hidden`).text(i),c=s.node().getBoundingClientRect().width;s.remove();let l=[];if(c<=n)l=[i];else{let t=i.split(` `),r=``;s=e.append(`text`).attr(`visibility`,`hidden`),t.forEach(e=>{let t=r?`${r} ${e}`:e;if(s.text(t),s.node().getBoundingClientRect().width>n){if(r&&l.push(r),r=e,s.text(e),s.node().getBoundingClientRect().width>n){let t=``;for(let r of e)t+=r,s.text(t+`-`),s.node().getBoundingClientRect().width>n&&(l.push(t.slice(0,-1)+`-`),t=r);r=t}}else r=t}),r&&l.push(r),s.remove()}l.forEach((n,i)=>{let a={x:40,y:r+7+i*20,fill:`#666`,text:n,textMargin:t.boxTextMargin??5},o=U.drawText(e,a).node().getBoundingClientRect().width;o>K&&o>t.leftMargin-o&&(K=o)}),r+=Math.max(20,l.length*20)})}e(q,`drawActorLegend`);var J=s().journey,Y=0,ee=e(function(e,n,r,i){let a=s(),o=a.journey.titleColor,l=a.journey.titleFontSize,u=a.journey.titleFontFamily,d=a.securityLevel,f;d===`sandbox`&&(f=t(`#i`+n));let p=t(d===`sandbox`?f.nodes()[0].contentDocument.body:`body`);X.init();let m=p.select(`#`+n);U.initGraphics(m,n);let h=i.db.getTasks(),g=i.db.getDiagramTitle(),_=i.db.getActors();for(let e in G)delete G[e];let v=0;_.forEach(e=>{G[e]={color:J.actorColours[v%J.actorColours.length],position:v},v++}),q(m),Y=J.leftMargin+K,X.insert(0,0,Y,Object.keys(G).length*50),te(m,h,0,n);let y=X.getBounds();g&&m.append(`text`).text(g).attr(`x`,Y).attr(`font-size`,l).attr(`font-weight`,`bold`).attr(`y`,25).attr(`fill`,o).attr(`font-family`,u);let b=y.stopy-y.starty+2*J.diagramMarginY,x=Y+y.stopx+2*J.diagramMarginX;c(m,b,x,J.useMaxWidth),m.append(`line`).attr(`x1`,Y).attr(`y1`,J.height*4).attr(`x2`,x-Y-4).attr(`y2`,J.height*4).attr(`stroke-width`,4).attr(`stroke`,`black`).attr(`marker-end`,`url(#`+n+`-arrowhead)`);let S=g?70:0;m.attr(`viewBox`,`${y.startx} -25 ${x} ${b+S}`),m.attr(`preserveAspectRatio`,`xMinYMin meet`),m.attr(`height`,b+S+25)},`draw`),X={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:e(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},`init`),updateVal:e(function(e,t,n,r){e[t]=e[t]===void 0?n:r(n,e[t])},`updateVal`),updateBounds:e(function(t,n,r,i){let a=s().journey,o=this,c=0;function l(s){return e(function(e){c++;let l=o.sequenceItems.length-c+1;o.updateVal(e,`starty`,n-l*a.boxMargin,Math.min),o.updateVal(e,`stopy`,i+l*a.boxMargin,Math.max),o.updateVal(X.data,`startx`,t-l*a.boxMargin,Math.min),o.updateVal(X.data,`stopx`,r+l*a.boxMargin,Math.max),s!==`activation`&&(o.updateVal(e,`startx`,t-l*a.boxMargin,Math.min),o.updateVal(e,`stopx`,r+l*a.boxMargin,Math.max),o.updateVal(X.data,`starty`,n-l*a.boxMargin,Math.min),o.updateVal(X.data,`stopy`,i+l*a.boxMargin,Math.max))},`updateItemBounds`)}e(l,`updateFn`),this.sequenceItems.forEach(l())},`updateBounds`),insert:e(function(e,t,n,r){let i=Math.min(e,n),a=Math.max(e,n),o=Math.min(t,r),s=Math.max(t,r);this.updateVal(X.data,`startx`,i,Math.min),this.updateVal(X.data,`starty`,o,Math.min),this.updateVal(X.data,`stopx`,a,Math.max),this.updateVal(X.data,`stopy`,s,Math.max),this.updateBounds(i,o,a,s)},`insert`),bumpVerticalPos:e(function(e){this.verticalPos+=e,this.data.stopy=this.verticalPos},`bumpVerticalPos`),getVerticalPos:e(function(){return this.verticalPos},`getVerticalPos`),getBounds:e(function(){return this.data},`getBounds`)},Z=J.sectionFills,Q=J.sectionColours,te=e(function(e,t,n,r){let i=s().journey,a=``,o=n+(i.height*2+i.diagramMarginY),c=0,l=`#CCC`,u=`black`,d=0;for(let[n,s]of t.entries()){if(a!==s.section){l=Z[c%Z.length],d=c%Z.length,u=Q[c%Q.length];let r=0,o=s.section;for(let e=n;e<t.length&&t[e].section==o;e++)r+=1;let f={x:n*i.taskMargin+n*i.width+Y,y:50,text:s.section,fill:l,num:d,colour:u,taskCount:r};U.drawSection(e,f,i),a=s.section,c++}let f=s.people.reduce((e,t)=>(G[t]&&(e[t]=G[t]),e),{});s.x=n*i.taskMargin+n*i.width+Y,s.y=o,s.width=i.diagramMarginX,s.height=i.diagramMarginY,s.colour=u,s.fill=l,s.num=d,s.actors=f,U.drawTask(e,s,i,r),X.insert(s.x,s.y,s.x+s.width+i.taskMargin,450)}},`drawTasks`),$={setConf:W,draw:ee},ne={parser:v,db:j,renderer:$,styles:M,init:e(e=>{$.setConf(e.journey),j.clear()},`init`)};export{ne as diagram};
@@ -0,0 +1,89 @@
1
+ import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{m as t}from"./src-CK51kAyQ.js";import{Y as n,b as r,f as i,it as a,nt as o,tt as s,z as c}from"./chunk-DSNLSHJZ-ClfNpgVO.js";import"./chunk-7S6XSTFO-BnrWU32l.js";import"./chunk-YZO67HFG-C19e3AP5.js";import"./chunk-AQDTSKZB-J2M9tBY-.js";import{t as l}from"./chunk-5VM5RSS4-ZNzvKenW.js";import"./chunk-UHW7PFBP-DSLKZJoJ.js";import"./chunk-HAGFOTED-k7XcZqWB.js";import{i as u,r as d}from"./chunk-ZAUX2LTX-C03NsQfr.js";import{r as f}from"./chunk-HNE4Q36P-DHHenyG4.js";import{a as p,n as m,t as h}from"./mermaid.core-DHL14mKq.js";var g=(function(){var t=e(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,4],r=[1,13],i=[1,12],a=[1,15],o=[1,16],s=[1,20],c=[1,19],l=[6,7,8],u=[1,26],d=[1,24],f=[1,25],p=[6,7,11],m=[1,31],h=[6,7,11,24],g=[1,6,13,16,17,20,23],_=[1,35],v=[1,36],y=[1,6,7,11,13,16,17,20,23],b=[1,38],x={trace:e(function(){},`trace`),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:`error`,6:`SPACELINE`,7:`NL`,8:`KANBAN`,11:`EOF`,13:`SPACELIST`,16:`ICON`,17:`CLASS`,20:`NODE_DSTART`,21:`NODE_DESCR`,22:`NODE_DEND`,23:`NODE_ID`,24:`SHAPE_DATA`},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:e(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 6:case 7:return r;case 8:r.getLogger().trace(`Stop NL `);break;case 9:r.getLogger().trace(`Stop EOF `);break;case 11:r.getLogger().trace(`Stop NL2 `);break;case 12:r.getLogger().trace(`Stop EOF2 `);break;case 15:r.getLogger().info(`Node: `,a[s-1].id),r.addNode(a[s-2].length,a[s-1].id,a[s-1].descr,a[s-1].type,a[s]);break;case 16:r.getLogger().info(`Node: `,a[s].id),r.addNode(a[s-1].length,a[s].id,a[s].descr,a[s].type);break;case 17:r.getLogger().trace(`Icon: `,a[s]),r.decorateNode({icon:a[s]});break;case 18:case 23:r.decorateNode({class:a[s]});break;case 19:r.getLogger().trace(`SPACELIST`);break;case 20:r.getLogger().trace(`Node: `,a[s-1].id),r.addNode(0,a[s-1].id,a[s-1].descr,a[s-1].type,a[s]);break;case 21:r.getLogger().trace(`Node: `,a[s].id),r.addNode(0,a[s].id,a[s].descr,a[s].type);break;case 22:r.decorateNode({icon:a[s]});break;case 27:r.getLogger().trace(`node found ..`,a[s-2]),this.$={id:a[s-1],descr:a[s-1],type:r.getType(a[s-2],a[s])};break;case 28:this.$={id:a[s],descr:a[s],type:0};break;case 29:r.getLogger().trace(`node found ..`,a[s-3]),this.$={id:a[s-3],descr:a[s-1],type:r.getType(a[s-2],a[s])};break;case 30:this.$=a[s-1]+a[s];break;case 31:this.$=a[s]}},`anonymous`),table:[{3:1,4:2,5:3,6:[1,5],8:n},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:n},{6:r,7:[1,10],9:9,12:11,13:i,14:14,16:a,17:o,18:17,19:18,20:s,23:c},t(l,[2,3]),{1:[2,2]},t(l,[2,4]),t(l,[2,5]),{1:[2,6],6:r,12:21,13:i,14:14,16:a,17:o,18:17,19:18,20:s,23:c},{6:r,9:22,12:11,13:i,14:14,16:a,17:o,18:17,19:18,20:s,23:c},{6:u,7:d,10:23,11:f},t(p,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:s,23:c}),t(p,[2,19]),t(p,[2,21],{15:30,24:m}),t(p,[2,22]),t(p,[2,23]),t(h,[2,25]),t(h,[2,26]),t(h,[2,28],{20:[1,32]}),{21:[1,33]},{6:u,7:d,10:34,11:f},{1:[2,7],6:r,12:21,13:i,14:14,16:a,17:o,18:17,19:18,20:s,23:c},t(g,[2,14],{7:_,11:v}),t(y,[2,8]),t(y,[2,9]),t(y,[2,10]),t(p,[2,16],{15:37,24:m}),t(p,[2,17]),t(p,[2,18]),t(p,[2,20],{24:b}),t(h,[2,31]),{21:[1,39]},{22:[1,40]},t(g,[2,13],{7:_,11:v}),t(y,[2,11]),t(y,[2,12]),t(p,[2,15],{24:b}),t(h,[2,30]),{22:[1,41]},t(h,[2,27]),t(h,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:e(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:e(function(t){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(t,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;this.parseError=typeof g.yy.parseError==`function`?g.yy.parseError:Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}e(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}e(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
+ `+h.showPosition()+`
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`)};x.lexer=(function(){return{EOF:1,parseError:e(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:e(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:e(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:e(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:e(function(){return this._more=!0,this},`more`),reject:e(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
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:e(function(e){this.unput(this.match.slice(e))},`less`),pastInput:e(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:e(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:e(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
5
+ `+t+`^`},`showPosition`),test_match:e(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:e(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e!==!1&&e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
6
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:e(function(){return this.next()||this.lex()},`lex`),begin:e(function(e){this.conditionStack.push(e)},`begin`),popState:e(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:e(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},`_currentRules`),topState:e(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:e(function(e){this.begin(e)},`pushState`),stateStackSize:e(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:e(function(e,t,n,r){switch(n){case 0:return this.pushState(`shapeData`),t.yytext=``,24;case 1:return this.pushState(`shapeDataStr`),24;case 2:return this.popState(),24;case 3:return t.yytext=t.yytext.replace(/\n\s*/g,`<br/>`),24;case 4:return 24;case 5:this.popState();break;case 6:return e.getLogger().trace(`Found comment`,t.yytext),6;case 7:return 8;case 8:this.begin(`CLASS`);break;case 9:return this.popState(),17;case 10:this.popState();break;case 11:e.getLogger().trace(`Begin icon`),this.begin(`ICON`);break;case 12:return e.getLogger().trace(`SPACELINE`),6;case 13:return 7;case 14:return 16;case 15:e.getLogger().trace(`end icon`),this.popState();break;case 16:return e.getLogger().trace(`Exploding node`),this.begin(`NODE`),20;case 17:return e.getLogger().trace(`Cloud`),this.begin(`NODE`),20;case 18:return e.getLogger().trace(`Explosion Bang`),this.begin(`NODE`),20;case 19:return e.getLogger().trace(`Cloud Bang`),this.begin(`NODE`),20;case 20:return this.begin(`NODE`),20;case 21:return this.begin(`NODE`),20;case 22:return this.begin(`NODE`),20;case 23:return this.begin(`NODE`),20;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin(`NSTR2`);break;case 28:return`NODE_DESCR`;case 29:this.popState();break;case 30:e.getLogger().trace(`Starting NSTR`),this.begin(`NSTR`);break;case 31:return e.getLogger().trace(`description:`,t.yytext),`NODE_DESCR`;case 32:this.popState();break;case 33:return this.popState(),e.getLogger().trace(`node end ))`),`NODE_DEND`;case 34:return this.popState(),e.getLogger().trace(`node end )`),`NODE_DEND`;case 35:return this.popState(),e.getLogger().trace(`node end ...`,t.yytext),`NODE_DEND`;case 36:return this.popState(),e.getLogger().trace(`node end ((`),`NODE_DEND`;case 37:return this.popState(),e.getLogger().trace(`node end (-`),`NODE_DEND`;case 38:return this.popState(),e.getLogger().trace(`node end (-`),`NODE_DEND`;case 39:return this.popState(),e.getLogger().trace(`node end ((`),`NODE_DEND`;case 40:return this.popState(),e.getLogger().trace(`node end ((`),`NODE_DEND`;case 41:return e.getLogger().trace(`Long description:`,t.yytext),21;case 42:return e.getLogger().trace(`Long description:`,t.yytext),21}},`anonymous`),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}}})();function S(){this.yy={}}return e(S,`Parser`),S.prototype=x,x.Parser=S,new S})();g.parser=g;var _=g,v=[],y=[],b=0,x={},S=e(()=>{v=[],y=[],b=0,x={}},`clear`),C=e(e=>{if(v.length===0)return null;let t=v[0].level,n=null;for(let e=v.length-1;e>=0;e--)if(v[e].level===t&&!n&&(n=v[e]),v[e].level<t)throw Error(`Items without section detected, found section ("`+v[e].label+`")`);return e===n?.level?null:n},`getSection`),w=e(function(){return y},`getSections`),T=e(function(){let e=[],t=[],n=w(),i=r();for(let e of n){let n={id:e.id,label:c(e.label??``,i),labelType:`markdown`,isGroup:!0,ticket:e.ticket,shape:`kanbanSection`,level:e.level,look:i.look};t.push(n);let r=v.filter(t=>t.parentId===e.id);for(let n of r){let r={id:n.id,parentId:e.id,label:c(n.label??``,i),labelType:`markdown`,isGroup:!1,ticket:n?.ticket,priority:n?.priority,assigned:n?.assigned,icon:n?.icon,shape:`kanbanItem`,level:n.level,rx:5,ry:5,cssStyles:[`text-align: left`]};t.push(r)}}return{nodes:t,edges:e,other:{},config:r()}},`getData`),E=e((e,t,n,a,o)=>{let s=r(),l=s.mindmap?.padding??i.mindmap.padding;switch(a){case D.ROUNDED_RECT:case D.RECT:case D.HEXAGON:l*=2}let u={id:c(t,s)||`kbn`+b++,level:e,label:c(n,s),width:s.mindmap?.maxNodeWidth??i.mindmap.maxNodeWidth,padding:l,isGroup:!1};if(o!==void 0){let e;e=o.includes(`
7
+ `)?o+`
8
+ `:`{
9
+ `+o+`
10
+ }`;let t=m(e,{schema:h});if(t.shape&&(t.shape!==t.shape.toLowerCase()||t.shape.includes(`_`)))throw Error(`No such shape: ${t.shape}. Shape names should be lowercase.`);t?.shape&&t.shape===`kanbanItem`&&(u.shape=t?.shape),t?.label&&(u.label=t?.label),t?.icon&&(u.icon=t?.icon.toString()),t?.assigned&&(u.assigned=t?.assigned.toString()),t?.ticket&&(u.ticket=t?.ticket.toString()),t?.priority&&(u.priority=t?.priority)}let d=C(e);d?u.parentId=d.id||`kbn`+b++:y.push(u),v.push(u)},`addNode`),D={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},O={clear:S,addNode:E,getSections:w,getData:T,nodeType:D,getType:e((e,n)=>{switch(t.debug(`In get type`,e,n),e){case`[`:return D.RECT;case`(`:return n===`)`?D.ROUNDED_RECT:D.CLOUD;case`((`:return D.CIRCLE;case`)`:return D.CLOUD;case`))`:return D.BANG;case`{{`:return D.HEXAGON;default:return D.DEFAULT}},`getType`),setElementForId:e((e,t)=>{x[e]=t},`setElementForId`),decorateNode:e(e=>{if(!e)return;let t=r(),n=v[v.length-1];e.icon&&(n.icon=c(e.icon,t)),e.class&&(n.cssClasses=c(e.class,t))},`decorateNode`),type2Str:e(e=>{switch(e){case D.DEFAULT:return`no-border`;case D.RECT:return`rect`;case D.ROUNDED_RECT:return`rounded-rect`;case D.CIRCLE:return`circle`;case D.CLOUD:return`cloud`;case D.BANG:return`bang`;case D.HEXAGON:return`hexgon`;default:return`no-border`}},`type2Str`),getLogger:e(()=>t,`getLogger`),getElementById:e(e=>x[e],`getElementById`)},k={draw:e(async(e,a,o,s)=>{t.debug(`Rendering kanban diagram
11
+ `+e);let c=s.db.getData(),l=r();l.htmlLabels=!1;let m=p(a);for(let e of c.nodes)e.domId=`${a}-${e.id}`;let h=m.append(`g`);h.attr(`class`,`sections`);let g=m.append(`g`);g.attr(`class`,`items`);let _=c.nodes.filter(e=>e.isGroup),v=0,y=[],b=25;for(let e of _){let t=l?.kanban?.sectionWidth||200;v+=1,e.x=t*v+(v-1)*10/2,e.width=t,e.y=0,e.height=t*3,e.rx=5,e.ry=5,e.cssClasses=e.cssClasses+` section-`+v;let n=await f(h,e);b=Math.max(b,n?.labelBBox?.height),y.push(n)}let x=0;for(let e of _){let t=y[x];x+=1;let n=l?.kanban?.sectionWidth||200,r=-n*3/2+b,i=r,a=c.nodes.filter(t=>t.parentId===e.id);for(let t of a){if(t.isGroup)throw Error(`Groups within groups are not allowed in Kanban diagrams`);t.x=e.x,t.width=n-15;let r=(await d(g,t,{config:l})).node().getBBox();t.y=i+r.height/2,await u(t),i=t.y+r.height/2+5}let o=t.cluster.select(`rect`),s=Math.max(i-r+30,50)+(b-25);o.attr(`height`,s)}n(void 0,m,l.mindmap?.padding??i.kanban.padding,l.mindmap?.useMaxWidth??i.kanban.useMaxWidth)},`draw`)},A=e(t=>{let n=``;for(let e=0;e<t.THEME_COLOR_LIMIT;e++)t[`lineColor`+e]=t[`lineColor`+e]||t[`cScaleInv`+e],a(t[`lineColor`+e])?t[`lineColor`+e]=o(t[`lineColor`+e],20):t[`lineColor`+e]=s(t[`lineColor`+e],20);let r=e((e,n)=>t.darkMode?s(e,n):o(e,n),`adjuster`);for(let e=0;e<t.THEME_COLOR_LIMIT;e++){let i=``+(17-3*e);n+=`
12
+ .section-${e-1} rect, .section-${e-1} path, .section-${e-1} circle, .section-${e-1} polygon, .section-${e-1} path {
13
+ fill: ${r(t[`cScale`+e],10)};
14
+ stroke: ${r(t[`cScale`+e],10)};
15
+
16
+ }
17
+ .section-${e-1} text {
18
+ fill: ${t[`cScaleLabel`+e]};
19
+ }
20
+ .node-icon-${e-1} {
21
+ font-size: 40px;
22
+ color: ${t[`cScaleLabel`+e]};
23
+ }
24
+ .section-edge-${e-1}{
25
+ stroke: ${t[`cScale`+e]};
26
+ }
27
+ .edge-depth-${e-1}{
28
+ stroke-width: ${i};
29
+ }
30
+ .section-${e-1} line {
31
+ stroke: ${t[`cScaleInv`+e]} ;
32
+ stroke-width: 3;
33
+ }
34
+
35
+ .disabled, .disabled circle, .disabled text {
36
+ fill: lightgray;
37
+ }
38
+ .disabled text {
39
+ fill: #efefef;
40
+ }
41
+
42
+ .node rect,
43
+ .node circle,
44
+ .node ellipse,
45
+ .node polygon,
46
+ .node path {
47
+ fill: ${t.background};
48
+ stroke: ${t.nodeBorder};
49
+ stroke-width: 1px;
50
+ }
51
+
52
+ .kanban-ticket-link {
53
+ fill: ${t.background};
54
+ stroke: ${t.nodeBorder};
55
+ text-decoration: underline;
56
+ }
57
+ `}return n},`genSections`),j={db:O,renderer:k,parser:_,styles:e(e=>`
58
+ .edge {
59
+ stroke-width: 3;
60
+ }
61
+ ${A(e)}
62
+ .section-root rect, .section-root path, .section-root circle, .section-root polygon {
63
+ fill: ${e.git0};
64
+ }
65
+ .section-root text {
66
+ fill: ${e.gitBranchLabel0};
67
+ }
68
+ .icon-container {
69
+ height:100%;
70
+ display: flex;
71
+ justify-content: center;
72
+ align-items: center;
73
+ }
74
+ .edge {
75
+ fill: none;
76
+ }
77
+ .cluster-label, .label {
78
+ color: ${e.textColor};
79
+ fill: ${e.textColor};
80
+ }
81
+ .kanban-label {
82
+ dy: 1em;
83
+ alignment-baseline: middle;
84
+ text-anchor: middle;
85
+ dominant-baseline: middle;
86
+ text-align: center;
87
+ }
88
+ ${l()}
89
+ `,`getStyles`)};export{j as diagram};