@loicngr/kobo 1.6.4 → 1.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/server/routes/workspaces.js +88 -0
  2. package/dist/server/services/workspace-service.js +10 -2
  3. package/dist/server/utils/git-ops.js +41 -0
  4. package/package.json +1 -1
  5. package/src/client/dist/spa/assets/{ActivityFeed-Bsm5QUA9.js → ActivityFeed-DETQbE-a.js} +1 -1
  6. package/src/client/dist/spa/assets/{CreatePage-CyHlqcZv.js → CreatePage-B7e487jg.js} +1 -1
  7. package/src/client/dist/spa/assets/{DiffViewer-BDOGx54T.js → DiffViewer-4-z5gGzs.js} +2 -2
  8. package/src/client/dist/spa/assets/{HealthPage-CwaLsB_m.js → HealthPage-Pof_7jsi.js} +1 -1
  9. package/src/client/dist/spa/assets/{MainLayout-CYMzO0e8.js → MainLayout-CJJ8RX8d.js} +4 -4
  10. package/src/client/dist/spa/assets/{MainLayout-CKGnqXNp.css → MainLayout-Cb6_QXbV.css} +1 -1
  11. package/src/client/dist/spa/assets/{SearchPage-D5C4I5SC.js → SearchPage-Do9kkaR_.js} +1 -1
  12. package/src/client/dist/spa/assets/{SettingsPage-DIDwr-uq.js → SettingsPage-CpvnCfxM.js} +1 -1
  13. package/src/client/dist/spa/assets/{WorkspacePage-Bx_w4QNi.js → WorkspacePage-De-8vIz8.js} +3 -3
  14. package/src/client/dist/spa/assets/{build-path-tree-TBMtG2me.js → build-path-tree-DBKR9p4C.js} +1 -1
  15. package/src/client/dist/spa/assets/{cssMode-noDDoaIu.js → cssMode-D7H4G9u2.js} +1 -1
  16. package/src/client/dist/spa/assets/{documents-C8qHepC2.js → documents-CByb0FJM.js} +1 -1
  17. package/src/client/dist/spa/assets/{editor.api-CtzJLjGf.js → editor.api--wqcZBpd.js} +1 -1
  18. package/src/client/dist/spa/assets/{editor.main-DPd-buqm.js → editor.main-BNIb69JB.js} +3 -3
  19. package/src/client/dist/spa/assets/{freemarker2-BbnROwW1.js → freemarker2-D-thr4Nz.js} +1 -1
  20. package/src/client/dist/spa/assets/{handlebars-Ksvxefhe.js → handlebars-uz-Lnmlq.js} +1 -1
  21. package/src/client/dist/spa/assets/{html-C-hmwqXO.js → html-BrD38Itg.js} +1 -1
  22. package/src/client/dist/spa/assets/{htmlMode-DrAVxVod.js → htmlMode-DhJl0i4i.js} +1 -1
  23. package/src/client/dist/spa/assets/i18n-DBt4wD57.js +1 -0
  24. package/src/client/dist/spa/assets/index-B0Jj-w-E.js +2 -0
  25. package/src/client/dist/spa/assets/{javascript-CPLPvA_S.js → javascript-PJBbOo9I.js} +1 -1
  26. package/src/client/dist/spa/assets/{jsonMode-DOTbDLvn.js → jsonMode-D4akRBRs.js} +1 -1
  27. package/src/client/dist/spa/assets/{liquid-CdSz2rzX.js → liquid-EUlazot7.js} +1 -1
  28. package/src/client/dist/spa/assets/{mdx-D9jK81Jo.js → mdx-BGyD5-MK.js} +1 -1
  29. package/src/client/dist/spa/assets/{models-DVnzXKOh.js → models-GweeyU2r.js} +1 -1
  30. package/src/client/dist/spa/assets/{monaco.contribution-BuL3dvHW.js → monaco.contribution-Ci35AF1I.js} +2 -2
  31. package/src/client/dist/spa/assets/{python-Dge5WJA8.js → python-BG_aaGdU.js} +1 -1
  32. package/src/client/dist/spa/assets/{razor-CuTUK6Ln.js → razor-BWRO_-vh.js} +1 -1
  33. package/src/client/dist/spa/assets/{tsMode-CV1esWeE.js → tsMode-CfJ3FSRi.js} +1 -1
  34. package/src/client/dist/spa/assets/{typescript-CG_BbDRI.js → typescript-BD5IT0Pn.js} +1 -1
  35. package/src/client/dist/spa/assets/{xml-GLWDavVQ.js → xml-DBx8yQFe.js} +1 -1
  36. package/src/client/dist/spa/assets/{yaml-BFBo2noB.js → yaml-DdHKmdlx.js} +1 -1
  37. package/src/client/dist/spa/index.html +1 -1
  38. package/src/client/dist/spa/assets/i18n-Dah5k8f2.js +0 -1
  39. package/src/client/dist/spa/assets/index-Y9eYNsHp.js +0 -2
@@ -1 +1 @@
1
- .acceptance-item[data-v-63b144ad]{padding:2px 0}.acceptance-item[data-v-63b144ad]:hover{background-color:#ffffff08}.acceptance-item:hover .criterion-delete-btn[data-v-63b144ad]{opacity:1}.criterion-delete-btn[data-v-63b144ad]{opacity:0;transition:opacity .15s}.acceptance-title[data-v-63b144ad]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-63b144ad]{opacity:.7;text-decoration:line-through}.criterion-input[data-v-63b144ad] .q-field__control{height:22px;min-height:22px;padding:0}.criterion-input[data-v-63b144ad] input{color:#e0e0e0;font-size:12px}.criterion-input[data-v-63b144ad] input::placeholder{color:#555}.criterion-add-row[data-v-63b144ad],.todo-item[data-v-4eddf754]{padding:2px 0}.todo-title[data-v-4eddf754]{word-break:break-word;line-height:1.4}.text-strike[data-v-4eddf754]{opacity:.7;text-decoration:line-through}.documents-tree[data-v-445c589c] .q-tree__node--selected>.q-tree__node-header{background:#7986cb26}.documents-tree[data-v-445c589c] .q-tree__node-header{padding:2px 4px}.document-content[data-v-445c589c]{color:#d0d0d0;overflow-wrap:break-word;font-size:12px;line-height:1.6}.document-content[data-v-445c589c] h1{color:#e0e0e0;margin:16px 0 8px;font-size:16px}.document-content[data-v-445c589c] h2{color:#e0e0e0;margin:14px 0 6px;font-size:14px}.document-content[data-v-445c589c] h3{color:#e0e0e0;margin:12px 0 4px;font-size:13px}.document-content[data-v-445c589c] code{background:#1a1a2e;border-radius:3px;padding:1px 4px;font-family:Roboto Mono,monospace;font-size:11px}.document-content[data-v-445c589c] pre{background:#1a1a2e;border-radius:6px;padding:8px 12px;font-size:11px;overflow-x:auto}.document-content[data-v-445c589c] pre code{background:0 0;padding:0}.document-content[data-v-445c589c] ul,.document-content[data-v-445c589c] ol{padding-left:20px}.document-content[data-v-445c589c] li{margin-bottom:2px}.document-content[data-v-445c589c] input[type=checkbox]{pointer-events:none;margin-right:6px}.document-content[data-v-445c589c] table{border-collapse:collapse;width:100%;margin:8px 0;font-size:11px}.document-content[data-v-445c589c] th,.document-content[data-v-445c589c] td{text-align:left;border:1px solid #2a2a4a;padding:4px 8px}.document-content[data-v-445c589c] th{color:#e0e0e0;background:#1a1a2e}.document-content[data-v-445c589c] blockquote{color:#a0a0b0;border-left:3px solid #4a4a6a;margin:8px 0;padding:4px 12px}.document-content[data-v-445c589c] a{color:#818cf8}.document-content[data-v-445c589c] hr{border:none;border-top:1px solid #2a2a4a;margin:12px 0}.git-btn[data-v-26d8ec42]{padding:2px 8px;font-size:11px}.git-sync-btn[data-v-26d8ec42]{padding:2px 0}.git-sync-btn[data-v-26d8ec42] .q-btn__content{padding:0 8px}.git-sync-btn[data-v-26d8ec42] .q-btn-dropdown__arrow-container{border-left:1px solid #ffffff1f;padding:0 4px}.git-sync-btn[data-v-26d8ec42] .q-btn-dropdown--split{gap:0}.commit-toggle[data-v-26d8ec42]:hover{background-color:#ffffff08;border-radius:3px}.commit-list[data-v-26d8ec42]{border-left:2px solid #ffffff0a;max-height:260px;margin-left:7px;padding-left:6px;overflow-y:auto}.commit-item[data-v-26d8ec42]{border-radius:3px;padding:3px 4px;font-size:11px;line-height:1.3;transition:background-color .1s}.commit-item[data-v-26d8ec42]:hover{background-color:#818cf814}.commit-item-icon[data-v-26d8ec42]{flex-shrink:0}.commit-sha[data-v-26d8ec42]{flex-shrink:0;font-family:Roboto Mono,monospace;font-size:10.5px}.commit-subject[data-v-26d8ec42]{min-width:0;font-size:11px}.notion-link[data-v-99e38dbd]{text-decoration:none;display:inline-flex}.notion-link[data-v-99e38dbd]:hover{text-decoration:underline}.task-item[data-v-99e38dbd]{padding:2px 0}.task-item[data-v-99e38dbd]:hover{background-color:#ffffff08}.task-item:hover .task-delete-btn[data-v-99e38dbd]{opacity:1}.task-delete-btn[data-v-99e38dbd]{opacity:0;transition:opacity .15s}.task-title[data-v-99e38dbd]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-99e38dbd]{opacity:.7;text-decoration:line-through}.task-input[data-v-99e38dbd] .q-field__control{height:22px;min-height:22px;padding:0}.task-input[data-v-99e38dbd] input{color:#e0e0e0;font-size:12px}.task-input[data-v-99e38dbd] input::placeholder{color:#555}.task-add-row[data-v-99e38dbd]{padding:2px 0}.stat-group-label[data-v-61fd94e7]{text-transform:uppercase;letter-spacing:.05em;color:#888;font-size:10px;font-weight:600}.stat-row[data-v-61fd94e7]{justify-content:space-between;align-items:center;padding:2px 0;display:flex}.stat-label[data-v-61fd94e7]{color:#999;font-size:12px}.stat-value[data-v-61fd94e7]{color:#ddd;font-family:Roboto Mono,monospace;font-size:12px;font-weight:500}.stat-value-muted[data-v-61fd94e7]{color:#999;margin-left:4px;font-size:11px}.stat-subtext[data-v-61fd94e7]{color:#8a8aa8;font-size:11px}.usage-breakdown[data-v-61fd94e7]{background:#2a2a4f;border:1px solid #3b3b61;border-radius:999px;width:100%;height:8px;display:flex;overflow:hidden}.usage-breakdown-input[data-v-61fd94e7]{background:linear-gradient(90deg,#6d76ff 0%,#8f96ff 100%);height:100%}.usage-breakdown-output[data-v-61fd94e7]{background:linear-gradient(90deg,#7f6bff 0%,#a598ff 100%);height:100%}.stat-value-ellipsis[data-v-61fd94e7]{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.stat-section[data-v-61fd94e7]{justify-content:space-between;align-items:center;display:flex}.subagents-panel[data-v-81ad2481]{overflow-y:auto}.subagent-item[data-v-81ad2481]{background:#1e1e3a;border:1px solid #2a2a4a}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.xterm .xterm-accessibility-tree:not(.debug) ::-moz-selection{color:#0000}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:-moz-fit-content;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.log-content[data-v-9e03d2b2]{max-height:60vh;overflow-y:auto}.log-text[data-v-9e03d2b2]{color:#ccc;white-space:pre-wrap;word-break:break-all;background:#0d0d1a;margin:0;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px}.dd-panel[data-v-20c5f4bd],.tools-panel[data-v-e0d46842]{min-height:48px}.workspace-list[data-v-2c995117]{background-color:#16162a;overflow-x:hidden}.wl-search[data-v-2c995117]{background-color:#224;padding:0 8px}.wl-search[data-v-2c995117] .q-field__control{height:32px}.wl-search[data-v-2c995117] input{color:#ccc;font-size:12px}.wl-group-header[data-v-2c995117]:hover{background-color:#ffffff08}.wl-project-group+.wl-project-group[data-v-2c995117]{margin-top:6px}.wl-project-label[data-v-2c995117]{align-items:center;padding-bottom:2px;font-size:11px;display:flex}.wl-item[data-v-2c995117]{background-color:#224;margin-bottom:4px;transition:background-color .15s;position:relative}.wl-item[data-v-2c995117]:last-child{margin-bottom:0}.wl-item[data-v-2c995117]:hover{background-color:#2a2a4a}.wl-item--selected[data-v-2c995117]{background-color:#2a2a4a;outline:1px solid #6c63ff66}.wl-item-action[data-v-2c995117]{position:absolute;top:4px;right:4px}.wl-item--archived .wl-item-action[data-v-2c995117]{opacity:0;transition:opacity .15s}.wl-item--archived:hover .wl-item-action[data-v-2c995117]{opacity:1}.wl-item-unarchive[data-v-2c995117]{right:28px}.wl-item-delete[data-v-2c995117]{right:4px}.wl-item--archived[data-v-2c995117]{opacity:.6;background-color:#1a1a30}.wl-item--archived[data-v-2c995117]:hover{opacity:.85}.wl-item--archived.wl-item--selected[data-v-2c995117]{opacity:1}.dd-dot[data-v-2c995117]{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dd-dot--running[data-v-2c995117]{background-color:#22c55e;box-shadow:0 0 4px #22c55e80}.bg-dark[data-v-8439d8a0]{background-color:#16162a!important;border-color:#2a2a4a!important}.resize-handle[data-v-8439d8a0]{cursor:col-resize;z-index:10;width:4px;height:100%;transition:background-color .15s;position:absolute;top:0;right:-2px}.resize-handle[data-v-8439d8a0]:hover,.resize-handle[data-v-8439d8a0]:active{background-color:#6c63ff80}.resize-handle--right[data-v-8439d8a0]{left:-2px;right:auto}.vertical-resize-handle[data-v-8439d8a0]{cursor:row-resize;background-color:#2a2a4a;height:4px;transition:background-color .15s}.vertical-resize-handle[data-v-8439d8a0]:hover,.vertical-resize-handle[data-v-8439d8a0]:active{background-color:#6c63ff80}
1
+ .acceptance-item[data-v-63b144ad]{padding:2px 0}.acceptance-item[data-v-63b144ad]:hover{background-color:#ffffff08}.acceptance-item:hover .criterion-delete-btn[data-v-63b144ad]{opacity:1}.criterion-delete-btn[data-v-63b144ad]{opacity:0;transition:opacity .15s}.acceptance-title[data-v-63b144ad]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-63b144ad]{opacity:.7;text-decoration:line-through}.criterion-input[data-v-63b144ad] .q-field__control{height:22px;min-height:22px;padding:0}.criterion-input[data-v-63b144ad] input{color:#e0e0e0;font-size:12px}.criterion-input[data-v-63b144ad] input::placeholder{color:#555}.criterion-add-row[data-v-63b144ad],.todo-item[data-v-4eddf754]{padding:2px 0}.todo-title[data-v-4eddf754]{word-break:break-word;line-height:1.4}.text-strike[data-v-4eddf754]{opacity:.7;text-decoration:line-through}.documents-tree[data-v-445c589c] .q-tree__node--selected>.q-tree__node-header{background:#7986cb26}.documents-tree[data-v-445c589c] .q-tree__node-header{padding:2px 4px}.document-content[data-v-445c589c]{color:#d0d0d0;overflow-wrap:break-word;font-size:12px;line-height:1.6}.document-content[data-v-445c589c] h1{color:#e0e0e0;margin:16px 0 8px;font-size:16px}.document-content[data-v-445c589c] h2{color:#e0e0e0;margin:14px 0 6px;font-size:14px}.document-content[data-v-445c589c] h3{color:#e0e0e0;margin:12px 0 4px;font-size:13px}.document-content[data-v-445c589c] code{background:#1a1a2e;border-radius:3px;padding:1px 4px;font-family:Roboto Mono,monospace;font-size:11px}.document-content[data-v-445c589c] pre{background:#1a1a2e;border-radius:6px;padding:8px 12px;font-size:11px;overflow-x:auto}.document-content[data-v-445c589c] pre code{background:0 0;padding:0}.document-content[data-v-445c589c] ul,.document-content[data-v-445c589c] ol{padding-left:20px}.document-content[data-v-445c589c] li{margin-bottom:2px}.document-content[data-v-445c589c] input[type=checkbox]{pointer-events:none;margin-right:6px}.document-content[data-v-445c589c] table{border-collapse:collapse;width:100%;margin:8px 0;font-size:11px}.document-content[data-v-445c589c] th,.document-content[data-v-445c589c] td{text-align:left;border:1px solid #2a2a4a;padding:4px 8px}.document-content[data-v-445c589c] th{color:#e0e0e0;background:#1a1a2e}.document-content[data-v-445c589c] blockquote{color:#a0a0b0;border-left:3px solid #4a4a6a;margin:8px 0;padding:4px 12px}.document-content[data-v-445c589c] a{color:#818cf8}.document-content[data-v-445c589c] hr{border:none;border-top:1px solid #2a2a4a;margin:12px 0}.git-btn[data-v-90ea7311]{padding:2px 8px;font-size:11px}.git-sync-btn[data-v-90ea7311]{padding:2px 0}.git-sync-btn[data-v-90ea7311] .q-btn__content{padding:0 8px}.git-sync-btn[data-v-90ea7311] .q-btn-dropdown__arrow-container{border-left:1px solid #ffffff1f;padding:0 4px}.git-sync-btn[data-v-90ea7311] .q-btn-dropdown--split{gap:0}.commit-toggle[data-v-90ea7311]:hover{background-color:#ffffff08;border-radius:3px}.commit-list[data-v-90ea7311]{border-left:2px solid #ffffff0a;max-height:260px;margin-left:7px;padding-left:6px;overflow-y:auto}.commit-item[data-v-90ea7311]{border-radius:3px;padding:3px 4px;font-size:11px;line-height:1.3;transition:background-color .1s}.commit-item[data-v-90ea7311]:hover{background-color:#818cf814}.commit-item-icon[data-v-90ea7311]{flex-shrink:0}.commit-sha[data-v-90ea7311]{flex-shrink:0;font-family:Roboto Mono,monospace;font-size:10.5px}.commit-subject[data-v-90ea7311]{min-width:0;font-size:11px}.notion-link[data-v-99e38dbd]{text-decoration:none;display:inline-flex}.notion-link[data-v-99e38dbd]:hover{text-decoration:underline}.task-item[data-v-99e38dbd]{padding:2px 0}.task-item[data-v-99e38dbd]:hover{background-color:#ffffff08}.task-item:hover .task-delete-btn[data-v-99e38dbd]{opacity:1}.task-delete-btn[data-v-99e38dbd]{opacity:0;transition:opacity .15s}.task-title[data-v-99e38dbd]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-99e38dbd]{opacity:.7;text-decoration:line-through}.task-input[data-v-99e38dbd] .q-field__control{height:22px;min-height:22px;padding:0}.task-input[data-v-99e38dbd] input{color:#e0e0e0;font-size:12px}.task-input[data-v-99e38dbd] input::placeholder{color:#555}.task-add-row[data-v-99e38dbd]{padding:2px 0}.stat-group-label[data-v-61fd94e7]{text-transform:uppercase;letter-spacing:.05em;color:#888;font-size:10px;font-weight:600}.stat-row[data-v-61fd94e7]{justify-content:space-between;align-items:center;padding:2px 0;display:flex}.stat-label[data-v-61fd94e7]{color:#999;font-size:12px}.stat-value[data-v-61fd94e7]{color:#ddd;font-family:Roboto Mono,monospace;font-size:12px;font-weight:500}.stat-value-muted[data-v-61fd94e7]{color:#999;margin-left:4px;font-size:11px}.stat-subtext[data-v-61fd94e7]{color:#8a8aa8;font-size:11px}.usage-breakdown[data-v-61fd94e7]{background:#2a2a4f;border:1px solid #3b3b61;border-radius:999px;width:100%;height:8px;display:flex;overflow:hidden}.usage-breakdown-input[data-v-61fd94e7]{background:linear-gradient(90deg,#6d76ff 0%,#8f96ff 100%);height:100%}.usage-breakdown-output[data-v-61fd94e7]{background:linear-gradient(90deg,#7f6bff 0%,#a598ff 100%);height:100%}.stat-value-ellipsis[data-v-61fd94e7]{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.stat-section[data-v-61fd94e7]{justify-content:space-between;align-items:center;display:flex}.subagents-panel[data-v-81ad2481]{overflow-y:auto}.subagent-item[data-v-81ad2481]{background:#1e1e3a;border:1px solid #2a2a4a}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.xterm .xterm-accessibility-tree:not(.debug) ::-moz-selection{color:#0000}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:-moz-fit-content;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.log-content[data-v-9e03d2b2]{max-height:60vh;overflow-y:auto}.log-text[data-v-9e03d2b2]{color:#ccc;white-space:pre-wrap;word-break:break-all;background:#0d0d1a;margin:0;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px}.dd-panel[data-v-20c5f4bd],.tools-panel[data-v-e0d46842]{min-height:48px}.workspace-list[data-v-2c995117]{background-color:#16162a;overflow-x:hidden}.wl-search[data-v-2c995117]{background-color:#224;padding:0 8px}.wl-search[data-v-2c995117] .q-field__control{height:32px}.wl-search[data-v-2c995117] input{color:#ccc;font-size:12px}.wl-group-header[data-v-2c995117]:hover{background-color:#ffffff08}.wl-project-group+.wl-project-group[data-v-2c995117]{margin-top:6px}.wl-project-label[data-v-2c995117]{align-items:center;padding-bottom:2px;font-size:11px;display:flex}.wl-item[data-v-2c995117]{background-color:#224;margin-bottom:4px;transition:background-color .15s;position:relative}.wl-item[data-v-2c995117]:last-child{margin-bottom:0}.wl-item[data-v-2c995117]:hover{background-color:#2a2a4a}.wl-item--selected[data-v-2c995117]{background-color:#2a2a4a;outline:1px solid #6c63ff66}.wl-item-action[data-v-2c995117]{position:absolute;top:4px;right:4px}.wl-item--archived .wl-item-action[data-v-2c995117]{opacity:0;transition:opacity .15s}.wl-item--archived:hover .wl-item-action[data-v-2c995117]{opacity:1}.wl-item-unarchive[data-v-2c995117]{right:28px}.wl-item-delete[data-v-2c995117]{right:4px}.wl-item--archived[data-v-2c995117]{opacity:.6;background-color:#1a1a30}.wl-item--archived[data-v-2c995117]:hover{opacity:.85}.wl-item--archived.wl-item--selected[data-v-2c995117]{opacity:1}.dd-dot[data-v-2c995117]{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dd-dot--running[data-v-2c995117]{background-color:#22c55e;box-shadow:0 0 4px #22c55e80}.bg-dark[data-v-8439d8a0]{background-color:#16162a!important;border-color:#2a2a4a!important}.resize-handle[data-v-8439d8a0]{cursor:col-resize;z-index:10;width:4px;height:100%;transition:background-color .15s;position:absolute;top:0;right:-2px}.resize-handle[data-v-8439d8a0]:hover,.resize-handle[data-v-8439d8a0]:active{background-color:#6c63ff80}.resize-handle--right[data-v-8439d8a0]{left:-2px;right:auto}.vertical-resize-handle[data-v-8439d8a0]{cursor:row-resize;background-color:#2a2a4a;height:4px;transition:background-color .15s}.vertical-resize-handle[data-v-8439d8a0]:hover,.vertical-resize-handle[data-v-8439d8a0]:active{background-color:#6c63ff80}
@@ -1 +1 @@
1
- import{F as e,H as t,L as n,Q as r,U as i,bt as a,d as o,f as s,g as c,p as l,r as u,rt as d,u as f,v as p}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{t as m}from"./QIcon-B0-pH3Qs.js";import{t as h}from"./QSeparator-DNSiXYrN.js";import{i as g}from"./use-id-BmXMngYX.js";import{n as _}from"./vue-i18n-eUDnMrPl.js";import{i as v,m as y,n as b}from"./index-Y9eYNsHp.js";import{t as x}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as S}from"./QBadge-Di02fu2H.js";import{t as C}from"./QSpace-0zdF1m5x.js";import{t as w}from"./formatters-D7eTm7uK.js";import{t as T}from"./QPage-BTzNQlb1.js";var E=g(`search`,{state:()=>({query:``,includeArchived:!1,results:[],loading:!1,error:``}),actions:{async search(){let e=this.query.trim();if(!e){this.results=[],this.error=``;return}this.loading=!0,this.error=``;try{let t=new URLSearchParams({q:e});this.includeArchived&&t.set(`includeArchived`,`true`);let n=await fetch(`/api/search?${t.toString()}`);if(!n.ok){let e=`HTTP ${n.status}`;try{let t=await n.json();t?.error&&(e=t.error)}catch{}throw Error(e)}this.results=await n.json()}catch(e){this.error=e instanceof Error?e.message:String(e),this.results=[]}finally{this.loading=!1}},clear(){this.query=``,this.results=[],this.error=``}}}),D={class:`search-header`},O={class:`text-h5 q-mb-md`},k={class:`row items-center q-mt-sm q-gutter-sm`},A={key:0,class:`text-caption text-grey-6`},j={key:0,class:`text-grey-6 text-caption`},M={key:1,class:`text-negative text-caption`},N={key:2,class:`text-grey-6 text-caption`},P={key:3,class:`search-results`},F=[`onClick`],I={class:`row items-center q-mb-xs text-caption`},L={class:`text-grey-5 text-weight-medium`},R={class:`text-grey-6`},z={class:`search-snippet text-body2 text-grey-4`},B=x(p({__name:`SearchPage`,setup(p){let g=E(),x=y(),{t:B}=_(),{timeAgo:V}=w(),H=r(null),U=null;function W(){U&&clearTimeout(U),U=setTimeout(()=>{g.search()},250)}t(()=>g.includeArchived,()=>{g.query.trim().length>0&&g.search()});function G(e){x.push({name:`workspace`,params:{id:e}})}function K(e){return e===`user:message`?B(`search.eventType.userMessage`):e===`agent:output`?B(`search.eventType.agentOutput`):e}return(t,r)=>(e(),o(T,{class:`q-pa-md search-page`},{default:i(()=>[f(`div`,D,[f(`h2`,O,a(t.$t(`search.title`)),1),c(v,{ref_key:`inputEl`,ref:H,modelValue:d(g).query,"onUpdate:modelValue":[r[0]||=e=>d(g).query=e,W],dense:``,dark:``,outlined:``,clearable:``,autofocus:``,placeholder:t.$t(`search.placeholder`),onClear:r[1]||=e=>d(g).clear()},{prepend:i(()=>[c(m,{name:`search`})]),_:1},8,[`modelValue`,`placeholder`]),f(`div`,k,[c(b,{modelValue:d(g).includeArchived,"onUpdate:modelValue":r[2]||=e=>d(g).includeArchived=e,label:t.$t(`search.includeArchived`),dense:``,dark:``,color:`indigo-4`,size:`sm`},null,8,[`modelValue`,`label`]),c(C),d(g).results.length>0?(e(),l(`span`,A,a(t.$t(`search.resultCount`,{n:d(g).results.length})),1)):s(``,!0)])]),c(h,{dark:``,class:`q-my-md`}),d(g).loading?(e(),l(`div`,j,a(t.$t(`search.loading`)),1)):d(g).error?(e(),l(`div`,M,a(t.$t(`search.error`,{message:d(g).error})),1)):d(g).query.trim().length>0&&d(g).results.length===0?(e(),l(`div`,N,a(t.$t(`search.noResults`)),1)):d(g).results.length>0?(e(),l(`div`,P,[(e(!0),l(u,null,n(d(g).results,(n,r)=>(e(),l(`div`,{key:`${n.workspaceId}-${n.timestamp}-${r}`,class:`search-result q-pa-sm q-mb-sm cursor-pointer`,onClick:e=>G(n.workspaceId)},[f(`div`,I,[f(`span`,L,a(n.workspaceName),1),n.archived?(e(),o(S,{key:0,color:`grey-7`,class:`q-ml-xs`,label:t.$t(`common.archive`)},null,8,[`label`])):s(``,!0),c(C),c(S,{color:n.type===`user:message`?`blue-grey-7`:`indigo-7`,class:`q-mr-sm`,label:K(n.type)},null,8,[`color`,`label`]),f(`span`,R,a(d(V)(n.timestamp)),1)]),f(`div`,z,a(n.snippet),1)],8,F))),128))])):s(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-f2604415`]]);export{B as default};
1
+ import{F as e,H as t,L as n,Q as r,U as i,bt as a,d as o,f as s,g as c,p as l,r as u,rt as d,u as f,v as p}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{t as m}from"./QIcon-B0-pH3Qs.js";import{t as h}from"./QSeparator-DNSiXYrN.js";import{i as g}from"./use-id-BmXMngYX.js";import{n as _}from"./vue-i18n-eUDnMrPl.js";import{i as v,m as y,n as b}from"./index-B0Jj-w-E.js";import{t as x}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as S}from"./QBadge-Di02fu2H.js";import{t as C}from"./QSpace-0zdF1m5x.js";import{t as w}from"./formatters-D7eTm7uK.js";import{t as T}from"./QPage-BTzNQlb1.js";var E=g(`search`,{state:()=>({query:``,includeArchived:!1,results:[],loading:!1,error:``}),actions:{async search(){let e=this.query.trim();if(!e){this.results=[],this.error=``;return}this.loading=!0,this.error=``;try{let t=new URLSearchParams({q:e});this.includeArchived&&t.set(`includeArchived`,`true`);let n=await fetch(`/api/search?${t.toString()}`);if(!n.ok){let e=`HTTP ${n.status}`;try{let t=await n.json();t?.error&&(e=t.error)}catch{}throw Error(e)}this.results=await n.json()}catch(e){this.error=e instanceof Error?e.message:String(e),this.results=[]}finally{this.loading=!1}},clear(){this.query=``,this.results=[],this.error=``}}}),D={class:`search-header`},O={class:`text-h5 q-mb-md`},k={class:`row items-center q-mt-sm q-gutter-sm`},A={key:0,class:`text-caption text-grey-6`},j={key:0,class:`text-grey-6 text-caption`},M={key:1,class:`text-negative text-caption`},N={key:2,class:`text-grey-6 text-caption`},P={key:3,class:`search-results`},F=[`onClick`],I={class:`row items-center q-mb-xs text-caption`},L={class:`text-grey-5 text-weight-medium`},R={class:`text-grey-6`},z={class:`search-snippet text-body2 text-grey-4`},B=x(p({__name:`SearchPage`,setup(p){let g=E(),x=y(),{t:B}=_(),{timeAgo:V}=w(),H=r(null),U=null;function W(){U&&clearTimeout(U),U=setTimeout(()=>{g.search()},250)}t(()=>g.includeArchived,()=>{g.query.trim().length>0&&g.search()});function G(e){x.push({name:`workspace`,params:{id:e}})}function K(e){return e===`user:message`?B(`search.eventType.userMessage`):e===`agent:output`?B(`search.eventType.agentOutput`):e}return(t,r)=>(e(),o(T,{class:`q-pa-md search-page`},{default:i(()=>[f(`div`,D,[f(`h2`,O,a(t.$t(`search.title`)),1),c(v,{ref_key:`inputEl`,ref:H,modelValue:d(g).query,"onUpdate:modelValue":[r[0]||=e=>d(g).query=e,W],dense:``,dark:``,outlined:``,clearable:``,autofocus:``,placeholder:t.$t(`search.placeholder`),onClear:r[1]||=e=>d(g).clear()},{prepend:i(()=>[c(m,{name:`search`})]),_:1},8,[`modelValue`,`placeholder`]),f(`div`,k,[c(b,{modelValue:d(g).includeArchived,"onUpdate:modelValue":r[2]||=e=>d(g).includeArchived=e,label:t.$t(`search.includeArchived`),dense:``,dark:``,color:`indigo-4`,size:`sm`},null,8,[`modelValue`,`label`]),c(C),d(g).results.length>0?(e(),l(`span`,A,a(t.$t(`search.resultCount`,{n:d(g).results.length})),1)):s(``,!0)])]),c(h,{dark:``,class:`q-my-md`}),d(g).loading?(e(),l(`div`,j,a(t.$t(`search.loading`)),1)):d(g).error?(e(),l(`div`,M,a(t.$t(`search.error`,{message:d(g).error})),1)):d(g).query.trim().length>0&&d(g).results.length===0?(e(),l(`div`,N,a(t.$t(`search.noResults`)),1)):d(g).results.length>0?(e(),l(`div`,P,[(e(!0),l(u,null,n(d(g).results,(n,r)=>(e(),l(`div`,{key:`${n.workspaceId}-${n.timestamp}-${r}`,class:`search-result q-pa-sm q-mb-sm cursor-pointer`,onClick:e=>G(n.workspaceId)},[f(`div`,I,[f(`span`,L,a(n.workspaceName),1),n.archived?(e(),o(S,{key:0,color:`grey-7`,class:`q-ml-xs`,label:t.$t(`common.archive`)},null,8,[`label`])):s(``,!0),c(C),c(S,{color:n.type===`user:message`?`blue-grey-7`:`indigo-7`,class:`q-mr-sm`,label:K(n.type)},null,8,[`color`,`label`]),f(`span`,R,a(d(V)(n.timestamp)),1)]),f(`div`,z,a(n.snippet),1)],8,F))),128))])):s(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-f2604415`]]);export{B as default};
@@ -1 +1 @@
1
- import{F as e,H as t,L as n,M as r,N as i,Q as a,U as o,W as ee,_t as te,bt as s,d as c,f as l,g as u,h as d,l as f,p,r as m,rt as h,u as g,v as ne}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{t as re}from"./QIcon-B0-pH3Qs.js";import{t as _}from"./QSeparator-DNSiXYrN.js";import{t as ie}from"./QDialog-G448EJG4.js";import{t as v}from"./QBtn-CyzfM9-_.js";import{n as ae}from"./vue-i18n-eUDnMrPl.js";import{D as oe,T as se,d as ce,i as y,n as b,w as le,x as ue}from"./index-Y9eYNsHp.js";import{n as de,t as fe}from"./QItemSection-BzWLL-V-.js";import{t as x}from"./QItemLabel-Czw5g0px.js";import{t as pe}from"./QExpansionItem-HLBjHx-0.js";import{t as me}from"./QTooltip-DbEBexRN.js";import{t as S}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as he}from"./QSpace-0zdF1m5x.js";import{i as ge,n as _e,r as ve,t as ye}from"./QTabPanels-Cw4nnIbR.js";import{t as be}from"./use-quasar-BBrzedjR.js";import{t as xe}from"./QList-D2GuTeLl.js";import{t as Se}from"./ClosePopup-DTgXzcoa.js";import{n as C,t as Ce}from"./models-DVnzXKOh.js";import{t as we}from"./QPage-BTzNQlb1.js";var Te={class:`settings-inner`},Ee={class:`settings-header row items-center q-mb-lg`},De={class:`text-h5 text-weight-medium text-grey-3`},Oe={class:`settings-card rounded-borders q-pa-lg`},ke={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Ae={class:`q-mb-lg`},je={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Me={class:`q-mb-lg`},Ne={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Pe={class:`q-mb-lg`},Fe={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ie={class:`text-caption text-red-4 q-mt-xs`},Le={class:`q-mb-lg`},Re={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ze={class:`text-caption text-grey-7 q-mt-xs`},Be={class:`q-mb-lg`},Ve={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},He={class:`q-mb-lg`},Ue={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},We={class:`q-mb-md`},Ge={class:`q-mb-lg`},Ke={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},qe={class:`text-caption text-grey-7 q-mt-xs`},Je={class:`q-mb-lg`},Ye={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Xe={class:`text-caption text-grey-7 q-mt-xs`},Ze={class:`q-mb-lg`},Qe={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},$e={class:`text-caption text-grey-7 q-mt-xs`},et={class:`q-mb-lg`},tt={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},nt={class:`q-mb-sm`},rt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},it={class:`q-mb-sm`},at={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ot={class:`text-caption text-grey-7 q-mt-xs`},st={class:`q-mb-lg`},ct={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},lt={class:`q-mb-sm`},ut={class:`field-label-sub text-caption q-mb-xs text-grey-7`},dt={class:`q-mb-sm`},ft={class:`field-label-sub text-caption q-mb-xs text-grey-7`},pt={class:`text-caption text-grey-7 q-mt-xs`},mt={class:`settings-card q-pa-md rounded-borders`},ht={class:`text-subtitle2 q-mb-sm`},gt={class:`text-caption text-grey-7 q-mb-sm`},_t={class:`settings-card q-pa-md rounded-borders`},vt={class:`text-subtitle2 q-mb-sm`},yt={class:`text-caption text-grey-7 q-mb-sm`},bt={class:`row q-gutter-sm`},xt={class:`row justify-end`},St={class:`row q-gutter-md`,style:{"min-height":`500px`}},Ct={class:`project-list-col`},wt={class:`settings-card rounded-borders`,style:{height:`100%`}},Tt={class:`q-pa-sm`},Et={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-grey-6`,style:{"letter-spacing":`0.05em`}},Dt={key:0,class:`q-pa-md text-center text-caption text-grey-8`},Ot={class:`q-pa-sm`},kt={class:`project-form-col`},At={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},jt={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Mt={class:`q-mb-md`},Nt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Pt={class:`q-mb-md`},Ft={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},It={class:`q-mb-md`},Lt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Rt={class:`q-mb-md`},zt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Bt={class:`q-mb-md`},Vt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ht={class:`q-mb-md`},Ut={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Wt={class:`q-mb-md`},Gt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Kt={class:`text-caption text-grey-7 q-mt-xs`},qt={class:`q-mb-lg`},Jt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Yt={class:`text-caption text-grey-7 q-mt-xs`},Xt={class:`q-mb-lg`},Zt={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},Qt={class:`q-mb-md`},$t={class:`field-label-sub text-caption q-mb-xs text-grey-7`},en={class:`field-label-sub text-caption q-mb-xs text-grey-7`},tn={class:`row items-center q-gutter-sm`},nn={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},rn={class:`text-body2 text-grey-8`},an={class:`settings-card rounded-borders q-pa-lg`},on={class:`row items-center justify-between q-mb-md`},sn={class:`text-subtitle1 text-weight-medium text-grey-3`},cn={key:0,class:`text-grey-6 q-py-lg text-center`},ln={key:1,class:`column q-gutter-sm`},un={class:`row items-start justify-between no-wrap`},dn={class:`col`},fn={class:`text-body1 text-weight-medium`,style:{"font-family":`'Roboto Mono', monospace`}},pn={class:`text-caption text-grey-5 q-mt-xs`},mn={class:`row no-wrap q-gutter-xs`},hn={class:`text-caption text-grey-7 q-mt-lg`,style:{"font-family":`'Roboto Mono', monospace`}},gn={class:`text-subtitle1`},_n={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,columns:`2`,"column-gap":`24px`}},vn={key:0,class:`text-negative text-caption`},w=S(ne({__name:`SettingsPage`,setup(ne){let S=be(),w=ue(),T=le(),{t:E,locale:yn}=ae(),D=a(`global`),O=a(`auto`),k=a(!0),A=a(``),j=a(``),M=a(``),N=a(!0),P=a(!0),F=a(``),I=a(``),L=a(`plan`),R=a(``),z=a(``),B=a([]),V=a(!1),H=a(-1),U=a(!1),W=a({path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,dangerouslySkipPermissions:!0,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``}}),G=a([]),bn=a(!1),xn=a(!1),Sn=a(!1),K=a(!1),q=a(null),J=a(``),Y=a(``),X=a(``),Z=a(``),Cn=a(!1),wn=f(()=>[...T.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),Tn=[`{workspace_name}`,`{working_branch}`,`{source_branch}`,`{project_path}`,`{worktree_path}`,`{commit_count}`,`{unpushed_count}`,`{files_changed}`,`{insertions}`,`{deletions}`,`{pr_number}`,`{pr_url}`,`{pr_state}`,`{session_name}`];function En(){q.value=null,J.value=``,Y.value=``,X.value=``,Z.value=``,K.value=!0}function Dn(e){q.value=e.slug,J.value=e.slug,Y.value=e.description,X.value=e.content,Z.value=``,K.value=!0}async function On(){Z.value=``;let e=J.value.trim(),t=Y.value.trim();if(q.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Z.value=E(`templates.slugInvalid`);return}if(!t){Z.value=E(`templates.descriptionRequired`);return}if(!X.value.trim()){Z.value=E(`templates.contentRequired`);return}Cn.value=!0;try{q.value===null?await T.createTemplate({slug:e,description:t,content:X.value}):await T.updateTemplate(q.value,{description:t,content:X.value}),K.value=!1}catch(e){Z.value=e instanceof Error?e.message:E(`templates.createFailed`)}finally{Cn.value=!1}}async function kn(e){S.dialog({title:E(`templates.deleteTemplate`),message:`${E(`templates.deleteConfirm`,{slug:e.slug})}\n\n${E(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:E(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await T.deleteTemplate(e.slug)}catch(e){S.notify({type:`negative`,message:e instanceof Error?e.message:E(`templates.deleteFailed`),position:`top`})}})}let An=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function jn(e){yn.value=e,localStorage.setItem(`kobo:locale`,e)}let Mn=f(()=>[...Ce.map(e=>({label:E(e.i18nLabelKey),value:e.value}))]),Nn=f(()=>[{label:E(`settings.useGlobal`),value:``},...Mn.value]),Pn=f(()=>[{name:`{{pr_number}}`,description:E(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:E(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:E(`settings.var.branchName`)},{name:`{{source_branch}}`,description:E(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:E(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:E(`settings.var.projectName`)},{name:`{{notion_url}}`,description:E(`settings.var.notionUrl`)},{name:`{{commits}}`,description:E(`settings.var.commits`)},{name:`{{diff_stats}}`,description:E(`settings.var.diffStats`)},{name:`{{tasks}}`,description:E(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:E(`settings.var.acceptanceCriteria`)}]),Fn=f(()=>[{label:E(`settings.mcpAutoSelect`),value:``},...w.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),Q=f(()=>H.value<0||H.value>=w.projects.length?null:w.projects[H.value]??null);function In(){O.value=w.global.defaultModel,k.value=w.global.dangerouslySkipPermissions??!0,A.value=w.global.prPromptTemplate,j.value=w.global.gitConventions,M.value=w.global.editorCommand??``,N.value=w.global.browserNotifications??!0,P.value=w.global.audioNotifications??!0,F.value=w.global.notionStatusProperty??``,I.value=w.global.notionInProgressStatus??``,L.value=w.global.defaultPermissionMode||`plan`,R.value=w.global.notionMcpKey??``,z.value=w.global.sentryMcpKey??``,B.value=Array.isArray(w.global.tags)?[...w.global.tags]:[]}function Ln(e){if(!e){W.value={path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,dangerouslySkipPermissions:!0,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``}},G.value=[];return}W.value={path:e.path,displayName:e.displayName,defaultSourceBranch:e.defaultSourceBranch,defaultModel:e.defaultModel,dangerouslySkipPermissions:e.dangerouslySkipPermissions??!0,prPromptTemplate:e.prPromptTemplate,gitConventions:e.gitConventions??``,setupScript:e.setupScript??``,devServer:{startCommand:e.devServer?.startCommand??``,stopCommand:e.devServer?.stopCommand??``}},e.path&&Rn(e.path)}async function Rn(e){if(!e.trim()){G.value=[];return}bn.value=!0;try{let t=await fetch(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();G.value=n.local??n.branches??[]}catch{G.value=[]}finally{bn.value=!1}}let $=null;t(()=>W.value.path,e=>{$&&clearTimeout($),$=setTimeout(()=>{Rn(e)},500)}),t(H,()=>{U.value=!1,Ln(Q.value)});let zn=a(null);async function Bn(){try{let e=await fetch(`/api/settings/export`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`kobo-config-${new Date().toISOString().replace(/[:.]/g,`-`)}.json`,i.click(),URL.revokeObjectURL(r),S.notify({type:`positive`,message:E(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){S.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function Vn(){zn.value?.click()}async function Hn(e){let t=e.target,n=t.files?.[0];if(n)try{S.dialog({title:E(`settings.importConfirmTitle`),message:E(`settings.importConfirmMessage`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{try{let e=await n.text(),t=JSON.parse(e),r=await fetch(`/api/settings/import`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error??`HTTP ${r.status}`)}await w.fetchSettings(),In(),S.notify({type:`positive`,message:E(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){S.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function Un(){V.value=!0;try{await w.updateGlobal({defaultModel:O.value,dangerouslySkipPermissions:k.value,prPromptTemplate:A.value,gitConventions:j.value,editorCommand:M.value,browserNotifications:N.value,audioNotifications:P.value,notionStatusProperty:F.value,notionInProgressStatus:I.value,defaultPermissionMode:L.value,notionMcpKey:R.value,sentryMcpKey:z.value,tags:B.value}),S.notify({type:`positive`,message:E(`settings.saved`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.saveError`),position:`top`})}finally{V.value=!1}}async function Wn(){if(!W.value.path.trim()){S.notify({type:`negative`,message:E(`settings.projectPathRequired`),position:`top`});return}xn.value=!0;try{await w.upsertProject(W.value.path.trim(),{displayName:W.value.displayName,defaultSourceBranch:W.value.defaultSourceBranch,defaultModel:W.value.defaultModel,dangerouslySkipPermissions:W.value.dangerouslySkipPermissions,prPromptTemplate:W.value.prPromptTemplate,gitConventions:W.value.gitConventions,setupScript:W.value.setupScript,devServer:W.value.devServer}),U.value=!1;let e=w.projects.findIndex(e=>e.path===W.value.path.trim());e>=0&&(H.value=e),S.notify({type:`positive`,message:E(`settings.projectSaved`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.projectSaveError`),position:`top`})}finally{xn.value=!1}}async function Gn(){if(Q.value){Sn.value=!0;try{await w.deleteProject(Q.value.path),H.value=-1,U.value=!1,Ln(null),S.notify({type:`positive`,message:E(`settings.projectDeleted`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.projectDeleteError`),position:`top`})}finally{Sn.value=!1}}}function Kn(){H.value=-1,U.value=!0,Ln(null)}function qn(e){U.value=!1,H.value=e}function Jn(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let Yn=a([]);function Xn(e,t){t(()=>{Yn.value=e?G.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):G.value})}return r(async()=>{await Promise.all([w.fetchSettings(),w.fetchActiveMcpServers()]),In()}),i(()=>{$&&clearTimeout($)}),(t,r)=>(e(),c(we,{class:`settings-page`},{default:o(()=>[g(`div`,Te,[g(`div`,Ee,[u(re,{name:`settings`,size:`24px`,color:`indigo-4`,class:`q-mr-sm`}),g(`span`,De,s(t.$t(`settings.title`)),1)]),u(ve,{modelValue:D.value,"onUpdate:modelValue":r[0]||=e=>D.value=e,dense:``,"active-color":`indigo-4`,"indicator-color":`indigo-4`,class:`settings-tabs q-mb-lg`,align:`left`,"narrow-indicator":``},{default:o(()=>[u(ge,{name:`global`,label:t.$t(`settings.global`)},null,8,[`label`]),u(ge,{name:`projects`,label:t.$t(`settings.projects`)},null,8,[`label`]),u(ge,{name:`templates`,label:t.$t(`templates.title`)},null,8,[`label`])]),_:1},8,[`modelValue`]),u(ye,{modelValue:D.value,"onUpdate:modelValue":r[25]||=e=>D.value=e,animated:``,class:`settings-panels`},{default:o(()=>[u(_e,{name:`global`,class:`q-pa-none`},{default:o(()=>[g(`div`,Oe,[g(`div`,ke,s(t.$t(`settings.globalSettings`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,Ae,[g(`div`,je,s(t.$t(`settings.language`)),1),u(C,{"model-value":h(yn),options:An,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":jn},null,8,[`model-value`])]),g(`div`,Me,[g(`div`,Ne,s(t.$t(`settings.defaultModel`)),1),u(C,{modelValue:O.value,"onUpdate:modelValue":r[1]||=e=>O.value=e,options:Mn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,Pe,[g(`div`,Fe,s(t.$t(`settings.agentPermissions`)),1),u(b,{modelValue:k.value,"onUpdate:modelValue":r[2]||=e=>k.value=e,label:t.$t(`settings.skipPermissions`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),g(`div`,Ie,s(t.$t(`settings.skipPermissionsWarning`)),1)]),g(`div`,Le,[g(`div`,Re,s(t.$t(`settings.defaultPermissionMode`)),1),u(C,{modelValue:L.value,"onUpdate:modelValue":r[3]||=e=>L.value=e,options:[{label:t.$t(`permissionMode.plan`),value:`plan`},{label:t.$t(`permissionMode.autoAccept`),value:`auto-accept`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`]),g(`div`,ze,s(t.$t(`settings.defaultPermissionModeHint`)),1)]),g(`div`,Be,[g(`div`,Ve,s(t.$t(`settings.activityFeed`)),1),u(b,{"model-value":h(w).showVerboseSystemMessages,label:t.$t(`settings.verboseMessages`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`,"onUpdate:modelValue":r[4]||=e=>h(w).toggleVerboseSystemMessages()},null,8,[`model-value`,`label`])]),g(`div`,He,[g(`div`,Ue,s(t.$t(`settings.notifications`)),1),u(b,{modelValue:N.value,"onUpdate:modelValue":r[5]||=e=>N.value=e,label:t.$t(`settings.browserNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),u(b,{modelValue:P.value,"onUpdate:modelValue":r[6]||=e=>P.value=e,label:t.$t(`settings.audioNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),g(`div`,We,[u(pe,{dense:``,dark:``,icon:`code`,label:t.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:o(()=>[u(xe,{dense:``,dark:``,class:`q-pa-sm`},{default:o(()=>[(e(!0),p(m,null,n(Pn.value,t=>(e(),c(de,{key:t.name,dense:``},{default:o(()=>[u(fe,null,{default:o(()=>[u(x,{class:`text-caption`,style:{"font-family":`monospace`}},{default:o(()=>[d(s(t.name),1)]),_:2},1024),u(x,{caption:``,class:`text-grey-7`},{default:o(()=>[d(s(t.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),g(`div`,Ge,[g(`div`,Ke,s(t.$t(`settings.prPromptTemplate`)),1),u(y,{modelValue:A.value,"onUpdate:modelValue":r[7]||=e=>A.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,qe,s(t.$t(`settings.prPromptHint`)),1)]),g(`div`,Je,[g(`div`,Ye,s(t.$t(`settings.gitConventions`)),1),u(y,{modelValue:j.value,"onUpdate:modelValue":r[8]||=e=>j.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Xe,s(t.$t(`settings.gitConventionsHint`)),1)]),g(`div`,Ze,[g(`div`,Qe,s(t.$t(`settings.editorCommand`)),1),u(y,{modelValue:M.value,"onUpdate:modelValue":r[9]||=e=>M.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`]),g(`div`,$e,s(t.$t(`settings.editorCommandHint`)),1)]),g(`div`,et,[g(`div`,tt,s(t.$t(`settings.mcpSelection`)),1),g(`div`,nt,[g(`div`,rt,s(t.$t(`settings.notionMcp`)),1),u(C,{modelValue:R.value,"onUpdate:modelValue":r[10]||=e=>R.value=e,options:Fn.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,it,[g(`div`,at,s(t.$t(`settings.sentryMcp`)),1),u(C,{modelValue:z.value,"onUpdate:modelValue":r[11]||=e=>z.value=e,options:Fn.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,ot,s(t.$t(`settings.mcpSelectionHint`)),1)]),g(`div`,st,[g(`div`,ct,s(t.$t(`settings.notionStatus`)),1),g(`div`,lt,[g(`div`,ut,s(t.$t(`settings.notionStatusProperty`)),1),u(y,{modelValue:F.value,"onUpdate:modelValue":r[12]||=e=>F.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,dt,[g(`div`,ft,s(t.$t(`settings.notionInProgressStatus`)),1),u(y,{modelValue:I.value,"onUpdate:modelValue":r[13]||=e=>I.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,pt,s(t.$t(`settings.notionStatusHint`)),1)]),g(`div`,mt,[g(`div`,ht,s(t.$t(`settings.tagsTitle`)),1),g(`div`,gt,s(t.$t(`settings.tagsHint`)),1),u(C,{modelValue:B.value,"onUpdate:modelValue":r[14]||=e=>B.value=e,label:t.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])]),g(`div`,_t,[g(`div`,vt,s(t.$t(`settings.shareTitle`)),1),g(`div`,yt,s(t.$t(`settings.shareHint`)),1),g(`div`,bt,[u(v,{label:t.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`grey-4`,onClick:Bn},null,8,[`label`]),u(v,{label:t.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`grey-4`,onClick:Vn},null,8,[`label`]),g(`input`,{ref_key:`importFileInput`,ref:zn,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:Hn},null,544)])]),g(`div`,xt,[u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:V.value,onClick:Un},null,8,[`label`,`loading`])])])]),_:1}),u(_e,{name:`projects`,class:`q-pa-none`},{default:o(()=>[g(`div`,St,[g(`div`,Ct,[g(`div`,wt,[g(`div`,Tt,[g(`div`,Et,s(t.$t(`settings.configuredProjects`)),1)]),u(_,{dark:``}),u(xe,{dark:``,dense:``,class:`q-py-xs`},{default:o(()=>[(e(!0),p(m,null,n(h(w).projects,(t,n)=>(e(),c(de,{key:t.path,clickable:``,active:H.value===n&&!U.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>qn(n)},{default:o(()=>[u(fe,null,{default:o(()=>[u(x,{class:`text-body2 text-grey-3`},{default:o(()=>[d(s(Jn(t)),1)]),_:2},1024),u(x,{caption:``,class:`text-grey-7 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:o(()=>[d(s(t.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),h(w).projects.length===0&&!h(w).loading?(e(),p(`div`,Dt,s(t.$t(`settings.noProjects`)),1)):l(``,!0),u(_,{dark:``}),g(`div`,Ot,[u(v,{label:t.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`indigo-4`,onClick:Kn},null,8,[`label`])])])]),g(`div`,kt,[g(`div`,At,[Q.value||U.value?(e(),p(m,{key:0},[g(`div`,jt,s(U.value?t.$t(`settings.newProject`):t.$t(`settings.editProject`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,Mt,[g(`div`,Nt,s(t.$t(`settings.projectPath`)),1),u(y,{modelValue:W.value.path,"onUpdate:modelValue":r[15]||=e=>W.value.path=e,dense:``,dark:``,outlined:``,readonly:!U.value,placeholder:t.$t(`settings.projectPathPlaceholder`),class:te([`settings-input`,{"readonly-input":!U.value}])},null,8,[`modelValue`,`readonly`,`placeholder`,`class`])]),g(`div`,Pt,[g(`div`,Ft,s(t.$t(`settings.displayName`)),1),u(y,{modelValue:W.value.displayName,"onUpdate:modelValue":r[16]||=e=>W.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,It,[g(`div`,Lt,s(t.$t(`settings.defaultSourceBranch`)),1),u(C,{modelValue:W.value.defaultSourceBranch,"onUpdate:modelValue":r[17]||=e=>W.value.defaultSourceBranch=e,options:Yn.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:bn.value,class:`settings-input`,placeholder:`main`,onFilter:Xn},{"no-option":o(()=>[u(de,null,{default:o(()=>[u(fe,{class:`text-grey-6 text-caption`},{default:o(()=>[d(s(W.value.path.trim()?t.$t(`createPage.noBranches`):t.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),g(`div`,Rt,[g(`div`,zt,s(t.$t(`settings.defaultModel.project`)),1),u(C,{modelValue:W.value.defaultModel,"onUpdate:modelValue":r[18]||=e=>W.value.defaultModel=e,options:Nn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,Bt,[g(`div`,Vt,s(t.$t(`settings.agentPermissions`)),1),u(b,{modelValue:W.value.dangerouslySkipPermissions,"onUpdate:modelValue":r[19]||=e=>W.value.dangerouslySkipPermissions=e,label:t.$t(`settings.skipPermissions.project`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),g(`div`,Ht,[g(`div`,Ut,s(t.$t(`settings.prPromptTemplate.project`)),1),u(y,{modelValue:W.value.prPromptTemplate,"onUpdate:modelValue":r[20]||=e=>W.value.prPromptTemplate=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:4,placeholder:t.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,Wt,[g(`div`,Gt,s(t.$t(`settings.gitConventions.project`)),1),u(y,{modelValue:W.value.gitConventions,"onUpdate:modelValue":r[21]||=e=>W.value.gitConventions=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:6,placeholder:t.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Kt,s(t.$t(`settings.gitConventionsEmpty`)),1)]),g(`div`,qt,[g(`div`,Jt,s(t.$t(`settings.setupScript`)),1),u(y,{modelValue:W.value.setupScript,"onUpdate:modelValue":r[22]||=e=>W.value.setupScript=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:5,placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Yt,s(t.$t(`settings.setupScriptHint`)),1)]),g(`div`,Xt,[g(`div`,Zt,s(t.$t(`settings.devServer`)),1),g(`div`,Qt,[g(`div`,$t,s(t.$t(`settings.devServerStart`)),1),u(y,{modelValue:W.value.devServer.startCommand,"onUpdate:modelValue":r[23]||=e=>W.value.devServer.startCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,null,[g(`div`,en,s(t.$t(`settings.devServerStop`)),1),u(y,{modelValue:W.value.devServer.stopCommand,"onUpdate:modelValue":r[24]||=e=>W.value.devServer.stopCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),g(`div`,tn,[U.value?l(``,!0):(e(),c(v,{key:0,label:t.$t(`common.delete`),"no-caps":``,flat:``,color:`red-5`,loading:Sn.value,onClick:Gn},null,8,[`label`,`loading`])),u(he),u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:xn.value,onClick:Wn},null,8,[`label`,`loading`])])],64)):(e(),p(`div`,nn,[u(re,{name:`folder_open`,size:`48px`,color:`grey-7`,class:`q-mb-md`}),g(`div`,rn,s(t.$t(`settings.selectProject`)),1)]))])])])]),_:1}),u(_e,{name:`templates`,class:`q-pa-none`},{default:o(()=>[g(`div`,an,[g(`div`,on,[g(`div`,sn,s(t.$t(`templates.title`)),1),u(v,{color:`primary`,icon:`add`,label:t.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:En},null,8,[`label`])]),u(_,{dark:``,class:`q-mb-md`}),wn.value.length===0?(e(),p(`div`,cn,s(t.$t(`templates.empty`)),1)):(e(),p(`div`,ln,[(e(!0),p(m,null,n(wn.value,n=>(e(),c(se,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:o(()=>[g(`div`,un,[g(`div`,dn,[g(`div`,fn,` /`+s(n.slug),1),g(`div`,pn,s(n.description),1)]),g(`div`,mn,[u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`grey-5`,onClick:e=>Dn(n)},{default:o(()=>[u(me,null,{default:o(()=>[d(s(t.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>kn(n)},{default:o(()=>[u(me,null,{default:o(()=>[d(s(t.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),g(`div`,hn,s(t.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])]),_:1})]),_:1},8,[`modelValue`])]),u(ie,{modelValue:K.value,"onUpdate:modelValue":r[29]||=e=>K.value=e,persistent:``},{default:o(()=>[u(se,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:o(()=>[u(oe,null,{default:o(()=>[g(`div`,gn,s(q.value===null?t.$t(`templates.newTemplate`):t.$t(`templates.editTemplate`)),1)]),_:1}),u(oe,{class:`q-gutter-md`},{default:o(()=>[u(y,{modelValue:J.value,"onUpdate:modelValue":r[26]||=e=>J.value=e,label:t.$t(`templates.slug`),hint:t.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:q.value!==null,rules:[e=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)||t.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),u(y,{modelValue:Y.value,"onUpdate:modelValue":r[27]||=e=>Y.value=e,label:t.$t(`templates.description`),hint:t.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(y,{modelValue:X.value,"onUpdate:modelValue":r[28]||=e=>X.value=e,label:t.$t(`templates.content`),hint:t.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(pe,{dense:``,"dense-toggle":``,label:t.$t(`templates.availableVars`),"header-class":`text-grey-6 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:o(()=>[g(`div`,_n,[(e(),p(m,null,n(Tn,e=>g(`div`,{key:e,class:`text-grey-5 q-mb-xs`},s(e),1)),64))])]),_:1},8,[`label`]),Z.value?(e(),p(`div`,vn,s(Z.value),1)):l(``,!0)]),_:1}),u(ce,{align:`right`},{default:o(()=>[ee(u(v,{flat:``,label:t.$t(`common.cancel`)},null,8,[`label`]),[[Se]]),u(v,{flat:``,color:`primary`,label:q.value===null?t.$t(`templates.create`):t.$t(`templates.save`),loading:Cn.value,onClick:On},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-9ac26f61`]]);export{w as default};
1
+ import{F as e,H as t,L as n,M as r,N as i,Q as a,U as o,W as ee,_t as te,bt as s,d as c,f as l,g as u,h as d,l as f,p,r as m,rt as h,u as g,v as ne}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{t as re}from"./QIcon-B0-pH3Qs.js";import{t as _}from"./QSeparator-DNSiXYrN.js";import{t as ie}from"./QDialog-G448EJG4.js";import{t as v}from"./QBtn-CyzfM9-_.js";import{n as ae}from"./vue-i18n-eUDnMrPl.js";import{D as oe,T as se,d as ce,i as y,n as b,w as le,x as ue}from"./index-B0Jj-w-E.js";import{n as de,t as fe}from"./QItemSection-BzWLL-V-.js";import{t as x}from"./QItemLabel-Czw5g0px.js";import{t as pe}from"./QExpansionItem-HLBjHx-0.js";import{t as me}from"./QTooltip-DbEBexRN.js";import{t as S}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as he}from"./QSpace-0zdF1m5x.js";import{i as ge,n as _e,r as ve,t as ye}from"./QTabPanels-Cw4nnIbR.js";import{t as be}from"./use-quasar-BBrzedjR.js";import{t as xe}from"./QList-D2GuTeLl.js";import{t as Se}from"./ClosePopup-DTgXzcoa.js";import{n as C,t as Ce}from"./models-GweeyU2r.js";import{t as we}from"./QPage-BTzNQlb1.js";var Te={class:`settings-inner`},Ee={class:`settings-header row items-center q-mb-lg`},De={class:`text-h5 text-weight-medium text-grey-3`},Oe={class:`settings-card rounded-borders q-pa-lg`},ke={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Ae={class:`q-mb-lg`},je={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Me={class:`q-mb-lg`},Ne={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Pe={class:`q-mb-lg`},Fe={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ie={class:`text-caption text-red-4 q-mt-xs`},Le={class:`q-mb-lg`},Re={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ze={class:`text-caption text-grey-7 q-mt-xs`},Be={class:`q-mb-lg`},Ve={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},He={class:`q-mb-lg`},Ue={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},We={class:`q-mb-md`},Ge={class:`q-mb-lg`},Ke={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},qe={class:`text-caption text-grey-7 q-mt-xs`},Je={class:`q-mb-lg`},Ye={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Xe={class:`text-caption text-grey-7 q-mt-xs`},Ze={class:`q-mb-lg`},Qe={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},$e={class:`text-caption text-grey-7 q-mt-xs`},et={class:`q-mb-lg`},tt={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},nt={class:`q-mb-sm`},rt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},it={class:`q-mb-sm`},at={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ot={class:`text-caption text-grey-7 q-mt-xs`},st={class:`q-mb-lg`},ct={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},lt={class:`q-mb-sm`},ut={class:`field-label-sub text-caption q-mb-xs text-grey-7`},dt={class:`q-mb-sm`},ft={class:`field-label-sub text-caption q-mb-xs text-grey-7`},pt={class:`text-caption text-grey-7 q-mt-xs`},mt={class:`settings-card q-pa-md rounded-borders`},ht={class:`text-subtitle2 q-mb-sm`},gt={class:`text-caption text-grey-7 q-mb-sm`},_t={class:`settings-card q-pa-md rounded-borders`},vt={class:`text-subtitle2 q-mb-sm`},yt={class:`text-caption text-grey-7 q-mb-sm`},bt={class:`row q-gutter-sm`},xt={class:`row justify-end`},St={class:`row q-gutter-md`,style:{"min-height":`500px`}},Ct={class:`project-list-col`},wt={class:`settings-card rounded-borders`,style:{height:`100%`}},Tt={class:`q-pa-sm`},Et={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-grey-6`,style:{"letter-spacing":`0.05em`}},Dt={key:0,class:`q-pa-md text-center text-caption text-grey-8`},Ot={class:`q-pa-sm`},kt={class:`project-form-col`},At={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},jt={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Mt={class:`q-mb-md`},Nt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Pt={class:`q-mb-md`},Ft={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},It={class:`q-mb-md`},Lt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Rt={class:`q-mb-md`},zt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Bt={class:`q-mb-md`},Vt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ht={class:`q-mb-md`},Ut={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Wt={class:`q-mb-md`},Gt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Kt={class:`text-caption text-grey-7 q-mt-xs`},qt={class:`q-mb-lg`},Jt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Yt={class:`text-caption text-grey-7 q-mt-xs`},Xt={class:`q-mb-lg`},Zt={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},Qt={class:`q-mb-md`},$t={class:`field-label-sub text-caption q-mb-xs text-grey-7`},en={class:`field-label-sub text-caption q-mb-xs text-grey-7`},tn={class:`row items-center q-gutter-sm`},nn={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},rn={class:`text-body2 text-grey-8`},an={class:`settings-card rounded-borders q-pa-lg`},on={class:`row items-center justify-between q-mb-md`},sn={class:`text-subtitle1 text-weight-medium text-grey-3`},cn={key:0,class:`text-grey-6 q-py-lg text-center`},ln={key:1,class:`column q-gutter-sm`},un={class:`row items-start justify-between no-wrap`},dn={class:`col`},fn={class:`text-body1 text-weight-medium`,style:{"font-family":`'Roboto Mono', monospace`}},pn={class:`text-caption text-grey-5 q-mt-xs`},mn={class:`row no-wrap q-gutter-xs`},hn={class:`text-caption text-grey-7 q-mt-lg`,style:{"font-family":`'Roboto Mono', monospace`}},gn={class:`text-subtitle1`},_n={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,columns:`2`,"column-gap":`24px`}},vn={key:0,class:`text-negative text-caption`},w=S(ne({__name:`SettingsPage`,setup(ne){let S=be(),w=ue(),T=le(),{t:E,locale:yn}=ae(),D=a(`global`),O=a(`auto`),k=a(!0),A=a(``),j=a(``),M=a(``),N=a(!0),P=a(!0),F=a(``),I=a(``),L=a(`plan`),R=a(``),z=a(``),B=a([]),V=a(!1),H=a(-1),U=a(!1),W=a({path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,dangerouslySkipPermissions:!0,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``}}),G=a([]),bn=a(!1),xn=a(!1),Sn=a(!1),K=a(!1),q=a(null),J=a(``),Y=a(``),X=a(``),Z=a(``),Cn=a(!1),wn=f(()=>[...T.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),Tn=[`{workspace_name}`,`{working_branch}`,`{source_branch}`,`{project_path}`,`{worktree_path}`,`{commit_count}`,`{unpushed_count}`,`{files_changed}`,`{insertions}`,`{deletions}`,`{pr_number}`,`{pr_url}`,`{pr_state}`,`{session_name}`];function En(){q.value=null,J.value=``,Y.value=``,X.value=``,Z.value=``,K.value=!0}function Dn(e){q.value=e.slug,J.value=e.slug,Y.value=e.description,X.value=e.content,Z.value=``,K.value=!0}async function On(){Z.value=``;let e=J.value.trim(),t=Y.value.trim();if(q.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Z.value=E(`templates.slugInvalid`);return}if(!t){Z.value=E(`templates.descriptionRequired`);return}if(!X.value.trim()){Z.value=E(`templates.contentRequired`);return}Cn.value=!0;try{q.value===null?await T.createTemplate({slug:e,description:t,content:X.value}):await T.updateTemplate(q.value,{description:t,content:X.value}),K.value=!1}catch(e){Z.value=e instanceof Error?e.message:E(`templates.createFailed`)}finally{Cn.value=!1}}async function kn(e){S.dialog({title:E(`templates.deleteTemplate`),message:`${E(`templates.deleteConfirm`,{slug:e.slug})}\n\n${E(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:E(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await T.deleteTemplate(e.slug)}catch(e){S.notify({type:`negative`,message:e instanceof Error?e.message:E(`templates.deleteFailed`),position:`top`})}})}let An=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function jn(e){yn.value=e,localStorage.setItem(`kobo:locale`,e)}let Mn=f(()=>[...Ce.map(e=>({label:E(e.i18nLabelKey),value:e.value}))]),Nn=f(()=>[{label:E(`settings.useGlobal`),value:``},...Mn.value]),Pn=f(()=>[{name:`{{pr_number}}`,description:E(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:E(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:E(`settings.var.branchName`)},{name:`{{source_branch}}`,description:E(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:E(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:E(`settings.var.projectName`)},{name:`{{notion_url}}`,description:E(`settings.var.notionUrl`)},{name:`{{commits}}`,description:E(`settings.var.commits`)},{name:`{{diff_stats}}`,description:E(`settings.var.diffStats`)},{name:`{{tasks}}`,description:E(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:E(`settings.var.acceptanceCriteria`)}]),Fn=f(()=>[{label:E(`settings.mcpAutoSelect`),value:``},...w.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),Q=f(()=>H.value<0||H.value>=w.projects.length?null:w.projects[H.value]??null);function In(){O.value=w.global.defaultModel,k.value=w.global.dangerouslySkipPermissions??!0,A.value=w.global.prPromptTemplate,j.value=w.global.gitConventions,M.value=w.global.editorCommand??``,N.value=w.global.browserNotifications??!0,P.value=w.global.audioNotifications??!0,F.value=w.global.notionStatusProperty??``,I.value=w.global.notionInProgressStatus??``,L.value=w.global.defaultPermissionMode||`plan`,R.value=w.global.notionMcpKey??``,z.value=w.global.sentryMcpKey??``,B.value=Array.isArray(w.global.tags)?[...w.global.tags]:[]}function Ln(e){if(!e){W.value={path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,dangerouslySkipPermissions:!0,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``}},G.value=[];return}W.value={path:e.path,displayName:e.displayName,defaultSourceBranch:e.defaultSourceBranch,defaultModel:e.defaultModel,dangerouslySkipPermissions:e.dangerouslySkipPermissions??!0,prPromptTemplate:e.prPromptTemplate,gitConventions:e.gitConventions??``,setupScript:e.setupScript??``,devServer:{startCommand:e.devServer?.startCommand??``,stopCommand:e.devServer?.stopCommand??``}},e.path&&Rn(e.path)}async function Rn(e){if(!e.trim()){G.value=[];return}bn.value=!0;try{let t=await fetch(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();G.value=n.local??n.branches??[]}catch{G.value=[]}finally{bn.value=!1}}let $=null;t(()=>W.value.path,e=>{$&&clearTimeout($),$=setTimeout(()=>{Rn(e)},500)}),t(H,()=>{U.value=!1,Ln(Q.value)});let zn=a(null);async function Bn(){try{let e=await fetch(`/api/settings/export`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`kobo-config-${new Date().toISOString().replace(/[:.]/g,`-`)}.json`,i.click(),URL.revokeObjectURL(r),S.notify({type:`positive`,message:E(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){S.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function Vn(){zn.value?.click()}async function Hn(e){let t=e.target,n=t.files?.[0];if(n)try{S.dialog({title:E(`settings.importConfirmTitle`),message:E(`settings.importConfirmMessage`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{try{let e=await n.text(),t=JSON.parse(e),r=await fetch(`/api/settings/import`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error??`HTTP ${r.status}`)}await w.fetchSettings(),In(),S.notify({type:`positive`,message:E(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){S.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function Un(){V.value=!0;try{await w.updateGlobal({defaultModel:O.value,dangerouslySkipPermissions:k.value,prPromptTemplate:A.value,gitConventions:j.value,editorCommand:M.value,browserNotifications:N.value,audioNotifications:P.value,notionStatusProperty:F.value,notionInProgressStatus:I.value,defaultPermissionMode:L.value,notionMcpKey:R.value,sentryMcpKey:z.value,tags:B.value}),S.notify({type:`positive`,message:E(`settings.saved`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.saveError`),position:`top`})}finally{V.value=!1}}async function Wn(){if(!W.value.path.trim()){S.notify({type:`negative`,message:E(`settings.projectPathRequired`),position:`top`});return}xn.value=!0;try{await w.upsertProject(W.value.path.trim(),{displayName:W.value.displayName,defaultSourceBranch:W.value.defaultSourceBranch,defaultModel:W.value.defaultModel,dangerouslySkipPermissions:W.value.dangerouslySkipPermissions,prPromptTemplate:W.value.prPromptTemplate,gitConventions:W.value.gitConventions,setupScript:W.value.setupScript,devServer:W.value.devServer}),U.value=!1;let e=w.projects.findIndex(e=>e.path===W.value.path.trim());e>=0&&(H.value=e),S.notify({type:`positive`,message:E(`settings.projectSaved`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.projectSaveError`),position:`top`})}finally{xn.value=!1}}async function Gn(){if(Q.value){Sn.value=!0;try{await w.deleteProject(Q.value.path),H.value=-1,U.value=!1,Ln(null),S.notify({type:`positive`,message:E(`settings.projectDeleted`),position:`top`})}catch{S.notify({type:`negative`,message:E(`settings.projectDeleteError`),position:`top`})}finally{Sn.value=!1}}}function Kn(){H.value=-1,U.value=!0,Ln(null)}function qn(e){U.value=!1,H.value=e}function Jn(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let Yn=a([]);function Xn(e,t){t(()=>{Yn.value=e?G.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):G.value})}return r(async()=>{await Promise.all([w.fetchSettings(),w.fetchActiveMcpServers()]),In()}),i(()=>{$&&clearTimeout($)}),(t,r)=>(e(),c(we,{class:`settings-page`},{default:o(()=>[g(`div`,Te,[g(`div`,Ee,[u(re,{name:`settings`,size:`24px`,color:`indigo-4`,class:`q-mr-sm`}),g(`span`,De,s(t.$t(`settings.title`)),1)]),u(ve,{modelValue:D.value,"onUpdate:modelValue":r[0]||=e=>D.value=e,dense:``,"active-color":`indigo-4`,"indicator-color":`indigo-4`,class:`settings-tabs q-mb-lg`,align:`left`,"narrow-indicator":``},{default:o(()=>[u(ge,{name:`global`,label:t.$t(`settings.global`)},null,8,[`label`]),u(ge,{name:`projects`,label:t.$t(`settings.projects`)},null,8,[`label`]),u(ge,{name:`templates`,label:t.$t(`templates.title`)},null,8,[`label`])]),_:1},8,[`modelValue`]),u(ye,{modelValue:D.value,"onUpdate:modelValue":r[25]||=e=>D.value=e,animated:``,class:`settings-panels`},{default:o(()=>[u(_e,{name:`global`,class:`q-pa-none`},{default:o(()=>[g(`div`,Oe,[g(`div`,ke,s(t.$t(`settings.globalSettings`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,Ae,[g(`div`,je,s(t.$t(`settings.language`)),1),u(C,{"model-value":h(yn),options:An,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":jn},null,8,[`model-value`])]),g(`div`,Me,[g(`div`,Ne,s(t.$t(`settings.defaultModel`)),1),u(C,{modelValue:O.value,"onUpdate:modelValue":r[1]||=e=>O.value=e,options:Mn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,Pe,[g(`div`,Fe,s(t.$t(`settings.agentPermissions`)),1),u(b,{modelValue:k.value,"onUpdate:modelValue":r[2]||=e=>k.value=e,label:t.$t(`settings.skipPermissions`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),g(`div`,Ie,s(t.$t(`settings.skipPermissionsWarning`)),1)]),g(`div`,Le,[g(`div`,Re,s(t.$t(`settings.defaultPermissionMode`)),1),u(C,{modelValue:L.value,"onUpdate:modelValue":r[3]||=e=>L.value=e,options:[{label:t.$t(`permissionMode.plan`),value:`plan`},{label:t.$t(`permissionMode.autoAccept`),value:`auto-accept`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`]),g(`div`,ze,s(t.$t(`settings.defaultPermissionModeHint`)),1)]),g(`div`,Be,[g(`div`,Ve,s(t.$t(`settings.activityFeed`)),1),u(b,{"model-value":h(w).showVerboseSystemMessages,label:t.$t(`settings.verboseMessages`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`,"onUpdate:modelValue":r[4]||=e=>h(w).toggleVerboseSystemMessages()},null,8,[`model-value`,`label`])]),g(`div`,He,[g(`div`,Ue,s(t.$t(`settings.notifications`)),1),u(b,{modelValue:N.value,"onUpdate:modelValue":r[5]||=e=>N.value=e,label:t.$t(`settings.browserNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),u(b,{modelValue:P.value,"onUpdate:modelValue":r[6]||=e=>P.value=e,label:t.$t(`settings.audioNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),g(`div`,We,[u(pe,{dense:``,dark:``,icon:`code`,label:t.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:o(()=>[u(xe,{dense:``,dark:``,class:`q-pa-sm`},{default:o(()=>[(e(!0),p(m,null,n(Pn.value,t=>(e(),c(de,{key:t.name,dense:``},{default:o(()=>[u(fe,null,{default:o(()=>[u(x,{class:`text-caption`,style:{"font-family":`monospace`}},{default:o(()=>[d(s(t.name),1)]),_:2},1024),u(x,{caption:``,class:`text-grey-7`},{default:o(()=>[d(s(t.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),g(`div`,Ge,[g(`div`,Ke,s(t.$t(`settings.prPromptTemplate`)),1),u(y,{modelValue:A.value,"onUpdate:modelValue":r[7]||=e=>A.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,qe,s(t.$t(`settings.prPromptHint`)),1)]),g(`div`,Je,[g(`div`,Ye,s(t.$t(`settings.gitConventions`)),1),u(y,{modelValue:j.value,"onUpdate:modelValue":r[8]||=e=>j.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Xe,s(t.$t(`settings.gitConventionsHint`)),1)]),g(`div`,Ze,[g(`div`,Qe,s(t.$t(`settings.editorCommand`)),1),u(y,{modelValue:M.value,"onUpdate:modelValue":r[9]||=e=>M.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`]),g(`div`,$e,s(t.$t(`settings.editorCommandHint`)),1)]),g(`div`,et,[g(`div`,tt,s(t.$t(`settings.mcpSelection`)),1),g(`div`,nt,[g(`div`,rt,s(t.$t(`settings.notionMcp`)),1),u(C,{modelValue:R.value,"onUpdate:modelValue":r[10]||=e=>R.value=e,options:Fn.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,it,[g(`div`,at,s(t.$t(`settings.sentryMcp`)),1),u(C,{modelValue:z.value,"onUpdate:modelValue":r[11]||=e=>z.value=e,options:Fn.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,ot,s(t.$t(`settings.mcpSelectionHint`)),1)]),g(`div`,st,[g(`div`,ct,s(t.$t(`settings.notionStatus`)),1),g(`div`,lt,[g(`div`,ut,s(t.$t(`settings.notionStatusProperty`)),1),u(y,{modelValue:F.value,"onUpdate:modelValue":r[12]||=e=>F.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,dt,[g(`div`,ft,s(t.$t(`settings.notionInProgressStatus`)),1),u(y,{modelValue:I.value,"onUpdate:modelValue":r[13]||=e=>I.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,pt,s(t.$t(`settings.notionStatusHint`)),1)]),g(`div`,mt,[g(`div`,ht,s(t.$t(`settings.tagsTitle`)),1),g(`div`,gt,s(t.$t(`settings.tagsHint`)),1),u(C,{modelValue:B.value,"onUpdate:modelValue":r[14]||=e=>B.value=e,label:t.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])]),g(`div`,_t,[g(`div`,vt,s(t.$t(`settings.shareTitle`)),1),g(`div`,yt,s(t.$t(`settings.shareHint`)),1),g(`div`,bt,[u(v,{label:t.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`grey-4`,onClick:Bn},null,8,[`label`]),u(v,{label:t.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`grey-4`,onClick:Vn},null,8,[`label`]),g(`input`,{ref_key:`importFileInput`,ref:zn,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:Hn},null,544)])]),g(`div`,xt,[u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:V.value,onClick:Un},null,8,[`label`,`loading`])])])]),_:1}),u(_e,{name:`projects`,class:`q-pa-none`},{default:o(()=>[g(`div`,St,[g(`div`,Ct,[g(`div`,wt,[g(`div`,Tt,[g(`div`,Et,s(t.$t(`settings.configuredProjects`)),1)]),u(_,{dark:``}),u(xe,{dark:``,dense:``,class:`q-py-xs`},{default:o(()=>[(e(!0),p(m,null,n(h(w).projects,(t,n)=>(e(),c(de,{key:t.path,clickable:``,active:H.value===n&&!U.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>qn(n)},{default:o(()=>[u(fe,null,{default:o(()=>[u(x,{class:`text-body2 text-grey-3`},{default:o(()=>[d(s(Jn(t)),1)]),_:2},1024),u(x,{caption:``,class:`text-grey-7 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:o(()=>[d(s(t.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),h(w).projects.length===0&&!h(w).loading?(e(),p(`div`,Dt,s(t.$t(`settings.noProjects`)),1)):l(``,!0),u(_,{dark:``}),g(`div`,Ot,[u(v,{label:t.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`indigo-4`,onClick:Kn},null,8,[`label`])])])]),g(`div`,kt,[g(`div`,At,[Q.value||U.value?(e(),p(m,{key:0},[g(`div`,jt,s(U.value?t.$t(`settings.newProject`):t.$t(`settings.editProject`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,Mt,[g(`div`,Nt,s(t.$t(`settings.projectPath`)),1),u(y,{modelValue:W.value.path,"onUpdate:modelValue":r[15]||=e=>W.value.path=e,dense:``,dark:``,outlined:``,readonly:!U.value,placeholder:t.$t(`settings.projectPathPlaceholder`),class:te([`settings-input`,{"readonly-input":!U.value}])},null,8,[`modelValue`,`readonly`,`placeholder`,`class`])]),g(`div`,Pt,[g(`div`,Ft,s(t.$t(`settings.displayName`)),1),u(y,{modelValue:W.value.displayName,"onUpdate:modelValue":r[16]||=e=>W.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,It,[g(`div`,Lt,s(t.$t(`settings.defaultSourceBranch`)),1),u(C,{modelValue:W.value.defaultSourceBranch,"onUpdate:modelValue":r[17]||=e=>W.value.defaultSourceBranch=e,options:Yn.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:bn.value,class:`settings-input`,placeholder:`main`,onFilter:Xn},{"no-option":o(()=>[u(de,null,{default:o(()=>[u(fe,{class:`text-grey-6 text-caption`},{default:o(()=>[d(s(W.value.path.trim()?t.$t(`createPage.noBranches`):t.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),g(`div`,Rt,[g(`div`,zt,s(t.$t(`settings.defaultModel.project`)),1),u(C,{modelValue:W.value.defaultModel,"onUpdate:modelValue":r[18]||=e=>W.value.defaultModel=e,options:Nn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,Bt,[g(`div`,Vt,s(t.$t(`settings.agentPermissions`)),1),u(b,{modelValue:W.value.dangerouslySkipPermissions,"onUpdate:modelValue":r[19]||=e=>W.value.dangerouslySkipPermissions=e,label:t.$t(`settings.skipPermissions.project`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),g(`div`,Ht,[g(`div`,Ut,s(t.$t(`settings.prPromptTemplate.project`)),1),u(y,{modelValue:W.value.prPromptTemplate,"onUpdate:modelValue":r[20]||=e=>W.value.prPromptTemplate=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:4,placeholder:t.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,Wt,[g(`div`,Gt,s(t.$t(`settings.gitConventions.project`)),1),u(y,{modelValue:W.value.gitConventions,"onUpdate:modelValue":r[21]||=e=>W.value.gitConventions=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:6,placeholder:t.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Kt,s(t.$t(`settings.gitConventionsEmpty`)),1)]),g(`div`,qt,[g(`div`,Jt,s(t.$t(`settings.setupScript`)),1),u(y,{modelValue:W.value.setupScript,"onUpdate:modelValue":r[22]||=e=>W.value.setupScript=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:5,placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Yt,s(t.$t(`settings.setupScriptHint`)),1)]),g(`div`,Xt,[g(`div`,Zt,s(t.$t(`settings.devServer`)),1),g(`div`,Qt,[g(`div`,$t,s(t.$t(`settings.devServerStart`)),1),u(y,{modelValue:W.value.devServer.startCommand,"onUpdate:modelValue":r[23]||=e=>W.value.devServer.startCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,null,[g(`div`,en,s(t.$t(`settings.devServerStop`)),1),u(y,{modelValue:W.value.devServer.stopCommand,"onUpdate:modelValue":r[24]||=e=>W.value.devServer.stopCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),g(`div`,tn,[U.value?l(``,!0):(e(),c(v,{key:0,label:t.$t(`common.delete`),"no-caps":``,flat:``,color:`red-5`,loading:Sn.value,onClick:Gn},null,8,[`label`,`loading`])),u(he),u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:xn.value,onClick:Wn},null,8,[`label`,`loading`])])],64)):(e(),p(`div`,nn,[u(re,{name:`folder_open`,size:`48px`,color:`grey-7`,class:`q-mb-md`}),g(`div`,rn,s(t.$t(`settings.selectProject`)),1)]))])])])]),_:1}),u(_e,{name:`templates`,class:`q-pa-none`},{default:o(()=>[g(`div`,an,[g(`div`,on,[g(`div`,sn,s(t.$t(`templates.title`)),1),u(v,{color:`primary`,icon:`add`,label:t.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:En},null,8,[`label`])]),u(_,{dark:``,class:`q-mb-md`}),wn.value.length===0?(e(),p(`div`,cn,s(t.$t(`templates.empty`)),1)):(e(),p(`div`,ln,[(e(!0),p(m,null,n(wn.value,n=>(e(),c(se,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:o(()=>[g(`div`,un,[g(`div`,dn,[g(`div`,fn,` /`+s(n.slug),1),g(`div`,pn,s(n.description),1)]),g(`div`,mn,[u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`grey-5`,onClick:e=>Dn(n)},{default:o(()=>[u(me,null,{default:o(()=>[d(s(t.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>kn(n)},{default:o(()=>[u(me,null,{default:o(()=>[d(s(t.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),g(`div`,hn,s(t.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])]),_:1})]),_:1},8,[`modelValue`])]),u(ie,{modelValue:K.value,"onUpdate:modelValue":r[29]||=e=>K.value=e,persistent:``},{default:o(()=>[u(se,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:o(()=>[u(oe,null,{default:o(()=>[g(`div`,gn,s(q.value===null?t.$t(`templates.newTemplate`):t.$t(`templates.editTemplate`)),1)]),_:1}),u(oe,{class:`q-gutter-md`},{default:o(()=>[u(y,{modelValue:J.value,"onUpdate:modelValue":r[26]||=e=>J.value=e,label:t.$t(`templates.slug`),hint:t.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:q.value!==null,rules:[e=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)||t.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),u(y,{modelValue:Y.value,"onUpdate:modelValue":r[27]||=e=>Y.value=e,label:t.$t(`templates.description`),hint:t.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(y,{modelValue:X.value,"onUpdate:modelValue":r[28]||=e=>X.value=e,label:t.$t(`templates.content`),hint:t.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(pe,{dense:``,"dense-toggle":``,label:t.$t(`templates.availableVars`),"header-class":`text-grey-6 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:o(()=>[g(`div`,_n,[(e(),p(m,null,n(Tn,e=>g(`div`,{key:e,class:`text-grey-5 q-mb-xs`},s(e),1)),64))])]),_:1},8,[`label`]),Z.value?(e(),p(`div`,vn,s(Z.value),1)):l(``,!0)]),_:1}),u(ce,{align:`right`},{default:o(()=>[ee(u(v,{flat:``,label:t.$t(`common.cancel`)},null,8,[`label`]),[[Se]]),u(v,{flat:``,color:`primary`,label:q.value===null?t.$t(`templates.create`):t.$t(`templates.save`),loading:Cn.value,onClick:On},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-9ac26f61`]]);export{w as default};
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ActivityFeed-Bsm5QUA9.js","assets/index-Y9eYNsHp.js","assets/vue-i18n-eUDnMrPl.js","assets/runtime-core.esm-bundler-C3IgBgY5.js","assets/QIcon-B0-pH3Qs.js","assets/use-id-BmXMngYX.js","assets/QSeparator-DNSiXYrN.js","assets/QBtn-CyzfM9-_.js","assets/use-checkbox-BduGd8xg.js","assets/private.use-form-C5G_3nU5.js","assets/QDialog-G448EJG4.js","assets/scroll-C-Vz5BD9.js","assets/symbols-DCYodwb2.js","assets/index-eX_lKHSg.css","assets/_plugin-vue_export-helper-Cj6tcsj6.js","assets/documents-C8qHepC2.js","assets/QExpansionItem-HLBjHx-0.js","assets/QItemSection-BzWLL-V-.js","assets/QItemLabel-Czw5g0px.js","assets/QSlideTransition-s6ZkYsLs.js","assets/QScrollArea-CBW6shMb.js","assets/touch-B2uuAH_y.js","assets/TouchPan-Y_Bxzun2.js","assets/QTooltip-DbEBexRN.js","assets/QSpinnerDots-By20ptst.js","assets/ActivityFeed-GAoo1WOT.css"])))=>i.map(i=>d[i]);
2
- import{E as e,F as t,H as n,L as r,M as i,Q as a,S as o,T as s,U as c,W as l,_ as u,_t as d,a as f,bt as p,d as m,f as h,g,h as _,l as v,p as y,r as b,rt as x,u as S,v as C,w,y as T}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{I as ee,L as te,O as E,n as ne,r as D,s as O,t as k}from"./QIcon-B0-pH3Qs.js";import{t as re}from"./QSeparator-DNSiXYrN.js";import{t as ie}from"./QDialog-G448EJG4.js";import{t as A}from"./QBtn-CyzfM9-_.js";import{n as ae}from"./vue-i18n-eUDnMrPl.js";import{D as j,S as M,T as N,d as P,f as F,g as oe,i as se,m as I,p as ce,v as le,w as ue}from"./index-Y9eYNsHp.js";import{t as de}from"./QSpinnerDots-By20ptst.js";import{n as fe,t as pe}from"./QItemSection-BzWLL-V-.js";import{t as me}from"./QItemLabel-Czw5g0px.js";import{t as L}from"./QTooltip-DbEBexRN.js";import{t as R}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as he}from"./QBadge-Di02fu2H.js";import{t as ge}from"./QSpace-0zdF1m5x.js";import{t as _e}from"./QChip-1nQ_KMFF.js";import{n as z,t as B}from"./rate-limit-labels-Su-L56A2.js";import{t as ve}from"./use-quasar-BBrzedjR.js";import{t as ye}from"./ClosePopup-DTgXzcoa.js";import{t as be}from"./formatters-D7eTm7uK.js";import{n as xe,t as Se}from"./models-DVnzXKOh.js";import{t as Ce}from"./QPage-BTzNQlb1.js";var V={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},H={key:0,class:`q-ml-xs`},we=C({__name:`AgentBusyBanner`,setup(e){let{t:n}=ae(),r=le(),i=w(`openDrawerTab`),a=v(()=>r.currentSubagents.filter(e=>e.status===`running`).length),o=v(()=>{let e=r.selectedWorkspace;return e?e.status===`executing`||a.value>0:!1});function s(){i?.(`subagents`)}return(e,r)=>o.value?(t(),y(`div`,V,[g(de,{size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),S(`span`,null,p(x(n)(`agentBusy.banner`)),1),a.value>0?(t(),y(`span`,H,` — `+p(x(n)(`agentBusy.subagentsRunning`,{n:a.value},a.value)),1)):h(``,!0),a.value>0?(t(),y(b,{key:1},[g(ge),S(`span`,{class:`text-indigo-4 cursor-pointer`,style:{"text-decoration":`underline`},onClick:s},p(x(n)(`agentBusy.viewSubagents`)),1)],64)):h(``,!0)])):h(``,!0)}}),U=E({name:`QBanner`,props:{...D,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:n}}=T(),r=ne(e,n),i=v(()=>`q-banner row items-center`+(e.dense===!0?` q-banner--dense`:``)+(r.value===!0?` q-banner--dark q-dark`:``)+(e.rounded===!0?` rounded-borders`:``)),a=v(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?`auto`:`all`}`);return()=>{let n=[o(`div`,{class:`q-banner__avatar col-auto row items-center self-start`},O(t.avatar)),o(`div`,{class:`q-banner__content col text-body2`},O(t.default))],r=O(t.action);return r!==void 0&&n.push(o(`div`,{class:a.value},r)),o(`div`,{class:i.value+(e.inlineActions===!1&&r!==void 0?` q-banner--top-padding`:``),role:`alert`},n)}}}),W={class:`text-subtitle2`},G={class:`text-caption`},Te=C({__name:`AgentErrorBanner`,props:{workspaceId:{}},setup(e){let n=e,{t:r}=ae(),i=M();function a(e){let t=e.replace(/\u001b\[\d+m/g,``).trim();return/^warning:/i.test(t)}let o=v(()=>{let e=i.eventsFor(n.workspaceId);for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(n.kind!==`error`||n.category===`quota`)&&!(n.category===`other`&&a(n.message)))return n}return null});return(e,n)=>o.value?(t(),m(U,{key:0,class:`bg-negative text-white q-ma-sm`},{avatar:c(()=>[g(k,{name:`error_outline`})]),default:c(()=>[S(`div`,W,p(x(r)(`agent.error.${o.value.category}`)),1),S(`div`,G,p(o.value.message),1)]),_:1})):h(``,!0)}}),K={class:`text-weight-medium`},q={key:0,class:`text-caption`},J={key:1,class:`text-caption`},Y={class:`text-caption q-mt-sm`},X=R(C({__name:`QuotaFooter`,setup(e){let n=le(),{t:i}=ae(),a=v(()=>n.globalRateLimitUsage);function o(e,t){return!e||e.trim().length===0?i(`stats.usageBucket`,{n:t+1}):B(e,i)}let s=v(()=>{let e=a.value;return!e||e.buckets.length===0?`${i(`quotaFooter.placeholder`)} 0%`:e.buckets.map((e,t)=>`${o(e.label,t)} ${e.usedPct.toFixed(0)}%`).join(` · `)}),l=v(()=>{let e=a.value;if(!e)return``;try{return new Date(e.updatedAt).toLocaleTimeString()}catch{return e.updatedAt}});return(e,n)=>(t(),y(`span`,{class:d([`quota-footer`,{"quota-footer--empty":!a.value}])},[_(p(s.value)+` `,1),a.value?(t(),m(L,{key:0},{default:c(()=>[S(`div`,K,p(e.$t(`quotaFooter.tooltipTitle`)),1),(t(!0),y(b,null,r(a.value.buckets,(n,r)=>(t(),y(`div`,{key:n.id,class:`q-mt-xs`},[S(`div`,null,p(o(n.label,r))+` — `+p(n.usedPct.toFixed(0))+`% `+p(e.$t(`stats.used`)),1),n.details?(t(),y(`div`,q,p(n.details),1)):h(``,!0),n.resetAt?(t(),y(`div`,J,p(e.$t(`stats.resetsAt`,{value:n.resetAt})),1)):h(``,!0)]))),128)),S(`div`,Y,p(e.$t(`quotaFooter.lastUpdated`,{time:l.value})),1)]),_:1})):(t(),m(L,{key:1},{default:c(()=>[_(p(e.$t(`quotaFooter.noData`)),1)]),_:1}))],2))}}),[[`__scopeId`,`data-v-0c047f57`]]);function Z(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>{let r=t[n];return r==null?e:String(r)})}function Ee(e){let t={};return e.workspace&&(t.workspace_name=e.workspace.name,t.working_branch=e.workspace.workingBranch,t.source_branch=e.workspace.sourceBranch,t.project_path=e.workspace.projectPath,t.worktree_path=`${e.workspace.projectPath}/.worktrees/${e.workspace.workingBranch}`),e.gitStats&&(t.commit_count=e.gitStats.commitCount,t.unpushed_count=e.gitStats.unpushedCount,t.files_changed=e.gitStats.filesChanged,t.insertions=e.gitStats.insertions,t.deletions=e.gitStats.deletions,e.gitStats.prNumber!=null&&(t.pr_number=e.gitStats.prNumber),e.gitStats.prUrl&&(t.pr_url=e.gitStats.prUrl),e.gitStats.prState&&(t.pr_state=e.gitStats.prState)),e.sessionName&&(t.session_name=e.sessionName),t}var De={key:0,class:`row items-center q-gutter-xs q-mb-xs q-px-xs`,style:{"flex-wrap":`wrap`}},Oe={class:`text-caption image-tag-label`},ke={key:1,class:`skills-popup rounded-borders`},Ae={class:`skills-section-header`},Q=[`onMousedown`],je={class:`skill-name text-caption`},Me={class:`skills-section-header`},Ne=[`onMousedown`],Pe={class:`skill-name text-caption`},Fe={key:0,class:`skill-description text-caption text-grey-7 q-ml-xs`},Ie={class:`skills-section-header`},Le=[`onMousedown`],Re={class:`skill-name text-caption`},ze={key:0,class:`skill-description text-caption text-grey-7 q-ml-xs`},Be={key:2,class:`queue-banner row items-center q-pa-xs q-px-sm text-caption text-amber-6`},Ve={class:`row items-center q-gutter-sm`},He={class:`chat-hint row items-center text-caption text-grey-8`},$=R(C({__name:`ChatInput`,props:{workspaceId:{}},setup(o){let s=o,{t:l}=ae(),u=ve(),f=le(),x=oe(),C=ue(),w=a(``),T=a(!1),ee=v(()=>{let e=f.selectedWorkspace;return e?[`executing`,`extracting`,`brainstorming`].includes(e.status):!1});async function E(){if(s.workspaceId){T.value=!0;try{await f.interruptAgent(s.workspaceId),u.notify({type:`info`,message:l(`workspacePage.interrupted`),position:`top`,timeout:3e3})}catch(e){let t=e instanceof Error?e.message:l(`workspacePage.interruptFailed`);u.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{T.value=!1}}}let ne=v(()=>{let e=f.selectedWorkspace;return e?[`executing`,`extracting`,`brainstorming`].includes(e.status):!1}),D=v(()=>!!f.queuedMessages[s.workspaceId]),O=a(null);function re(){let e=O.value;return e?e.getNativeElement?.()??null:null}let ie=a([]),j=a(!1),M=a(``),N=a(0),P=v(()=>{let e=M.value.toLowerCase(),t=t=>e===``?!0:t.toLowerCase().includes(e);return{skills:ie.value.filter(e=>t(e)).map(e=>({type:`skill`,name:e})),kobo:Object.keys(z).map(e=>e.replace(/^\//,``)).filter(e=>t(e)).map(e=>({type:`kobo`,name:e})),templates:C.templates.filter(e=>t(e.slug)).map(e=>({type:`template`,name:e.slug,description:e.description}))}}),F=v(()=>[...P.value.skills,...P.value.kobo,...P.value.templates]);n(()=>F.value.length,e=>{if(e===0){N.value=0;return}N.value>=e&&(N.value=e-1)});let I=a([]),ce=a(null),fe=a(!1),pe=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`];function me(t){let n=re(),r=n?.selectionStart??w.value.length,i=w.value.slice(0,r),a=w.value.slice(r);w.value=i+t+a,e(()=>{if(n){let e=r+t.length;n.focus(),n.setSelectionRange(e,e)}})}function R(){let e=`[image: ${l(`chatInput.uploading`)}]`,t=new Set(I.value.map(e=>e.placeholder));if(!t.has(e))return e;let n=2;for(;t.has(`[image: ${l(`chatInput.uploading`)} ${n}]`);)n++;return`[image: ${l(`chatInput.uploading`)} ${n}]`}async function he(e){if(!pe.includes(e.type))return;let t=crypto.randomUUID(),n=e.name||`pasted-image.png`,r=R(),i={tempId:t,originalName:n,placeholder:r,status:`uploading`};I.value.push(i),me(r);try{let n=new FormData;n.append(`image`,e);let r=await fetch(`/api/workspaces/${s.workspaceId}/images`,{method:`POST`,body:n});if(!r.ok){let e=await r.json();throw Error(e.error||`Upload failed`)}let i=await r.json(),a=I.value.find(e=>e.tempId===t);if(a){a.uid=i.uid,a.path=i.path,a.status=`ready`;let e=`[image: ${i.path}]`;e!==a.placeholder&&(w.value=w.value.split(a.placeholder).join(e),a.placeholder=e)}}catch{let e=I.value.find(e=>e.tempId===t);e&&(e.status=`error`)}}function _e(e,t){fetch(`/api/workspaces/${e}/images/${t}`,{method:`DELETE`}).catch(()=>{})}function B(e){let t=I.value.find(t=>t.tempId===e);if(t){I.value=I.value.filter(t=>t.tempId!==e);{let e=t.placeholder.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);w.value=w.value.replace(RegExp(`${e}\\s?`,`g`),``)}t.uid&&_e(s.workspaceId,t.uid)}}function ye(e){if(e.clipboardData){for(let t of Array.from(e.clipboardData.items))if(t.type.startsWith(`image/`)){let e=t.getAsFile();e&&he(e)}}}function be(e){if(e.preventDefault(),fe.value=!1,e.dataTransfer)for(let t of Array.from(e.dataTransfer.files))pe.includes(t.type)&&he(t)}function xe(e){e.preventDefault(),fe.value=!0}function Se(){fe.value=!1}function Ce(e){let t=e.target;if(t.files){for(let e of Array.from(t.files))he(e);t.value=``}}let V=v(()=>I.value.some(e=>e.status===`uploading`)),H=v(()=>f.sessions.find(e=>e.id===f.selectedSessionId)??null),we=0;async function U(){let e=Date.now();if(!(e-we<5e3)){we=e;try{let e=await fetch(`/api/skills`);e.ok&&(ie.value=await e.json())}catch{}}}i(U),n(()=>f.chatDraft,e=>{e&&(w.value=w.value?`${w.value}\n${e}`:e,f.chatDraft=``)});let W=!1;function G(){W=!0,f.cancelQueuedMessage(s.workspaceId)}n(D,(e,t)=>{t&&!e&&!W&&(w.value=``),W=!1}),n(()=>s.workspaceId,e=>{let t=f.queuedMessages[e];w.value=t?t.content:``});function Te(){let e=re();if(!e)return null;let t=e.selectionStart??w.value.length,n=w.value.slice(0,t).match(/\/([\w:.-]*)$/);return n?n[1]:null}n(w,async()=>{await e();let t=Te();t===null?j.value=!1:(await U(),M.value=t,j.value=!0,N.value=0);let n=[];for(let e of I.value)w.value.includes(e.placeholder)||n.push(e.tempId);for(let e of n)B(e)});function K(t){let n=re();if(!n){w.value=t;return}let r=n.selectionStart??w.value.length,i=w.value.slice(0,r),a=w.value.slice(r),o=i.match(/\/[\w-]*$/);if(!o){w.value=t;return}let s=o.index??r;w.value=w.value.slice(0,s)+t+a,e(()=>{let e=s+t.length;n.focus(),n.setSelectionRange(e,e)})}function q(e){if(!e)return;if(e.type===`template`){let t=C.templates.find(t=>t.slug===e.name);if(!t)return;let n=f.workspaces.find(e=>e.id===s.workspaceId)??null,r=f.gitStatsCache[s.workspaceId]??null,i=f.sessions.find(e=>e.id===f.selectedSessionId)??null,a=null;if(i)if(i.name)a=i.name;else{let e=f.sessions.findIndex(e=>e.id===i.id);a=l(`workspacePage.session`,{n:f.sessions.length-e})}let o;if(r?.prUrl){let e=r.prUrl.match(/\/pull\/(\d+)/);e&&(o=parseInt(e[1],10))}let c=Ee({workspace:n?{name:n.name,workingBranch:n.workingBranch,sourceBranch:n.sourceBranch,projectPath:n.projectPath}:null,gitStats:r?{commitCount:r.commitCount,unpushedCount:r.unpushedCount,filesChanged:r.filesChanged,insertions:r.insertions,deletions:r.deletions,prNumber:o,prUrl:r.prUrl,prState:r.prState}:null,sessionName:a});K(Z(t.content,c)),j.value=!1;return}let t=`/${e.name}`;if(e.type===`kobo`&&z[t]){w.value=t,j.value=!1,qe();return}K(`${t} `),j.value=!1}let J=v(()=>!s.workspaceId),Y=a(JSON.parse(localStorage.getItem(`kobo:chatHistory`)??`[]`)),$=a(-1),Ue=a(``);function We(e){e&&Y.value[0]!==e&&(Y.value.unshift(e),Y.value.length>50&&Y.value.pop(),localStorage.setItem(`kobo:chatHistory`,JSON.stringify(Y.value)))}function Ge(){$.value=-1,Ue.value=``}function Ke(e){let t=z[`/${e}`]?.descriptionKey;return t?l(t):``}async function qe(){let e=w.value.trim();if(!e&&I.value.length===0||J.value||V.value)return;let t=H.value,n=z[e];if(n){x.sendChatMessage(s.workspaceId,n.prompt,f.selectedSessionId??void 0),f.markRead(s.workspaceId),f.addActivityItem(s.workspaceId,{id:`user-${Date.now()}`,type:`text`,content:n.prompt,timestamp:new Date().toISOString(),sessionId:f.selectedSessionId??void 0,meta:{sender:`user`,pending:!0}}),We(e),Ge(),w.value=``;return}if(ne.value){f.queueMessage(s.workspaceId,e,f.selectedSessionId??void 0);return}f.cancelQueuedMessage(s.workspaceId);let r=e,i=I.value.filter(e=>e.status===`ready`&&e.path&&!r.includes(`[image: ${e.path}]`)).map(e=>`[image: ${e.path}]`).join(` `);i&&(r=`${r} ${i}`.trim());let a=f.selectedSessionId??void 0;if((t?.status===`completed`||t?.status===`error`)&&!t.engineSessionId){u.notify({type:`warning`,message:l(`workspacePage.sessionEndedNotice`),position:`top`,timeout:5e3});return}let o=`user-${Date.now()}`;f.markRead(s.workspaceId),f.addActivityItem(s.workspaceId,{id:o,type:`text`,content:r,timestamp:new Date().toISOString(),sessionId:a,meta:{sender:`user`,pending:!0}});let c=e;We(e),Ge(),w.value=``,I.value=[];let d=(e,t)=>{console.error(`[ChatInput] ${t} failed:`,e),f.removeActivityItem(s.workspaceId,o),w.value=c;let n=e instanceof Error?e.message:null;u.notify({type:`negative`,message:n??l(`workspacePage.startFailed`),position:`top`,timeout:6e3})};if(t?.status===`idle`)try{await f.startWorkspace(s.workspaceId,r,t.id),await f.fetchSessions(s.workspaceId)}catch(e){d(e,`startWorkspace`)}else if(t?.status===`completed`||t?.status===`error`)try{await f.startWorkspace(s.workspaceId,r,t.id,!0),await f.fetchSessions(s.workspaceId)}catch(e){d(e,`resume session`)}else x.sendChatMessage(s.workspaceId,r,f.selectedSessionId??void 0)}function Je(e){if(j.value&&F.value.length>0){if(e.key===`ArrowDown`){e.preventDefault(),N.value=Math.min(N.value+1,F.value.length-1);return}if(e.key===`ArrowUp`){e.preventDefault(),N.value=Math.max(N.value-1,0);return}if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey){e.preventDefault(),q(F.value[N.value]);return}if(e.key===`Escape`){e.preventDefault(),j.value=!1;return}}if(e.key===`ArrowUp`&&Y.value.length>0){let t=e.target;if(!(!t||t.selectionStart<=(w.value.indexOf(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ActivityFeed-DETQbE-a.js","assets/index-B0Jj-w-E.js","assets/vue-i18n-eUDnMrPl.js","assets/runtime-core.esm-bundler-C3IgBgY5.js","assets/QIcon-B0-pH3Qs.js","assets/use-id-BmXMngYX.js","assets/QSeparator-DNSiXYrN.js","assets/QBtn-CyzfM9-_.js","assets/use-checkbox-BduGd8xg.js","assets/private.use-form-C5G_3nU5.js","assets/QDialog-G448EJG4.js","assets/scroll-C-Vz5BD9.js","assets/symbols-DCYodwb2.js","assets/index-eX_lKHSg.css","assets/_plugin-vue_export-helper-Cj6tcsj6.js","assets/documents-CByb0FJM.js","assets/QExpansionItem-HLBjHx-0.js","assets/QItemSection-BzWLL-V-.js","assets/QItemLabel-Czw5g0px.js","assets/QSlideTransition-s6ZkYsLs.js","assets/QScrollArea-CBW6shMb.js","assets/touch-B2uuAH_y.js","assets/TouchPan-Y_Bxzun2.js","assets/QTooltip-DbEBexRN.js","assets/QSpinnerDots-By20ptst.js","assets/ActivityFeed-GAoo1WOT.css"])))=>i.map(i=>d[i]);
2
+ import{E as e,F as t,H as n,L as r,M as i,Q as a,S as o,T as s,U as c,W as l,_ as u,_t as d,a as f,bt as p,d as m,f as h,g,h as _,l as v,p as y,r as b,rt as x,u as S,v as C,w,y as T}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{I as ee,L as te,O as E,n as ne,r as D,s as O,t as k}from"./QIcon-B0-pH3Qs.js";import{t as re}from"./QSeparator-DNSiXYrN.js";import{t as ie}from"./QDialog-G448EJG4.js";import{t as A}from"./QBtn-CyzfM9-_.js";import{n as ae}from"./vue-i18n-eUDnMrPl.js";import{D as j,S as M,T as N,d as P,f as F,g as oe,i as se,m as I,p as ce,v as le,w as ue}from"./index-B0Jj-w-E.js";import{t as de}from"./QSpinnerDots-By20ptst.js";import{n as fe,t as pe}from"./QItemSection-BzWLL-V-.js";import{t as me}from"./QItemLabel-Czw5g0px.js";import{t as L}from"./QTooltip-DbEBexRN.js";import{t as R}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as he}from"./QBadge-Di02fu2H.js";import{t as ge}from"./QSpace-0zdF1m5x.js";import{t as _e}from"./QChip-1nQ_KMFF.js";import{n as z,t as B}from"./rate-limit-labels-Su-L56A2.js";import{t as ve}from"./use-quasar-BBrzedjR.js";import{t as ye}from"./ClosePopup-DTgXzcoa.js";import{t as be}from"./formatters-D7eTm7uK.js";import{n as xe,t as Se}from"./models-GweeyU2r.js";import{t as Ce}from"./QPage-BTzNQlb1.js";var V={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},H={key:0,class:`q-ml-xs`},we=C({__name:`AgentBusyBanner`,setup(e){let{t:n}=ae(),r=le(),i=w(`openDrawerTab`),a=v(()=>r.currentSubagents.filter(e=>e.status===`running`).length),o=v(()=>{let e=r.selectedWorkspace;return e?e.status===`executing`||a.value>0:!1});function s(){i?.(`subagents`)}return(e,r)=>o.value?(t(),y(`div`,V,[g(de,{size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),S(`span`,null,p(x(n)(`agentBusy.banner`)),1),a.value>0?(t(),y(`span`,H,` — `+p(x(n)(`agentBusy.subagentsRunning`,{n:a.value},a.value)),1)):h(``,!0),a.value>0?(t(),y(b,{key:1},[g(ge),S(`span`,{class:`text-indigo-4 cursor-pointer`,style:{"text-decoration":`underline`},onClick:s},p(x(n)(`agentBusy.viewSubagents`)),1)],64)):h(``,!0)])):h(``,!0)}}),U=E({name:`QBanner`,props:{...D,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:n}}=T(),r=ne(e,n),i=v(()=>`q-banner row items-center`+(e.dense===!0?` q-banner--dense`:``)+(r.value===!0?` q-banner--dark q-dark`:``)+(e.rounded===!0?` rounded-borders`:``)),a=v(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?`auto`:`all`}`);return()=>{let n=[o(`div`,{class:`q-banner__avatar col-auto row items-center self-start`},O(t.avatar)),o(`div`,{class:`q-banner__content col text-body2`},O(t.default))],r=O(t.action);return r!==void 0&&n.push(o(`div`,{class:a.value},r)),o(`div`,{class:i.value+(e.inlineActions===!1&&r!==void 0?` q-banner--top-padding`:``),role:`alert`},n)}}}),W={class:`text-subtitle2`},G={class:`text-caption`},Te=C({__name:`AgentErrorBanner`,props:{workspaceId:{}},setup(e){let n=e,{t:r}=ae(),i=M();function a(e){let t=e.replace(/\u001b\[\d+m/g,``).trim();return/^warning:/i.test(t)}let o=v(()=>{let e=i.eventsFor(n.workspaceId);for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(n.kind!==`error`||n.category===`quota`)&&!(n.category===`other`&&a(n.message)))return n}return null});return(e,n)=>o.value?(t(),m(U,{key:0,class:`bg-negative text-white q-ma-sm`},{avatar:c(()=>[g(k,{name:`error_outline`})]),default:c(()=>[S(`div`,W,p(x(r)(`agent.error.${o.value.category}`)),1),S(`div`,G,p(o.value.message),1)]),_:1})):h(``,!0)}}),K={class:`text-weight-medium`},q={key:0,class:`text-caption`},J={key:1,class:`text-caption`},Y={class:`text-caption q-mt-sm`},X=R(C({__name:`QuotaFooter`,setup(e){let n=le(),{t:i}=ae(),a=v(()=>n.globalRateLimitUsage);function o(e,t){return!e||e.trim().length===0?i(`stats.usageBucket`,{n:t+1}):B(e,i)}let s=v(()=>{let e=a.value;return!e||e.buckets.length===0?`${i(`quotaFooter.placeholder`)} 0%`:e.buckets.map((e,t)=>`${o(e.label,t)} ${e.usedPct.toFixed(0)}%`).join(` · `)}),l=v(()=>{let e=a.value;if(!e)return``;try{return new Date(e.updatedAt).toLocaleTimeString()}catch{return e.updatedAt}});return(e,n)=>(t(),y(`span`,{class:d([`quota-footer`,{"quota-footer--empty":!a.value}])},[_(p(s.value)+` `,1),a.value?(t(),m(L,{key:0},{default:c(()=>[S(`div`,K,p(e.$t(`quotaFooter.tooltipTitle`)),1),(t(!0),y(b,null,r(a.value.buckets,(n,r)=>(t(),y(`div`,{key:n.id,class:`q-mt-xs`},[S(`div`,null,p(o(n.label,r))+` — `+p(n.usedPct.toFixed(0))+`% `+p(e.$t(`stats.used`)),1),n.details?(t(),y(`div`,q,p(n.details),1)):h(``,!0),n.resetAt?(t(),y(`div`,J,p(e.$t(`stats.resetsAt`,{value:n.resetAt})),1)):h(``,!0)]))),128)),S(`div`,Y,p(e.$t(`quotaFooter.lastUpdated`,{time:l.value})),1)]),_:1})):(t(),m(L,{key:1},{default:c(()=>[_(p(e.$t(`quotaFooter.noData`)),1)]),_:1}))],2))}}),[[`__scopeId`,`data-v-0c047f57`]]);function Z(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>{let r=t[n];return r==null?e:String(r)})}function Ee(e){let t={};return e.workspace&&(t.workspace_name=e.workspace.name,t.working_branch=e.workspace.workingBranch,t.source_branch=e.workspace.sourceBranch,t.project_path=e.workspace.projectPath,t.worktree_path=`${e.workspace.projectPath}/.worktrees/${e.workspace.workingBranch}`),e.gitStats&&(t.commit_count=e.gitStats.commitCount,t.unpushed_count=e.gitStats.unpushedCount,t.files_changed=e.gitStats.filesChanged,t.insertions=e.gitStats.insertions,t.deletions=e.gitStats.deletions,e.gitStats.prNumber!=null&&(t.pr_number=e.gitStats.prNumber),e.gitStats.prUrl&&(t.pr_url=e.gitStats.prUrl),e.gitStats.prState&&(t.pr_state=e.gitStats.prState)),e.sessionName&&(t.session_name=e.sessionName),t}var De={key:0,class:`row items-center q-gutter-xs q-mb-xs q-px-xs`,style:{"flex-wrap":`wrap`}},Oe={class:`text-caption image-tag-label`},ke={key:1,class:`skills-popup rounded-borders`},Ae={class:`skills-section-header`},Q=[`onMousedown`],je={class:`skill-name text-caption`},Me={class:`skills-section-header`},Ne=[`onMousedown`],Pe={class:`skill-name text-caption`},Fe={key:0,class:`skill-description text-caption text-grey-7 q-ml-xs`},Ie={class:`skills-section-header`},Le=[`onMousedown`],Re={class:`skill-name text-caption`},ze={key:0,class:`skill-description text-caption text-grey-7 q-ml-xs`},Be={key:2,class:`queue-banner row items-center q-pa-xs q-px-sm text-caption text-amber-6`},Ve={class:`row items-center q-gutter-sm`},He={class:`chat-hint row items-center text-caption text-grey-8`},$=R(C({__name:`ChatInput`,props:{workspaceId:{}},setup(o){let s=o,{t:l}=ae(),u=ve(),f=le(),x=oe(),C=ue(),w=a(``),T=a(!1),ee=v(()=>{let e=f.selectedWorkspace;return e?[`executing`,`extracting`,`brainstorming`].includes(e.status):!1});async function E(){if(s.workspaceId){T.value=!0;try{await f.interruptAgent(s.workspaceId),u.notify({type:`info`,message:l(`workspacePage.interrupted`),position:`top`,timeout:3e3})}catch(e){let t=e instanceof Error?e.message:l(`workspacePage.interruptFailed`);u.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{T.value=!1}}}let ne=v(()=>{let e=f.selectedWorkspace;return e?[`executing`,`extracting`,`brainstorming`].includes(e.status):!1}),D=v(()=>!!f.queuedMessages[s.workspaceId]),O=a(null);function re(){let e=O.value;return e?e.getNativeElement?.()??null:null}let ie=a([]),j=a(!1),M=a(``),N=a(0),P=v(()=>{let e=M.value.toLowerCase(),t=t=>e===``?!0:t.toLowerCase().includes(e);return{skills:ie.value.filter(e=>t(e)).map(e=>({type:`skill`,name:e})),kobo:Object.keys(z).map(e=>e.replace(/^\//,``)).filter(e=>t(e)).map(e=>({type:`kobo`,name:e})),templates:C.templates.filter(e=>t(e.slug)).map(e=>({type:`template`,name:e.slug,description:e.description}))}}),F=v(()=>[...P.value.skills,...P.value.kobo,...P.value.templates]);n(()=>F.value.length,e=>{if(e===0){N.value=0;return}N.value>=e&&(N.value=e-1)});let I=a([]),ce=a(null),fe=a(!1),pe=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`];function me(t){let n=re(),r=n?.selectionStart??w.value.length,i=w.value.slice(0,r),a=w.value.slice(r);w.value=i+t+a,e(()=>{if(n){let e=r+t.length;n.focus(),n.setSelectionRange(e,e)}})}function R(){let e=`[image: ${l(`chatInput.uploading`)}]`,t=new Set(I.value.map(e=>e.placeholder));if(!t.has(e))return e;let n=2;for(;t.has(`[image: ${l(`chatInput.uploading`)} ${n}]`);)n++;return`[image: ${l(`chatInput.uploading`)} ${n}]`}async function he(e){if(!pe.includes(e.type))return;let t=crypto.randomUUID(),n=e.name||`pasted-image.png`,r=R(),i={tempId:t,originalName:n,placeholder:r,status:`uploading`};I.value.push(i),me(r);try{let n=new FormData;n.append(`image`,e);let r=await fetch(`/api/workspaces/${s.workspaceId}/images`,{method:`POST`,body:n});if(!r.ok){let e=await r.json();throw Error(e.error||`Upload failed`)}let i=await r.json(),a=I.value.find(e=>e.tempId===t);if(a){a.uid=i.uid,a.path=i.path,a.status=`ready`;let e=`[image: ${i.path}]`;e!==a.placeholder&&(w.value=w.value.split(a.placeholder).join(e),a.placeholder=e)}}catch{let e=I.value.find(e=>e.tempId===t);e&&(e.status=`error`)}}function _e(e,t){fetch(`/api/workspaces/${e}/images/${t}`,{method:`DELETE`}).catch(()=>{})}function B(e){let t=I.value.find(t=>t.tempId===e);if(t){I.value=I.value.filter(t=>t.tempId!==e);{let e=t.placeholder.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);w.value=w.value.replace(RegExp(`${e}\\s?`,`g`),``)}t.uid&&_e(s.workspaceId,t.uid)}}function ye(e){if(e.clipboardData){for(let t of Array.from(e.clipboardData.items))if(t.type.startsWith(`image/`)){let e=t.getAsFile();e&&he(e)}}}function be(e){if(e.preventDefault(),fe.value=!1,e.dataTransfer)for(let t of Array.from(e.dataTransfer.files))pe.includes(t.type)&&he(t)}function xe(e){e.preventDefault(),fe.value=!0}function Se(){fe.value=!1}function Ce(e){let t=e.target;if(t.files){for(let e of Array.from(t.files))he(e);t.value=``}}let V=v(()=>I.value.some(e=>e.status===`uploading`)),H=v(()=>f.sessions.find(e=>e.id===f.selectedSessionId)??null),we=0;async function U(){let e=Date.now();if(!(e-we<5e3)){we=e;try{let e=await fetch(`/api/skills`);e.ok&&(ie.value=await e.json())}catch{}}}i(U),n(()=>f.chatDraft,e=>{e&&(w.value=w.value?`${w.value}\n${e}`:e,f.chatDraft=``)});let W=!1;function G(){W=!0,f.cancelQueuedMessage(s.workspaceId)}n(D,(e,t)=>{t&&!e&&!W&&(w.value=``),W=!1}),n(()=>s.workspaceId,e=>{let t=f.queuedMessages[e];w.value=t?t.content:``});function Te(){let e=re();if(!e)return null;let t=e.selectionStart??w.value.length,n=w.value.slice(0,t).match(/\/([\w:.-]*)$/);return n?n[1]:null}n(w,async()=>{await e();let t=Te();t===null?j.value=!1:(await U(),M.value=t,j.value=!0,N.value=0);let n=[];for(let e of I.value)w.value.includes(e.placeholder)||n.push(e.tempId);for(let e of n)B(e)});function K(t){let n=re();if(!n){w.value=t;return}let r=n.selectionStart??w.value.length,i=w.value.slice(0,r),a=w.value.slice(r),o=i.match(/\/[\w-]*$/);if(!o){w.value=t;return}let s=o.index??r;w.value=w.value.slice(0,s)+t+a,e(()=>{let e=s+t.length;n.focus(),n.setSelectionRange(e,e)})}function q(e){if(!e)return;if(e.type===`template`){let t=C.templates.find(t=>t.slug===e.name);if(!t)return;let n=f.workspaces.find(e=>e.id===s.workspaceId)??null,r=f.gitStatsCache[s.workspaceId]??null,i=f.sessions.find(e=>e.id===f.selectedSessionId)??null,a=null;if(i)if(i.name)a=i.name;else{let e=f.sessions.findIndex(e=>e.id===i.id);a=l(`workspacePage.session`,{n:f.sessions.length-e})}let o;if(r?.prUrl){let e=r.prUrl.match(/\/pull\/(\d+)/);e&&(o=parseInt(e[1],10))}let c=Ee({workspace:n?{name:n.name,workingBranch:n.workingBranch,sourceBranch:n.sourceBranch,projectPath:n.projectPath}:null,gitStats:r?{commitCount:r.commitCount,unpushedCount:r.unpushedCount,filesChanged:r.filesChanged,insertions:r.insertions,deletions:r.deletions,prNumber:o,prUrl:r.prUrl,prState:r.prState}:null,sessionName:a});K(Z(t.content,c)),j.value=!1;return}let t=`/${e.name}`;if(e.type===`kobo`&&z[t]){w.value=t,j.value=!1,qe();return}K(`${t} `),j.value=!1}let J=v(()=>!s.workspaceId),Y=a(JSON.parse(localStorage.getItem(`kobo:chatHistory`)??`[]`)),$=a(-1),Ue=a(``);function We(e){e&&Y.value[0]!==e&&(Y.value.unshift(e),Y.value.length>50&&Y.value.pop(),localStorage.setItem(`kobo:chatHistory`,JSON.stringify(Y.value)))}function Ge(){$.value=-1,Ue.value=``}function Ke(e){let t=z[`/${e}`]?.descriptionKey;return t?l(t):``}async function qe(){let e=w.value.trim();if(!e&&I.value.length===0||J.value||V.value)return;let t=H.value,n=z[e];if(n){x.sendChatMessage(s.workspaceId,n.prompt,f.selectedSessionId??void 0),f.markRead(s.workspaceId),f.addActivityItem(s.workspaceId,{id:`user-${Date.now()}`,type:`text`,content:n.prompt,timestamp:new Date().toISOString(),sessionId:f.selectedSessionId??void 0,meta:{sender:`user`,pending:!0}}),We(e),Ge(),w.value=``;return}if(ne.value){f.queueMessage(s.workspaceId,e,f.selectedSessionId??void 0);return}f.cancelQueuedMessage(s.workspaceId);let r=e,i=I.value.filter(e=>e.status===`ready`&&e.path&&!r.includes(`[image: ${e.path}]`)).map(e=>`[image: ${e.path}]`).join(` `);i&&(r=`${r} ${i}`.trim());let a=f.selectedSessionId??void 0;if((t?.status===`completed`||t?.status===`error`)&&!t.engineSessionId){u.notify({type:`warning`,message:l(`workspacePage.sessionEndedNotice`),position:`top`,timeout:5e3});return}let o=`user-${Date.now()}`;f.markRead(s.workspaceId),f.addActivityItem(s.workspaceId,{id:o,type:`text`,content:r,timestamp:new Date().toISOString(),sessionId:a,meta:{sender:`user`,pending:!0}});let c=e;We(e),Ge(),w.value=``,I.value=[];let d=(e,t)=>{console.error(`[ChatInput] ${t} failed:`,e),f.removeActivityItem(s.workspaceId,o),w.value=c;let n=e instanceof Error?e.message:null;u.notify({type:`negative`,message:n??l(`workspacePage.startFailed`),position:`top`,timeout:6e3})};if(t?.status===`idle`)try{await f.startWorkspace(s.workspaceId,r,t.id),await f.fetchSessions(s.workspaceId)}catch(e){d(e,`startWorkspace`)}else if(t?.status===`completed`||t?.status===`error`)try{await f.startWorkspace(s.workspaceId,r,t.id,!0),await f.fetchSessions(s.workspaceId)}catch(e){d(e,`resume session`)}else x.sendChatMessage(s.workspaceId,r,f.selectedSessionId??void 0)}function Je(e){if(j.value&&F.value.length>0){if(e.key===`ArrowDown`){e.preventDefault(),N.value=Math.min(N.value+1,F.value.length-1);return}if(e.key===`ArrowUp`){e.preventDefault(),N.value=Math.max(N.value-1,0);return}if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey){e.preventDefault(),q(F.value[N.value]);return}if(e.key===`Escape`){e.preventDefault(),j.value=!1;return}}if(e.key===`ArrowUp`&&Y.value.length>0){let t=e.target;if(!(!t||t.selectionStart<=(w.value.indexOf(`
3
3
  `)===-1?w.value.length:w.value.indexOf(`
4
- `)))&&$.value===-1)return;e.preventDefault(),$.value===-1&&(Ue.value=w.value),$.value<Y.value.length-1&&($.value++,w.value=Y.value[$.value]);return}if(e.key===`ArrowDown`&&$.value>=0){e.preventDefault(),$.value--,w.value=$.value>=0?Y.value[$.value]:Ue.value;return}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),qe())}return(e,n)=>(t(),y(`div`,{class:d([`chat-input-container column q-pa-sm`,{"chat-input-dragging":fe.value}]),onDragover:xe,onDragleave:Se,onDrop:be},[I.value.length>0?(t(),y(`div`,De,[(t(!0),y(b,null,r(I.value,n=>(t(),y(`div`,{key:n.tempId,class:d([`image-tag row items-center q-px-sm q-py-xs rounded-borders`,{"image-tag--uploading":n.status===`uploading`,"image-tag--ready":n.status===`ready`,"image-tag--error":n.status===`error`}])},[n.status===`uploading`?(t(),m(de,{key:0,size:`14px`,color:`grey-6`,class:`q-mr-xs`})):n.status===`ready`?(t(),m(k,{key:1,name:`image`,size:`14px`,color:`green-6`,class:`q-mr-xs`})):(t(),m(k,{key:2,name:`error`,size:`14px`,color:`red-6`,class:`q-mr-xs`})),S(`span`,Oe,p(n.status===`uploading`?e.$t(`chatInput.uploading`):n.path||n.originalName),1),g(A,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,class:`q-ml-xs image-tag-close`,onClick:e=>B(n.tempId)},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`tooltip.removeImage`)),1)]),_:1})]),_:1},8,[`onClick`])],2))),128))])):h(``,!0),j.value&&F.value.length>0?(t(),y(`div`,ke,[P.value.skills.length>0?(t(),y(b,{key:0},[S(`div`,Ae,p(e.$t(`chatInput.dropdownSkills`)),1),(t(!0),y(b,null,r(P.value.skills,e=>(t(),y(`div`,{key:`skill-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`bolt`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),S(`span`,je,p(e.name),1)],42,Q))),128))],64)):h(``,!0),P.value.kobo.length>0?(t(),y(b,{key:1},[S(`div`,Me,p(e.$t(`chatInput.dropdownKobo`)),1),(t(!0),y(b,null,r(P.value.kobo,e=>(t(),y(`div`,{key:`kobo-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`terminal`,size:`12px`,color:`teal-4`,class:`q-mr-xs`}),S(`span`,Pe,`/`+p(e.name),1),Ke(e.name)?(t(),y(`span`,Fe,`— `+p(Ke(e.name)),1)):h(``,!0)],42,Ne))),128))],64)):h(``,!0),P.value.templates.length>0?(t(),y(b,{key:2},[S(`div`,Ie,p(e.$t(`chatInput.dropdownTemplates`)),1),(t(!0),y(b,null,r(P.value.templates,e=>(t(),y(`div`,{key:`tpl-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`description`,size:`12px`,color:`amber-4`,class:`q-mr-xs`}),S(`span`,Re,`/`+p(e.name),1),e.description?(t(),y(`span`,ze,`— `+p(e.description),1)):h(``,!0)],42,Le))),128))],64)):h(``,!0)])):h(``,!0),D.value?(t(),y(`div`,Be,[g(k,{name:`schedule`,size:`14px`,color:`amber-6`,class:`q-mr-sm`}),S(`span`,null,p(e.$t(`chatInput.queueBanner`)),1)])):h(``,!0),S(`div`,Ve,[g(se,{ref_key:`chatInputRef`,ref:O,modelValue:w.value,"onUpdate:modelValue":n[0]||=e=>w.value=e,dense:``,dark:``,borderless:``,autogrow:``,readonly:D.value,placeholder:e.$t(`chatInput.placeholder`),class:`chat-input col rounded-borders`,disable:J.value,onKeydown:Je,onPaste:ye},null,8,[`modelValue`,`readonly`,`placeholder`,`disable`]),S(`input`,{ref_key:`fileInputRef`,ref:ce,type:`file`,accept:`image/png,image/jpeg,image/gif,image/webp`,multiple:``,style:{display:`none`},onChange:Ce},null,544),g(A,{flat:``,dense:``,icon:`attach_file`,color:`grey-6`,disable:J.value,onClick:n[1]||=e=>ce.value?.click()},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`chatInput.attachImage`)),1)]),_:1})]),_:1},8,[`disable`]),D.value?(t(),m(A,{key:0,flat:``,dense:``,icon:`cancel`,color:`orange`,onClick:G},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`chatInput.cancelQueue`)),1)]),_:1})]),_:1})):(t(),m(A,{key:1,flat:``,dense:``,icon:`send`,color:`primary`,disable:J.value||!w.value.trim()&&I.value.length===0||V.value,onClick:qe},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`tooltip.sendMessage`)),1)]),_:1})]),_:1},8,[`disable`]))]),S(`div`,He,[S(`div`,null,[n[2]||=S(`kbd`,null,`Enter`,-1),_(` `+p(e.$t(`common.send`))+` `,1),n[3]||=S(`span`,{class:`q-mx-xs`},`·`,-1),n[4]||=_(),n[5]||=S(`kbd`,null,`Shift+Enter`,-1),_(` `+p(e.$t(`common.newLine`))+` `,1),n[6]||=S(`span`,{class:`q-mx-xs`},`·`,-1),n[7]||=_(),n[8]||=S(`kbd`,null,`↑↓`,-1),_(` `+p(e.$t(`common.history`)),1)]),g(ge),g(X,{class:`q-mr-md`}),ee.value?(t(),m(A,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`orange-4`,icon:`pause`,label:e.$t(`workspacePage.interrupt`),loading:T.value,disable:T.value,onClick:E},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.interruptTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])):h(``,!0)])],34))}}),[[`__scopeId`,`data-v-36ab673f`]]),Ue={class:`wp-header row items-center q-px-md q-py-sm no-wrap`},We={class:`text-body1 text-weight-medium text-grey-3 ellipsis`,style:{"max-width":`480px`}},Ge={class:`row items-center no-wrap text-caption text-grey-5`},Ke={class:`row items-center no-wrap text-caption text-grey-5`},qe={class:`row items-center no-wrap text-caption text-grey-5`},Je={key:1,class:`text-body2 text-grey-8`},Ye={class:`col column items-center justify-center`},Xe={class:`text-grey-6 text-caption q-mt-sm`},Ze={class:`text-subtitle1`},Qe=R(C({__name:`WorkspacePage`,setup(e){let r=u(()=>Promise.all([F(()=>import(`./ActivityFeed-Bsm5QUA9.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25])),new Promise(e=>setTimeout(e,500))]).then(([e])=>e)),o=ve(),C=le(),{t:w}=ae(),{timeAgo:T}=be();a(!1);let E=a(!1),ne=new Set,D=a(new Set),O=v(()=>{let e=C.selectedWorkspace?.status;return e===`executing`||e===`extracting`||e===`brainstorming`});n(O,e=>{e||(D.value=new Set)}),n(()=>C.selectedWorkspaceId,()=>{D.value=new Set});function M(e){if(!O.value)return;let t=new Set(D.value);t.add(e),D.value=t}function oe(e){ne.add(e),e.finally(()=>{ne.delete(e)})}a(!1);async function ue(){if(C.selectedWorkspaceId){E.value=!0;try{await C.stopWorkspace(C.selectedWorkspaceId)}catch(e){let t=e instanceof Error?e.message:w(`workspacePage.stopFailed`);o.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{E.value=!1}}}let R=v(()=>[...Se.map(e=>({label:w(e.i18nLabelKey),value:e.value}))]),z=v(()=>[{label:U(w(`reasoning.auto`)),value:`auto`},{label:U(w(`reasoning.low`)),value:`low`},{label:U(w(`reasoning.medium`)),value:`medium`},{label:U(w(`reasoning.high`)),value:`high`},{label:U(w(`reasoning.xhigh`)),value:`xhigh`},{label:U(w(`reasoning.max`)),value:`max`}]),B=v(()=>[{label:w(`permissionMode.autoAccept`),value:`auto-accept`},{label:w(`permissionMode.plan`),value:`plan`}]),V=v({get:()=>C.selectedWorkspace?.model??`auto`,set:e=>{C.selectedWorkspaceId&&(M(`model`),oe(C.updateModel(C.selectedWorkspaceId,e)))}}),H=v({get:()=>C.selectedWorkspace?.reasoningEffort??`auto`,set:e=>{C.selectedWorkspaceId&&(M(`reasoningEffort`),oe(C.updateReasoningEffort(C.selectedWorkspaceId,e)))}});function U(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}function W(e){return z.value.find(t=>t.value===e)?.label??e}let G=v({get:()=>C.selectedWorkspace?.permissionMode??`auto-accept`,set:e=>{C.selectedWorkspaceId&&(M(`permissionMode`),oe(C.updatePermissionMode(C.selectedWorkspaceId,e)))}}),K=v(()=>{let e=C.selectedWorkspaceId;if(!e)return{inputTokens:0,outputTokens:0,costUsd:0,totalTokens:0};let t=C.usageStats[e]??{inputTokens:0,outputTokens:0,costUsd:0};return{inputTokens:t.inputTokens,outputTokens:t.outputTokens,costUsd:t.costUsd,totalTokens:t.inputTokens+t.outputTokens}});function q(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}let J=ce(),Y=I(),X=v(()=>C.selectedWorkspaceId),Z=v(()=>C.selectedWorkspace),Ee=v(()=>C.sessions),De=v({get:()=>C.selectedSessionId,set:e=>{if(e===`__new__`){Pe();return}if(!e)return;C.selectSession(e);let t={...J.query};t.session=e,Y.replace({query:t})}}),Oe=v(()=>[...C.sessions.map((e,t)=>({label:e.name??w(`workspacePage.session`,{n:C.sessions.length-t}),value:e.id,caption:T(e.startedAt),isSession:!0})),{label:w(`workspacePage.newSession`),value:`__new__`,caption:``,isSession:!1}]),ke=a(!1),Ae=a(null),Q=a(``),je=a(!1);function Me(e,t){let n=C.sessions.find(t=>t.id===e);n&&(Ae.value={id:e},Q.value=n.name??t,ke.value=!0)}async function Ne(){if(!(!Ae.value||!C.selectedWorkspaceId))try{await C.renameSession(C.selectedWorkspaceId,Ae.value.id,Q.value.trim())}catch(e){console.error(`[WorkspacePage] renameSession failed:`,e),o.notify({type:`negative`,message:w(`workspacePage.renameFailed`),position:`top`})}finally{ke.value=!1}}async function Pe(){if(C.selectedWorkspaceId){je.value=!0;try{await C.createSession(C.selectedWorkspaceId)}catch(e){console.error(`[WorkspacePage] createSession failed:`,e);let t=e instanceof Error?e.message:null;o.notify({type:`negative`,message:t??w(`workspacePage.createSessionFailed`),position:`top`,timeout:6e3})}finally{je.value=!1}}}return i(()=>{let e=J.params.id;e&&C.selectWorkspace(e);let t=J.query.session;t&&C.selectSession(t)}),n(()=>J.params.id,e=>{e&&e!==C.selectedWorkspaceId&&C.selectWorkspace(e)}),(e,n)=>(t(),m(Ce,{class:`column no-wrap`,style:{height:`100vh`}},{default:c(()=>[S(`div`,Ue,[Z.value?(t(),y(b,{key:0},[S(`span`,We,[_(p(Z.value.name)+` `,1),g(L,null,{default:c(()=>[_(p(Z.value.name),1)]),_:1})]),g(he,{label:Z.value.status,color:[`error`,`quota`].includes(Z.value.status)?`red-9`:[`extracting`,`brainstorming`,`executing`].includes(Z.value.status)?`green-9`:`grey-8`,class:`q-ml-sm`,style:{"font-size":`10px`}},null,8,[`label`,`color`]),K.value.totalTokens>0?(t(),m(_e,{key:0,dense:``,color:`grey-9`,"text-color":`grey-3`,class:`q-ml-sm`,style:{"font-size":`10px`}},{default:c(()=>[g(k,{name:`toll`,size:`12px`,class:`q-mr-xs`}),S(`span`,null,p(e.$t(`stats.tokens`))+`: `+p(q(K.value.totalTokens)),1),g(L,null,{default:c(()=>[_(p(e.$t(`stats.inputTokens`))+`: `+p(q(K.value.inputTokens)),1),n[6]||=S(`br`,null,null,-1),_(` `+p(e.$t(`stats.outputTokens`))+`: `+p(q(K.value.outputTokens)),1)]),_:1})]),_:1})):h(``,!0),K.value.costUsd>0?(t(),m(_e,{key:1,dense:``,color:`grey-9`,"text-color":`grey-3`,class:`q-ml-xs`,style:{"font-size":`10px`}},{default:c(()=>[g(k,{name:`attach_money`,size:`12px`,class:`q-mr-xs`}),S(`span`,null,p(e.$t(`stats.cost`))+`: $`+p(K.value.costUsd.toFixed(4)),1)]),_:1})):h(``,!0),Ee.value.length>0?(t(),m(xe,{key:2,modelValue:De.value,"onUpdate:modelValue":n[0]||=e=>De.value=e,options:Oe.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,loading:je.value,disable:je.value,class:`q-ml-sm`,style:{"min-width":`160px`,"max-width":`220px`,"font-size":`11px`}},{option:c(e=>[e.opt.isSession?h(``,!0):(t(),m(re,{key:0,spaced:``})),g(fe,s(e.itemProps,{clickable:``,dense:``,class:`row items-center no-wrap`}),{default:c(()=>[g(pe,null,{default:c(()=>[g(me,{class:d(e.opt.isSession?``:`text-grey-5`)},{default:c(()=>[_(p(e.opt.label),1)]),_:2},1032,[`class`]),e.opt.caption?(t(),m(me,{key:0,caption:``},{default:c(()=>[_(p(e.opt.caption),1)]),_:2},1024)):h(``,!0)]),_:2},1024),e.opt.isSession?(t(),m(pe,{key:0,side:``},{default:c(()=>[g(A,{icon:`more_vert`,flat:``,dense:``,round:``,size:`xs`,color:`grey-6`,onClick:te(t=>Me(e.opt.value,e.opt.label),[`stop`])},null,8,[`onClick`])]),_:2},1024)):h(``,!0)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])):h(``,!0),g(ge),g(xe,{modelValue:G.value,"onUpdate:modelValue":n[1]||=e=>G.value=e,options:B.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-xs`,style:{"min-width":`80px`,"max-width":`140px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,Ge,[g(k,{name:G.value===`plan`?`visibility`:`flash_on`,size:`12px`,color:`amber-6`,class:`q-mr-xs`},null,8,[`name`]),_(` `+p(B.value.find(e=>e.value===G.value)?.label??G.value)+` `,1),D.value.has(`permissionMode`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),g(xe,{modelValue:V.value,"onUpdate:modelValue":n[2]||=e=>V.value=e,options:R.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm model-select`,style:{"min-width":`100px`,"max-width":`160px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,Ke,[g(k,{name:`auto_awesome`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),_(` `+p(R.value.find(e=>e.value===V.value)?.label??V.value)+` `,1),D.value.has(`model`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),g(xe,{modelValue:H.value,"onUpdate:modelValue":n[3]||=e=>H.value=e,options:z.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm`,style:{"min-width":`90px`,"max-width":`140px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,qe,[g(k,{name:`psychology`,size:`12px`,color:`amber-6`,class:`q-mr-xs`}),_(` `+p(W(H.value))+` `,1),D.value.has(`reasoningEffort`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),[`extracting`,`brainstorming`,`executing`].includes(Z.value.status)?(t(),m(A,{key:3,dense:``,"no-caps":``,size:`sm`,color:`negative`,icon:`stop`,label:e.$t(`common.stop`),class:`q-mr-xs`,loading:E.value,disable:E.value,onClick:ue},null,8,[`label`,`loading`,`disable`])):h(``,!0)],64)):(t(),y(`span`,Je,p(e.$t(`workspacePage.selectWorkspace`)),1))]),g(re,{dark:``}),X.value?(t(),m(Te,{key:0,"workspace-id":X.value},null,8,[`workspace-id`])):h(``,!0),X.value?(t(),m(f,{key:1},{fallback:c(()=>[S(`div`,Ye,[g(de,{size:`40px`,color:`indigo-4`}),S(`div`,Xe,p(e.$t(`common.loading`)),1)])]),default:c(()=>[g(x(r),{class:`col`,style:{"min-height":`0`},"workspace-id":X.value},null,8,[`workspace-id`])]),_:1})):h(``,!0),g(we),X.value?(t(),m($,{key:2,"workspace-id":X.value},null,8,[`workspace-id`])):h(``,!0),g(ie,{modelValue:ke.value,"onUpdate:modelValue":n[5]||=e=>ke.value=e,persistent:``},{default:c(()=>[g(N,{dark:``,style:{"min-width":`320px`}},{default:c(()=>[g(j,null,{default:c(()=>[S(`div`,Ze,p(x(w)(`workspacePage.renameSessionTitle`)),1)]),_:1}),g(j,null,{default:c(()=>[g(se,{modelValue:Q.value,"onUpdate:modelValue":n[4]||=e=>Q.value=e,label:x(w)(`workspacePage.sessionNameLabel`),dark:``,dense:``,autofocus:``,onKeyup:ee(Ne,[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),g(P,{align:`right`},{default:c(()=>[l(g(A,{flat:``,label:x(w)(`common.cancel`)},null,8,[`label`]),[[ye]]),g(A,{flat:``,color:`primary`,label:x(w)(`workspacePage.renameSession`),disable:!Q.value.trim(),onClick:Ne},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-cf4438b2`]]);export{Qe as default};
4
+ `)))&&$.value===-1)return;e.preventDefault(),$.value===-1&&(Ue.value=w.value),$.value<Y.value.length-1&&($.value++,w.value=Y.value[$.value]);return}if(e.key===`ArrowDown`&&$.value>=0){e.preventDefault(),$.value--,w.value=$.value>=0?Y.value[$.value]:Ue.value;return}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),qe())}return(e,n)=>(t(),y(`div`,{class:d([`chat-input-container column q-pa-sm`,{"chat-input-dragging":fe.value}]),onDragover:xe,onDragleave:Se,onDrop:be},[I.value.length>0?(t(),y(`div`,De,[(t(!0),y(b,null,r(I.value,n=>(t(),y(`div`,{key:n.tempId,class:d([`image-tag row items-center q-px-sm q-py-xs rounded-borders`,{"image-tag--uploading":n.status===`uploading`,"image-tag--ready":n.status===`ready`,"image-tag--error":n.status===`error`}])},[n.status===`uploading`?(t(),m(de,{key:0,size:`14px`,color:`grey-6`,class:`q-mr-xs`})):n.status===`ready`?(t(),m(k,{key:1,name:`image`,size:`14px`,color:`green-6`,class:`q-mr-xs`})):(t(),m(k,{key:2,name:`error`,size:`14px`,color:`red-6`,class:`q-mr-xs`})),S(`span`,Oe,p(n.status===`uploading`?e.$t(`chatInput.uploading`):n.path||n.originalName),1),g(A,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,class:`q-ml-xs image-tag-close`,onClick:e=>B(n.tempId)},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`tooltip.removeImage`)),1)]),_:1})]),_:1},8,[`onClick`])],2))),128))])):h(``,!0),j.value&&F.value.length>0?(t(),y(`div`,ke,[P.value.skills.length>0?(t(),y(b,{key:0},[S(`div`,Ae,p(e.$t(`chatInput.dropdownSkills`)),1),(t(!0),y(b,null,r(P.value.skills,e=>(t(),y(`div`,{key:`skill-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`bolt`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),S(`span`,je,p(e.name),1)],42,Q))),128))],64)):h(``,!0),P.value.kobo.length>0?(t(),y(b,{key:1},[S(`div`,Me,p(e.$t(`chatInput.dropdownKobo`)),1),(t(!0),y(b,null,r(P.value.kobo,e=>(t(),y(`div`,{key:`kobo-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`terminal`,size:`12px`,color:`teal-4`,class:`q-mr-xs`}),S(`span`,Pe,`/`+p(e.name),1),Ke(e.name)?(t(),y(`span`,Fe,`— `+p(Ke(e.name)),1)):h(``,!0)],42,Ne))),128))],64)):h(``,!0),P.value.templates.length>0?(t(),y(b,{key:2},[S(`div`,Ie,p(e.$t(`chatInput.dropdownTemplates`)),1),(t(!0),y(b,null,r(P.value.templates,e=>(t(),y(`div`,{key:`tpl-${e.name}`,class:d([`skill-item row items-center q-px-sm q-py-xs cursor-pointer`,{"skill-item--active":F.value.indexOf(e)===N.value}]),onMousedown:te(t=>q(e),[`prevent`])},[g(k,{name:`description`,size:`12px`,color:`amber-4`,class:`q-mr-xs`}),S(`span`,Re,`/`+p(e.name),1),e.description?(t(),y(`span`,ze,`— `+p(e.description),1)):h(``,!0)],42,Le))),128))],64)):h(``,!0)])):h(``,!0),D.value?(t(),y(`div`,Be,[g(k,{name:`schedule`,size:`14px`,color:`amber-6`,class:`q-mr-sm`}),S(`span`,null,p(e.$t(`chatInput.queueBanner`)),1)])):h(``,!0),S(`div`,Ve,[g(se,{ref_key:`chatInputRef`,ref:O,modelValue:w.value,"onUpdate:modelValue":n[0]||=e=>w.value=e,dense:``,dark:``,borderless:``,autogrow:``,readonly:D.value,placeholder:e.$t(`chatInput.placeholder`),class:`chat-input col rounded-borders`,disable:J.value,onKeydown:Je,onPaste:ye},null,8,[`modelValue`,`readonly`,`placeholder`,`disable`]),S(`input`,{ref_key:`fileInputRef`,ref:ce,type:`file`,accept:`image/png,image/jpeg,image/gif,image/webp`,multiple:``,style:{display:`none`},onChange:Ce},null,544),g(A,{flat:``,dense:``,icon:`attach_file`,color:`grey-6`,disable:J.value,onClick:n[1]||=e=>ce.value?.click()},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`chatInput.attachImage`)),1)]),_:1})]),_:1},8,[`disable`]),D.value?(t(),m(A,{key:0,flat:``,dense:``,icon:`cancel`,color:`orange`,onClick:G},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`chatInput.cancelQueue`)),1)]),_:1})]),_:1})):(t(),m(A,{key:1,flat:``,dense:``,icon:`send`,color:`primary`,disable:J.value||!w.value.trim()&&I.value.length===0||V.value,onClick:qe},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`tooltip.sendMessage`)),1)]),_:1})]),_:1},8,[`disable`]))]),S(`div`,He,[S(`div`,null,[n[2]||=S(`kbd`,null,`Enter`,-1),_(` `+p(e.$t(`common.send`))+` `,1),n[3]||=S(`span`,{class:`q-mx-xs`},`·`,-1),n[4]||=_(),n[5]||=S(`kbd`,null,`Shift+Enter`,-1),_(` `+p(e.$t(`common.newLine`))+` `,1),n[6]||=S(`span`,{class:`q-mx-xs`},`·`,-1),n[7]||=_(),n[8]||=S(`kbd`,null,`↑↓`,-1),_(` `+p(e.$t(`common.history`)),1)]),g(ge),g(X,{class:`q-mr-md`}),ee.value?(t(),m(A,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`orange-4`,icon:`pause`,label:e.$t(`workspacePage.interrupt`),loading:T.value,disable:T.value,onClick:E},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.interruptTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])):h(``,!0)])],34))}}),[[`__scopeId`,`data-v-36ab673f`]]),Ue={class:`wp-header row items-center q-px-md q-py-sm no-wrap`},We={class:`text-body1 text-weight-medium text-grey-3 ellipsis`,style:{"max-width":`480px`}},Ge={class:`row items-center no-wrap text-caption text-grey-5`},Ke={class:`row items-center no-wrap text-caption text-grey-5`},qe={class:`row items-center no-wrap text-caption text-grey-5`},Je={key:1,class:`text-body2 text-grey-8`},Ye={class:`col column items-center justify-center`},Xe={class:`text-grey-6 text-caption q-mt-sm`},Ze={class:`text-subtitle1`},Qe=R(C({__name:`WorkspacePage`,setup(e){let r=u(()=>Promise.all([F(()=>import(`./ActivityFeed-DETQbE-a.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25])),new Promise(e=>setTimeout(e,500))]).then(([e])=>e)),o=ve(),C=le(),{t:w}=ae(),{timeAgo:T}=be();a(!1);let E=a(!1),ne=new Set,D=a(new Set),O=v(()=>{let e=C.selectedWorkspace?.status;return e===`executing`||e===`extracting`||e===`brainstorming`});n(O,e=>{e||(D.value=new Set)}),n(()=>C.selectedWorkspaceId,()=>{D.value=new Set});function M(e){if(!O.value)return;let t=new Set(D.value);t.add(e),D.value=t}function oe(e){ne.add(e),e.finally(()=>{ne.delete(e)})}a(!1);async function ue(){if(C.selectedWorkspaceId){E.value=!0;try{await C.stopWorkspace(C.selectedWorkspaceId)}catch(e){let t=e instanceof Error?e.message:w(`workspacePage.stopFailed`);o.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{E.value=!1}}}let R=v(()=>[...Se.map(e=>({label:w(e.i18nLabelKey),value:e.value}))]),z=v(()=>[{label:U(w(`reasoning.auto`)),value:`auto`},{label:U(w(`reasoning.low`)),value:`low`},{label:U(w(`reasoning.medium`)),value:`medium`},{label:U(w(`reasoning.high`)),value:`high`},{label:U(w(`reasoning.xhigh`)),value:`xhigh`},{label:U(w(`reasoning.max`)),value:`max`}]),B=v(()=>[{label:w(`permissionMode.autoAccept`),value:`auto-accept`},{label:w(`permissionMode.plan`),value:`plan`}]),V=v({get:()=>C.selectedWorkspace?.model??`auto`,set:e=>{C.selectedWorkspaceId&&(M(`model`),oe(C.updateModel(C.selectedWorkspaceId,e)))}}),H=v({get:()=>C.selectedWorkspace?.reasoningEffort??`auto`,set:e=>{C.selectedWorkspaceId&&(M(`reasoningEffort`),oe(C.updateReasoningEffort(C.selectedWorkspaceId,e)))}});function U(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}function W(e){return z.value.find(t=>t.value===e)?.label??e}let G=v({get:()=>C.selectedWorkspace?.permissionMode??`auto-accept`,set:e=>{C.selectedWorkspaceId&&(M(`permissionMode`),oe(C.updatePermissionMode(C.selectedWorkspaceId,e)))}}),K=v(()=>{let e=C.selectedWorkspaceId;if(!e)return{inputTokens:0,outputTokens:0,costUsd:0,totalTokens:0};let t=C.usageStats[e]??{inputTokens:0,outputTokens:0,costUsd:0};return{inputTokens:t.inputTokens,outputTokens:t.outputTokens,costUsd:t.costUsd,totalTokens:t.inputTokens+t.outputTokens}});function q(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}let J=ce(),Y=I(),X=v(()=>C.selectedWorkspaceId),Z=v(()=>C.selectedWorkspace),Ee=v(()=>C.sessions),De=v({get:()=>C.selectedSessionId,set:e=>{if(e===`__new__`){Pe();return}if(!e)return;C.selectSession(e);let t={...J.query};t.session=e,Y.replace({query:t})}}),Oe=v(()=>[...C.sessions.map((e,t)=>({label:e.name??w(`workspacePage.session`,{n:C.sessions.length-t}),value:e.id,caption:T(e.startedAt),isSession:!0})),{label:w(`workspacePage.newSession`),value:`__new__`,caption:``,isSession:!1}]),ke=a(!1),Ae=a(null),Q=a(``),je=a(!1);function Me(e,t){let n=C.sessions.find(t=>t.id===e);n&&(Ae.value={id:e},Q.value=n.name??t,ke.value=!0)}async function Ne(){if(!(!Ae.value||!C.selectedWorkspaceId))try{await C.renameSession(C.selectedWorkspaceId,Ae.value.id,Q.value.trim())}catch(e){console.error(`[WorkspacePage] renameSession failed:`,e),o.notify({type:`negative`,message:w(`workspacePage.renameFailed`),position:`top`})}finally{ke.value=!1}}async function Pe(){if(C.selectedWorkspaceId){je.value=!0;try{await C.createSession(C.selectedWorkspaceId)}catch(e){console.error(`[WorkspacePage] createSession failed:`,e);let t=e instanceof Error?e.message:null;o.notify({type:`negative`,message:t??w(`workspacePage.createSessionFailed`),position:`top`,timeout:6e3})}finally{je.value=!1}}}return i(()=>{let e=J.params.id;e&&C.selectWorkspace(e);let t=J.query.session;t&&C.selectSession(t)}),n(()=>J.params.id,e=>{e&&e!==C.selectedWorkspaceId&&C.selectWorkspace(e)}),(e,n)=>(t(),m(Ce,{class:`column no-wrap`,style:{height:`100vh`}},{default:c(()=>[S(`div`,Ue,[Z.value?(t(),y(b,{key:0},[S(`span`,We,[_(p(Z.value.name)+` `,1),g(L,null,{default:c(()=>[_(p(Z.value.name),1)]),_:1})]),g(he,{label:Z.value.status,color:[`error`,`quota`].includes(Z.value.status)?`red-9`:[`extracting`,`brainstorming`,`executing`].includes(Z.value.status)?`green-9`:`grey-8`,class:`q-ml-sm`,style:{"font-size":`10px`}},null,8,[`label`,`color`]),K.value.totalTokens>0?(t(),m(_e,{key:0,dense:``,color:`grey-9`,"text-color":`grey-3`,class:`q-ml-sm`,style:{"font-size":`10px`}},{default:c(()=>[g(k,{name:`toll`,size:`12px`,class:`q-mr-xs`}),S(`span`,null,p(e.$t(`stats.tokens`))+`: `+p(q(K.value.totalTokens)),1),g(L,null,{default:c(()=>[_(p(e.$t(`stats.inputTokens`))+`: `+p(q(K.value.inputTokens)),1),n[6]||=S(`br`,null,null,-1),_(` `+p(e.$t(`stats.outputTokens`))+`: `+p(q(K.value.outputTokens)),1)]),_:1})]),_:1})):h(``,!0),K.value.costUsd>0?(t(),m(_e,{key:1,dense:``,color:`grey-9`,"text-color":`grey-3`,class:`q-ml-xs`,style:{"font-size":`10px`}},{default:c(()=>[g(k,{name:`attach_money`,size:`12px`,class:`q-mr-xs`}),S(`span`,null,p(e.$t(`stats.cost`))+`: $`+p(K.value.costUsd.toFixed(4)),1)]),_:1})):h(``,!0),Ee.value.length>0?(t(),m(xe,{key:2,modelValue:De.value,"onUpdate:modelValue":n[0]||=e=>De.value=e,options:Oe.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,loading:je.value,disable:je.value,class:`q-ml-sm`,style:{"min-width":`160px`,"max-width":`220px`,"font-size":`11px`}},{option:c(e=>[e.opt.isSession?h(``,!0):(t(),m(re,{key:0,spaced:``})),g(fe,s(e.itemProps,{clickable:``,dense:``,class:`row items-center no-wrap`}),{default:c(()=>[g(pe,null,{default:c(()=>[g(me,{class:d(e.opt.isSession?``:`text-grey-5`)},{default:c(()=>[_(p(e.opt.label),1)]),_:2},1032,[`class`]),e.opt.caption?(t(),m(me,{key:0,caption:``},{default:c(()=>[_(p(e.opt.caption),1)]),_:2},1024)):h(``,!0)]),_:2},1024),e.opt.isSession?(t(),m(pe,{key:0,side:``},{default:c(()=>[g(A,{icon:`more_vert`,flat:``,dense:``,round:``,size:`xs`,color:`grey-6`,onClick:te(t=>Me(e.opt.value,e.opt.label),[`stop`])},null,8,[`onClick`])]),_:2},1024)):h(``,!0)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])):h(``,!0),g(ge),g(xe,{modelValue:G.value,"onUpdate:modelValue":n[1]||=e=>G.value=e,options:B.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-xs`,style:{"min-width":`80px`,"max-width":`140px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,Ge,[g(k,{name:G.value===`plan`?`visibility`:`flash_on`,size:`12px`,color:`amber-6`,class:`q-mr-xs`},null,8,[`name`]),_(` `+p(B.value.find(e=>e.value===G.value)?.label??G.value)+` `,1),D.value.has(`permissionMode`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),g(xe,{modelValue:V.value,"onUpdate:modelValue":n[2]||=e=>V.value=e,options:R.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm model-select`,style:{"min-width":`100px`,"max-width":`160px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,Ke,[g(k,{name:`auto_awesome`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),_(` `+p(R.value.find(e=>e.value===V.value)?.label??V.value)+` `,1),D.value.has(`model`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),g(xe,{modelValue:H.value,"onUpdate:modelValue":n[3]||=e=>H.value=e,options:z.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm`,style:{"min-width":`90px`,"max-width":`140px`,"font-size":`11px`}},{selected:c(()=>[S(`span`,qe,[g(k,{name:`psychology`,size:`12px`,color:`amber-6`,class:`q-mr-xs`}),_(` `+p(W(H.value))+` `,1),D.value.has(`reasoningEffort`)?(t(),m(k,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:c(()=>[g(L,null,{default:c(()=>[_(p(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):h(``,!0)])]),_:1},8,[`modelValue`,`options`]),[`extracting`,`brainstorming`,`executing`].includes(Z.value.status)?(t(),m(A,{key:3,dense:``,"no-caps":``,size:`sm`,color:`negative`,icon:`stop`,label:e.$t(`common.stop`),class:`q-mr-xs`,loading:E.value,disable:E.value,onClick:ue},null,8,[`label`,`loading`,`disable`])):h(``,!0)],64)):(t(),y(`span`,Je,p(e.$t(`workspacePage.selectWorkspace`)),1))]),g(re,{dark:``}),X.value?(t(),m(Te,{key:0,"workspace-id":X.value},null,8,[`workspace-id`])):h(``,!0),X.value?(t(),m(f,{key:1},{fallback:c(()=>[S(`div`,Ye,[g(de,{size:`40px`,color:`indigo-4`}),S(`div`,Xe,p(e.$t(`common.loading`)),1)])]),default:c(()=>[g(x(r),{class:`col`,style:{"min-height":`0`},"workspace-id":X.value},null,8,[`workspace-id`])]),_:1})):h(``,!0),g(we),X.value?(t(),m($,{key:2,"workspace-id":X.value},null,8,[`workspace-id`])):h(``,!0),g(ie,{modelValue:ke.value,"onUpdate:modelValue":n[5]||=e=>ke.value=e,persistent:``},{default:c(()=>[g(N,{dark:``,style:{"min-width":`320px`}},{default:c(()=>[g(j,null,{default:c(()=>[S(`div`,Ze,p(x(w)(`workspacePage.renameSessionTitle`)),1)]),_:1}),g(j,null,{default:c(()=>[g(se,{modelValue:Q.value,"onUpdate:modelValue":n[4]||=e=>Q.value=e,label:x(w)(`workspacePage.sessionNameLabel`),dark:``,dense:``,autofocus:``,onKeyup:ee(Ne,[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),g(P,{align:`right`},{default:c(()=>[l(g(A,{flat:``,label:x(w)(`common.cancel`)},null,8,[`label`]),[[ye]]),g(A,{flat:``,color:`primary`,label:x(w)(`workspacePage.renameSession`),disable:!Q.value.trim(),onClick:Ne},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-cf4438b2`]]);export{Qe as default};
@@ -1 +1 @@
1
- import{A as e,E as t,H as n,Q as r,S as i,W as a,l as o,y as s}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{D as c,F as l,O as u,g as d,j as f,l as p,n as m,r as h,s as g,t as _}from"./QIcon-B0-pH3Qs.js";import{r as v}from"./index-Y9eYNsHp.js";import{t as y}from"./QSlideTransition-s6ZkYsLs.js";var b=u({name:`QBtnGroup`,props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let n=o(()=>{let t=[`unelevated`,`outline`,`flat`,`rounded`,`square`,`push`,`stretch`,`glossy`].filter(t=>e[t]===!0).map(e=>`q-btn-group--${e}`).join(` `);return`q-btn-group row no-wrap${t.length===0?``:` `+t}`+(e.spread===!0?` q-btn-group--spread`:` inline`)});return()=>i(`div`,{class:n.value},g(t.default))}}),x=[`none`,`strict`,`leaf`,`leaf-filtered`],S=u({name:`QTree`,props:{...h,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:`label`},childrenKey:{type:String,default:`children`},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:`none`,validator:e=>x.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:[`update:expanded`,`update:ticked`,`update:selected`,`lazyLoad`,`afterShow`,`afterHide`],setup(u,{slots:h,emit:g}){let{proxy:b}=s(),{$q:x}=b,S=m(u,x),C=r({}),w=r(u.ticked||[]),T=r(u.expanded||[]),E={};e(()=>{E={}});let D=o(()=>`q-tree q-tree--${u.dense===!0?`dense`:`standard`}`+(u.noConnectors===!0?` q-tree--no-connectors`:``)+(S.value===!0?` q-tree--dark`:``)+(u.color===void 0?``:` text-${u.color}`)),O=o(()=>u.selected!==void 0),k=o(()=>u.icon||x.iconSet.tree.icon),A=o(()=>u.controlColor||u.color),j=o(()=>u.textColor===void 0?``:` text-${u.textColor}`),M=o(()=>{let e=u.selectedColor||u.color;return e?` text-${e}`:``}),N=o(()=>u.filterMethod===void 0?(e,t)=>{let n=t.toLowerCase();return e[u.labelKey]&&e[u.labelKey].toLowerCase().indexOf(n)!==-1}:u.filterMethod),P=o(()=>{let e={},t=(n,r)=>{let i=n.tickStrategy||(r?r.tickStrategy:u.tickStrategy),a=n[u.nodeKey],o=n[u.childrenKey]&&Array.isArray(n[u.childrenKey])&&n[u.childrenKey].length!==0,s=n.disabled!==!0&&O.value===!0&&n.selectable!==!1,c=n.disabled!==!0&&n.expandable!==!1,l=i!==`none`,d=i===`strict`,f=i===`leaf-filtered`,p=i===`leaf`||i===`leaf-filtered`,m=n.disabled!==!0&&n.tickable!==!1;p===!0&&m===!0&&r&&r.tickable!==!0&&(m=!1);let h=n.lazy;h===!0&&C.value[a]!==void 0&&Array.isArray(n[u.childrenKey])===!0&&(h=C.value[a]);let g={key:a,parent:r,isParent:o,lazy:h,disabled:n.disabled,link:n.disabled!==!0&&(s===!0||c===!0&&(o===!0||h===!0)),children:[],matchesFilter:u.filter?N.value(n,u.filter):!0,selected:a===u.selected&&s===!0,selectable:s,expanded:o===!0?T.value.includes(a):!1,expandable:c,noTick:n.noTick===!0||d!==!0&&h&&h!==`loaded`,tickable:m,tickStrategy:i,hasTicking:l,strictTicking:d,leafFilteredTicking:f,leafTicking:p,ticked:d===!0?w.value.includes(a):o===!0?!1:w.value.includes(a)};if(e[a]=g,o===!0&&(g.children=n[u.childrenKey].map(e=>t(e,g)),u.filter&&(g.matchesFilter===!0?g.noTick!==!0&&g.disabled!==!0&&g.tickable===!0&&f===!0&&g.children.every(e=>e.matchesFilter!==!0||e.noTick===!0||e.tickable!==!0)===!0&&(g.tickable=!1):g.matchesFilter=g.children.some(e=>e.matchesFilter)),g.matchesFilter===!0&&(g.noTick!==!0&&d!==!0&&g.children.every(e=>e.noTick)===!0&&(g.noTick=!0),p))){if(g.ticked=!1,g.indeterminate=g.children.some(e=>e.indeterminate===!0),g.tickable=g.tickable===!0&&g.children.some(e=>e.tickable),g.indeterminate!==!0){let e=g.children.reduce((e,t)=>t.ticked===!0?e+1:e,0);e===g.children.length?g.ticked=!0:e>0&&(g.indeterminate=!0)}g.indeterminate===!0&&(g.indeterminateNextState=g.children.every(e=>e.tickable!==!0||e.ticked!==!0))}return g};return u.nodes.forEach(e=>t(e,null)),e});n(()=>u.ticked,e=>{w.value=e}),n(()=>u.expanded,e=>{T.value=e});function F(e){let t=[].reduce,n=(r,i)=>{if(r||!i)return r;if(Array.isArray(i)===!0)return t.call(Object(i),n,r);if(i[u.nodeKey]===e)return i;if(i[u.childrenKey])return n(null,i[u.childrenKey])};return n(null,u.nodes)}function I(){return w.value.map(e=>F(e))}function L(){return T.value.map(e=>F(e))}function R(e){return e&&P.value[e]?P.value[e].expanded:!1}function z(){u.expanded===void 0?T.value=[]:g(`update:expanded`,[])}function B(){let e=[],t=n=>{n[u.childrenKey]&&n[u.childrenKey].length!==0&&n.expandable!==!1&&n.disabled!==!0&&(e.push(n[u.nodeKey]),n[u.childrenKey].forEach(t))};u.nodes.forEach(t),u.expanded===void 0?T.value=e:g(`update:expanded`,e)}function V(e,n,r=F(e),i=P.value[e]){if(i.lazy&&i.lazy!==`loaded`){if(i.lazy===`loading`)return;C.value[e]=`loading`,Array.isArray(r[u.childrenKey])!==!0&&(r[u.childrenKey]=[]),g(`lazyLoad`,{node:r,key:e,done:n=>{C.value[e]=`loaded`,r[u.childrenKey]=Array.isArray(n)===!0?n:[],t(()=>{P.value[e]?.isParent===!0&&H(e,!0)})},fail:()=>{delete C.value[e],r[u.childrenKey].length===0&&delete r[u.childrenKey]}})}else i.isParent===!0&&i.expandable===!0&&H(e,n)}function H(e,t){let n=T.value,r=u.expanded!==void 0;if(r===!0&&(n=n.slice()),t){if(u.accordion&&P.value[e]){let t=[];P.value[e].parent?P.value[e].parent.children.forEach(n=>{n.key!==e&&n.expandable===!0&&t.push(n.key)}):u.nodes.forEach(n=>{let r=n[u.nodeKey];r!==e&&t.push(r)}),t.length!==0&&(n=n.filter(e=>t.includes(e)===!1))}n=n.concat([e]).filter((e,t,n)=>n.indexOf(e)===t)}else n=n.filter(t=>t!==e);r===!0?g(`update:expanded`,n):T.value=n}function U(e){return e&&P.value[e]?P.value[e].ticked:!1}function W(e,t){let n=w.value,r=u.ticked!==void 0;r===!0&&(n=n.slice()),n=t?n.concat(e).filter((e,t,n)=>n.indexOf(e)===t):n.filter(t=>e.includes(t)===!1),r===!0&&g(`update:ticked`,n)}function G(e,t,n){let r={tree:b,node:e,key:n,color:u.color,dark:S.value};return f(r,`expanded`,()=>t.expanded,e=>{e!==t.expanded&&V(n,e)}),f(r,`ticked`,()=>t.ticked,e=>{e!==t.ticked&&W([n],e)}),r}function K(e){return(u.filter?e.filter(e=>P.value[e[u.nodeKey]].matchesFilter):e).map(e=>X(e))}function q(e){if(e.icon!==void 0)return i(_,{class:`q-tree__icon q-mr-sm`,name:e.icon,color:e.iconColor});let t=e.img||e.avatar;if(t)return i(`img`,{class:`q-tree__${e.img?`img`:`avatar`} q-mr-sm`,src:t})}function J(){g(`afterShow`)}function Y(){g(`afterHide`)}function X(e){let t=e[u.nodeKey],n=P.value[t],r=e.header&&h[`header-${e.header}`]||h[`default-header`],o=n.isParent===!0?K(e[u.childrenKey]):[],s=o.length!==0||n.lazy&&n.lazy!==`loaded`,f=e.body&&h[`body-${e.body}`]||h[`default-body`],m=r!==void 0||f!==void 0?G(e,n,t):null;return f!==void 0&&(f=i(`div`,{class:`q-tree__node-body relative-position`},[i(`div`,{class:j.value},[f(m)])])),i(`div`,{key:t,class:`q-tree__node relative-position q-tree__node--${s===!0?`parent`:`child`}`},[i(`div`,{class:`q-tree__node-header relative-position row no-wrap items-center`+(n.link===!0?` q-tree__node--link q-hoverable q-focusable`:``)+(n.selected===!0?` q-tree__node--selected`:``)+(n.disabled===!0?` q-tree__node--disabled`:``),tabindex:n.link===!0?0:-1,ariaExpanded:o.length>0?n.expanded:null,role:`treeitem`,onClick:t=>{Q(e,n,t)},onKeypress(t){d(t)!==!0&&(t.keyCode===13?Q(e,n,t,!0):t.keyCode===32&&$(e,n,t,!0))}},[i(`div`,{class:`q-focus-helper`,tabindex:-1,ref:e=>{E[n.key]=e}}),n.lazy===`loading`?i(p,{class:`q-tree__spinner`,color:A.value}):s===!0?i(_,{class:`q-tree__arrow`+(n.expanded===!0?` q-tree__arrow--rotate`:``),name:k.value,onClick(t){$(e,n,t)}}):null,n.hasTicking===!0&&n.noTick!==!0?i(v,{class:`q-tree__tickbox`,modelValue:n.indeterminate===!0?null:n.ticked,color:A.value,dark:S.value,dense:!0,keepColor:!0,disable:n.tickable!==!0,onKeydown:c,"onUpdate:modelValue":e=>{ee(n,e)}}):null,i(`div`,{class:`q-tree__node-header-content col row no-wrap items-center`+(n.selected===!0?M.value:j.value)},[r?r(m):[q(e),i(`div`,e[u.labelKey])]])]),s===!0?u.noTransition===!0?n.expanded===!0?i(`div`,{class:`q-tree__node-collapsible`+j.value,key:`${t}__q`},[f,i(`div`,{class:`q-tree__children`+(n.disabled===!0?` q-tree__node--disabled`:``),role:`group`},o)]):null:i(y,{duration:u.duration,onShow:J,onHide:Y},()=>a(i(`div`,{class:`q-tree__node-collapsible`+j.value,key:`${t}__q`},[f,i(`div`,{class:`q-tree__children`+(n.disabled===!0?` q-tree__node--disabled`:``),role:`group`},o)]),[[l,n.expanded]])):f])}function Z(e){E[e]?.focus()}function Q(e,t,n,r){r!==!0&&t.selectable!==!1&&Z(t.key),O.value&&t.selectable?u.noSelectionUnset===!1?g(`update:selected`,t.key===u.selected?null:t.key):t.key!==u.selected&&g(`update:selected`,t.key===void 0?null:t.key):$(e,t,n,r),typeof e.handler==`function`&&e.handler(e)}function $(e,t,n,r){n!==void 0&&c(n),r!==!0&&t.selectable!==!1&&Z(t.key),V(t.key,!t.expanded,e,t)}function ee(e,t){if(e.indeterminate===!0&&(t=e.indeterminateNextState),e.strictTicking)W([e.key],t);else if(e.leafTicking){let n=[],r=e=>{e.isParent?(t!==!0&&e.noTick!==!0&&e.tickable===!0&&n.push(e.key),e.leafTicking===!0&&e.children.forEach(r)):e.noTick!==!0&&e.tickable===!0&&(e.leafFilteredTicking!==!0||e.matchesFilter===!0)&&n.push(e.key)};r(e),W(n,t)}}return u.defaultExpandAll===!0&&B(),Object.assign(b,{getNodeByKey:F,getTickedNodes:I,getExpandedNodes:L,isExpanded:R,collapseAll:z,expandAll:B,setExpanded:V,isTicked:U,setTicked:W}),()=>{let e=K(u.nodes);return i(`div`,{class:D.value,role:`tree`},e.length===0?u.filter?u.noResultsLabel||x.lang.tree.noResults:u.noNodesLabel||x.lang.tree.noNodes:e)}}});function C(e){let t=[];for(let n of e){let e=n.path.split(`/`).filter(e=>e.length>0);if(e.length===0)continue;let r=t,i=``;for(let t=0;t<e.length-1;t++){let n=e[t];i=i?`${i}/${n}`:n;let a=r.find(e=>e.isFolder&&e.label===n);a||(a={label:n,nodeKey:`dir:${i}`,isFolder:!0,children:[]},r.push(a)),r=a.children}r.push({label:e[e.length-1],nodeKey:`file:${n.path}`,file:n})}function n(e){e.sort((e,t)=>{let n=e.isFolder===!0;return n===(t.isFolder===!0)?e.label.localeCompare(t.label):n?-1:1});for(let t of e)t.children&&n(t.children)}return n(t),t}function w(e){let t=0;for(let n of e)n.file&&t++,n.children&&(t+=w(n.children));return t}export{b as i,w as n,S as r,C as t};
1
+ import{A as e,E as t,H as n,Q as r,S as i,W as a,l as o,y as s}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{D as c,F as l,O as u,g as d,j as f,l as p,n as m,r as h,s as g,t as _}from"./QIcon-B0-pH3Qs.js";import{r as v}from"./index-B0Jj-w-E.js";import{t as y}from"./QSlideTransition-s6ZkYsLs.js";var b=u({name:`QBtnGroup`,props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let n=o(()=>{let t=[`unelevated`,`outline`,`flat`,`rounded`,`square`,`push`,`stretch`,`glossy`].filter(t=>e[t]===!0).map(e=>`q-btn-group--${e}`).join(` `);return`q-btn-group row no-wrap${t.length===0?``:` `+t}`+(e.spread===!0?` q-btn-group--spread`:` inline`)});return()=>i(`div`,{class:n.value},g(t.default))}}),x=[`none`,`strict`,`leaf`,`leaf-filtered`],S=u({name:`QTree`,props:{...h,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:`label`},childrenKey:{type:String,default:`children`},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:`none`,validator:e=>x.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:[`update:expanded`,`update:ticked`,`update:selected`,`lazyLoad`,`afterShow`,`afterHide`],setup(u,{slots:h,emit:g}){let{proxy:b}=s(),{$q:x}=b,S=m(u,x),C=r({}),w=r(u.ticked||[]),T=r(u.expanded||[]),E={};e(()=>{E={}});let D=o(()=>`q-tree q-tree--${u.dense===!0?`dense`:`standard`}`+(u.noConnectors===!0?` q-tree--no-connectors`:``)+(S.value===!0?` q-tree--dark`:``)+(u.color===void 0?``:` text-${u.color}`)),O=o(()=>u.selected!==void 0),k=o(()=>u.icon||x.iconSet.tree.icon),A=o(()=>u.controlColor||u.color),j=o(()=>u.textColor===void 0?``:` text-${u.textColor}`),M=o(()=>{let e=u.selectedColor||u.color;return e?` text-${e}`:``}),N=o(()=>u.filterMethod===void 0?(e,t)=>{let n=t.toLowerCase();return e[u.labelKey]&&e[u.labelKey].toLowerCase().indexOf(n)!==-1}:u.filterMethod),P=o(()=>{let e={},t=(n,r)=>{let i=n.tickStrategy||(r?r.tickStrategy:u.tickStrategy),a=n[u.nodeKey],o=n[u.childrenKey]&&Array.isArray(n[u.childrenKey])&&n[u.childrenKey].length!==0,s=n.disabled!==!0&&O.value===!0&&n.selectable!==!1,c=n.disabled!==!0&&n.expandable!==!1,l=i!==`none`,d=i===`strict`,f=i===`leaf-filtered`,p=i===`leaf`||i===`leaf-filtered`,m=n.disabled!==!0&&n.tickable!==!1;p===!0&&m===!0&&r&&r.tickable!==!0&&(m=!1);let h=n.lazy;h===!0&&C.value[a]!==void 0&&Array.isArray(n[u.childrenKey])===!0&&(h=C.value[a]);let g={key:a,parent:r,isParent:o,lazy:h,disabled:n.disabled,link:n.disabled!==!0&&(s===!0||c===!0&&(o===!0||h===!0)),children:[],matchesFilter:u.filter?N.value(n,u.filter):!0,selected:a===u.selected&&s===!0,selectable:s,expanded:o===!0?T.value.includes(a):!1,expandable:c,noTick:n.noTick===!0||d!==!0&&h&&h!==`loaded`,tickable:m,tickStrategy:i,hasTicking:l,strictTicking:d,leafFilteredTicking:f,leafTicking:p,ticked:d===!0?w.value.includes(a):o===!0?!1:w.value.includes(a)};if(e[a]=g,o===!0&&(g.children=n[u.childrenKey].map(e=>t(e,g)),u.filter&&(g.matchesFilter===!0?g.noTick!==!0&&g.disabled!==!0&&g.tickable===!0&&f===!0&&g.children.every(e=>e.matchesFilter!==!0||e.noTick===!0||e.tickable!==!0)===!0&&(g.tickable=!1):g.matchesFilter=g.children.some(e=>e.matchesFilter)),g.matchesFilter===!0&&(g.noTick!==!0&&d!==!0&&g.children.every(e=>e.noTick)===!0&&(g.noTick=!0),p))){if(g.ticked=!1,g.indeterminate=g.children.some(e=>e.indeterminate===!0),g.tickable=g.tickable===!0&&g.children.some(e=>e.tickable),g.indeterminate!==!0){let e=g.children.reduce((e,t)=>t.ticked===!0?e+1:e,0);e===g.children.length?g.ticked=!0:e>0&&(g.indeterminate=!0)}g.indeterminate===!0&&(g.indeterminateNextState=g.children.every(e=>e.tickable!==!0||e.ticked!==!0))}return g};return u.nodes.forEach(e=>t(e,null)),e});n(()=>u.ticked,e=>{w.value=e}),n(()=>u.expanded,e=>{T.value=e});function F(e){let t=[].reduce,n=(r,i)=>{if(r||!i)return r;if(Array.isArray(i)===!0)return t.call(Object(i),n,r);if(i[u.nodeKey]===e)return i;if(i[u.childrenKey])return n(null,i[u.childrenKey])};return n(null,u.nodes)}function I(){return w.value.map(e=>F(e))}function L(){return T.value.map(e=>F(e))}function R(e){return e&&P.value[e]?P.value[e].expanded:!1}function z(){u.expanded===void 0?T.value=[]:g(`update:expanded`,[])}function B(){let e=[],t=n=>{n[u.childrenKey]&&n[u.childrenKey].length!==0&&n.expandable!==!1&&n.disabled!==!0&&(e.push(n[u.nodeKey]),n[u.childrenKey].forEach(t))};u.nodes.forEach(t),u.expanded===void 0?T.value=e:g(`update:expanded`,e)}function V(e,n,r=F(e),i=P.value[e]){if(i.lazy&&i.lazy!==`loaded`){if(i.lazy===`loading`)return;C.value[e]=`loading`,Array.isArray(r[u.childrenKey])!==!0&&(r[u.childrenKey]=[]),g(`lazyLoad`,{node:r,key:e,done:n=>{C.value[e]=`loaded`,r[u.childrenKey]=Array.isArray(n)===!0?n:[],t(()=>{P.value[e]?.isParent===!0&&H(e,!0)})},fail:()=>{delete C.value[e],r[u.childrenKey].length===0&&delete r[u.childrenKey]}})}else i.isParent===!0&&i.expandable===!0&&H(e,n)}function H(e,t){let n=T.value,r=u.expanded!==void 0;if(r===!0&&(n=n.slice()),t){if(u.accordion&&P.value[e]){let t=[];P.value[e].parent?P.value[e].parent.children.forEach(n=>{n.key!==e&&n.expandable===!0&&t.push(n.key)}):u.nodes.forEach(n=>{let r=n[u.nodeKey];r!==e&&t.push(r)}),t.length!==0&&(n=n.filter(e=>t.includes(e)===!1))}n=n.concat([e]).filter((e,t,n)=>n.indexOf(e)===t)}else n=n.filter(t=>t!==e);r===!0?g(`update:expanded`,n):T.value=n}function U(e){return e&&P.value[e]?P.value[e].ticked:!1}function W(e,t){let n=w.value,r=u.ticked!==void 0;r===!0&&(n=n.slice()),n=t?n.concat(e).filter((e,t,n)=>n.indexOf(e)===t):n.filter(t=>e.includes(t)===!1),r===!0&&g(`update:ticked`,n)}function G(e,t,n){let r={tree:b,node:e,key:n,color:u.color,dark:S.value};return f(r,`expanded`,()=>t.expanded,e=>{e!==t.expanded&&V(n,e)}),f(r,`ticked`,()=>t.ticked,e=>{e!==t.ticked&&W([n],e)}),r}function K(e){return(u.filter?e.filter(e=>P.value[e[u.nodeKey]].matchesFilter):e).map(e=>X(e))}function q(e){if(e.icon!==void 0)return i(_,{class:`q-tree__icon q-mr-sm`,name:e.icon,color:e.iconColor});let t=e.img||e.avatar;if(t)return i(`img`,{class:`q-tree__${e.img?`img`:`avatar`} q-mr-sm`,src:t})}function J(){g(`afterShow`)}function Y(){g(`afterHide`)}function X(e){let t=e[u.nodeKey],n=P.value[t],r=e.header&&h[`header-${e.header}`]||h[`default-header`],o=n.isParent===!0?K(e[u.childrenKey]):[],s=o.length!==0||n.lazy&&n.lazy!==`loaded`,f=e.body&&h[`body-${e.body}`]||h[`default-body`],m=r!==void 0||f!==void 0?G(e,n,t):null;return f!==void 0&&(f=i(`div`,{class:`q-tree__node-body relative-position`},[i(`div`,{class:j.value},[f(m)])])),i(`div`,{key:t,class:`q-tree__node relative-position q-tree__node--${s===!0?`parent`:`child`}`},[i(`div`,{class:`q-tree__node-header relative-position row no-wrap items-center`+(n.link===!0?` q-tree__node--link q-hoverable q-focusable`:``)+(n.selected===!0?` q-tree__node--selected`:``)+(n.disabled===!0?` q-tree__node--disabled`:``),tabindex:n.link===!0?0:-1,ariaExpanded:o.length>0?n.expanded:null,role:`treeitem`,onClick:t=>{Q(e,n,t)},onKeypress(t){d(t)!==!0&&(t.keyCode===13?Q(e,n,t,!0):t.keyCode===32&&$(e,n,t,!0))}},[i(`div`,{class:`q-focus-helper`,tabindex:-1,ref:e=>{E[n.key]=e}}),n.lazy===`loading`?i(p,{class:`q-tree__spinner`,color:A.value}):s===!0?i(_,{class:`q-tree__arrow`+(n.expanded===!0?` q-tree__arrow--rotate`:``),name:k.value,onClick(t){$(e,n,t)}}):null,n.hasTicking===!0&&n.noTick!==!0?i(v,{class:`q-tree__tickbox`,modelValue:n.indeterminate===!0?null:n.ticked,color:A.value,dark:S.value,dense:!0,keepColor:!0,disable:n.tickable!==!0,onKeydown:c,"onUpdate:modelValue":e=>{ee(n,e)}}):null,i(`div`,{class:`q-tree__node-header-content col row no-wrap items-center`+(n.selected===!0?M.value:j.value)},[r?r(m):[q(e),i(`div`,e[u.labelKey])]])]),s===!0?u.noTransition===!0?n.expanded===!0?i(`div`,{class:`q-tree__node-collapsible`+j.value,key:`${t}__q`},[f,i(`div`,{class:`q-tree__children`+(n.disabled===!0?` q-tree__node--disabled`:``),role:`group`},o)]):null:i(y,{duration:u.duration,onShow:J,onHide:Y},()=>a(i(`div`,{class:`q-tree__node-collapsible`+j.value,key:`${t}__q`},[f,i(`div`,{class:`q-tree__children`+(n.disabled===!0?` q-tree__node--disabled`:``),role:`group`},o)]),[[l,n.expanded]])):f])}function Z(e){E[e]?.focus()}function Q(e,t,n,r){r!==!0&&t.selectable!==!1&&Z(t.key),O.value&&t.selectable?u.noSelectionUnset===!1?g(`update:selected`,t.key===u.selected?null:t.key):t.key!==u.selected&&g(`update:selected`,t.key===void 0?null:t.key):$(e,t,n,r),typeof e.handler==`function`&&e.handler(e)}function $(e,t,n,r){n!==void 0&&c(n),r!==!0&&t.selectable!==!1&&Z(t.key),V(t.key,!t.expanded,e,t)}function ee(e,t){if(e.indeterminate===!0&&(t=e.indeterminateNextState),e.strictTicking)W([e.key],t);else if(e.leafTicking){let n=[],r=e=>{e.isParent?(t!==!0&&e.noTick!==!0&&e.tickable===!0&&n.push(e.key),e.leafTicking===!0&&e.children.forEach(r)):e.noTick!==!0&&e.tickable===!0&&(e.leafFilteredTicking!==!0||e.matchesFilter===!0)&&n.push(e.key)};r(e),W(n,t)}}return u.defaultExpandAll===!0&&B(),Object.assign(b,{getNodeByKey:F,getTickedNodes:I,getExpandedNodes:L,isExpanded:R,collapseAll:z,expandAll:B,setExpanded:V,isTicked:U,setTicked:W}),()=>{let e=K(u.nodes);return i(`div`,{class:D.value,role:`tree`},e.length===0?u.filter?u.noResultsLabel||x.lang.tree.noResults:u.noNodesLabel||x.lang.tree.noNodes:e)}}});function C(e){let t=[];for(let n of e){let e=n.path.split(`/`).filter(e=>e.length>0);if(e.length===0)continue;let r=t,i=``;for(let t=0;t<e.length-1;t++){let n=e[t];i=i?`${i}/${n}`:n;let a=r.find(e=>e.isFolder&&e.label===n);a||(a={label:n,nodeKey:`dir:${i}`,isFolder:!0,children:[]},r.push(a)),r=a.children}r.push({label:e[e.length-1],nodeKey:`file:${n.path}`,file:n})}function n(e){e.sort((e,t)=>{let n=e.isFolder===!0;return n===(t.isFolder===!0)?e.label.localeCompare(t.label):n?-1:1});for(let t of e)t.children&&n(t.children)}return n(t),t}function w(e){let t=0;for(let n of e)n.file&&t++,n.children&&(t+=w(n.children));return t}export{b as i,w as n,S as r,C as t};
@@ -1,4 +1,4 @@
1
- import{m as e}from"./editor.api-CtzJLjGf.js";var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,a=(e,a,o,s)=>{if(a&&typeof a==`object`||typeof a==`function`)for(let c of r(a))!i.call(e,c)&&c!==o&&t(e,c,{get:()=>a[c],enumerable:!(s=n(a,c))||s.enumerable});return e},o=(e,t,n)=>(a(e,t,`default`),n&&a(n,t,`default`)),s={};o(s,e);function c(e,t){let n=globalThis.MonacoEnvironment;if(n?.createTrustedTypesPolicy)try{return n.createTrustedTypesPolicy(e,t)}catch(e){console.error(e);return}try{return globalThis.trustedTypes?.createPolicy(e,t)}catch(e){console.error(e);return}}var l=typeof self==`object`&&self.constructor&&self.constructor.name===`DedicatedWorkerGlobalScope`&&globalThis.workerttPolicy!==void 0?globalThis.workerttPolicy:c(`defaultWorkerFactory`,{createScriptURL:e=>e});function ee(e){let t=e.label,n=globalThis.MonacoEnvironment;if(n){if(typeof n.getWorker==`function`)return n.getWorker(`workerMain.js`,t);if(typeof n.getWorkerUrl==`function`){let e=n.getWorkerUrl(`workerMain.js`,t);return new Worker(l?l.createScriptURL(e):e,{name:t,type:`module`})}}throw Error(`You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker`)}function u(e){let t=Promise.resolve(ee({label:e.label??`monaco-editor-worker`,moduleId:e.moduleId})).then(t=>(t.postMessage(`ignore`),t.postMessage(e.createData),t));return s.editor.createWebWorker({worker:t,host:e.host,keepIdleModels:e.keepIdleModels})}var d=120*1e3,f=class{constructor(e){this._defaults=e,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&=(this._worker.dispose(),null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){this._worker&&Date.now()-this._lastUsedTime>d&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||=(this._worker=u({moduleId:`vs/language/css/cssWorker`,label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._worker.getProxy()),this._client}getLanguageServiceWorker(...e){let t;return this._getClient().then(e=>{t=e}).then(t=>{if(this._worker)return this._worker.withSyncedResources(e)}).then(e=>t)}},te;(function(e){function t(e){return typeof e==`string`}e.is=t})(te||={});var p;(function(e){function t(e){return typeof e==`string`}e.is=t})(p||={});var ne;(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.is=t})(ne||={});var m;(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.is=t})(m||={});var h;(function(e){function t(e,t){return e===Number.MAX_VALUE&&(e=m.MAX_VALUE),t===Number.MAX_VALUE&&(t=m.MAX_VALUE),{line:e,character:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.uinteger(t.line)&&U.uinteger(t.character)}e.is=n})(h||={});var g;(function(e){function t(e,t,n,r){if(U.uinteger(e)&&U.uinteger(t)&&U.uinteger(n)&&U.uinteger(r))return{start:h.create(e,t),end:h.create(n,r)};if(h.is(e)&&h.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${n}, ${r}]`)}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&h.is(t.start)&&h.is(t.end)}e.is=n})(g||={});var _;(function(e){function t(e,t){return{uri:e,range:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.range)&&(U.string(t.uri)||U.undefined(t.uri))}e.is=n})(_||={});var re;(function(e){function t(e,t,n,r){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:r}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.targetRange)&&U.string(t.targetUri)&&g.is(t.targetSelectionRange)&&(g.is(t.originSelectionRange)||U.undefined(t.originSelectionRange))}e.is=n})(re||={});var v;(function(e){function t(e,t,n,r){return{red:e,green:t,blue:n,alpha:r}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.numberRange(t.red,0,1)&&U.numberRange(t.green,0,1)&&U.numberRange(t.blue,0,1)&&U.numberRange(t.alpha,0,1)}e.is=n})(v||={});var ie;(function(e){function t(e,t){return{range:e,color:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.range)&&v.is(t.color)}e.is=n})(ie||={});var ae;(function(e){function t(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.string(t.label)&&(U.undefined(t.textEdit)||w.is(t))&&(U.undefined(t.additionalTextEdits)||U.typedArray(t.additionalTextEdits,w.is))}e.is=n})(ae||={});var y;(function(e){e.Comment=`comment`,e.Imports=`imports`,e.Region=`region`})(y||={});var oe;(function(e){function t(e,t,n,r,i,a){let o={startLine:e,endLine:t};return U.defined(n)&&(o.startCharacter=n),U.defined(r)&&(o.endCharacter=r),U.defined(i)&&(o.kind=i),U.defined(a)&&(o.collapsedText=a),o}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.uinteger(t.startLine)&&U.uinteger(t.startLine)&&(U.undefined(t.startCharacter)||U.uinteger(t.startCharacter))&&(U.undefined(t.endCharacter)||U.uinteger(t.endCharacter))&&(U.undefined(t.kind)||U.string(t.kind))}e.is=n})(oe||={});var b;(function(e){function t(e,t){return{location:e,message:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&_.is(t.location)&&U.string(t.message)}e.is=n})(b||={});var x;(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(x||={});var se;(function(e){e.Unnecessary=1,e.Deprecated=2})(se||={});var ce;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&U.string(t.href)}e.is=t})(ce||={});var S;(function(e){function t(e,t,n,r,i,a){let o={range:e,message:t};return U.defined(n)&&(o.severity=n),U.defined(r)&&(o.code=r),U.defined(i)&&(o.source=i),U.defined(a)&&(o.relatedInformation=a),o}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&U.string(t.message)&&(U.number(t.severity)||U.undefined(t.severity))&&(U.integer(t.code)||U.string(t.code)||U.undefined(t.code))&&(U.undefined(t.codeDescription)||U.string(t.codeDescription?.href))&&(U.string(t.source)||U.undefined(t.source))&&(U.undefined(t.relatedInformation)||U.typedArray(t.relatedInformation,b.is))}e.is=n})(S||={});var C;(function(e){function t(e,t,...n){let r={title:e,command:t};return U.defined(n)&&n.length>0&&(r.arguments=n),r}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.title)&&U.string(t.command)}e.is=n})(C||={});var w;(function(e){function t(e,t){return{range:e,newText:t}}e.replace=t;function n(e,t){return{range:{start:e,end:e},newText:t}}e.insert=n;function r(e){return{range:e,newText:``}}e.del=r;function i(e){let t=e;return U.objectLiteral(t)&&U.string(t.newText)&&g.is(t.range)}e.is=i})(w||={});var T;(function(e){function t(e,t,n){let r={label:e};return t!==void 0&&(r.needsConfirmation=t),n!==void 0&&(r.description=n),r}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.string(t.label)&&(U.boolean(t.needsConfirmation)||t.needsConfirmation===void 0)&&(U.string(t.description)||t.description===void 0)}e.is=n})(T||={});var E;(function(e){function t(e){let t=e;return U.string(t)}e.is=t})(E||={});var le;(function(e){function t(e,t,n){return{range:e,newText:t,annotationId:n}}e.replace=t;function n(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}}e.insert=n;function r(e,t){return{range:e,newText:``,annotationId:t}}e.del=r;function i(e){let t=e;return w.is(t)&&(T.is(t.annotationId)||E.is(t.annotationId))}e.is=i})(le||={});var D;(function(e){function t(e,t){return{textDocument:e,edits:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&M.is(t.textDocument)&&Array.isArray(t.edits)}e.is=n})(D||={});var O;(function(e){function t(e,t,n){let r={kind:`create`,uri:e};return t!==void 0&&(t.overwrite!==void 0||t.ignoreIfExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}e.create=t;function n(e){let t=e;return t&&t.kind===`create`&&U.string(t.uri)&&(t.options===void 0||(t.options.overwrite===void 0||U.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||U.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(O||={});var k;(function(e){function t(e,t,n,r){let i={kind:`rename`,oldUri:e,newUri:t};return n!==void 0&&(n.overwrite!==void 0||n.ignoreIfExists!==void 0)&&(i.options=n),r!==void 0&&(i.annotationId=r),i}e.create=t;function n(e){let t=e;return t&&t.kind===`rename`&&U.string(t.oldUri)&&U.string(t.newUri)&&(t.options===void 0||(t.options.overwrite===void 0||U.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||U.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(k||={});var A;(function(e){function t(e,t,n){let r={kind:`delete`,uri:e};return t!==void 0&&(t.recursive!==void 0||t.ignoreIfNotExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}e.create=t;function n(e){let t=e;return t&&t.kind===`delete`&&U.string(t.uri)&&(t.options===void 0||(t.options.recursive===void 0||U.boolean(t.options.recursive))&&(t.options.ignoreIfNotExists===void 0||U.boolean(t.options.ignoreIfNotExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(A||={});var j;(function(e){function t(e){let t=e;return t&&(t.changes!==void 0||t.documentChanges!==void 0)&&(t.documentChanges===void 0||t.documentChanges.every(e=>U.string(e.kind)?O.is(e)||k.is(e)||A.is(e):D.is(e)))}e.is=t})(j||={});var ue;(function(e){function t(e){return{uri:e}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)}e.is=n})(ue||={});var de;(function(e){function t(e,t){return{uri:e,version:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&U.integer(t.version)}e.is=n})(de||={});var M;(function(e){function t(e,t){return{uri:e,version:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&(t.version===null||U.integer(t.version))}e.is=n})(M||={});var fe;(function(e){function t(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&U.string(t.languageId)&&U.integer(t.version)&&U.string(t.text)}e.is=n})(fe||={});var N;(function(e){e.PlainText=`plaintext`,e.Markdown=`markdown`;function t(t){let n=t;return n===e.PlainText||n===e.Markdown}e.is=t})(N||={});var P;(function(e){function t(e){let t=e;return U.objectLiteral(e)&&N.is(t.kind)&&U.string(t.value)}e.is=t})(P||={});var F;(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(F||={});var I;(function(e){e.PlainText=1,e.Snippet=2})(I||={});var pe;(function(e){e.Deprecated=1})(pe||={});var me;(function(e){function t(e,t,n){return{newText:e,insert:t,replace:n}}e.create=t;function n(e){let t=e;return t&&U.string(t.newText)&&g.is(t.insert)&&g.is(t.replace)}e.is=n})(me||={});var he;(function(e){e.asIs=1,e.adjustIndentation=2})(he||={});var ge;(function(e){function t(e){let t=e;return t&&(U.string(t.detail)||t.detail===void 0)&&(U.string(t.description)||t.description===void 0)}e.is=t})(ge||={});var _e;(function(e){function t(e){return{label:e}}e.create=t})(_e||={});var ve;(function(e){function t(e,t){return{items:e||[],isIncomplete:!!t}}e.create=t})(ve||={});var L;(function(e){function t(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,`\\$&`)}e.fromPlainText=t;function n(e){let t=e;return U.string(t)||U.objectLiteral(t)&&U.string(t.language)&&U.string(t.value)}e.is=n})(L||={});var ye;(function(e){function t(e){let t=e;return!!t&&U.objectLiteral(t)&&(P.is(t.contents)||L.is(t.contents)||U.typedArray(t.contents,L.is))&&(e.range===void 0||g.is(e.range))}e.is=t})(ye||={});var be;(function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}e.create=t})(be||={});var xe;(function(e){function t(e,t,...n){let r={label:e};return U.defined(t)&&(r.documentation=t),U.defined(n)?r.parameters=n:r.parameters=[],r}e.create=t})(xe||={});var R;(function(e){e.Text=1,e.Read=2,e.Write=3})(R||={});var Se;(function(e){function t(e,t){let n={range:e};return U.number(t)&&(n.kind=t),n}e.create=t})(Se||={});var z;(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(z||={});var Ce;(function(e){e.Deprecated=1})(Ce||={});var we;(function(e){function t(e,t,n,r,i){let a={name:e,kind:t,location:{uri:r,range:n}};return i&&(a.containerName=i),a}e.create=t})(we||={});var Te;(function(e){function t(e,t,n,r){return r===void 0?{name:e,kind:t,location:{uri:n}}:{name:e,kind:t,location:{uri:n,range:r}}}e.create=t})(Te||={});var Ee;(function(e){function t(e,t,n,r,i,a){let o={name:e,detail:t,kind:n,range:r,selectionRange:i};return a!==void 0&&(o.children=a),o}e.create=t;function n(e){let t=e;return t&&U.string(t.name)&&U.number(t.kind)&&g.is(t.range)&&g.is(t.selectionRange)&&(t.detail===void 0||U.string(t.detail))&&(t.deprecated===void 0||U.boolean(t.deprecated))&&(t.children===void 0||Array.isArray(t.children))&&(t.tags===void 0||Array.isArray(t.tags))}e.is=n})(Ee||={});var De;(function(e){e.Empty=``,e.QuickFix=`quickfix`,e.Refactor=`refactor`,e.RefactorExtract=`refactor.extract`,e.RefactorInline=`refactor.inline`,e.RefactorRewrite=`refactor.rewrite`,e.Source=`source`,e.SourceOrganizeImports=`source.organizeImports`,e.SourceFixAll=`source.fixAll`})(De||={});var B;(function(e){e.Invoked=1,e.Automatic=2})(B||={});var Oe;(function(e){function t(e,t,n){let r={diagnostics:e};return t!=null&&(r.only=t),n!=null&&(r.triggerKind=n),r}e.create=t;function n(e){let t=e;return U.defined(t)&&U.typedArray(t.diagnostics,S.is)&&(t.only===void 0||U.typedArray(t.only,U.string))&&(t.triggerKind===void 0||t.triggerKind===B.Invoked||t.triggerKind===B.Automatic)}e.is=n})(Oe||={});var ke;(function(e){function t(e,t,n){let r={title:e},i=!0;return typeof t==`string`?(i=!1,r.kind=t):C.is(t)?r.command=t:r.edit=t,i&&n!==void 0&&(r.kind=n),r}e.create=t;function n(e){let t=e;return t&&U.string(t.title)&&(t.diagnostics===void 0||U.typedArray(t.diagnostics,S.is))&&(t.kind===void 0||U.string(t.kind))&&(t.edit!==void 0||t.command!==void 0)&&(t.command===void 0||C.is(t.command))&&(t.isPreferred===void 0||U.boolean(t.isPreferred))&&(t.edit===void 0||j.is(t.edit))}e.is=n})(ke||={});var Ae;(function(e){function t(e,t){let n={range:e};return U.defined(t)&&(n.data=t),n}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&(U.undefined(t.command)||C.is(t.command))}e.is=n})(Ae||={});var je;(function(e){function t(e,t){return{tabSize:e,insertSpaces:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.uinteger(t.tabSize)&&U.boolean(t.insertSpaces)}e.is=n})(je||={});var Me;(function(e){function t(e,t,n){return{range:e,target:t,data:n}}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&(U.undefined(t.target)||U.string(t.target))}e.is=n})(Me||={});var Ne;(function(e){function t(e,t){return{range:e,parent:t}}e.create=t;function n(t){let n=t;return U.objectLiteral(n)&&g.is(n.range)&&(n.parent===void 0||e.is(n.parent))}e.is=n})(Ne||={});var Pe;(function(e){e.namespace=`namespace`,e.type=`type`,e.class=`class`,e.enum=`enum`,e.interface=`interface`,e.struct=`struct`,e.typeParameter=`typeParameter`,e.parameter=`parameter`,e.variable=`variable`,e.property=`property`,e.enumMember=`enumMember`,e.event=`event`,e.function=`function`,e.method=`method`,e.macro=`macro`,e.keyword=`keyword`,e.modifier=`modifier`,e.comment=`comment`,e.string=`string`,e.number=`number`,e.regexp=`regexp`,e.operator=`operator`,e.decorator=`decorator`})(Pe||={});var Fe;(function(e){e.declaration=`declaration`,e.definition=`definition`,e.readonly=`readonly`,e.static=`static`,e.deprecated=`deprecated`,e.abstract=`abstract`,e.async=`async`,e.modification=`modification`,e.documentation=`documentation`,e.defaultLibrary=`defaultLibrary`})(Fe||={});var Ie;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&(t.resultId===void 0||typeof t.resultId==`string`)&&Array.isArray(t.data)&&(t.data.length===0||typeof t.data[0]==`number`)}e.is=t})(Ie||={});var Le;(function(e){function t(e,t){return{range:e,text:t}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&U.string(t.text)}e.is=n})(Le||={});var Re;(function(e){function t(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&U.boolean(t.caseSensitiveLookup)&&(U.string(t.variableName)||t.variableName===void 0)}e.is=n})(Re||={});var ze;(function(e){function t(e,t){return{range:e,expression:t}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&(U.string(t.expression)||t.expression===void 0)}e.is=n})(ze||={});var Be;(function(e){function t(e,t){return{frameId:e,stoppedLocation:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(e.stoppedLocation)}e.is=n})(Be||={});var V;(function(e){e.Type=1,e.Parameter=2;function t(e){return e===1||e===2}e.is=t})(V||={});var H;(function(e){function t(e){return{value:e}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&(t.tooltip===void 0||U.string(t.tooltip)||P.is(t.tooltip))&&(t.location===void 0||_.is(t.location))&&(t.command===void 0||C.is(t.command))}e.is=n})(H||={});var Ve;(function(e){function t(e,t,n){let r={position:e,label:t};return n!==void 0&&(r.kind=n),r}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&h.is(t.position)&&(U.string(t.label)||U.typedArray(t.label,H.is))&&(t.kind===void 0||V.is(t.kind))&&t.textEdits===void 0||U.typedArray(t.textEdits,w.is)&&(t.tooltip===void 0||U.string(t.tooltip)||P.is(t.tooltip))&&(t.paddingLeft===void 0||U.boolean(t.paddingLeft))&&(t.paddingRight===void 0||U.boolean(t.paddingRight))}e.is=n})(Ve||={});var He;(function(e){function t(e){return{kind:`snippet`,value:e}}e.createSnippet=t})(He||={});var Ue;(function(e){function t(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}}e.create=t})(Ue||={});var We;(function(e){function t(e){return{items:e}}e.create=t})(We||={});var Ge;(function(e){e.Invoked=0,e.Automatic=1})(Ge||={});var Ke;(function(e){function t(e,t){return{range:e,text:t}}e.create=t})(Ke||={});var qe;(function(e){function t(e,t){return{triggerKind:e,selectedCompletionInfo:t}}e.create=t})(qe||={});var Je;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&p.is(t.uri)&&U.string(t.name)}e.is=t})(Je||={});var Ye;(function(e){function t(e,t,n,r){return new Xe(e,t,n,r)}e.create=t;function n(e){let t=e;return!!(U.defined(t)&&U.string(t.uri)&&(U.undefined(t.languageId)||U.string(t.languageId))&&U.uinteger(t.lineCount)&&U.func(t.getText)&&U.func(t.positionAt)&&U.func(t.offsetAt))}e.is=n;function r(e,t){let n=e.getText(),r=i(t,(e,t)=>{let n=e.range.start.line-t.range.start.line;return n===0?e.range.start.character-t.range.start.character:n}),a=n.length;for(let t=r.length-1;t>=0;t--){let i=r[t],o=e.offsetAt(i.range.start),s=e.offsetAt(i.range.end);if(s<=a)n=n.substring(0,o)+i.newText+n.substring(s,n.length);else throw Error(`Overlapping edit`);a=o}return n}e.applyEdits=r;function i(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),a=e.slice(n);i(r,t),i(a,t);let o=0,s=0,c=0;for(;o<r.length&&s<a.length;)t(r[o],a[s])<=0?e[c++]=r[o++]:e[c++]=a[s++];for(;o<r.length;)e[c++]=r[o++];for(;s<a.length;)e[c++]=a[s++];return e}})(Ye||={});var Xe=class{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],t=this._content,n=!0;for(let r=0;r<t.length;r++){n&&=(e.push(r),!1);let i=t.charAt(r);n=i===`\r`||i===`
1
+ import{m as e}from"./editor.api--wqcZBpd.js";var t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.prototype.hasOwnProperty,a=(e,a,o,s)=>{if(a&&typeof a==`object`||typeof a==`function`)for(let c of r(a))!i.call(e,c)&&c!==o&&t(e,c,{get:()=>a[c],enumerable:!(s=n(a,c))||s.enumerable});return e},o=(e,t,n)=>(a(e,t,`default`),n&&a(n,t,`default`)),s={};o(s,e);function c(e,t){let n=globalThis.MonacoEnvironment;if(n?.createTrustedTypesPolicy)try{return n.createTrustedTypesPolicy(e,t)}catch(e){console.error(e);return}try{return globalThis.trustedTypes?.createPolicy(e,t)}catch(e){console.error(e);return}}var l=typeof self==`object`&&self.constructor&&self.constructor.name===`DedicatedWorkerGlobalScope`&&globalThis.workerttPolicy!==void 0?globalThis.workerttPolicy:c(`defaultWorkerFactory`,{createScriptURL:e=>e});function ee(e){let t=e.label,n=globalThis.MonacoEnvironment;if(n){if(typeof n.getWorker==`function`)return n.getWorker(`workerMain.js`,t);if(typeof n.getWorkerUrl==`function`){let e=n.getWorkerUrl(`workerMain.js`,t);return new Worker(l?l.createScriptURL(e):e,{name:t,type:`module`})}}throw Error(`You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker`)}function u(e){let t=Promise.resolve(ee({label:e.label??`monaco-editor-worker`,moduleId:e.moduleId})).then(t=>(t.postMessage(`ignore`),t.postMessage(e.createData),t));return s.editor.createWebWorker({worker:t,host:e.host,keepIdleModels:e.keepIdleModels})}var d=120*1e3,f=class{constructor(e){this._defaults=e,this._worker=null,this._client=null,this._idleCheckInterval=window.setInterval(()=>this._checkIfIdle(),30*1e3),this._lastUsedTime=0,this._configChangeListener=this._defaults.onDidChange(()=>this._stopWorker())}_stopWorker(){this._worker&&=(this._worker.dispose(),null),this._client=null}dispose(){clearInterval(this._idleCheckInterval),this._configChangeListener.dispose(),this._stopWorker()}_checkIfIdle(){this._worker&&Date.now()-this._lastUsedTime>d&&this._stopWorker()}_getClient(){return this._lastUsedTime=Date.now(),this._client||=(this._worker=u({moduleId:`vs/language/css/cssWorker`,label:this._defaults.languageId,createData:{options:this._defaults.options,languageId:this._defaults.languageId}}),this._worker.getProxy()),this._client}getLanguageServiceWorker(...e){let t;return this._getClient().then(e=>{t=e}).then(t=>{if(this._worker)return this._worker.withSyncedResources(e)}).then(e=>t)}},te;(function(e){function t(e){return typeof e==`string`}e.is=t})(te||={});var p;(function(e){function t(e){return typeof e==`string`}e.is=t})(p||={});var ne;(function(e){e.MIN_VALUE=-2147483648,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.is=t})(ne||={});var m;(function(e){e.MIN_VALUE=0,e.MAX_VALUE=2147483647;function t(t){return typeof t==`number`&&e.MIN_VALUE<=t&&t<=e.MAX_VALUE}e.is=t})(m||={});var h;(function(e){function t(e,t){return e===Number.MAX_VALUE&&(e=m.MAX_VALUE),t===Number.MAX_VALUE&&(t=m.MAX_VALUE),{line:e,character:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.uinteger(t.line)&&U.uinteger(t.character)}e.is=n})(h||={});var g;(function(e){function t(e,t,n,r){if(U.uinteger(e)&&U.uinteger(t)&&U.uinteger(n)&&U.uinteger(r))return{start:h.create(e,t),end:h.create(n,r)};if(h.is(e)&&h.is(t))return{start:e,end:t};throw Error(`Range#create called with invalid arguments[${e}, ${t}, ${n}, ${r}]`)}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&h.is(t.start)&&h.is(t.end)}e.is=n})(g||={});var _;(function(e){function t(e,t){return{uri:e,range:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.range)&&(U.string(t.uri)||U.undefined(t.uri))}e.is=n})(_||={});var re;(function(e){function t(e,t,n,r){return{targetUri:e,targetRange:t,targetSelectionRange:n,originSelectionRange:r}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.targetRange)&&U.string(t.targetUri)&&g.is(t.targetSelectionRange)&&(g.is(t.originSelectionRange)||U.undefined(t.originSelectionRange))}e.is=n})(re||={});var v;(function(e){function t(e,t,n,r){return{red:e,green:t,blue:n,alpha:r}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.numberRange(t.red,0,1)&&U.numberRange(t.green,0,1)&&U.numberRange(t.blue,0,1)&&U.numberRange(t.alpha,0,1)}e.is=n})(v||={});var ie;(function(e){function t(e,t){return{range:e,color:t}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&g.is(t.range)&&v.is(t.color)}e.is=n})(ie||={});var ae;(function(e){function t(e,t,n){return{label:e,textEdit:t,additionalTextEdits:n}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.string(t.label)&&(U.undefined(t.textEdit)||w.is(t))&&(U.undefined(t.additionalTextEdits)||U.typedArray(t.additionalTextEdits,w.is))}e.is=n})(ae||={});var y;(function(e){e.Comment=`comment`,e.Imports=`imports`,e.Region=`region`})(y||={});var oe;(function(e){function t(e,t,n,r,i,a){let o={startLine:e,endLine:t};return U.defined(n)&&(o.startCharacter=n),U.defined(r)&&(o.endCharacter=r),U.defined(i)&&(o.kind=i),U.defined(a)&&(o.collapsedText=a),o}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.uinteger(t.startLine)&&U.uinteger(t.startLine)&&(U.undefined(t.startCharacter)||U.uinteger(t.startCharacter))&&(U.undefined(t.endCharacter)||U.uinteger(t.endCharacter))&&(U.undefined(t.kind)||U.string(t.kind))}e.is=n})(oe||={});var b;(function(e){function t(e,t){return{location:e,message:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&_.is(t.location)&&U.string(t.message)}e.is=n})(b||={});var x;(function(e){e.Error=1,e.Warning=2,e.Information=3,e.Hint=4})(x||={});var se;(function(e){e.Unnecessary=1,e.Deprecated=2})(se||={});var ce;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&U.string(t.href)}e.is=t})(ce||={});var S;(function(e){function t(e,t,n,r,i,a){let o={range:e,message:t};return U.defined(n)&&(o.severity=n),U.defined(r)&&(o.code=r),U.defined(i)&&(o.source=i),U.defined(a)&&(o.relatedInformation=a),o}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&U.string(t.message)&&(U.number(t.severity)||U.undefined(t.severity))&&(U.integer(t.code)||U.string(t.code)||U.undefined(t.code))&&(U.undefined(t.codeDescription)||U.string(t.codeDescription?.href))&&(U.string(t.source)||U.undefined(t.source))&&(U.undefined(t.relatedInformation)||U.typedArray(t.relatedInformation,b.is))}e.is=n})(S||={});var C;(function(e){function t(e,t,...n){let r={title:e,command:t};return U.defined(n)&&n.length>0&&(r.arguments=n),r}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.title)&&U.string(t.command)}e.is=n})(C||={});var w;(function(e){function t(e,t){return{range:e,newText:t}}e.replace=t;function n(e,t){return{range:{start:e,end:e},newText:t}}e.insert=n;function r(e){return{range:e,newText:``}}e.del=r;function i(e){let t=e;return U.objectLiteral(t)&&U.string(t.newText)&&g.is(t.range)}e.is=i})(w||={});var T;(function(e){function t(e,t,n){let r={label:e};return t!==void 0&&(r.needsConfirmation=t),n!==void 0&&(r.description=n),r}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&U.string(t.label)&&(U.boolean(t.needsConfirmation)||t.needsConfirmation===void 0)&&(U.string(t.description)||t.description===void 0)}e.is=n})(T||={});var E;(function(e){function t(e){let t=e;return U.string(t)}e.is=t})(E||={});var le;(function(e){function t(e,t,n){return{range:e,newText:t,annotationId:n}}e.replace=t;function n(e,t,n){return{range:{start:e,end:e},newText:t,annotationId:n}}e.insert=n;function r(e,t){return{range:e,newText:``,annotationId:t}}e.del=r;function i(e){let t=e;return w.is(t)&&(T.is(t.annotationId)||E.is(t.annotationId))}e.is=i})(le||={});var D;(function(e){function t(e,t){return{textDocument:e,edits:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&M.is(t.textDocument)&&Array.isArray(t.edits)}e.is=n})(D||={});var O;(function(e){function t(e,t,n){let r={kind:`create`,uri:e};return t!==void 0&&(t.overwrite!==void 0||t.ignoreIfExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}e.create=t;function n(e){let t=e;return t&&t.kind===`create`&&U.string(t.uri)&&(t.options===void 0||(t.options.overwrite===void 0||U.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||U.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(O||={});var k;(function(e){function t(e,t,n,r){let i={kind:`rename`,oldUri:e,newUri:t};return n!==void 0&&(n.overwrite!==void 0||n.ignoreIfExists!==void 0)&&(i.options=n),r!==void 0&&(i.annotationId=r),i}e.create=t;function n(e){let t=e;return t&&t.kind===`rename`&&U.string(t.oldUri)&&U.string(t.newUri)&&(t.options===void 0||(t.options.overwrite===void 0||U.boolean(t.options.overwrite))&&(t.options.ignoreIfExists===void 0||U.boolean(t.options.ignoreIfExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(k||={});var A;(function(e){function t(e,t,n){let r={kind:`delete`,uri:e};return t!==void 0&&(t.recursive!==void 0||t.ignoreIfNotExists!==void 0)&&(r.options=t),n!==void 0&&(r.annotationId=n),r}e.create=t;function n(e){let t=e;return t&&t.kind===`delete`&&U.string(t.uri)&&(t.options===void 0||(t.options.recursive===void 0||U.boolean(t.options.recursive))&&(t.options.ignoreIfNotExists===void 0||U.boolean(t.options.ignoreIfNotExists)))&&(t.annotationId===void 0||E.is(t.annotationId))}e.is=n})(A||={});var j;(function(e){function t(e){let t=e;return t&&(t.changes!==void 0||t.documentChanges!==void 0)&&(t.documentChanges===void 0||t.documentChanges.every(e=>U.string(e.kind)?O.is(e)||k.is(e)||A.is(e):D.is(e)))}e.is=t})(j||={});var ue;(function(e){function t(e){return{uri:e}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)}e.is=n})(ue||={});var de;(function(e){function t(e,t){return{uri:e,version:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&U.integer(t.version)}e.is=n})(de||={});var M;(function(e){function t(e,t){return{uri:e,version:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&(t.version===null||U.integer(t.version))}e.is=n})(M||={});var fe;(function(e){function t(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.string(t.uri)&&U.string(t.languageId)&&U.integer(t.version)&&U.string(t.text)}e.is=n})(fe||={});var N;(function(e){e.PlainText=`plaintext`,e.Markdown=`markdown`;function t(t){let n=t;return n===e.PlainText||n===e.Markdown}e.is=t})(N||={});var P;(function(e){function t(e){let t=e;return U.objectLiteral(e)&&N.is(t.kind)&&U.string(t.value)}e.is=t})(P||={});var F;(function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18,e.Folder=19,e.EnumMember=20,e.Constant=21,e.Struct=22,e.Event=23,e.Operator=24,e.TypeParameter=25})(F||={});var I;(function(e){e.PlainText=1,e.Snippet=2})(I||={});var pe;(function(e){e.Deprecated=1})(pe||={});var me;(function(e){function t(e,t,n){return{newText:e,insert:t,replace:n}}e.create=t;function n(e){let t=e;return t&&U.string(t.newText)&&g.is(t.insert)&&g.is(t.replace)}e.is=n})(me||={});var he;(function(e){e.asIs=1,e.adjustIndentation=2})(he||={});var ge;(function(e){function t(e){let t=e;return t&&(U.string(t.detail)||t.detail===void 0)&&(U.string(t.description)||t.description===void 0)}e.is=t})(ge||={});var _e;(function(e){function t(e){return{label:e}}e.create=t})(_e||={});var ve;(function(e){function t(e,t){return{items:e||[],isIncomplete:!!t}}e.create=t})(ve||={});var L;(function(e){function t(e){return e.replace(/[\\`*_{}[\]()#+\-.!]/g,`\\$&`)}e.fromPlainText=t;function n(e){let t=e;return U.string(t)||U.objectLiteral(t)&&U.string(t.language)&&U.string(t.value)}e.is=n})(L||={});var ye;(function(e){function t(e){let t=e;return!!t&&U.objectLiteral(t)&&(P.is(t.contents)||L.is(t.contents)||U.typedArray(t.contents,L.is))&&(e.range===void 0||g.is(e.range))}e.is=t})(ye||={});var be;(function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}e.create=t})(be||={});var xe;(function(e){function t(e,t,...n){let r={label:e};return U.defined(t)&&(r.documentation=t),U.defined(n)?r.parameters=n:r.parameters=[],r}e.create=t})(xe||={});var R;(function(e){e.Text=1,e.Read=2,e.Write=3})(R||={});var Se;(function(e){function t(e,t){let n={range:e};return U.number(t)&&(n.kind=t),n}e.create=t})(Se||={});var z;(function(e){e.File=1,e.Module=2,e.Namespace=3,e.Package=4,e.Class=5,e.Method=6,e.Property=7,e.Field=8,e.Constructor=9,e.Enum=10,e.Interface=11,e.Function=12,e.Variable=13,e.Constant=14,e.String=15,e.Number=16,e.Boolean=17,e.Array=18,e.Object=19,e.Key=20,e.Null=21,e.EnumMember=22,e.Struct=23,e.Event=24,e.Operator=25,e.TypeParameter=26})(z||={});var Ce;(function(e){e.Deprecated=1})(Ce||={});var we;(function(e){function t(e,t,n,r,i){let a={name:e,kind:t,location:{uri:r,range:n}};return i&&(a.containerName=i),a}e.create=t})(we||={});var Te;(function(e){function t(e,t,n,r){return r===void 0?{name:e,kind:t,location:{uri:n}}:{name:e,kind:t,location:{uri:n,range:r}}}e.create=t})(Te||={});var Ee;(function(e){function t(e,t,n,r,i,a){let o={name:e,detail:t,kind:n,range:r,selectionRange:i};return a!==void 0&&(o.children=a),o}e.create=t;function n(e){let t=e;return t&&U.string(t.name)&&U.number(t.kind)&&g.is(t.range)&&g.is(t.selectionRange)&&(t.detail===void 0||U.string(t.detail))&&(t.deprecated===void 0||U.boolean(t.deprecated))&&(t.children===void 0||Array.isArray(t.children))&&(t.tags===void 0||Array.isArray(t.tags))}e.is=n})(Ee||={});var De;(function(e){e.Empty=``,e.QuickFix=`quickfix`,e.Refactor=`refactor`,e.RefactorExtract=`refactor.extract`,e.RefactorInline=`refactor.inline`,e.RefactorRewrite=`refactor.rewrite`,e.Source=`source`,e.SourceOrganizeImports=`source.organizeImports`,e.SourceFixAll=`source.fixAll`})(De||={});var B;(function(e){e.Invoked=1,e.Automatic=2})(B||={});var Oe;(function(e){function t(e,t,n){let r={diagnostics:e};return t!=null&&(r.only=t),n!=null&&(r.triggerKind=n),r}e.create=t;function n(e){let t=e;return U.defined(t)&&U.typedArray(t.diagnostics,S.is)&&(t.only===void 0||U.typedArray(t.only,U.string))&&(t.triggerKind===void 0||t.triggerKind===B.Invoked||t.triggerKind===B.Automatic)}e.is=n})(Oe||={});var ke;(function(e){function t(e,t,n){let r={title:e},i=!0;return typeof t==`string`?(i=!1,r.kind=t):C.is(t)?r.command=t:r.edit=t,i&&n!==void 0&&(r.kind=n),r}e.create=t;function n(e){let t=e;return t&&U.string(t.title)&&(t.diagnostics===void 0||U.typedArray(t.diagnostics,S.is))&&(t.kind===void 0||U.string(t.kind))&&(t.edit!==void 0||t.command!==void 0)&&(t.command===void 0||C.is(t.command))&&(t.isPreferred===void 0||U.boolean(t.isPreferred))&&(t.edit===void 0||j.is(t.edit))}e.is=n})(ke||={});var Ae;(function(e){function t(e,t){let n={range:e};return U.defined(t)&&(n.data=t),n}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&(U.undefined(t.command)||C.is(t.command))}e.is=n})(Ae||={});var je;(function(e){function t(e,t){return{tabSize:e,insertSpaces:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&U.uinteger(t.tabSize)&&U.boolean(t.insertSpaces)}e.is=n})(je||={});var Me;(function(e){function t(e,t,n){return{range:e,target:t,data:n}}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(t.range)&&(U.undefined(t.target)||U.string(t.target))}e.is=n})(Me||={});var Ne;(function(e){function t(e,t){return{range:e,parent:t}}e.create=t;function n(t){let n=t;return U.objectLiteral(n)&&g.is(n.range)&&(n.parent===void 0||e.is(n.parent))}e.is=n})(Ne||={});var Pe;(function(e){e.namespace=`namespace`,e.type=`type`,e.class=`class`,e.enum=`enum`,e.interface=`interface`,e.struct=`struct`,e.typeParameter=`typeParameter`,e.parameter=`parameter`,e.variable=`variable`,e.property=`property`,e.enumMember=`enumMember`,e.event=`event`,e.function=`function`,e.method=`method`,e.macro=`macro`,e.keyword=`keyword`,e.modifier=`modifier`,e.comment=`comment`,e.string=`string`,e.number=`number`,e.regexp=`regexp`,e.operator=`operator`,e.decorator=`decorator`})(Pe||={});var Fe;(function(e){e.declaration=`declaration`,e.definition=`definition`,e.readonly=`readonly`,e.static=`static`,e.deprecated=`deprecated`,e.abstract=`abstract`,e.async=`async`,e.modification=`modification`,e.documentation=`documentation`,e.defaultLibrary=`defaultLibrary`})(Fe||={});var Ie;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&(t.resultId===void 0||typeof t.resultId==`string`)&&Array.isArray(t.data)&&(t.data.length===0||typeof t.data[0]==`number`)}e.is=t})(Ie||={});var Le;(function(e){function t(e,t){return{range:e,text:t}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&U.string(t.text)}e.is=n})(Le||={});var Re;(function(e){function t(e,t,n){return{range:e,variableName:t,caseSensitiveLookup:n}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&U.boolean(t.caseSensitiveLookup)&&(U.string(t.variableName)||t.variableName===void 0)}e.is=n})(Re||={});var ze;(function(e){function t(e,t){return{range:e,expression:t}}e.create=t;function n(e){let t=e;return t!=null&&g.is(t.range)&&(U.string(t.expression)||t.expression===void 0)}e.is=n})(ze||={});var Be;(function(e){function t(e,t){return{frameId:e,stoppedLocation:t}}e.create=t;function n(e){let t=e;return U.defined(t)&&g.is(e.stoppedLocation)}e.is=n})(Be||={});var V;(function(e){e.Type=1,e.Parameter=2;function t(e){return e===1||e===2}e.is=t})(V||={});var H;(function(e){function t(e){return{value:e}}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&(t.tooltip===void 0||U.string(t.tooltip)||P.is(t.tooltip))&&(t.location===void 0||_.is(t.location))&&(t.command===void 0||C.is(t.command))}e.is=n})(H||={});var Ve;(function(e){function t(e,t,n){let r={position:e,label:t};return n!==void 0&&(r.kind=n),r}e.create=t;function n(e){let t=e;return U.objectLiteral(t)&&h.is(t.position)&&(U.string(t.label)||U.typedArray(t.label,H.is))&&(t.kind===void 0||V.is(t.kind))&&t.textEdits===void 0||U.typedArray(t.textEdits,w.is)&&(t.tooltip===void 0||U.string(t.tooltip)||P.is(t.tooltip))&&(t.paddingLeft===void 0||U.boolean(t.paddingLeft))&&(t.paddingRight===void 0||U.boolean(t.paddingRight))}e.is=n})(Ve||={});var He;(function(e){function t(e){return{kind:`snippet`,value:e}}e.createSnippet=t})(He||={});var Ue;(function(e){function t(e,t,n,r){return{insertText:e,filterText:t,range:n,command:r}}e.create=t})(Ue||={});var We;(function(e){function t(e){return{items:e}}e.create=t})(We||={});var Ge;(function(e){e.Invoked=0,e.Automatic=1})(Ge||={});var Ke;(function(e){function t(e,t){return{range:e,text:t}}e.create=t})(Ke||={});var qe;(function(e){function t(e,t){return{triggerKind:e,selectedCompletionInfo:t}}e.create=t})(qe||={});var Je;(function(e){function t(e){let t=e;return U.objectLiteral(t)&&p.is(t.uri)&&U.string(t.name)}e.is=t})(Je||={});var Ye;(function(e){function t(e,t,n,r){return new Xe(e,t,n,r)}e.create=t;function n(e){let t=e;return!!(U.defined(t)&&U.string(t.uri)&&(U.undefined(t.languageId)||U.string(t.languageId))&&U.uinteger(t.lineCount)&&U.func(t.getText)&&U.func(t.positionAt)&&U.func(t.offsetAt))}e.is=n;function r(e,t){let n=e.getText(),r=i(t,(e,t)=>{let n=e.range.start.line-t.range.start.line;return n===0?e.range.start.character-t.range.start.character:n}),a=n.length;for(let t=r.length-1;t>=0;t--){let i=r[t],o=e.offsetAt(i.range.start),s=e.offsetAt(i.range.end);if(s<=a)n=n.substring(0,o)+i.newText+n.substring(s,n.length);else throw Error(`Overlapping edit`);a=o}return n}e.applyEdits=r;function i(e,t){if(e.length<=1)return e;let n=e.length/2|0,r=e.slice(0,n),a=e.slice(n);i(r,t),i(a,t);let o=0,s=0,c=0;for(;o<r.length&&s<a.length;)t(r[o],a[s])<=0?e[c++]=r[o++]:e[c++]=a[s++];for(;o<r.length;)e[c++]=r[o++];for(;s<a.length;)e[c++]=a[s++];return e}})(Ye||={});var Xe=class{constructor(e,t,n,r){this._uri=e,this._languageId=t,this._version=n,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(t,n)}return this._content}update(e,t){this._content=e.text,this._version=t,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let e=[],t=this._content,n=!0;for(let r=0;r<t.length;r++){n&&=(e.push(r),!1);let i=t.charAt(r);n=i===`\r`||i===`
2
2
  `,i===`\r`&&r+1<t.length&&t.charAt(r+1)===`
3
3
  `&&r++}n&&t.length>0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),n=0,r=t.length;if(r===0)return h.create(0,e);for(;n<r;){let i=Math.floor((n+r)/2);t[i]>e?r=i:n=i+1}let i=n-1;return h.create(i,e-t[i])}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;let n=t[e.line],r=e.line+1<t.length?t[e.line+1]:this._content.length;return Math.max(Math.min(n+e.character,r),n)}get lineCount(){return this.getLineOffsets().length}},U;(function(e){let t=Object.prototype.toString;function n(e){return e!==void 0}e.defined=n;function r(e){return e===void 0}e.undefined=r;function i(e){return e===!0||e===!1}e.boolean=i;function a(e){return t.call(e)===`[object String]`}e.string=a;function o(e){return t.call(e)===`[object Number]`}e.number=o;function s(e,n,r){return t.call(e)===`[object Number]`&&n<=e&&e<=r}e.numberRange=s;function c(e){return t.call(e)===`[object Number]`&&-2147483648<=e&&e<=2147483647}e.integer=c;function l(e){return t.call(e)===`[object Number]`&&0<=e&&e<=2147483647}e.uinteger=l;function ee(e){return t.call(e)===`[object Function]`}e.func=ee;function u(e){return typeof e==`object`&&!!e}e.objectLiteral=u;function d(e,t){return Array.isArray(e)&&e.every(t)}e.typedArray=d})(U||={});var W=class{constructor(e,t,n){this._languageId=e,this._worker=t,this._disposables=[],this._listener=Object.create(null);let r=e=>{let t=e.getLanguageId();if(t!==this._languageId)return;let n;this._listener[e.uri.toString()]=e.onDidChangeContent(()=>{window.clearTimeout(n),n=window.setTimeout(()=>this._doValidate(e.uri,t),500)}),this._doValidate(e.uri,t)},i=e=>{s.editor.setModelMarkers(e,this._languageId,[]);let t=e.uri.toString(),n=this._listener[t];n&&(n.dispose(),delete this._listener[t])};this._disposables.push(s.editor.onDidCreateModel(r)),this._disposables.push(s.editor.onWillDisposeModel(i)),this._disposables.push(s.editor.onDidChangeModelLanguage(e=>{i(e.model),r(e.model)})),this._disposables.push(n(e=>{s.editor.getModels().forEach(e=>{e.getLanguageId()===this._languageId&&(i(e),r(e))})})),this._disposables.push({dispose:()=>{s.editor.getModels().forEach(i);for(let e in this._listener)this._listener[e].dispose()}}),s.editor.getModels().forEach(r)}dispose(){this._disposables.forEach(e=>e&&e.dispose()),this._disposables.length=0}_doValidate(e,t){this._worker(e).then(t=>t.doValidation(e.toString())).then(n=>{let r=n.map(t=>Qe(e,t)),i=s.editor.getModel(e);i&&i.getLanguageId()===t&&s.editor.setModelMarkers(i,t,r)}).then(void 0,e=>{console.error(e)})}};function Ze(e){switch(e){case x.Error:return s.MarkerSeverity.Error;case x.Warning:return s.MarkerSeverity.Warning;case x.Information:return s.MarkerSeverity.Info;case x.Hint:return s.MarkerSeverity.Hint;default:return s.MarkerSeverity.Info}}function Qe(e,t){let n=typeof t.code==`number`?String(t.code):t.code;return{severity:Ze(t.severity),startLineNumber:t.range.start.line+1,startColumn:t.range.start.character+1,endLineNumber:t.range.end.line+1,endColumn:t.range.end.character+1,message:t.message,code:n,source:t.source}}var $e=class{constructor(e,t){this._worker=e,this._triggerCharacters=t}get triggerCharacters(){return this._triggerCharacters}provideCompletionItems(e,t,n,r){let i=e.uri;return this._worker(i).then(e=>e.doComplete(i.toString(),G(t))).then(n=>{if(!n)return;let r=e.getWordUntilPosition(t),i=new s.Range(t.lineNumber,r.startColumn,t.lineNumber,r.endColumn),a=n.items.map(e=>{let t={label:e.label,insertText:e.insertText||e.label,sortText:e.sortText,filterText:e.filterText,documentation:e.documentation,detail:e.detail,command:nt(e.command),range:i,kind:tt(e.kind)};return e.textEdit&&(et(e.textEdit)?t.range={insert:q(e.textEdit.insert),replace:q(e.textEdit.replace)}:t.range=q(e.textEdit.range),t.insertText=e.textEdit.newText),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(J)),e.insertTextFormat===I.Snippet&&(t.insertTextRules=s.languages.CompletionItemInsertTextRule.InsertAsSnippet),t});return{isIncomplete:n.isIncomplete,suggestions:a}})}};function G(e){if(e)return{character:e.column-1,line:e.lineNumber-1}}function K(e){if(e)return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function q(e){if(e)return new s.Range(e.start.line+1,e.start.character+1,e.end.line+1,e.end.character+1)}function et(e){return e.insert!==void 0&&e.replace!==void 0}function tt(e){let t=s.languages.CompletionItemKind;switch(e){case F.Text:return t.Text;case F.Method:return t.Method;case F.Function:return t.Function;case F.Constructor:return t.Constructor;case F.Field:return t.Field;case F.Variable:return t.Variable;case F.Class:return t.Class;case F.Interface:return t.Interface;case F.Module:return t.Module;case F.Property:return t.Property;case F.Unit:return t.Unit;case F.Value:return t.Value;case F.Enum:return t.Enum;case F.Keyword:return t.Keyword;case F.Snippet:return t.Snippet;case F.Color:return t.Color;case F.File:return t.File;case F.Reference:return t.Reference}return t.Property}function J(e){if(e)return{range:q(e.range),text:e.newText}}function nt(e){return e&&e.command===`editor.action.triggerSuggest`?{id:e.command,title:e.title,arguments:e.arguments}:void 0}var Y=class{constructor(e){this._worker=e}provideHover(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.doHover(r.toString(),G(t))).then(e=>{if(e)return{range:q(e.range),contents:it(e.contents)}})}};function rt(e){return e&&typeof e==`object`&&typeof e.kind==`string`}function X(e){return typeof e==`string`?{value:e}:rt(e)?e.kind===`plaintext`?{value:e.value.replace(/[\\`*_{}[\]()#+\-.!]/g,`\\$&`)}:{value:e.value}:{value:"```"+e.language+`
4
4
  `+e.value+"\n```\n"}}function it(e){if(e)return Array.isArray(e)?e.map(X):[X(e)]}var Z=class{constructor(e){this._worker=e}provideDocumentHighlights(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.findDocumentHighlights(r.toString(),G(t))).then(e=>{if(e)return e.map(e=>({range:q(e.range),kind:at(e.kind)}))})}};function at(e){switch(e){case R.Read:return s.languages.DocumentHighlightKind.Read;case R.Write:return s.languages.DocumentHighlightKind.Write;case R.Text:return s.languages.DocumentHighlightKind.Text}return s.languages.DocumentHighlightKind.Text}var Q=class{constructor(e){this._worker=e}provideDefinition(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.findDefinition(r.toString(),G(t))).then(e=>{if(e)return[ot(e)]})}};function ot(e){return{uri:s.Uri.parse(e.uri),range:q(e.range)}}var st=class{constructor(e){this._worker=e}provideReferences(e,t,n,r){let i=e.uri;return this._worker(i).then(e=>e.findReferences(i.toString(),G(t))).then(e=>{if(e)return e.map(ot)})}},ct=class{constructor(e){this._worker=e}provideRenameEdits(e,t,n,r){let i=e.uri;return this._worker(i).then(e=>e.doRename(i.toString(),G(t),n)).then(e=>lt(e))}};function lt(e){if(!e||!e.changes)return;let t=[];for(let n in e.changes){let r=s.Uri.parse(n);for(let i of e.changes[n])t.push({resource:r,versionId:void 0,textEdit:{range:q(i.range),text:i.newText}})}return{edits:t}}var ut=class{constructor(e){this._worker=e}provideDocumentSymbols(e,t){let n=e.uri;return this._worker(n).then(e=>e.findDocumentSymbols(n.toString())).then(e=>{if(e)return e.map(e=>dt(e)?ft(e):{name:e.name,detail:``,containerName:e.containerName,kind:$(e.kind),range:q(e.location.range),selectionRange:q(e.location.range),tags:[]})})}};function dt(e){return`children`in e}function ft(e){return{name:e.name,detail:e.detail??``,kind:$(e.kind),range:q(e.range),selectionRange:q(e.selectionRange),tags:e.tags??[],children:(e.children??[]).map(e=>ft(e))}}function $(e){let t=s.languages.SymbolKind;switch(e){case z.File:return t.File;case z.Module:return t.Module;case z.Namespace:return t.Namespace;case z.Package:return t.Package;case z.Class:return t.Class;case z.Method:return t.Method;case z.Property:return t.Property;case z.Field:return t.Field;case z.Constructor:return t.Constructor;case z.Enum:return t.Enum;case z.Interface:return t.Interface;case z.Function:return t.Function;case z.Variable:return t.Variable;case z.Constant:return t.Constant;case z.String:return t.String;case z.Number:return t.Number;case z.Boolean:return t.Boolean;case z.Array:return t.Array}return t.Function}var pt=class{constructor(e){this._worker=e}provideLinks(e,t){let n=e.uri;return this._worker(n).then(e=>e.findDocumentLinks(n.toString())).then(e=>{if(e)return{links:e.map(e=>({range:q(e.range),url:e.target}))}})}},mt=class{constructor(e){this._worker=e}provideDocumentFormattingEdits(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.format(r.toString(),null,gt(t)).then(e=>{if(!(!e||e.length===0))return e.map(J)}))}},ht=class{constructor(e){this._worker=e,this.canFormatMultipleRanges=!1}provideDocumentRangeFormattingEdits(e,t,n,r){let i=e.uri;return this._worker(i).then(e=>e.format(i.toString(),K(t),gt(n)).then(e=>{if(!(!e||e.length===0))return e.map(J)}))}};function gt(e){return{tabSize:e.tabSize,insertSpaces:e.insertSpaces}}var _t=class{constructor(e){this._worker=e}provideDocumentColors(e,t){let n=e.uri;return this._worker(n).then(e=>e.findDocumentColors(n.toString())).then(e=>{if(e)return e.map(e=>({color:e.color,range:q(e.range)}))})}provideColorPresentations(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.getColorPresentations(r.toString(),t.color,K(t.range))).then(e=>{if(e)return e.map(e=>{let t={label:e.label};return e.textEdit&&(t.textEdit=J(e.textEdit)),e.additionalTextEdits&&(t.additionalTextEdits=e.additionalTextEdits.map(J)),t})})}},vt=class{constructor(e){this._worker=e}provideFoldingRanges(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.getFoldingRanges(r.toString(),t)).then(e=>{if(e)return e.map(e=>{let t={start:e.startLine+1,end:e.endLine+1};return e.kind!==void 0&&(t.kind=yt(e.kind)),t})})}};function yt(e){switch(e){case y.Comment:return s.languages.FoldingRangeKind.Comment;case y.Imports:return s.languages.FoldingRangeKind.Imports;case y.Region:return s.languages.FoldingRangeKind.Region}}var bt=class{constructor(e){this._worker=e}provideSelectionRanges(e,t,n){let r=e.uri;return this._worker(r).then(e=>e.getSelectionRanges(r.toString(),t.map(G))).then(e=>{if(e)return e.map(e=>{let t=[];for(;e;)t.push({range:q(e.range)}),e=e.parent;return t})})}};function xt(e){let t=[],n=[],r=new f(e);t.push(r);let i=(...e)=>r.getLanguageServiceWorker(...e);function a(){let{languageId:t,modeConfiguration:r}=e;Ct(n),r.completionItems&&n.push(s.languages.registerCompletionItemProvider(t,new $e(i,[`/`,`-`,`:`]))),r.hovers&&n.push(s.languages.registerHoverProvider(t,new Y(i))),r.documentHighlights&&n.push(s.languages.registerDocumentHighlightProvider(t,new Z(i))),r.definitions&&n.push(s.languages.registerDefinitionProvider(t,new Q(i))),r.references&&n.push(s.languages.registerReferenceProvider(t,new st(i))),r.documentSymbols&&n.push(s.languages.registerDocumentSymbolProvider(t,new ut(i))),r.rename&&n.push(s.languages.registerRenameProvider(t,new ct(i))),r.colors&&n.push(s.languages.registerColorProvider(t,new _t(i))),r.foldingRanges&&n.push(s.languages.registerFoldingRangeProvider(t,new vt(i))),r.diagnostics&&n.push(new W(t,i,e.onDidChange)),r.selectionRanges&&n.push(s.languages.registerSelectionRangeProvider(t,new bt(i))),r.documentFormattingEdits&&n.push(s.languages.registerDocumentFormattingEditProvider(t,new mt(i))),r.documentRangeFormattingEdits&&n.push(s.languages.registerDocumentRangeFormattingEditProvider(t,new ht(i)))}return a(),t.push(St(n)),St(t)}function St(e){return{dispose:()=>Ct(e)}}function Ct(e){for(;e.length;)e.pop().dispose()}export{$e as CompletionAdapter,Q as DefinitionAdapter,W as DiagnosticsAdapter,_t as DocumentColorAdapter,mt as DocumentFormattingEditProvider,Z as DocumentHighlightAdapter,pt as DocumentLinkAdapter,ht as DocumentRangeFormattingEditProvider,ut as DocumentSymbolAdapter,vt as FoldingRangeAdapter,Y as HoverAdapter,st as ReferenceAdapter,ct as RenameAdapter,bt as SelectionRangeAdapter,f as WorkerManager,G as fromPosition,K as fromRange,xt as setupMode,q as toRange,J as toTextEdit};