@loicngr/kobo 2.1.6 → 2.1.7
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.
- package/CHANGELOG.md +5 -0
- package/dist/mcp-server/kobo-tasks-handlers.js +17 -4
- package/dist/mcp-server/kobo-tasks-server.js +14 -2
- package/dist/server/routes/workspaces.js +4 -1
- package/dist/server/services/dev-server-service.js +7 -1
- package/dist/shared/codex-models.js +0 -48
- package/dist/shared/models.js +6 -54
- package/package.json +1 -1
- package/src/client/dist/pwa/assets/ActivityFeed-B8tJgXwD.js +2 -0
- package/src/client/dist/pwa/assets/ActivityFeed-BfMUdSXQ.css +1 -0
- package/src/client/dist/pwa/assets/{ChangelogPage-BXNz7PGb.js → ChangelogPage-YjWYsB_s.js} +1 -1
- package/src/client/dist/pwa/assets/{ComparisonPanel-CfmJHeH_.js → ComparisonPanel-azVvpfGW.js} +1 -1
- package/src/client/dist/pwa/assets/CreatePage-BVNtCTdA.js +2 -0
- package/src/client/dist/pwa/assets/CreatePage-C7fLOpai.css +1 -0
- package/src/client/dist/pwa/assets/{DashboardPage-BKCrV6u0.js → DashboardPage-DydscFLA.js} +1 -1
- package/src/client/dist/pwa/assets/{DiffViewer-BMzrb9fB.js → DiffViewer-DfMqxOYw.js} +3 -3
- package/src/client/dist/pwa/assets/{DocumentsPanel-CqGg38Oi.js → DocumentsPanel-DCGgj9pc.js} +1 -1
- package/src/client/dist/pwa/assets/{DrawerToggleButton-DKytIBlk.js → DrawerToggleButton-CQVSfKpY.js} +1 -1
- package/src/client/dist/pwa/assets/{GitPanel-DRzhrs_V.js → GitPanel-D6ZCZPbj.js} +3 -3
- package/src/client/dist/pwa/assets/{HealthPage-DWotmfkh.js → HealthPage-D_A6DTiH.js} +1 -1
- package/src/client/dist/pwa/assets/{MainLayout-DkSavoiV.css → MainLayout-CFLswVqP.css} +1 -1
- package/src/client/dist/pwa/assets/MainLayout-CeHg73-f.js +2 -0
- package/src/client/dist/pwa/assets/{QBanner-mzrnn82R.js → QBanner-CtppfNDn.js} +1 -1
- package/src/client/dist/pwa/assets/{QBtnDropdown-BGGvQIvH.js → QBtnDropdown-D8I04HPE.js} +1 -1
- package/src/client/dist/pwa/assets/{QChip-Chu7r6RZ.js → QChip-Btg1Lp_6.js} +1 -1
- package/src/client/dist/pwa/assets/{QExpansionItem-C2XXHOHk.js → QExpansionItem-DmzCAbka.js} +1 -1
- package/src/client/dist/pwa/assets/{QItemSection-CR3Kfibl.js → QItemSection-BhGnulVQ.js} +1 -1
- package/src/client/dist/pwa/assets/{QList-DnezW6gW.js → QList-Cw2xs69W.js} +1 -1
- package/src/client/dist/pwa/assets/{QMarkupTable-wuDf50Oh.js → QMarkupTable-Ck2E2TaI.js} +1 -1
- package/src/client/dist/pwa/assets/{QScrollArea-BnmQ9US7.js → QScrollArea-BmBuij9J.js} +1 -1
- package/src/client/dist/pwa/assets/{QSelect-BskTzVCM.js → QSelect-DUuWu79L.js} +1 -1
- package/src/client/dist/pwa/assets/{QTooltip-CO84H0cq.js → QTooltip-Dhy3hNTO.js} +1 -1
- package/src/client/dist/pwa/assets/{SchedulePanel-CPirTYw5.js → SchedulePanel-BCiV6rMr.js} +1 -1
- package/src/client/dist/pwa/assets/{SearchPage-CnT0-Hpe.js → SearchPage-of0gPqV4.js} +1 -1
- package/src/client/dist/pwa/assets/{SettingsPage-DCMZL7GO.js → SettingsPage-BPg3-Lhb.js} +1 -1
- package/src/client/dist/pwa/assets/{SplitWorkspacePage-DwWsD7f5.js → SplitWorkspacePage-BcdPVE9B.js} +1 -1
- package/src/client/dist/pwa/assets/{TerminalPanel-C4dYabx6.js → TerminalPanel-auHWDK9i.js} +1 -1
- package/src/client/dist/pwa/assets/ToolCallItem-BQmqNcfF.js +8 -0
- package/src/client/dist/pwa/assets/{TouchPan-6fI8xFPq.js → TouchPan-DKpZbMAf.js} +1 -1
- package/src/client/dist/pwa/assets/{TourReplayButton-DhbNI6O5.js → TourReplayButton-uCZpvYlj.js} +1 -1
- package/src/client/dist/pwa/assets/{WorkspaceAttentionLabels-CZxW7QSq.js → WorkspaceAttentionLabels-jDKgkf3G.js} +1 -1
- package/src/client/dist/pwa/assets/{WorkspacePage-BnW-gp3u.css → WorkspacePage-Ba0jAHhn.css} +1 -1
- package/src/client/dist/pwa/assets/WorkspacePage-DQ-jvLEj.js +4 -0
- package/src/client/dist/pwa/assets/{browser-CTkGHrN5.js → browser-CU7taghA.js} +1 -1
- package/src/client/dist/pwa/assets/{build-path-tree-Bd50EZMW.js → build-path-tree-fw6KlTB4.js} +1 -1
- package/src/client/dist/pwa/assets/{custom-sounds-DoPDmcY5.js → custom-sounds-Dfi-grUv.js} +1 -1
- package/src/client/dist/pwa/assets/{de-BPtzBQu0.js → de-C_20Oxyv.js} +2 -2
- package/src/client/dist/pwa/assets/{editor.api-CKcTKXcM.js → editor.api-CBaHnF7Q.js} +1 -1
- package/src/client/dist/pwa/assets/{efforts-CDsBbk8o.js → efforts-CNJXztO0.js} +1 -1
- package/src/client/dist/pwa/assets/{es-BoNOfG0w.js → es-B3_j4CWr.js} +2 -2
- package/src/client/dist/pwa/assets/{expand-template-D6zFPzzB.js → expand-template-BtpC0GKE.js} +1 -1
- package/src/client/dist/pwa/assets/{formatters-DCjBZ47F.js → formatters-BZm4POkA.js} +1 -1
- package/src/client/dist/pwa/assets/{fr-Bu92fK5U.js → fr-DbPOG-xd.js} +2 -2
- package/src/client/dist/pwa/assets/{freemarker2-JGUTjYvR.js → freemarker2-BtVwKuc0.js} +1 -1
- package/src/client/dist/pwa/assets/{handlebars-BWStl2Hc.js → handlebars-Bhl5yJrV.js} +1 -1
- package/src/client/dist/pwa/assets/{html-CjGCxUEe.js → html-DKXLlkkM.js} +1 -1
- package/src/client/dist/pwa/assets/i18n-B9eF3pgw.js +1 -0
- package/src/client/dist/pwa/assets/{i18n-DKj-umtn.js → i18n-CPFleoLe.js} +3 -3
- package/src/client/dist/pwa/assets/{index-BPmUmc6D.js → index-BVJWwOvK.js} +2 -2
- package/src/client/dist/pwa/assets/{it-CrA4Q7oc.js → it--6niM3qU.js} +2 -2
- package/src/client/dist/pwa/assets/{javascript-C_jd0j2i.js → javascript-Cdfy_faM.js} +1 -1
- package/src/client/dist/pwa/assets/{latest-request-CBPb8UWQ.js → latest-request-7rgsEfKZ.js} +1 -1
- package/src/client/dist/pwa/assets/{liquid-DMyQVGkp.js → liquid-0NoEATfB.js} +1 -1
- package/src/client/dist/pwa/assets/{mdx-DeW5qzOU.js → mdx-hvP0EAwa.js} +1 -1
- package/src/client/dist/pwa/assets/{monaco.contribution-VUGNbVME.js → monaco.contribution-DRQLCBp8.js} +2 -2
- package/src/client/dist/pwa/assets/{network-auth-CSx0jS5X.js → network-auth-DVXmkvPH.js} +1 -1
- package/src/client/dist/pwa/assets/{notify-theme-uhSG2r09.js → notify-theme-I_sWGwy6.js} +1 -1
- package/src/client/dist/pwa/assets/{permissionModes-Cc5VaOdC.js → permissionModes-BDi77lhg.js} +1 -1
- package/src/client/dist/pwa/assets/{project-color-BQbOnYBN.js → project-color-i2bg2TfP.js} +1 -1
- package/src/client/dist/pwa/assets/{python-C1v3VovI.js → python-Bz-bbYMw.js} +1 -1
- package/src/client/dist/pwa/assets/{razor-DMEmKSdO.js → razor-CyafkF-1.js} +1 -1
- package/src/client/dist/pwa/assets/{typescript-rKyiSQID.js → typescript-BSLweq4l.js} +1 -1
- package/src/client/dist/pwa/assets/{use-checkbox-BqDMQ6x7.js → use-checkbox-BAt9fjK-.js} +1 -1
- package/src/client/dist/pwa/assets/{use-search-index-status-BL3cb04x.js → use-search-index-status-BzsGSHGh.js} +1 -1
- package/src/client/dist/pwa/assets/{use-tours-Dum-bOyQ.js → use-tours-CM4E53aB.js} +1 -1
- package/src/client/dist/pwa/assets/{use-worktree-restore-BQyoz3Qa.js → use-worktree-restore-C__ResAR.js} +1 -1
- package/src/client/dist/pwa/assets/{workspace-templates-YRwFjkUh.js → workspace-templates-TOa0yVyr.js} +1 -1
- package/src/client/dist/pwa/assets/{xml-U_pDcywM.js → xml-DOY7F605.js} +1 -1
- package/src/client/dist/pwa/assets/{yaml-CRCd_ET9.js → yaml-CnWF0ZRJ.js} +1 -1
- package/src/client/dist/pwa/index.html +4 -4
- package/src/client/dist/pwa/sw.js +1 -1
- package/src/mcp-server/kobo-tasks-handlers.ts +24 -9
- package/src/mcp-server/kobo-tasks-server.ts +14 -2
- package/src/client/dist/pwa/assets/ActivityFeed-BO1mKMJ0.js +0 -1
- package/src/client/dist/pwa/assets/ActivityFeed-ZTxXVmNM.css +0 -1
- package/src/client/dist/pwa/assets/CreatePage-6_AP5zso.js +0 -2
- package/src/client/dist/pwa/assets/CreatePage-CMyl2j8Z.css +0 -1
- package/src/client/dist/pwa/assets/MainLayout-fRVZ01LN.js +0 -2
- package/src/client/dist/pwa/assets/ToolCallItem-CjXWiKJc.js +0 -8
- package/src/client/dist/pwa/assets/WorkspacePage-B0wCQdev.js +0 -4
- package/src/client/dist/pwa/assets/i18n-DtmbeJu8.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.agent-error-item[data-v-e98c3c02]{gap:var(--kobo-space-sm);padding:var(--kobo-space-sm) var(--kobo-space-md);border-left:2px solid var(--kobo-danger);background:var(--kobo-surface-2);border-radius:var(--kobo-radius-sm);align-items:flex-start;display:flex}.agent-error-item__icon[data-v-e98c3c02]{color:var(--kobo-danger);flex:none;margin-top:2px}.agent-error-item__body[data-v-e98c3c02]{min-width:0}.agent-error-item__title[data-v-e98c3c02]{color:var(--kobo-text);font-weight:600}.agent-error-item__message[data-v-e98c3c02]{color:var(--kobo-text-2);font-family:var(--kobo-font-mono);white-space:pre-wrap;word-break:break-word;font-size:12px}.markdown-message[data-v-db2fc622]{color:var(--kobo-text-2);word-break:break-word;overflow-wrap:anywhere;min-width:0;max-width:100%;font-size:13px;line-height:1.55}.markdown-message[data-v-db2fc622] *{max-width:100%}.markdown-message[data-v-db2fc622] img{-o-object-fit:contain;object-fit:contain;cursor:zoom-in;background:#0003;border-radius:4px;max-width:180px;max-height:100px;margin:.3em 0;display:block}.markdown-message[data-v-db2fc622] code{word-break:break-all}.markdown-message[data-v-db2fc622] p{margin:0 0 .4em}.markdown-message[data-v-db2fc622] p:last-child{margin-bottom:0}.markdown-message[data-v-db2fc622] code{background:#00000040;border-radius:3px;padding:.1em .3em}.markdown-message[data-v-db2fc622] h1,.markdown-message[data-v-db2fc622] h2,.markdown-message[data-v-db2fc622] h3,.markdown-message[data-v-db2fc622] h4,.markdown-message[data-v-db2fc622] h5,.markdown-message[data-v-db2fc622] h6{margin:.4em 0 .25em;font-weight:600;line-height:1.3}.markdown-message[data-v-db2fc622] h1{font-size:1.25em}.markdown-message[data-v-db2fc622] h2{font-size:1.15em}.markdown-message[data-v-db2fc622] h3{font-size:1.08em}.markdown-message[data-v-db2fc622] h4,.markdown-message[data-v-db2fc622] h5,.markdown-message[data-v-db2fc622] h6{font-size:1em}.markdown-user-prompt[data-v-db2fc622]{color:var(--kobo-text-2);font-size:12px;font-style:italic}.markdown-user-prompt[data-v-db2fc622] p{margin:0 0 .4em}.markdown-user-prompt[data-v-db2fc622] code{background:#ffffff14;border-radius:3px;padding:.1em .3em;font-style:normal}.image-lightbox-img{-o-object-fit:contain;object-fit:contain;cursor:zoom-out;background:#0000004d;border-radius:4px;max-width:92vw;max-height:92vh;display:block}.turn-card[data-v-a8a6fa27]{border:1px solid #ffffff14;border-left:3px solid var(--turn-accent);background:#ffffff05;border-radius:6px;min-width:0;max-width:100%;margin:14px 0;overflow:hidden}.turn-card--highlighted[data-v-a8a6fa27]{animation:1.8s ease-out search-highlight-a8a6fa27}@keyframes search-highlight-a8a6fa27{0%,45%{box-shadow:0 0 0 2px #818cf8f2,0 0 22px #818cf873}to{box-shadow:none}}.turn-header[data-v-a8a6fa27]{color:var(--kobo-text-3);background:#ffffff08;border-bottom:1px solid #ffffff0d;align-items:center;gap:8px;padding:8px 14px;font-size:11px;display:flex}.turn-badge[data-v-a8a6fa27]{letter-spacing:.3px;border-radius:3px;padding:2px 8px;font-size:11px;font-weight:700}.turn-badge-user[data-v-a8a6fa27]{color:var(--kobo-turn-user);background:#ce93d826}.turn-badge-agent[data-v-a8a6fa27]{color:var(--kobo-turn-agent);background:#7986cb26}.turn-badge-system[data-v-a8a6fa27]{color:var(--kobo-text-2);background:#75757533;font-style:italic}.turn-badge-session[data-v-a8a6fa27]{color:var(--kobo-text-3);background:#61616133}.turn-badge-script[data-v-a8a6fa27]{color:var(--kobo-success);background:#4db6ac26}.turn-time[data-v-a8a6fa27]{color:var(--kobo-text-disabled);font-family:var(--kobo-font-mono);font-size:11px}.turn-time-arrow[data-v-a8a6fa27]{opacity:.7;margin:0 -2px}.turn-time-updated[data-v-a8a6fa27]{color:var(--kobo-text-3)}.turn-actions[data-v-a8a6fa27]{color:var(--kobo-text-3);font-size:11px}.turn-body[data-v-a8a6fa27]{flex-direction:column;gap:12px;min-width:0;padding:14px 18px;display:flex}.turn-body[data-v-a8a6fa27]>*{min-width:0;max-width:100%}.turn-body[data-v-a8a6fa27] .tool-row+.tool-row{margin-top:-8px}.turn-scroll-top[data-v-a8a6fa27]{justify-content:flex-start;padding:0 8px 6px;display:flex}.turn-scroll-top-btn[data-v-a8a6fa27]{opacity:.5;transition:opacity .15s}.turn-scroll-top-btn[data-v-a8a6fa27]:hover{opacity:1}.activity-feed-wrap[data-v-f3878c46]{flex-direction:column;width:100%;height:100%;display:flex;position:relative}.activity-feed-scroll[data-v-f3878c46]{flex:1;width:100%;height:100%;min-height:0}.activity-feed-nav-cluster[data-v-f3878c46]{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;bottom:14px;right:14px}.activity-feed-compacting[data-v-f3878c46]{z-index:3;background:var(--kobo-surface);border:1px solid var(--kobo-border);border-radius:6px;align-items:center;gap:8px;padding:6px 14px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000059}.fade-enter-active[data-v-f3878c46],.fade-leave-active[data-v-f3878c46]{transition:opacity .16s}.fade-enter-from[data-v-f3878c46],.fade-leave-to[data-v-f3878c46]{opacity:0}.activity-feed-nav-btn[data-v-f3878c46]{opacity:.8;transition:opacity .12s}.activity-feed-nav-btn[data-v-f3878c46]:hover{opacity:1}.activity-feed-scroll[data-v-f3878c46] .q-scrollarea__content{max-width:100%;overflow-x:hidden}.activity-feed-switching[data-v-f3878c46]{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.activity-feed-empty[data-v-f3878c46]{align-items:center;gap:var(--kobo-space-sm);padding:var(--kobo-space-4xl) var(--kobo-space-xl);color:var(--kobo-text-3);text-align:center;flex-direction:column;display:flex}.activity-feed-empty__title[data-v-f3878c46]{font-family:var(--kobo-font-sans);color:var(--kobo-text-2);font-size:14px;font-weight:500}.activity-feed-empty__hint[data-v-f3878c46]{font-family:var(--kobo-font-sans);color:var(--kobo-text-3);max-width:380px;font-size:13px}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{M as e,ct as t,dt as n,g as r,st as i,v as a}from"./reactivity.esm-bundler-tuEvQ47f.js";import{B as o,F as s,J as c,L as l,O as u,P as ee,S as d,Y as f,_ as p,d as m,f as h,g,j as te,l as _,p as v,r as y,u as b,y as x,z as ne}from"./runtime-core.esm-bundler-DOiZcasU.js";import{T as S,b as C,l as w,lt as T,mt as E,pt as D,t as O}from"./QBtn-b_baQtAt.js";import{c as re,l as ie,o as ae,r as oe}from"./latest-request-CBPb8UWQ.js";import{a as se}from"./i18n-DKj-umtn.js";import{Ct as ce,Jt as k,Kt as le,O as ue,S as A,St as de,a as fe,c as pe,d as me,gt as he,ht as ge,i as j,jt as _e,nt as ve,o as ye,p as be,r as xe,s as M,v as Se}from"./index-BPmUmc6D.js";import{t as Ce}from"./QSpinnerDots-BsKmccpX.js";import{t as we}from"./QList-DnezW6gW.js";import{n as Te,s as N,t as P}from"./QSelect-BskTzVCM.js";import{n as Ee,t as F}from"./QItemSection-CR3Kfibl.js";import{t as De}from"./QExpansionItem-C2XXHOHk.js";import{a as Oe,i as ke,n as Ae}from"./use-tours-Dum-bOyQ.js";import{t as je}from"./QTooltip-CO84H0cq.js";import{t as Me}from"./QBadge-rGILsUYl.js";import{t as Ne}from"./QChip-Chu7r6RZ.js";import{t as Pe}from"./QBtnToggle-COL46j6W.js";import{i as Fe,r as Ie,t as Le}from"./permissionModes-Cc5VaOdC.js";import{t as Re}from"./efforts-CDsBbk8o.js";import{t as ze}from"./QBanner-mzrnn82R.js";import{i as Be}from"./project-color-BQbOnYBN.js";import{t as Ve}from"./QPage-BCDXjfVj.js";import{t as He}from"./DrawerToggleButton-DKytIBlk.js";import{t as Ue}from"./TourReplayButton-DhbNI6O5.js";import{a as We,c as I,d as Ge,i as Ke,l as qe,n as Je,o as Ye,r as Xe,s as L,t as Ze,u as Qe}from"./expand-template-D6zFPzzB.js";import{n as $e,t as et}from"./workspace-templates-YRwFjkUh.js";var tt={class:`creation-attachments__toolbar`},nt=[`accept`,`disabled`],rt={class:`creation-attachments__hint`},it={key:0,class:`creation-attachments__error`,role:`alert`},at={key:1,class:`creation-attachments__list`},R=[`src`,`alt`],z=[`title`],ot=Oe(x({__name:`CreationAttachments`,props:{modelValue:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(t,{emit:r}){let i=t,u=r,ee=a(null),d=a(null),te=a([]),_=new Map;c(()=>i.modelValue,e=>{for(let[t,n]of _)e.includes(t)||(URL.revokeObjectURL(n),_.delete(t));te.value=e.map(e=>{if(Qe(e)?.kind!==`image`)return{file:e,url:null};let t=_.get(e);return t||(t=URL.createObjectURL(e),_.set(e,t)),{file:e,url:t}})},{immediate:!0}),s(()=>{for(let e of _.values())URL.revokeObjectURL(e)});function x(e){if(i.disabled||e.length===0)return;let t=[...new Set([...i.modelValue,...e])];d.value=Ge(t),d.value||u(`update:modelValue`,t)}function S(e){i.disabled||(d.value=null,u(`update:modelValue`,i.modelValue.filter((t,n)=>n!==e)))}function C(e){let t=e.target;x(Array.from(t.files??[])),t.value=``}function T(e){let t=e.clipboardData;if(!t)return;let n=Array.from(t.items??[]).filter(e=>e.kind===`file`).map(e=>e.getAsFile()).filter(e=>e!==null);n.length!==0&&(t.getData(`text/plain`)||e.preventDefault(),x(n))}function E(e){e.dataTransfer?.types.includes(`Files`)&&e.preventDefault()}function D(e){let t=Array.from(e.dataTransfer?.files??[]);t.length!==0&&(e.preventDefault(),x(t))}return(r,i)=>(l(),v(`div`,{class:`creation-attachments`,onPaste:T,onDragover:E,onDrop:D},[o(r.$slots,`default`,{},void 0,!0),b(`div`,tt,[b(`input`,{ref_key:`fileInput`,ref:ee,class:`hidden`,type:`file`,accept:e(L),multiple:``,disabled:t.disabled,onChange:C},null,40,nt),p(O,{flat:``,dense:``,icon:`attach_file`,label:r.$t(`attachments.add`),disable:t.disabled,onClick:i[0]||=e=>ee.value?.click()},null,8,[`label`,`disable`]),b(`span`,rt,n(r.$t(`attachments.hint`,{count:e(10),size:e(qe)/1024/1024,total:e(I)/1024/1024})),1)]),d.value?(l(),v(`p`,it,n(r.$t(`attachments.error.${d.value}`)),1)):h(``,!0),te.value.length?(l(),v(`ul`,at,[(l(!0),v(y,null,ne(te.value,(e,i)=>(l(),v(`li`,{key:e.url??i,class:`creation-attachments__item`},[e.url?(l(),v(`img`,{key:0,src:e.url,alt:e.file.name,class:`creation-attachments__preview`},null,8,R)):(l(),m(w,{key:1,name:e.file.name.toLowerCase().endsWith(`.pdf`)?`picture_as_pdf`:`description`,class:`creation-attachments__preview`,"aria-hidden":`true`},null,8,[`name`])),b(`span`,{class:`creation-attachments__name`,title:e.file.name},n(e.file.name),9,z),p(O,{flat:``,dense:``,icon:`close`,"aria-label":r.$t(`attachments.remove`),disable:t.disabled,onClick:e=>S(i)},{default:f(()=>[p(je,null,{default:f(()=>[g(n(r.$t(`attachments.remove`)),1)]),_:1})]),_:1},8,[`aria-label`,`disable`,`onClick`])]))),128))])):h(``,!0)],32))}}),[[`__scopeId`,`data-v-8c2d648c`]]),B=new Set([`path-occupied`,`worktree-other-branch`]);function st(e){if(e.blockers.filter(e=>!B.has(e.kind)).length>0)return[{id:`blocked`,blocking:!0,titleKey:`prCheckout.step.blocked`}];let t=[];return e.blockers.some(e=>B.has(e.kind))&&t.push({id:`path`,blocking:!1,titleKey:`prCheckout.step.path`}),e.workspace.state!==`none`&&t.push({id:`workspace`,blocking:!1,titleKey:`prCheckout.step.workspace`}),e.workspace.state!==`purged`&&(e.worktree.state===`orphan`||e.worktree.state===`attached`)&&t.push({id:`worktree`,blocking:!1,titleKey:`prCheckout.step.worktree`}),e.ongoingOperation&&t.push({id:`operation`,blocking:!1,titleKey:`prCheckout.step.operation`}),e.localChanges.present&&t.push({id:`changes`,blocking:!1,titleKey:`prCheckout.step.changes`}),(e.branch.state===`behind`||e.branch.state===`ahead`||e.branch.state===`diverged`)&&t.push({id:`divergence`,blocking:!1,titleKey:`prCheckout.step.divergence`}),t}function V(e){let t={};return e.workspace.state===`active`&&(t.existingWorkspace=`open`),e.workspace.state===`archived`&&(t.archivedWorkspace=`unarchive`),e.workspace.state===`purged`&&(t.purgedWorktree=`restore`),e.workspace.state!==`purged`&&e.worktree.state===`orphan`&&(t.orphanWorktree=`attach`),e.ongoingOperation&&(t.ongoingOperation=`cancel`),e.localChanges.present&&(t.localChanges=`keep`),e.branch.state===`behind`?t.divergence=`fast-forward`:(e.branch.state===`ahead`||e.branch.state===`diverged`)&&(t.divergence=`keep`),t}function ct(e,t){return(e.worktree.state===`orphan`||e.worktree.state===`attached`)&&t.orphanWorktree===`create-elsewhere`?`prCheckout.worktree.branchInUse`:e.localChanges.present&&(t.localChanges??`keep`)===`keep`&&t.divergence===`reset-hard`?`prCheckout.changes.keepResetConflict`:null}var H={class:`text-subtitle1 text-kobo-1`},U={key:0,class:`text-negative q-pa-md`,role:`alert`},W={class:`text-body2 text-kobo-1`},lt={key:0,class:`text-negative q-pa-md`,role:`alert`},ut={class:`text-caption text-warning`},dt={class:`text-caption text-negative`},G={class:`text-caption text-kobo-3 q-mb-sm`},ft={class:`text-caption text-kobo-3 q-mb-sm`},K={class:`text-caption text-kobo-3`},q={class:`text-caption text-kobo-3 q-mb-sm`},pt={class:`text-caption text-kobo-3 q-mb-sm`},mt={class:`text-caption text-kobo-3 q-mb-sm`},ht={key:4,class:`text-negative q-pa-md`,role:`alert`},gt=3,_t=x({__name:`PrCheckoutStepper`,props:{modelValue:{type:Boolean},projectPath:{},pr:{}},emits:[`update:modelValue`,`resolved`,`openWorkspace`],setup(e,{emit:t}){let i=e,o=t,{t:s}=se(),u=a(!1),ee=a(!1),d=a(null),g=a(!1),x=a(null),C=a(null),w=a(``),T=a([]),E=r({}),D=a(0),re=a(``),ie=a(0);function oe(){u.value=!1,ee.value=!1,d.value=null,g.value=!1,x.value=null,C.value=null,w.value=``,T.value=[],D.value=0,re.value=``,ie.value=0;for(let e of Object.keys(E))delete E[e]}function ue(e,t,n){x.value=e,t&&(C.value=t),w.value=n,T.value=st(e);let r=V(e);for(let e of Object.keys(E))delete E[e];Object.assign(E,r),re.value=``,D.value=0}let A=null;async function fe(){A?.abort();let e=new AbortController;A=e,u.value=!0,d.value=null;try{let t=await(await ae(`/api/pull-requests/diagnose`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({projectPath:i.projectPath,prNumber:i.pr.number}),signal:e.signal})).json();ue(t.report,t.pr,t.fingerprint),T.value.length===0&&N()}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;d.value=e instanceof Error?e.message:s(`prCheckout.diagnoseFailed`)}finally{A===e&&(u.value=!1)}}async function pe(){ie.value=0,await fe()}let he=_(()=>x.value?.blockers.some(e=>e.kind===`index-lock`)??!1),ge=_(()=>{let e=x.value?.worktree;return e&&e.state!==`none`?e.path:``}),j=_(()=>x.value?ct(x.value,E):null),ve=_(()=>T.value.some(e=>e.id===`path`)&&!E.pathCollision),ye={"forge-unavailable":`prCheckout.blocked.forgeUnavailable`,"fork-pr":`prCheckout.blocked.forkPr`,"head-branch-deleted":`prCheckout.blocked.headBranchDeleted`,"index-lock":`prCheckout.blocked.indexLock`,"path-occupied":`prCheckout.blocked.pathOccupied`,"worktree-other-branch":`prCheckout.blocked.worktreeOtherBranch`,"no-common-ancestor":`prCheckout.blocked.noCommonAncestor`},be=_(()=>{let e=(x.value?.blockers??[])[0];return e?ye[e.kind]??`prCheckout.step.blocked`:`prCheckout.step.blocked`}),xe=_(()=>{switch(x.value?.branch.state){case`behind`:return`prCheckout.divergence.behindHint`;case`ahead`:return`prCheckout.divergence.aheadHint`;case`diverged`:return`prCheckout.divergence.divergedHint`;default:return`prCheckout.step.divergence`}}),Se=_(()=>{let e=x.value?.branch.state;return e===`behind`?[{label:s(`prCheckout.divergence.fastForward`),value:`fast-forward`},{label:s(`prCheckout.divergence.keep`),value:`keep`}]:e===`diverged`?[{label:s(`prCheckout.divergence.rebase`),value:`rebase`},{label:s(`prCheckout.divergence.resetHard`),value:`reset-hard`},{label:s(`prCheckout.divergence.keep`),value:`keep`}]:[{label:s(`prCheckout.divergence.keep`),value:`keep`}]});function Ce(e){let t=typeof e==`string`?e.trim():``;t?E.pathCollision={worktreePath:t}:delete E.pathCollision}function we(){o(`update:modelValue`,!1)}function Te(e){o(`update:modelValue`,e)}async function N(){d.value=null;let e=x.value;if(e&&!j.value){if(E.existingWorkspace===`open`&&e.workspace.state===`active`){o(`openWorkspace`,e.workspace.id),we();return}if(E.archivedWorkspace===`unarchive`&&e.workspace.state===`archived`){o(`openWorkspace`,e.workspace.id),we();return}if(E.ongoingOperation===`cancel`){we();return}if(E.purgedWorktree===`restore`&&e.workspace.state===`purged`){d.value=s(`prCheckout.workspace.restoreNotAvailable`);return}ee.value=!0;try{let e=await ae(`/api/pull-requests/resolve`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({projectPath:i.projectPath,prNumber:i.pr.number,headBranch:C.value?.headBranch??i.pr.headBranch,baseBranch:C.value?.baseBranch??i.pr.baseBranch,decisions:E,fingerprint:w.value})}),t=await e.json().catch(()=>null);if(e.status===409){if(ie.value+=1,ie.value>gt){d.value=s(`prCheckout.staleRetriesExhausted`);return}g.value=!0,await fe();return}if(!e.ok){d.value=t?.error??`HTTP ${e.status}`;return}g.value=!1,o(`resolved`,t),we()}catch(e){d.value=e instanceof Error?e.message:s(`prCheckout.resolveFailed`)}finally{ee.value=!1}}}return c(()=>i.modelValue,e=>{e?(oe(),fe()):A?.abort()},{immediate:!0}),te(()=>{A?.abort()}),(t,r)=>(l(),m(_e,{"model-value":e.modelValue,persistent:``,"onUpdate:modelValue":Te},{default:f(()=>[p(le,{dark:``,style:{"min-width":`560px`,"max-width":`720px`,width:`100%`}},{default:f(()=>[p(k,null,{default:f(()=>[b(`div`,H,n(t.$t(`prCheckout.title`)),1)]),_:1}),j.value?(l(),v(`div`,U,n(t.$t(j.value)),1)):h(``,!0),p(me,{dark:``}),u.value||x.value&&T.value.length===0?(l(),m(k,{key:1,class:`row justify-center q-pa-xl`},{default:f(()=>[p(S,{color:`primary`,size:`var(--kobo-space-2xl)`})]),_:1})):x.value&&T.value.length>0&&T.value[0].id===`blocked`?(l(),v(y,{key:2},[p(k,{class:`column q-gutter-y-sm`},{default:f(()=>[b(`div`,W,n(t.$t(be.value)),1)]),_:1}),j.value?(l(),v(`div`,lt,n(t.$t(j.value)),1)):h(``,!0),p(me,{dark:``}),p(de,{align:`right`,class:`q-pa-md`},{default:f(()=>[he.value?(l(),m(O,{key:0,flat:``,"no-caps":``,label:t.$t(`prCheckout.retry`),color:`kobo-2`,loading:u.value,onClick:pe},null,8,[`label`,`loading`])):h(``,!0),p(O,{flat:``,"no-caps":``,label:t.$t(`prCheckout.cancel`),color:`kobo-2`,onClick:we},null,8,[`label`])]),_:1})],64)):x.value&&T.value.length>0?(l(),v(y,{key:3},[g.value?(l(),m(k,{key:0,class:`q-pb-none`},{default:f(()=>[b(`div`,ut,n(t.$t(`prCheckout.staleReloaded`)),1)]),_:1})):h(``,!0),d.value?(l(),m(k,{key:1,class:`q-pb-none`},{default:f(()=>[b(`div`,dt,n(d.value),1)]),_:1})):h(``,!0),p(k,null,{default:f(()=>[p(We,{modelValue:D.value,"onUpdate:modelValue":r[8]||=e=>D.value=e,flat:``,dark:``,animated:``,"header-nav":``,color:`primary`,class:`bg-transparent`},{default:f(()=>[(l(!0),v(y,null,ne(T.value,(e,i)=>(l(),m(Ye,{key:e.id,name:i,title:t.$t(e.titleKey),done:i<D.value},{default:f(()=>[e.id===`workspace`?(l(),v(y,{key:0},[b(`div`,G,n(t.$t(`prCheckout.workspace.activeHint`)),1),x.value.workspace.state===`active`?(l(),m(M,{key:0,modelValue:E.existingWorkspace,"onUpdate:modelValue":r[0]||=e=>E.existingWorkspace=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.workspace.open`),value:`open`},{label:t.$t(`prCheckout.workspace.continue`),value:`continue`}]},null,8,[`modelValue`,`options`])):x.value.workspace.state===`archived`?(l(),m(M,{key:1,modelValue:E.archivedWorkspace,"onUpdate:modelValue":r[1]||=e=>E.archivedWorkspace=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.workspace.unarchive`),value:`unarchive`},{label:t.$t(`prCheckout.workspace.continue`),value:`continue`}]},null,8,[`modelValue`,`options`])):x.value.workspace.state===`purged`?(l(),m(M,{key:2,modelValue:E.purgedWorktree,"onUpdate:modelValue":r[2]||=e=>E.purgedWorktree=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.workspace.restore`),value:`restore`}]},null,8,[`modelValue`,`options`])):h(``,!0)],64)):e.id===`worktree`?(l(),v(y,{key:1},[b(`div`,ft,n(t.$t(`prCheckout.worktree.orphanHint`,{path:ge.value})),1),p(M,{modelValue:E.orphanWorktree,"onUpdate:modelValue":r[3]||=e=>E.orphanWorktree=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.worktree.attach`),value:`attach`},{label:t.$t(`prCheckout.worktree.createElsewhere`),value:`create-elsewhere`,disable:!0}]},null,8,[`modelValue`,`options`]),b(`div`,K,n(t.$t(`prCheckout.worktree.branchInUse`)),1)],64)):e.id===`path`?(l(),m(ce,{key:2,modelValue:re.value,"onUpdate:modelValue":[r[4]||=e=>re.value=e,Ce],dark:``,dense:``,outlined:``,label:t.$t(`prCheckout.step.path`),error:ve.value,"error-message":t.$t(`prCheckout.path.required`)},null,8,[`modelValue`,`label`,`error`,`error-message`])):e.id===`operation`?(l(),v(y,{key:3},[b(`div`,q,n(t.$t(`prCheckout.operation.hint`)),1),p(M,{modelValue:E.ongoingOperation,"onUpdate:modelValue":r[5]||=e=>E.ongoingOperation=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.operation.abort`),value:`abort`},{label:t.$t(`prCheckout.operation.cancel`),value:`cancel`}]},null,8,[`modelValue`,`options`])],64)):e.id===`changes`?(l(),v(y,{key:4},[b(`div`,pt,n(t.$t(`prCheckout.changes.hint`)),1),p(M,{modelValue:E.localChanges,"onUpdate:modelValue":r[6]||=e=>E.localChanges=e,dark:``,color:`primary`,options:[{label:t.$t(`prCheckout.changes.stash`),value:`stash`},{label:t.$t(`prCheckout.changes.commit`),value:`commit`},{label:t.$t(`prCheckout.changes.discard`),value:`discard`},{label:t.$t(`prCheckout.changes.keep`),value:`keep`}]},null,8,[`modelValue`,`options`])],64)):e.id===`divergence`?(l(),v(y,{key:5},[b(`div`,mt,n(t.$t(xe.value)),1),p(M,{modelValue:E.divergence,"onUpdate:modelValue":r[7]||=e=>E.divergence=e,dark:``,color:`primary`,options:Se.value},null,8,[`modelValue`,`options`])],64)):h(``,!0)]),_:2},1032,[`name`,`title`,`done`]))),128))]),_:1},8,[`modelValue`])]),_:1})],64)):h(``,!0),j.value?(l(),v(`div`,ht,n(t.$t(j.value)),1)):h(``,!0),p(me,{dark:``}),x.value&&T.value.length>0&&T.value[0].id!==`blocked`?(l(),m(de,{key:5,align:`right`,class:`q-pa-md`},{default:f(()=>[p(O,{flat:``,"no-caps":``,label:t.$t(`prCheckout.cancel`),color:`kobo-2`,disable:ee.value,onClick:we},null,8,[`label`,`disable`]),p(O,{unelevated:``,"no-caps":``,label:t.$t(`prCheckout.apply`),color:`primary`,loading:ee.value,disable:ve.value||!!j.value,onClick:N},null,8,[`label`,`loading`,`disable`])]),_:1})):h(``,!0)]),_:1})]),_:1},8,[`model-value`]))}}),vt={class:`text-subtitle1 text-kobo-1`},yt={key:0,class:`text-caption text-negative q-pa-md`},bt={class:`text-kobo-3`,style:{"font-family":`var(--kobo-font-mono)`,"font-size":`var(--kobo-space-md)`}},xt={class:`text-kobo-1 ellipsis`},St={style:{"font-family":`var(--kobo-font-mono)`}},Ct={style:{"font-family":`var(--kobo-font-mono)`}},wt={key:2,class:`text-caption text-kobo-3 q-pa-md`},Tt={key:3,class:`row justify-center q-pa-md`},Et={key:4,class:`row justify-center q-pa-md`},Dt=3,Ot=Oe(x({__name:`PrPickerDialog`,props:{modelValue:{type:Boolean},projectPath:{}},emits:[`update:modelValue`,`select`],setup(e,{emit:t}){let i=e,o=t,{t:s}=se(),u=[{label:s(`prPicker.filterAll`),value:`all`},{label:s(`prPicker.filterMine`),value:`mine`},{label:s(`prPicker.filterReviewRequested`),value:`review-requested`}],ee=a(null),d=a([]),_=a(null),x=a(`all`),C=a(``),T=a(!1),E=a(null),D=r({});function re(e){return e.workspace.state===`none`?e.worktree.state===`orphan`?`prPicker.badge.worktreePresent`:e.branch.state===`absent`?`prPicker.badge.new`:`prPicker.badge.localBranch`:`prPicker.badge.workspaceExists`}function ie(e){let t=D[e];return t?re(t):null}let oe=new Map,ue=0,A=[];function fe(){for(;ue<Dt&&A.length>0;){let e=A.shift();e!==void 0&&D[e]===null&&(ue+=1,he(e).finally(()=>{--ue,fe()}))}}function pe(e){D[e]=null,A.push(e),fe()}async function he(e){let t=new AbortController;oe.set(e,t);try{let n=await ae(`/api/pull-requests/diagnose`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({projectPath:i.projectPath,prNumber:e}),signal:t.signal});if(!n.ok)return;let r=await n.json();D[e]=r.report}catch(t){t instanceof DOMException&&t.name===`AbortError`&&delete D[e]}finally{oe.delete(e)}}function ge(){for(let e of oe.values())e.abort();oe.clear(),A.length=0,ue=0}let j=null;function ve(){return j||(j=new IntersectionObserver(e=>{for(let t of e){if(!t.isIntersecting)continue;let e=Number(t.target.dataset.prNumber);j?.unobserve(t.target),Number.isFinite(e)&&D[e]===void 0&&pe(e)}},{root:ee.value?.$el??null,rootMargin:`50px`}),j)}function ye(e,t){let n=e?.$el??e;n&&n instanceof HTMLElement&&(n.dataset.prNumber=String(t),ve().observe(n))}function be(){xe?.abort(),ge()}te(()=>{be(),j?.disconnect(),j=null});let xe=null;async function M(e){xe?.abort();let t=new AbortController;xe=t,T.value=!0,E.value=null;try{let n=new URLSearchParams({projectPath:i.projectPath,filter:x.value,search:C.value,perPage:`25`});e&&n.set(`cursor`,e);let r=await ae(`/api/pull-requests?${n.toString()}`,{signal:t.signal}),a=await r.json().catch(()=>null);if(!r.ok)throw Error(a?.error??`HTTP ${r.status}`);let o=a;e?d.value=[...d.value,...o.items]:d.value=o.items,_.value=o.nextCursor}catch(e){if(e instanceof DOMException&&e.name===`AbortError`)return;E.value=e instanceof Error?e.message:s(`prPicker.loadFailed`)}finally{xe===t&&(T.value=!1)}}function Se(){d.value=[],_.value=null,M(null)}function Ce(){_.value!==null&&M(_.value)}function Te(e){e.isFork||(o(`select`,e),o(`update:modelValue`,!1))}return c(()=>i.modelValue,e=>{e?(x.value=`all`,C.value=``,Se()):be()}),c(x,()=>{i.modelValue&&Se()}),c(C,()=>{i.modelValue&&Se()}),(t,r)=>(l(),m(_e,{"model-value":e.modelValue,"onUpdate:modelValue":r[3]||=e=>o(`update:modelValue`,e)},{default:f(()=>[p(le,{dark:``,style:{"min-width":`560px`,"max-width":`720px`,width:`100%`}},{default:f(()=>[p(k,null,{default:f(()=>[b(`div`,vt,n(t.$t(`prPicker.title`)),1)]),_:1}),p(me,{dark:``}),p(k,{class:`column q-gutter-y-md`},{default:f(()=>[p(Pe,{modelValue:x.value,"onUpdate:modelValue":r[0]||=e=>x.value=e,spread:``,"no-caps":``,unelevated:``,"toggle-color":`primary`,color:`kobo-surface-2`,"text-color":`kobo-2`,options:u},null,8,[`modelValue`]),p(ce,{modelValue:C.value,"onUpdate:modelValue":r[1]||=e=>C.value=e,dense:``,dark:``,outlined:``,debounce:`300`,clearable:``,placeholder:t.$t(`prPicker.searchPlaceholder`)},{prepend:f(()=>[p(w,{name:`search`,size:`18px`})]),_:1},8,[`modelValue`,`placeholder`])]),_:1}),p(me,{dark:``}),p(k,{class:`pr-picker__list-section`,ref_key:`listSectionEl`,ref:ee},{default:f(()=>[E.value?(l(),v(`div`,yt,n(E.value),1)):d.value.length>0?(l(),m(we,{key:1,dark:``,class:`pr-picker__list`},{default:f(()=>[(l(!0),v(y,null,ne(d.value,e=>(l(),m(Ee,{key:e.number,clickable:``,disable:e.isFork,class:`pr-picker__item`,ref_for:!0,ref:t=>ye(t,e.number),onClick:t=>Te(e)},{default:f(()=>[p(F,null,{default:f(()=>[p(N,{class:`row items-center q-gutter-x-xs no-wrap`},{default:f(()=>[b(`span`,bt,`#`+n(e.number),1),b(`span`,xt,n(e.title),1),e.ci===`SUCCESS`?(l(),m(w,{key:0,name:`check_circle`,color:`positive`,size:`14px`})):e.ci===`FAILURE`?(l(),m(w,{key:1,name:`cancel`,color:`negative`,size:`14px`})):h(``,!0),e.isDraft?(l(),m(Me,{key:2,color:`kobo-hover`,"text-color":`kobo-2`,label:t.$t(`prPicker.badge.draft`)},null,8,[`label`])):h(``,!0),ie(e.number)?(l(),m(Me,{key:3,color:`kobo-surface-2`,"text-color":`kobo-2`,label:t.$t(ie(e.number))},null,8,[`label`])):h(``,!0)]),_:2},1024),p(N,{caption:``,class:`text-kobo-3`},{default:f(()=>[g(` @`+n(e.author)+` · `,1),b(`span`,St,n(e.headBranch),1),p(w,{name:`arrow_forward`,size:`11px`,class:`q-mx-xs`}),b(`span`,Ct,n(e.baseBranch),1)]),_:2},1024)]),_:2},1024),e.isFork?(l(),m(je,{key:0},{default:f(()=>[g(n(t.$t(`prPicker.forkNotSupported`)),1)]),_:1})):h(``,!0)]),_:2},1032,[`disable`,`onClick`]))),128))]),_:1})):T.value?h(``,!0):(l(),v(`div`,wt,n(t.$t(`prPicker.empty`)),1)),T.value?(l(),v(`div`,Tt,[p(S,{color:`primary`,size:`var(--kobo-space-2xl)`})])):h(``,!0),!T.value&&_.value!==null?(l(),v(`div`,Et,[p(O,{flat:``,"no-caps":``,label:t.$t(`prPicker.loadMore`),color:`kobo-2`,onClick:Ce},null,8,[`label`])])):h(``,!0)]),_:1},512),p(de,{align:`right`,class:`q-pa-md`},{default:f(()=>[p(O,{flat:``,"no-caps":``,label:t.$t(`common.cancel`),color:`kobo-2`,onClick:r[2]||=e=>o(`update:modelValue`,!1)},null,8,[`label`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),[[`__scopeId`,`data-v-6bce7dc6`]]);function kt(e){let t=[],n=e.skipSetupScript;e.useExistingWorktree&&!e.prCheckout&&!n&&(n=!0,t.push(`setup-script-forced`));let r=e.agentPermissionMode;return{skipSetupScript:n,agentPermissionMode:r,applied:t}}var At=`kobo:create-page-prefs`;function jt(){try{let e=localStorage.getItem(At);return e===null?void 0:JSON.parse(e)}catch{return}}function Mt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Nt(){let e=jt();if(!Mt(e))return{};let t={};if(typeof e.projectPath==`string`&&e.projectPath.length>0&&(t.projectPath=e.projectPath),typeof e.autoLoop==`boolean`&&(t.autoLoop=e.autoLoop),(e.autoLoopSessionMode===`per_task`||e.autoLoopSessionMode===`continuous`)&&(t.autoLoopSessionMode=e.autoLoopSessionMode),typeof e.brainstormModel==`string`&&e.brainstormModel.length>0&&(t.brainstormModel=e.brainstormModel),Mt(e.reasoningEffortByModel)){let n=Object.entries(e.reasoningEffortByModel).filter(([e,t])=>e.length>0&&typeof t==`string`&&t.length>0);t.reasoningEffortByModel=Object.fromEntries(n)}return t}function Pt(e){try{localStorage.setItem(At,JSON.stringify(e))}catch{}}var Ft=200;function It(e){if(e.length<=Ft)return e;let t=e.slice(0,199),n=t.charCodeAt(t.length-1);return n>=55296&&n<=56319&&(t=t.slice(0,-1)),`${t}…`}function Lt(e,t,n,r){let i=(e,t)=>!e.trim()||e===t,a=i(t.name,r?.name)?It(e.title):t.name,o=t.description;if(i(o,r?.description)){o=n(`createPage.prResumeIntro`,{number:e.number,title:e.title,url:e.url});let t=e.body?.trim()??``;t&&(o+=`\n\n${t}`)}return{name:a,description:o}}function Rt(e){let t=e[0];if(!t)return null;let n=e[1];return n?{name:`split`,query:A(t.id,n.id)}:{name:`workspace`,params:{id:t.id}}}var zt=[`projectPath`,`sourceBranch`,`branchType`,`engine`,`model`,`reasoningEffort`,`brainstormModel`,`brainstormReasoningEffort`,`description`];function Bt(e){let t={};for(let n of zt){let r=e[n].trim();r&&(t[n]=r)}return t.agentPermissionMode=e.agentPermissionMode,t.autoLoop=e.autoLoop,t.autoLoopSessionMode=e.autoLoopSessionMode,t.skipSetupScript=e.skipSetupScript,e.tasks.length>0&&(t.tasks=[...e.tasks]),e.acceptanceCriteria.length>0&&(t.acceptanceCriteria=[...e.acceptanceCriteria]),t}function Vt(e,t){let n={...e,tasks:[...e.tasks],acceptanceCriteria:[...e.acceptanceCriteria]};for(let e of zt){let r=t[e];typeof r==`string`&&r.trim()&&(n[e]=r)}return t.agentPermissionMode!==void 0&&(n.agentPermissionMode=t.agentPermissionMode),t.autoLoop!==void 0&&(n.autoLoop=t.autoLoop),t.autoLoopSessionMode!==void 0&&(n.autoLoopSessionMode=t.autoLoopSessionMode),t.skipSetupScript!==void 0&&(n.skipSetupScript=t.skipSetupScript),t.tasks!==void 0&&(n.tasks=[...t.tasks]),t.acceptanceCriteria!==void 0&&(n.acceptanceCriteria=[...t.acceptanceCriteria]),n}var Ht={class:`create-inner q-mx-auto`},Ut={class:`q-mb-lg`},Wt={class:`row items-center`},Gt={class:`create-title text-weight-bold text-kobo-1`},Kt={class:`text-body1 text-kobo-2 q-mt-xs`},qt={class:`row items-center q-col-gutter-sm q-mb-md`,"data-tour":`create-template`},Jt={class:`col-12 col-sm-8`},Yt={class:`col-12 col-sm-4`},Xt={class:`text-h6`},Zt={key:1,class:`create-page__overrides q-mb-lg`},Qt={class:`create-page__overrides-title text-caption`},$t={class:`create-sections column`},en={class:`text-subtitle1 text-weight-medium text-kobo-1`},tn={class:`text-body2 text-kobo-3`},nn={class:`card-textarea-wrap`},rn={class:`column items-center self-end q-pb-xs`},an={class:`column q-gutter-y-sm`},on={class:`text-caption text-weight-medium text-kobo-2`},sn={class:`row q-gutter-sm`},cn={key:0,class:`source-panel column q-gutter-y-sm q-pa-md rounded-borders`},ln={key:0},un={class:`text-body2 text-kobo-2 q-mb-sm`},dn={class:`responsive-fields responsive-fields--sm row q-col-gutter-x-sm`},fn={class:`col-12 col-sm-6`},pn={class:`col`},mn={class:`text-body2 text-weight-medium`},hn={class:`text-caption text-kobo-3`},gn={class:`col-12 col-sm-6`},_n={class:`col`},vn={class:`text-body2 text-weight-medium`},yn={class:`text-caption text-kobo-3`},bn={key:0,class:`source-panel q-pa-md rounded-borders`},xn={key:0,class:`responsive-fields row q-col-gutter-x-md`},Sn={class:`col-12 col-md-6`},Cn={class:`q-pa-md column q-gutter-y-sm`},wn={key:0,class:`row q-gutter-xs`},Tn={class:`col-12 col-md-6`},En={class:`q-pa-md column q-gutter-y-sm`},Dn={key:0,class:`row q-gutter-xs`},On={class:`text-subtitle1 text-weight-medium text-kobo-1`},kn={class:`text-body2 text-kobo-3`},An={class:`text-caption text-weight-medium text-kobo-2 q-mb-sm`},jn={key:0,class:`row items-center q-mt-xs q-gutter-x-xs`},Mn={class:`text-caption text-kobo-3`},Nn={class:`responsive-fields row q-col-gutter-x-md`},Pn={class:`col-12 col-md-6`},Fn={class:`col-12 col-md-6`},In={key:0,class:`responsive-fields row q-col-gutter-x-md`},Ln={class:`col-12 col-md-4`},Rn={class:`col-12 col-md-8`},zn={class:`self-center full-width no-outline text-kobo-2 ellipsis`,tabindex:`0`},Bn={class:`self-center full-width no-outline text-kobo-2 ellipsis`,tabindex:`0`},Vn={class:`col`},Hn={class:`text-subtitle1 text-weight-medium text-kobo-1`},Un={class:`text-body2 text-kobo-3`},Wn={key:0,class:`col-12 q-mb-sm`,"data-tour":`create-comparison`},Gn={key:0,class:`text-caption text-kobo-3 q-mt-xs`},Kn={key:1,class:`col-12 text-overline text-kobo-3 q-mb-xs`},qn={key:2,class:`col-12 col-sm-6`},Jn={class:`col-12 col-sm-6`},Yn={class:`col-12 col-sm-6`},Xn={class:`col-12 col-sm-6`},Zn={class:`col-12`},Qn={class:`col-12 text-overline text-kobo-3 q-mt-md q-mb-xs`},$n={class:`col-12 col-sm-6`},er={class:`col-12 col-sm-6`},tr={class:`col-12 col-sm-6`},nr={class:`col-12 col-sm-6`},rr={class:`text-subtitle2 text-amber-3`},ir={key:0,class:`text-caption text-kobo-3 q-mt-sm`},ar={class:`responsive-fields row q-col-gutter-x-md`,"data-tour":`create-brainstorm`},or={class:`col-12 col-sm-6`},sr={class:`col-12 col-sm-6`},cr={class:`text-caption text-kobo-3`},lr={class:`row q-gutter-sm create-actions`},ur={class:`create-page__progress-step`},dr={key:0,class:`create-page__progress-counter`},fr=6e4,pr=Oe(x({__name:`CreatePage`,setup(r){function o(e){return e.disabled===!0}let te=j(),x=C(),S=ve(),A=ue(),{t:M,te:we}=se(),{scheduleAutoRun:Oe}=Ae(),Me=a([]),We=a(``),I=a(``),Ge=a([]),qe=a(null),Ye=a(``),L=a(!1),Qe=a(!1),tt=a(null),nt=a(null),rt=a([]),it=a(null),at=a(``),R=a(!1),z=a(`auto`),B=a(`auto`),st=a(`auto`),V=a(`auto`),ct=a({}),H=a(``),U=a(null),W=a(`feature`),lt=a(!1),ut=_(()=>A.global.voiceEnabled),dt=a([]),G=a(`claude-code`),ft=_(()=>dt.value.find(e=>e.id===G.value)),K=a(!1),q=a(`codex`),pt=a(`auto`),mt=a(`auto`),ht=a({}),gt=a(`bypass`),vt=_(()=>dt.value.map(e=>({value:e.id,label:e.displayName}))),yt=_(()=>dt.value.filter(e=>e.id!==G.value).map(e=>({value:e.id,label:e.displayName}))),bt=_(()=>A.global.branchPrefixes.map(e=>({label:`${e}/`,value:e}))),xt=[`plan`,`bypass`,`strict`,`interactive`];function St(e,t){let n=e?A.getProjectByPath(e):void 0,r=n?.agentPermissionMode;if(typeof r==`string`&&xt.includes(r))return r;let i=A.global.defaultPermissionModeByEngine?.[t];return typeof i==`string`&&xt.includes(i)?i:n?.dangerouslySkipPermissions??A.global.dangerouslySkipPermissions??!0?`bypass`:t===`codex`?`plan`:`interactive`}let Ct=a(St(``,G.value)),wt=_(()=>{switch(Fi.value.agentPermissionMode){case`plan`:return`visibility`;case`bypass`:return`flash_on`;case`strict`:return`lock`;case`interactive`:return`security`}}),Tt=_(()=>(Le[G.value]??xt).map(e=>({value:e,label:M(`agentPermissionMode.${e}`),disabled:!1}))),Et=a([]),Dt=a([]),At=a(!1),jt=a(!1),Mt=a(null),Ft=_(()=>{let e=S.creationProgress;if(!e||e.creationId!==Mt.value)return``;let t=`createPage.progress.${e.step}`;return we(t)?M(t):e.step}),It=_(()=>{let e=S.creationProgress;return!e||e.creationId!==Mt.value||e.index<0?``:M(`createPage.progress.step`,{index:e.index+1,total:e.total})});function zt(e,t){t(()=>{Dt.value=e?Et.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):Et.value})}let pr=he();function mr(){return qe.value?.nativeEl??null}let{showSkills:hr,selectedSkillIndex:gr,groupedDropdown:_r,flatDropdown:vr,fetchSkills:yr,detectSlashFragment:br,replaceFragmentWith:xr,closeDropdown:Sr}=Xe(I,mr,{excludeKoboCommands:!0});yr(),c(I,async()=>{await u(),await br()});function Cr(e){if(e.type===`template`){let t=pr.templates.find(t=>t.slug===e.name);if(!t)return;let n=Je(t.content,Ze({workspace:null,gitStats:null,sessionName:null}));xr(n),Sr();return}xr(`/${e.name} `),Sr()}function wr(e){hr.value&&vr.value.length!==0&&(e.key===`ArrowDown`?(e.preventDefault(),gr.value=(gr.value+1)%vr.value.length):e.key===`ArrowUp`?(e.preventDefault(),gr.value=(gr.value-1+vr.value.length)%vr.value.length):e.key===`Enter`&&!e.shiftKey&&!e.ctrlKey&&!e.metaKey?(e.preventDefault(),Cr(vr.value[gr.value])):e.key===`Escape`&&(e.preventDefault(),Sr()))}async function Tr(){if(!(!ut.value||L.value||Qe.value)){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>`u`){x.notify({type:`warning`,message:M(`voice.notSupported`),position:`top`,timeout:4e3});return}try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});nt.value=e,rt.value=[];let t=MediaRecorder.isTypeSupported(`audio/webm`)?`audio/webm`:``,n=t?new MediaRecorder(e,{mimeType:t}):new MediaRecorder(e);n.ondataavailable=e=>{e.data&&e.data.size>0&&rt.value.push(e.data)},n.start(),tt.value=n,L.value=!0,it.value=setTimeout(()=>{Er(),x.notify({type:`info`,message:M(`voice.maxDurationReached`),position:`top`,timeout:3500})},fr)}catch{x.notify({type:`negative`,message:M(`voice.errorMicPermission`),position:`top`,timeout:5e3})}}}async function Er(){if(!L.value)return;let e=tt.value;if(!e)return;L.value=!1,Qe.value=!0,it.value&&=(clearTimeout(it.value),null);let t=await new Promise(t=>{e.onstop=()=>t(new Blob(rt.value,{type:`audio/webm`})),e.stop()});try{if(t.size===0)throw Error(`MIC_AUDIO_INVALID`);let e=new FormData;e.append(`audio`,t,`voice.webm`),e.append(`language`,A.global.voiceLanguage||`auto`);let n=await ae(`/api/voice/transcribe`,{method:`POST`,body:e});if(!n.ok){let e=await n.json().catch(()=>({}));throw Error(String(e.code??e.error??`HTTP_${n.status}`))}let r=await n.json();r.text?.trim()&&(I.value=I.value?`${I.value.trimEnd()} ${r.text.trim()}`:r.text.trim())}catch(e){let t=e instanceof Error?e.message:`TRANSCRIPTION_FAILED`;x.notify({type:`negative`,message:M({VOICE_DISABLED:`voice.errorDisabled`,MODEL_NOT_CONFIGURED:`voice.errorModelMissing`,MODEL_NOT_INSTALLED:`voice.errorModelNotInstalled`,VOICE_RUNTIME_MISSING:`voice.errorRuntimeMissing`,MIC_AUDIO_INVALID:`voice.errorAudioInvalid`,LANGUAGE_INVALID:`voice.errorLanguageInvalid`,TRANSCRIPTION_TIMEOUT:`voice.errorTranscription`}[t]??`voice.errorTranscription`),position:`top`,timeout:5e3})}finally{tt.value=null,rt.value=[],nt.value?.getTracks().forEach(e=>{e.stop()}),nt.value=null,Qe.value=!1}}function Dr(e){return ut.value?A.global.voicePttKey===`ctrl+space`?e.ctrlKey&&e.code===`Space`:e.key===`Alt`:!1}function Or(e){Dr(e)&&!e.repeat&&(e.preventDefault(),Tr())}function kr(e){Dr(e)&&(e.preventDefault(),Er())}function Ar(){L.value&&Er()}function jr(){document.visibilityState!==`visible`&&L.value&&Er()}let Mr=_(()=>(Fe[G.value]??Ie).map(e=>({label:M(e.i18nLabelKey),value:e.value,description:M(e.i18nDescriptionKey)})));c([G,yt],()=>{yt.value.some(e=>e.value===q.value)||(q.value=yt.value[0]?.value??``)});let Nr=_(()=>(Fe[q.value]??Ie).map(e=>({label:M(e.i18nLabelKey),value:e.value,description:M(e.i18nDescriptionKey)}))),Pr=_(()=>(Re[q.value]??Re[`claude-code`]).map(e=>({value:e.value,label:Rr(M(e.i18nLabelKey)),description:M(e.i18nDescriptionKey)}))),Fr=_(()=>(Le[q.value]??xt).map(e=>({value:e,label:M(`agentPermissionMode.${e}`),disabled:!1}))),Ir=_(()=>kt({useExistingWorktree:Z.value,prCheckout:Di.value,skipSetupScript:lt.value,autoLoop:X.value,agentPermissionMode:gt.value}));c([q,Nr],()=>{let e=Nr.value.map(e=>e.value);if(e.length>0){let t=A.global.defaultModelByEngine?.[q.value];typeof t==`string`&&e.includes(t)?pt.value=t:e.includes(pt.value)||(pt.value=e.includes(`auto`)?`auto`:e[0]??`auto`)}let t=Le[q.value]??[];t.length>0&&!t.includes(gt.value)&&(gt.value=St(H.value,q.value));let n=(Re[q.value]??[]).map(e=>e.value);n.length>0&&!n.includes(mt.value)&&(mt.value=n.includes(`auto`)?`auto`:n[0]??`auto`)},{immediate:!0});function Lr(e=!1){let t=Mr.value.map(e=>e.value);if(t.length>0){let n=A.global.defaultModelByEngine?.[G.value];typeof n==`string`&&t.includes(n)&&(e||!t.includes(z.value))?z.value=n:t.includes(z.value)||(z.value=t.includes(`auto`)?`auto`:t[0]??`auto`)}t.length>0&&!t.includes(B.value)&&(B.value=t.includes(`auto`)?`auto`:t[0]??`auto`);let n=Le[G.value]??[];n.length>0&&!n.includes(Ct.value)&&(Ct.value=St(H.value,G.value));let r=(Re[G.value]??[]).map(e=>e.value);r.length>0&&!r.includes(V.value)&&(V.value=r.includes(`auto`)?`auto`:r[0]??`auto`)}c(G,()=>Lr(!0));function Rr(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}let zr=_(()=>(Re[G.value]??Re[`claude-code`]).map(e=>({value:e.value,label:Rr(M(e.i18nLabelKey)),description:M(e.i18nDescriptionKey)})));c(z,e=>{let t=ct.value[e];t&&zr.value.some(e=>e.value===t)&&(V.value=t)}),c(V,e=>{ct.value={...ct.value,[z.value]:e},Pt({...Nt(),reasoningEffortByModel:ct.value})});let Br=_(()=>{let e=at.value.trim();return e.startsWith(`https://www.notion.so/`)||e.startsWith(`https://app.notion.com/`)}),Vr=_(()=>/[?&]p=[0-9a-f]{32}(?:[&#]|$)/i.test(at.value)),Hr=a(`panel`);function Ur(){let e=at.value.trim();return Hr.value===`parent`&&Vr.value?e.replace(/([?&])p=[0-9a-f]{32}(?=[&#]|$)/i,`$1`).replace(/([?&])pm=[a-z]+(?=[&#]|$)/i,`$1`).replace(/[?&]+$/,``).replace(/\?&/,`?`):e}let Wr=a([]),J=a([]),Gr=a(``),Kr=a(``),qr=_(()=>!R.value||!Br.value);function Jr(){let e=Gr.value.trim();e&&(Wr.value.push(e),Gr.value=``)}function Yr(e){Wr.value.splice(e,1)}function Xr(){let e=Kr.value.trim();e&&(J.value.push(e),Kr.value=``)}function Zr(e){J.value.splice(e,1)}function Qr(){R.value=!R.value,R.value||(at.value=``)}let Y=a(!1),X=a(!1),$r=a(`per_task`),ei=xe(),ti=et();function ni(){return{projectPath:H.value,sourceBranch:U.value??``,branchType:W.value,engine:G.value,model:z.value,reasoningEffort:V.value,agentPermissionMode:Ct.value,autoLoop:X.value,autoLoopSessionMode:$r.value,brainstormModel:B.value,brainstormReasoningEffort:st.value,skipSetupScript:lt.value,description:I.value,tasks:Wr.value,acceptanceCriteria:J.value}}async function ri(e){let t=Vt(ni(),e),n=$!==null;$&&=(clearTimeout($),null);let r=!!t.projectPath&&t.projectPath!==H.value;t.projectPath&&A.projectPaths.includes(t.projectPath)?H.value=t.projectPath:t.projectPath&&t.projectPath!==H.value&&x.notify({type:`warning`,message:M(`createPage.presetProjectUnknown`),position:`top`}),(r||n)&&(await u(),$&&=(clearTimeout($),null),await Vi()),G.value=t.engine,await u(),U.value=t.sourceBranch||null,W.value=t.branchType,z.value=t.model,B.value=t.brainstormModel,await u(),V.value=t.reasoningEffort,st.value=t.brainstormReasoningEffort,Ct.value=t.agentPermissionMode,X.value=t.autoLoop,$r.value=t.autoLoopSessionMode,lt.value=t.skipSetupScript,I.value=t.description,Wr.value=t.tasks,J.value=t.acceptanceCriteria,Lr()}let ii=a(null),ai=_(()=>[{value:null,label:M(`createPage.fromTemplateNone`)},...ti.templates.filter(e=>!e.preset.projectPath||e.preset.projectPath===H.value).map(e=>({value:e.id,label:e.name}))]);async function oi(e){if(ii.value=e,!e)return;let t=ti.templates.find(t=>t.id===e);t&&(await ri(t.preset),ii.value=null,x.notify({type:`info`,message:M(`createPage.templateApplied`,{name:t.name}),position:`top`}))}let si=a(!1),ci=a(``),li=a(!1);function ui(e){return new Promise(t=>{x.dialog({title:M(`createPage.saveTemplateTitle`),message:M(`createPage.saveTemplateOverwrite`,{name:e}),cancel:!0,persistent:!0,dark:!0}).onOk(()=>t(!0)).onCancel(()=>t(!1)).onDismiss(()=>t(!1))})}async function di(){let e=ci.value.trim();if(!e||li.value)return;li.value=!0;let t=Bt(ni()),n=async e=>await ui(e.name)?(await ti.updateTemplate(e.id,{preset:t}),e.name):null;try{let r,i=ti.findByName(e);if(i)r=await n(i);else try{await ti.createTemplate({name:e,preset:t}),r=e}catch(t){if(!(t instanceof oe&&t.status===409))throw t;await ti.fetchTemplates();let i=ti.findByName(e);if(!i)throw t;r=await n(i)}if(r===null)return;si.value=!1,ci.value=``,x.notify({type:`positive`,message:M(`createPage.templateSaved`,{name:r}),position:`top`})}catch(e){let t=e instanceof oe?e.message:M(`createPage.templateSaveFailed`);x.notify({type:`negative`,message:t,position:`top`})}finally{li.value=!1}}let fi=a(null),pi=a(null);async function mi(){let e=ei.query.from;typeof e==`string`&&e&&e!==pi.value&&(pi.value=e,S.workspaces.length===0&&await S.fetchWorkspaces(),!S.archivedLoaded&&!S.workspaces.some(t=>t.id===e)&&await S.fetchArchivedWorkspaces(),await hi(e))}async function hi(e){try{let t=await ae(`/api/workspaces/${encodeURIComponent(e)}/preset`);if(!t.ok)throw await ie(t);let{preset:n}=await t.json();await ri(n);let r=(S.workspaces.find(t=>t.id===e)??S.archived.find(t=>t.id===e))?.name??e;fi.value=r,We.value=`${r} ${M(`createPage.copySuffix`)}`.slice(0,80)}catch(e){console.error(`[create] duplicate source failed to load:`,e),x.notify({type:`negative`,message:M(`createPage.duplicateLoadFailed`),position:`top`})}}function gi(){X.value=!X.value,X.value&&(B.value=z.value)}let _i=a(``),vi=_(()=>/\/issues\/\d+/.test(_i.value.trim()));function yi(){Y.value=!Y.value,Y.value||(_i.value=``)}let Z=a(!1),Q=a(null),bi=a([]),xi=a(!1),Si=a(!1),Ci=a(!1),wi=a(!1),Ti=a(null),Ei=a(null),Di=a(!1),Oi=a(null),ki=a(null);async function Ai(e){if(!e.trim()){Si.value=!1;return}try{let t=await re(`/api/pull-requests?projectPath=${encodeURIComponent(e.trim())}&perPage=1`);Si.value=t.ok}catch{Si.value=!1}}function ji(e){Ci.value=!1,Ti.value=e,wi.value=!0}function Mi(e){wi.value=!1,te.push({name:`workspace`,params:{id:e}})}function Ni(e){if(wi.value=!1,Ci.value=!1,Z.value=!0,Q.value=e.worktreePath,U.value=e.sourceBranch,Di.value=!0,lt.value=!0,Oi.value=Ti.value?.number??null,ki.value=Ti.value?.url??null,Ti.value){let e=Lt(Ti.value,{name:We.value,description:I.value},M,Ei.value??void 0);We.value=e.name,I.value=e.description,Ei.value=e}x.notify({type:`positive`,message:M(`createPage.prReadyToCreate`,{number:Oi.value??``}),position:`top`,timeout:4e3})}c(wi,e=>{e||(Ti.value=null)});function Pi(){Di.value=!1,Z.value=!1,Q.value=null,U.value=null,Ti.value=null,Ei.value=null,Oi.value=null,ki.value=null}let Fi=_(()=>kt({useExistingWorktree:Z.value,prCheckout:Di.value,skipSetupScript:lt.value,autoLoop:X.value,agentPermissionMode:Ct.value}));async function Ii(){if(!H.value.trim()){bi.value=[];return}xi.value=!0;try{bi.value=await S.fetchOrphanWorktrees(H.value.trim())}catch{bi.value=[]}finally{xi.value=!1}}function Li(){Z.value=!Z.value,Z.value?(R.value=!1,at.value=``,Y.value=!1,_i.value=``,lt.value=!0,Ii()):Q.value=null}function Ri(e){e===`existing`!==Z.value&&Li()}c(H,()=>{Q.value=null,Z.value&&Ii()}),c(Q,e=>{if(!e)return;let t=bi.value.find(t=>t.path===e);t&&(U.value=t.suggestedSourceBranch),lt.value=!0});async function zi(e){if(!e.trim()){Et.value=[],U.value=null;return}At.value=!0;try{let t=await ae(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw await ie(t);let n=await t.json();Et.value=n.local??n.branches??[],Et.value.length>0&&!U.value&&(U.value=Et.value[0]??null)}catch{Et.value=[],U.value=null}finally{At.value=!1}}function Bi(e){let t=A.getProjectByPath(e);if(t){t.defaultSourceBranch&&(U.value=t.defaultSourceBranch);let e=t.taskPromptTemplate??``;(I.value===``||I.value===Ye.value)&&(I.value=e,Ye.value=e);let n=Mr.value.map(e=>e.value);if(t.defaultModel&&n.includes(t.defaultModel))z.value=t.defaultModel;else{let e=A.global.defaultModelByEngine?.[G.value];typeof e==`string`&&n.includes(e)&&(z.value=e)}}Ct.value=St(e,G.value)}let $=null;async function Vi(){let e=H.value;U.value=null;let t=zi(e);Bi(e),Ai(e),await t}c(H,()=>{$&&clearTimeout($),$=setTimeout(()=>{$=null,Vi()},500)});function Hi(e,t){let n=e.toLowerCase();t(()=>{Me.value=A.projectPaths.filter(e=>e.toLowerCase().includes(n)||Be(e).toLowerCase().includes(n))})}function Ui(e){let t=A.projectPaths.find(t=>Be(t)===e);H.value=t??e}c(()=>[ei.query.engine,ei.query.project,ei.query.setupRequest],([e,t])=>{A.loaded&&((e===`claude-code`||e===`codex`)&&(G.value=e),typeof t==`string`&&A.projectPaths.includes(t)&&(H.value=t))}),ee(async()=>{await A.fetchSettings();let e=ei.query.engine;(e===`claude-code`||e===`codex`)&&(G.value=e);let t=A.global.branchPrefixes;t.length>0&&!t.includes(W.value)&&(W.value=t[0]);let n=Nt();ct.value=n.reasoningEffortByModel??{},n.autoLoop===!0&&(X.value=!0),n.autoLoopSessionMode===`continuous`&&($r.value=`continuous`),n.autoLoop===!0&&n.brainstormModel&&(B.value=n.brainstormModel),n.projectPath&&A.projectPaths.includes(n.projectPath)&&(H.value=n.projectPath);let r=ei.query.project;typeof r==`string`&&A.projectPaths.includes(r)&&(H.value=r),Ct.value=St(H.value,G.value);try{let e=await ae(`/api/engines`);e.ok&&(dt.value=await e.json())}catch{}{let e=Mr.value.map(e=>e.value),t=A.global.defaultModelByEngine?.[G.value];typeof t==`string`&&e.includes(t)?z.value=t:e.length>0&&!e.includes(z.value)&&(z.value=e.includes(`auto`)?`auto`:e[0]??`auto`)}let i=ct.value[z.value];i&&zr.value.some(e=>e.value===i)&&(V.value=i);{let e=Mr.value.map(e=>e.value);e.length>0&&!e.includes(B.value)&&(B.value=e.includes(`auto`)?`auto`:e[0]??`auto`)}window.addEventListener(`keydown`,Or),window.addEventListener(`keyup`,kr),window.addEventListener(`blur`,Ar),document.addEventListener(`visibilitychange`,jr),fe(`create:form`,()=>!jt.value&&(I.value.trim().length>0||Ge.value.length>0||Wr.value.length>0||J.value.length>0)),ti.fetchTemplates(),await mi(),Oe(`create`)}),c(()=>ei.query.from,()=>{mi()}),s(()=>{$&&clearTimeout($),window.removeEventListener(`keydown`,Or),window.removeEventListener(`keyup`,kr),window.removeEventListener(`blur`,Ar),document.removeEventListener(`visibilitychange`,jr),ye(`create:form`),it.value&&=(clearTimeout(it.value),null),L.value&&Er()});function Wi(e){return e.normalize(`NFD`).replace(/[\u0300-\u036f]/g,``).toLowerCase().replace(/[^a-z0-9\s-]/g,``).trim().replace(/\s+/g,`-`).replace(/-+/g,`-`).substring(0,50)}function Gi(){return We.value.trim()?We.value.trim().substring(0,80):!R.value&&!Y.value&&I.value.trim()&&(I.value.trim().split(`
|
|
2
|
-
`)[0]??``).substring(0,80)||`workspace`}function Ki(e){let t=(e.split(`/`).pop()??``).split(`-`);t.length>1&&/^[0-9a-f]{12,}$/i.test(t[t.length-1])&&t.pop();let n=t.join(`-`).toLowerCase(),r=n.match(/tk-(\d+)/);if(r){let e=`TK-${r[1]}`,t=n.replace(/tk-\d+/i,``).replace(/-+/g,`-`).replace(/^-|-$/g,``).substring(0,40);return t?`${e}--${t}`:e}return n.substring(0,50)||`task-${Date.now()}`}let qi=_(()=>{if(R.value&&Br.value)return`${W.value}/${Ki(Ur())}`;let e=Gi(),t=e===`workspace`?M(`createPage.branchNamePending`):Wi(e);return`${W.value}/${t}`}),Ji=a(null),Yi=a(``),Xi=a(null),Zi=a(null),Qi=a(null),$i=a(null),ea=a(null);function ta(e){switch(e){case`name`:return Xi.value;case`description`:return qe.value;case`notionUrl`:return Zi.value;case`sentryUrl`:return Qi.value;case`projectPath`:return $i.value;case`branch`:return ea.value}}async function na(e,t){Ji.value=e,Yi.value=t,await u();let n=ta(e);(n?.$el??n)?.scrollIntoView({behavior:`smooth`,block:`center`}),n?.focus?.()}c([We,I,at,_i,H,U],()=>{Ji.value!==null&&(Ji.value=null,Yi.value=``)});function ra(){return R.value&&!Br.value?{field:`notionUrl`,message:M(`createPage.validationNotionUrl`)}:Y.value&&!vi.value?{field:`sentryUrl`,message:M(`createPage.sentryValidation`)}:!R.value&&!Y.value&&!I.value.trim()&&Ge.value.length===0?{field:`description`,message:M(`attachments.descriptionRequired`)}:!R.value&&!Y.value&&(!Gi()||Gi()===`workspace`)&&!We.value.trim()&&!I.value.trim()?{field:`name`,message:M(`createPage.validationName`)}:H.value.trim()?U.value?null:{field:`branch`,message:M(`createPage.validationBranch`)}:{field:`projectPath`,message:M(`createPage.validationPath`)}}async function ia(){if(jt.value)return;let e=ra();if(e){x.notify({type:`negative`,message:`${e.message} — ${M(`createPage.validationFocusHint`)}`,position:`top`}),na(e.field,e.message);return}if(Z.value&&!Q.value){x.notify({type:`negative`,message:M(`createPage.pickWorktreeRequired`),position:`top`});return}if(K.value&&Z.value){x.notify({type:`negative`,message:M(`createPage.compareNeedsNewWorktree`),position:`top`});return}if(K.value&&(!q.value||q.value===G.value)){x.notify({type:`negative`,message:M(`createPage.compareNeedsSecondEngine`),position:`top`});return}jt.value=!0;let t=be(),n=Gi(),r;r=R.value&&Br.value?Ki(Ur()):n===`workspace`?`task-${Date.now()}`:Wi(n);let i=K.value?[oa(G.value,n,r),oa(q.value,n,r)]:[{engine:G.value,name:n,workingBranch:`${W.value}/${r}`,model:z.value,reasoningEffort:V.value,agentPermissionMode:Fi.value.agentPermissionMode}],a=i.length>1?`cmp-${aa()}`:void 0,o=[];try{for(let e of i)o.push(await sa(e,a,t))}catch(e){let t=e?.code,n=e instanceof Error&&e.message?e.message:M(`createPage.errorCreating`);x.notify({type:`negative`,position:`top`,timeout:0,multiLine:!0,message:t?M(`createPage.errorAtStep`,{step:t,message:n}):n,actions:[{label:M(`common.close`),color:`white`}]}),o.length>0&&o.length<i.length&&x.notify({type:`warning`,position:`top`,timeout:0,multiLine:!0,message:M(`createPage.comparisonPartial`,{count:o.length,total:i.length}),actions:[{label:M(`common.close`),color:`white`}]})}finally{jt.value=!1,Mt.value=null,S.clearCreationProgress()}let s=o[0],c=Rt(o);s&&c&&(Pt({projectPath:H.value.trim(),autoLoop:X.value,autoLoopSessionMode:$r.value,...X.value?{brainstormModel:B.value}:{},reasoningEffortByModel:{...ct.value,[z.value]:V.value}}),S.selectWorkspace(s.id),ye(`create:form`),te.push(c))}function aa(){return typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`}function oa(e,t,n){let r=e===G.value;return{engine:e,name:`${t} (${dt.value.find(t=>t.id===e)?.displayName??e})`,workingBranch:`${W.value}/${n}-${e}`,model:r?z.value:pt.value,reasoningEffort:r?V.value:mt.value,agentPermissionMode:r?Fi.value.agentPermissionMode:Ir.value.agentPermissionMode}}async function sa(e,t,n){let r=`create-${aa()}`;Mt.value=r,S.clearCreationProgress(),n.subscribeChannel(r);try{let i={name:e.name,projectPath:H.value.trim(),sourceBranch:U.value,creationId:r,...Z.value&&Q.value?{worktreePath:Q.value,workingBranch:e.workingBranch}:{workingBranch:e.workingBranch},engine:e.engine,model:e.model,reasoningEffort:e.reasoningEffort,...t?{comparisonId:t}:{},...R.value&&Br.value?{notionUrl:Ur()}:{},...Y.value&&vi.value?{sentryUrl:_i.value.trim()}:{},...ki.value?{prUrl:ki.value}:{},...qr.value&&Wr.value.length>0?{tasks:Wr.value}:{},...qr.value&&J.value.length>0?{acceptanceCriteria:J.value}:{},skipSetupScript:Fi.value.skipSetupScript,...I.value.trim()?{description:I.value.trim()}:{},...X.value?{autoLoop:!0,autoLoopSessionMode:$r.value,...t?{brainstormModel:e.model,brainstormReasoningEffort:e.reasoningEffort}:{brainstormModel:B.value,brainstormReasoningEffort:st.value}}:{},agentPermissionMode:e.agentPermissionMode,workflowPolicy:ht.value},a=await S.createWorkspace(i,Ge.value);return A.global.audioWorkspaceCreatedNotifications&&Se(A.global.audioWorkspaceCreatedSound,A.global.audioWorkspaceCreatedVolume),a._branchAdjusted&&x.notify({type:`info`,message:M(`createPage.branchAdjusted`,{branch:a.workingBranch}),position:`top`,timeout:6e3}),a._sourceFallback&&x.notify({type:`warning`,message:M(`createPage.localSourceFallback`),position:`top`,timeout:6e3}),n.subscribe(a.id),{id:a.id,workingBranch:a.workingBranch}}finally{n.unsubscribe(r)}}return(r,a)=>(l(),m(Ve,{class:`create-page`},{default:f(()=>[p(He,{class:`create-page__drawer-toggle`}),b(`div`,Ht,[b(`header`,Ut,[b(`div`,Wt,[b(`div`,Gt,n(r.$t(`createPage.title`)),1),p(ke),p(Ue,{"tour-id":`create`})]),b(`div`,Kt,n(r.$t(`createPage.subtitle`)),1)]),b(`div`,qt,[b(`div`,Jt,[p(P,{"model-value":ii.value,options:ai.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`createPage.fromTemplate`),loading:e(ti).loading,disable:ai.value.length<=1,"onUpdate:modelValue":oi},null,8,[`model-value`,`options`,`label`,`loading`,`disable`])]),b(`div`,Yt,[p(O,{flat:``,"no-caps":``,dense:``,icon:`bookmark_add`,color:`kobo-2`,label:r.$t(`createPage.saveAsTemplate`),onClick:a[0]||=e=>si.value=!0},null,8,[`label`])])]),fi.value?(l(),m(ze,{key:0,dense:``,dark:``,class:`bg-kobo-surface q-mb-md`},{action:f(()=>[p(O,{flat:``,dense:``,icon:`close`,color:`kobo-2`,onClick:a[1]||=e=>fi.value=null})]),default:f(()=>[g(n(r.$t(`createPage.duplicatedFrom`,{name:fi.value}))+` `,1)]),_:1})):h(``,!0),p(_e,{modelValue:si.value,"onUpdate:modelValue":a[5]||=e=>si.value=e},{default:f(()=>[p(le,{dark:``,style:{"min-width":`360px`,background:`var(--kobo-surface)`}},{default:f(()=>[p(k,null,{default:f(()=>[b(`div`,Xt,n(r.$t(`createPage.saveTemplateTitle`)),1)]),_:1}),p(k,{class:`q-pt-none`},{default:f(()=>[p(ce,{modelValue:ci.value,"onUpdate:modelValue":a[2]||=e=>ci.value=e,dark:``,dense:``,outlined:``,autofocus:``,label:r.$t(`createPage.saveTemplateName`),onKeyup:a[3]||=D(e=>!li.value&&di(),[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),p(de,{align:`right`},{default:f(()=>[p(O,{flat:``,label:r.$t(`common.cancel`),color:`kobo-2`,onClick:a[4]||=e=>si.value=!1},null,8,[`label`]),p(O,{flat:``,label:r.$t(`common.save`),color:`primary`,loading:li.value,disable:!ci.value.trim(),onClick:di},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),Fi.value.applied.length>0?(l(),v(`div`,Zt,[b(`div`,Qt,[p(w,{name:`info`,size:`16px`}),g(` `+n(r.$t(`createPage.override.title`)),1)]),(l(!0),v(y,null,ne(Fi.value.applied,e=>(l(),v(`div`,{key:e,class:`create-page__overrides-item text-caption`},n(r.$t(`createPage.override.${e}`)),1))),128))])):h(``,!0),b(`div`,$t,[p(le,{flat:``,bordered:``,class:`create-section-card`,"data-tour":`create-mission`},{default:f(()=>[p(k,{class:`row items-start no-wrap q-gutter-md`},{default:f(()=>[p(ge,{color:`primary`,"text-color":`white`,icon:`assignment`,size:`42px`}),b(`div`,null,[b(`div`,en,n(r.$t(`createPage.sectionMission`)),1),b(`div`,tn,n(r.$t(`createPage.sectionMissionHint`)),1)])]),_:1}),p(me,{dark:``}),p(k,{class:`column q-gutter-y-md`},{default:f(()=>[p(ce,{ref_key:`nameFieldRef`,ref:Xi,modelValue:We.value,"onUpdate:modelValue":a[6]||=e=>We.value=e,dark:``,dense:``,outlined:``,"stack-label":``,error:Ji.value===`name`,"error-message":Yi.value,label:r.$t(`createPage.workspaceNameLabel`),placeholder:R.value&&Br.value?r.$t(`createPage.workspaceName`):r.$t(`createPage.workspaceNamePlaceholder`)},null,8,[`modelValue`,`error`,`error-message`,`label`,`placeholder`]),p(ot,{modelValue:Ge.value,"onUpdate:modelValue":a[8]||=e=>Ge.value=e,disabled:jt.value},{default:f(()=>[b(`div`,nn,[p(ce,{ref_key:`descriptionRef`,ref:qe,modelValue:I.value,"onUpdate:modelValue":a[7]||=e=>I.value=e,dark:``,dense:``,outlined:``,"stack-label":``,type:`textarea`,autogrow:``,rows:6,error:Ji.value===`description`,"error-message":Yi.value,label:r.$t(`createPage.descriptionLabel`),placeholder:R.value?r.$t(`createPage.instructions`):r.$t(`createPage.instructionsPlaceholder`),class:`create-textarea`,onKeydown:[wr,D(E(ia,[`ctrl`]),[`enter`]),D(E(ia,[`meta`]),[`enter`])]},{append:f(()=>[b(`div`,rn,[Qe.value?(l(),m(Ce,{key:0,size:`18px`,color:`amber-6`})):h(``,!0),p(O,{flat:``,dense:``,round:``,size:`sm`,icon:Qe.value?`hourglass_top`:L.value?`mic`:`mic_none`,color:L.value?`red-5`:Qe.value?`amber-6`:`kobo-3`,disable:!ut.value||Qe.value,class:i({"voice-btn--recording":L.value}),onMousedown:E(Tr,[`prevent`]),onMouseup:E(Er,[`prevent`]),onMouseleave:E(Er,[`prevent`]),onTouchstart:E(Tr,[`prevent`]),onTouchend:E(Er,[`prevent`])},{default:f(()=>[p(je,null,{default:f(()=>[g(n(Qe.value?r.$t(`voice.transcribing`):L.value?r.$t(`voice.recording`):r.$t(`voice.holdToTalk`)),1)]),_:1})]),_:1},8,[`icon`,`color`,`disable`,`class`])])]),_:1},8,[`modelValue`,`error`,`error-message`,`label`,`placeholder`,`onKeydown`]),e(hr)&&e(vr).length>0?(l(),m(Ke,{key:0,class:`create-slash-popup`,"grouped-dropdown":e(_r),"flat-dropdown":e(vr),"selected-index":e(gr),onSelect:Cr},null,8,[`grouped-dropdown`,`flat-dropdown`,`selected-index`])):h(``,!0)])]),_:1},8,[`modelValue`,`disabled`]),b(`div`,an,[b(`div`,on,n(r.$t(`createPage.sources`)),1),b(`div`,sn,[e(A).global.notionEnabled?(l(),m(O,{key:0,dense:``,outline:``,"no-caps":``,icon:`description`,color:R.value?`green-4`:`kobo-2`,label:R.value?r.$t(`createPage.notionEnabled`):r.$t(`createPage.importNotion`),disable:Z.value,onClick:Qr},null,8,[`color`,`label`,`disable`])):h(``,!0),e(A).global.sentryEnabled?(l(),m(O,{key:1,dense:``,outline:``,"no-caps":``,icon:`bug_report`,color:Y.value?`red-4`:`kobo-2`,label:Y.value?r.$t(`createPage.sentryEnabled`):r.$t(`createPage.importSentry`),disable:Z.value,onClick:yi},null,8,[`color`,`label`,`disable`])):h(``,!0),p(O,{dense:``,outline:``,"no-caps":``,icon:`call_merge`,color:`kobo-2`,label:r.$t(`createPage.importPr`),disable:Z.value||!H.value.trim()||!Si.value,onClick:a[9]||=e=>Ci.value=!0},{default:f(()=>[H.value.trim()?Si.value?h(``,!0):(l(),m(je,{key:1},{default:f(()=>[g(n(r.$t(`createPage.importPrNotSupported`)),1)]),_:1})):(l(),m(je,{key:0},{default:f(()=>[g(n(r.$t(`createPage.importPrRequiresProject`)),1)]),_:1}))]),_:1},8,[`label`,`disable`])])]),p(T,{name:`slide`},{default:f(()=>[R.value?(l(),v(`div`,cn,[p(ce,{ref_key:`notionFieldRef`,ref:Zi,modelValue:at.value,"onUpdate:modelValue":a[10]||=e=>at.value=e,dark:``,outlined:``,dense:``,"stack-label":``,label:r.$t(`createPage.importNotion`),placeholder:r.$t(`createPage.notionPlaceholder`),error:!!at.value.trim()&&!Br.value,"error-message":r.$t(`createPage.notionValidation`),hint:Br.value?r.$t(`createPage.notionAutoExtract`):void 0},{prepend:f(()=>[p(w,{name:`link`,color:Br.value?`green-4`:`kobo-3`},null,8,[`color`])]),_:1},8,[`modelValue`,`label`,`placeholder`,`error`,`error-message`,`hint`]),Br.value&&Vr.value?(l(),v(`div`,ln,[b(`div`,un,[p(w,{name:`info`,color:`primary`,class:`q-mr-xs`}),g(` `+n(r.$t(`createPage.notionPanelChoiceLabel`)),1)]),b(`div`,dn,[b(`div`,fn,[p(le,{flat:``,bordered:``,class:i([`peek-card full-height cursor-pointer`,{"peek-card--active":Hr.value===`panel`}]),onClick:a[11]||=e=>Hr.value=`panel`},{default:f(()=>[p(k,{class:`row items-center no-wrap q-gutter-sm q-pa-sm`},{default:f(()=>[p(w,{name:`article`,size:`24px`,class:`peek-card-icon`}),b(`div`,pn,[b(`div`,mn,n(r.$t(`createPage.notionPanelOption`)),1),b(`div`,hn,n(r.$t(`createPage.notionPanelOptionDesc`)),1)]),Hr.value===`panel`?(l(),m(w,{key:0,name:`check_circle`,color:`primary`})):h(``,!0)]),_:1})]),_:1},8,[`class`])]),b(`div`,gn,[p(le,{flat:``,bordered:``,class:i([`peek-card full-height cursor-pointer`,{"peek-card--active":Hr.value===`parent`}]),onClick:a[12]||=e=>Hr.value=`parent`},{default:f(()=>[p(k,{class:`row items-center no-wrap q-gutter-sm q-pa-sm`},{default:f(()=>[p(w,{name:`folder_open`,size:`24px`,class:`peek-card-icon`}),b(`div`,_n,[b(`div`,vn,n(r.$t(`createPage.notionParentOption`)),1),b(`div`,yn,n(r.$t(`createPage.notionParentOptionDesc`)),1)]),Hr.value===`parent`?(l(),m(w,{key:0,name:`check_circle`,color:`primary`})):h(``,!0)]),_:1})]),_:1},8,[`class`])])])])):h(``,!0)])):h(``,!0)]),_:1}),p(T,{name:`slide`},{default:f(()=>[Y.value?(l(),v(`div`,bn,[p(ce,{ref_key:`sentryFieldRef`,ref:Qi,modelValue:_i.value,"onUpdate:modelValue":a[13]||=e=>_i.value=e,dark:``,outlined:``,dense:``,"stack-label":``,label:r.$t(`createPage.importSentry`),placeholder:r.$t(`createPage.sentryPlaceholder`),error:!!_i.value.trim()&&!vi.value,"error-message":r.$t(`createPage.sentryValidation`),hint:vi.value?r.$t(`createPage.sentryAutoExtract`):void 0},{prepend:f(()=>[p(w,{name:`link`,color:vi.value?`red-4`:`kobo-3`},null,8,[`color`])]),_:1},8,[`modelValue`,`label`,`placeholder`,`error`,`error-message`,`hint`])])):h(``,!0)]),_:1}),qr.value?(l(),v(`div`,xn,[b(`div`,Sn,[p(De,{dark:``,dense:``,"expand-separator":``,icon:`checklist`,label:r.$t(`createPage.tasks`,{count:Wr.value.length}),class:`manual-expansion rounded-borders`},{default:f(()=>[b(`div`,Cn,[p(ce,{modelValue:Gr.value,"onUpdate:modelValue":a[14]||=e=>Gr.value=e,dark:``,dense:``,outlined:``,placeholder:r.$t(`createPage.addTask`),onKeydown:D(E(Jr,[`prevent`]),[`enter`])},{append:f(()=>[p(O,{flat:``,dense:``,round:``,icon:`add`,color:`primary`,disable:!Gr.value.trim(),onClick:Jr},{default:f(()=>[p(je,null,{default:f(()=>[g(n(r.$t(`tooltip.addTask`)),1)]),_:1})]),_:1},8,[`disable`])]),_:1},8,[`modelValue`,`placeholder`,`onKeydown`]),Wr.value.length?(l(),v(`div`,wn,[(l(!0),v(y,null,ne(Wr.value,(e,t)=>(l(),m(Ne,{key:`task-${t}`,dark:``,dense:``,removable:``,color:`kobo-surface-2`,"text-color":`kobo-1`,onRemove:e=>Yr(t)},{default:f(()=>[g(n(e),1)]),_:2},1032,[`onRemove`]))),128))])):h(``,!0)])]),_:1},8,[`label`])]),b(`div`,Tn,[p(De,{dark:``,dense:``,"expand-separator":``,icon:`fact_check`,label:r.$t(`createPage.acceptanceCriteria`,{count:J.value.length}),class:`manual-expansion rounded-borders`},{default:f(()=>[b(`div`,En,[p(ce,{modelValue:Kr.value,"onUpdate:modelValue":a[15]||=e=>Kr.value=e,dark:``,dense:``,outlined:``,placeholder:r.$t(`createPage.addCriterion`),onKeydown:D(E(Xr,[`prevent`]),[`enter`])},{append:f(()=>[p(O,{flat:``,dense:``,round:``,icon:`add`,color:`primary`,disable:!Kr.value.trim(),onClick:Xr},{default:f(()=>[p(je,null,{default:f(()=>[g(n(r.$t(`tooltip.addCriterion`)),1)]),_:1})]),_:1},8,[`disable`])]),_:1},8,[`modelValue`,`placeholder`,`onKeydown`]),J.value.length?(l(),v(`div`,Dn,[(l(!0),v(y,null,ne(J.value,(e,t)=>(l(),m(Ne,{key:`criterion-${t}`,dark:``,dense:``,removable:``,color:`kobo-surface-2`,"text-color":`kobo-1`,onRemove:e=>Zr(t)},{default:f(()=>[g(n(e),1)]),_:2},1032,[`onRemove`]))),128))])):h(``,!0)])]),_:1},8,[`label`])])])):h(``,!0)]),_:1})]),_:1}),p(le,{flat:``,bordered:``,class:`create-section-card`,"data-tour":`create-project`},{default:f(()=>[p(k,{class:`row items-start no-wrap q-gutter-md`},{default:f(()=>[p(ge,{color:`blue-grey-9`,"text-color":`blue-grey-2`,icon:`account_tree`,size:`42px`}),b(`div`,null,[b(`div`,On,n(r.$t(`createPage.sectionGit`)),1),b(`div`,kn,n(r.$t(`createPage.sectionGitHint`)),1)])]),_:1}),p(me,{dark:``}),p(k,{class:`column q-gutter-y-md`},{default:f(()=>[b(`div`,null,[b(`div`,An,n(r.$t(`createPage.worktreeMode`)),1),p(Pe,{"model-value":Z.value?`existing`:`new`,dense:``,spread:``,"no-caps":``,unelevated:``,"toggle-color":`primary`,color:`kobo-surface-2`,"text-color":`kobo-2`,disable:Di.value,options:[{label:r.$t(`createPage.worktreeNew`),value:`new`,icon:`add_box`},{label:r.$t(`createPage.worktreeExisting`),value:`existing`,icon:`folder_open`}],"onUpdate:modelValue":Ri},null,8,[`model-value`,`disable`,`options`]),Di.value?(l(),v(`div`,jn,[b(`div`,Mn,[p(w,{name:`lock`,size:`14px`,class:`q-mr-xs`}),g(` `+n(r.$t(`createPage.lockedToPr`,{number:Oi.value})),1)]),p(O,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`lock_open`,label:r.$t(`createPage.unlockPrCheckout`),onClick:Pi},null,8,[`label`])])):h(``,!0)]),b(`div`,Nn,[b(`div`,Pn,[p(P,{ref_key:`projectFieldRef`,ref:$i,modelValue:H.value,"onUpdate:modelValue":a[16]||=e=>H.value=e,options:Me.value,dark:``,dense:``,outlined:``,"stack-label":``,error:Ji.value===`projectPath`,"error-message":Yi.value,"use-input":``,"fill-input":``,"hide-selected":``,"input-debounce":`0`,"new-value-mode":`add`,label:r.$t(`createPage.projectLabel`),placeholder:r.$t(`createPage.projectPath`),behavior:e(A).projectPaths.length>0?`menu`:`dialog`,"option-label":t=>t?e(Be)(t):``,disable:Di.value,onFilter:Hi,onInputValue:Ui},{prepend:f(()=>[p(w,{name:`folder`})]),option:f(({opt:r,itemProps:i})=>[p(Ee,t(d(i)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e(Be)(r)),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(r),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),"no-option":f(()=>[p(Ee,null,{default:f(()=>[p(F,{class:`text-kobo-3`},{default:f(()=>[g(n(r.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`error`,`error-message`,`label`,`placeholder`,`behavior`,`option-label`,`disable`])]),b(`div`,Fn,[p(P,{ref_key:`branchFieldRef`,ref:ea,modelValue:U.value,"onUpdate:modelValue":a[17]||=e=>U.value=e,options:Dt.value,dark:``,dense:``,outlined:``,"stack-label":``,error:Ji.value===`branch`,"error-message":Yi.value,"use-input":``,"input-debounce":`0`,label:r.$t(`createPage.sourceBranch`),loading:At.value,disable:!H.value.trim()||At.value||Di.value,onFilter:zt},{prepend:f(()=>[p(w,{name:`call_split`})]),"no-option":f(()=>[p(Ee,null,{default:f(()=>[p(F,{class:`text-kobo-3`},{default:f(()=>[g(n(H.value.trim()?r.$t(`createPage.noBranches`):r.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`error`,`error-message`,`label`,`loading`,`disable`])])]),Z.value?h(``,!0):(l(),v(`div`,In,[b(`div`,Ln,[p(P,{modelValue:W.value,"onUpdate:modelValue":a[18]||=e=>W.value=e,options:bt.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,label:r.$t(`createPage.branchType`)},{prepend:f(()=>[p(w,{name:`account_tree`})]),_:1},8,[`modelValue`,`options`,`label`])]),b(`div`,Rn,[p(Te,{dark:``,dense:``,outlined:``,"stack-label":``,readonly:``,label:r.$t(`createPage.workingBranchPreview`)},{control:f(()=>[b(`div`,zn,n(qi.value),1)]),prepend:f(()=>[p(w,{name:`fork_right`})]),_:1},8,[`label`])])])),Z.value&&Di.value?(l(),m(Te,{key:1,dark:``,dense:``,outlined:``,"stack-label":``,readonly:``,label:r.$t(`createPage.worktreePickerLabel`)},{control:f(()=>[b(`div`,Bn,n(Q.value),1)]),prepend:f(()=>[p(w,{name:`folder_open`,color:`cyan-5`})]),_:1},8,[`label`])):Z.value?(l(),m(P,{key:2,modelValue:Q.value,"onUpdate:modelValue":a[19]||=e=>Q.value=e,options:bi.value,dark:``,dense:``,outlined:``,"stack-label":``,"option-label":`branch`,"option-value":`path`,"emit-value":``,"map-options":``,"use-input":``,label:r.$t(`createPage.worktreePickerLabel`),loading:xi.value,disable:!H.value.trim()||xi.value},{prepend:f(()=>[p(w,{name:`folder_open`,color:`cyan-5`})]),option:f(e=>[p(Ee,t(d(e.itemProps)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e.opt.branch),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(e.opt.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),"no-option":f(()=>[p(Ee,null,{default:f(()=>[p(F,{class:`text-kobo-3`},{default:f(()=>[g(n(H.value.trim()?r.$t(`createPage.noOrphanWorktrees`):r.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`label`,`loading`,`disable`])):h(``,!0)]),_:1})]),_:1}),p(le,{flat:``,bordered:``,class:`create-section-card`,"data-tour":`create-engine`},{default:f(()=>[p(k,{class:`row items-start no-wrap q-gutter-md`},{default:f(()=>[p(ge,{color:`primary`,"text-color":`white`,icon:`smart_toy`,size:`42px`}),b(`div`,Vn,[b(`div`,Hn,n(r.$t(`createPage.sectionAgent`)),1),b(`div`,Un,n(r.$t(`createPage.sectionAgentHint`)),1)]),p(pe,{"model-value":X.value,"data-tour":`create-autoloop`,dense:``,color:`amber-6`,icon:`autorenew`,label:r.$t(`autoLoop.toggle`),"left-label":``,"onUpdate:modelValue":gi},null,8,[`model-value`,`label`])]),_:1}),p(me,{dark:``}),p(De,{dark:``,dense:``,"expand-separator":``,icon:`tune`,label:r.$t(`createPage.configureAgent`),"header-class":`agent-config-header`},{header:f(()=>[p(F,{avatar:``},{default:f(()=>[p(w,{name:`tune`,color:`primary`})]),_:1}),p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(r.$t(`createPage.configureAgent`)),1)]),_:1}),p(N,{caption:``,class:`agent-summary row q-gutter-x-xs q-mt-xs`},{default:f(()=>[p(Ne,{dense:``,color:`kobo-surface-2`,"text-color":`kobo-1`,icon:`hub`},{default:f(()=>[g(n(ft.value?.displayName??G.value),1)]),_:1}),p(Ne,{dense:``,color:`kobo-surface-2`,"text-color":`kobo-1`},{default:f(()=>[g(n(Mr.value.find(e=>e.value===z.value)?.label??z.value),1)]),_:1}),p(Ne,{dense:``,color:`kobo-surface-2`,"text-color":`kobo-1`,icon:`psychology`},{default:f(()=>[g(n(zr.value.find(e=>e.value===V.value)?.label??V.value),1)]),_:1}),p(Ne,{dense:``,color:`kobo-surface-2`,"text-color":`kobo-1`,icon:wt.value},{default:f(()=>[g(n(Tt.value.find(e=>e.value===Fi.value.agentPermissionMode)?.label??Fi.value.agentPermissionMode),1)]),_:1},8,[`icon`])]),_:1})]),_:1})]),default:f(()=>[p(k,{class:`responsive-fields row q-col-gutter-x-md q-pt-md`},{default:f(()=>[vt.value.length>1?(l(),v(`div`,Wn,[p(pe,{modelValue:K.value,"onUpdate:modelValue":a[20]||=e=>K.value=e,label:r.$t(`createPage.compareEngines`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),K.value?(l(),v(`div`,Gn,n(r.$t(`createPage.compareEnginesHint`)),1)):h(``,!0)])):h(``,!0),K.value?(l(),v(`div`,Kn,n(r.$t(`createPage.engineA`)),1)):h(``,!0),vt.value.length>0?(l(),v(`div`,qn,[p(P,{modelValue:G.value,"onUpdate:modelValue":a[21]||=e=>G.value=e,options:vt.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.select`)},null,8,[`modelValue`,`options`,`label`])])):h(``,!0),b(`div`,Jn,[p(P,{modelValue:z.value,"onUpdate:modelValue":a[22]||=e=>z.value=e,options:Mr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.model`)},{option:f(({opt:e,itemProps:r})=>[p(Ee,t(d(r)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e.label),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`label`])]),b(`div`,Yn,[p(P,{modelValue:V.value,"onUpdate:modelValue":a[23]||=e=>V.value=e,options:zr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.effort`)},{option:f(({opt:e,itemProps:r})=>[p(Ee,t(d(r)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e.label),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`label`])]),b(`div`,Xn,[p(P,{"model-value":Fi.value.agentPermissionMode,options:Tt.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,"option-disable":o,label:r.$t(`agentPermissionMode.label`),hint:X.value?r.$t(`workflow.planExecution`):void 0,"onUpdate:modelValue":a[24]||=e=>Ct.value=e},null,8,[`model-value`,`options`,`label`,`hint`])]),b(`div`,Zn,[p($e,{modelValue:ht.value,"onUpdate:modelValue":a[25]||=e=>ht.value=e,inherit:``},null,8,[`modelValue`])]),K.value?(l(),v(y,{key:3},[b(`div`,Qn,n(r.$t(`createPage.engineB`)),1),b(`div`,$n,[p(P,{modelValue:q.value,"onUpdate:modelValue":a[26]||=e=>q.value=e,options:yt.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.select`)},null,8,[`modelValue`,`options`,`label`])]),b(`div`,er,[p(P,{modelValue:pt.value,"onUpdate:modelValue":a[27]||=e=>pt.value=e,options:Nr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.model`)},{option:f(({opt:e,itemProps:r})=>[p(Ee,t(d(r)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e.label),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`label`])]),b(`div`,tr,[p(P,{modelValue:mt.value,"onUpdate:modelValue":a[28]||=e=>mt.value=e,options:Pr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,label:r.$t(`engine.effort`)},{option:f(({opt:e,itemProps:r})=>[p(Ee,t(d(r)),{default:f(()=>[p(F,null,{default:f(()=>[p(N,null,{default:f(()=>[g(n(e.label),1)]),_:2},1024),p(N,{caption:``},{default:f(()=>[g(n(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`label`])]),b(`div`,nr,[p(P,{"model-value":Ir.value.agentPermissionMode,options:Fr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,"option-disable":o,label:r.$t(`agentPermissionMode.label`),hint:X.value?r.$t(`workflow.planExecution`):void 0,"onUpdate:modelValue":a[29]||=e=>gt.value=e},null,8,[`model-value`,`options`,`label`,`hint`])])],64)):h(``,!0)]),_:1})]),_:1},8,[`label`]),p(T,{name:`slide`},{default:f(()=>[X.value?(l(),m(k,{key:0,class:`auto-loop-panel column`},{default:f(()=>[b(`div`,rr,n(r.$t(`autoLoop.startInMode`)),1),p(Pe,{modelValue:$r.value,"onUpdate:modelValue":a[30]||=e=>$r.value=e,dense:``,size:`sm`,spread:``,"no-caps":``,unelevated:``,class:`auto-loop-session-toggle`,"toggle-color":`primary`,color:`kobo-surface-2`,"text-color":`kobo-2`,options:[{label:r.$t(`autoLoop.sessionMode.perTask`),value:`per_task`,icon:`restart_alt`},{label:r.$t(`autoLoop.sessionMode.continuous`),value:`continuous`,icon:`link`}]},null,8,[`modelValue`,`options`]),K.value?(l(),v(`div`,ir,n(r.$t(`createPage.compareBrainstormLocked`)),1)):h(``,!0),b(`div`,ar,[b(`div`,or,[p(P,{modelValue:B.value,"onUpdate:modelValue":a[31]||=e=>B.value=e,options:Mr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,disable:K.value,label:r.$t(`autoLoop.brainstormModelPrefix`)},null,8,[`modelValue`,`options`,`disable`,`label`])]),b(`div`,sr,[p(P,{modelValue:st.value,"onUpdate:modelValue":a[32]||=e=>st.value=e,options:zr.value,dark:``,dense:``,outlined:``,"stack-label":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,disable:K.value,label:r.$t(`autoLoop.brainstormReasoningPrefix`)},null,8,[`modelValue`,`options`,`disable`,`label`])])])]),_:1})):h(``,!0)]),_:1})]),_:1}),p(De,{dark:``,dense:``,"expand-separator":``,icon:`settings`,label:r.$t(`createPage.advancedOptions`),class:`advanced-options rounded-borders`},{default:f(()=>[p(k,null,{default:f(()=>[p(pe,{modelValue:lt.value,"onUpdate:modelValue":a[33]||=e=>lt.value=e,dense:``,color:`orange-5`,icon:`play_disabled`,label:r.$t(`createPage.skipSetupScript`),disable:Z.value&&!Di.value},null,8,[`modelValue`,`label`,`disable`])]),_:1})]),_:1},8,[`label`]),p(le,{flat:``,bordered:``,class:`create-actions-card`},{default:f(()=>[p(k,{class:`row items-center justify-between q-gutter-md`},{default:f(()=>[b(`div`,cr,n(R.value?r.$t(`createPage.notionExtractHint`):r.$t(`createPage.keyboardHint`)),1),b(`div`,lr,[p(O,{flat:``,dense:``,"no-caps":``,color:`kobo-2`,label:r.$t(`common.cancel`),onClick:a[34]||=t=>e(te).back()},null,8,[`label`]),p(O,{unelevated:``,dense:``,"no-caps":``,color:`primary`,"icon-right":`arrow_forward`,label:r.$t(`createPage.createWorkspace`),loading:jt.value,disable:jt.value||Z.value&&!Q.value,onClick:ia},null,8,[`label`,`loading`,`disable`])])]),_:1}),jt.value&&Ft.value?(l(),m(k,{key:0,class:`create-page__progress text-caption q-pt-none`},{default:f(()=>[p(Ce,{size:`18px`}),b(`span`,ur,n(Ft.value),1),It.value?(l(),v(`span`,dr,n(It.value),1)):h(``,!0)]),_:1})):h(``,!0)]),_:1})])]),p(Ot,{modelValue:Ci.value,"onUpdate:modelValue":a[35]||=e=>Ci.value=e,"project-path":H.value,onSelect:ji},null,8,[`modelValue`,`project-path`]),Ti.value?(l(),m(_t,{key:0,modelValue:wi.value,"onUpdate:modelValue":a[36]||=e=>wi.value=e,"project-path":H.value,pr:Ti.value,onResolved:Ni,onOpenWorkspace:Mi},null,8,[`modelValue`,`project-path`,`pr`])):h(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-b6f7b14d`]]);export{pr as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.creation-attachments__toolbar[data-v-8c2d648c],.creation-attachments__item[data-v-8c2d648c]{align-items:center;gap:var(--kobo-space-sm);display:flex}.creation-attachments__toolbar[data-v-8c2d648c]{margin-top:var(--kobo-space-xs);flex-wrap:wrap}.creation-attachments__hint[data-v-8c2d648c]{color:var(--kobo-text-3);font-size:inherit}.creation-attachments__error[data-v-8c2d648c]{color:var(--kobo-danger);margin:var(--kobo-space-xs) 0}.creation-attachments__list[data-v-8c2d648c]{gap:var(--kobo-space-sm);margin:var(--kobo-space-sm) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.creation-attachments__item[data-v-8c2d648c]{width:100%;min-width:0;max-width:100%;padding:var(--kobo-space-xs);background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-sm)}.creation-attachments__preview[data-v-8c2d648c]{width:var(--kobo-space-4xl);height:var(--kobo-space-4xl);-o-object-fit:contain;object-fit:contain;flex-shrink:0}.creation-attachments__name[data-v-8c2d648c]{text-overflow:ellipsis;white-space:nowrap;width:0;min-width:0;color:var(--kobo-text-2);flex:1;overflow:hidden}.pr-picker__list-section[data-v-6bce7dc6]{max-height:60vh;overflow-y:auto}.pr-picker__item[aria-disabled=true][data-v-6bce7dc6]{opacity:.5}.create-page[data-v-b6f7b14d]{background:var(--kobo-bg);min-height:100%;padding:48px 24px 80px;position:relative}.create-page__drawer-toggle[data-v-b6f7b14d]{top:var(--kobo-space-md);left:var(--kobo-space-md);z-index:1;position:absolute}.create-page__progress[data-v-b6f7b14d]{align-items:center;gap:var(--kobo-space-sm);color:var(--kobo-text-2);display:flex}.create-page__progress-counter[data-v-b6f7b14d]{font-family:var(--kobo-font-mono);color:var(--kobo-text-3)}.create-page__overrides[data-v-b6f7b14d]{gap:var(--kobo-space-xs);padding:var(--kobo-space-md);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-sm);background:var(--kobo-surface-2);flex-direction:column;display:flex}.create-page__overrides-title[data-v-b6f7b14d]{align-items:center;gap:var(--kobo-space-xs);color:var(--kobo-text-2);display:flex}.create-page__overrides-item[data-v-b6f7b14d]{color:var(--kobo-text-3)}.create-inner[data-v-b6f7b14d]{width:100%;max-width:960px}.create-title[data-v-b6f7b14d]{letter-spacing:-.02em;font-size:30px;line-height:1.2}.create-sections[data-v-b6f7b14d]{gap:24px}.responsive-fields[data-v-b6f7b14d]{row-gap:16px}.responsive-fields--sm[data-v-b6f7b14d]{row-gap:8px}.create-section-card[data-v-b6f7b14d],.create-actions-card[data-v-b6f7b14d]{background:var(--kobo-surface);border-color:#ffffff1f}.card-textarea-wrap[data-v-b6f7b14d]{position:relative}.create-textarea[data-v-b6f7b14d] .q-field__control{min-height:220px}.create-textarea[data-v-b6f7b14d] textarea{resize:vertical;line-height:1.6;min-height:180px!important}.create-slash-popup[data-v-b6f7b14d]{z-index:20;position:absolute;top:calc(100% + 4px);left:12px;right:12px}.source-panel[data-v-b6f7b14d]{background:var(--kobo-surface-2);border:1px solid #ffffff1a}.peek-card[data-v-b6f7b14d]{color:var(--kobo-text-2);background:#ffffff06;border-color:#ffffff1a;transition:background .15s,border-color .15s,transform .1s}.peek-card[data-v-b6f7b14d]:hover{background:#ffffff0f;border-color:#818cf880}.peek-card[data-v-b6f7b14d]:active{transform:scale(.99)}.peek-card--active[data-v-b6f7b14d]{border-color:var(--kobo-accent);background:#6366f124;box-shadow:inset 0 0 0 1px #818cf859}.peek-card--active .peek-card-icon[data-v-b6f7b14d]{color:var(--kobo-text-2)}.peek-card-icon[data-v-b6f7b14d]{color:var(--kobo-text-3);flex-shrink:0}.manual-expansion[data-v-b6f7b14d],.advanced-options[data-v-b6f7b14d]{background:var(--kobo-surface-2);border:1px solid #ffffff1a;overflow:hidden}.manual-expansion[data-v-b6f7b14d] .q-expansion-item__content,.advanced-options[data-v-b6f7b14d] .q-expansion-item__content{background:var(--kobo-bg-deep)}.manual-expansion[data-v-b6f7b14d] .q-chip{max-width:100%;height:auto;min-height:32px}.manual-expansion[data-v-b6f7b14d] .q-chip__content{white-space:normal;overflow-wrap:anywhere}.auto-loop-panel[data-v-b6f7b14d]{background:#f59e0b0f;border-top:1px solid #f59e0b38;gap:16px}.auto-loop-session-toggle[data-v-b6f7b14d] .q-btn{min-height:32px;padding-top:4px;padding-bottom:4px}[data-v-b6f7b14d] .agent-config-header{min-height:56px;padding-top:6px;padding-bottom:8px}.agent-summary[data-v-b6f7b14d]{row-gap:4px}.agent-summary[data-v-b6f7b14d] .q-chip{margin:0}.create-actions-card[data-v-b6f7b14d]{z-index:10;position:sticky;bottom:16px;box-shadow:0 10px 36px #00000061}.voice-btn--recording[data-v-b6f7b14d]{animation:1.1s ease-in-out infinite voice-pulse-b6f7b14d}@keyframes voice-pulse-b6f7b14d{0%,to{opacity:1;transform:scale(1)}50%{opacity:.86;transform:scale(1.06)}}.slide-enter-active[data-v-b6f7b14d],.slide-leave-active[data-v-b6f7b14d]{transition:max-height .2s,opacity .2s;overflow:hidden}.slide-enter-from[data-v-b6f7b14d],.slide-leave-to[data-v-b6f7b14d]{opacity:0;max-height:0}.slide-enter-to[data-v-b6f7b14d],.slide-leave-from[data-v-b6f7b14d]{opacity:1;max-height:900px}@media (max-width:599px){.create-page[data-v-b6f7b14d]{padding:28px 12px 56px}.create-title[data-v-b6f7b14d]{font-size:26px}.create-actions-card[data-v-b6f7b14d]{bottom:8px}.create-actions-card[data-v-b6f7b14d] .q-card__section{align-items:stretch}.create-actions[data-v-b6f7b14d]{width:100%}.create-actions .q-btn[data-v-b6f7b14d]:last-child{flex:1}}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/DocumentsPanel-CqGg38Oi.js","assets/reactivity.esm-bundler-tuEvQ47f.js","assets/runtime-core.esm-bundler-DOiZcasU.js","assets/QBtn-b_baQtAt.js","assets/i18n-DKj-umtn.js","assets/preload-helper-DjzSQ1t3.js","assets/ToolCallItem-CjXWiKJc.js","assets/latest-request-CBPb8UWQ.js","assets/defineProperty-BbfpZ9Tg.js","assets/index-BPmUmc6D.js","assets/use-id-b4A2I8LB.js","assets/private.use-form-vxvbh_VN.js","assets/use-checkbox-BqDMQ6x7.js","assets/index-C8zAZ-k-.css","assets/use-tours-Dum-bOyQ.js","assets/use-tours-CTZuBZOi.css","assets/QTooltip-CO84H0cq.js","assets/render-chat-markdown-CafzCcmu.js","assets/ToolCallItem-DhjdG8vp.css","assets/build-path-tree-Bd50EZMW.js","assets/QSelect-BskTzVCM.js","assets/QItemSection-CR3Kfibl.js","assets/QChip-Chu7r6RZ.js","assets/use-slide-transition-C5eDGOmu.js","assets/DocumentsPanel-B8QY7FTj.css","assets/GitPanel-DRzhrs_V.js","assets/QList-DnezW6gW.js","assets/ClosePopup-C1a82pL9.js","assets/QBtnDropdown-BGGvQIvH.js","assets/QBtnGroup-CUmAgBV8.js","assets/WorkspaceAttentionLabels-CZxW7QSq.js","assets/formatters-DCjBZ47F.js","assets/WorkspaceAttentionLabels-DSw8Upcp.css","assets/clipboard-t9qe6lK7.js","assets/GitPanel-C3blk_Pd.css","assets/ComparisonPanel-CfmJHeH_.js","assets/QMarkupTable-wuDf50Oh.js","assets/ComparisonPanel-ByVbqYCs.css","assets/SchedulePanel-CPirTYw5.js","assets/QExpansionItem-C2XXHOHk.js","assets/QBadge-rGILsUYl.js","assets/QBtnToggle-COL46j6W.js","assets/SchedulePanel-CBM_GpS3.css","assets/TerminalPanel-C4dYabx6.js","assets/TerminalPanel-Dz9EE-Ph.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{M as e,S as t,dt as n,g as r,lt as i,st as a,u as o,v as s}from"./reactivity.esm-bundler-tuEvQ47f.js";import{B as c,C as l,D as u,F as d,G as f,J as p,K as m,L as h,N as g,O as _,P as v,R as y,T as b,V as x,X as S,Y as C,_ as w,b as T,d as E,f as D,g as O,j as ee,k,l as A,p as j,r as M,u as N,v as P,y as F,z as I}from"./runtime-core.esm-bundler-DOiZcasU.js";import{C as L,F as te,H as ne,L as re,T as R,V as ie,W as ae,b as oe,c as se,ft as ce,l as z,mt as B,nt as V,pt as H,st as le,t as U,tt as ue,x as de,z as fe}from"./QBtn-b_baQtAt.js";import{a as W,d as pe,f as me,i as he,l as ge,m as _e,o as G,p as ve,s as ye}from"./latest-request-CBPb8UWQ.js";import{C as be,T as xe,n as Se}from"./use-id-b4A2I8LB.js";import{a as K}from"./i18n-DKj-umtn.js";import{t as Ce}from"./preload-helper-DjzSQ1t3.js";import{Ct as we,D as Te,E as Ee,Ft as De,It as Oe,Jt as q,Kt as ke,O as Ae,S as je,St as Me,Yt as Ne,at as Pe,b as Fe,c as Ie,ct as Le,d as Re,et as ze,i as Be,jt as Ve,l as He,m as Ue,n as We,nt as Ge,ot as Ke,p as qe,qt as Je,r as Ye,rt as Xe,s as Ze,st as Qe,t as $e,w as et,zt as tt}from"./index-BPmUmc6D.js";import{t as nt}from"./QList-DnezW6gW.js";import{r as rt,s as J,t as it}from"./QSelect-BskTzVCM.js";import{n as Y,t as X}from"./QItemSection-CR3Kfibl.js";import{a as at,c as ot,i as st,o as ct,r as lt,s as ut,t as dt}from"./ToolCallItem-CjXWiKJc.js";import{a as Z,i as ft,n as pt,r as mt,t as ht}from"./use-tours-Dum-bOyQ.js";import{a as gt,c as _t,d as vt,i as yt,l as bt,n as xt,t as St}from"./use-worktree-restore-BQyoz3Qa.js";import{t as Q}from"./QTooltip-CO84H0cq.js";import{n as Ct}from"./render-chat-markdown-CafzCcmu.js";import{t as wt}from"./QBadge-rGILsUYl.js";import{t as Tt}from"./QChip-Chu7r6RZ.js";import{t as $}from"./ClosePopup-C1a82pL9.js";import{t as Et}from"./use-is-mobile-DLIZxEo9.js";import{i as Dt,t as Ot}from"./permissionModes-Cc5VaOdC.js";import{a as kt,c as At,i as jt,l as Mt,n as Nt,r as Pt,t as Ft}from"./efforts-CDsBbk8o.js";import{n as It,t as Lt}from"./WorkspaceAttentionLabels-CZxW7QSq.js";import{n as Rt,r as zt,t as Bt}from"./custom-sounds-DoPDmcY5.js";import{t as Vt}from"./QBanner-mzrnn82R.js";import{t as Ht}from"./formatters-DCjBZ47F.js";import{a as Ut,i as Wt,n as Gt,r as Kt}from"./project-color-BQbOnYBN.js";import{n as qt}from"./SettingsPage-DCMZL7GO.js";var Jt={class:`acceptance-panel q-pa-md`},Yt={class:`row items-center q-mb-sm`},Xt={class:`text-caption text-uppercase text-weight-bold text-kobo-3`,style:{"letter-spacing":`0.05em`}},Zt={key:0,class:`criterion-add-row row items-center q-mb-xs`},Qt={key:1,class:`acceptance-list`},$t=[`onDblclick`],en={key:2,class:`text-caption text-kobo-3`,style:{"font-size":`11px`}},tn=Z(F({__name:`AcceptancePanel`,props:{tasks:{}},setup(t){let{t:r}=K(),o=oe(),c=Ge(),l=qe();function u(){let e=c.selectedWorkspaceId;e&&At(e,l,c)}let d=s(!1),f=s(``),p=s(null),m=s(``),g=s({});function v(e,t){if(t){let n=t.$el??t;g.value[e]=n}else delete g.value[e]}function y(e){switch(e){case`done`:return`check_circle`;case`in_progress`:return`timelapse`;default:return`radio_button_unchecked`}}function b(e){switch(e){case`done`:return`var(--kobo-success)`;case`in_progress`:return`var(--kobo-warning)`;default:return`var(--kobo-text-3)`}}async function x(e){let t=e.status===`done`?`pending`:`done`,n=e.workspaceId;try{await W(`/api/workspaces/${e.workspaceId}/tasks/${e.id}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({status:t})}),c.fetchWorkspaceDetails(n)}catch(e){console.error(`Failed to update task:`,e),o.notify({type:`negative`,message:r(`tasks.updateFailed`),caption:e instanceof Error&&e.message?e.message:void 0,position:`top`})}}function S(){d.value||(d.value=!0,f.value=``)}async function T(){let e=f.value.trim(),t=c.selectedWorkspace?.id;if(e&&t)try{await c.createTask(t,e,!0),f.value=``,d.value=!1}catch{}}function ee(){f.value=``,d.value=!1}function k(e){p.value=e.id,m.value=e.title,_(()=>{let t=g.value[e.id]?.querySelector(`input, textarea`);t?.focus(),t?.select()})}async function A(e){if(p.value!==e.id)return;let t=m.value.trim(),n=e.id;if(p.value=null,!t||t===e.title)return;let r=c.selectedWorkspace?.id;if(r)try{await c.updateTaskTitle(r,n,t)}catch{}}function P(){p.value=null,m.value=``}async function F(e){let t=c.selectedWorkspace?.id;if(t)try{await c.deleteTask(t,e.id)}catch{}}return(r,o)=>(h(),j(`div`,Jt,[N(`div`,Yt,[N(`div`,Xt,n(r.$t(`acceptance.title`)),1),w(ft),e(c).selectedWorkspace?(h(),E(U,{key:0,flat:``,dense:``,round:``,size:`xs`,icon:`fact_check`,color:`kobo-2`,onClick:u},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(r.$t(`tasks.askProgress`)),1)]),_:1})]),_:1})):D(``,!0),e(c).selectedWorkspace?(h(),E(U,{key:1,flat:``,dense:``,round:``,size:`xs`,icon:`add`,color:`primary`,onClick:S},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(r.$t(`tooltip.addCriterion`)),1)]),_:1})]),_:1})):D(``,!0)]),d.value?(h(),j(`div`,Zt,[w(we,{modelValue:f.value,"onUpdate:modelValue":o[0]||=e=>f.value=e,dark:``,dense:``,borderless:``,autofocus:``,placeholder:r.$t(`acceptance.newCriterion`),class:`col criterion-input`,"input-class":`criterion-input-inner`,onKeydown:[H(B(T,[`prevent`]),[`enter`]),H(B(ee,[`prevent`]),[`esc`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])):D(``,!0),t.tasks.length>0?(h(),j(`div`,Qt,[(h(!0),j(M,null,I(t.tasks,e=>(h(),j(`div`,{key:e.id,class:`acceptance-item row items-center q-mb-xxs`},[w(z,{name:y(e.status),size:`16px`,style:i({color:b(e.status)}),class:`q-mr-xs cursor-pointer`,onClick:t=>x(e)},null,8,[`name`,`style`,`onClick`]),p.value===e.id?(h(),E(we,{key:0,ref_for:!0,ref:t=>v(e.id,t),modelValue:m.value,"onUpdate:modelValue":o[1]||=e=>m.value=e,dark:``,dense:``,borderless:``,class:`col criterion-input`,"input-class":`criterion-input-inner`,onKeydown:[H(B(t=>A(e),[`prevent`]),[`enter`]),H(B(P,[`prevent`]),[`esc`])],onBlur:t=>A(e)},null,8,[`modelValue`,`onKeydown`,`onBlur`])):(h(),j(M,{key:1},[N(`span`,{class:a([`col acceptance-title text-caption`,{"text-strike":e.status===`done`}]),style:i({color:e.status===`done`?`var(--kobo-success)`:`var(--kobo-text-2)`}),onDblclick:t=>k(e)},n(e.title),47,$t),w(U,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,color:`kobo-3`,class:`criterion-delete-btn`,onClick:t=>F(e)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(r.$t(`tooltip.removeCriterion`)),1)]),_:1})]),_:1},8,[`onClick`])],64))]))),128))])):d.value?D(``,!0):(h(),j(`div`,en,n(r.$t(`acceptance.empty`)),1))]))}}),[[`__scopeId`,`data-v-f4d2d32c`]]),nn={class:`notion-panel q-pa-md`},rn={class:`row items-center q-mb-sm`},an={class:`text-caption text-uppercase text-weight-bold text-kobo-3`,style:{"letter-spacing":`0.05em`}},on={key:0,class:`q-mb-sm`},sn={class:`text-caption text-kobo-3`,style:{"font-size":`11px`}},cn={key:1,class:`text-caption text-kobo-3 q-mb-sm`,style:{"font-size":`11px`}},ln={key:2,class:`task-add-row row items-center q-mb-xs`},un={key:3,class:`tasks-list`},dn=[`onDblclick`],fn={key:1,class:`text-caption text-kobo-3`},pn=Z(F({__name:`TasksPanel`,props:{workspace:{},tasks:{}},setup(e){let t=e,{t:r}=K(),o=oe(),c=Ge(),l=qe();function u(){t.workspace?.id&&At(t.workspace.id,l,c)}let d=A(()=>t.tasks.filter(e=>!e.isAcceptanceCriterion)),f=A(()=>d.value.filter(e=>e.status===`done`).length),p=A(()=>d.value.length),m=A(()=>p.value>0?f.value/p.value:0),g=s(!1),v=s(``),y=s(null),b=s(``),x=s({});function S(e,t){if(t){let n=t.$el??t;x.value[e]=n}else delete x.value[e]}function T(){g.value||(g.value=!0,v.value=``)}async function ee(){let e=v.value.trim();if(e&&t.workspace?.id)try{await c.createTask(t.workspace.id,e,!1),v.value=``,g.value=!1}catch{}}function k(){v.value=``,g.value=!1}function P(e){y.value=e.id,b.value=e.title,_(()=>{let t=x.value[e.id]?.querySelector(`input, textarea`);t?.focus(),t?.select()})}async function F(e){if(y.value!==e.id)return;let n=b.value.trim(),r=e.id;if(y.value=null,n&&n!==e.title&&t.workspace?.id)try{await c.updateTaskTitle(t.workspace.id,r,n)}catch{}}function L(){y.value=null,b.value=``}async function te(e){if(t.workspace?.id)try{await c.deleteTask(t.workspace.id,e.id)}catch{}}async function ne(e){if(!t.workspace?.id)return;let n=e.status===`done`?`pending`:`done`,i=e.workspaceId;try{await W(`/api/workspaces/${e.workspaceId}/tasks/${e.id}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({status:n})}),c.fetchWorkspaceDetails(i)}catch(e){console.error(`Failed to toggle task:`,e),o.notify({type:`negative`,message:r(`tasks.updateFailed`),caption:e instanceof Error&&e.message?e.message:void 0,position:`top`})}}function re(e){switch(e){case`done`:return`check_circle`;case`in_progress`:return`timelapse`;default:return`radio_button_unchecked`}}function R(e){switch(e){case`done`:return`var(--kobo-success)`;case`in_progress`:return`var(--kobo-warning)`;default:return`var(--kobo-text-3)`}}return(t,r)=>(h(),j(`div`,nn,[N(`div`,rn,[N(`div`,an,n(t.$t(`tasks.title`)),1),w(ft),e.workspace?(h(),E(U,{key:0,flat:``,dense:``,round:``,size:`xs`,icon:`fact_check`,color:`kobo-2`,onClick:u},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tasks.askProgress`)),1)]),_:1})]),_:1})):D(``,!0),e.workspace?(h(),E(U,{key:1,flat:``,dense:``,round:``,size:`xs`,icon:`add`,color:`primary`,onClick:T},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tooltip.addTask`)),1)]),_:1})]),_:1})):D(``,!0)]),e.workspace?(h(),j(M,{key:0},[p.value>0?(h(),j(`div`,on,[w(Je,{value:m.value,color:`primary`,"track-color":`kobo-surface-2`,class:`q-mb-xs`,style:{height:`4px`,"border-radius":`2px`}},null,8,[`value`]),N(`div`,sn,n(t.$t(`notion.subtasks`,{done:f.value,total:p.value})),1)])):g.value?D(``,!0):(h(),j(`div`,cn,n(t.$t(`notion.noTasks`)),1)),g.value?(h(),j(`div`,ln,[w(we,{modelValue:v.value,"onUpdate:modelValue":r[0]||=e=>v.value=e,dark:``,dense:``,borderless:``,autofocus:``,placeholder:t.$t(`notion.newTask`),class:`col task-input`,"input-class":`task-input-inner`,onKeydown:[H(B(ee,[`prevent`]),[`enter`]),H(B(k,[`prevent`]),[`esc`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`])])):D(``,!0),d.value.length>0?(h(),j(`div`,un,[(h(!0),j(M,null,I(d.value,e=>(h(),j(`div`,{key:e.id,class:`task-item row items-center q-py-xxs`},[w(z,{name:re(e.status),size:`14px`,style:i({color:R(e.status)}),class:`q-mr-xs cursor-pointer`,onClick:t=>ne(e)},null,8,[`name`,`style`,`onClick`]),y.value===e.id?(h(),E(we,{key:0,ref_for:!0,ref:t=>S(e.id,t),modelValue:b.value,"onUpdate:modelValue":r[1]||=e=>b.value=e,dark:``,dense:``,borderless:``,class:`col task-input`,"input-class":`task-input-inner`,onKeydown:[H(B(t=>F(e),[`prevent`]),[`enter`]),H(B(L,[`prevent`]),[`esc`])],onBlur:t=>F(e)},null,8,[`modelValue`,`onKeydown`,`onBlur`])):(h(),j(M,{key:1},[N(`span`,{class:a([`col task-title text-caption`,{"text-strike":e.status===`done`}]),style:i({color:e.status===`done`?`var(--kobo-success)`:`var(--kobo-text-2)`}),onDblclick:t=>P(e)},n(e.title),47,dn),w(U,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,color:`kobo-3`,class:`task-delete-btn`,onClick:t=>te(e)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tooltip.removeTask`)),1)]),_:1})]),_:1},8,[`onClick`])],64))]))),128))])):D(``,!0)],64)):(h(),j(`div`,fn,n(t.$t(`common.selectWorkspace`)),1))]))}}),[[`__scopeId`,`data-v-8083b654`]]),mn=[`tabindex`,`aria-describedby`],hn=[`id`],gn=Z(F({__name:`ActionAvailability`,props:{reason:{},settings:{type:Boolean},settingsTab:{}},setup(t){let r=f();return(i,a)=>{let o=x(`router-link`);return h(),j(`div`,{class:`action-availability`,tabindex:t.reason?0:void 0,"aria-describedby":t.reason?e(r):void 0},[c(i.$slots,`default`,{},void 0,!0),t.reason?(h(),j(M,{key:0},[w(Q,null,{default:C(()=>[O(n(t.reason),1)]),_:1}),N(`div`,{id:e(r),class:`text-caption text-kobo-3 q-mb-sm`,style:{"line-height":`1.4`}},[O(n(t.reason)+` `,1),t.settings?(h(),E(o,{key:0,to:{path:`/settings`,query:t.settingsTab?{tab:t.settingsTab}:void 0},class:`availability-link`},{default:C(()=>[O(n(i.$t(`blockers.settings`)),1)]),_:1},8,[`to`])):D(``,!0)],8,hn)],64)):D(``,!0)],8,mn)}}}),[[`__scopeId`,`data-v-86e4abf8`]]);function _n(e){return e.missingWorkspace?`noWorkspace`:e.purged?`purged`:e.archived?`archived`:e.operation?`operation`:e.agentBusy?`agentBusy`:e.missingConfiguration?`configuration`:null}var vn=0,yn=[`click`,`keydown`],bn={icon:String,label:[Number,String],alert:[Boolean,String],alertIcon:String,name:{type:[Number,String],default:()=>`t_${vn++}`},noCaps:Boolean,tabindex:[String,Number],disable:Boolean,contentClass:String,ripple:{type:[Boolean,Object],default:!0}},xn=[13,32];function Sn(e,n,r,i){let a=b(ie,te);if(a===te)return console.error(`QTab/QRouteTab component needs to be child of QTabs`),te;let{proxy:o}=T(),s=t(null),c=t(null),u=t(null);function d(){return e.disable||e.ripple===!1?!1:{keyCodes:xn,early:!0,...e.ripple===!0?{}:e.ripple}}function f(t){let n=a.tabProps.value;return`q-tab relative-position self-stretch flex flex-center text-center`+(t?` q-tab--active`+(n.activeClass?` `+n.activeClass:``)+(n.activeColor?` text-${n.activeColor}`:``)+(n.activeBgColor?` bg-${n.activeBgColor}`:``):` q-tab--inactive`)+(e.icon&&e.label&&!n.inlineLabel?` q-tab--full`:``)+(e.noCaps||n.noCaps?` q-tab--no-caps`:``)+(e.disable?` disabled`:` q-focusable q-hoverable cursor-pointer`)+(i===void 0?``:i.linkClass.value)}function p(){return`q-tab__content self-stretch flex-center relative-position q-anchor--skip non-selectable `+(a.tabProps.value.inlineLabel?`row no-wrap q-tab__content--inline`:`column`)+(e.contentClass===void 0?``:` ${e.contentClass}`)}let m=A(()=>a.currentModel.value===e.name),h=A(()=>{if(e.disable||a.hasFocus.value)return-1;let t=a.tabStopName.value;return t===null||t===e.name?e.tabindex||0:-1});function g(t,n){if(!n&&!t?.qAvoidFocus&&s.value?.focus({preventScroll:!0}),e.disable){i?.hasRouterLink.value===!0&&ue(t);return}if(i===void 0){a.updateModel({name:e.name}),r(`click`,t);return}if(i.hasRouterLink.value){let n=(n={})=>{let r,o=n.to===void 0||Ne(n.to,e.to)?a.avoidRouteWatcher=Se():null;return i.navigateToRouterLink(t,{...n,returnRouterError:!0}).catch(e=>{r=e}).then(t=>{if(o===a.avoidRouteWatcher&&(a.avoidRouteWatcher=!1,r===void 0&&(t===void 0||t.message?.startsWith(`Avoided redundant navigation`)===!0)&&a.updateModel({name:e.name})),n.returnRouterError)return r===void 0?t:Promise.reject(r)})};r(`click`,t,n),t.defaultPrevented||n();return}r(`click`,t)}function _(e){r(`keydown`,e),!e.defaultPrevented&&(ne(e,[13,32])?g(e,!0):e.keyCode>=35&&e.keyCode<=40&&!e.altKey&&!e.metaKey&&!ae(e)&&a.onKbdNavigate(e.keyCode,o.$el)&&ue(e))}function y(){let t=a.tabProps.value,r=t.narrowIndicator,i=[],o=l(`div`,{ref:u,class:[`q-tab__indicator`,t.indicatorClass]});e.icon!==void 0&&i.push(l(z,{class:`q-tab__icon`,name:e.icon})),e.label!==void 0&&i.push(l(`div`,{class:`q-tab__label`},e.label)),e.alert&&i.push(e.alertIcon===void 0?l(`div`,{class:`q-tab__alert`+(e.alert===!0?``:` text-${e.alert}`)}):l(z,{class:`q-tab__alert-icon`,color:e.alert===!0?void 0:e.alert,name:e.alertIcon})),r&&i.push(o);let c=[l(`div`,{class:`q-focus-helper`,tabindex:-1,ref:s}),l(`div`,{class:p()},de(n.default,i))];return r||c.push(o),c}let x={name:A(()=>e.name),disable:A(()=>e.disable),rootRef:c,tabIndicatorRef:u,routeData:i};ee(()=>{a.unregisterTab(x)}),v(()=>{a.registerTab(x)});function C(t,n){let r={ref:c,class:f(m.value),tabindex:h.value,role:`tab`,"aria-selected":m.value?`true`:`false`,"aria-disabled":e.disable?`true`:void 0,onClick:g,onKeydown:_,...n};return S(l(t,r,y()),[[se,d()]])}return{renderTab:C,$tabs:a}}var Cn=V({name:`QTab`,props:bn,emits:yn,setup(e,{slots:t,emit:n}){let{renderTab:r}=Sn(e,t,n);return()=>r(`div`)}});function wn(e,t,n){let r=n?[`left`,`right`]:[`top`,`bottom`];return`absolute-${t?r[0]:r[1]}${e?` text-${e}`:``}`}function Tn(e,t){for(let n in e)if(e[n]!==t[n])return!1;return!0}var En=[`left`,`center`,`right`,`justify`],Dn=V({name:`QTabs`,props:{modelValue:[Number,String],align:{type:String,default:`center`,validator:e=>En.includes(e)},breakpoint:{type:[String,Number],default:600},vertical:Boolean,shrink:Boolean,stretch:Boolean,activeClass:String,activeColor:String,activeBgColor:String,indicatorColor:String,leftIcon:String,rightIcon:String,outsideArrows:Boolean,mobileArrows:Boolean,switchIndicator:Boolean,narrowIndicator:Boolean,inlineLabel:Boolean,noCaps:Boolean,dense:Boolean,contentClass:String,"onUpdate:modelValue":[Function,Array]},setup(e,{slots:n,emit:r}){let{proxy:i}=T(),a=oe(),{registerTick:o}=be(),{registerTick:c}=be(),{registerTick:u}=be(),{registerTimeout:d,removeTimeout:f}=xe(),{registerTimeout:m,removeTimeout:h}=xe(),_=t(null),v=t(null),b=s(e.modelValue),x=s(!1),S=s(!0),C=s(!1),w=s(!1),E=[],D=s(0),O=s(!1),j=null,M=null,N,P=A(()=>({activeClass:e.activeClass,activeColor:e.activeColor,activeBgColor:e.activeBgColor,indicatorClass:wn(e.indicatorColor,e.switchIndicator,e.vertical),narrowIndicator:e.narrowIndicator,inlineLabel:e.inlineLabel,noCaps:e.noCaps})),F=A(()=>{let e=D.value,t=b.value,n=null;for(let r=0;r<e;r++){let e=E[r];if(!e.disable.value){if(e.name.value===t)return t;n===null&&(n=e.name.value)}}return n}),I=A(()=>`q-tabs__content--align-${x.value?`left`:w.value?`justify`:e.align}`),te=A(()=>`q-tabs row no-wrap items-center q-tabs--${x.value?``:`not-`}scrollable q-tabs--${e.vertical?`vertical`:`horizontal`} q-tabs__arrows--${e.outsideArrows?`outside`:`inside`} q-tabs--mobile-with${e.mobileArrows?``:`out`}-arrows`+(e.dense?` q-tabs--dense`:``)+(e.shrink?` col-shrink`:``)+(e.stretch?` self-stretch`:``)),ne=A(()=>`q-tabs__content row no-wrap items-center self-stretch hide-scrollbar relative-position `+I.value+(e.contentClass===void 0?``:` ${e.contentClass}`)),re=A(()=>e.vertical?`height`:`width`),R=A(()=>!e.vertical&&a.lang.rtl===!0);p(R,H),p(()=>e.modelValue,e=>{ae({name:e,setCurrent:!0,skipEmit:!0})}),p(()=>e.outsideArrows,se);function ae({name:t,setCurrent:n,skipEmit:i}){b.value!==t&&(!i&&e[`onUpdate:modelValue`]!==void 0&&r(`update:modelValue`,t),(n||e[`onUpdate:modelValue`]===void 0)&&(B(b.value,t),b.value=t))}function se(){o(()=>{_.value&&ce({width:_.value.offsetWidth,height:_.value.offsetHeight})})}function ce(t){if(v.value===null)return;let n=t[re.value],r=Array.prototype.reduce.call(v.value.children,(e,t)=>e+t.getBoundingClientRect()[re.value],0),i=n>0&&r-n>1;x.value=i,i&&c(H),w.value=n<Number.parseInt(e.breakpoint,10)}ot({debounce:100,onResize:ce});function B(t,n){let r=t!=null&&t!==``?E.find(e=>e.name.value===t):null,i=n!=null&&n!==``?E.find(e=>e.name.value===n):null;if(we)we=!1;else if(r&&i){let t=r.tabIndicatorRef.value,n=i.tabIndicatorRef.value;j!==null&&(clearTimeout(j),j=null),t.style.transition=`none`,t.style.transform=`none`,n.style.transition=`none`,n.style.transform=`none`;let a=t.getBoundingClientRect(),o=n.getBoundingClientRect();n.style.transform=e.vertical?`translateY(${a.top-o.top}px) scaleY(${o.height?a.height/o.height:1})`:`translateX(${a.left-o.left}px) scaleX(${o.width?a.width/o.width:1})`,u(()=>{j=setTimeout(()=>{j=null,n.style.transition=`transform .25s cubic-bezier(.4, 0, .2, 1)`,n.style.transform=`none`},70)})}i&&x.value&&V(i.rootRef.value)}function V(t){let{left:n,width:r,top:i,height:a}=v.value.getBoundingClientRect(),o=t.getBoundingClientRect(),s=e.vertical?o.top-i:o.left-n;if(s<0){v.value[e.vertical?`scrollTop`:`scrollLeft`]+=Math.floor(s),H();return}s+=e.vertical?o.height-a:o.width-r,s>0&&(v.value[e.vertical?`scrollTop`:`scrollLeft`]+=Math.ceil(s),H())}function H(){let t=v.value;if(t===null)return;let n=t.getBoundingClientRect(),r=e.vertical?t.scrollTop:Math.abs(t.scrollLeft);R.value?(S.value=Math.ceil(r+n.width)<t.scrollWidth-1,C.value=r>0):(S.value=r>0,C.value=e.vertical?Math.ceil(r+n.height)<t.scrollHeight:Math.ceil(r+n.width)<t.scrollWidth)}function le(e){M!==null&&clearInterval(M),M=setInterval(()=>{pe(e)&&de()},5)}function U(){le(R.value?2**53-1:0)}function ue(){le(R.value?0:2**53-1)}function de(){M!==null&&(clearInterval(M),M=null)}function fe(t,n){let r=Array.prototype.filter.call(v.value.children,e=>e===n||e.matches?.(`.q-tab.q-focusable`)),i=r.length;if(i===0)return;if(t===36)return V(r[0]),r[0].focus(),!0;if(t===35)return V(r[i-1]),r[i-1].focus(),!0;let a=t===(e.vertical?38:37),o=t===(e.vertical?40:39),s=a?-1:o?1:void 0;if(s!==void 0){let t=e.vertical!==!0&&R.value?-1:1,a=(r.indexOf(n)+s*t+i)%i;return V(r[a]),r[a].focus({preventScroll:!0}),!0}}let W=A(()=>R.value?{get:e=>Math.abs(e.scrollLeft),set:(e,t)=>{e.scrollLeft=-t}}:e.vertical?{get:e=>e.scrollTop,set:(e,t)=>{e.scrollTop=t}}:{get:e=>e.scrollLeft,set:(e,t)=>{e.scrollLeft=t}});function pe(e){let t=v.value,{get:n,set:r}=W.value,i=!1,a=n(t),o=e<a?-1:1;return a+=o*5,a<0?(i=!0,a=0):(o===-1&&a<=e||o===1&&a>=e)&&(i=!0,a=e),r(t,a),H(),i}function me(){let e=null,t={matchedLen:0,queryDiff:9999,hrefLen:0},n=E.filter(e=>e.routeData?.hasRouterLink.value===!0),{hash:r,query:a}=i.$route,o=Object.keys(a).length;for(let i of n){let n=i.routeData.exact.value===!0;if(!i.routeData[n?`linkIsExactActive`:`linkIsActive`].value)continue;let{hash:s,query:c,matched:l,href:u}=i.routeData.resolvedLink.value,d=Object.keys(c).length;if(n){if(s!==r||d!==o||!Tn(a,c))continue;e=i.name.value;break}if(s!==``&&s!==r||d!==0&&!Tn(c,a))continue;let f={matchedLen:l.length,queryDiff:o-d,hrefLen:u.length-s.length};if(f.matchedLen>t.matchedLen){e=i.name.value,t=f;continue}if(f.matchedLen===t.matchedLen){if(f.queryDiff<t.queryDiff)e=i.name.value,t=f;else if(f.queryDiff!==t.queryDiff)continue;f.hrefLen>t.hrefLen&&(e=i.name.value,t=f)}}if(e===null&&E.some(e=>e.routeData===void 0&&e.name.value===b.value)){we=!1;return}ae({name:e,setCurrent:!0})}function he(e){if(f(),!O.value&&_.value!==null&&e.target&&typeof e.target.closest==`function`){let t=e.target.closest(`.q-tab`);t&&_.value.contains(t)&&(O.value=!0,x.value&&V(t))}}function ge(){d(()=>{O.value=!1},30)}function _e(){Se.avoidRouteWatcher===!1?m(me):h()}function G(){if(N===void 0){let e=p(()=>i.$route.fullPath,_e);N=()=>{e(),N=void 0}}}function ve(e){E.push(e),D.value++,se(),e.routeData===void 0||i.$route===void 0?m(()=>{if(x.value){let e=b.value,t=e!=null&&e!==``?E.find(t=>t.name.value===e):null;t&&V(t.rootRef.value)}}):(G(),e.routeData.hasRouterLink.value&&_e())}function ye(e){E.splice(E.indexOf(e),1),D.value--,se(),N!==void 0&&e.routeData!==void 0&&(E.every(e=>e.routeData===void 0)&&N(),_e())}let Se={currentModel:b,tabProps:P,hasFocus:O,tabStopName:F,registerTab:ve,unregisterTab:ye,verifyRouteModel:_e,updateModel:ae,onKbdNavigate:fe,avoidRouteWatcher:!1};y(ie,Se);function K(){j!==null&&clearTimeout(j),de(),N?.()}let Ce=!1,we=!1;return ee(K),g(()=>{Ce=N!==void 0,K()}),k(()=>{Ce&&(G(),we=!0,_e()),se()}),()=>l(`div`,{ref:_,class:te.value,role:`tablist`,"aria-orientation":e.vertical?`vertical`:`horizontal`,onFocusin:he,onFocusout:ge},[l(`div`,{ref:v,class:ne.value,onScroll:H},L(n.default)),l(z,{class:`q-tabs__arrow q-tabs__arrow--left absolute q-tab__icon`+(S.value?``:` q-tabs__arrow--faded`),name:e.leftIcon||a.iconSet.tabs[e.vertical?`up`:`left`],onMousedownPassive:U,onTouchstartPassive:U,onMouseupPassive:de,onMouseleavePassive:de,onTouchendPassive:de}),l(z,{class:`q-tabs__arrow q-tabs__arrow--right absolute q-tab__icon`+(C.value?``:` q-tabs__arrow--faded`),name:e.rightIcon||a.iconSet.tabs[e.vertical?`down`:`right`],onMousedownPassive:ue,onTouchstartPassive:ue,onMouseupPassive:de,onMouseleavePassive:de,onTouchendPassive:de})])}}),On=V({name:`QTabPanel`,props:Pt,setup(e,{slots:t}){return()=>l(`div`,{class:`q-tab-panel`,role:`tabpanel`,tabindex:0},L(t.default))}}),kn=V({name:`QTabPanels`,props:{...kt,..._e},emits:jt,setup(e,{slots:t}){let n=oe(),r=ve(e,n),{updatePanelsList:i,getPanelContent:a,panelDirectives:o}=Nt(),s=A(()=>`q-tab-panels q-panel-parent`+(r()?` q-tab-panels--dark q-dark`:``));return()=>(i(t),S(l(`div`,{class:s.value},a()),o.value))}}),An=V({name:`QPageContainer`,setup(e,{slots:t}){let n=oe(),r=b(re,te);if(r===te)return console.error(`QPageContainer needs to be child of QLayout`),te;y(fe,!0);let i=A(()=>{let e={};return r.header.space&&(e.paddingTop=`${r.header.size}px`),r.right.space&&(e[`padding${n.lang.rtl?`Left`:`Right`}`]=`${r.right.size}px`),r.footer.space&&(e.paddingBottom=`${r.footer.size}px`),r.left.space&&(e[`padding${n.lang.rtl?`Right`:`Left`}`]=`${r.left.size}px`),e});return()=>l(`div`,{class:`q-page-container`,style:i.value},L(t.default))}}),jn=/^(h|l)h(h|r) lpr (f|l)f(f|r)$/,Mn=V({name:`QLayout`,props:{container:Boolean,view:{type:String,default:`hhh lpr fff`,validator:e=>jn.test(e.toLowerCase())},onScroll:Function,onScrollHeight:Function,onResize:Function},setup(e,{slots:n,emit:i}){let a=oe(),o=t(null),c=t(null),u=()=>e.container?c.value:o.value,f=s(a.screen.height),m=s(e.container?0:a.screen.width),h=s({position:0,direction:`down`,inflectionPoint:0}),g=s(0),_=s(le.value?0:tt()),v=A(()=>`q-layout q-layout--`+(e.container?`containerized`:`standard`)),b=A(()=>e.container?null:{minHeight:a.screen.height+`px`}),x=A(()=>_.value===0?null:{[a.lang.rtl?`left`:`right`]:`${_.value}px`}),S=A(()=>_.value===0?null:{[a.lang.rtl?`right`:`left`]:0,[a.lang.rtl?`left`:`right`]:`-${_.value}px`,width:`calc(100% + ${_.value}px)`}),C=null;function w(t){let n={position:t.position.top,direction:t.direction,directionChanged:t.directionChanged,inflectionPoint:t.inflectionPoint.top,delta:t.delta.top};e.container||!document.qScrollPrevented?(C=null,T(n)):C=n}function T(t){h.value=t,e.onScroll!==void 0&&i(`scroll`,t)}function E(t){let{height:n,width:r}=t,a=!1;f.value!==n&&(a=!0,f.value=n,e.onScrollHeight!==void 0&&i(`scrollHeight`,n),O()),m.value!==r&&(a=!0,m.value=r),a&&e.onResize!==void 0&&i(`resize`,t)}function D({height:e}){g.value!==e&&(g.value=e,O())}function O(){if(e.container){let e=f.value>g.value?tt():0;_.value!==e&&(_.value=e)}}ut({target:u,onScroll:w}),ot({target:u,debounce:100,onResize:E}),ot(()=>({target:o,debounce:100,disabled:e.container!==!0,onResize:D}));let ee=null,k={instances:{},view:A(()=>e.view),isContainer:A(()=>e.container),rootRef:o,height:f,containerHeight:g,scrollbarWidth:_,totalWidth:A(()=>e.container?m.value+_.value:a.screen.width),rows:A(()=>{let t=e.view.toLowerCase().split(` `);return{top:[...t[0]],middle:[...t[1]],bottom:[...t[2]]}}),header:r({size:0,offset:0,space:!1}),right:r({size:300,offset:0,space:!1}),footer:r({size:0,offset:0,space:!1}),left:r({size:300,offset:0,space:!1}),scroll:h,animate(){ee===null?document.body.classList.add(`q-body--layout-animate`):clearTimeout(ee),ee=setTimeout(()=>{ee=null,document.body.classList.remove(`q-body--layout-animate`)},155)},update(e,t,n){k[e][t]=n}};y(re,k);{let e=()=>{if(C!==null){let e=C;C=null,T(e)}};De(e),d(()=>{Oe(e)})}if(tt()>0){let t=null,n=document.documentElement,r=()=>{t=null,n.classList.remove(`hide-scrollbar`)},i=()=>{if(t===null){if(n.scrollHeight>a.screen.height)return;n.classList.add(`hide-scrollbar`)}else clearTimeout(t);t=setTimeout(r,300)},o=e=>{t!==null&&e===`remove`&&(clearTimeout(t),r()),window[`${e}EventListener`](`resize`,i)};p(()=>e.container?`remove`:`add`,o),e.container||o(`add`),d(()=>{o(`remove`)})}return()=>{let t=l(`div`,{class:v.value,style:b.value,ref:e.container?c:o,tabindex:-1},L(n.default));return e.container?l(`div`,{class:`q-layout-container overflow-hidden`,ref:o},[l(`div`,{class:`absolute-full`,style:x.value},[l(`div`,{class:`scroll`,style:S.value},[t])])]):t}}}),Nn={class:`agent-todos-panel q-pa-md`},Pn={class:`row items-center q-mb-sm`},Fn={class:`text-caption text-uppercase text-weight-bold text-kobo-3`,style:{"letter-spacing":`0.05em`}},In={key:0,class:`todos-list`},Ln={key:1,class:`text-caption text-kobo-3`,style:{"font-size":`11px`}},Rn=Z(F({__name:`AgentTodosPanel`,setup(t){let{t:r}=K(),o=Ge();function s(e){switch(e){case`completed`:return`check_circle`;case`in_progress`:return`timelapse`;default:return`radio_button_unchecked`}}function c(e){switch(e){case`completed`:return`var(--kobo-success)`;case`in_progress`:return`var(--kobo-warning)`;default:return`var(--kobo-text-3)`}}return(t,r)=>(h(),j(`div`,Nn,[N(`div`,Pn,[N(`div`,Fn,n(t.$t(`agentTodos.title`)),1)]),e(o).currentAgentTodos.length>0?(h(),j(`div`,In,[(h(!0),j(M,null,I(e(o).currentAgentTodos,(e,t)=>(h(),j(`div`,{key:e.id??e.taskNumber??e.content??t,class:`todo-item row items-start q-py-xxs`},[w(z,{name:s(e.status),size:`14px`,style:i({color:c(e.status)}),class:`q-mr-xs q-mt-xxs`},null,8,[`name`,`style`]),N(`span`,{class:a([`col todo-title text-caption`,{"text-strike":e.status===`completed`}]),style:i({color:e.status===`completed`?`var(--kobo-success)`:`var(--kobo-text-2)`})},n(e.content),7)]))),128))])):(h(),j(`div`,Ln,n(t.$t(`agentTodos.empty`)),1))]))}}),[[`__scopeId`,`data-v-ae071fd5`]]),zn={key:0,"data-test":`first-run`,class:`first-run`,"aria-labelledby":`first-run-title`},Bn={id:`first-run-title`,class:`text-h6`},Vn={class:`row q-col-gutter-md`},Hn={class:`col-12 col-sm-8`},Un={class:`row items-center no-wrap q-gutter-x-sm`},Wn={class:`q-mt-md`},Gn={class:`text-caption`},Kn={class:`row q-gutter-sm`},qn={key:0,role:`alert`,class:`text-negative`},Jn={key:1,"aria-live":`polite`},Yn={key:0},Xn={class:`row q-gutter-sm q-mt-md`},Zn=Z(F({__name:`FirstRunSetup`,setup(e){let t=Ae(),r=Be(),i=s(!1),a=s(`claude-code`),o=s(``),c=s(!1),l=s(!1),u=s(!1),f=s(!1),m=s(null),g=A(()=>t.loaded&&(i.value||!t.global.onboardingComplete)),_=A(()=>!!o.value.trim()&&!!m.value&&!l.value&&!m.value.checks.some(e=>e.status===`error`||e.status===`missing`)),y=0;p([a,o],()=>{y++,m.value=null,f.value=!1});async function b(){let e=++y;l.value=!0,f.value=!1,m.value=null;try{let t=new URLSearchParams({engine:a.value,projectPath:o.value.trim()}),n=await he(`/api/environment?${t}`,{timeoutMs:15e3});e===y&&(m.value=n)}catch{e===y&&(f.value=!0)}finally{l.value=!1}}async function x(){u.value=!0,f.value=!1;try{await t.updateGlobal({onboardingComplete:!0}),i.value=!1}catch{f.value=!0}finally{u.value=!1}}async function S(){if(_.value&&!u.value){u.value=!0,f.value=!1;try{let e=o.value.trim(),n=a.value;t.getProjectByPath(e)||await t.upsertProject(e,{});let s=Array.from(crypto.getRandomValues(new Uint32Array(4)),e=>e.toString(16)).join(`-`),c=await r.push({name:`create`,query:{engine:n,project:e,setupRequest:s}});if(c&&!We(c,$e.duplicated))throw Error(`Navigation did not complete`);await t.updateGlobal({onboardingComplete:!0}),i.value=!1}catch{i.value=!0,f.value=!0}finally{u.value=!1}}}function C(){i.value=!0}return v(()=>window.addEventListener(`kobo:setup`,C)),d(()=>{y++,window.removeEventListener(`kobo:setup`,C)}),(e,t)=>g.value?(h(),j(`section`,zn,[N(`h2`,Bn,n(e.$t(`setup.title`)),1),N(`p`,null,n(e.$t(`setup.intro`)),1),N(`div`,Vn,[w(it,{modelValue:a.value,"onUpdate:modelValue":t[0]||=e=>a.value=e,class:`col-12 col-sm-4`,outlined:``,"emit-value":``,"map-options":``,disable:u.value,options:[{label:`Claude Code`,value:`claude-code`},{label:`OpenAI Codex`,value:`codex`}],label:e.$t(`engine.select`)},null,8,[`modelValue`,`disable`,`label`]),N(`div`,Hn,[N(`div`,Un,[w(we,{modelValue:o.value,"onUpdate:modelValue":t[1]||=e=>o.value=e,class:`col`,outlined:``,disable:u.value,label:e.$t(`setup.project`)},null,8,[`modelValue`,`disable`,`label`]),w(U,{flat:``,"no-caps":``,label:e.$t(`folderPicker.title`),disable:u.value,onClick:t[2]||=e=>c.value=!0},null,8,[`label`,`disable`])])])]),N(`p`,Wn,n(e.$t(`setup.credentials`)),1),N(`p`,Gn,n(e.$t(`setup.permissions`)),1),N(`div`,Kn,[w(U,{"data-test":`check`,outline:``,"no-caps":``,label:e.$t(`setup.check`),loading:l.value,disable:u.value,onClick:b},null,8,[`label`,`loading`,`disable`])]),f.value?(h(),j(`p`,qn,n(e.$t(`setup.failed`)),1)):D(``,!0),m.value?(h(),j(`ul`,Jn,[(h(!0),j(M,null,I(m.value.checks,t=>(h(),j(`li`,{key:t.code},[O(n(e.$t(`setup.check.${t.code}`))+` — `+n(e.$t(`setup.status.${t.status}`))+` `,1),t.status===`ok`?D(``,!0):(h(),j(`span`,Yn,`. `+n(e.$t(`setup.fix.${t.code}`)),1))]))),128))])):D(``,!0),N(`div`,Xn,[w(U,{"data-test":`start`,"no-caps":``,color:`primary`,label:e.$t(`setup.start`),loading:u.value,disable:!_.value,onClick:S},null,8,[`label`,`loading`,`disable`]),w(U,{flat:``,"no-caps":``,label:e.$t(`setup.settings`),to:{name:`settings`}},null,8,[`label`]),w(U,{flat:``,"no-caps":``,label:e.$t(`setup.skip`),disable:u.value,onClick:x},null,8,[`label`,`disable`])]),w(Rt,{modelValue:c.value,"onUpdate:modelValue":t[3]||=e=>c.value=e,"initial-path":o.value,onSelect:t[4]||=e=>o.value=e},null,8,[`modelValue`,`initial-path`])])):D(``,!0)}}),[[`__scopeId`,`data-v-c4cc0978`]]),Qn=`kobo:pwa-install-banner-dismissed`;function $n(){return localStorage.getItem(Qn)===`1`}function er(){localStorage.setItem(Qn,`1`)}var tr={class:`text-caption col`},nr=Z(F({__name:`PwaStatusBanner`,setup(e){let t=s(null),r=s($n()),i=s(!navigator.onLine),a=s(!1),o=qe(),c=A(()=>!i.value&&o.reconnecting),l=s(null),u;function f(){document.documentElement.style.setProperty(`--kobo-pwa-banner-height`,`${l.value?.offsetHeight??0}px`)}p([i,c,t,r,a],()=>{_(f)});let m,g=!1;function y(e){e.preventDefault(),t.value=e}function b(){i.value=!navigator.onLine}async function x(){let e=t.value;e&&(await e.prompt(),await e.userChoice,t.value=null)}function S(){er(),r.value=!0,t.value=null}function C(){m?.waiting&&(g=!0,m.waiting.postMessage({type:`SKIP_WAITING`}))}return v(async()=>{window.addEventListener(`beforeinstallprompt`,y),window.addEventListener(`online`,b),window.addEventListener(`offline`,b),u=new ResizeObserver(f),l.value&&u.observe(l.value),f(),`serviceWorker`in navigator&&(m=await navigator.serviceWorker.getRegistration(),m&&(navigator.serviceWorker.addEventListener(`controllerchange`,()=>{g&&window.location.reload()}),a.value=!!m.waiting,m.addEventListener(`updatefound`,()=>{let e=m?.installing;e&&e.addEventListener(`statechange`,()=>{e.state===`installed`&&navigator.serviceWorker.controller&&(a.value=!0)})})))}),d(()=>{window.removeEventListener(`beforeinstallprompt`,y),window.removeEventListener(`online`,b),window.removeEventListener(`offline`,b),u?.disconnect(),document.documentElement.style.removeProperty(`--kobo-pwa-banner-height`)}),(e,o)=>i.value||c.value||t.value&&!r.value||a.value?(h(),j(`div`,{key:0,ref_key:`bannerRef`,ref:l,class:`pwa-status-banner row items-center q-gutter-sm q-px-md q-py-sm`},[w(z,{name:i.value?`cloud_off`:c.value?`sync`:a.value?`system_update`:`install_mobile`,size:`18px`,color:`primary`},null,8,[`name`]),N(`span`,tr,n(i.value?e.$t(`pwa.offline`):c.value?e.$t(`pwa.reconnecting`):a.value?e.$t(`pwa.updateReady`):e.$t(`pwa.installReady`)),1),t.value&&!r.value?(h(),E(U,{key:0,dense:``,flat:``,"no-caps":``,color:`primary`,label:e.$t(`pwa.install`),onClick:x},null,8,[`label`])):D(``,!0),t.value&&!r.value?(h(),E(U,{key:1,dense:``,flat:``,"no-caps":``,color:`primary`,label:e.$t(`pwa.ignore`),onClick:S},null,8,[`label`])):D(``,!0),a.value?(h(),E(U,{key:2,dense:``,flat:``,"no-caps":``,color:`primary`,label:e.$t(`pwa.reload`),onClick:C},null,8,[`label`])):D(``,!0)],512)):D(``,!0)}}),[[`__scopeId`,`data-v-f7180c15`]]),rr={class:`q-pa-sm`},ir={class:`row items-center q-mb-sm`},ar={class:`text-subtitle2`},or={key:0,class:`row items-center q-gutter-sm q-mt-xs text-caption text-kobo-3`},sr={key:0,class:`text-negative`},cr=F({__name:`SessionTimelinePanel`,props:{workspaceId:{}},setup(e){let t=e,r=Ge(),i=A(()=>r.sessions),a=s([]),o=A(()=>new Map(a.value.map(e=>[e.sessionId,e]))),c=null,l=0;function u(){c&&clearTimeout(c),c=setTimeout(()=>void f(),350)}async function f(){c=null;let e=++l;try{let n=await G(`/api/workspaces/${t.workspaceId}/session-metrics`);if(!n.ok||e!==l)return;let r=await n.json();e===l&&(a.value=r.metrics??[])}catch{e===l&&(a.value=[])}}p(()=>[t.workspaceId,r.sessions.length,r.activityFeeds[t.workspaceId]?.length??0],u,{immediate:!0}),d(()=>{c&&clearTimeout(c)});function m(e){r.selectSession(e)}function g(e){let t=e.endedAt?new Date(e.endedAt).getTime():Date.now(),n=Math.max(0,t-new Date(e.startedAt).getTime());return`${Math.floor(n/6e4)}m ${Math.floor(n%6e4/1e3)}s`}function _(e){if(!e)return`0`;let t=e.inputTokens+e.outputTokens;return t>=1e3?`${(t/1e3).toFixed(t>=1e4?0:1)}k`:String(t)}async function v(){let e=await G(`/api/workspaces/${t.workspaceId}/diagnostic.json`);if(!e.ok)return;let n=URL.createObjectURL(await e.blob()),r=document.createElement(`a`);r.href=n,r.download=`kobo-diagnostic.json`,r.click(),URL.revokeObjectURL(n)}return(e,t)=>(h(),j(`div`,rr,[N(`div`,ir,[N(`span`,ar,n(e.$t(`timeline.title`)),1),w(ft),w(U,{flat:``,dense:``,round:``,icon:`download`,"aria-label":e.$t(`timeline.export`),onClick:v},null,8,[`aria-label`])]),w(nt,{dark:``,dense:``},{default:C(()=>[(h(!0),j(M,null,I(i.value,t=>(h(),E(Y,{key:t.id,clickable:``,onClick:e=>m(t.id)},{default:C(()=>[w(X,null,{default:C(()=>[w(J,null,{default:C(()=>[O(n(t.name||t.model||e.$t(`timeline.unnamed`)),1)]),_:2},1024),w(J,{caption:``},{default:C(()=>[O(n(t.status)+` · `+n(g(t)),1)]),_:2},1024),o.value.get(t.id)?(h(),j(`div`,or,[N(`span`,null,[w(z,{name:`build`,size:`13px`,class:`q-mr-xs`}),O(n(e.$t(`timeline.tools`,{count:o.value.get(t.id)?.toolCalls??0})),1)]),N(`span`,null,[w(z,{name:`token`,size:`13px`,class:`q-mr-xs`}),O(n(_(o.value.get(t.id))),1)]),(o.value.get(t.id)?.errors??0)>0?(h(),j(`span`,sr,[w(z,{name:`error_outline`,size:`13px`,class:`q-mr-xs`}),O(n(e.$t(`timeline.errors`,{count:o.value.get(t.id)?.errors??0})),1)])):D(``,!0)])):D(``,!0)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1})]))}});function lr(e,t){if(!(`origin`in e)||!e.origin||e.origin.kind!==`subagent`)return!1;let n=new Set([t.toolUseId,...t.taskId?[t.taskId]:[]]);return(e.kind===`tool:call`||e.kind===`tool:result`)&&n.has(e.toolCallId)||e.origin.toolCallId!==void 0&&n.has(e.origin.toolCallId)||e.origin.threadId!==void 0&&(t.threadIds??[]).includes(e.origin.threadId)}function ur(e,t,n){return e.filter((e,r)=>(!n.sessionId||t[r]===n.sessionId)&&lr(e,n))}var dr=[`aria-label`],fr={key:0,class:`text-caption text-kobo-3`},pr={key:1,role:`alert`,class:`text-caption text-negative`},mr={key:2,class:`text-caption text-kobo-3`},hr={key:3,class:`subagent-activity-list`},gr=100,_r=Z(F({__name:`SubagentActivity`,props:{workspaceId:{},subagent:{}},setup(t){let r=t,i=Le(),{t:a}=K(),o=s([]),c=s(!1),l=s(!1),u=s(``),d=A(()=>{let e=i.eventsFor(r.workspaceId),t=i.timestampsFor(r.workspaceId),n=i.sessionIdsFor(r.workspaceId),a=i.eventIdsFor(r.workspaceId),s=new Map;for(let e of o.value)e.type===`agent:event`&&f(e.payload)&&s.set(e.id,{event:e.payload,timestamp:e.createdAt});for(let i=0;i<e.length;i++){let o=e[i];o&&lr(o,r.subagent)&&(r.subagent.sessionId&&n[i]!==r.subagent.sessionId||s.set(a[i]??`live:${i}`,{event:o,timestamp:t[i]??``}))}let c=[...s.values()].sort((e,t)=>e.timestamp.localeCompare(t.timestamp)),l=ur(c.map(e=>e.event),c.map(()=>r.subagent.sessionId??null),r.subagent),u=c.filter(e=>lr(e.event,r.subagent)).map(e=>e.timestamp);return vt(l,u,r.subagent.status===`running`).filter(e=>e.type===`text`||e.type===`tool`)});function f(e){return typeof e==`object`&&!!e&&`kind`in e}function p(e){let t=new URLSearchParams({limit:String(gr)});return r.subagent.sessionId&&t.set(`session`,r.subagent.sessionId),r.subagent.toolUseId&&t.set(`subagentToolCallId`,r.subagent.toolUseId),r.subagent.threadIds?.length&&t.set(`subagentThreadIds`,r.subagent.threadIds.join(`,`)),e&&t.set(`before`,e),`/api/workspaces/${r.workspaceId}/events?${t.toString()}`}async function m(e){if(!l.value){l.value=!0,u.value=``;try{let t=await G(p(e));if(!t.ok)throw await ge(t);let n=await t.json(),r=new Map(o.value.map(e=>[e.id,e]));for(let e of n.events??[])r.set(e.id,e);o.value=[...r.values()].sort((e,t)=>e.createdAt.localeCompare(t.createdAt)),c.value=n.hasMore===!0}catch(e){u.value=e instanceof Error?e.message:String(e)}finally{l.value=!1}}}function g(){return o.value=[],c.value=!1,m()}function _(){return m(o.value[0]?.id)}function y(e){return e.type===`text`?`message:${e.messageId}`:`tool:${e.toolCallId}`}return v(()=>void g()),(t,r)=>(h(),j(`div`,{class:`subagent-activity q-mt-sm`,"aria-label":e(a)(`subagents.activity`)},[l.value&&d.value.length===0?(h(),j(`div`,fr,[w(R,{size:`sm`}),O(` `+n(e(a)(`activity.loading_older`)),1)])):u.value?(h(),j(`div`,pr,[O(n(u.value)+` `,1),w(U,{flat:``,dense:``,label:e(a)(`common.retry`),onClick:g},null,8,[`label`])])):d.value.length===0?(h(),j(`div`,mr,n(e(a)(`subagents.noActivity`)),1)):(h(),j(`div`,hr,[c.value?(h(),E(U,{key:0,flat:``,dense:``,class:`self-start`,loading:l.value,label:e(a)(`prPicker.loadMore`),onClick:_},null,8,[`loading`,`label`])):D(``,!0),(h(!0),j(M,null,I(d.value,e=>(h(),j(`div`,{key:y(e),class:`subagent-activity-item`},[e.type===`text`?(h(),E(lt,{key:0,item:e},null,8,[`item`])):e.type===`tool`?(h(),E(dt,{key:1,item:e},null,8,[`item`])):D(``,!0)]))),128))]))],8,dr))}}),[[`__scopeId`,`data-v-e1c07083`]]),vr={class:`row items-center no-wrap q-mb-sm`},yr={class:`col text-caption text-uppercase text-weight-bold text-kobo-3`,style:{"letter-spacing":`0.05em`}},br={key:0,class:`text-caption text-kobo-3`},xr=[`data-subagent-id`],Sr={class:`row items-center q-mb-xs`},Cr=[`aria-expanded`,`onClick`,`onKeydown`],wr={class:`col text-caption text-weight-medium text-kobo-1 ellipsis`,style:{"max-width":`220px`}},Tr={key:0,class:`row items-center text-caption text-kobo-3`,style:{"font-size":`10px`}},Er={key:1,class:`text-caption text-kobo-3`,style:{"font-size":`10px`}},Dr={class:`text-kobo-2`},Or={class:`row items-center q-gutter-xs q-mt-xs text-caption text-kobo-3`,style:{"font-size":`10px`}},kr={key:0},Ar={key:1},jr={key:2},Mr=Z(F({__name:`SubagentsPanel`,setup(t){let{t:i}=K(),a=oe(),o=Ge(),c=A(()=>[...o.currentSubagents].reverse()),l=A(()=>_t(o.selectedWorkspace?.engine)),u=A(()=>c.value.some(e=>e.status===`running`));function d(e){return e.taskId??e.toolUseId}let f=r(new Set),m=s(!1),g=s(null),v=s(null),y=b(ct,s(null));function x(e){let t=d(e);g.value=g.value===t?null:t}function S(e){let t=y.value;return t?t.origin.toolCallId&&(t.origin.toolCallId===e.toolUseId||t.origin.toolCallId===e.taskId)?!0:!!t.origin.threadId&&(e.threadIds?.includes(t.origin.threadId)??!1):!1}p([y,c],async([e])=>{if(!e)return;let t=c.value.find(S);if(!t)return;let n=d(t);g.value=n,await _(),v.value?.querySelector(`[data-subagent-id="${n}"]`)?.scrollIntoView({block:`nearest`})},{immediate:!0});function T(e){let t=e instanceof Error?e.message:String(e);a.notify({type:`negative`,message:i(`subagents.stopFailed`,{error:t}),position:`top`,timeout:4e3})}async function ee(e){let t=o.selectedWorkspaceId,n=d(e);if(t&&!f.has(n)){f.add(n);try{await o.stopSubagents(t,n)}catch(e){T(e)}finally{f.delete(n)}}}async function k(){let e=o.selectedWorkspaceId;if(e&&!m.value){m.value=!0;try{await o.stopSubagents(e)}catch(e){T(e)}finally{m.value=!1}}}let P={running:{icon:`play_circle`,color:`green-4`,label:`subagents.status.running`},done:{icon:`check_circle`,color:`kobo-3`,label:`subagents.status.done`},failed:{icon:`error`,color:`negative`,label:`subagents.status.failed`},stopped:{icon:`stop_circle`,color:`warning`,label:`subagents.status.stopped`}};function F(e){return e?e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`:``}function L(e){return e?e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e):``}return(t,r)=>(h(),j(`div`,{ref_key:`panelRef`,ref:v,class:`subagents-panel q-pa-md`},[N(`div`,vr,[N(`div`,yr,n(t.$t(`subagents.title`)),1),l.value&&u.value?(h(),E(U,{key:0,class:`subagents-stop-all-btn`,flat:``,dense:``,"no-caps":``,size:`sm`,color:`negative`,icon:`stop`,label:e(i)(`subagents.stopAll`),loading:m.value,disable:m.value,onClick:k},null,8,[`label`,`loading`,`disable`])):D(``,!0)]),c.value.length===0?(h(),j(`div`,br,n(t.$t(`subagents.empty`)),1)):D(``,!0),(h(!0),j(M,null,I(c.value,r=>(h(),j(`div`,{key:d(r),class:`subagent-item q-mb-sm rounded-borders q-pa-sm`,"data-subagent-id":d(r)},[N(`div`,Sr,[N(`div`,{role:`button`,tabindex:`0`,class:`subagent-summary row items-center col`,"aria-expanded":g.value===d(r),onClick:e=>x(r),onKeydown:[H(B(e=>x(r),[`prevent`]),[`enter`]),H(B(e=>x(r),[`prevent`]),[`space`])]},[w(z,{name:P[r.status].icon,size:`14px`,color:P[r.status].color,class:`q-mr-xs`},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(i)(P[r.status].label)),1)]),_:2},1024)]),_:2},1032,[`name`,`color`]),N(`span`,wr,n(r.description||r.toolUseId),1)],40,Cr),l.value&&r.status===`running`?(h(),E(U,{key:0,class:`subagent-stop-btn`,flat:``,round:``,dense:``,size:`xs`,color:`negative`,icon:`stop_circle`,disable:f.has(d(r)),onClick:e=>ee(r)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(i)(`subagents.stop`)),1)]),_:1})]),_:1},8,[`disable`,`onClick`])):D(``,!0)]),r.ambient?(h(),j(`div`,Tr,[w(z,{name:`visibility`,size:`12px`,color:`kobo-3`,class:`q-mr-xs`}),O(` `+n(e(i)(`subagents.ambient`))+` `,1),w(Q,null,{default:C(()=>[O(n(e(i)(`subagents.ambientTooltip`)),1)]),_:1})])):D(``,!0),r.lastToolName?(h(),j(`div`,Er,[O(n(t.$t(`subagents.running`)),1),N(`span`,Dr,n(r.lastToolName),1)])):D(``,!0),N(`div`,Or,[r.toolUses===void 0?D(``,!0):(h(),j(`span`,kr,n(t.$t(`subagents.tools`,{count:r.toolUses})),1)),r.totalTokens?(h(),j(`span`,Ar,`· `+n(L(r.totalTokens))+` tok`,1)):D(``,!0),r.durationMs?(h(),j(`span`,jr,`· `+n(F(r.durationMs)),1)):D(``,!0)]),g.value===d(r)?(h(),E(_r,{key:2,"workspace-id":e(o).selectedWorkspaceId,subagent:r},null,8,[`workspace-id`,`subagent`])):D(``,!0)],8,xr))),128))],512))}}),[[`__scopeId`,`data-v-db96e9e6`]]),Nr={class:`column q-gutter-sm q-pa-sm`},Pr=F({__name:`AutoLoopPanel`,setup(t){let{t:r}=K(),i=oe(),a=Ge(),o=qe(),s=A(()=>a.selectedWorkspace),c=A(()=>s.value?a.autoLoopStates[s.value.id]??null:null),l=A(()=>a.tasks.length>0),u=A(()=>!!c.value?.auto_loop_ready),d=A(()=>!!c.value?.auto_loop),f=A(()=>u.value&&l.value),p=A(()=>Xe(s.value?.status)),m=A(()=>!!s.value?.archivedAt),g=A(()=>!f.value||m.value),_=A(()=>u.value?l.value?``:r(`autoLoop.noTasks`):r(`autoLoop.notReady`));async function v(){if(s.value)try{await a.enableAutoLoop(s.value.id)}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}async function y(){if(s.value)try{await a.disableAutoLoop(s.value.id)}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function b(){s.value&&Mt(s.value.id,o,a)}function x(){s.value&&i.dialog({title:r(`autoLoop.forceReady`),message:r(`autoLoop.forceReadyConfirm`),cancel:!0,persistent:!0}).onOk(async()=>{if(s.value)try{await a.forceAutoLoopReady(s.value.id)}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}})}return(t,i)=>(h(),j(`div`,Nr,[d.value?(h(),E(U,{key:0,dense:``,"no-caps":``,color:`negative`,icon:`stop`,label:e(r)(`autoLoop.stop`),disable:m.value,onClick:y},null,8,[`label`,`disable`])):(h(),E(U,{key:1,dense:``,"no-caps":``,color:`primary`,icon:`play_arrow`,label:e(r)(`autoLoop.start`),disable:g.value,onClick:v},{default:C(()=>[g.value&&_.value?(h(),E(Q,{key:0},{default:C(()=>[O(n(_.value),1)]),_:1})):D(``,!0)]),_:1},8,[`label`,`disable`])),d.value?D(``,!0):(h(),E(U,{key:2,dense:``,"no-caps":``,outline:``,color:`primary`,icon:`build`,label:u.value?e(r)(`autoLoop.reprepare`):e(r)(`autoLoop.prepare`),disable:p.value||m.value,onClick:b},{default:C(()=>[p.value?(h(),E(Q,{key:0},{default:C(()=>[O(n(e(r)(`autoLoop.prepareBusy`)),1)]),_:1})):u.value?(h(),E(Q,{key:1},{default:C(()=>[O(n(e(r)(`autoLoop.reprepareTooltip`)),1)]),_:1})):D(``,!0)]),_:1},8,[`label`,`disable`])),u.value?D(``,!0):(h(),E(U,{key:3,dense:``,"no-caps":``,flat:``,size:`sm`,color:`kobo-2`,label:e(r)(`autoLoop.forceReady`),disable:p.value||m.value,onClick:x},{default:C(()=>[p.value?(h(),E(Q,{key:0},{default:C(()=>[O(n(e(r)(`autoLoop.prepareBusy`)),1)]),_:1})):D(``,!0)]),_:1},8,[`label`,`disable`]))]))}}),Fr={class:`text-h6`},Ir={class:`log-text rounded-borders q-pa-md`},Lr=Z(F({__name:`DevServerLogDialog`,props:{modelValue:{type:Boolean},workspaceId:{}},emits:[`update:modelValue`],setup(t){let r=t,i=Ue(),{t:a}=K(),o=s(``),c=s(!1),l=s(null),u=null,f=0;async function m(){if(!r.workspaceId||c.value)return;let e=r.workspaceId,t=f;c.value=!0;try{let n=await i.fetchLogs(e);if(t!==f||e!==r.workspaceId||!r.modelValue)return;o.value=n,await _(),g()}finally{c.value=!1,b(t)}}function g(){l.value&&(l.value.scrollTop=l.value.scrollHeight)}function v(){y(),f++,m()}function y(){f++,u&&=(clearTimeout(u),null)}function b(e){e===f&&r.modelValue&&!document.hidden&&(u&&clearTimeout(u),u=setTimeout(()=>{u=null,m()},5e3))}function x(){r.modelValue&&(document.hidden?y():v())}return p(()=>r.modelValue,e=>{e?(m(),v()):y()}),p(()=>r.workspaceId,()=>{r.modelValue&&v()}),document.addEventListener(`visibilitychange`,x),d(()=>{y(),document.removeEventListener(`visibilitychange`,x)}),(r,i)=>(h(),E(Ve,{"model-value":t.modelValue,"onUpdate:modelValue":i[1]||=e=>r.$emit(`update:modelValue`,e)},{default:C(()=>[w(ke,{class:`text-kobo-1`,style:{"min-width":`700px`,"max-width":`900px`,"max-height":`80vh`,background:`var(--kobo-surface)`}},{default:C(()=>[w(q,{class:`row items-center`},{default:C(()=>[N(`div`,Fr,n(e(a)(`devServer.logDialog.title`)),1),w(ft),w(U,{flat:``,round:``,dense:``,icon:`refresh`,color:`kobo-2`,onClick:m,loading:c.value},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(r.$t(`tooltip.refreshLogs`)),1)]),_:1})]),_:1},8,[`loading`]),w(U,{flat:``,round:``,dense:``,icon:`close`,color:`kobo-2`,onClick:i[0]||=e=>r.$emit(`update:modelValue`,!1)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(r.$t(`tooltip.closeDialog`)),1)]),_:1})]),_:1})]),_:1}),w(Re,{dark:``}),w(q,{class:`log-content`,ref_key:`logContainer`,ref:l},{default:C(()=>[N(`pre`,Ir,n(o.value||e(a)(`devServer.logDialog.empty`)),1)]),_:1},512)]),_:1})]),_:1},8,[`model-value`]))}}),[[`__scopeId`,`data-v-84d2c515`]]),Rr={class:`dd-panel q-px-md q-py-sm`},zr={class:`text-caption text-uppercase text-weight-bold text-kobo-2 q-mb-xs`},Br={key:0,class:`text-caption text-kobo-3`},Vr={key:1,class:`text-caption text-kobo-3`},Hr={class:`row items-center q-mb-xs`},Ur={key:0,class:`text-caption q-mb-xs`},Wr=[`href`],Gr={key:1,class:`text-caption text-kobo-3`,style:{"font-size":`10px`}},Kr={key:2,class:`text-caption text-red-5`},qr=Z(F({__name:`DevServerPanel`,props:{workspace:{}},setup(e){let t=e,{t:r}=K(),i=Ue(),a=Ae(),o=s(!1),c=s(!1),l=s(!1),u=null,f=A(()=>t.workspace?.id??``),m=A(()=>t.workspace?!!a.getProjectByPath(t.workspace.projectPath)?.devServer?.startCommand:!1),g=A(()=>f.value?i.getStatus(f.value):null),_=A(()=>{switch(g.value?.status){case`running`:return`green-9`;case`starting`:case`stopping`:return`orange-9`;case`error`:return`red-9`;default:return`kobo-3`}}),y=A(()=>{switch(g.value?.status){case`running`:return r(`devServer.running`);case`starting`:return r(`devServer.starting`);case`stopping`:return r(`devServer.stopping`);case`error`:return r(`devServer.error`);case`stopped`:return r(`devServer.stopped`);default:return r(`devServer.unknown`)}}),b=A(()=>_n({missingWorkspace:!t.workspace,purged:!!t.workspace?.worktreePurgedAt,archived:!!t.workspace?.archivedAt})),S=A(()=>{let e=g.value?.status;return!e||e===`stopped`||e===`unknown`||e===`error`}),T=A(()=>{let e=g.value?.status;return e===`running`||e===`starting`});async function ee(){if(f.value&&!b.value){c.value=!0;try{await i.startDevServer(f.value)}finally{c.value=!1}}}async function k(){if(f.value&&!b.value){l.value=!0;try{await i.stopDevServer(f.value)}finally{l.value=!1}}}function P(){f.value&&m.value&&i.fetchStatus(f.value)}function F(){I(),u=setInterval(()=>{P()},3e4)}function I(){u&&=(clearInterval(u),null)}return p(f,()=>{P(),F()}),v(()=>{P(),F()}),d(()=>{I()}),(t,r)=>{let i=x(`router-link`);return h(),j(`div`,Rr,[N(`div`,zr,n(t.$t(`devServer.title`)),1),e.workspace?m.value?g.value?(h(),j(M,{key:2},[w(gn,{reason:b.value?t.$t(`blockers.${b.value}`):null},null,8,[`reason`]),N(`div`,Hr,[w(wt,{color:_.value,label:y.value,style:{"font-size":`10px`}},null,8,[`color`,`label`]),w(ft),S.value?(h(),E(U,{key:0,disable:!!b.value,"aria-label":t.$t(`tooltip.startDevServer`),flat:``,round:``,dense:``,icon:`play_arrow`,size:`xs`,color:`green-5`,onClick:ee,loading:c.value},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tooltip.startDevServer`)),1)]),_:1})]),_:1},8,[`disable`,`aria-label`,`loading`])):D(``,!0),T.value?(h(),E(U,{key:1,disable:!!b.value,"aria-label":t.$t(`tooltip.stopDevServer`),flat:``,round:``,dense:``,icon:`stop`,size:`xs`,color:`red-5`,onClick:k,loading:l.value},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tooltip.stopDevServer`)),1)]),_:1})]),_:1},8,[`disable`,`aria-label`,`loading`])):D(``,!0),w(U,{flat:``,round:``,dense:``,icon:`article`,size:`xs`,color:`kobo-2`,onClick:r[0]||=e=>o.value=!0},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`devServer.logs`)),1)]),_:1})]),_:1})]),g.value.status===`running`&&g.value.url?(h(),j(`div`,Ur,[N(`a`,{href:g.value.url,target:`_blank`,style:{color:`var(--kobo-text-2)`}},n(g.value.url),9,Wr)])):D(``,!0),g.value.containers.length>0?(h(),j(`div`,Gr,n(t.$t(`devServer.containers`,{count:g.value.containers.length},g.value.containers.length)),1)):D(``,!0),g.value.error?(h(),j(`div`,Kr,n(g.value.error),1)):D(``,!0)],64)):D(``,!0):(h(),j(`div`,Vr,[O(n(t.$t(`devServer.notConfigured`))+` `,1),w(i,{to:`/settings`,style:{color:`var(--kobo-text-2)`}},{default:C(()=>[O(n(t.$t(`devServer.goToSettings`)),1)]),_:1})])):(h(),j(`div`,Br,n(t.$t(`devServer.noWorkspace`)),1)),f.value?(h(),E(Lr,{key:3,modelValue:o.value,"onUpdate:modelValue":r[1]||=e=>o.value=e,"workspace-id":f.value},null,8,[`modelValue`,`workspace-id`])):D(``,!0)])}}}),[[`__scopeId`,`data-v-6ff06839`]]),Jr={class:`text-h6`},Yr={class:`text-body2 text-kobo-2 q-mt-xs`},Xr={class:`row q-col-gutter-sm q-mb-md`},Zr={class:`col-12 col-sm-6`},Qr={class:`col-12 col-sm-6`},$r={class:`col-12 col-sm-6`},ei={class:`col-12 col-sm-6`},ti={class:`text-caption text-kobo-3 q-mt-xs`},ni=Z(F({__name:`SessionHandoffDialog`,props:{modelValue:{type:Boolean},workspace:{},sourceSessionId:{},mode:{},loading:{type:Boolean}},emits:[`update:modelValue`,`submit`],setup(e,{emit:t}){let r=e,i=t,{t:a}=K(),o=Ae(),c=s(`claude-code`),l=s(`auto`),u=s(`auto`),d=s(`bypass`),f=s(!0),m=null,g=``,_=``,v=A(()=>[{value:`claude-code`,label:a(`workspacePage.engineClaude`)},{value:`codex`,label:a(`workspacePage.engineCodex`)}]),y=A(()=>{let e=(Dt[c.value]??[]).map(e=>({value:e.value,label:a(e.i18nLabelKey)}));return r.workspace.engine===c.value&&!e.some(e=>e.value===r.workspace.model)&&e.push({value:r.workspace.model,label:r.workspace.model}),e}),b=A(()=>(Ft[c.value]??[]).map(e=>({value:e.value,label:a(e.i18nLabelKey)}))),x=A(()=>(Ot[c.value]??[]).map(e=>({value:e,label:a(`agentPermissionMode.${e}`)})));p(c,()=>{let e=r.workspace,t=o.global.defaultModelByEngine[c.value];l.value=e.engine===c.value?e.model:y.value.some(e=>e.value===t)?t:`auto`,u.value=e.engine===c.value?e.reasoningEffort:`auto`,x.value.some(e=>e.value===d.value)||(d.value=`plan`)},{flush:`sync`}),p([()=>r.modelValue,()=>r.workspace.id],([e])=>{e&&(m=r.sourceSessionId,g=``,_=``,c.value=r.workspace.engine,l.value=r.workspace.model,u.value=r.workspace.reasoningEffort,d.value=r.workspace.agentPermissionMode,f.value=!0)},{immediate:!0});function S(){if(r.loading||!l.value)return;let e={sourceSessionId:m,generateSummary:f.value,target:{engine:c.value,model:l.value,reasoningEffort:u.value,agentPermissionMode:d.value}},t=JSON.stringify(e);t!==_&&(g=Array.from(crypto.getRandomValues(new Uint32Array(4)),e=>e.toString(16)).join(`-`),_=t),i(`submit`,{...e,requestId:g})}return(t,r)=>(h(),E(Ve,{"model-value":e.modelValue,persistent:e.loading,"onUpdate:modelValue":r[6]||=e=>i(`update:modelValue`,e)},{default:C(()=>[w(ke,{class:`handoff-card text-kobo-1`},{default:C(()=>[w(q,null,{default:C(()=>[N(`div`,Jr,n(t.$t(e.mode===`fresh`?`handoff.freshTitle`:`handoff.switchTitle`)),1),N(`div`,Yr,n(t.$t(`handoff.warning`)),1)]),_:1}),w(Re,{dark:``}),w(q,null,{default:C(()=>[N(`div`,Xr,[N(`div`,Zr,[w(it,{modelValue:c.value,"onUpdate:modelValue":r[0]||=e=>c.value=e,"data-test":`handoff-engine`,options:v.value,label:t.$t(`engine.select`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,Qr,[w(it,{modelValue:l.value,"onUpdate:modelValue":r[1]||=e=>l.value=e,"data-test":`handoff-model`,options:y.value,label:t.$t(`engine.model`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,$r,[w(it,{modelValue:u.value,"onUpdate:modelValue":r[2]||=e=>u.value=e,options:b.value,label:t.$t(`engine.effort`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,ei,[w(it,{modelValue:d.value,"onUpdate:modelValue":r[3]||=e=>d.value=e,options:x.value,label:t.$t(`agentPermissionMode.label`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])])]),w(Ie,{modelValue:f.value,"onUpdate:modelValue":r[4]||=e=>f.value=e,disable:e.loading,label:t.$t(`handoff.generate`),color:`primary`,dark:``},null,8,[`modelValue`,`disable`,`label`]),N(`div`,ti,n(t.$t(`handoff.generateHint`)),1)]),_:1}),w(Me,{align:`right`,class:`q-pa-md`},{default:C(()=>[w(U,{flat:``,"no-caps":``,label:t.$t(`common.cancel`),color:`kobo-2`,disable:e.loading,onClick:r[5]||=e=>i(`update:modelValue`,!1)},null,8,[`label`,`disable`]),w(U,{"data-test":`handoff-submit`,"no-caps":``,color:`primary`,label:t.$t(`handoff.start`),loading:e.loading,disable:e.loading||!l.value,onClick:S},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`,`persistent`]))}}),[[`__scopeId`,`data-v-d05372f7`]]),ri=F({inheritAttrs:!1,__name:`EngineSwitchButton`,props:{workspace:{},mode:{default:`switch`}},emits:[`started`],setup(e,{emit:t}){let n=e,r=t,i=Ge(),a=ze(),o=oe(),{t:c}=K(),l=s(!1),d=s(!1),f=A(()=>!!n.workspace.archivedAt||!!n.workspace.worktreePurgedAt||a.isBlocking(n.workspace.id)),p=A(()=>gt(i.sessions.filter(e=>e.workspaceId===n.workspace.id&&e.status!==`idle`)));async function m(e){if(d.value||f.value)return;let t=n.workspace.id;d.value=!0;try{await a.start(t,e),l.value=!1,r(`started`,t)}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:c(`handoff.error`),position:`top`}),await a.refresh(t).catch(()=>{}),a.isBlocking(t)&&(l.value=!1,r(`started`,t))}finally{d.value=!1}}return(t,n)=>(h(),j(M,null,[w(U,u(t.$attrs,{"no-caps":``,dense:``,outline:``,color:`primary`,icon:e.mode===`fresh`?`restart_alt`:`swap_horiz`,label:t.$t(e.mode===`fresh`?`handoff.freshTitle`:`handoff.switchTitle`),disable:f.value,class:`full-width q-mb-xs`,onClick:n[0]||=e=>l.value=!0}),null,16,[`icon`,`label`,`disable`]),w(ni,{modelValue:l.value,"onUpdate:modelValue":n[1]||=e=>l.value=e,workspace:e.workspace,"source-session-id":p.value?.id??null,mode:e.mode,loading:d.value,onSubmit:m},null,8,[`modelValue`,`workspace`,`source-session-id`,`mode`,`loading`])],64))}}),ii=[`aria-label`],ai={class:`row items-center no-wrap text-caption text-kobo-2`,role:`status`,"aria-live":`polite`},oi={key:0,class:`text-caption text-negative q-mt-xs`},si={key:1,class:`q-mt-sm`},ci={class:`row q-gutter-xs q-mt-xs`},li={key:1,class:`text-caption text-negative q-mt-xs`},ui=Z(F({__name:`SessionHandoffStatus`,props:{workspaceId:{}},emits:[`started`],setup(t,{emit:r}){let i=t,a=r,o=ze(),c=Ge(),l=st(),u=oe(),{t:d}=K(),f=s(!1),p=A(()=>o.current[i.workspaceId]),m=A(()=>p.value?.state===`failed`||p.value?.state===`interrupted`);function g(e){u.notify({type:`negative`,message:e instanceof Error?e.message:d(`handoff.error`),position:`top`})}async function _(e){if(!p.value||f.value)return;let t=i.workspaceId;f.value=!0;try{await o.decide(t,p.value.id,e),e!==`cancel`&&a(`started`,t)}catch(e){g(e)}finally{f.value=!1}}async function v(){if(p.value?.reportPath)try{await l.openDocumentByPath(i.workspaceId,p.value.reportPath)||g(Error(d(`documents.loadFailed`)))}catch(e){g(e)}}return(r,i)=>p.value&&p.value.state!==`cancelled`?(h(),j(`section`,{key:0,class:`handoff-status q-mt-sm q-pt-sm`,"aria-label":r.$t(`handoff.status`)},[N(`div`,ai,[e(o).isActive(t.workspaceId)?(h(),E(R,{key:0,size:`14px`,class:`q-mr-xs`})):D(``,!0),N(`span`,null,n(r.$t(`handoff.${p.value.state}`)),1)]),p.value.error?(h(),j(`div`,oi,n(p.value.error),1)):D(``,!0),m.value?(h(),j(`div`,si,[w(U,{"data-test":`handoff-retry`,dense:``,flat:``,"no-caps":``,label:r.$t(`common.retry`),disable:f.value,onClick:i[0]||=e=>_(`retry`)},null,8,[`label`,`disable`]),w(U,{"data-test":`handoff-skip`,dense:``,flat:``,"no-caps":``,label:r.$t(`handoff.skip`),disable:f.value,onClick:i[1]||=e=>_(`skip`)},null,8,[`label`,`disable`])])):D(``,!0),e(o).isBlocking(t.workspaceId)?(h(),E(U,{key:2,"data-test":`handoff-cancel`,dense:``,flat:``,"no-caps":``,label:r.$t(`handoff.cancel`),loading:f.value,onClick:i[2]||=e=>_(`cancel`)},null,8,[`label`,`loading`])):D(``,!0),N(`div`,ci,[p.value.sourceSessionId?(h(),E(U,{key:0,"data-test":`handoff-source`,dense:``,flat:``,"no-caps":``,size:`sm`,label:r.$t(`handoff.source`),onClick:i[3]||=t=>e(c).selectSession(p.value.sourceSessionId)},null,8,[`label`])):D(``,!0),p.value.reportPath?(h(),E(U,{key:1,"data-test":`handoff-report`,dense:``,flat:``,"no-caps":``,size:`sm`,label:r.$t(`handoff.report`),onClick:v},null,8,[`label`])):D(``,!0)])],8,ii)):e(o).loadErrors[t.workspaceId]?(h(),j(`div`,li,[O(n(r.$t(`handoff.loadFailed`))+` `,1),w(U,{dense:``,flat:``,"no-caps":``,label:r.$t(`common.retry`),onClick:i[4]||=n=>e(o).refresh(t.workspaceId).catch(()=>{})},null,8,[`label`])])):D(``,!0)}}),[[`__scopeId`,`data-v-8aabbfb5`]]);function di(e,t){return e.engine!==t.engine||e.model!==t.model||e.reasoningEffort!==t.reasoningEffort||e.agentPermissionMode!==t.agentPermissionMode}var fi={class:`text-h6`},pi={class:`text-body2 text-kobo-2 q-mt-xs`},mi={class:`row q-col-gutter-sm q-mb-md`},hi={class:`col-12 col-sm-6`},gi={class:`col-12 col-sm-6`},_i={class:`col-12 col-sm-6`},vi={class:`col-12 col-sm-6`},yi={key:0,class:`text-caption text-kobo-3 q-mt-xs`},bi={class:`text-caption text-kobo-3 q-mt-xs`},xi={class:`text-caption text-kobo-3 q-mt-xs`},Si=Z(F({__name:`StartReviewDialog`,props:{modelValue:{type:Boolean},loading:{type:Boolean},workspace:{},canReturnToSession:{type:Boolean},currentSession:{}},emits:[`update:modelValue`,`submit`],setup(e,{emit:t}){let r=e,i=t,{t:a}=K(),o=Ae(),c=s(``),l=s(!1),u=s(!1),d=s(`claude-code`),f=s(`auto`),m=s(`auto`),g=s(`bypass`),_=A(()=>u.value?`plan`:g.value),v=A(()=>({engine:d.value,model:f.value,reasoningEffort:m.value,agentPermissionMode:_.value})),y=A(()=>{let e=r.currentSession;return u.value||!!r.workspace&&di(v.value,r.workspace)||!!e?.engine&&e.engine!==d.value||f.value!==`auto`&&!!e?.model&&e.model!==f.value}),b=A({get:()=>l.value||y.value,set:e=>{l.value=e}}),x=A(()=>[{value:`claude-code`,label:a(`workspacePage.engineClaude`)},{value:`codex`,label:a(`workspacePage.engineCodex`)}]),S=A(()=>{let e=(Dt[d.value]??[]).map(e=>({value:e.value,label:a(e.i18nLabelKey)}));return r.workspace?.engine===d.value&&!e.some(e=>e.value===r.workspace?.model)&&e.push({value:r.workspace.model,label:r.workspace.model}),e}),T=A(()=>(Ft[d.value]??[]).map(e=>({value:e.value,label:a(e.i18nLabelKey)}))),O=A(()=>(Ot[d.value]??[]).map(e=>({value:e,label:a(`agentPermissionMode.${e}`)})));p(d,()=>{let e=r.workspace,t=o.global.defaultModelByEngine[d.value];f.value=e?.engine===d.value?e.model:S.value.some(e=>e.value===t)?t:`auto`,m.value=e?.engine===d.value?e.reasoningEffort:`auto`,O.value.some(e=>e.value===g.value)||(g.value=`plan`)},{flush:`sync`}),p([()=>r.modelValue,()=>r.workspace?.id],([e])=>{e&&(c.value=``,l.value=!1,u.value=!1,r.workspace&&(d.value=r.workspace.engine,f.value=r.workspace.model,m.value=r.workspace.reasoningEffort,g.value=r.workspace.agentPermissionMode))},{immediate:!0}),p(()=>r.canReturnToSession,e=>{e||(u.value=!1)});function ee(){r.loading||i(`update:modelValue`,!1)}function k(){!r.loading&&r.workspace&&i(`submit`,{...v.value,additionalInstructions:c.value,newSession:b.value,returnToSession:u.value&&r.canReturnToSession})}return(t,r)=>(h(),E(Ve,{"model-value":e.modelValue,persistent:e.loading,"onUpdate:modelValue":r[7]||=e=>i(`update:modelValue`,e)},{default:C(()=>[w(ke,{class:`review-card text-kobo-1`},{default:C(()=>[w(q,null,{default:C(()=>[N(`div`,fi,n(t.$t(`review.title`)),1),N(`div`,pi,n(t.$t(`review.subtitle`)),1)]),_:1}),w(Re,{dark:``}),w(q,{class:`q-pt-md`},{default:C(()=>[N(`div`,mi,[N(`div`,hi,[w(it,{modelValue:d.value,"onUpdate:modelValue":r[0]||=e=>d.value=e,options:x.value,label:t.$t(`engine.select`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,gi,[w(it,{modelValue:f.value,"onUpdate:modelValue":r[1]||=e=>f.value=e,options:S.value,label:t.$t(`engine.model`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,_i,[w(it,{modelValue:m.value,"onUpdate:modelValue":r[2]||=e=>m.value=e,options:T.value,label:t.$t(`engine.effort`),disable:e.loading,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``},null,8,[`modelValue`,`options`,`label`,`disable`])]),N(`div`,vi,[w(it,{"model-value":_.value,options:O.value,label:t.$t(`agentPermissionMode.label`),disable:e.loading||u.value,"emit-value":``,"map-options":``,outlined:``,dark:``,dense:``,"onUpdate:modelValue":r[3]||=e=>g.value=e},null,8,[`model-value`,`options`,`label`,`disable`]),u.value?(h(),j(`div`,yi,n(t.$t(`review.readOnlyForced`)),1)):D(``,!0)])]),w(we,{modelValue:c.value,"onUpdate:modelValue":r[4]||=e=>c.value=e,type:`textarea`,disable:e.loading,label:t.$t(`review.additionalInstructions`),placeholder:t.$t(`review.additionalInstructionsPlaceholder`),rows:4,outlined:``,dark:``,color:`primary`},null,8,[`modelValue`,`disable`,`label`,`placeholder`])]),_:1}),w(q,{class:`q-pt-none`},{default:C(()=>[w(Ie,{modelValue:b.value,"onUpdate:modelValue":r[5]||=e=>b.value=e,disable:e.loading||y.value,label:t.$t(`review.newSession`),color:`primary`,dark:``},null,8,[`modelValue`,`disable`,`label`]),N(`div`,bi,n(t.$t(y.value?`review.newSessionRequired`:`review.newSessionHint`)),1),b.value?(h(),j(M,{key:0},[w(Ie,{modelValue:u.value,"onUpdate:modelValue":r[6]||=e=>u.value=e,disable:e.loading||!e.canReturnToSession,label:t.$t(`review.returnToSession`),color:`primary`,dark:``,class:`q-mt-md`},null,8,[`modelValue`,`disable`,`label`]),N(`div`,xi,n(t.$t(e.canReturnToSession?`review.returnToSessionHint`:`review.returnUnavailable`)),1)],64)):D(``,!0)]),_:1}),w(Me,{align:`right`,class:`q-pa-md`},{default:C(()=>[w(U,{flat:``,"no-caps":``,label:t.$t(`review.cancel`),color:`kobo-2`,disable:e.loading,onClick:ee},null,8,[`label`,`disable`]),w(U,{"no-caps":``,color:`primary`,label:t.$t(`review.start`),loading:e.loading,disable:!e.workspace||e.loading,onClick:k},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`,`persistent`]))}}),[[`__scopeId`,`data-v-94ee4ebf`]]),Ci={class:`tools-panel`},wi={class:`q-px-md q-py-sm`},Ti={class:`text-caption text-uppercase text-weight-bold text-kobo-2 q-mb-xs`},Ei={key:0,class:`text-caption text-kobo-3`},Di=Z(F({__name:`ToolsPanel`,props:{workspace:{}},setup(e){let t=e,{t:r}=K(),i=oe(),o=Ae(),c=Ge(),l=ze(),u=s(null),d=s(!1),f;function m(){clearTimeout(f),d.value=!1}async function g(e){if(t.workspace?.id!==e||(await _(),t.workspace?.id!==e||!u.value))return;let n=u.value.closest(`[data-tour="ws-tab-tools"]`);n&&(n.scrollTop=n.scrollHeight),m(),d.value=!0,f=setTimeout(m,3e3)}p(()=>t.workspace?.id,m),ee(m);let v=s(!1),y=s(!1),b=s(!1),x=s(!1),S=s(!1),T=s(!1),k=s(!1),P=A(()=>gt(c.sessions.filter(e=>e.workspaceId===t.workspace?.id&&e.status!==`idle`))),F=A(()=>{let e=P.value;return!!e?.engineSessionId&&(!e.engine||e.engine===t.workspace?.engine)}),I=A(()=>{if(!t.workspace)return!1;let e=c.prSnapshots[t.workspace.id];return e?Qe(e):!1}),L=A(()=>t.workspace?.id??``),te=A(()=>t.workspace?!!(o.getProjectByPath(t.workspace.projectPath)?.setupScript||o.global.setupScript):!1),ne=A(()=>!!o.global.editorCommand),re=A(()=>!!o.global.fileManagerCommand),R=A(()=>!!o.global.terminalCommand),ie=A(()=>Xe(t.workspace?.status)),ae=A(()=>!!t.workspace?.archivedAt),se=A(()=>({missingWorkspace:!t.workspace,purged:!!t.workspace?.worktreePurgedAt,archived:ae.value})),ce=A(()=>_n({...se.value,operation:v.value||l.isBlocking(L.value),agentBusy:ie.value,missingConfiguration:!te.value})),z=A(()=>_n({...se.value,operation:T.value||l.isBlocking(L.value),agentBusy:ie.value})),B=A(()=>_n({...se.value,operation:k.value||l.isBlocking(L.value)}));function V(){!ce.value&&L.value&&i.dialog({title:r(`tools.runSetupScript`),message:r(`tools.runSetupScriptConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{v.value=!0;try{let e=await G(`/api/workspaces/${L.value}/run-setup-script`,{method:`POST`}),t=await e.json();e.ok?i.notify({type:`positive`,message:r(`tools.setupScriptSuccess`),position:`top`,timeout:3e3}):i.notify({type:`negative`,message:t.error??r(`tools.setupScriptFailed`),position:`top`,timeout:6e3})}catch(e){let t=e instanceof Error?e.message:r(`tools.setupScriptFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{v.value=!1}})}async function H(){if(L.value){y.value=!0;try{let e=await ye(`/api/workspaces/${L.value}/open-editor`,{method:`POST`});if(!e.ok){let t=await e.json();i.notify({type:`negative`,message:t.error??r(`git.openEditorFailed`),position:`top`,timeout:6e3})}}catch(e){let t=e instanceof Error?e.message:r(`git.openEditorFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{y.value=!1}}}async function le(){if(L.value){x.value=!0;try{let e=await ye(`/api/workspaces/${L.value}/open-terminal`,{method:`POST`});if(!e.ok){let t=await e.json();i.notify({type:`negative`,message:t.error??r(`tools.openTerminalFailed`),position:`top`,timeout:6e3})}}catch(e){let t=e instanceof Error?e.message:r(`tools.openTerminalFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{x.value=!1}}}async function ue(){if(L.value){b.value=!0;try{let e=await ye(`/api/workspaces/${L.value}/open-file-manager`,{method:`POST`});if(!e.ok){let t=await e.json();i.notify({type:`negative`,message:t.error??r(`tools.openFileManagerFailed`),position:`top`,timeout:6e3})}}catch(e){let t=e instanceof Error?e.message:r(`tools.openFileManagerFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{b.value=!1}}}function de(e){window.open(e,`_blank`,`noopener,noreferrer`)}async function fe(){if(L.value&&!B.value){k.value=!0;try{let e=await G(`/api/workspaces/${L.value}/start-ci-fix`,{method:`POST`}),t=await e.json();if(!e.ok){i.notify({type:`negative`,message:t.error??r(`tools.fixCiFailed`),position:`top`,timeout:6e3});return}i.notify({type:`positive`,message:r(`tools.fixCiLaunched`),position:`top`,timeout:3e3})}catch(e){let t=e instanceof Error?e.message:r(`tools.fixCiFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{k.value=!1}}}async function W(e){if(!(T.value||z.value||!L.value)){T.value=!0;try{let t=await G(`/api/workspaces/${L.value}/start-review`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)}),n=await t.json();if(!t.ok){i.notify({type:`negative`,message:n.error??r(`review.failed`),position:`top`,timeout:6e3});return}i.notify({type:`positive`,message:r(`review.launched`),position:`top`,timeout:3e3}),S.value=!1}catch(e){let t=e instanceof Error?e.message:r(`review.failed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{T.value=!1}}}return(t,r)=>(h(),j(`div`,Ci,[w(qr,{workspace:e.workspace},null,8,[`workspace`]),w(Re,{dark:``}),N(`div`,wi,[N(`div`,Ti,n(t.$t(`tools.title`)),1),e.workspace?(h(),j(M,{key:1},[w(Pr,{class:`q-mb-md`}),w(gn,{reason:ae.value?t.$t(`blockers.archived`):null},{default:C(()=>[w(ri,{workspace:e.workspace,onStarted:g},null,8,[`workspace`])]),_:1},8,[`reason`]),w(gn,{"data-tour":`action-availability`,reason:ce.value?t.$t(ce.value===`configuration`?`blockers.setupConfiguration`:`blockers.${ce.value}`):null,settings:ce.value===`configuration`,"settings-tab":`scripts`},{default:C(()=>[w(U,{"no-caps":``,dense:``,outline:``,color:`primary`,icon:`replay`,label:t.$t(`tools.runSetupScript`),loading:v.value,disable:!!ce.value,class:`full-width q-mb-xs`,onClick:V},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(ie.value?t.$t(`tools.runSetupScriptBusy`):t.$t(`tools.runSetupScriptTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])]),_:1},8,[`reason`,`settings`]),ne.value?(h(),E(U,{key:0,"no-caps":``,dense:``,outline:``,color:`primary`,icon:`open_in_new`,label:t.$t(`git.openEditor`),loading:y.value,class:`full-width q-mb-xs`,onClick:H},null,8,[`label`,`loading`])):D(``,!0),re.value?(h(),E(U,{key:1,"no-caps":``,dense:``,outline:``,color:`primary`,icon:`folder_open`,label:t.$t(`tools.openFileManager`),loading:b.value,class:`full-width q-mb-xs`,onClick:ue},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tools.openFileManagerTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`])):D(``,!0),R.value?(h(),E(U,{key:2,"no-caps":``,dense:``,outline:``,color:`primary`,icon:`terminal`,label:t.$t(`tools.openTerminal`),loading:x.value,class:`full-width q-mb-xs`,onClick:le},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tools.openTerminalTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`])):D(``,!0),w(gn,{reason:z.value?t.$t(`blockers.${z.value}`):null},{default:C(()=>[w(U,{"no-caps":``,dense:``,outline:``,color:`primary`,icon:`rate_review`,label:t.$t(`tools.review`),loading:T.value,disable:!!z.value,class:`full-width q-mb-xs`,onClick:r[0]||=e=>S.value=!0},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(ie.value?t.$t(`tools.reviewBusy`):t.$t(`tools.reviewTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])]),_:1},8,[`reason`]),I.value?(h(),E(gn,{key:3,reason:B.value?t.$t(`blockers.${B.value}`):null},{default:C(()=>[w(U,{"no-caps":``,dense:``,unelevated:``,color:`red-7`,icon:`build_circle`,label:t.$t(`tools.fixCi`),loading:k.value,disable:!!B.value,class:`full-width q-mb-xs`,onClick:fe},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tools.fixCiTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])]),_:1},8,[`reason`])):D(``,!0),e.workspace?.notionUrl?(h(),E(U,{key:4,"no-caps":``,dense:``,outline:``,color:`primary`,icon:`open_in_new`,label:t.$t(`tools.openNotion`),class:`full-width q-mb-xs`,onClick:r[1]||=t=>de(e.workspace.notionUrl)},null,8,[`label`])):D(``,!0),e.workspace?.sentryUrl?(h(),E(U,{key:5,"no-caps":``,dense:``,outline:``,color:`primary`,icon:`open_in_new`,label:t.$t(`tools.openSentry`),class:`full-width q-mb-xs`,onClick:r[2]||=t=>de(e.workspace.sentryUrl)},null,8,[`label`])):D(``,!0),N(`div`,{ref_key:`handoffSection`,ref:u,"data-tour":`ws-session-handoff`,class:a([`handoff-section q-mt-sm`,{"handoff-section--highlighted":d.value}])},[w(ri,{workspace:e.workspace,mode:`fresh`,onStarted:g},null,8,[`workspace`]),w(ui,{"workspace-id":e.workspace.id,onStarted:g},null,8,[`workspace-id`])],2)],64)):(h(),j(`div`,Ei,n(t.$t(`devServer.noWorkspace`)),1))]),w(Si,{modelValue:S.value,"onUpdate:modelValue":r[3]||=e=>S.value=e,loading:T.value,workspace:e.workspace,"current-session":P.value,"can-return-to-session":F.value,onSubmit:W},null,8,[`modelValue`,`loading`,`workspace`,`current-session`,`can-return-to-session`])]))}}),[[`__scopeId`,`data-v-ebd4ab4a`]]),Oi={class:`text-h6`},ki={class:`text-subtitle2 text-kobo-2 q-mb-xs`},Ai=[`innerHTML`],ji=Z(F({__name:`WhatsNewDialog`,props:{modelValue:{type:Boolean},versions:{}},emits:[`update:modelValue`],setup(e){function t(e){return Ct(e)}return(r,i)=>(h(),E(Ve,{"model-value":e.modelValue,"onUpdate:modelValue":i[0]||=e=>r.$emit(`update:modelValue`,e)},{default:C(()=>[w(ke,{class:`text-kobo-1`,style:{"min-width":`480px`,"max-width":`90vw`,background:`var(--kobo-surface)`}},{default:C(()=>[w(q,{class:`row items-center q-pb-none`},{default:C(()=>[w(z,{name:`auto_awesome`,size:`sm`,color:`primary`,class:`q-mr-sm`}),N(`div`,Oi,n(r.$t(`whatsNew.title`)),1),w(ft),S(w(U,{flat:``,dense:``,round:``,icon:`close`,color:`kobo-2`},null,512),[[$]])]),_:1}),w(q,{style:{"max-height":`60vh`,"overflow-y":`auto`}},{default:C(()=>[(h(!0),j(M,null,I(e.versions,e=>(h(),j(`div`,{key:e.version,class:`q-mb-md`},[N(`div`,ki,n(e.version),1),N(`div`,{class:`whats-new-notes`,innerHTML:t(e.notes)},null,8,Ai)]))),128))]),_:1}),w(Me,{align:`right`},{default:C(()=>[S(w(U,{flat:``,label:r.$t(`common.close`),color:`primary`},null,8,[`label`]),[[$]])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),[[`__scopeId`,`data-v-074472c6`]]),Mi=`kobo:activityVisit`;function Ni(){try{let e=JSON.parse(localStorage.getItem(Mi)??`null`);return e&&Number.isSafeInteger(e.cursor)&&e.cursor>=0&&typeof e.seenAt==`string`?e:null}catch{return null}}var Pi=pe(`activity`,{state:()=>{let e=Ni();return{cursor:e?.cursor??null,since:e?.seenAt??``,items:[],nextCursor:e?.cursor??0,hasMore:!1,error:!1,loading:!1,present:!1,epoch:0}},actions:{checkpoint(e,t=!1){let n=Ni();this.cursor=t?e:Math.max(e,n?.cursor??0);let r=new Date().toISOString();this.since=r;try{localStorage.setItem(Mi,JSON.stringify({cursor:this.cursor,seenAt:r}))}catch{}},leaveApp(){this.present=!1,this.loading=!1,this.epoch++},connectionLost(){this.epoch++,this.loading=!1,this.error=!0},async returnToApp(){this.present=!0;let e=++this.epoch;this.loading=!0,this.error=!1;try{if(this.cursor===null){let t=await he(`/api/activity?head=1`);this.epoch===e&&this.present&&this.checkpoint(t.cursor)}else await this.readPage(this.cursor,e)}catch{this.epoch===e&&(this.error=!0)}finally{this.epoch===e&&(this.loading=!1)}},async readPage(e,t,n=!1){let r=await he(`/api/activity?after=${e}`);this.epoch===t&&this.present&&(r.cursor<e&&(this.checkpoint(0,!0),this.items=[],this.nextCursor=0,this.hasMore=!1,n=!1,r=await he(`/api/activity?after=0`),this.epoch!==t||!this.present)||(this.items=n?[...this.items,...r.items]:r.items,this.nextCursor=r.nextCursor,this.hasMore=r.hasMore,this.error=!1,!this.items.length&&!r.hasMore&&this.checkpoint(r.cursor)))},async loadMore(){if(this.loading||!this.hasMore)return;this.loading=!0;let e=this.epoch;try{await this.readPage(this.nextCursor,e,!0)}catch{this.epoch===e&&(this.error=!0)}finally{this.epoch===e&&(this.loading=!1)}},async heartbeat(){if(!this.present||this.loading||this.items.length||this.hasMore)return;if(this.error||this.cursor===null){await this.returnToApp();return}let e=this.epoch;this.loading=!0;try{let t=await he(`/api/activity?head=1`);if(!this.present||this.epoch!==e||this.items.length)return;t.cursor<this.cursor?(this.checkpoint(0,!0),this.nextCursor=0,await this.readPage(0,e)):this.checkpoint(t.cursor)}catch{this.epoch===e&&(this.error=!0)}finally{this.epoch===e&&(this.loading=!1)}},markRead(){this.checkpoint(this.nextCursor),this.items=[],this.since=new Date().toISOString(),this.hasMore&&this.returnToApp()}}}),Fi={key:0,class:`activity-entry`,"data-tour":`activity-digest`},Ii={class:`col`},Li={key:0},Ri=Z(F({__name:`ActivityDigest`,setup(t){let r=Pi(),i=Ae(),a=A(()=>i.loaded&&i.global.activityDigestEnabled!==!1),o=Be(),{locale:c}=K(),l=s(!1),u=A(()=>[...r.items].reverse());function f(e){return new Date(e).toLocaleString(c.value)}async function m(e){await o.push({name:`workspace`,params:{id:e.workspaceId},query:e.sessionId?{session:e.sessionId}:e.kind.startsWith(`pr-`)?{panel:`git`}:{}})||(l.value=!1)}function g(){document.visibilityState===`hidden`?r.leaveApp():r.returnToApp()}function _(){r.connectionLost()}function y(){r.heartbeat()}let b;function x(){g(),document.addEventListener(`visibilitychange`,g),window.addEventListener(`offline`,_),window.addEventListener(`online`,y),b=setInterval(()=>void r.heartbeat(),15e3)}function T(){l.value=!1,r.leaveApp(),clearInterval(b),b=void 0,document.removeEventListener(`visibilitychange`,g),window.removeEventListener(`offline`,_),window.removeEventListener(`online`,y)}return v(()=>{p(a,e=>e?x():T(),{immediate:!0})}),d(T),(t,i)=>a.value?(h(),j(`div`,Fi,[w(U,{flat:``,dense:``,"no-caps":``,class:`full-width`,align:`left`,label:t.$t(`absence.title`),onClick:i[0]||=e=>l.value=!0},{default:C(()=>[e(r).items.length?(h(),E(wt,{key:0,color:`primary`,class:`q-ml-sm`},{default:C(()=>[O(n(e(r).items.length)+n(e(r).hasMore?`+`:``),1)]),_:1})):D(``,!0)]),_:1},8,[`label`]),w(Ve,{modelValue:l.value,"onUpdate:modelValue":i[4]||=e=>l.value=e},{default:C(()=>[w(ke,{class:`activity-dialog`},{default:C(()=>[w(q,{class:`row items-center no-wrap`},{default:C(()=>[N(`strong`,Ii,n(t.$t(`absence.title`)),1),S(w(U,{flat:``,dense:``,"no-caps":``,class:`col-auto q-ml-md`,label:t.$t(`common.close`)},null,8,[`label`]),[[$]])]),_:1}),w(q,{class:`activity-hint`},{default:C(()=>[O(n(t.$t(`absence.retention`))+` `,1),e(r).since?(h(),j(`div`,Li,n(t.$t(`absence.since`,{date:f(e(r).since)})),1)):D(``,!0)]),_:1}),e(r).error?(h(),E(q,{key:0},{default:C(()=>[O(n(t.$t(`absence.error`))+` `,1),w(U,{flat:``,"no-caps":``,label:t.$t(`absence.retry`),onClick:i[1]||=t=>e(r).returnToApp()},null,8,[`label`])]),_:1})):D(``,!0),e(r).loading?(h(),E(Je,{key:1,indeterminate:``})):D(``,!0),!e(r).loading&&!e(r).error&&!e(r).items.length?(h(),E(q,{key:2},{default:C(()=>[O(n(t.$t(`absence.empty`)),1)]),_:1})):D(``,!0),w(nt,{class:`activity-items`,separator:``},{default:C(()=>[(h(!0),j(M,null,I(u.value,e=>(h(),E(Y,{key:e.id,clickable:``,onClick:t=>m(e)},{default:C(()=>[w(X,null,{default:C(()=>[w(J,null,{default:C(()=>[O(n(e.workspaceName),1)]),_:2},1024),w(J,{caption:``},{default:C(()=>[O(n(t.$t(`absence.kind.${e.kind}`)),1)]),_:2},1024)]),_:2},1024),w(X,{side:``},{default:C(()=>[O(n(f(e.createdAt)),1)]),_:2},1024)]),_:2},1032,[`onClick`]))),128))]),_:1}),w(Me,{align:`right`},{default:C(()=>[e(r).hasMore?(h(),E(U,{key:0,flat:``,"no-caps":``,disable:e(r).loading,label:t.$t(`absence.more`),onClick:i[2]||=t=>e(r).loadMore()},null,8,[`disable`,`label`])):D(``,!0),e(r).items.length?(h(),E(U,{key:1,flat:``,"no-caps":``,disable:e(r).loading,label:t.$t(`absence.markRead`),onClick:i[3]||=t=>e(r).markRead()},null,8,[`disable`,`label`])):D(``,!0)]),_:1})]),_:1})]),_:1},8,[`modelValue`])])):D(``,!0)}}),[[`__scopeId`,`data-v-867d59dc`]]),zi=F({__name:`HelpMenu`,setup(t){let{tours:r,status:i,runTour:o,resetAll:c,markAllSeen:l}=pt(),u=s(!1);function d(){window.dispatchEvent(new Event(`kobo:setup`))}function f(e){o(e)}function p(){c()}function m(e){return e===`seen`?`check_circle`:e===`partial`?`adjust`:`radio_button_unchecked`}function g(e){return e===`seen`?`text-kobo-success`:e===`partial`?`text-kobo-warning`:`text-kobo-3`}return(t,o)=>(h(),E(U,{flat:``,round:``,dense:``,icon:`help_outline`,size:`sm`,color:`kobo-2`,"data-tour":`help`,"aria-haspopup":`menu`,"aria-expanded":u.value,"aria-label":t.$t(`help.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`help.title`)),1)]),_:1}),w(rt,{modelValue:u.value,"onUpdate:modelValue":o[0]||=e=>u.value=e,anchor:`bottom right`,self:`top right`},{default:C(()=>[w(nt,{dense:``,role:`menu`,style:{"min-width":`260px`}},{default:C(()=>[S((h(),E(Y,{clickable:``,role:`menuitem`,onClick:d},{default:C(()=>[w(X,null,{default:C(()=>[O(n(t.$t(`setup.title`)),1)]),_:1})]),_:1})),[[$]]),w(J,{header:``},{default:C(()=>[O(n(t.$t(`help.tours`)),1)]),_:1}),(h(!0),j(M,null,I(e(r),r=>S((h(),E(Y,{key:r.id,clickable:``,role:`menuitem`,onClick:e=>f(r.id)},{default:C(()=>[w(X,{avatar:``},{default:C(()=>[w(z,{name:m(e(i)(r.id)),size:`xs`,class:a(g(e(i)(r.id)))},null,8,[`name`,`class`])]),_:2},1024),w(X,null,{default:C(()=>[w(J,null,{default:C(()=>[O(n(t.$t(`${r.i18nKey}.title`)),1)]),_:2},1024),w(J,{caption:``},{default:C(()=>[O(n(t.$t(`help.steps`,{n:e(ht)(r)},e(ht)(r)))+` · `+n(t.$t(`help.status.${e(i)(r.id)}`)),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`onClick`])),[[$]])),128)),w(Re),S((h(),E(Y,{clickable:``,role:`menuitem`,onClick:p},{default:C(()=>[w(X,{avatar:``},{default:C(()=>[w(z,{name:`replay`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[w(J,null,{default:C(()=>[O(n(t.$t(`help.resetAll`)),1)]),_:1}),w(J,{caption:``},{default:C(()=>[O(n(t.$t(`help.resetAllHint`)),1)]),_:1})]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,role:`menuitem`,onClick:e(l)},{default:C(()=>[w(X,{avatar:``},{default:C(()=>[...o[1]||=[N(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[N(`path`,{d:`M18 6 7 17l-5-5M22 10l-7.5 7.5L13 16`})],-1)]]),_:1}),w(X,null,{default:C(()=>[w(J,null,{default:C(()=>[O(n(t.$t(`help.markAllSeen`)),1)]),_:1}),w(J,{caption:``},{default:C(()=>[O(n(t.$t(`help.markAllSeenHint`)),1)]),_:1})]),_:1})]),_:1},8,[`onClick`])),[[$]])]),_:1})]),_:1},8,[`modelValue`])]),_:1},8,[`aria-expanded`,`aria-label`]))}}),Bi={class:`text-subtitle1`},Vi={class:`text-caption text-kobo-3 q-mt-xs`},Hi={key:1,class:`text-caption text-orange-5 q-mt-sm`},Ui={key:2,class:`text-kobo-3 text-caption`},Wi=F({__name:`ManageTagsDialog`,props:{modelValue:{type:Boolean},workspace:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let r=e,i=t,{t:a}=K(),o=Ae(),c=Ge(),l=oe(),u=s([]),d=s(!1);p(()=>r.modelValue,e=>{e&&(u.value=[...r.workspace.tags])},{immediate:!0});let f=A(()=>{let e=o.global.tags??[],t=r.workspace.tags??[];return Array.from(new Set([...e,...t]))}),m=A(()=>{let e=new Set(o.global.tags??[]);return(r.workspace.tags??[]).filter(t=>!e.has(t))});async function g(){d.value=!0;try{await c.setWorkspaceTags(r.workspace.id,u.value),i(`update:modelValue`,!1)}catch(e){l.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}finally{d.value=!1}}function _(){i(`update:modelValue`,!1)}return(t,r)=>(h(),E(Ve,{"model-value":e.modelValue,"onUpdate:modelValue":r[1]||=e=>i(`update:modelValue`,e)},{default:C(()=>[w(ke,{dark:``,style:{"min-width":`360px`}},{default:C(()=>[w(q,null,{default:C(()=>[N(`div`,Bi,n(t.$t(`tags.manageTitle`)),1),N(`div`,Vi,n(e.workspace.name),1)]),_:1}),w(q,null,{default:C(()=>[f.value.length>0?(h(),E(Ze,{key:0,modelValue:u.value,"onUpdate:modelValue":r[0]||=e=>u.value=e,options:f.value.map(e=>({label:m.value.includes(e)?`${e}`:e,value:e})),type:`checkbox`,dense:``,dark:``},null,8,[`modelValue`,`options`])):D(``,!0),m.value.length>0?(h(),j(`div`,Hi,n(t.$t(`tags.orphanedHint`,{count:m.value.length})),1)):D(``,!0),f.value.length===0?(h(),j(`div`,Ui,n(t.$t(`tags.noTagsDefined`)),1)):D(``,!0)]),_:1}),w(Me,{align:`right`},{default:C(()=>[w(U,{flat:``,label:t.$t(`common.cancel`),onClick:_},null,8,[`label`]),w(U,{color:`primary`,label:t.$t(`common.save`),loading:d.value,onClick:g},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),Gi={key:1,width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},Ki=F({__name:`WorkspaceContextMenu`,props:{workspace:{},archived:{type:Boolean,default:!1}},emits:[`rename`,`editDescription`,`copyPath`,`openEditor`,`openFileManager`,`runSetup`,`toggleFavorite`,`manageTags`,`duplicate`,`archive`,`unarchive`,`purgeWorktree`,`restoreWorktree`,`delete`],setup(t,{emit:r}){let i=Be(),a=t,o=r;function s(e){window.open(e,`_blank`,`noopener,noreferrer`)}let c=oe(),{t:l}=K();async function u(){let e=c.notify({spinner:!0,message:l(`contextMenu.exportingEvents`),timeout:et,group:!1});try{let e=await G(`/api/workspaces/${a.workspace.id}/events.csv`);if(!e.ok)throw await ge(e);let t=await e.blob(),n=URL.createObjectURL(t),r=a.workspace.name.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``),i=document.createElement(`a`);i.href=n,i.download=`${r||`workspace`}-events.csv`,document.body.appendChild(i),i.click(),i.remove(),URL.revokeObjectURL(n)}catch(e){console.error(`[WorkspaceContextMenu] export events failed:`,e),c.notify({type:`negative`,message:l(`contextMenu.exportEventsError`),position:`top`})}finally{e()}}let d=Ae(),f=Ge(),p=A(()=>f.restoringWorktreeIds.includes(a.workspace.id)),m=A(()=>f.gitStatsCache[a.workspace.id]?.prUrl??null),g=A(()=>f.prSnapshots[a.workspace.id]),_=A(()=>{let e=g.value;if(!e||!Ke(e))return!1;let t=a.workspace.prChangesDismissedAt;return!t||e.updatedAt>t}),v=A(()=>{let e=g.value;if(!e||!Qe(e))return!1;let t=a.workspace.prCiFailureDismissedAt;return!t||e.updatedAt>t}),y=A(()=>{let e=g.value;if(!e||!Ke(e))return!1;let t=a.workspace.prChangesDismissedAt;return!!t&&e.updatedAt<=t}),b=A(()=>{let e=g.value;if(!e||!Qe(e))return!1;let t=a.workspace.prCiFailureDismissedAt;return!!t&&e.updatedAt<=t});function x(e){f.dismissPrAttention(a.workspace.id,e)}function T(e){f.restorePrAttention(a.workspace.id,e)}function ee(){f.togglePrWatch(a.workspace.id).catch(e=>{console.error(`[WorkspaceContextMenu] togglePrWatch failed:`,e),c.notify({type:`negative`,message:l(`contextMenu.prWatchToggleFailed`),position:`top`})})}return(r,a)=>(h(),E(rt,{dark:``,"context-menu":``},{default:C(()=>[w(nt,{dense:``,style:{"min-width":`180px`}},{default:C(()=>[e(Fe)?D(``,!0):S((h(),E(Y,{key:0,clickable:``,onClick:a[0]||=n=>e(i).push({name:`split`,query:e(je)(e(f).selectedWorkspaceId,t.workspace.id)})},{default:C(()=>[w(X,null,{default:C(()=>[O(n(r.$t(`split.openBeside`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:a[1]||=e=>o(`rename`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`edit`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.rename`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:a[2]||=e=>o(`editDescription`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`description`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.editDescription`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:a[3]||=e=>o(`copyPath`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`content_copy`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.copyPath`)),1)]),_:1})]),_:1})),[[$]]),e(d).global.editorCommand?S((h(),E(Y,{key:1,clickable:``,onClick:a[4]||=e=>o(`openEditor`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`open_in_new`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.openEditor`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),e(d).global.fileManagerCommand?S((h(),E(Y,{key:2,clickable:``,onClick:a[5]||=e=>o(`openFileManager`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`folder_open`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.openFileManager`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),S((h(),E(Y,{clickable:``,onClick:a[6]||=e=>o(`runSetup`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`replay`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.runSetup`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:a[7]||=e=>o(`toggleFavorite`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:t.workspace.favoritedAt?`star`:`star_outline`,size:`xs`},null,8,[`name`])]),_:1}),w(X,null,{default:C(()=>[O(n(t.workspace.favoritedAt?r.$t(`workspace.unfavorite`):r.$t(`workspace.favorite`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:ee},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:t.workspace.prWatchDisabledAt?`visibility`:`visibility_off`,size:`xs`},null,8,[`name`])]),_:1}),w(X,null,{default:C(()=>[O(n(t.workspace.prWatchDisabledAt?r.$t(`contextMenu.resumePrWatch`):r.$t(`contextMenu.ignorePrWatch`)),1)]),_:1})]),_:1})),[[$]]),S((h(),E(Y,{clickable:``,onClick:a[8]||=e=>o(`manageTags`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`label`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`tags.manage`)),1)]),_:1})]),_:1})),[[$]]),t.workspace.notionUrl?S((h(),E(Y,{key:3,clickable:``,onClick:a[9]||=e=>s(t.workspace.notionUrl)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`open_in_new`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.openNotion`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),t.workspace.sentryUrl?S((h(),E(Y,{key:4,clickable:``,onClick:a[10]||=e=>s(t.workspace.sentryUrl)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`open_in_new`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.openSentry`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),m.value?S((h(),E(Y,{key:5,clickable:``,onClick:a[11]||=e=>s(m.value)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`merge_type`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.openPr`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),S((h(),E(Y,{clickable:``,onClick:u},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`download`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.exportEvents`)),1)]),_:1})]),_:1})),[[$]]),_.value?S((h(),E(Y,{key:6,clickable:``,onClick:a[12]||=e=>x(`changes-requested`)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`visibility_off`,size:`xs`,color:`amber-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.dismissChangesRequested`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),v.value?S((h(),E(Y,{key:7,clickable:``,onClick:a[13]||=e=>x(`ci-failed`)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`visibility_off`,size:`xs`,color:`amber-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.dismissCiFailure`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),y.value?S((h(),E(Y,{key:8,clickable:``,onClick:a[14]||=e=>T(`changes-requested`)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`visibility`,size:`xs`,color:`green-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.restoreChangesRequested`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),b.value?S((h(),E(Y,{key:9,clickable:``,onClick:a[15]||=e=>T(`ci-failed`)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`visibility`,size:`xs`,color:`green-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.restoreCiFailure`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),S((h(),E(Y,{clickable:``,onClick:a[16]||=e=>o(`duplicate`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`file_copy`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`common.duplicate`)),1)]),_:1})]),_:1})),[[$]]),w(Re,{dark:``}),t.archived?S((h(),E(Y,{key:10,clickable:!t.workspace.worktreePurgedAt,disable:!!t.workspace.worktreePurgedAt,onClick:a[17]||=e=>!t.workspace.worktreePurgedAt&&o(`unarchive`,t.workspace,e)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`unarchive`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`common.unarchive`)),1)]),_:1}),t.workspace.worktreePurgedAt?(h(),E(Q,{key:0,anchor:`center left`,self:`center right`,"max-width":`280px`},{default:C(()=>[O(n(r.$t(`contextMenu.unarchiveDisabledPurged`)),1)]),_:1})):D(``,!0)]),_:1},8,[`clickable`,`disable`])),[[$,!t.workspace.worktreePurgedAt]]):S((h(),E(Y,{key:11,clickable:``,onClick:a[18]||=e=>o(`archive`,t.workspace,e)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`archive`,size:`xs`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`common.archive`)),1)]),_:1})]),_:1})),[[$]]),t.workspace.worktreePurgedAt&&t.workspace.worktreeOwned?S((h(),E(Y,{key:12,clickable:``,disable:p.value,onClick:a[19]||=e=>!p.value&&o(`restoreWorktree`,t.workspace)},{default:C(()=>[w(X,{side:``},{default:C(()=>[p.value?(h(),E(R,{key:0,size:`16px`})):(h(),j(`svg`,Gi,[...a[22]||=[N(`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`},null,-1),N(`path`,{d:`M3 3v5h5`},null,-1)]]))]),_:1}),w(X,null,{default:C(()=>[O(n(p.value?r.$t(`workspacePage.restoringWorktree`):r.$t(`contextMenu.restoreWorktree`)),1)]),_:1}),w(Q,null,{default:C(()=>[O(n(r.$t(`workspacePage.worktreeRestoreLimitations`)),1)]),_:1})]),_:1},8,[`disable`])),[[$]]):D(``,!0),!t.workspace.worktreePurgedAt&&t.workspace.worktreeOwned!==!1?S((h(),E(Y,{key:13,clickable:``,class:`text-orange-5`,onClick:a[20]||=e=>o(`purgeWorktree`,t.workspace,e)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`cleaning_services`,size:`xs`,color:`orange-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`contextMenu.purgeWorktree`)),1)]),_:1}),w(Q,null,{default:C(()=>[O(n(r.$t(`contextMenu.purgeWorktreeTooltip`)),1)]),_:1})]),_:1})),[[$]]):D(``,!0),S((h(),E(Y,{clickable:``,class:`text-red-5`,onClick:a[21]||=e=>o(`delete`,t.workspace,e)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(z,{name:`delete_outline`,size:`xs`,color:`red-5`})]),_:1}),w(X,null,{default:C(()=>[O(n(r.$t(`common.delete`)),1)]),_:1})]),_:1})),[[$]])]),_:1})]),_:1}))}}),qi={key:0,class:`dd-dot dd-dot--running`},Ji=Z(F({__name:`WorkspaceDrawerIndicators`,props:{workspace:{}},setup(t){let r=t,i=Ue(),a=Ge(),{t:o}=K(),s=A(()=>a.autoLoopStates[r.workspace.id]?.crons_count??0),c=A(()=>a.prSnapshots[r.workspace.id]),l=A(()=>{let e=c.value;return e?Qe(e)?o(`workspaceList.attentionCiFailed`):Ke(e)?o(`workspaceList.prChangesRequested`,{n:e.number}):o(`workspaceList.prOpen`,{n:e.number}):``});function u(){let e=c.value?.url;e&&window.open(e,`_blank`,`noopener,noreferrer`)}return(r,d)=>(h(),j(M,null,[e(i).getStatus(t.workspace.id)?.status===`running`?(h(),j(`div`,qi)):D(``,!0),e(a).pendingWakeups[t.workspace.id]?(h(),E(z,{key:1,name:`schedule`,size:`14px`,color:`amber-4`},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(o)(`wakeup.pendingIndicator`)),1)]),_:1})]),_:1})):D(``,!0),s.value>0?(h(),E(z,{key:2,name:`event_repeat`,size:`14px`,color:`cyan-4`},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(o)(`cron.pendingIndicator`,{n:s.value})),1)]),_:1})]),_:1})):D(``,!0),c.value?.state===`OPEN`?(h(),E(z,{key:3,name:`merge_type`,size:`14px`,color:`green-5`,class:`cursor-pointer`,onClick:B(u,[`stop`])},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(l.value),1)]),_:1})]),_:1})):D(``,!0),t.workspace.prWatchDisabledAt?(h(),E(z,{key:4,name:`visibility_off`,size:`14px`,color:`kobo-3`},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(o)(`workspaceList.prWatchDisabledIndicator`)),1)]),_:1})]),_:1})):D(``,!0),e(a).autoLoopStates[t.workspace.id]?.auto_loop?(h(),E(z,{key:5,name:`autorenew`,size:`14px`,color:e(a).autoLoopStates[t.workspace.id]?.auto_loop_ready?`amber-4`:`primary`,class:`auto-loop-spin`},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(e(a).autoLoopStates[t.workspace.id]?.auto_loop_ready?e(o)(`autoLoop.running`):e(o)(`autoLoop.preparing`)),1)]),_:1})]),_:1},8,[`color`])):D(``,!0)],64))}}),[[`__scopeId`,`data-v-0532dff8`]]),Yi=[`aria-selected`,`aria-label`],Xi={class:`col`,style:{"min-width":`0`}},Zi={class:`row items-center no-wrap q-gutter-xs`},Qi=[`title`],$i={key:1,class:`text-caption q-mt-xs`},ea={class:`text-green-4`},ta={class:`q-ml-xs text-kobo-3`},na={key:2,class:`wl-item-meta text-caption text-kobo-3`},ra={key:3,class:`wl-item-meta text-caption text-kobo-3`},ia={key:4,class:`row q-gutter-xs q-mt-xs`},aa=Z(F({__name:`WorkspaceCard`,props:{workspace:{},variant:{},selected:{type:Boolean},showProjectChip:{type:Boolean},borderColor:{}},emits:[`select`,`rename`,`editDescription`,`copyPath`,`openEditor`,`openFileManager`,`runSetup`,`toggleFavorite`,`manageTags`,`duplicate`,`archive`,`unarchive`,`purgeWorktree`,`restoreWorktree`,`delete`],setup(t,{emit:r}){let o=t,s=r,{t:c}=K(),{timeAgo:l}=Ht(),u=A(()=>{let e=Pe(o.workspace.status);return e?c(e):o.workspace.status}),d=A(()=>o.variant===`archived`?{maxWidth:`400px`}:{fontWeight:o.workspace.hasUnread?700:400,opacity:o.workspace.hasUnread?1:.75,maxWidth:`400px`});return(r,o)=>(h(),j(`div`,{"data-testid":`workspace-card`,class:a([`wl-item cursor-pointer q-pa-sm q-mx-xs rounded-borders`,{"wl-item--selected":t.selected,"wl-item--archived":t.variant===`archived`}]),role:`option`,tabindex:`0`,"aria-selected":t.selected,"aria-label":e(c)(`workspaceList.a11y.card`,{name:t.workspace.name,status:u.value}),style:i([{borderLeft:`3px solid ${t.borderColor}`},t.workspace.favoritedAt?{borderBottom:`2px solid var(--kobo-warning)`}:{}]),onClick:o[14]||=e=>s(`select`,t.workspace.id),onKeydown:[o[15]||=H(B(e=>s(`select`,t.workspace.id),[`prevent`]),[`enter`]),o[16]||=H(B(e=>s(`select`,t.workspace.id),[`prevent`]),[`space`])],onContextmenu:o[17]||=B(()=>{},[`prevent`])},[w(Ki,{workspace:t.workspace,archived:t.variant===`archived`,onRename:o[0]||=e=>s(`rename`,e),onEditDescription:o[1]||=e=>s(`editDescription`,e),onCopyPath:o[2]||=e=>s(`copyPath`,e),onOpenEditor:o[3]||=e=>s(`openEditor`,e),onOpenFileManager:o[4]||=e=>s(`openFileManager`,e),onRunSetup:o[5]||=e=>s(`runSetup`,e),onToggleFavorite:o[6]||=e=>s(`toggleFavorite`,e),onManageTags:o[7]||=e=>s(`manageTags`,e),onDuplicate:o[8]||=e=>s(`duplicate`,e),onArchive:o[9]||=(e,t)=>s(`archive`,e,t),onUnarchive:o[10]||=(e,t)=>s(`unarchive`,e,t),onPurgeWorktree:o[11]||=(e,t)=>s(`purgeWorktree`,e,t),onRestoreWorktree:o[12]||=e=>s(`restoreWorktree`,e),onDelete:o[13]||=(e,t)=>s(`delete`,e,t)},null,8,[`workspace`,`archived`]),N(`div`,Xi,[N(`div`,Zi,[w(Ji,{workspace:t.workspace},null,8,[`workspace`]),N(`div`,{class:`wl-item-name text-body2 text-kobo-1 ellipsis`,style:i(d.value)},[O(n(t.workspace.name)+` `,1),w(Q,null,{default:C(()=>[O(n(t.workspace.name),1)]),_:1})],4)]),t.workspace.agentDescription||t.workspace.description?(h(),j(`div`,{key:0,class:`text-caption text-kobo-3 ellipsis q-mt-xs`,title:t.workspace.agentDescription||t.workspace.description||void 0,style:{"max-width":`100%`,"font-size":`11px`}},n(t.workspace.agentDescription||t.workspace.description),9,Qi)):D(``,!0),w(yt,{workspace:t.workspace,class:`q-mt-xs`},null,8,[`workspace`]),w(Lt,{workspace:t.workspace,"ci-recap-only":t.variant!==`attention`},null,8,[`workspace`,`ci-recap-only`]),t.variant===`running`?(h(),j(`div`,$i,[N(`span`,ea,n(u.value),1),N(`span`,ta,`· `+n(e(l)(t.workspace.updatedAt)),1)])):t.variant===`idle`?(h(),j(`div`,na,n(e(l)(t.workspace.updatedAt)),1)):t.variant===`archived`?(h(),j(`div`,ra,n(e(c)(`workspaceList.archived`))+` `+n(e(l)(t.workspace.archivedAt)),1)):D(``,!0),t.showProjectChip||t.workspace.tags.length>0?(h(),j(`div`,ia,[t.showProjectChip?(h(),E(Tt,{key:0,dense:``,size:`sm`,color:e(Gt)(t.workspace)??`kobo-hover`,"text-color":e(Ut)(t.workspace),label:e(Kt)(t.workspace)},null,8,[`color`,`text-color`,`label`])):D(``,!0),(h(!0),j(M,null,I(t.workspace.tags,e=>(h(),E(Tt,{key:e,dense:``,size:`sm`,color:`kobo-hover`,"text-color":`kobo-1`,label:e},null,8,[`label`]))),128))])):D(``,!0)])],46,Yi))}}),[[`__scopeId`,`data-v-7df74cb6`]]),oa=[3,2,2,1.5,1,1];function sa(e){let t=e.replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return n===-1?t:t.slice(n+1)}function ca(e){let t=e.agentDescription||e.description||``;return[e.name,e.workingBranch,t,e.tags.join(` `),sa(e.projectPath),e.sourceBranch].filter(e=>e.trim().length>0)}function la(e,t){let n=e.trim();if(n===``)return 0;let r=null,i=ca(t),a=[t.name,t.workingBranch,t.agentDescription||t.description||``,t.tags.join(` `),sa(t.projectPath),t.sourceBranch];for(let e=0;e<a.length;e++){let t=a[e]??``;if(t.trim().length===0||!i.includes(t))continue;let o=xt(n,t);if(o===null)continue;let s=o*(oa[e]??1);(r===null||s>r)&&(r=s)}return r}function ua(e,t){return e.trim()===``?t:t.map(t=>({item:t,score:la(e,t)})).filter(e=>e.score!==null).sort((e,t)=>t.score-e.score).map(e=>e.item)}var da=`kobo:workspace-sort`,fa=[`activity`,`created`,`name`,`attention`],pa={field:`activity`,direction:`desc`};function ma(e){try{let t=JSON.parse(e??`null`);if(fa.includes(t?.field)&&[`asc`,`desc`].includes(t?.direction))return{field:t.field,direction:t.direction}}catch{}return{...pa}}var ha={"awaiting-user":6,error:5,"ci-failed":5,"changes-requested":4,quota:3,"quota-retry":2,"ready-to-merge":1};function ga(e){let t=Date.parse(e??``);return Number.isFinite(t)?t:0}function _a(e,t){return Math.max(ga(e.createdAt),ga(e.updatedAt),ga(t?.lastEventAt))}function va(e,t,n={}){let r=new Intl.Collator(n.locale,{numeric:!0,sensitivity:`base`}),i=new Map(e.map(e=>[e.id,t.field===`attention`?Math.max(0,...It(e,n.snapshots?.[e.id],n.quotaBackoffReasons?.[e.id]).map(e=>ha[e.kind])):t.field===`created`?ga(e.createdAt):_a(e,n.liveness?.[e.id])])),a=t.direction===`asc`?1:-1,o=[...e].sort((e,n)=>(t.field===`name`?r.compare(e.name,n.name):i.get(e.id)-i.get(n.id))*a||e.id.localeCompare(n.id));return ua(n.query??``,o)}var ya=F({__name:`WorkspaceSortMenu`,props:{modelValue:{required:!0},modelModifiers:{}},emits:[`update:modelValue`],setup(t){let r=m(t,`modelValue`),i=s(!1),a=[`asc`,`desc`];function o(e){r.value={field:e,direction:e===`name`?`asc`:`desc`}}return(t,s)=>(h(),E(U,{flat:``,dense:``,round:``,size:`sm`,color:`kobo-3`,"aria-label":t.$t(`workspaceSort.label`),"aria-haspopup":`menu`,"aria-expanded":i.value,"data-tour":`workspace-sort`},{default:C(()=>[s[1]||=N(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"aria-hidden":`true`},[N(`path`,{d:`M3 6h18M3 12h12M3 18h6`})],-1),w(Q,null,{default:C(()=>[O(n(t.$t(`workspaceSort.label`))+` · `+n(t.$t(`workspaceSort.${r.value.field}`))+` · `+n(t.$t(`workspaceSort.${r.value.direction}`)),1)]),_:1}),w(rt,{modelValue:i.value,"onUpdate:modelValue":s[0]||=e=>i.value=e,anchor:`bottom right`,self:`top right`},{default:C(()=>[w(nt,{dense:``,style:{"min-width":`230px`},role:`menu`},{default:C(()=>[w(J,{header:``},{default:C(()=>[O(n(t.$t(`workspaceSort.label`)),1)]),_:1}),(h(!0),j(M,null,I(e(fa),e=>(h(),E(Y,{key:e,clickable:``,role:`menuitemradio`,"aria-checked":r.value.field===e,onClick:t=>o(e)},{default:C(()=>[w(X,null,{default:C(()=>[O(n(t.$t(`workspaceSort.${e}`)),1)]),_:2},1024),r.value.field===e?(h(),E(X,{key:0,side:``},{default:C(()=>[w(z,{name:`check`,size:`xs`})]),_:1})):D(``,!0)]),_:2},1032,[`aria-checked`,`onClick`]))),128)),w(Re),(h(),j(M,null,I(a,e=>w(Y,{key:e,clickable:``,role:`menuitemradio`,"aria-checked":r.value.direction===e,onClick:t=>r.value={...r.value,direction:e}},{default:C(()=>[w(X,null,{default:C(()=>[O(n(t.$t(`workspaceSort.${e}`)),1)]),_:2},1024),r.value.direction===e?(h(),E(X,{key:0,side:``},{default:C(()=>[w(z,{name:`check`,size:`xs`})]),_:1})):D(``,!0)]),_:2},1032,[`aria-checked`,`onClick`])),64)),w(J,{caption:``,class:`q-pa-md`,style:{"max-width":`260px`}},{default:C(()=>[O(n(t.$t(`workspaceSort.hint`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1},8,[`aria-label`,`aria-expanded`]))}}),ba=F({__name:`WorkspaceTagFilterMenu`,props:{modelValue:{},tags:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let r=e,i=t,{t:a}=K(),o=A(()=>r.modelValue.length>0?a(`workspace.tagFilterActive`,{count:r.modelValue.length}):a(`workspace.tagFilter`));function s(e){i(`update:modelValue`,r.modelValue.includes(e)?r.modelValue.filter(t=>t!==e):[...r.modelValue,e])}return(e,t)=>(h(),E(U,{flat:``,dense:``,round:``,size:`sm`,icon:`sell`,color:r.modelValue.length>0?`primary`:`kobo-3`,"aria-label":o.value,"aria-pressed":r.modelValue.length>0,"aria-haspopup":`menu`},{default:C(()=>[r.modelValue.length>0?(h(),E(wt,{key:0,floating:``,rounded:``,color:`primary`,"data-tag-filter-count":``},{default:C(()=>[O(n(r.modelValue.length),1)]),_:1})):D(``,!0),w(Q,null,{default:C(()=>[O(n(o.value),1)]),_:1}),w(rt,{anchor:`bottom right`,self:`top right`},{default:C(()=>[w(nt,{dense:``,style:{"min-width":`220px`},role:`menu`},{default:C(()=>[w(J,{header:``},{default:C(()=>[O(n(e.$t(`workspace.tagFilter`)),1)]),_:1}),r.tags.length===0?(h(),E(J,{key:0,caption:``,class:`q-pa-md`,style:{"max-width":`260px`}},{default:C(()=>[O(n(e.$t(`workspace.tagFilterEmpty`)),1)]),_:1})):D(``,!0),(h(!0),j(M,null,I(r.tags,e=>(h(),E(Y,{key:e.tag,clickable:``,role:`menuitemcheckbox`,"aria-checked":r.modelValue.includes(e.tag),"data-tag":e.tag,onClick:t=>s(e.tag)},{default:C(()=>[w(X,{side:``},{default:C(()=>[w(He,{"model-value":r.modelValue.includes(e.tag),dense:``,size:`xs`,tabindex:`-1`,"onUpdate:modelValue":t=>s(e.tag)},null,8,[`model-value`,`onUpdate:modelValue`])]),_:2},1024),w(X,null,{default:C(()=>[O(n(e.tag),1)]),_:2},1024),w(X,{side:``,class:`text-kobo-3`},{default:C(()=>[O(n(e.count),1)]),_:2},1024)]),_:2},1032,[`aria-checked`,`data-tag`,`onClick`]))),128)),r.modelValue.length>0?(h(),j(M,{key:1},[w(Re),w(Y,{clickable:``,"data-tag-filter-clear":``,onClick:t[0]||=e=>i(`update:modelValue`,[])},{default:C(()=>[w(X,null,{default:C(()=>[O(n(e.$t(`workspace.tagFilterClear`)),1)]),_:1})]),_:1})],64)):D(``,!0)]),_:1})]),_:1})]),_:1},8,[`color`,`aria-label`,`aria-pressed`]))}});function xa(e){let t=new Map;for(let n of e)for(let e of new Set(n.tags))t.set(e,(t.get(e)??0)+1);return[...t.entries()].map(([e,t])=>({tag:e,count:t})).sort((e,t)=>e.tag.localeCompare(t.tag,void 0,{sensitivity:`base`}))}function Sa(e,t){return t.length===0||e.tags.some(e=>t.includes(e))}function Ca(e){if(!e)return[];try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}catch{return[]}}var wa={class:`workspace-list row column full-height`,"data-tour":`workspace-list`},Ta={class:`row items-center no-wrap q-pl-md q-pr-xs q-py-sm`},Ea={class:`text-caption text-uppercase text-weight-bold text-kobo-3 col ellipsis`},Da={class:`col items-center justify-end row no-wrap`},Oa={class:`q-px-md q-pb-sm row items-center no-wrap q-gutter-xs`},ka=[`aria-label`],Aa={key:0,class:`wl-group q-mt-xs`},ja=[`aria-expanded`,`onKeydown`],Ma={id:`wl-group-label-attention`,class:`text-caption text-weight-bold q-ml-xs text-red-5`},Na={class:`wl-project-label q-px-md q-pt-xs`},Pa={key:1,class:`wl-group q-mt-xs`},Fa=[`aria-expanded`,`onKeydown`],Ia={id:`wl-group-label-running`,class:`text-caption text-weight-bold q-ml-xs text-green-4`},La={class:`wl-project-label q-px-md q-pt-xs`},Ra={key:2,class:`wl-group q-mt-xs`},za=[`aria-expanded`,`onKeydown`],Ba={id:`wl-group-label-idle`,class:`text-caption text-weight-bold q-ml-xs text-kobo-3`},Va={class:`wl-project-label q-px-md q-pt-xs`},Ha={key:3,class:`wl-group q-mt-xs`},Ua=[`aria-expanded`,`onKeydown`],Wa={id:`wl-group-label-archived`,class:`text-caption text-weight-bold q-ml-xs text-kobo-3`},Ga={key:4,class:`q-pa-lg text-center`},Ka={class:`text-caption text-negative q-mt-sm`},qa={class:`text-caption text-kobo-3 q-mt-xs`},Ja={class:`text-caption text-kobo-3 q-mt-xs`},Ya={key:5,class:`q-pa-lg text-center text-kobo-3 text-caption`},Xa={class:`q-px-md q-py-xs text-caption text-kobo-3`},Za={class:`text-h6`},Qa={class:`text-body2 q-mb-sm text-kobo-3`},$a={class:`text-caption q-mb-md text-kobo-3`,style:{"font-family":`var(--kobo-font-mono)`,"overflow-wrap":`anywhere`}},eo={class:`column q-gutter-xs`},to={key:0,class:`text-caption q-mt-sm text-red-5`},no={class:`text-h6`},ro={class:`text-body2 q-mb-md text-kobo-3`},io={class:`column q-gutter-xs`},ao={key:0,class:`text-caption q-mt-sm text-red-5`},oo=`kobo:workspace-search`,so=`kobo:tag-filter`,co=15e3,lo=Z(F({__name:`WorkspaceList`,setup(t){let{t:r,locale:i}=K(),o=oe(),c=Ge(),{restoreWorktree:l}=St(),u=qe(),d=Ue(),f=Ae(),m=Be(),g=mt(),{isDrawerCollapsed:_}=Et();function y(e){let t=It(e,c.prSnapshots[e.id],c.pendingQuotaBackoffs[e.id]?.reason===`transient`?`transient`:`quota`);return t.some(e=>e.color===`red-5`)?`var(--kobo-danger)`:t.length>0&&t.every(e=>e.kind===`ready-to-merge`)?`var(--kobo-success)`:`var(--kobo-warning)`}let b=null,x=s(ma(localStorage.getItem(da)));p(x,e=>{try{localStorage.setItem(da,JSON.stringify(e))}catch{}});function T(e,t=k.value){return va(e,x.value,{liveness:c.agentLiveness,snapshots:c.prSnapshots,quotaBackoffReasons:Object.fromEntries(Object.entries(c.pendingQuotaBackoffs).map(([e,t])=>[e,t.reason===`transient`?`transient`:`quota`])),locale:i.value,query:t})}let k=s(localStorage.getItem(oo)??``);p(k,e=>localStorage.setItem(oo,e));let P=s(localStorage.getItem(`kobo:favorites-filter`)===`1`);p(P,e=>localStorage.setItem(`kobo:favorites-filter`,e?`1`:`0`));let F=s(Ca(localStorage.getItem(so)));p(F,e=>{try{localStorage.setItem(so,JSON.stringify(e))}catch{}});let L=A(()=>xa([...c.workspaces,...c.archived]));p(L,e=>{if(!c.archivedLoaded)return;let t=new Set(e.map(e=>e.tag));F.value.some(e=>!t.has(e))&&(F.value=F.value.filter(e=>t.has(e)))},{immediate:!0});let te=e=>(!P.value||e.favoritedAt!==null)&&Sa(e,F.value),ne=s(localStorage.getItem(`kobo:search-archived`)===`1`);p(ne,e=>localStorage.setItem(`kobo:search-archived`,e?`1`:`0`));let re=s(!1),R=s(null);function ie(e){R.value=e,re.value=!0}function ae(e){m.push({name:`create`,query:{from:e.id}})}function se(e){let t=new Map;for(let n of e){let e=n.projectPath;t.has(e)||t.set(e,[]),t.get(e).push(n)}return[...t.entries()].map(([e,t])=>({projectPath:e,projectName:Wt(e),projectColor:f.getProjectByPath(e)?.color??null,workspaces:t}))}let V=A(()=>T(c.needsAttention.filter(te))),le=A(()=>T(c.running.filter(te))),ue=A(()=>T(c.idle.filter(te))),de=A(()=>se(V.value)),fe=A(()=>se(le.value)),pe=A(()=>se(ue.value)),me=A(()=>f.global.flattenWorkspaceList??!1),he=A(()=>V.value),ge=A(()=>le.value),_e=A(()=>ue.value),G=A(()=>{let e=c.archived;return T(e.filter(te),ne.value?k.value:``)}),ve=A(()=>ne.value&&k.value.length>0&&G.value.length>0),be=A(()=>c.workspaces.length),xe=A(()=>c.running.length),Se=s(!0),Ce=s(!0),Te=s(!0),Ee=s(!1);function De(){Se.value=!Se.value}function Oe(){Ce.value=!Ce.value}function je(){Te.value=!Te.value}async function Ne(){Ee.value=!Ee.value,Ee.value&&!c.archivedLoaded&&await c.fetchArchivedWorkspaces()}let Pe=s(!1),Ie=s(``),Le=A(()=>!!Ke.value&&Ie.value.trim()===Ke.value.workingBranch),ze=s(``),We=A(()=>ze.value.trim()===String(c.archived.length)),Ke=s(null),Je=s(!1),Ye=s(!1),Ze=s(!1),Qe=s(!1),$e=s(!1),tt=s(!1),nt=s(!1);function rt(e,t){t.stopPropagation(),Ke.value=e,Je.value=!0,Ye.value=!1,Ie.value=``,Pe.value=!0}function J(e,t){let n=e instanceof Error&&e.message?e.message:r(t);o.notify({type:`negative`,message:n,position:`top`,timeout:et})}async function it(){if(!Ke.value||!Le.value)return;let e=Ke.value.id;Ze.value=!0;try{let{warnings:t}=await c.deleteWorkspace(e,{deleteLocalBranch:Je.value,deleteRemoteBranch:Ye.value});u.unsubscribe(e),Pe.value=!1,c.selectedWorkspaceId===null&&m.push({name:`workspace`});for(let e of t)o.notify({type:`warning`,message:e,position:`top`,timeout:et,multiLine:!0,classes:`workspace-delete-warning`,actions:[{icon:`content_copy`,color:`white`,round:!0,handler:()=>{navigator.clipboard.writeText(e)}},{label:r(`common.ok`),color:`white`,handler:()=>void 0}]})}catch(e){console.error(`Delete failed:`,e),J(e,`workspace.deleteFailed`)}finally{Ze.value=!1}}function Y(){$e.value=!1,tt.value=!1,ze.value=``,Qe.value=!0}async function X(){if(We.value){nt.value=!0;try{let{warnings:e,ids:t}=await c.deleteAllArchived({deleteLocalBranch:$e.value,deleteRemoteBranch:tt.value});for(let e of t)u.unsubscribe(e);Qe.value=!1,c.selectedWorkspaceId===null&&m.push({name:`workspace`});for(let t of e)o.notify({type:`warning`,message:t,position:`top`,timeout:et,multiLine:!0,classes:`workspace-delete-warning`,actions:[{icon:`content_copy`,color:`white`,round:!0,handler:()=>{navigator.clipboard.writeText(t)}},{label:r(`common.ok`),color:`white`,handler:()=>void 0}]})}catch(e){console.error(`Bulk delete archived failed:`,e),J(e,`workspace.deleteFailed`)}finally{nt.value=!1}}}async function at(e,t){t.stopPropagation();try{await c.archiveWorkspace(e.id),c.selectedWorkspaceId===null&&m.push({name:`workspace`}),o.notify({type:`info`,message:r(`workspaceList.archivedToast`,{name:e.name}),position:`top`,timeout:et,actions:[{label:r(`workspaceList.archivedUndo`),color:`white`,handler:()=>{c.unarchiveWorkspace(e.id).catch(()=>o.notify({type:`negative`,message:r(`workspaceList.unarchiveFailed`),position:`top`}))}}]})}catch(e){console.error(`Archive failed:`,e),J(e,`workspace.archiveFailed`)}}function ot(e,t){t.stopPropagation(),o.dialog({title:r(`contextMenu.purgeWorktreeDialogTitle`),message:r(`contextMenu.purgeWorktreeDialogMessage`,{name:e.name}),cancel:{flat:!0,label:r(`common.cancel`),color:`kobo-2`},ok:{unelevated:!0,label:r(`contextMenu.purgeWorktreeDialogConfirm`),color:`orange-7`},persistent:!0,dark:!0}).onOk(async()=>{let t=await c.purgeWorktree(e.id);if(!t.ok){o.notify({type:`negative`,message:t.error,position:`top`,timeout:6e3});return}if(t.warnings.length===0)o.notify({type:`positive`,message:r(`contextMenu.purgeWorktreeSuccess`),position:`top`});else for(let e of t.warnings)o.notify({type:`warning`,message:e,position:`top`,timeout:et,multiLine:!0,classes:`workspace-delete-warning`,actions:[{icon:`content_copy`,color:`white`,round:!0,handler:()=>{navigator.clipboard.writeText(e)}},{label:r(`common.ok`),color:`white`,handler:()=>void 0}]});c.selectedWorkspaceId===null&&m.push({name:`workspace`})})}async function st(e,t){t.stopPropagation();try{await c.unarchiveWorkspace(e.id),f.getProjectByPath(e.projectPath)?.devServer?.startCommand&&d.fetchStatus(e.id)}catch(e){console.error(`Unarchive failed:`,e),e?.code===`worktree-purged`&&o.notify({type:`warning`,message:r(`workspaceList.unarchiveBlockedPurged`),position:`top`,timeout:6e3,multiLine:!0})}}function ct(e){c.selectWorkspace(e),m.push({name:`workspace`,params:{id:e}}),_.value&&g.setLeft(!1)}function lt(e){let t=Array.from(document.querySelectorAll(`.workspace-list [data-testid="workspace-card"]`));if(t.length===0)return;let n=t.indexOf(document.activeElement);t[n===-1?0:(n+e+t.length)%t.length]?.focus()}function ut(e){navigator.clipboard.writeText(e.worktreePath).catch(()=>{})}function dt(e){o.dialog({title:r(`contextMenu.rename`),dark:!0,prompt:{model:e.name,isValid:e=>e.trim().length>0,type:`text`},cancel:{flat:!0,label:r(`common.cancel`),color:`kobo-2`},ok:{unelevated:!0,label:r(`common.save`),color:`primary`}}).onOk(async t=>{let n=t.trim();if(n&&n!==e.name)try{await c.renameWorkspace(e.id,n)}catch(e){let t=e instanceof Error?e.message:String(e);o.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}})}function Z(e){o.dialog({title:r(`contextMenu.editDescription`),message:r(`workspace.descriptionDialogHint`),dark:!0,prompt:{model:e.description??``,isValid:e=>e.length<=200,type:`textarea`},cancel:{flat:!0,label:r(`common.cancel`),color:`kobo-2`},ok:{unelevated:!0,label:r(`common.save`),color:`primary`}}).onOk(async t=>{let n=t.trim(),r=n.length>0?n:null;if(r!==(e.description??null))try{await c.updateWorkspaceDescription(e.id,r)}catch(e){let t=e instanceof Error?e.message:String(e);o.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}})}async function ft(e){try{let t=await ye(`/api/workspaces/${e.id}/open-editor`,{method:`POST`});if(!t.ok){let e=await t.json();console.error(`[workspace-list] open-editor failed:`,e.error)}}catch(e){console.error(`[workspace-list] open-editor failed:`,e)}}async function pt(e){try{let t=await ye(`/api/workspaces/${e.id}/open-file-manager`,{method:`POST`});if(!t.ok){let e=await t.json().catch(()=>({}));o.notify({type:`negative`,message:e.error??r(`tools.openFileManagerFailed`),position:`top`,timeout:6e3})}}catch(e){let t=e instanceof Error?e.message:r(`tools.openFileManagerFailed`);o.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}}function ht(e){c.toggleFavorite(e.id).catch(e=>{o.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})})}function gt(e){if(Xe(e.status)){o.notify({type:`warning`,message:r(`tools.runSetupScriptBusy`),position:`top`,timeout:4e3});return}o.dialog({title:r(`tools.runSetupScript`),message:r(`tools.runSetupScriptConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{try{await W(`/api/workspaces/${e.id}/run-setup-script`,{method:`POST`})}catch(e){console.error(`[workspace-list] run-setup-script failed:`,e)}})}function _t(){m.push({name:`create`})}function vt(){m.push({name:`settings`})}function yt(){m.push({name:`search`})}function bt(){m.push({name:`dashboard`})}function xt(){m.push({name:`health`})}function Ct(){m.push({name:`changelog`})}function Tt(){document.visibilityState!==`hidden`&&c.fetchWorkspacesInfo()}function $(){document.visibilityState===`visible`&&c.fetchWorkspacesInfo()}return v(async()=>{await c.fetchWorkspaces(),await c.fetchArchivedWorkspaces(),c.fetchPrSnapshots(),c.fetchAutoLoopStates(),await f.fetchSettings();for(let e of c.workspaces)u.subscribe(e.id),f.getProjectByPath(e.projectPath)?.devServer?.startCommand&&d.fetchStatus(e.id);c.fetchWorkspacesInfo(),b=setInterval(Tt,co),document.addEventListener(`visibilitychange`,$)}),ee(()=>{document.removeEventListener(`visibilitychange`,$),b&&=(clearInterval(b),null)}),(t,r)=>(h(),j(M,null,[N(`div`,wa,[N(`div`,Ta,[N(`span`,Ea,n(t.$t(`workspaceList.title`)),1),N(`div`,Da,[e(u).connected?(h(),E(wt,{key:0,rounded:``,color:`positive`,class:`q-ml-xs`})):(h(),E(wt,{key:1,rounded:``,color:`negative`,class:`q-ml-xs`})),w(U,{flat:``,round:``,dense:``,icon:`search`,class:`q-ml-xs`,size:`sm`,color:`kobo-2`,"aria-label":t.$t(`search.tooltip`),onClick:yt},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`search.tooltip`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(U,{flat:``,round:``,dense:``,icon:`dashboard`,class:`q-ml-xs`,size:`sm`,color:`kobo-2`,"aria-label":t.$t(`dashboard.tooltip`),"data-tour":`dashboard`,onClick:bt},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`dashboard.tooltip`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(U,{flat:``,round:``,dense:``,icon:`monitor_heart`,class:`q-ml-xs`,size:`sm`,color:`kobo-2`,"data-tour":`health`,"aria-label":t.$t(`health.tooltip`),onClick:xt},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`health.tooltip`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(U,{flat:``,round:``,dense:``,icon:`history_edu`,class:`q-ml-xs`,size:`sm`,color:`kobo-2`,"aria-label":t.$t(`changelog.tooltip`),onClick:Ct},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`changelog.tooltip`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(U,{flat:``,round:``,dense:``,icon:`settings`,class:`q-ml-xs`,size:`sm`,color:`kobo-2`,"data-tour":`settings`,"aria-label":t.$t(`settings.title`),onClick:vt},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`settings.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(zi,{class:`q-ml-xs`}),w(U,{flat:``,round:``,dense:``,icon:`add`,size:`sm`,color:`kobo-2`,"data-tour":`create-workspace`,"aria-label":t.$t(`createPage.title`),onClick:_t},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`createPage.title`)),1)]),_:1})]),_:1},8,[`aria-label`])])]),N(`div`,Oa,[w(we,{modelValue:k.value,"onUpdate:modelValue":r[0]||=e=>k.value=e,dense:``,dark:``,placeholder:t.$t(`common.search`),class:`wl-search rounded-borders col`,borderless:``,"data-tour":`search`},{prepend:C(()=>[w(z,{name:`search`,size:`xs`,color:`kobo-3`})]),_:1},8,[`modelValue`,`placeholder`]),w(ya,{modelValue:x.value,"onUpdate:modelValue":r[1]||=e=>x.value=e},null,8,[`modelValue`]),w(ba,{modelValue:F.value,"onUpdate:modelValue":r[2]||=e=>F.value=e,tags:L.value},null,8,[`modelValue`,`tags`]),w(U,{icon:P.value?`star`:`star_outline`,color:P.value?`amber-7`:`kobo-3`,flat:``,dense:``,round:``,size:`sm`,"aria-label":t.$t(`workspace.showFavoritesOnly`),"aria-pressed":P.value,onClick:r[3]||=e=>P.value=!P.value},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`workspace.showFavoritesOnly`)),1)]),_:1})]),_:1},8,[`icon`,`color`,`aria-label`,`aria-pressed`]),w(U,{icon:`inventory_2`,color:ne.value?`primary`:`kobo-3`,flat:``,dense:``,round:``,size:`sm`,"aria-label":t.$t(`workspace.searchArchivedToggle`),"aria-pressed":ne.value,onClick:r[4]||=e=>ne.value=!ne.value},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`workspace.searchArchivedToggle`)),1)]),_:1})]),_:1},8,[`color`,`aria-label`,`aria-pressed`])]),w(Re,{dark:``}),N(`div`,{class:`col overflow-auto`,role:`listbox`,"aria-label":t.$t(`workspaceList.a11y.list`),onKeydown:[r[6]||=H(B(e=>lt(1),[`prevent`]),[`down`]),r[7]||=H(B(e=>lt(-1),[`prevent`]),[`up`])]},[V.value.length>0?(h(),j(`div`,Aa,[N(`div`,{class:`wl-group-header row items-center q-px-md q-py-xs cursor-pointer non-selectable`,role:`group`,tabindex:`0`,"aria-expanded":Se.value,"aria-labelledby":`wl-group-label-attention wl-group-count-attention`,onClick:De,onKeydown:[H(B(De,[`prevent`]),[`enter`]),H(B(De,[`prevent`]),[`space`])]},[w(z,{name:Se.value?`expand_more`:`chevron_right`,size:`xs`,color:`red-5`},null,8,[`name`]),N(`span`,Ma,n(t.$t(`workspaceList.needsAttention`)),1),w(wt,{id:`wl-group-count-attention`,label:V.value.length,color:`red-9`,"text-color":`white`,class:`q-ml-auto`,style:{"font-size":`10px`}},null,8,[`label`])],40,ja),S(N(`div`,null,[me.value?(h(!0),j(M,{key:1},I(he.value,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`attention`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":me.value,"border-color":y(t),onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`show-project-chip`,`border-color`,`onRestoreWorktree`]))),128)):(h(!0),j(M,{key:0},I(de.value,t=>(h(),j(`div`,{key:t.projectPath,class:`wl-project-group`},[N(`div`,Na,[w(z,{name:`folder`,size:`12px`,color:t.projectColor??`kobo-3`,class:`q-mr-xs`},null,8,[`color`]),N(`span`,{class:a([`text-caption`,t.projectColor?`text-${t.projectColor}`:`text-kobo-3`])},n(t.projectName),3)]),(h(!0),j(M,null,I(t.workspaces,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`attention`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":!1,"border-color":y(t),onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`border-color`,`onRestoreWorktree`]))),128))]))),128))],512),[[ce,Se.value]])])):D(``,!0),le.value.length>0?(h(),j(`div`,Pa,[N(`div`,{class:`wl-group-header row items-center q-px-md q-py-xs cursor-pointer non-selectable`,role:`group`,tabindex:`0`,"aria-expanded":Ce.value,"aria-labelledby":`wl-group-label-running wl-group-count-running`,onClick:Oe,onKeydown:[H(B(Oe,[`prevent`]),[`enter`]),H(B(Oe,[`prevent`]),[`space`])]},[w(z,{name:Ce.value?`expand_more`:`chevron_right`,size:`xs`,color:`green-5`},null,8,[`name`]),N(`span`,Ia,n(t.$t(`workspaceList.running`)),1),w(wt,{id:`wl-group-count-running`,label:le.value.length,color:`green-9`,"text-color":`white`,class:`q-ml-auto`,style:{"font-size":`10px`}},null,8,[`label`])],40,Fa),S(N(`div`,null,[me.value?(h(!0),j(M,{key:1},I(ge.value,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`running`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":me.value,"border-color":`var(--kobo-success)`,onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`show-project-chip`,`onRestoreWorktree`]))),128)):(h(!0),j(M,{key:0},I(fe.value,t=>(h(),j(`div`,{key:t.projectPath,class:`wl-project-group`},[N(`div`,La,[w(z,{name:`folder`,size:`12px`,color:t.projectColor??`kobo-3`,class:`q-mr-xs`},null,8,[`color`]),N(`span`,{class:a([`text-caption`,t.projectColor?`text-${t.projectColor}`:`text-kobo-3`])},n(t.projectName),3)]),(h(!0),j(M,null,I(t.workspaces,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`running`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":!1,"border-color":`var(--kobo-success)`,onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`onRestoreWorktree`]))),128))]))),128))],512),[[ce,Ce.value]])])):D(``,!0),ue.value.length>0?(h(),j(`div`,Ra,[N(`div`,{class:`wl-group-header row items-center q-px-md q-py-xs cursor-pointer non-selectable`,role:`group`,tabindex:`0`,"aria-expanded":Te.value,"aria-labelledby":`wl-group-label-idle wl-group-count-idle`,onClick:je,onKeydown:[H(B(je,[`prevent`]),[`enter`]),H(B(je,[`prevent`]),[`space`])]},[w(z,{name:Te.value?`expand_more`:`chevron_right`,size:`xs`,color:`kobo-3`},null,8,[`name`]),N(`span`,Ba,n(t.$t(`workspaceList.idle`)),1),w(wt,{id:`wl-group-count-idle`,label:ue.value.length,color:`kobo-hover`,"text-color":`kobo-2`,class:`q-ml-auto`,style:{"font-size":`10px`}},null,8,[`label`])],40,za),S(N(`div`,null,[me.value?(h(!0),j(M,{key:1},I(_e.value,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`idle`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":me.value,"border-color":`var(--kobo-border-strong)`,onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`show-project-chip`,`onRestoreWorktree`]))),128)):(h(!0),j(M,{key:0},I(pe.value,t=>(h(),j(`div`,{key:t.projectPath,class:`wl-project-group`},[N(`div`,Va,[w(z,{name:`folder`,size:`12px`,color:t.projectColor??`kobo-3`,class:`q-mr-xs`},null,8,[`color`]),N(`span`,{class:a([`text-caption`,t.projectColor?`text-${t.projectColor}`:`text-kobo-3`])},n(t.projectName),3)]),(h(!0),j(M,null,I(t.workspaces,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`idle`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":!1,"border-color":`var(--kobo-border-strong)`,onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`onRestoreWorktree`]))),128))]))),128))],512),[[ce,Te.value]])])):D(``,!0),G.value.length>0||Ee.value?(h(),j(`div`,Ha,[N(`div`,{class:`wl-group-header row items-center q-px-md q-py-xs cursor-pointer non-selectable`,role:`group`,tabindex:`0`,"aria-expanded":Ee.value||ve.value,"aria-labelledby":`wl-group-label-archived wl-group-count-archived`,onClick:Ne,onKeydown:[H(B(Ne,[`prevent`]),[`enter`]),H(B(Ne,[`prevent`]),[`space`])]},[w(z,{name:Ee.value||ve.value?`expand_more`:`chevron_right`,size:`xs`,color:`kobo-3`},null,8,[`name`]),w(z,{name:`inventory_2`,size:`xs`,color:`kobo-3`,class:`q-ml-xs`}),N(`span`,Wa,n(t.$t(`workspaceList.archived`)),1),G.value.length>0?(h(),E(wt,{key:0,id:`wl-group-count-archived`,label:G.value.length,color:`kobo-surface-2`,"text-color":`kobo-2`,class:`q-ml-auto`,style:{"font-size":`10px`}},null,8,[`label`])):D(``,!0),G.value.length>0?(h(),E(U,{key:1,flat:``,dense:``,round:``,size:`xs`,icon:`delete_sweep`,color:`kobo-3`,class:`q-ml-xs`,onClick:B(Y,[`stop`])},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`workspaceList.deleteArchivedDialog.tooltip`)),1)]),_:1})]),_:1})):D(``,!0)],40,Ua),S(N(`div`,null,[(h(!0),j(M,null,I(G.value,t=>(h(),E(aa,{key:t.id,workspace:t,variant:`archived`,selected:t.id===e(c).selectedWorkspaceId,"show-project-chip":me.value,"border-color":`var(--kobo-border)`,onSelect:ct,onRename:dt,onEditDescription:Z,onCopyPath:ut,onOpenEditor:ft,onOpenFileManager:pt,onRunSetup:gt,onToggleFavorite:ht,onManageTags:ie,onDuplicate:ae,onArchive:at,onUnarchive:st,onPurgeWorktree:ot,onRestoreWorktree:t=>e(l)(t.id),onDelete:rt},null,8,[`workspace`,`selected`,`show-project-chip`,`onRestoreWorktree`]))),128))],512),[[ce,Ee.value||ve.value]])])):D(``,!0),e(c).listLoadError?(h(),j(`div`,Ga,[w(z,{name:`cloud_off`,size:`28px`,class:`text-negative`}),N(`div`,Ka,n(t.$t(`workspaceList.loadFailed`)),1),N(`div`,qa,n(e(c).listLoadError),1),N(`div`,Ja,n(t.$t(`workspaceList.loadFailedHint`)),1),w(U,{dense:``,flat:``,"no-caps":``,class:`q-mt-sm`,icon:`refresh`,label:t.$t(`common.retry`),onClick:r[5]||=t=>e(c).retryLoadWorkspaces()},null,8,[`label`])])):V.value.length===0&&le.value.length===0&&ue.value.length===0&&G.value.length===0?(h(),j(`div`,Ya,[e(c).loading?(h(),j(M,{key:0},[O(n(t.$t(`common.loading`)),1)],64)):k.value?(h(),j(M,{key:1},[O(n(t.$t(`common.noResults`,{query:k.value})),1)],64)):(h(),j(M,{key:2},[O(n(t.$t(`workspaceList.noWorkspaces`)),1)],64))])):D(``,!0)],40,ka),w(Re,{dark:``}),e(Fe)?D(``,!0):(h(),E(Ri,{key:0})),N(`div`,Xa,n(t.$t(`workspaceList.footer`,{count:be.value},be.value))+` · `+n(t.$t(`workspaceList.footerRunning`,{count:xe.value})),1)]),w(Ve,{modelValue:Pe.value,"onUpdate:modelValue":r[13]||=e=>Pe.value=e,persistent:``},{default:C(()=>[w(ke,{class:`text-kobo-1`,style:{"min-width":`360px`,background:`var(--kobo-surface)`}},{default:C(()=>[w(q,null,{default:C(()=>[N(`div`,Za,n(t.$t(`workspaceList.deleteDialog.title`)),1)]),_:1}),w(q,{class:`q-pt-none`},{default:C(()=>[N(`div`,Qa,n(Ke.value?.name),1),N(`div`,$a,n(Ke.value?.workingBranch),1),N(`div`,eo,[w(He,{modelValue:Je.value,"onUpdate:modelValue":r[8]||=e=>Je.value=e,label:t.$t(`workspaceList.deleteDialog.deleteLocal`),dark:``,dense:``,color:`red-5`},null,8,[`modelValue`,`label`]),w(He,{modelValue:Ye.value,"onUpdate:modelValue":r[9]||=e=>Ye.value=e,disable:!Je.value,label:t.$t(`workspaceList.deleteDialog.deleteRemote`),dark:``,dense:``,color:`red-5`},null,8,[`modelValue`,`disable`,`label`])]),Ye.value?(h(),j(`div`,to,n(t.$t(`workspaceList.deleteDialog.warning`)),1)):D(``,!0),w(we,{modelValue:Ie.value,"onUpdate:modelValue":r[10]||=e=>Ie.value=e,dark:``,dense:``,outlined:``,autofocus:``,class:`q-mt-md`,label:t.$t(`workspace.deleteTypeBranch`),hint:t.$t(`workspace.deleteConsequences`),placeholder:Ke.value?.workingBranch,spellcheck:!1,autocapitalize:`off`,autocomplete:`off`,onKeyup:r[11]||=H(e=>Le.value&&it(),[`enter`])},null,8,[`modelValue`,`label`,`hint`,`placeholder`])]),_:1}),w(Me,{align:`right`},{default:C(()=>[w(U,{flat:``,label:t.$t(`common.cancel`),color:`kobo-2`,onClick:r[12]||=e=>Pe.value=!1,disable:Ze.value},null,8,[`label`,`disable`]),w(U,{flat:``,label:t.$t(`common.delete`),color:`red-5`,loading:Ze.value,disable:!Le.value,onClick:it},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),w(Ve,{modelValue:Qe.value,"onUpdate:modelValue":r[19]||=e=>Qe.value=e,persistent:``},{default:C(()=>[w(ke,{class:`text-kobo-1`,style:{"min-width":`360px`,background:`var(--kobo-surface)`}},{default:C(()=>[w(q,null,{default:C(()=>[N(`div`,no,n(t.$t(`workspaceList.deleteArchivedDialog.title`)),1)]),_:1}),w(q,{class:`q-pt-none`},{default:C(()=>[N(`div`,ro,n(t.$t(`workspaceList.deleteArchivedDialog.message`,{count:e(c).archived.length})),1),N(`div`,io,[w(He,{modelValue:$e.value,"onUpdate:modelValue":r[14]||=e=>$e.value=e,label:t.$t(`workspaceList.deleteDialog.deleteLocal`),dark:``,dense:``,color:`red-5`},null,8,[`modelValue`,`label`]),w(He,{modelValue:tt.value,"onUpdate:modelValue":r[15]||=e=>tt.value=e,disable:!$e.value,label:t.$t(`workspaceList.deleteDialog.deleteRemote`),dark:``,dense:``,color:`red-5`},null,8,[`modelValue`,`disable`,`label`])]),tt.value?(h(),j(`div`,ao,n(t.$t(`workspaceList.deleteDialog.warning`)),1)):D(``,!0),w(we,{modelValue:ze.value,"onUpdate:modelValue":r[16]||=e=>ze.value=e,dark:``,dense:``,outlined:``,autofocus:``,class:`q-mt-md`,label:t.$t(`workspaceList.deleteArchivedDialog.typeCount`,{count:e(c).archived.length}),onKeyup:r[17]||=H(e=>We.value&&X(),[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),w(Me,{align:`right`},{default:C(()=>[w(U,{flat:``,label:t.$t(`common.cancel`),color:`kobo-2`,disable:nt.value,onClick:r[18]||=e=>Qe.value=!1},null,8,[`label`,`disable`]),w(U,{flat:``,label:t.$t(`common.delete`),color:`red-5`,loading:nt.value,disable:!We.value,onClick:X},null,8,[`label`,`loading`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),R.value?(h(),E(Wi,{key:0,modelValue:re.value,"onUpdate:modelValue":r[20]||=e=>re.value=e,workspace:R.value},null,8,[`modelValue`,`workspace`])):D(``,!0)],64))}}),[[`__scopeId`,`data-v-411d46f8`]]),uo=`kobo:last-seen-version`;function fo(){let e=s(!1),t=s([]),n=Ee(),{availableVersion:r}=me(n);async function i(){try{let r=await G(`/api/changelog`);if(!r.ok)return;let i=await r.json(),a=i.currentVersion;if(!a)return;n.applySnapshot(i);let o=localStorage.getItem(uo);if(!o){localStorage.setItem(uo,a);return}if(o===a)return;let s=(i.versions??[]).filter(e=>Te(e.version,o)>0&&Te(e.version,a)<=0).sort((e,t)=>Te(t.version,e.version));localStorage.setItem(uo,a),s.length>0&&(t.value=s,e.value=!0)}catch{}}return{showDialog:e,newVersions:t,checkForUpdate:i,availableVersion:r,dismissUpdate:()=>n.dismissUpdate()}}function po(e,t,n,r=50){return n?Math.min(e,Math.max(0,t-r)):e}var mo={class:`column no-wrap`,style:{position:`absolute`,inset:`0`,overflow:`hidden`}},ho={class:`col`,style:{overflow:`auto`}},go={key:2,class:`kobo-update-help`},_o=`kobo:rightTab`,vo=1023,yo=`at-left-drawer-width`,bo=`kobo:rightDrawerWidth`,xo=240,So=800,Co=`kobo:rightDrawerSplit`,wo=F({__name:`MainLayout`,setup(t){let r=P(()=>Ce(()=>import(`./DocumentsPanel-CqGg38Oi.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]))),a=P(()=>Ce(()=>import(`./GitPanel-DRzhrs_V.js`),__vite__mapDeps([25,1,2,3,7,8,4,5,9,10,11,12,13,26,20,21,14,15,22,16,27,28,29,30,31,32,33,34]))),c=P(()=>Ce(()=>import(`./ComparisonPanel-CfmJHeH_.js`),__vite__mapDeps([35,1,2,3,7,8,4,5,9,10,11,12,13,36,14,15,37]))),l=P(()=>Ce(()=>import(`./SchedulePanel-CPirTYw5.js`),__vite__mapDeps([38,1,2,3,7,8,4,5,9,10,11,12,13,20,21,14,15,22,39,23,40,41,29,42]))),u=P(()=>Ce(()=>import(`./TerminalPanel-C4dYabx6.js`),__vite__mapDeps([43,1,2,3,4,5,9,7,8,10,11,12,13,14,15,16,44]))),{scheduleAutoRun:f,migrateLegacyFlag:m}=pt(),{showDialog:g,newVersions:b,checkForUpdate:S,availableVersion:T,dismissUpdate:ee}=fo(),k=s(!1);v(()=>{Fe||(m(),S()),Bt().fetchSounds()});let M=[`git`,`timeline`,`tasks`,`subagents`,`documents`,`schedule`],F=localStorage.getItem(_o),I=s(F&&M.includes(F)?F:`git`);function L(e){I.value=e,localStorage.setItem(_o,e)}async function te(e){re.setRight(!0),L(`git`),await _(),window.dispatchEvent(new CustomEvent(`kobo:select-diff`,{detail:e.detail}))}v(()=>window.addEventListener(`kobo:open-diff`,te)),d(()=>window.removeEventListener(`kobo:open-diff`,te));let ne=st();p(()=>ne.requestOpen,()=>L(`documents`));let re=mt(),R=oe();p(()=>R.screen.lt.md,e=>re.applyScreenSize(e),{immediate:!0});let ie=parseInt(localStorage.getItem(yo)??`260`,10),ae=s(Math.min(500,Math.max(140,ie))),se=s(!1),ce=parseInt(localStorage.getItem(bo)??`300`,10),B=s(Math.min(So,Math.max(xo,ce))),V=s(!1),H=A(()=>po(ae.value,R.screen.width,R.screen.lt.md)),le=A(()=>po(B.value,R.screen.width,R.screen.lt.md));function ue(e){e.preventDefault(),se.value=!0;let t=e=>{let t=Math.min(500,Math.max(140,e.clientX));ae.value=t},n=()=>{se.value=!1,localStorage.setItem(yo,String(ae.value)),document.removeEventListener(`mousemove`,t),document.removeEventListener(`mouseup`,n),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,t),document.addEventListener(`mouseup`,n)}function de(e){e.preventDefault(),V.value=!0;let t=e=>{let t=Math.min(So,Math.max(xo,window.innerWidth-e.clientX));B.value=t},n=()=>{V.value=!1,localStorage.setItem(bo,String(B.value)),document.removeEventListener(`mousemove`,t),document.removeEventListener(`mouseup`,n),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,t),document.addEventListener(`mouseup`,n)}let fe=Ye();p(()=>[fe.params.id,fe.query.panel],([,e])=>{e===`git`&&(re.setRight(!0),L(`git`))},{immediate:!0});let W=Ge();p(()=>fe.name,e=>{e===`workspace`&&f(`home`,500)},{immediate:!0});let pe=A(()=>bt(W.selectedWorkspace?.engine));p(pe,e=>{!e&&I.value===`subagents`&&L(`tasks`)}),p(()=>W.selectedWorkspaceId,e=>{e&&ne.fetchDocuments(e)},{immediate:!0}),p(()=>fe.name,e=>{e!==`workspace`&&W.selectedWorkspaceId&&(W.selectedWorkspaceId=null,W.selectedSessionId=null)},{immediate:!0});let me=A(()=>fe.name===`workspace`);y(`openDrawerTab`,e=>{re.setRight(!0),L(e)});let he=s(null);y(ct,he),y(at,e=>{he.value=e,re.setRight(!0),L(`subagents`)});let ge=parseInt(localStorage.getItem(Co)??`60`,10),_e=s(Math.min(80,Math.max(20,ge))),G=s(!1),ve=s(`tools`);function ye(e){e.preventDefault(),G.value=!0;let t=e.target.closest(`.q-drawer`);if(!t)return;let n=e=>{let n=t.getBoundingClientRect(),r=e.clientY-n.top,i=Math.round(r/n.height*100);_e.value=Math.min(80,Math.max(20,i))},r=()=>{G.value=!1,localStorage.setItem(Co,String(_e.value)),document.removeEventListener(`mousemove`,n),document.removeEventListener(`mouseup`,r),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`row-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,n),document.addEventListener(`mouseup`,r)}return(t,s)=>{let d=x(`router-view`);return h(),E(Mn,{view:`lHh LpR lFf`},{default:C(()=>[w(zt,{"model-value":!e(Fe)&&e(re).leftDrawerOpen,"onUpdate:modelValue":e(re).setLeft,width:H.value,breakpoint:vo,bordered:``,class:`bg-dark`},{default:C(()=>[w(lo),e(R).screen.lt.md?D(``,!0):(h(),j(`div`,{key:0,class:`resize-handle`,onMousedown:ue},null,32))]),_:1},8,[`model-value`,`onUpdate:modelValue`,`width`]),w(zt,{"model-value":me.value&&e(re).rightDrawerOpen,side:`right`,width:le.value,breakpoint:vo,bordered:``,class:`bg-dark`,"onUpdate:modelValue":e(re).setRight},{default:C(()=>[e(R).screen.lt.md?D(``,!0):(h(),j(`div`,{key:0,class:`resize-handle resize-handle--right`,onMousedown:de},null,32)),N(`div`,mo,[N(`div`,{style:i([{flex:`${_e.value} 1 0%`},{overflow:`hidden`}]),class:`column no-wrap`},[w(Dn,{"model-value":I.value,dense:``,dark:``,"active-color":`primary`,"indicator-color":`primary`,"narrow-indicator":``,"onUpdate:modelValue":L},{default:C(()=>[w(Cn,{name:`git`,"data-tour":`ws-tabnav-git`,icon:`commit`,"aria-label":t.$t(`git.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`git.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(Cn,{name:`timeline`,"data-tour":`ws-tabnav-timeline`,icon:`timeline`,"aria-label":t.$t(`timeline.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`timeline.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(Cn,{name:`tasks`,"data-tour":`ws-tabnav-tasks`,icon:`checklist`,"aria-label":t.$t(`tasks.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tasks.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),pe.value?(h(),E(Cn,{key:0,name:`subagents`,"data-tour":`ws-tabnav-subagents`,icon:`smart_toy`,"aria-label":t.$t(`subagents.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`subagents.title`)),1)]),_:1})]),_:1},8,[`aria-label`])):D(``,!0),w(Cn,{name:`documents`,"data-tour":`ws-tabnav-documents`,icon:`description`,"aria-label":t.$t(`documents.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`documents.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(Cn,{name:`schedule`,"data-tour":`ws-tabnav-schedule`,icon:`event`,"aria-label":t.$t(`schedule.tabLabel`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`schedule.tabLabel`)),1)]),_:1})]),_:1},8,[`aria-label`])]),_:1},8,[`model-value`]),w(Re,{dark:``}),N(`div`,ho,[w(kn,{modelValue:I.value,"onUpdate:modelValue":s[0]||=e=>I.value=e,animated:``,"keep-alive":``},{default:C(()=>[w(On,{name:`git`,"data-tour":`ws-tab-git`,class:`q-pa-none`},{default:C(()=>[e(W).selectedWorkspace?.comparisonId&&e(W).selectedWorkspaceId?(h(),E(e(c),{key:0,"workspace-id":e(W).selectedWorkspaceId},null,8,[`workspace-id`])):D(``,!0),w(e(a),{workspace:e(W).selectedWorkspace},null,8,[`workspace`])]),_:1}),w(On,{name:`timeline`,"data-tour":`ws-tab-timeline`,class:`q-pa-none`},{default:C(()=>[e(W).selectedWorkspaceId?(h(),E(cr,{key:0,"workspace-id":e(W).selectedWorkspaceId},null,8,[`workspace-id`])):D(``,!0)]),_:1}),w(On,{name:`tasks`,"data-tour":`ws-tab-tasks`,class:`q-pa-none`},{default:C(()=>[w(pn,{workspace:e(W).selectedWorkspace,tasks:e(W).tasks},null,8,[`workspace`,`tasks`]),w(Re,{dark:``}),w(tn,{tasks:e(W).acceptanceCriteria},null,8,[`tasks`]),w(Re,{dark:``}),w(Rn)]),_:1}),pe.value?(h(),E(On,{key:0,name:`subagents`,"data-tour":`ws-tab-subagents`,class:`q-pa-none`},{default:C(()=>[w(Mr)]),_:1})):D(``,!0),w(On,{name:`documents`,"data-tour":`ws-tab-documents`,class:`q-pa-none`},{default:C(()=>[w(e(r),{workspace:e(W).selectedWorkspace},null,8,[`workspace`])]),_:1}),w(On,{name:`schedule`,"data-tour":`ws-tab-schedule`,class:`q-pa-none`},{default:C(()=>[e(W).selectedWorkspaceId?(h(),E(e(l),{key:0,"workspace-id":e(W).selectedWorkspaceId},null,8,[`workspace-id`])):D(``,!0)]),_:1})]),_:1},8,[`modelValue`])])],4),e(R).screen.lt.md?D(``,!0):(h(),j(`div`,{key:0,class:`vertical-resize-handle`,onMousedown:ye},null,32)),N(`div`,{style:i([{flex:`${100-_e.value} 1 0%`},{overflow:`hidden`}]),class:`column no-wrap`},[w(Dn,{modelValue:ve.value,"onUpdate:modelValue":s[1]||=e=>ve.value=e,dense:``,dark:``,"active-color":`primary`,"indicator-color":`primary`,"narrow-indicator":``},{default:C(()=>[w(Cn,{name:`tools`,"data-tour":`ws-tabnav-tools`,icon:`build`,"aria-label":t.$t(`tools.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`tools.title`)),1)]),_:1})]),_:1},8,[`aria-label`]),w(Cn,{name:`terminal`,"data-tour":`ws-tabnav-terminal`,icon:`terminal`,"aria-label":t.$t(`terminal.title`)},{default:C(()=>[w(Q,null,{default:C(()=>[O(n(t.$t(`terminal.title`)),1)]),_:1})]),_:1},8,[`aria-label`])]),_:1},8,[`modelValue`]),w(Re,{dark:``}),w(kn,{modelValue:ve.value,"onUpdate:modelValue":s[2]||=e=>ve.value=e,animated:``,"keep-alive":``,class:`col`,style:{overflow:`hidden`}},{default:C(()=>[w(On,{name:`tools`,"data-tour":`ws-tab-tools`,class:`q-pa-none`,style:{overflow:`auto`}},{default:C(()=>[w(Di,{workspace:e(W).selectedWorkspace},null,8,[`workspace`])]),_:1}),w(On,{name:`terminal`,"data-tour":`ws-terminal`,class:`q-pa-none`,style:{height:`100%`}},{default:C(()=>[w(e(u))]),_:1})]),_:1},8,[`modelValue`])],4)])]),_:1},8,[`model-value`,`width`,`onUpdate:modelValue`]),w(An,{class:`bg-dark`},{default:C(()=>[w(nr),e(Fe)?D(``,!0):(h(),E(Zn,{key:0})),e(T)?(h(),E(Vt,{key:1,dense:``,class:`kobo-update-banner`},{avatar:C(()=>[w(z,{name:`system_update_alt`,size:`20px`})]),action:C(()=>[w(U,{flat:``,dense:``,"no-caps":``,label:t.$t(`update.how`),onClick:s[3]||=e=>k.value=!k.value},null,8,[`label`]),w(U,{flat:``,dense:``,"no-caps":``,label:t.$t(`common.dismiss`),onClick:e(ee)},null,8,[`label`,`onClick`])]),default:C(()=>[O(` `+n(t.$t(`update.available`,{version:e(T)}))+` `,1)]),_:1})):D(``,!0),e(T)&&k.value?(h(),j(`div`,go,[...s[5]||=[N(`code`,null,`npx @loicngr/kobo@latest`,-1)]])):D(``,!0),w(d)]),_:1}),w(ji,{modelValue:e(g),"onUpdate:modelValue":s[4]||=e=>o(g)?g.value=e:null,versions:e(b)},null,8,[`modelValue`,`versions`])]),_:1})}}}),To=qt({default:()=>Eo}),Eo=Z(wo,[[`__scopeId`,`data-v-939e0b9f`]]);export{Cn as a,pn as c,Eo as default,Dn as i,tn as l,kn as n,_n as o,On as r,gn as s,To as t};
|