@loicngr/kobo 2.1.7 → 2.1.9
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/AGENTS.md +16 -0
- package/CHANGELOG.md +11 -0
- package/CONFIGURATION.md +39 -0
- package/DESIGN.md +11 -1
- package/README.md +4 -0
- package/dist/mcp-server/kobo-tasks-server.js +33 -1
- package/dist/mcp-server/memory-client.js +39 -0
- package/dist/mcp-server/workspace-dialogue-client.js +4 -1
- package/dist/server/db/memory-schema.js +185 -0
- package/dist/server/db/migrations.js +6 -0
- package/dist/server/db/schema.js +2 -0
- package/dist/server/index.js +4 -0
- package/dist/server/routes/mcp.js +31 -2
- package/dist/server/routes/memory.js +525 -0
- package/dist/server/routes/settings.js +3 -0
- package/dist/server/services/agent/engines/claude-code/event-mapper.js +13 -2
- package/dist/server/services/agent/engines/codex/event-mapper.js +2 -2
- package/dist/server/services/agent/orchestrator.js +110 -6
- package/dist/server/services/memory-agent-runtime.js +65 -0
- package/dist/server/services/memory-budget-service.js +183 -0
- package/dist/server/services/memory-context-service.js +287 -0
- package/dist/server/services/memory-mcp-service.js +339 -0
- package/dist/server/services/memory-service.js +891 -0
- package/dist/server/services/settings-service.js +19 -0
- package/dist/server/utils/memory-project-identity.js +17 -0
- package/dist/server/utils/memory-token-budget.js +221 -0
- package/dist/shared/codex-models.js +24 -0
- package/dist/shared/memory-prompts.js +18 -0
- package/dist/shared/memory-tools.js +215 -0
- package/dist/shared/memory.js +81 -0
- package/dist/shared/models.js +42 -0
- package/package.json +1 -1
- package/src/client/dist/pwa/assets/{ActivityFeed-BfMUdSXQ.css → ActivityFeed-DdJvMzRI.css} +1 -1
- package/src/client/dist/pwa/assets/ActivityFeed-w8TNfMKd.js +2 -0
- package/src/client/dist/pwa/assets/ChangelogPage-B1rkKskD.js +1 -0
- package/src/client/dist/pwa/assets/ClosePopup-CRV2hxHS.js +1 -0
- package/src/client/dist/pwa/assets/{ComparisonPanel-azVvpfGW.js → ComparisonPanel-kMWS9il3.js} +2 -2
- package/src/client/dist/pwa/assets/CreatePage-DOamHqeH.js +2 -0
- package/src/client/dist/pwa/assets/DashboardPage-Ds6Y8xlV.js +1 -0
- package/src/client/dist/pwa/assets/DiffViewer-j7rwPKxU.js +8 -0
- package/src/client/dist/pwa/assets/DocumentsPanel-BTp3J6Rq.js +1 -0
- package/src/client/dist/pwa/assets/{DrawerToggleButton-CQVSfKpY.js → DrawerToggleButton-DcVhAbjN.js} +1 -1
- package/src/client/dist/pwa/assets/GitPanel-DOugIJUS.js +3 -0
- package/src/client/dist/pwa/assets/HealthPage-BSrTmp1k.js +1 -0
- package/src/client/dist/pwa/assets/{MainLayout-CFLswVqP.css → MainLayout-DAcSwgUw.css} +1 -1
- package/src/client/dist/pwa/assets/MainLayout-DWzXL1KW.js +2 -0
- package/src/client/dist/pwa/assets/MemoryPanel-BivQoMQ6.js +1 -0
- package/src/client/dist/pwa/assets/MemoryPanel-Ch3qeyQw.css +1 -0
- package/src/client/dist/pwa/assets/MemoryProposalList-BnoVbFsj.js +1 -0
- package/src/client/dist/pwa/assets/MemoryProposalList-OmDpl3o5.css +1 -0
- package/src/client/dist/pwa/assets/QBadge-CW3Lw-kL.js +1 -0
- package/src/client/dist/pwa/assets/QBanner-BT2ZemYu.js +1 -0
- package/src/client/dist/pwa/assets/QBtn-BUSdPaf4.js +1 -0
- package/src/client/dist/pwa/assets/QBtnDropdown-B9xNOKD0.js +1 -0
- package/src/client/dist/pwa/assets/QBtnGroup-CnM4vSJA.js +1 -0
- package/src/client/dist/pwa/assets/QBtnToggle-DccOOtbh.js +1 -0
- package/src/client/dist/pwa/assets/QChip-Be16M4Ig.js +1 -0
- package/src/client/dist/pwa/assets/QExpansionItem-BBTTV_37.js +1 -0
- package/src/client/dist/pwa/assets/QItemSection-MdJ1_ZK7.js +1 -0
- package/src/client/dist/pwa/assets/QList-Cx1UfaUm.js +1 -0
- package/src/client/dist/pwa/assets/QMarkupTable-UhP7fVUp.js +1 -0
- package/src/client/dist/pwa/assets/QPage-CqkGHokx.js +1 -0
- package/src/client/dist/pwa/assets/QScrollArea-bm6nYMnB.js +1 -0
- package/src/client/dist/pwa/assets/QSelect-CPE9LsIn.js +1 -0
- package/src/client/dist/pwa/assets/QSpinnerDots-xdWyaE1i.js +1 -0
- package/src/client/dist/pwa/assets/QTooltip-CgVCYatx.js +1 -0
- package/src/client/dist/pwa/assets/SchedulePanel-DNwt3V1a.js +1 -0
- package/src/client/dist/pwa/assets/SearchPage-Dr43rGji.js +1 -0
- package/src/client/dist/pwa/assets/SettingsPage-C1dcMqCO.css +1 -0
- package/src/client/dist/pwa/assets/SettingsPage-oSGNwimG.js +9 -0
- package/src/client/dist/pwa/assets/SplitWorkspacePage-Cjd_Lq-0.js +1 -0
- package/src/client/dist/pwa/assets/{TerminalPanel-auHWDK9i.js → TerminalPanel-Bsrg96VZ.js} +9 -9
- package/src/client/dist/pwa/assets/ToolCallItem-M3CSguac.js +8 -0
- package/src/client/dist/pwa/assets/TouchPan-CxThkotY.js +1 -0
- package/src/client/dist/pwa/assets/{TourReplayButton-uCZpvYlj.js → TourReplayButton-COI4vR7q.js} +1 -1
- package/src/client/dist/pwa/assets/WorkspaceAttentionLabels-CqlhQOqG.js +1 -0
- package/src/client/dist/pwa/assets/WorkspacePage-C-JXKt-S.js +4 -0
- package/src/client/dist/pwa/assets/{browser-CU7taghA.js → browser-DuFAaYHh.js} +1 -1
- package/src/client/dist/pwa/assets/build-path-tree-DFwB0SSs.js +1 -0
- package/src/client/dist/pwa/assets/custom-sounds-DTV-xHVv.js +1 -0
- package/src/client/dist/pwa/assets/de-YFD4X2nQ.js +17 -0
- package/src/client/dist/pwa/assets/detached-fullscreen-Du3TcYdX.js +1 -0
- package/src/client/dist/pwa/assets/dom-BtYTvLeN.js +2 -0
- package/src/client/dist/pwa/assets/{editor.api-CBaHnF7Q.js → editor.api-DDwuA_C9.js} +1 -1
- package/src/client/dist/pwa/assets/efforts-DU9dTnaN.js +9 -0
- package/src/client/dist/pwa/assets/es-BvRPXBHq.js +17 -0
- package/src/client/dist/pwa/assets/expand-template-LaRhdYUp.js +1 -0
- package/src/client/dist/pwa/assets/{format-MtzcnR3z.js → format-BUmAn8W2.js} +1 -1
- package/src/client/dist/pwa/assets/formatters-DfLD95iT.js +1 -0
- package/src/client/dist/pwa/assets/fr-CZhjMFZl.js +17 -0
- package/src/client/dist/pwa/assets/{freemarker2-BtVwKuc0.js → freemarker2-DVQM2t3e.js} +1 -1
- package/src/client/dist/pwa/assets/{handlebars-Bhl5yJrV.js → handlebars-ChiPNy9j.js} +1 -1
- package/src/client/dist/pwa/assets/{html-DKXLlkkM.js → html-CnGW31DH.js} +1 -1
- package/src/client/dist/pwa/assets/i18n-v1pgIO4z.js +1 -0
- package/src/client/dist/pwa/assets/index-DPN7dSDH.js +20 -0
- package/src/client/dist/pwa/assets/it-B4rz5PZO.js +17 -0
- package/src/client/dist/pwa/assets/{javascript-Cdfy_faM.js → javascript-BmeNra1c.js} +1 -1
- package/src/client/dist/pwa/assets/{liquid-0NoEATfB.js → liquid-C5qQFvIu.js} +1 -1
- package/src/client/dist/pwa/assets/{mdx-hvP0EAwa.js → mdx-TsWwhlKp.js} +1 -1
- package/src/client/dist/pwa/assets/{monaco-contributions-Be_o6s3m.js → monaco-contributions-SMzL7GRn.js} +1 -1
- package/src/client/dist/pwa/assets/monaco.contribution-sN2BZtSW.js +2 -0
- package/src/client/dist/pwa/assets/network-auth-DXsDKXrM.js +1 -0
- package/src/client/dist/pwa/assets/{notify-theme-I_sWGwy6.js → notify-theme-BXJypfo4.js} +1 -1
- package/src/client/dist/pwa/assets/{permissionModes-BDi77lhg.js → permissionModes-DLWiBfdb.js} +1 -1
- package/src/client/dist/pwa/assets/{private.use-form-vxvbh_VN.js → private.use-form-DY1BkePL.js} +1 -1
- package/src/client/dist/pwa/assets/{project-color-i2bg2TfP.js → project-color-CBLQt6bM.js} +1 -1
- package/src/client/dist/pwa/assets/{python-Bz-bbYMw.js → python-CKHf2s-D.js} +1 -1
- package/src/client/dist/pwa/assets/{razor-CyafkF-1.js → razor-D_5X4O5M.js} +1 -1
- package/src/client/dist/pwa/assets/reactivity.esm-bundler-DY1JkAEA.js +1 -0
- package/src/client/dist/pwa/assets/runtime-core.esm-bundler-Bqg71Vll.js +1 -0
- package/src/client/dist/pwa/assets/{typescript-BSLweq4l.js → typescript-D62emDGo.js} +1 -1
- package/src/client/dist/pwa/assets/use-checkbox-v4aAbE6K.js +1 -0
- package/src/client/dist/pwa/assets/use-dark-BHObfh0O.js +1 -0
- package/src/client/dist/pwa/assets/use-id-BrdYXce0.js +1 -0
- package/src/client/dist/pwa/assets/use-is-mobile-CDB_rzM9.js +1 -0
- package/src/client/dist/pwa/assets/use-search-index-status-bIKbEP5q.js +1 -0
- package/src/client/dist/pwa/assets/{use-slide-transition-C5eDGOmu.js → use-slide-transition-B_Nu6u-t.js} +1 -1
- package/src/client/dist/pwa/assets/use-tours-CTNYIX-Q.js +2 -0
- package/src/client/dist/pwa/assets/use-worktree-restore-D69uzYON.js +1 -0
- package/src/client/dist/pwa/assets/workspace-templates-CSwgMrUf.js +1 -0
- package/src/client/dist/pwa/assets/{xml-DOY7F605.js → xml-Kyg_K_5X.js} +1 -1
- package/src/client/dist/pwa/assets/{yaml-CnWF0ZRJ.js → yaml-DC__PKjj.js} +1 -1
- package/src/client/dist/pwa/index.html +10 -10
- package/src/client/dist/pwa/sw.js +1 -1
- package/src/mcp-server/README.md +23 -0
- package/src/mcp-server/kobo-tasks-server.ts +38 -1
- package/src/mcp-server/memory-client.ts +52 -0
- package/src/mcp-server/workspace-dialogue-client.ts +4 -1
- package/src/client/dist/pwa/assets/ActivityFeed-B8tJgXwD.js +0 -2
- package/src/client/dist/pwa/assets/ChangelogPage-YjWYsB_s.js +0 -1
- package/src/client/dist/pwa/assets/ClosePopup-C1a82pL9.js +0 -1
- package/src/client/dist/pwa/assets/CreatePage-BVNtCTdA.js +0 -2
- package/src/client/dist/pwa/assets/DashboardPage-DydscFLA.js +0 -1
- package/src/client/dist/pwa/assets/DiffViewer-DfMqxOYw.js +0 -8
- package/src/client/dist/pwa/assets/DocumentsPanel-DCGgj9pc.js +0 -1
- package/src/client/dist/pwa/assets/GitPanel-D6ZCZPbj.js +0 -3
- package/src/client/dist/pwa/assets/HealthPage-D_A6DTiH.js +0 -1
- package/src/client/dist/pwa/assets/MainLayout-CeHg73-f.js +0 -2
- package/src/client/dist/pwa/assets/QBadge-rGILsUYl.js +0 -1
- package/src/client/dist/pwa/assets/QBanner-CtppfNDn.js +0 -1
- package/src/client/dist/pwa/assets/QBtn-b_baQtAt.js +0 -1
- package/src/client/dist/pwa/assets/QBtnDropdown-D8I04HPE.js +0 -1
- package/src/client/dist/pwa/assets/QBtnGroup-CUmAgBV8.js +0 -1
- package/src/client/dist/pwa/assets/QBtnToggle-COL46j6W.js +0 -1
- package/src/client/dist/pwa/assets/QChip-Btg1Lp_6.js +0 -1
- package/src/client/dist/pwa/assets/QExpansionItem-DmzCAbka.js +0 -1
- package/src/client/dist/pwa/assets/QItemSection-BhGnulVQ.js +0 -1
- package/src/client/dist/pwa/assets/QList-Cw2xs69W.js +0 -1
- package/src/client/dist/pwa/assets/QMarkupTable-Ck2E2TaI.js +0 -1
- package/src/client/dist/pwa/assets/QPage-BCDXjfVj.js +0 -1
- package/src/client/dist/pwa/assets/QScrollArea-BmBuij9J.js +0 -1
- package/src/client/dist/pwa/assets/QSelect-DUuWu79L.js +0 -1
- package/src/client/dist/pwa/assets/QSpinnerDots-BsKmccpX.js +0 -1
- package/src/client/dist/pwa/assets/QTooltip-Dhy3hNTO.js +0 -1
- package/src/client/dist/pwa/assets/SchedulePanel-BCiV6rMr.js +0 -1
- package/src/client/dist/pwa/assets/SearchPage-of0gPqV4.js +0 -1
- package/src/client/dist/pwa/assets/SettingsPage-BPg3-Lhb.js +0 -9
- package/src/client/dist/pwa/assets/SettingsPage-CpykRKq2.css +0 -1
- package/src/client/dist/pwa/assets/SplitWorkspacePage-BcdPVE9B.js +0 -1
- package/src/client/dist/pwa/assets/ToolCallItem-BQmqNcfF.js +0 -8
- package/src/client/dist/pwa/assets/TouchPan-DKpZbMAf.js +0 -1
- package/src/client/dist/pwa/assets/WorkspaceAttentionLabels-jDKgkf3G.js +0 -1
- package/src/client/dist/pwa/assets/WorkspacePage-DQ-jvLEj.js +0 -4
- package/src/client/dist/pwa/assets/build-path-tree-fw6KlTB4.js +0 -1
- package/src/client/dist/pwa/assets/custom-sounds-Dfi-grUv.js +0 -1
- package/src/client/dist/pwa/assets/de-C_20Oxyv.js +0 -17
- package/src/client/dist/pwa/assets/efforts-CNJXztO0.js +0 -9
- package/src/client/dist/pwa/assets/es-B3_j4CWr.js +0 -17
- package/src/client/dist/pwa/assets/expand-template-BtpC0GKE.js +0 -1
- package/src/client/dist/pwa/assets/formatters-BZm4POkA.js +0 -1
- package/src/client/dist/pwa/assets/fr-DbPOG-xd.js +0 -17
- package/src/client/dist/pwa/assets/i18n-B9eF3pgw.js +0 -1
- package/src/client/dist/pwa/assets/i18n-CPFleoLe.js +0 -19
- package/src/client/dist/pwa/assets/index-BVJWwOvK.js +0 -2
- package/src/client/dist/pwa/assets/it--6niM3qU.js +0 -17
- package/src/client/dist/pwa/assets/latest-request-7rgsEfKZ.js +0 -1
- package/src/client/dist/pwa/assets/monaco.contribution-DRQLCBp8.js +0 -2
- package/src/client/dist/pwa/assets/network-auth-DVXmkvPH.js +0 -1
- package/src/client/dist/pwa/assets/preload-helper-DjzSQ1t3.js +0 -1
- package/src/client/dist/pwa/assets/reactivity.esm-bundler-tuEvQ47f.js +0 -1
- package/src/client/dist/pwa/assets/runtime-core.esm-bundler-DOiZcasU.js +0 -1
- package/src/client/dist/pwa/assets/use-checkbox-BAt9fjK-.js +0 -1
- package/src/client/dist/pwa/assets/use-id-b4A2I8LB.js +0 -1
- package/src/client/dist/pwa/assets/use-is-mobile-DLIZxEo9.js +0 -1
- package/src/client/dist/pwa/assets/use-search-index-status-BzsGSHGh.js +0 -1
- package/src/client/dist/pwa/assets/use-tours-CM4E53aB.js +0 -2
- package/src/client/dist/pwa/assets/use-worktree-restore-C__ResAR.js +0 -1
- package/src/client/dist/pwa/assets/workspace-templates-TOa0yVyr.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as e,v as t}from"./reactivity.esm-bundler-tuEvQ47f.js";import{A as n,C as r,I as i,J as a,M as o,N as s,O as c,P as l,b as u,j as ee,k as d,l as f}from"./runtime-core.esm-bundler-DOiZcasU.js";import{C as p,G as m,H as h,Q as g,W as _,X as v,Y as y,b as te,et as b,g as x,l as S,lt as C,nt as w,tt as T,u as E,x as ne}from"./QBtn-b_baQtAt.js";import{m as D,p as O}from"./latest-request-7rgsEfKZ.js";import{C as k,S as A,T as re,_ as j,a as ie,b as M,c as N,g as ae,i as P,l as F,m as oe,s as se,u as I,v as ce,w as le,x as L,y as R}from"./use-id-b4A2I8LB.js";import{i as ue,r as de}from"./private.use-form-vxvbh_VN.js";import{Dt as fe,Et as pe,Mt as me,Nt as he,Ot as z,Tt as ge,Wt as _e,Yt as ve,jt as ye,kt as be,wt as xe}from"./index-BVJWwOvK.js";import{n as Se,t as Ce}from"./QItemSection-BhGnulVQ.js";import{c as we,d as Te,l as Ee,o as De,s as Oe,u as ke}from"./use-tours-CM4E53aB.js";import{t as B}from"./QChip-Btg1Lp_6.js";var V=1e3,H=[`start`,`center`,`end`,`start-force`,`center-force`,`end-force`],Ae=Array.prototype.filter,U=window.getComputedStyle(document.body).overflowAnchor===void 0?v:function(e,t){e!==null&&(e._qOverflowAnimationFrame!==void 0&&cancelAnimationFrame(e._qOverflowAnimationFrame),e._qOverflowAnimationFrame=requestAnimationFrame(()=>{if(e===null)return;e._qOverflowAnimationFrame=void 0;let n=e.children||[];Ae.call(n,e=>e.dataset&&e.dataset.qVsAnchor!==void 0).forEach(e=>{delete e.dataset.qVsAnchor});let r=n[t];r?.dataset&&(r.dataset.qVsAnchor=``)}))};function je(e,t){return e+t}function Me(e,t,n,r,i,a,o,s){let c=e===window?document.scrollingElement||document.documentElement:e,l=i?`width`:`height`,u={scrollStart:0,scrollViewSize:-o-s,scrollMaxSize:0,offsetStart:-o,offsetEnd:-s};if(i?(e===window?(u.scrollStart=window.scrollX,u.scrollViewSize+=document.documentElement.clientWidth):(u.scrollStart=c.scrollLeft,u.scrollViewSize+=c.clientWidth),u.scrollMaxSize=c.scrollWidth,a&&(u.scrollStart=-u.scrollStart)):(e===window?(u.scrollStart=window.scrollY,u.scrollViewSize+=document.documentElement.clientHeight):(u.scrollStart=c.scrollTop,u.scrollViewSize+=c.clientHeight),u.scrollMaxSize=c.scrollHeight),n!==null)for(let e=n.previousElementSibling;e!==null;e=e.previousElementSibling)e.classList.contains(`q-virtual-scroll--skip`)||(u.offsetStart+=e.getBoundingClientRect()[l]);if(r!==null)for(let e=r.nextElementSibling;e!==null;e=e.nextElementSibling)e.classList.contains(`q-virtual-scroll--skip`)||(u.offsetEnd+=e.getBoundingClientRect()[l]);if(t!==e){let n=c.getBoundingClientRect(),r=t.getBoundingClientRect();i?(u.offsetStart+=r.left-n.left,u.offsetEnd-=r.width):(u.offsetStart+=r.top-n.top,u.offsetEnd-=r.height),e!==window&&(u.offsetStart+=u.scrollStart),u.offsetEnd+=u.scrollMaxSize-u.offsetStart}return u}function Ne(e,t,n,r){if(t===`end`&&(t=(e===window?document.body:e)[n?`scrollWidth`:`scrollHeight`]),e===window){let e,i;n?(r&&(t=-t),e=t,i=window.scrollY):(e=window.scrollX,i=t),window.scrollTo({left:e,top:i,behavior:`instant`})}else n?(r&&(t=-t),e.scrollTo({left:t,behavior:`instant`})):e.scrollTo({top:t,behavior:`instant`})}function W(e,t,n,r){if(n>=r)return 0;let i=t.length,a=Math.floor(n/V),o=Math.floor((r-1)/V)+1,s=0;for(let t=a;t<o;t++)s+=e[t];if(n%V!==0)for(let e=a*V;e<n;e++)s-=t[e];if(r%V!==0&&r!==i){let e=Math.min(o*V,i);for(let n=r;n<e;n++)s-=t[n]}return s}var Pe={virtualScrollSliceSize:{type:[Number,String],default:10},virtualScrollSliceRatioBefore:{type:[Number,String],default:1},virtualScrollSliceRatioAfter:{type:[Number,String],default:1},virtualScrollItemSize:{type:[Number,String],default:24},virtualScrollStickySizeStart:{type:[Number,String],default:0},virtualScrollStickySizeEnd:{type:[Number,String],default:0},tableColspan:[Number,String]};Object.keys(Pe);var Fe={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...Pe};function Ie({virtualScrollLength:i,getVirtualScrollTarget:o,getVirtualScrollEl:l,virtualScrollItemSizeComputed:p}){let{props:h,emit:g,proxy:_}=u(),v=te(),y,b,x,S=[],C,w=t(0),T=t(0),E=t({}),ne=e(null),D=e(null),O=e(null),k=t({from:0,to:0}),A=f(()=>h.tableColspan===void 0?100:h.tableColspan);p===void 0&&(p=f(()=>h.virtualScrollItemSize));let re=f(()=>p.value+`;`+h.virtualScrollHorizontal),j=f(()=>re.value+`;`+h.virtualScrollSliceRatioBefore+`;`+h.virtualScrollSliceRatioAfter);a(j,()=>{I()}),a(re,ie);function ie(){se(b,!0)}function M(e){se(e===void 0?b:e)}function N(e,t){let n=o();if(n==null||n.nodeType===8)return;L.cancel();let r=Me(n,l(),ne.value,D.value,h.virtualScrollHorizontal,v.lang.rtl,h.virtualScrollStickySizeStart,h.virtualScrollStickySizeEnd);x!==r.scrollViewSize&&I(r.scrollViewSize),P(n,r,Math.min(i.value-1,Math.max(0,Number.parseInt(e,10)||0)),0,H.includes(t)?t:b!==-1&&e>b?`end`:`start`)}function ae(){let e=o();if(e==null||e.nodeType===8)return;let t=Me(e,l(),ne.value,D.value,h.virtualScrollHorizontal,v.lang.rtl,h.virtualScrollStickySizeStart,h.virtualScrollStickySizeEnd),n=i.value-1,r=t.scrollMaxSize-t.offsetStart-t.offsetEnd-T.value;if(y===t.scrollStart)return;if(t.scrollMaxSize<=0){P(e,t,0,0);return}x!==t.scrollViewSize&&I(t.scrollViewSize),F(k.value.from);let a=Math.floor(t.scrollMaxSize-Math.max(t.scrollViewSize,t.offsetEnd)-Math.min(C[n],t.scrollViewSize/2));if(a>0&&Math.ceil(t.scrollStart)>=a){P(e,t,n,t.scrollMaxSize-t.offsetEnd-S.reduce(je,0));return}let s=0,c=t.scrollStart-t.offsetStart,u=c;if(c<=r&&c+t.scrollViewSize>=w.value)c-=w.value,s=k.value.from,u=c;else for(let e=0;c>=S[e]&&s<n;e++)c-=S[e],s+=V;for(;c>0&&s<n;)c-=C[s],c>-t.scrollViewSize?(s++,u=c):u=C[s]+c;P(e,t,s,u)}function P(e,t,n,r,a){let o=typeof a==`string`&&a.includes(`-force`),s=o?a.replace(`-force`,``):a,c=s===void 0?`start`:s,l=Math.max(0,n-E.value[c]),u=l+E.value.total;u>i.value&&(u=i.value,l=Math.max(0,u-E.value.total)),y=t.scrollStart;let ee=l!==k.value.from||u!==k.value.to;if(!ee&&s===void 0){le(n);return}let{activeElement:d}=document,f=O.value;ee&&f!==null&&f!==d&&f.contains(d)&&(f.addEventListener(`focusout`,oe),setTimeout(()=>{f?.removeEventListener(`focusout`,oe)},0)),U(f,n-l);let p=s===void 0?0:C.slice(l,n).reduce(je,0);if(ee){let e=u>=k.value.from&&l<=k.value.to?k.value.to:u;k.value={from:l,to:e},w.value=W(S,C,0,l),T.value=W(S,C,u,i.value),requestAnimationFrame(()=>{k.value.to!==u&&y===t.scrollStart&&(k.value={from:k.value.from,to:u},T.value=W(S,C,u,i.value))})}requestAnimationFrame(()=>{if(y!==t.scrollStart)return;ee&&F(l);let i=C.slice(l,n).reduce(je,0),a=i+t.offsetStart+w.value,c=a+C[n],u=a+r;if(s!==void 0){let e=i-p,r=t.scrollStart+e;u=!o&&r<a&&c<r+t.scrollViewSize?r:s===`end`?c-t.scrollViewSize:a-(s===`start`?0:Math.round((t.scrollViewSize-C[n])/2))}y=u,Ne(e,u,h.virtualScrollHorizontal,v.lang.rtl),le(n)})}function F(e){let t=O.value;if(t){let n=Ae.call(t.children,e=>e.classList&&!e.classList.contains(`q-virtual-scroll--skip`)),r=n.length,i=h.virtualScrollHorizontal?e=>e.getBoundingClientRect().width:e=>e.getBoundingClientRect().height,a=e,o,s;for(let e=0;e<r;){for(o=i(n[e]),e++;e<r&&n[e].classList.contains(`q-virtual-scroll--with-prev`);)o+=i(n[e]),e++;s=o-C[a],s!==0&&(C[a]+=s,S[Math.floor(a/V)]+=s),a++}}}function oe(){O.value?.focus({preventScroll:!0})}function se(e,t){let n=Number(p.value);(t||!Array.isArray(C))&&(C=[]);let r=C.length;C.length=i.value;for(let e=i.value-1;e>=r;e--)C[e]=n;let a=Math.floor((i.value-1)/V);S=[];for(let e=0;e<=a;e++){let t=0,n=Math.min((e+1)*V,i.value);for(let r=e*V;r<n;r++)t+=C[r];S.push(t)}b=-1,y=void 0,w.value=W(S,C,0,k.value.from),T.value=W(S,C,k.value.to,i.value),e>=0?(F(k.value.from),c(()=>{N(e)})):L()}function I(e){if(e===void 0&&typeof window<`u`){let t=o();t!=null&&t.nodeType!==8&&(e=Me(t,l(),ne.value,D.value,h.virtualScrollHorizontal,v.lang.rtl,h.virtualScrollStickySizeStart,h.virtualScrollStickySizeEnd).scrollViewSize)}x=e;let t=Number.parseFloat(h.virtualScrollSliceRatioBefore)||0,n=Number.parseFloat(h.virtualScrollSliceRatioAfter)||0,r=1+t+n,i=e===void 0||e<=0?1:Math.ceil(e/p.value),a=Math.max(1,i,Math.ceil((h.virtualScrollSliceSize>0?h.virtualScrollSliceSize:10)/r));E.value={total:Math.ceil(a*r),start:Math.ceil(a*t),center:Math.ceil(a*(.5+t)),end:Math.ceil(a*(1+t)),view:i}}function ce(e,t,n){let i=h.virtualScrollHorizontal?`width`:`height`,a={[`--q-virtual-scroll-item-`+i]:p.value+`px`};return[e===`tbody`?r(e,{class:`q-virtual-scroll__padding`,key:`before`,ref:ne,"aria-hidden":`true`},[r(`tr`,[r(`td`,{style:{[i]:`${w.value}px`,...a},colspan:A.value})])]):r(e,{class:`q-virtual-scroll__padding`,key:`before`,ref:ne,"aria-hidden":`true`,style:{[i]:`${w.value}px`,...a}}),r(e,{class:`q-virtual-scroll__content`,key:`content`,ref:O,tabindex:-1,...n},t.flat()),e===`tbody`?r(e,{class:`q-virtual-scroll__padding`,key:`after`,ref:D,"aria-hidden":`true`},[r(`tr`,[r(`td`,{style:{[i]:`${T.value}px`,...a},colspan:A.value})])]):r(e,{class:`q-virtual-scroll__padding`,key:`after`,ref:D,"aria-hidden":`true`,style:{[i]:`${T.value}px`,...a}})]}function le(e){b!==e&&(h.onVirtualScroll!==void 0&&g(`virtualScroll`,{index:e,from:k.value.from,to:k.value.to-1,direction:e<b?`decrease`:`increase`,ref:_}),b=e)}I();{let e=Math.min(i.value,E.value.total),t=Number(p.value);k.value={from:0,to:e},T.value=Number.isFinite(t)?Math.max(0,(i.value-e)*t):0}let L=m(ae,v.platform.is.ios?120:35);n(()=>{I()});let R=!1;return s(()=>{R=!0}),d(()=>{if(!R)return;let e=o();y!==void 0&&e!=null&&e.nodeType!==8?Ne(e,y,h.virtualScrollHorizontal,v.lang.rtl):N(b)}),ee(()=>{L.cancel()}),Object.assign(_,{scrollTo:N,reset:ie,refresh:M}),{virtualScrollSliceRange:k,virtualScrollSliceSizeComputed:E,setVirtualScrollSize:I,onVirtualScrollEvt:L,localResetVirtualScroll:se,padVirtualScroll:ce,scrollTo:N,reset:ie,refresh:M}}var Le=w({name:`QItemLabel`,props:{overline:Boolean,caption:Boolean,header:Boolean,lines:[Number,String]},setup(e,{slots:t}){let n=f(()=>Number.parseInt(e.lines,10)),i=f(()=>`q-item__label`+(e.overline?` q-item__label--overline text-overline`:``)+(e.caption?` q-item__label--caption text-caption`:``)+(e.header?` q-item__label--header`:``)+(n.value===1?` ellipsis`:``)),a=f(()=>e.lines!==void 0&&n.value>1?{overflow:`hidden`,display:`-webkit-box`,"-webkit-box-orient":`vertical`,"-webkit-line-clamp":n.value}:null);return()=>r(`div`,{style:a.value,class:i.value},p(t.default))}}),G={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},Re=Object.keys(G);G.all=!0;function ze(e){let t={};for(let n of Re)e[n]&&(t[n]=!0);return Object.keys(t).length===0?G:(t.horizontal?t.left=t.right=!0:t.left&&t.right&&(t.horizontal=!0),t.vertical?t.up=t.down=!0:t.up&&t.down&&(t.vertical=!0),t.horizontal&&t.vertical&&(t.all=!0),t)}var Be=[`INPUT`,`TEXTAREA`];function Ve(e,t){return t.event===void 0&&e.target!==void 0&&!e.target.draggable&&typeof t.handler==`function`&&!Be.includes(e.target.nodeName.toUpperCase())&&(e.qClonedBy===void 0||!e.qClonedBy.includes(t.uid))}function He(e,t,n){return n<=t?t:Math.min(n,Math.max(t,e))}function Ue(e,t,n){if(n<=t)return t;let r=n-t+1,i=t+(e-t)%r;return i<t&&(i=r+i),i===0?0:i}var We={hover:Boolean,hoverDelay:{type:Number,default:0},hoverHideDelay:{type:Number,default:150}};function Ge({props:e,canShow:t,show:n,canHide:r,hide:i}){let{removeTimeout:a,registerTimeout:o}=re();function s(r){e.hover===!0&&r.pointerType!==`touch`&&(a(),t(r)&&(e.hoverDelay>0?o(()=>{n(r)},e.hoverDelay):n(r)))}function c(t){a(),r(t)&&o(()=>{i(t)},e.hoverHideDelay)}function l(t){e.hover===!0&&t.pointerType!==`touch`&&c(t)}function u(e){e.pointerType!==`touch`&&a()}return{clearHoverTimer:a,hoverShow:s,hoverHide:l,scheduleHoverHide:c,onHoverContentEnter:u}}var K=null,{notPassiveCapture:Ke,passiveCapture:qe}=y,q=[];function J(e){K!==null&&(clearTimeout(K),K=null);let t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains(`no-pointer-events`))return;let n=null,r=!1;for(let e=j.length-1;e>=0;e--){let t=j[e].$,i=t.type.name;if(i!==`QTooltip`){if(i===`QDialog`){if(t.props.seamless!==!0){if(r===!1)return;n=new Set(j.slice(e+1).map(e=>e.contentEl));break}continue}r=!0}}for(let r=q.length-1;r>=0;r--){let i=q[r];if(n!==null&&!n.has(i.innerRef.value))return;if((i.anchorEl.value===null||!i.anchorEl.value.contains(t)&&!P(i.anchorEl.value,t))&&(t===document.body||i.innerRef.value!==null&&!i.innerRef.value.contains(t)&&!P(i.innerRef.value,t)))e.qClickOutside=!0,i.onClickOutside(e);else return}}function Y(e){e.pointerType!==`touch`&&(K!==null&&clearTimeout(K),K=setTimeout(()=>{K=null,J(e)},0))}function X(e){q.push(e),q.length===1&&(document.addEventListener(`pointerdown`,Y,qe),document.addEventListener(`mousedown`,J,Ke),document.addEventListener(`touchstart`,J,Ke))}function Je(e){let t=q.indexOf(e);t!==-1&&(q.splice(t,1),q.length===0&&(K!==null&&(clearTimeout(K),K=null),document.removeEventListener(`pointerdown`,Y,qe),document.removeEventListener(`mousedown`,J,Ke),document.removeEventListener(`touchstart`,J,Ke)))}var Ye=`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"])`,Xe=w({name:`QMenu`,inheritAttrs:!1,props:{...Te,...A,...D,...R,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:Ee},self:{type:String,validator:Ee},offset:{type:Array,validator:we},touchPosition:Boolean,...We,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...L,`click`,`escapeKey`],setup(n,{slots:i,emit:o,attrs:s}){let c,l=!1,d=u(),{proxy:m}=d,h=te(),g=e(null),_=t(!1),v=f(()=>!n.persistent&&!n.noRouteDismiss),y=O(n,h),{registerTick:b,removeTick:S}=k(),{registerTransitionEnd:w}=le(n),{transitionProps:ne,transitionStyle:D}=ce(n),{anchorEl:A,canShow:re,anchorEvents:j}=ke({showing:_,getPopupRole:()=>s.role}),{show:P,hide:L}=M({showing:_,canShow:re,canHide(e){return l&&ge()?e?.type!==`click`:!0},handleShow:Ne,handleHide:W,handleRouteChange:Pe,hideOnRouteChange:v,processOnMount:!0}),{clearHoverTimer:R,hoverShow:ue,scheduleHoverHide:de,onHoverContentEnter:fe}=Ge({props:n,canShow:()=>!_.value,show:P,canHide:e=>_.value&&!je(e.relatedTarget),hide:L});Object.assign(j,{hoverShow:ue,hoverHide:Me});let{showPortal:pe,hidePortal:z,portalIsOpening:ge,renderPortal:ve}=F(d,g,ze,`menu`),{captureRefocusTarget:ye,clearRefocusTarget:be,restoreFocus:xe,restoreFocusSync:Se,adoptRefocusTarget:Ce}=_e(n,()=>!n.noFocus&&!l&&ge()),we={anchorEl:A,innerRef:g,onClickOutside(e){if(!n.persistent&&_.value)return L(e),(e.type===`touchstart`||e.target.classList.contains(`q-dialog__backdrop`))&&T(e),!0}},Te=f(()=>Oe(n.anchor||(n.cover?`center middle`:`bottom start`),h.lang.rtl)),Ee=f(()=>n.cover?Te.value:Oe(n.self||`top start`,h.lang.rtl)),B=De({props:n,$q:h,anchorEl:A,innerRef:g,showing:_,anchorOrigin:Te,selfOrigin:Ee}),V=f(()=>`q-menu scroll`+(B.viaCssAnchor?``:` q-position-engine`)+(n.square?` q-menu--square`:``)+(y()?` q-menu--dark q-dark`:``)),H=f(()=>n.autoClose?{onClick:Ie}:{}),Ae=f(()=>_.value&&!n.persistent);a(Ae,e=>{e?(se(G),X(we)):(N(G),Je(we))});function U(){I(()=>{let e=g.value;e&&e.contains!==void 0&&!e.contains(document.activeElement)&&(e=e.querySelector(`[autofocus][tabindex], [data-autofocus][tabindex]`)||e.querySelector(`[autofocus] [tabindex], [data-autofocus] [tabindex]`)||e.querySelector(`[autofocus], [data-autofocus]`)||e,e.focus({preventScroll:!0}))})}function je(e){if(e==null)return!1;if(A.value!==null&&A.value.contains(e)||g.value!==null&&g.value.contains(e))return!0;let t=ae(e);for(;t!=null;){if(t===m)return!0;t=x(t)}return!1}function Me(e){if(e.pointerType===`touch`)return;de(e);let t=x(m);for(;t!=null;)t.$options.name===`QMenu`&&t.$props.hover===!0&&t.__qHoverHide?.(e),t=x(t)}function Ne(e){l=n.hover&&e?.type===`pointerenter`,R(),ye(l),me(Le),pe(!1,l),B.handleShow(!l&&(n.touchPosition||n.contextMenu)?e:void 0),!n.noFocus&&!l&&document.activeElement.blur(),b(()=>{B.handleTick(),!n.noFocus&&!l&&U()}),w(()=>{h.platform.is.ios&&(c=n.autoClose,g.value.click()),B.viaCssAnchor||B.track(),pe(!0),o(`show`,e)})}function W(e){l=!1,S(),z(),Fe(!0),e===void 0||!e.qClickOutside?xe(e):be(),w(()=>{z(!0),B.releaseAnchor(!1),o(`hide`,e)})}function Pe(){be()}function Fe(e){R(),B.releaseAnchor(e),(e||_.value)&&(he(Le),Je(we),N(G)),e||be()}function Ie(e){c?c=!1:(oe(m,e),o(`click`,e))}function Le(e){Ae.value&&!n.noFocus&&!l&&!E(g.value,e.target)&&!ie(g.value,e.target)&&U()}function G(e){n.noEscDismiss||(o(`escapeKey`),L(e))}function Re(e){if(e.keyCode!==9||e.defaultPrevented||!Ae.value||g.value===null)return;let t=g.value,n=t.querySelectorAll(Ye),r=n.length===0?null:n[e.shiftKey?0:n.length-1];(r===null||document.activeElement===r||e.shiftKey&&document.activeElement===t)&&(he(Le),Se(e),L(e))}function ze(){return r(C,ne(),()=>_.value?r(`div`,{...s,ref:g,tabindex:-1,onKeydown:[].concat(s.onKeydown||[],Re),...n.hover?{onPointerenter:[].concat(s.onPointerenter||[],fe),onPointerleave:[].concat(s.onPointerleave||[],Me)}:{},class:[V.value,s.class],style:[s.style,D(),B.positionStyle.value],...H.value},p(i.default)):null)}return ee(()=>{Fe(!1)}),Object.assign(m,{focus:U,updatePosition:B.updatePosition,__adoptRefocusTarget:Ce}),m.__qHoverHide=de,ve}}),Ze=w({name:`QField`,inheritAttrs:!1,props:{...z,tag:{type:String,default:`label`}},emits:fe,setup(){return pe(be({tagProp:!0}))}}),Qe=e=>[`add`,`add-unique`,`toggle`].includes(e),$e=".*+?^${}()|[]\\",et=Object.keys(z);function tt(e,t){if(typeof e==`function`)return e;let n=e===void 0?t:e;return e=>typeof e==`object`&&e&&n in e?e[n]:e}var nt=w({name:`QSelect`,inheritAttrs:!1,props:{...Fe,...ue,...z,modelValue:{required:!0},multiple:Boolean,displayValue:[String,Number],displayValueHtml:Boolean,dropdownIcon:String,options:{type:Array,default:()=>[]},optionValue:[Function,String],optionLabel:[Function,String],optionDisable:[Function,String],hideSelected:Boolean,hideDropdownIcon:Boolean,hideDialogClose:Boolean,fillInput:Boolean,maxValues:[Number,String],optionsDense:Boolean,optionsDark:{type:Boolean,default:null},optionsSelectedClass:String,optionsHtml:Boolean,optionsCover:Boolean,noOptionLabel:String,menuShrink:Boolean,menuAnchor:String,menuSelf:String,menuOffset:Array,popupContentClass:String,popupContentStyle:[String,Array,Object],popupNoRouteDismiss:Boolean,useInput:Boolean,useChips:Boolean,noChipRemove:Boolean,newValueMode:{type:String,validator:Qe},mapOptions:Boolean,emitValue:Boolean,noOptionPrefetch:Boolean,disableTabSelection:Boolean,inputDebounce:{type:[Number,String],default:500},inputClass:[Array,String,Object],inputStyle:[Array,String,Object],tabindex:{type:[String,Number],default:0},autocomplete:String,transitionShow:{},transitionHide:{},transitionDuration:{},behavior:{type:String,validator:e=>[`default`,`menu`,`dialog`].includes(e),default:`default`},...We,virtualScrollItemSize:Fe.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...fe,`add`,`remove`,`inputValue`,`keyup`,`keypress`,`keydown`,`popupShow`,`popupHide`,`filterAbort`],setup(n,{slots:s,emit:d}){let{proxy:p}=u(),m=te(),v=t(!1),y=t(!1),C=t(-1),w=t(``),E=t(!1),D=t(!1),O=null,k=null,A=!1,re=0,j,ie=!1,M,N,P=!1,F=null,oe,se,I,ce,le=e(null),L=e(null),R=e(null),ue=e(null),fe=e(null),me=de(n),he=xe(xt),z=f(()=>Array.isArray(n.options)?n.options.length:0),{virtualScrollSliceRange:_e,virtualScrollSliceSizeComputed:we,localResetVirtualScroll:Te,padVirtualScroll:Ee,onVirtualScrollEvt:De,scrollTo:Oe,setVirtualScrollSize:ke}=Ie({virtualScrollLength:z,getVirtualScrollTarget:_t,getVirtualScrollEl:gt,virtualScrollItemSizeComputed:f(()=>n.virtualScrollItemSize===void 0?n.optionsDense?24:48:n.virtualScrollItemSize)}),V=be(),H=f(()=>{let e=n.mapOptions&&!n.multiple,t=n.modelValue!==void 0&&(n.modelValue!==null||e)?n.multiple&&Array.isArray(n.modelValue)?n.modelValue:[n.modelValue]:[];if(n.mapOptions&&Array.isArray(n.options)){let r=n.mapOptions&&j!==void 0?j:[],i=t.map(e=>lt(e,r));return n.modelValue===null&&e?i.filter(e=>e!==null):i}return t}),Ae=f(()=>{let e={};return et.forEach(t=>{let r=n[t];r!==void 0&&(e[t]=r)}),e}),U=f(()=>n.optionsDark===null?V.isDark():n.optionsDark),je=f(()=>ge(H.value)),Me=f(()=>{let e=`q-field__input q-placeholder col`;return n.hideSelected||H.value.length===0?[e,n.inputClass]:(e+=` q-field__input--padding`,n.inputClass===void 0?e:[e,n.inputClass])}),Ne=f(()=>(n.virtualScrollHorizontal?`q-virtual-scroll--horizontal`:``)+(n.popupContentClass?` `+n.popupContentClass:``)),W=f(()=>z.value===0);function Pe(){return s[`no-option`]!==void 0||n.noOptionLabel!==void 0}let Fe=f(()=>H.value.map(e=>Y.value(e)).join(`, `)),G=f(()=>n.displayValue===void 0?Fe.value:n.displayValue),Re=f(()=>n.optionsHtml?()=>!0:e=>e?.html===!0),ze=f(()=>n.displayValueHtml||n.displayValue===void 0&&(n.optionsHtml||H.value.some(Re.value))),Be=f(()=>V.focused.value?n.tabindex:-1),Ve=f(()=>{let e={tabindex:n.disable===!0?void 0:n.tabindex,role:`combobox`,"aria-label":n.label,"aria-readonly":n.readonly?`true`:`false`,"aria-autocomplete":n.useInput?`list`:`none`,"aria-expanded":v.value?`true`:`false`};return v.value&&!W.value&&(e[`aria-controls`]=`${V.targetUid.value}_lb`),C.value>=0&&(e[`aria-activedescendant`]=`${V.targetUid.value}_${C.value}`),e}),He=f(()=>({id:`${V.targetUid.value}_lb`,role:`listbox`,"aria-multiselectable":n.multiple?`true`:`false`})),We=f(()=>H.value.map((e,t)=>({index:t,opt:e,html:Re.value(e),selected:!0,removeAtIndex:it,toggleOption:ot,tabindex:Be.value}))),K=f(()=>{if(z.value===0)return[];let{from:e,to:t}=_e.value;return n.options.slice(e,t).map((t,r)=>{let i=X.value(t)===!0,a=ut(t),o=e+r,s={clickable:!0,active:a,activeClass:q.value,manualFocus:!0,focused:!1,disable:i,tabindex:-1,dense:n.optionsDense,dark:U.value,role:`option`,"aria-selected":a?`true`:`false`,"aria-setsize":z.value,"aria-posinset":o+1,id:`${V.targetUid.value}_${o}`,onClick:()=>{ot(t)}};return i||(C.value===o&&(s.focused=!0),s.onPointermove=e=>{e.pointerType!==`touch`&&v.value&&st(o)}),{index:o,opt:t,html:Re.value(t),label:Y.value(t),selected:s.active,focused:s.focused,toggleOption:ot,setOptionIndex:st,itemProps:s}})}),Ke=f(()=>n.dropdownIcon===void 0?m.iconSet.arrow.dropdown:n.dropdownIcon),qe=f(()=>!n.optionsCover&&!n.outlined&&!n.standout&&!n.borderless&&!n.rounded),q=f(()=>n.optionsSelectedClass===void 0?n.color===void 0?``:`text-${n.color}`:n.optionsSelectedClass),J=f(()=>tt(n.optionValue,`value`)),Y=f(()=>tt(n.optionLabel,`label`)),X=f(()=>tt(n.optionDisable,`disable`)),Je=f(()=>H.value.map(J.value)),Ye=f(()=>{let e={onInput:xt,onChange:he,onKeydown:ht,onKeyup:pt,onKeypress:mt,onFocus:dt,onClick(e){M&&b(e)}};return e.onCompositionstart=e.onCompositionupdate=e.onCompositionend=he,e});a(H,e=>{j=e,n.useInput&&n.fillInput&&!n.multiple&&!V.innerLoading.value&&(!y.value&&!v.value||!je.value)&&(N||$(),(y.value||v.value)&&Z(``)),ie&&wt()&&(ie=!1)},{immediate:!0}),a(()=>n.fillInput,$),a(v,Ht),a(z,Ut);function nt(e){return n.emitValue?J.value(e):e}function rt(e){if(e!==-1&&e<H.value.length){if(n.multiple){let t=[...n.modelValue];d(`remove`,{index:e,value:t.splice(e,1)[0]}),d(`update:modelValue`,t)}else d(`update:modelValue`,null)}}function it(e){rt(e),V.focus()}function at(e,t){let r=nt(e);if(!n.multiple){n.fillInput&&Ct(Y.value(e),!0,!0),d(`update:modelValue`,r);return}if(H.value.length===0){d(`add`,{index:0,value:r}),d(`update:modelValue`,n.multiple?[r]:r);return}if(t&&ut(e)||n.maxValues!==void 0&&n.modelValue.length>=n.maxValues)return;let i=[...n.modelValue];d(`add`,{index:i.length,value:r}),i.push(r),d(`update:modelValue`,i)}function ot(e,t){if(!V.editable.value||e===void 0||X.value(e)===!0)return;let r=J.value(e);if(!n.multiple){let i=!t&&y.value;t||(Ct(n.fillInput?Y.value(e):``,!0,!0),Q()),i||L.value?.focus(),(H.value.length===0||!ve(J.value(H.value[0]),r))&&d(`update:modelValue`,n.emitValue?r:e);return}if((!M||E.value)&&V.focus(),dt(),H.value.length===0){let t=n.emitValue?r:e;d(`add`,{index:0,value:t}),d(`update:modelValue`,n.multiple?[t]:t);return}let i=[...n.modelValue],a=Je.value.findIndex(e=>ve(e,r));if(a!==-1)d(`remove`,{index:a,value:i.splice(a,1)[0]});else{if(n.maxValues!==void 0&&i.length>=n.maxValues)return;let t=n.emitValue?r:e;d(`add`,{index:i.length,value:t}),i.push(t)}d(`update:modelValue`,i)}function st(e){let t=e!==-1&&e<z.value?e:-1;C.value!==t&&(C.value=t,P=!1)}function ct(e=1,t){if(v.value){let r=C.value;do r=Ue(r+e,-1,z.value-1);while(r!==-1&&r!==C.value&&X.value(n.options[r])===!0);C.value!==r&&(st(r),Oe(r),!t&&n.useInput&&n.fillInput&&St(r>=0?Y.value(n.options[r]):oe,!0))}}function lt(e,t){let r=t=>ve(J.value(t),e);return n.options.find(r)||t.find(r)||e}function ut(e){let t=J.value(e);return Je.value.find(e=>ve(e,t))!==void 0}function dt(e){n.useInput&&L.value!==null&&(e===void 0||L.value===e.target&&e.target.value===Fe.value)&&L.value.select()}function ft(e){h(e,27)&&v.value&&(b(e),Q(e),$()),d(`keyup`,e)}function pt(e){let{value:t}=e.target;if(e.keyCode!==void 0){ft(e);return}if(e.target.value=``,O!==null&&(clearTimeout(O),O=null),k!==null&&(clearTimeout(k),k=null),$(),typeof t==`string`&&t.length!==0){let e=t.toLocaleLowerCase(),r=t=>{let r=n.options.find(n=>String(t.value(n)).toLocaleLowerCase()===e);return r!==void 0&&(H.value.includes(r)?Q():ot(r),!0)},i=e=>{!r(J)&&!e&&!r(Y)&&Z(t,!0,()=>i(!0))};i()}else V.clearValue(e)}function mt(e){d(`keypress`,e)}function ht(e){if(d(`keydown`,e),e.defaultPrevented||_(e))return;let t=w.value.length!==0&&(n.newValueMode!==void 0||n.onNewValue!==void 0),r=!e.shiftKey&&!n.disableTabSelection&&!n.multiple&&(C.value!==-1||t);if(e.keyCode===27){g(e);return}if(e.keyCode===9&&!r){Pt(e);return}if(e.target===void 0||e.target.id!==V.targetUid.value||!V.editable.value)return;if((e.keyCode===40||e.keyCode===38)&&!V.innerLoading.value&&!v.value){T(e),Vt(e);return}if(e.keyCode===8&&(n.useChips&&!n.noChipRemove||n.clearable)&&!n.hideSelected&&w.value.length===0){(n.clearable||X.value(H.value.at(-1))!==!0)&&(n.multiple&&Array.isArray(n.modelValue)?rt(n.modelValue.length-1):!n.multiple&&n.modelValue!==null&&d(`update:modelValue`,null));return}(e.keyCode===35||e.keyCode===36)&&(typeof w.value!=`string`||w.value.length===0)&&(T(e),C.value=-1,ct(e.keyCode===36?1:-1,n.multiple)),(e.keyCode===33||e.keyCode===34)&&we.value!==void 0&&(T(e),C.value=Math.max(-1,Math.min(z.value,C.value+(e.keyCode===33?-1:1)*we.value.view)),ct(e.keyCode===33?1:-1,n.multiple)),(e.keyCode===38||e.keyCode===40)&&(T(e),ct(e.keyCode===38?-1:1,n.multiple));let i=z.value;if((I===void 0||ce<Date.now())&&(I=``),i>0&&!n.useInput&&e.key!==void 0&&e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&(e.keyCode!==32||I.length!==0)){v.value||Vt(e);let t=e.key.toLocaleLowerCase(),r=I.length===1&&I[0]===t;ce=Date.now()+1500,r||(T(e),I+=t);let a=RegExp(`^`+[...I].map(e=>$e.includes(e)?`\\`+e:e).join(`.*`),`i`),o=C.value;if(r||o<0||!a.test(Y.value(n.options[o])))do o=Ue(o+1,-1,i-1);while(o!==C.value&&(X.value(n.options[o])===!0||!a.test(Y.value(n.options[o]))));C.value!==o&&c(()=>{st(o),Oe(o),o>=0&&n.useInput&&n.fillInput&&St(Y.value(n.options[o]),!0)});return}if(e.keyCode===13||e.keyCode===32&&!n.useInput&&I===``||e.keyCode===9&&r){if(e.keyCode!==9&&T(e),C.value!==-1&&C.value<i&&!(t&&N&&P)){ot(n.options[C.value]);return}if(t){let e=(e,t)=>{if(t){if(!Qe(t))return}else t=n.newValueMode;Ct(``,!n.multiple,!0),e!=null&&((t===`toggle`?ot:at)(e,t===`add-unique`),n.multiple||(L.value?.focus(),Q()))};if(n.onNewValue===void 0?e(w.value):d(`newValue`,w.value,e),!n.multiple)return}v.value?Pt(e):V.innerLoading.value||Vt(e)}}function gt(){return M?fe.value:R.value!==null&&R.value.contentEl!==null?R.value.contentEl:void 0}function _t(){return gt()}function vt(){return n.hideSelected?[]:s[`selected-item`]===void 0?s.selected===void 0?n.useChips?We.value.map((e,t)=>r(B,{key:`option-`+t,removable:!n.noChipRemove&&V.editable.value&&X.value(e.opt)!==!0,dense:!0,textColor:n.color,tabindex:Be.value,onRemove(){e.removeAtIndex(t)}},()=>r(`span`,{class:`ellipsis`,[e.html?`innerHTML`:`textContent`]:Y.value(e.opt)}))):[r(`span`,{class:`q-select__selected-value ellipsis`,[ze.value?`innerHTML`:`textContent`]:G.value})]:[s.selected()].flat():We.value.map(e=>s[`selected-item`](e))}function yt(){if(W.value)return s[`no-option`]===void 0?n.noOptionLabel===void 0?void 0:[r(Se,()=>r(Ce,{class:`text-grey`},()=>r(Le,()=>n.noOptionLabel)))]:s[`no-option`]({inputValue:w.value});let e=s.option===void 0?e=>r(Se,{key:e.index,...e.itemProps},()=>r(Ce,()=>r(Le,()=>r(`span`,{[e.html?`innerHTML`:`textContent`]:e.label})))):s.option,t=Ee(`div`,K.value.map(e),He.value);return s[`before-options`]!==void 0&&(t=[s[`before-options`](),...t].flat()),ne(s[`after-options`],t)}function bt(e,t){let i=t?{...Ve.value,...V.splitAttrs.attributes.value}:void 0,a={ref:t?L:void 0,key:`i_t`,class:Me.value,style:n.inputStyle,value:w.value===void 0?``:w.value,type:`search`,...i,id:t?V.targetUid.value:void 0,maxlength:n.maxlength,autocomplete:n.autocomplete,"data-autofocus":e===!0||n.autofocus||void 0,disabled:n.disable,readonly:n.readonly,...Ye.value};return t&&Object.assign(a,V.getErrorAriaAttrs(a)),!e&&M&&(Array.isArray(a.class)?a.class=[...a.class,`no-pointer-events`]:a.class+=` no-pointer-events`),r(`input`,a)}function xt(e){O!==null&&(clearTimeout(O),O=null),k!==null&&(clearTimeout(k),k=null),!e?.target?.qComposing&&(St(e.target.value||``),N=!0,oe=w.value,!V.focused.value&&(!M||E.value)&&V.focus(),n.onFilter!==void 0&&(M&&!y.value?Vt(e):O=setTimeout(()=>{O=null,Z(w.value)},n.inputDebounce)))}function St(e,t){w.value!==e&&(k!==null&&(clearTimeout(k),k=null),w.value=e,t||n.inputDebounce===0||n.inputDebounce===`0`?d(`inputValue`,e):k=setTimeout(()=>{k=null,d(`inputValue`,e)},n.inputDebounce))}function Ct(e,t,r){N=r!==!0,n.useInput&&(St(e,!0),(t||N)&&(oe=e),t||Z(e))}function Z(e,t,r){if(n.onFilter===void 0||!t&&!V.focused.value&&!A)return;V.innerLoading.value?d(`filterAbort`):(V.innerLoading.value=!0,D.value=!0),e!==``&&!n.multiple&&H.value.length!==0&&!N&&e===Y.value(H.value[0])&&(e=``);let i=setTimeout(()=>{v.value&&=!1},10);F!==null&&clearTimeout(F),F=i,d(`filter`,e,(e,n)=>{(t||V.focused.value||A)&&F===i&&(clearTimeout(F),typeof e==`function`&&e(),D.value=!1,c(()=>{V.innerLoading.value=!1,V.editable.value&&(t?v.value&&Q():v.value?Ht(!0):v.value=!0),typeof n==`function`&&c(()=>{n(p)}),typeof r==`function`&&c(()=>{r(p)})}))},()=>{(t||V.focused.value||A)&&F===i&&(clearTimeout(F),V.innerLoading.value=!1,D.value=!1),v.value&&=!1})}function wt(){return z.value!==0||H.value.every(e=>typeof e==`object`&&!!e)?!1:(Z(``,!0,$),!0)}function Tt(){return r(Xe,{ref:R,class:Ne.value,style:n.popupContentStyle,modelValue:v.value,fit:!n.menuShrink,cover:n.optionsCover&&!W.value&&!n.useInput,anchor:n.menuAnchor,self:n.menuSelf,offset:n.menuOffset,dark:U.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:n.popupNoRouteDismiss,square:qe.value,transitionShow:n.transitionShow,transitionHide:n.transitionHide,transitionDuration:n.transitionDuration,separateClosePopup:!0,onScrollPassive:De,onBeforeShow:Gt,onBeforeHide:Et,onShow:Dt,...n.hover?{onPointerenter:zt,onPointerleave:Rt}:{}},yt)}function Et(e){Kt(e),Pt()}function Dt(){ke()}function Ot(e){b(e),L.value?.focus(),E.value=!0,m.platform.is.ios&&window.scrollTo(window.scrollX,0)}function kt(e){b(e),c(()=>{E.value=!1})}function At(){let e=[r(Ze,{class:`col-auto ${V.fieldClass.value}`,...Ae.value,for:V.targetUid.value,dark:U.value,square:!0,loading:D.value,itemAligned:!1,filled:!0,stackLabel:w.value.length!==0,...V.splitAttrs.listeners.value,onFocus:Ot,onBlur:kt},{...s,rawControl:()=>V.getControl(!0),before:void 0,after:void 0,append:n.hideDialogClose?s.append:()=>{let e=r(`button`,{class:`q-select__dialog-close`+(n.color===void 0?``:` text-${n.color}`),type:`button`,tabindex:0,onClick:Q},m.lang.label.close);return s.append===void 0?[e]:[...s.append(),e]}})];return v.value&&e.push(r(`div`,{ref:fe,class:Ne.value+` scroll`,style:n.popupContentStyle,onClick:g,onScrollPassive:De},yt())),r(ye,{ref:ue,modelValue:y.value,position:n.useInput?`top`:void 0,noFocus:!0,transitionShow:se,transitionHide:n.transitionHide,transitionDuration:n.transitionDuration,noRouteDismiss:n.popupNoRouteDismiss,onBeforeShow:Gt,onBeforeHide:jt,onHide:Mt,onShow:Nt},()=>r(`div`,{class:`q-select__dialog`+(U.value?` q-select__dialog--dark q-dark`:``)+(E.value?` q-select__dialog--focused`:``)},e))}function jt(e){if(Kt(e),ue.value!==null){let t=!m.platform.is.mobile||!n.useInput||e!==void 0&&(e.type.indexOf(`key`)===0||e.type===`click`&&e.detail===0)?V.rootRef.value.querySelector(`.q-field__native > .q-select__focus-target, .q-field__native > .q-field__input`):null;ue.value.__updateRefocusTarget(t)}V.focused.value=!1}function Mt(e){Q(),V.focused.value||d(`blur`,e),$()}function Nt(){let e=document.activeElement;(e===null||e.id!==V.targetUid.value)&&L.value!==null&&L.value!==e&&L.value.focus(),ke()}function Pt(e){y.value||(It(),A=!1,C.value=-1,v.value&&(e!==void 0&&(e.qSelectHandled=!0),v.value=!1,R.value?.hide(e)),V.focused.value||(F!==null&&(clearTimeout(F),F=null),V.innerLoading.value&&(d(`filterAbort`),V.innerLoading.value=!1,D.value=!1)))}function Ft(e){if(e==null)return!1;let t=R.value===null?null:R.value.contentEl;if(V.controlRef.value!==null&&V.controlRef.value.contains(e)||t!==null&&t.contains(e))return!0;let n=ae(e);for(;n!=null;){if(n===p)return!0;n=x(n)}return!1}let{clearHoverTimer:It,hoverShow:Lt,hoverHide:Rt,onHoverContentEnter:zt}=Ge({props:n,canShow:()=>!M&&!A&&!v.value&&V.editable.value,show:Bt,canHide:e=>A&&!Ft(e.relatedTarget),hide:Q});function Bt(e){(n.onFilter!==void 0||!W.value||Pe())&&(A=!0,re=Date.now(),e.qSelectHandled=!0,n.onFilter===void 0?(v.value=!0,R.value?.show(e)):Z(w.value))}function Vt(e){V.editable.value&&(It(),A=!1,e!==void 0&&(e.qSelectHandled=!0),M?(V.onControlFocusin(e),V.focus(),y.value=!0,ue.value?.show(e),c(()=>{V.focus()})):V.focus(),n.onFilter===void 0?(!W.value||Pe())&&(v.value=!0,R.value?.show(e)):Z(w.value))}function Q(e){y.value&&(e!==void 0&&(e.qSelectHandled=!0),y.value=!1,ue.value?.hide(e)),Pt(e)}function $(){n.useInput&&Ct(!n.multiple&&n.fillInput&&H.value.length!==0?Y.value(H.value[0])??``:``,!0,!0)}function Ht(e){let t=-1;if(e){if(H.value.length!==0){let e=J.value(H.value[0]);t=n.options.findIndex(t=>ve(J.value(t),e))}Te(t)}st(t),P=t!==-1}function Ut(e,t){v.value&&!V.innerLoading.value&&(Te(-1,!0),c(()=>{v.value&&!V.innerLoading.value&&(e>t?Te():Ht(!0))}))}function Wt(){y.value||R.value?.updatePosition()}function Gt(e){e!==void 0&&e.qSelectHandled!==!0&&b(e),d(`popupShow`,e),V.hasPopupOpen=!0,A||V.onControlFocusin(e)}function Kt(e){e!==void 0&&e.qSelectHandled!==!0&&b(e),d(`popupHide`,e),V.hasPopupOpen=!1,V.onControlFocusout(e,$)}function qt(){M=!m.platform.is.mobile&&n.behavior!==`dialog`?!1:n.behavior!==`menu`&&(!n.useInput||Pe()||n.onFilter!==void 0||!W.value),se=m.platform.is.ios&&M&&n.useInput?`fade`:n.transitionShow}return o(qt),i(Wt),!n.noOptionPrefetch&&n.mapOptions&&n.onFilter!==void 0&&l(()=>{ie=!wt()}),qt(),ee(()=>{O!==null&&clearTimeout(O),k!==null&&clearTimeout(k)}),Object.assign(p,{showPopup:Vt,hidePopup:Q,removeAtIndex:rt,add:at,toggleOption:ot,getOptionIndex:()=>C.value,setOptionIndex:st,moveOptionSelection:ct,filter:Z,updateMenuPosition:Wt,updateInputValue:Ct,isOptionSelected:ut,getEmittingOptionValue:nt,isOptionDisabled:(...e)=>X.value(...e)===!0,getOptionValue:(...e)=>J.value(...e),getOptionLabel:(...e)=>Y.value(...e)}),Object.assign(V,{innerValue:H,fieldClass:f(()=>`q-select q-field--auto-height q-select--with${n.useInput?``:`out`}-input q-select--with${n.useChips?``:`out`}-chips q-select--${n.multiple?`multiple`:`single`}`),inputRef:le,targetRef:L,hasValue:je,showPopup:Vt,floatingLabel:f(()=>!n.hideSelected&&je.value||typeof w.value==`number`||w.value.length!==0||ge(n.displayValue)),getControlChild:()=>{if(V.editable.value&&(y.value||!W.value||Pe()))return M?At():Tt();V.hasPopupOpen&&=!1},controlEvents:{onFocusin(e){It(),A=!1,V.onControlFocusin(e)},onFocusout(e){V.onControlFocusout(e,()=>{$(),Pt(e)})},onClick(e){if(g(e),!M&&v.value){if(A&&Date.now()-re<(n.transitionDuration===void 0?300:Number(n.transitionDuration))){A=!1,V.focus();return}Pt(e),L.value?.focus();return}Vt(e)},onPointerenter:Lt,onPointerleave:Rt},getControl:e=>{let t=vt(),i=e===!0||!y.value||!M;if(n.useInput)t.push(bt(e,i));else{let a=i?{...Ve.value,...V.splitAttrs.attributes.value}:void 0,o={ref:i?L:void 0,key:`d_t`,class:`q-select__focus-target`,value:G.value,readonly:!0,"data-autofocus":e===!0||n.autofocus||void 0,...a,disabled:n.disable,id:i?V.targetUid.value:void 0,onKeydown:ht,onKeyup:ft,onKeypress:mt};i&&Object.assign(o,V.getErrorAriaAttrs(o)),t.push(r(`input`,o)),i&&V.editable.value&&typeof n.autocomplete==`string`&&n.autocomplete.length!==0&&t.push(r(`input`,{class:`q-select__autocomplete-input`,autocomplete:n.autocomplete,tabindex:-1,onKeyup:pt}))}if(!n.disable){let e=me();if(e!==void 0){let i=Je.value.map(e=>r(`option`,{value:e,selected:!0}));t.push(r(`select`,{class:`hidden`,name:e,multiple:n.multiple},i))}}return r(`div`,{class:`q-field__native row items-center`,...V.splitAttrs.listeners.value},t)},shouldHideLoadingIndicator:()=>n.hideDropdownIcon===!0,getInnerAppend:()=>!n.loading&&!D.value&&!n.hideDropdownIcon?[r(S,{class:`q-select__dropdown-icon`+(v.value?` rotate-180`:``),name:Ke.value})]:null}),pe(V)}});export{ze as a,Ie as c,He as i,Fe as l,Ze as n,Ve as o,Xe as r,Le as s,nt as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{C as e}from"./runtime-core.esm-bundler-DOiZcasU.js";import{D as t,E as n,O as r,nt as i}from"./QBtn-b_baQtAt.js";var a=`<circle cx="15" cy="15" r="15"></circle><circle cx="60" cy="15" r="9" fill-opacity=".3" style="animation-delay:-.4s"></circle><circle cx="105" cy="15" r="15"></circle>`,o=i({name:`QSpinnerDots`,props:r,setup(r){return()=>{let i=t(r.size);return e(`svg`,{class:n(r.color,`dots`),fill:`currentColor`,width:i,height:i,viewBox:`0 0 120 30`,xmlns:`http://www.w3.org/2000/svg`,innerHTML:a})}}});export{o as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{S as e,v as t}from"./reactivity.esm-bundler-tuEvQ47f.js";import{C as n,J as r,b as ee,j as te,l as i}from"./runtime-core.esm-bundler-DOiZcasU.js";import{C as a,K as o,Z as s,b as ne,lt as c,nt as l,q as u}from"./QBtn-b_baQtAt.js";import{C as d,S as f,b as re,c as p,d as ie,l as ae,s as oe,t as se,v as ce,w as le,x as m,y as h}from"./use-id-b4A2I8LB.js";import{c as g,f as _,l as v,o as y,p as b,s as x,u as ue}from"./use-tours-CM4E53aB.js";var S=0,de=100,C=4;function fe(e){return e.pointerType===`touch`||e.pointerType===`pen`&&e.buttons!==0}var w=l({name:`QTooltip`,inheritAttrs:!1,props:{..._,...f,...h,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...h.transitionShow,default:`jump-down`},transitionHide:{...h.transitionHide,default:`jump-up`},anchor:{type:String,default:`bottom middle`,validator:v},self:{type:String,default:`top middle`,validator:v},offset:{type:Array,default:()=>[14,14],validator:g},cursorPosition:Boolean,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...m],setup(l,{slots:f,emit:m,attrs:h}){let g,_=!1,v=null,w=null,T,E=ee(),D=ne(),O=e(null),k=t(!1),A=se();function j(){return h.id||A.value}let M=i(()=>x(l.anchor,D.lang.rtl)),N=i(()=>x(l.self,D.lang.rtl)),P=i(()=>!l.persistent),{registerTimeout:F,registerTransitionEnd:I}=le(l),{transitionProps:L,transitionStyle:R}=ce(l),{anchorEl:z,canShow:B,anchorEvents:V}=ue({showing:k,configureAnchorEl:Q}),{show:H,hide:U}=re({showing:k,canShow:B,handleShow:ge,handleHide:_e,hideOnRouteChange:P,processOnMount:!0});Object.assign(V,{delayShow:J,delayHide:be,onFocusin:xe,onPointerdown:ye,onCursorMove:ve});let{showPortal:W,hidePortal:G,renderPortal:pe}=ae(E,O,Te,`tooltip`),{registerTick:me,removeTick:he}=d(),K=y({props:l,$q:D,anchorEl:z,innerRef:O,showing:k,anchorOrigin:M,selfOrigin:N,trackContent:!0});r(()=>(l.modelValue===null||l[`onUpdate:modelValue`])&&k.value===!0&&l.persistent!==!0,e=>{(e===!0?oe:p)(Z)});function ge(e){u(V,`cursorTemp`),W(),Se(),K.handleShow(l.cursorPosition?e:void 0),me(K.handleTick),I(()=>{W(!0),m(`show`,e)})}function _e(e){he(),G(),q(!0),I(()=>{G(!0),K.releaseAnchor(!1),m(`hide`,e)})}function q(e){K.releaseAnchor(e),p(Z),v=null,u(V,`tooltipTemp`),u(V,`cursorTemp`),Ce(),$(!1)}function J(e){if(e.pointerType===`touch`&&e.isPrimary===!1)return;let t=fe(e);if(t&&X(e),l.cursorPosition&&!t){let t=s(e);if(t.left!==void 0){w=t,o(V,`cursorTemp`,[[z.value,`pointermove`,`onCursorMove`,`passive`]]),Y(e);return}}F(()=>{H(e)},l.delay)}function Y(e){F(()=>{H(e)},Math.max(l.delay,de))}function ve(e){let t=s(e);Math.abs(t.left-w.left)<=C&&Math.abs(t.top-w.top)<=C||(w=t,Y(e))}function X(e){v=e.pointerType,g!==void 0&&(clearTimeout(g),g=void 0),b(),$(!0);let t=z.value,n=[`touchmove`,`touchcancel`,`touchend`,`click`].map(e=>[t,e,`delayHide`,`passiveCapture`]);o(V,`tooltipTemp`,n)}function ye(e){e.pointerType===`pen`&&v===null&&X(e)}function be(e){if((e.pointerType!==`touch`||e.isPrimary!==!1)&&!(e.type===`focusout`&&z.value!==null&&z.value.contains(e.relatedTarget))){if(u(V,`cursorTemp`),v!==null){let t=v===`pen`&&(e.type===`click`||e.type===`touchend`);if(v=null,u(V,`tooltipTemp`),b(),g=setTimeout(()=>{g=void 0,$(!1)},10),t)return}F(()=>{U(e)},l.hideDelay)}}function xe(e){let t=e.target;t&&!ie()&&t.matches(`:focus-visible`)&&J(e)}function Z(e){U(e)}function Q(){if(l.noParentEvent||z.value===null)return;let e=[[z.value,`pointerenter`,`delayShow`,`passive`],[z.value,`pointerdown`,`onPointerdown`,`passive`],[z.value,`pointerleave`,`delayHide`,`passive`],[z.value,`focusin`,`onFocusin`,`passive`],[z.value,`focusout`,`delayHide`,`passive`]];o(V,`anchor`,e)}function $(e){_!==e&&(_=e,S+=e?1:-1,document.body.classList.toggle(`non-selectable`,S>0),!e&&g!==void 0&&(clearTimeout(g),g=void 0))}function Se(){let e=z.value,t=j();if(e===null||t===void 0)return;let n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(Boolean);T={el:e,id:t,added:!n.includes(t)},T.added&&(n.push(t),e.setAttribute(`aria-describedby`,n.join(` `)))}function Ce(){if(T?.added===!0){let{el:e,id:t}=T,n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(e=>e!==``&&e!==t);n.length===0?e.removeAttribute(`aria-describedby`):e.setAttribute(`aria-describedby`,n.join(` `))}T=void 0}function we(){return k.value?n(`div`,{...h,id:j(),ref:O,class:[`q-tooltip q-tooltip--style no-pointer-events`+(K.viaCssAnchor?``:` q-position-engine`),h.class],style:[h.style,R(),K.positionStyle.value],role:`tooltip`},a(f.default)):null}function Te(){return n(c,L(),we)}return te(()=>{q(!1)}),Object.assign(E.proxy,{updatePosition:K.updatePosition}),pe}});export{w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{M as e,dt as t,v as n}from"./reactivity.esm-bundler-tuEvQ47f.js";import{F as r,J as i,L as a,Y as o,_ as s,d as c,f as l,g as u,l as d,p as f,r as ee,u as p,y as m,z as te}from"./runtime-core.esm-bundler-DOiZcasU.js";import{b as ne,l as h,t as g}from"./QBtn-b_baQtAt.js";import{a as re,i as ie}from"./latest-request-7rgsEfKZ.js";import{a as ae}from"./i18n-CPFleoLe.js";import{Ct as _,Jt as v,Kt as y,c as oe,nt as se}from"./index-BVJWwOvK.js";import{t as ce}from"./QSelect-DUuWu79L.js";import{t as le}from"./QExpansionItem-DmzCAbka.js";import{a as b}from"./use-tours-CM4E53aB.js";import{t as ue}from"./QBadge-rGILsUYl.js";import{t as de}from"./QChip-Btg1Lp_6.js";import{t as x}from"./QBtnToggle-COL46j6W.js";function fe(e,t){let n=Math.max(1,Math.floor(t));switch(e){case`minutes`:return`*/${n} * * * *`;case`hours`:return`0 */${n} * * *`;case`days`:return`0 0 */${n} * *`}}function pe(e){return Math.max(1,Math.floor(e))>1}var me={class:`column q-pa-md q-gutter-lg`},he={class:`row items-center no-wrap q-gutter-sm`},ge={class:`schedule-header__icon`},_e={class:`text-subtitle1 text-weight-medium`},ve={class:`text-caption text-kobo-3`},ye={key:0,role:`status`,class:`text-caption q-pa-sm bg-blue-grey-9 rounded-borders`,"data-test":`admission-status`},be={class:`row items-center justify-between q-mb-sm`},xe={class:`text-subtitle2`},Se={class:`text-body2 text-weight-medium`},Ce={class:`text-caption text-kobo-3`},we={key:1,class:`column q-gutter-sm`},Te={class:`row items-start no-wrap q-gutter-sm`},S={class:`schedule-item__icon schedule-item__icon--wakeup`},C={class:`col min-width-zero`},w={class:`text-caption text-kobo-3`},T={class:`text-body2 text-weight-medium`},E={key:0,class:`prompt-preview schedule-item__prompt`},D={class:`row items-start no-wrap q-gutter-sm`},O={class:`schedule-item__icon schedule-item__icon--cron`},Ee={class:`col min-width-zero`},De={class:`text-body2 text-weight-medium ellipsis`},Oe=[`title`],ke={key:1,class:`text-caption text-kobo-3`},Ae={class:`row items-center q-gutter-xs q-mt-sm`},je={key:0,class:`text-caption text-kobo-3`},Me={class:`prompt-preview schedule-item__prompt`},Ne={class:`row items-center justify-between q-mb-sm`},Pe={class:`text-subtitle2`},Fe={class:`text-caption text-kobo-3`},Ie={class:`text-body2 text-weight-medium`},Le={class:`text-caption text-kobo-3`},Re={class:`column q-gutter-y-xs`},ze={class:`field-label`},Be={class:`text-body2 text-weight-medium`},Ve={class:`text-caption text-kobo-3`},He={class:`column q-gutter-y-xs`},Ue={class:`field-label`},We={class:`row items-center no-wrap q-gutter-sm`},Ge={class:`text-body2 text-kobo-2`},Ke={key:0,class:`text-caption text-warning`},qe={class:`column q-gutter-y-xs`},Je={class:`field-label`},Ye={class:`one-shot-option row items-center justify-between no-wrap q-pa-sm`},k={class:`text-body2`},Xe={class:`text-caption text-kobo-3`},A=b(m({__name:`SchedulePanel`,props:{workspaceId:{}},setup(m){let b=m,{t:A}=ae(),j=ne(),M=se(),N=d(()=>M.pendingWakeups[b.workspaceId]??null),P=d(()=>M.crons[b.workspaceId]??[]),F=d(()=>P.value.filter(e=>!e.validationError).length+ +!!N.value);i(()=>b.workspaceId,e=>{e&&M.fetchCrons(e)},{immediate:!0});let I=n(null),L,R=0;i(()=>b.workspaceId,e=>{L&&clearInterval(L),I.value=null;let t=++R,n=!1;async function r(){if(e&&!n){n=!0;try{let n=await ie(`/api/workspaces/${encodeURIComponent(e)}/automatic-admission`);t===R&&(I.value=n)}catch{t===R&&(I.value=null)}finally{n=!1}}}r(),L=setInterval(()=>{r()},5e3)},{immediate:!0}),r(()=>{R++,L&&clearInterval(L)});function z(e){return new Date(e).toLocaleString(void 0,{weekday:`short`,day:`numeric`,month:`short`,hour:`2-digit`,minute:`2-digit`})}function Ze(e){let t=Date.now()-new Date(e).getTime();if(Number.isNaN(t)||t<0)return`—`;let n=new Intl.RelativeTimeFormat(void 0,{numeric:`auto`}),r=Math.floor(t/1e3);if(r<60)return n.format(-r,`second`);let i=Math.floor(r/60);if(i<60)return n.format(-i,`minute`);let a=Math.floor(i/60);return a<24?n.format(-a,`hour`):n.format(-Math.floor(a/24),`day`)}async function Qe(){try{await re(`/api/workspaces/${b.workspaceId}/pending-wakeup`,{method:`DELETE`})}catch(e){j.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}async function $e(e){try{await M.cancelCron(b.workspaceId,e)}catch(e){j.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}let B=n(`wakeup`),V=n(15),H=n(`minutes`),U=n(``),W=n(``),G=n(``),K=n(`fresh`),q=n(!1),J=n(!1),et=d(()=>[{label:A(`schedule.typeWakeup`),value:`wakeup`,icon:`alarm`},{label:A(`schedule.typeRecurring`),value:`cron`,icon:`event_repeat`}]),Y=d(()=>[{label:A(`schedule.modeFresh`),value:`fresh`,icon:`add_comment`},{label:A(`schedule.modeResume`),value:`resume`,icon:`history`}]),tt=d(()=>[{label:A(`schedule.unitMinutes`),value:`minutes`},{label:A(`schedule.unitHours`),value:`hours`},{label:A(`schedule.unitDays`),value:`days`}]);async function nt(){if(W.value.trim()&&!J.value){J.value=!0;try{let e=U.value.trim()||fe(H.value,V.value);await M.createCron(b.workspaceId,{expression:e,prompt:W.value,label:G.value.trim()||void 0,mode:K.value,oneShot:q.value}),W.value=``,G.value=``,U.value=``,j.notify({type:`positive`,message:A(`schedule.cronCreated`),position:`top`,timeout:2500})}catch(e){j.notify({type:`negative`,message:String(e instanceof Error?e.message:e),position:`top`,timeout:5e3})}finally{J.value=!1}}}let X=n(15),Z=n(``),Q=n(`fresh`),$=n(!1);async function rt(){if(Z.value.trim()&&X.value>0&&!$.value){$.value=!0;try{await M.scheduleManualWakeup(b.workspaceId,{delaySeconds:Math.round(X.value*60),prompt:Z.value,mode:Q.value}),Z.value=``,j.notify({type:`positive`,message:A(`schedule.wakeupCreated`),position:`top`,timeout:2500})}catch(e){j.notify({type:`negative`,message:String(e instanceof Error?e.message:e),position:`top`,timeout:5e3})}finally{$.value=!1}}}return(n,r)=>(a(),f(`div`,me,[p(`header`,he,[p(`div`,ge,[s(h,{name:`calendar_month`,size:`22px`})]),p(`div`,null,[p(`div`,_e,t(n.$t(`schedule.panelTitle`)),1),p(`div`,ve,t(n.$t(`schedule.panelDescription`)),1)])]),F.value>0&&I.value&&!I.value.allowed?(a(),f(`div`,ye,[u(t(n.$t(`schedule.admissionTitle`))+` `+t(n.$t(`schedule.admission.${I.value.reason}`,{running:I.value.running,limit:I.value.limit}))+` `,1),p(`div`,null,t(n.$t(`schedule.admissionHint`)),1)])):l(``,!0),p(`section`,null,[p(`div`,be,[p(`div`,xe,t(n.$t(`schedule.activeTitle`)),1),F.value>0?(a(),c(ue,{key:0,rounded:``,color:`primary`,label:F.value},null,8,[`label`])):l(``,!0)]),P.value.length===0&&!N.value?(a(),c(y,{key:0,dark:``,flat:``,bordered:``,class:`empty-state row items-center q-gutter-sm q-pa-md`},{default:o(()=>[s(h,{name:`event_available`,size:`24px`,color:`kobo-3`}),p(`div`,null,[p(`div`,Se,t(n.$t(`schedule.emptyTitle`)),1),p(`div`,Ce,t(n.$t(`schedule.emptyDescription`)),1)])]),_:1})):(a(),f(`div`,we,[N.value?(a(),c(y,{key:0,dark:``,flat:``,bordered:``,class:`schedule-item schedule-item--wakeup`},{default:o(()=>[s(v,null,{default:o(()=>[p(`div`,Te,[p(`div`,S,[s(h,{name:`alarm`,size:`18px`})]),p(`div`,C,[p(`div`,w,t(n.$t(`schedule.wakeupTitle`)),1),p(`div`,T,t(z(N.value.targetAt)),1)]),s(g,{flat:``,dense:``,round:``,icon:`delete_outline`,size:`sm`,color:`kobo-2`,title:n.$t(`schedule.cancelWakeup`),onClick:Qe},null,8,[`title`])]),N.value.reason?(a(),f(`div`,E,t(N.value.reason),1)):l(``,!0)]),_:1})]),_:1})):l(``,!0),(a(!0),f(ee,null,te(P.value,e=>(a(),c(y,{key:e.id,dark:``,flat:``,bordered:``,class:`schedule-item`},{default:o(()=>[s(v,null,{default:o(()=>[p(`div`,D,[p(`div`,O,[s(h,{name:`event_repeat`,size:`18px`})]),p(`div`,Ee,[p(`div`,De,t(e.label||e.expression),1),e.validationError?(a(),f(`div`,{key:0,class:`text-caption text-negative`,title:e.validationError},t(n.$t(`schedule.invalidCron`)),9,Oe)):(a(),f(`div`,ke,t(n.$t(`schedule.nextFireAt`,{time:z(e.nextFireAt)})),1))]),s(g,{flat:``,dense:``,round:``,icon:`delete_outline`,size:`sm`,color:`kobo-2`,title:n.$t(`schedule.cancelCron`),onClick:t=>$e(e.id)},null,8,[`title`,`onClick`])]),p(`div`,Ae,[s(de,{dense:``,square:``,color:`blue-grey-9`,"text-color":`kobo-2`,size:`sm`},{default:o(()=>[u(t(e.expression),1)]),_:2},1024),e.lastFiredAt?(a(),f(`span`,je,t(n.$t(`schedule.lastFiredAt`,{time:Ze(e.lastFiredAt)})),1)):l(``,!0)]),p(`div`,Me,t(e.prompt),1)]),_:2},1024)]),_:2},1024))),128))]))]),p(`section`,null,[p(`div`,Ne,[p(`div`,null,[p(`div`,Pe,t(n.$t(`schedule.createTitle`)),1),p(`div`,Fe,t(n.$t(`schedule.createDescription`)),1)])]),s(y,{dark:``,flat:``,bordered:``,class:`create-card`},{default:o(()=>[s(x,{modelValue:B.value,"onUpdate:modelValue":r[0]||=e=>B.value=e,spread:``,"no-caps":``,unelevated:``,"toggle-color":`primary`,color:`blue-grey-10`,"text-color":`kobo-2`,options:et.value,class:`type-toggle`},null,8,[`modelValue`,`options`]),B.value===`wakeup`?(a(),c(v,{key:0,class:`column q-gutter-y-md`},{default:o(()=>[p(`div`,null,[p(`div`,Ie,t(n.$t(`schedule.addWakeupTitle`)),1),p(`div`,Le,t(n.$t(`schedule.wakeupDescription`)),1)]),s(_,{modelValue:X.value,"onUpdate:modelValue":r[1]||=e=>X.value=e,modelModifiers:{number:!0},type:`number`,dense:``,dark:``,outlined:``,min:`1`,label:n.$t(`schedule.delayMinutes`)},{prepend:o(()=>[s(h,{name:`timer`,size:`18px`})]),_:1},8,[`modelValue`,`label`]),s(_,{modelValue:Z.value,"onUpdate:modelValue":r[2]||=e=>Z.value=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,label:n.$t(`schedule.promptLabel`),hint:n.$t(`schedule.promptHint`)},null,8,[`modelValue`,`label`,`hint`]),p(`div`,Re,[p(`div`,ze,t(n.$t(`schedule.sessionModeTitle`)),1),s(x,{modelValue:Q.value,"onUpdate:modelValue":r[3]||=e=>Q.value=e,spread:``,"no-caps":``,unelevated:``,"toggle-color":`blue-grey-7`,color:`transparent`,"text-color":`kobo-2`,options:Y.value,class:`session-toggle`},null,8,[`modelValue`,`options`])]),s(g,{"no-caps":``,unelevated:``,color:`primary`,icon:`alarm_add`,loading:$.value,disable:!Z.value.trim()||!(X.value>0),label:n.$t(`schedule.addWakeupBtn`),class:`full-width action-button`,onClick:rt},null,8,[`loading`,`disable`,`label`])]),_:1})):(a(),c(v,{key:1,class:`column q-gutter-y-md`},{default:o(()=>[p(`div`,null,[p(`div`,Be,t(n.$t(`schedule.addCronTitle`)),1),p(`div`,Ve,t(n.$t(`schedule.cronDescription`)),1)]),s(_,{modelValue:G.value,"onUpdate:modelValue":r[4]||=e=>G.value=e,dense:``,dark:``,outlined:``,label:n.$t(`schedule.labelOptional`)},null,8,[`modelValue`,`label`]),p(`div`,He,[p(`div`,Ue,t(n.$t(`schedule.frequencyTitle`)),1),p(`div`,We,[p(`span`,Ge,t(n.$t(`schedule.every`)),1),s(_,{modelValue:V.value,"onUpdate:modelValue":r[5]||=e=>V.value=e,modelModifiers:{number:!0},type:`number`,dense:``,dark:``,outlined:``,min:`1`,class:`frequency-value`},null,8,[`modelValue`]),s(ce,{modelValue:H.value,"onUpdate:modelValue":r[6]||=e=>H.value=e,options:tt.value,dense:``,dark:``,outlined:``,"options-dense":``,"emit-value":``,"map-options":``,class:`col min-width-zero`},null,8,[`modelValue`,`options`])]),H.value===`days`&&e(pe)(V.value)?(a(),f(`div`,Ke,t(n.$t(`schedule.daysDriftWarning`)),1)):l(``,!0)]),s(_,{modelValue:W.value,"onUpdate:modelValue":r[7]||=e=>W.value=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,label:n.$t(`schedule.promptLabel`),hint:n.$t(`schedule.promptHint`)},null,8,[`modelValue`,`label`,`hint`]),s(le,{dense:``,"dense-toggle":``,"switch-toggle-side":``,icon:`code`,label:n.$t(`schedule.advancedExpression`),caption:n.$t(`schedule.advancedDescription`),class:`advanced-section`},{default:o(()=>[s(_,{modelValue:U.value,"onUpdate:modelValue":r[8]||=e=>U.value=e,dense:``,dark:``,outlined:``,label:n.$t(`schedule.cronExpressionLabel`),hint:n.$t(`schedule.advancedHint`),class:`q-mt-sm`},null,8,[`modelValue`,`label`,`hint`])]),_:1},8,[`label`,`caption`]),p(`div`,qe,[p(`div`,Je,t(n.$t(`schedule.sessionModeTitle`)),1),s(x,{modelValue:K.value,"onUpdate:modelValue":r[9]||=e=>K.value=e,spread:``,"no-caps":``,unelevated:``,"toggle-color":`blue-grey-7`,color:`transparent`,"text-color":`kobo-2`,options:Y.value,class:`session-toggle`},null,8,[`modelValue`,`options`])]),p(`div`,Ye,[p(`div`,null,[p(`div`,k,t(n.$t(`schedule.oneShot`)),1),p(`div`,Xe,t(n.$t(`schedule.oneShotHint`)),1)]),s(oe,{modelValue:q.value,"onUpdate:modelValue":r[10]||=e=>q.value=e,dense:``},null,8,[`modelValue`])]),s(g,{"no-caps":``,unelevated:``,color:`primary`,icon:`add_task`,loading:J.value,disable:!W.value.trim(),label:n.$t(`schedule.addCronBtn`),class:`full-width action-button`,onClick:nt},null,8,[`loading`,`disable`,`label`])]),_:1}))]),_:1})])]))}}),[[`__scopeId`,`data-v-d3a243f6`]]);export{A as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{M as e,dt as t,v as n}from"./reactivity.esm-bundler-tuEvQ47f.js";import{F as r,J as i,L as a,P as o,Y as s,_ as c,d as l,f as u,p as d,r as f,u as p,y as m,z as h}from"./runtime-core.esm-bundler-DOiZcasU.js";import{l as g}from"./QBtn-b_baQtAt.js";import{a as _}from"./i18n-CPFleoLe.js";import{Ct as v,c as y,d as b,i as x}from"./index-BVJWwOvK.js";import{a as S,i as C,n as w}from"./use-tours-CM4E53aB.js";import{t as T}from"./QBadge-rGILsUYl.js";import{t as E}from"./formatters-BZm4POkA.js";import{t as D}from"./QPage-BCDXjfVj.js";import{t as O}from"./DrawerToggleButton-CQVSfKpY.js";import{t as k}from"./TourReplayButton-uCZpvYlj.js";import{n as A,t as j}from"./use-search-index-status-BzsGSHGh.js";var M={class:`search-header`},N={class:`row items-center q-mb-md`},P={class:`text-h5`},ee={"data-tour":`search-input`},F={class:`row items-center q-mt-sm q-gutter-sm`},I={key:0,class:`text-caption text-kobo-3`},L={key:0,class:`text-caption text-kobo-3 q-mt-sm`,role:`status`},R={key:1,class:`text-caption text-negative q-mt-sm`,role:`status`},z={key:2,class:`text-kobo-3 text-caption`},B={key:3,class:`text-negative text-caption`},V={key:4,class:`text-kobo-3 text-caption`},H={key:5,class:`search-results`},U=[`onClick`],W={class:`row items-center q-mb-xs text-caption`},G={class:`text-kobo-2 text-weight-medium`},K={class:`text-kobo-3`},q={class:`search-snippet text-body2 text-kobo-2`},J=S(m({__name:`SearchPage`,setup(m){let S=A();j(()=>S.search(!0));let J=x(),{t:Y}=_(),{timeAgo:X}=E(),{scheduleAutoRun:Z}=w();o(()=>{Z(`search`)});let Q=n(null),$=null;r(()=>{$&&clearTimeout($),S.cancel()});function te(){$&&clearTimeout($),$=setTimeout(()=>{S.search()},250)}i(()=>S.includeArchived,()=>{S.query.trim().length>0&&S.search()});function ne(e){J.push({name:`workspace`,params:{id:e.workspaceId},query:{eventId:e.eventId,...e.sessionId?{session:e.sessionId}:{}}})}function re(e){return e===`user:message`?Y(`search.eventType.userMessage`):e===`agent:output`||e===`agent:event`?Y(`search.eventType.agentOutput`):e}return(n,r)=>(a(),l(D,{class:`q-pa-md search-page`},{default:s(()=>[p(`div`,M,[p(`div`,N,[c(O,{class:`q-mr-sm`}),p(`h2`,P,t(n.$t(`search.title`)),1),c(C),c(k,{"tour-id":`search`})]),p(`div`,ee,[c(v,{ref_key:`inputEl`,ref:Q,modelValue:e(S).query,"onUpdate:modelValue":[r[0]||=t=>e(S).query=t,te],dense:``,dark:``,outlined:``,clearable:``,autofocus:``,placeholder:n.$t(`search.placeholder`),onClear:r[1]||=t=>e(S).clear()},{prepend:s(()=>[c(g,{name:`search`})]),_:1},8,[`modelValue`,`placeholder`])]),p(`div`,F,[c(y,{modelValue:e(S).includeArchived,"onUpdate:modelValue":r[2]||=t=>e(S).includeArchived=t,"data-tour":`search-archived`,label:n.$t(`search.includeArchived`),dense:``,dark:``,color:`primary`,size:`sm`},null,8,[`modelValue`,`label`]),c(C),e(S).results.length>0?(a(),d(`span`,I,t(n.$t(`search.resultCount`,{n:e(S).results.length})),1)):u(``,!0)])]),e(S).indexStatus.state===`building`?(a(),d(`div`,L,t(n.$t(`search.indexing`,{processed:e(S).indexStatus.processed,total:e(S).indexStatus.total})),1)):e(S).indexStatus.state===`error`?(a(),d(`div`,R,t(n.$t(`search.indexUnavailable`)),1)):u(``,!0),c(b,{dark:``,class:`q-my-md`}),e(S).loading?(a(),d(`div`,z,t(n.$t(`search.loading`)),1)):e(S).error?(a(),d(`div`,B,t(n.$t(`search.error`,{message:e(S).error})),1)):e(S).query.trim().length>0&&e(S).results.length===0?(a(),d(`div`,V,t(n.$t(`search.noResults`)),1)):e(S).results.length>0?(a(),d(`div`,H,[(a(!0),d(f,null,h(e(S).results,(r,i)=>(a(),d(`div`,{key:`${r.workspaceId}-${r.timestamp}-${i}`,class:`search-result q-pa-sm q-mb-sm cursor-pointer`,onClick:e=>ne(r)},[p(`div`,W,[p(`span`,G,t(r.workspaceName),1),r.archived?(a(),l(T,{key:0,color:`kobo-3`,class:`q-ml-xs`,label:n.$t(`common.archive`)},null,8,[`label`])):u(``,!0),c(C),c(T,{color:r.type===`user:message`?`blue-grey-7`:`primary`,class:`q-mr-sm`,label:re(r.type)},null,8,[`color`,`label`]),p(`span`,K,t(e(X)(r.timestamp)),1)]),p(`div`,q,t(r.snippet),1)],8,U))),128))])):u(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-2ac4f1d8`]]);export{J as default};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import{M as e,S as t,ct as n,dt as r,g as i,st as a,v as o}from"./reactivity.esm-bundler-tuEvQ47f.js";import{C as s,E as c,F as l,J as u,K as d,L as f,O as p,P as m,S as h,X as g,Y as _,_ as v,b as ee,d as y,f as b,g as x,h as S,j as te,l as C,p as w,r as T,u as E,y as D,z as O}from"./runtime-core.esm-bundler-DOiZcasU.js";import{T as ne,Z as k,b as re,c as ie,ct as ae,ft as oe,l as A,lt as se,mt as ce,nt as le,pt as ue,t as j,tt as de}from"./QBtn-b_baQtAt.js";import{i as fe,l as pe,m as me,o as he,p as ge,r as _e,s as ve}from"./latest-request-7rgsEfKZ.js";import{a as ye,i as be}from"./i18n-CPFleoLe.js";import{t as xe}from"./preload-helper-DjzSQ1t3.js";import{i as Se,n as Ce,t as we}from"./private.use-form-vxvbh_VN.js";import{$ as Te,A as Ee,At as De,B as Oe,Ct as M,G as ke,H as Ae,I as je,Jt as Me,K as Ne,Kt as Pe,L as Fe,M as Ie,Mt as Le,N as Re,Nt as ze,O as Be,P as Ve,Q as He,R as Ue,St as We,V as Ge,Xt as Ke,Yt as qe,Z as Je,Zt as N,a as Ye,c as P,d as Xe,gt as Ze,h as Qe,ht as $e,j as et,jt as tt,l as nt,o as rt,q as it,qt as at,r as ot,s as st,v as ct,z as lt}from"./index-BVJWwOvK.js";import{t as F}from"./QList-Cw2xs69W.js";import{i as I,r as ut,s as L,t as R}from"./QSelect-DUuWu79L.js";import{n as z,t as B}from"./QItemSection-BhGnulVQ.js";import{t as dt}from"./QExpansionItem-DmzCAbka.js";import{a as ft,i as V,n as pt,r as mt}from"./use-tours-CM4E53aB.js";import{t as ht}from"./TouchPan-DKpZbMAf.js";import{t as H}from"./QTooltip-Dhy3hNTO.js";import{t as gt}from"./QChip-Btg1Lp_6.js";import{t as _t}from"./ClosePopup-C1a82pL9.js";import{t as vt}from"./use-is-mobile-DLIZxEo9.js";import{a as yt,c as bt,l as xt,n as St,o as Ct,r as wt,s as Tt,t as Et}from"./permissionModes-BDi77lhg.js";import{t as Dt}from"./QBtnDropdown-D8I04HPE.js";import{n as Ot,r as kt,t as At}from"./custom-sounds-Dfi-grUv.js";import{t as jt}from"./QBanner-CtppfNDn.js";import{t as Mt}from"./project-color-i2bg2TfP.js";import{t as Nt}from"./QPage-BCDXjfVj.js";import{t as Pt}from"./DrawerToggleButton-CQVSfKpY.js";import{t as Ft}from"./TourReplayButton-uCZpvYlj.js";import{n as It,t as Lt}from"./workspace-templates-TOa0yVyr.js";import{t as Rt}from"./workspace-page-layout-Dw9NhZsL.js";var zt=Object.create,Bt=Object.defineProperty,Vt=Object.getOwnPropertyDescriptor,Ht=Object.getOwnPropertyNames,Ut=Object.getPrototypeOf,Wt=Object.prototype.hasOwnProperty,Gt=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),Kt=(e,t)=>{let n={};for(var r in e)Bt(n,r,{get:e[r],enumerable:!0});return t||Bt(n,Symbol.toStringTag,{value:`Module`}),n},U=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Ht(t),a=0,o=i.length,s;a<o;a++)s=i[a],!Wt.call(e,s)&&s!==n&&Bt(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=Vt(t,s))||r.enumerable});return e},qt=(e,t,n)=>(n=e==null?{}:zt(Ut(e)),U(t||!e||!e.__esModule||!Wt.call(e,`default`)?Bt(n,`default`,{value:e,enumerable:!0}):n,e)),Jt=`q-slider__marker-labels`,Yt=e=>({value:e}),Xt=({marker:e})=>s(`div`,{key:e.value,style:e.style,class:e.classes},e.label),Zt=[34,37,40,33,39,38,35,36],Qt={...me,...Se,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:`20px`},trackSize:{type:String,default:`4px`},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:`M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0`}},$t=[`pan`,`update:modelValue`,`change`];function en({updateValue:e,updatePosition:t,getDragging:n,formAttrs:r}){let{props:i,emit:a,slots:c}=ee(),l=re(),u=ge(i,l),d=Ce(r),f=o(!1),p=o(!1),m=o(!1),h=o(!1),_=C(()=>i.vertical?`--v`:`--h`),v=C(()=>`-`+(i.switchLabelSide?`switched`:`standard`)),y=C(()=>i.vertical?i.reverse:i.reverse!==(l.lang.rtl===!0)),b=C(()=>!Number.isFinite(i.innerMin)||i.innerMin<i.min?i.min:i.innerMin),x=C(()=>!Number.isFinite(i.innerMax)||i.innerMax>i.max?i.max:i.innerMax),S=C(()=>!i.disable&&!i.readonly&&b.value<x.value),w=C(()=>{if(i.step===0)return e=>e;let e=(String(i.step).trim().split(`.`)[1]||``).length;return t=>Number.parseFloat(t.toFixed(e))}),T=C(()=>i.step===0?1:i.step),E=C(()=>S.value?i.tabindex||0:-1),D=C(()=>i.max-i.min),O=C(()=>x.value-b.value),ne=C(()=>we(b.value)),ie=C(()=>we(x.value)),ae=C(()=>i.vertical?y.value?`bottom`:`top`:y.value?`right`:`left`),oe=C(()=>i.vertical?`height`:`width`),A=C(()=>i.vertical?`width`:`height`),se=C(()=>i.vertical?`vertical`:`horizontal`),ce=C(()=>`q-slider q-slider${_.value} q-slider--${f.value?``:`in`}active inline no-wrap `+(i.vertical?`row`:`column`)+(i.disable?` disabled`:` q-slider--enabled`+(S.value?` q-slider--editable`:``))+(m.value===`both`?` q-slider--focus`:``)+(i.label||i.labelAlways?` q-slider--label`:``)+(i.labelAlways?` q-slider--label-always`:``)+(u()?` q-slider--dark`:``)+(i.dense?` q-slider--dense q-slider--dense`+_.value:``));function le(e){let t=`q-slider__`+e;return`${t} ${t}${_.value} ${t}${_.value}${v.value}`}function ue(e){let t=`q-slider__`+e;return`${t} ${t}${_.value}`}let j=C(()=>{let e=i.selectionColor||i.color;return`q-slider__selection absolute`+(e===void 0?``:` text-${e}`)}),de=C(()=>ue(`markers`)+` absolute overflow-hidden`),fe=C(()=>ue(`track-container`)),pe=C(()=>le(`pin`)),me=C(()=>le(`label`)),he=C(()=>le(`text-container`)),_e=C(()=>le(`marker-labels-container`)+(i.markerLabelsClass===void 0?``:` ${i.markerLabelsClass}`)),ve=C(()=>`q-slider__track relative-position no-outline`+(i.trackColor===void 0?``:` bg-${i.trackColor}`)),ye=C(()=>{let e={[A.value]:i.trackSize};return i.trackImg!==void 0&&(e.backgroundImage=`url(${i.trackImg}) !important`),e}),be=C(()=>`q-slider__inner absolute`+(i.innerTrackColor===void 0?``:` bg-${i.innerTrackColor}`)),xe=C(()=>{let e=ie.value-ne.value,t={[ae.value]:`${100*ne.value}%`,[oe.value]:e===0?`2px`:`${100*e}%`};return i.innerTrackImg!==void 0&&(t.backgroundImage=`url(${i.innerTrackImg}) !important`),t});function Se(e){let{min:t,max:n,step:r}=i,a=t+e*(n-t);if(r>0){let e=(a-b.value)%r;a+=(Math.abs(e)>=r/2?(e<0?-1:1)*r:0)-e}return a=w.value(a),I(a,b.value,x.value)}function we(e){return D.value===0?0:(e-i.min)/D.value}function Te(e,t){let n=k(e),r=i.vertical?I((n.top-t.top)/t.height,0,1):I((n.left-t.left)/t.width,0,1);return I(y.value?1-r:r,ne.value,ie.value)}let Ee=C(()=>Ke(i.markers)&&i.markers>0?i.markers:T.value),De=C(()=>{let e=[],t=Ee.value,n=i.max,r=Math.max((String(t).trim().split(`.`)[1]||``).length,(String(i.min).trim().split(`.`)[1]||``).length),a=0,o=i.min;do{e.push(o),a++;let n=Number.parseFloat((i.min+a*t).toFixed(r));o=n>o?n:i.min+a*t}while(o<n);return e.push(n),e}),Oe=C(()=>{let e=` ${Jt}${_.value}-`;return`q-slider__marker-labels${e}${i.switchMarkerLabelsSide?`switched`:`standard`}${e}${y.value?`rtl`:`ltr`}`}),M=C(()=>i.markerLabels===!1?null:je(i.markerLabels).map((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:Oe.value+(e.classes===void 0?``:` `+e.classes),style:{...Me(e.value),...e.style}}))),ke=C(()=>({markerList:M.value,markerMap:Ne.value,classes:Oe.value,getStyle:Me})),Ae=C(()=>{let e=O.value===0?`2px`:100*Ee.value/O.value;return{...xe.value,backgroundSize:i.vertical?`2px ${e}%`:`${e}% 2px`}});function je(e){if(e===!1)return null;if(e===!0)return De.value.map(Yt);if(typeof e==`function`)return De.value.map(t=>{let n=e(t);return N(n)?{...n,value:t}:{value:t,label:n}});let t=({value:e})=>e>=i.min&&e<=i.max;return Array.isArray(e)?e.map(e=>N(e)?e:{value:e}).filter(t):Object.keys(e).map(t=>{let n=e[t],r=Number(t);return N(n)?{...n,value:r}:{value:r,label:n}}).filter(t)}function Me(e){return{[ae.value]:`${100*(e-i.min)/D.value}%`}}let Ne=C(()=>{if(i.markerLabels===!1)return null;let e={};return M.value.forEach(t=>{e[t.value]=t}),e});function Pe(){if(c[`marker-label-group`]!==void 0)return c[`marker-label-group`](ke.value);let e=c[`marker-label`]||Xt;return M.value.map(t=>e({marker:t,...ke.value}))}let Fe=C(()=>[[ht,S.value?Ie:void 0,void 0,{[se.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function Ie(r){r.isFinal?(h.value!==void 0&&(t(r.evt),r.touch&&e(!0),h.value=void 0,a(`pan`,`end`)),f.value=!1,m.value=!1):r.isFirst?(h.value=n(r.evt),t(r.evt),e(),f.value=!0,a(`pan`,`start`)):(t(r.evt),e())}function Le(){m.value=!1}function Re(r){t(r,n(r)),e(),p.value=!0,f.value=!0,document.addEventListener(`mouseup`,ze,!0)}function ze(){p.value=!1,f.value=!1,e(!0),Le(),document.removeEventListener(`mouseup`,ze,!0)}function Be(r){t(r,n(r)),e(!0),Le()}function Ve(t){Zt.includes(t.keyCode)&&e(!0)}function He(e){if(i.vertical)return null;let t=l.lang.rtl===i.reverse?e:1-e;return{transform:`translateX(calc(${2*t-1} * ${i.thumbSize} / 2 + ${50-100*t}%))`}}function Ue(e){let t=C(()=>!p.value&&(m.value===e.focusValue||m.value===`both`)?` q-slider--focus`:``),n=C(()=>`q-slider__thumb q-slider__thumb${_.value} q-slider__thumb${_.value}-${y.value?`rtl`:`ltr`} absolute non-selectable`+t.value+(e.thumbColor.value===void 0?``:` text-${e.thumbColor.value}`)),r=C(()=>({width:i.thumbSize,height:i.thumbSize,[ae.value]:`${100*e.ratio.value}%`,zIndex:m.value===e.focusValue?2:void 0})),a=C(()=>e.labelColor.value===void 0?``:` text-${e.labelColor.value}`),o=C(()=>He(e.ratio.value)),c=C(()=>`q-slider__text`+(e.labelTextColor.value===void 0?``:` text-${e.labelTextColor.value}`));return()=>{let t=[s(`svg`,{class:`q-slider__thumb-shape absolute-full`,viewBox:`0 0 20 20`,"aria-hidden":`true`},[s(`path`,{d:i.thumbPath})]),s(`div`,{class:`q-slider__focus-ring fit`})];return(i.label||i.labelAlways)&&t.push(s(`div`,{class:pe.value+` absolute fit no-pointer-events`+a.value},[s(`div`,{class:me.value,style:{minWidth:i.thumbSize}},[s(`div`,{class:he.value,style:o.value},[s(`span`,{class:c.value},e.label.value)])])])),e.injectFormInput!==!1&&i.name!==void 0&&!i.disable&&d(t,`push`),s(`div`,{class:n.value,style:r.value,...e.getNodeData()},t)}}function We(e,t,n,r){let a=[];i.innerTrackColor!==`transparent`&&a.push(s(`div`,{key:`inner`,class:be.value,style:xe.value})),i.selectionColor!==`transparent`&&a.push(s(`div`,{key:`selection`,class:j.value,style:e.value})),i.markers!==!1&&a.push(s(`div`,{key:`marker`,class:de.value,style:Ae.value})),r(a);let o=[g(s(`div`,{key:`trackC`,class:fe.value,tabindex:t.value,...n.value},[s(`div`,{class:ve.value,style:ye.value},a)]),Fe.value)];return i.markerLabels!==!1&&o[i.switchMarkerLabelsSide?`unshift`:`push`](s(`div`,{key:`markerL`,class:_e.value},Pe())),o}return te(()=>{document.removeEventListener(`mouseup`,ze,!0)}),{state:{active:f,focus:m,preventFocus:p,dragging:h,editable:S,classes:ce,tabindex:E,orientation:se,roundValueFn:w,keyStep:T,trackLen:D,innerMin:b,innerMinRatio:ne,innerMax:x,innerMaxRatio:ie,positionProp:ae,sizeProp:oe,isReversed:y},methods:{onActivate:Re,onClick:Be,onBlur:Le,onKeyup:Ve,getContent:We,getThumbRenderFn:Ue,convertRatioToModel:Se,convertModelToRatio:we,getDraggingRatio:Te}}}var tn=()=>({}),nn=le({name:`QSlider`,props:{...Qt,modelValue:{required:!0,default:null,validator:e=>typeof e==`number`||e===null},labelValue:[String,Number]},emits:$t,inheritAttrs:!1,setup(e,{emit:n,attrs:r}){let i=re(),a=De(),{state:c,methods:l}=en({updateValue:te,updatePosition:T,getDragging:w,formAttrs:we(e)}),d=t(null),f=o(0),p=o(0),m=null,h=null;function g(){h=null,p.value=e.modelValue===null?c.innerMin.value:I(e.modelValue,c.innerMin.value,c.innerMax.value)}u(()=>`${e.modelValue}|${c.innerMin.value}|${c.innerMax.value}`,g,{immediate:!0});let _=C(()=>l.convertModelToRatio(p.value)),v=C(()=>c.active.value?f.value:_.value),ee=C(()=>{let t={[c.positionProp.value]:`${100*c.innerMinRatio.value}%`,[c.sizeProp.value]:`${100*(v.value-c.innerMinRatio.value)}%`};return e.selectionImg!==void 0&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t}),y=l.getThumbRenderFn({focusValue:!0,getNodeData:tn,ratio:v,label:C(()=>e.labelValue===void 0?p.value:e.labelValue),thumbColor:C(()=>e.thumbColor||e.color),labelColor:C(()=>e.labelColor),labelTextColor:C(()=>e.labelTextColor)}),b=C(()=>c.editable.value?{onClick:l.onClick,onMousedown:l.onActivate,onFocus:E,onBlur:l.onBlur,onKeydown:D,onKeyup:l.onKeyup}:{}),x=C(()=>{let t={role:`slider`,"aria-orientation":c.orientation.value,"aria-valuemin":c.innerMin.value,"aria-valuemax":c.innerMax.value,"aria-valuenow":e.modelValue===null?c.innerMin.value:e.modelValue,"data-step":e.step};return e.labelValue===void 0?e.modelValue===null&&(t[`aria-valuetext`]=i.lang.label.noValue):t[`aria-valuetext`]=e.labelValue,e.disable?t[`aria-disabled`]=`true`:e.readonly&&(t[`aria-readonly`]=`true`),t}),S=C(()=>({...x.value,...a.attributes.value,...b.value}));function te(t){p.value!==e.modelValue&&p.value!==h&&(h=p.value,n(`update:modelValue`,p.value)),t&&(m!==null&&m!==p.value&&n(`change`,p.value),m=null)}function w(){return m=p.value,d.value.getBoundingClientRect()}function T(t,n=c.dragging.value){let r=l.getDraggingRatio(t,n);p.value=l.convertRatioToModel(r),f.value=!e.snap||e.step===0?r:l.convertModelToRatio(p.value)}function E(){c.focus.value=!0}function D(t){if(!Zt.includes(t.keyCode))return;if(de(t),m===null&&(m=p.value),t.keyCode===36||t.keyCode===35){p.value=t.keyCode===36?c.innerMin.value:c.innerMax.value,te();return}let n=([34,33].includes(t.keyCode)?10:1)*c.keyStep.value,r=([34,37,40].includes(t.keyCode)?-1:1)*(c.isReversed.value?-1:1)*(e.vertical?-1:1)*n;p.value=I(c.roundValueFn.value(p.value+r),c.innerMin.value,c.innerMax.value),te()}return()=>{let t=l.getContent(ee,c.tabindex,S,e=>{e.push(y())});return s(`div`,{ref:d,class:[c.classes.value+(e.modelValue===null?` q-slider--no-value`:``),r.class],style:r.style,...a.listeners.value},t)}}});function W(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let n=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:typeof e.constructor==`function`?e.prototype!==void 0&&typeof e.prototype.constructor==`function`?e:new e.constructor:Object.create(null);if(typeof e.constructor==`function`&&typeof e.valueOf==`function`){let n=e.valueOf();if(Object(n)!==n){let r=new e.constructor(n);return t.set(e,r),r}}return t.set(e,n),e instanceof Set?e.forEach(e=>{n.add(W(e,t))}):e instanceof Map&&e.forEach((e,r)=>{n.set(r,W(e,t))}),Object.assign(n,...Object.keys(e).map(n=>({[n]:W(e[n],t)})))}var rn=le({name:`QPopupEdit`,props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:`primary`},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:[`update:modelValue`,`save`,`cancel`,`beforeShow`,`show`,`beforeHide`,`hide`],setup(e,{slots:n,emit:r}){let{proxy:i}=ee(),a=re(),c=t(null),l=o(``),u=o(``),d=!1,f=C(()=>ae({initialValue:l.value,validate:e.validate,set:m,cancel:h,updatePosition:g},`value`,()=>u.value,e=>{u.value=e}));function m(){e.validate(u.value)&&(_()&&(r(`save`,u.value,l.value),r(`update:modelValue`,u.value)),v())}function h(){_()&&r(`cancel`,u.value,l.value),v()}function g(){p(()=>{c.value.updatePosition()})}function _(){return!qe(u.value,l.value)}function v(){d=!0,c.value.hide()}function y(){d=!1,l.value=W(e.modelValue),u.value=W(e.modelValue),r(`beforeShow`)}function b(){r(`show`)}function x(){!d&&_()&&(e.autoSave&&e.validate(u.value)?(r(`save`,u.value,l.value),r(`update:modelValue`,u.value)):r(`cancel`,u.value,l.value)),r(`beforeHide`)}function S(){r(`hide`)}function te(){let t=n.default===void 0?[]:[n.default(f.value)].flat();return e.title&&t.unshift(s(`div`,{class:`q-dialog__title q-mt-sm q-mb-sm`},e.title)),e.buttons&&t.push(s(`div`,{class:`q-popup-edit__buttons row justify-center no-wrap`},[s(j,{flat:!0,color:e.color,label:e.labelCancel||a.lang.label.cancel,onClick:h}),s(j,{flat:!0,color:e.color,label:e.labelSet||a.lang.label.set,onClick:m})])),t}return Object.assign(i,{set:m,cancel:h,show(e){c.value?.show(e)},hide(e){c.value?.hide(e)},updatePosition:g}),()=>{if(!e.disable)return s(ut,{ref:c,class:`q-popup-edit`,cover:e.cover,onBeforeShow:y,onShow:b,onBeforeHide:x,onHide:S,onEscapeKey:h},te)}}}),an={class:`custom-sounds`,"data-test":`custom-sounds`},on={class:`text-subtitle2`},sn={class:`text-kobo-3 text-caption q-mb-sm`},cn={class:`row items-center q-gutter-sm`},ln=[`accept`,`disabled`],un={key:0,class:`text-kobo-3 text-caption`},dn={key:0,class:`text-negative text-caption q-mt-sm q-mb-none`,role:`alert`},fn={class:`row items-center no-wrap`},pn=D({__name:`CustomSoundManager`,setup(t){let{t:n}=ye(),i=At(),a=o(null),s=o(``),c=C(()=>i.sounds.length>=20),l=[`type`,`size`,`count`];function u(e){return n(`settings.customSoundsError.${e}`,{count:20,size:He/1024/1024})}function d(e){return e instanceof _e?e.status===413?u(`size`):l.includes(e.code)?u(e.code):n(`settings.customSoundsError.failed`):n(`settings.customSoundsError.failed`)}async function p(e){let t=e.target,n=t.files?.[0];if(t.value=``,n){if(s.value=``,n.size>2097152){s.value=u(`size`);return}if(!Te(n.name)){s.value=u(`type`);return}try{await i.uploadSound(n)}catch(e){s.value=d(e)}}}async function h(e){s.value=``;try{await i.removeSound(e)}catch(e){s.value=d(e)}}function g(e){ct(e,1)}return m(()=>{i.loaded||i.fetchSounds()}),(t,n)=>(f(),w(`div`,an,[E(`div`,on,r(t.$t(`settings.customSounds`)),1),E(`div`,sn,r(t.$t(`settings.customSoundsHint`,{count:e(20),size:e(He)/1024/1024})),1),E(`div`,cn,[E(`input`,{ref_key:`fileInput`,ref:a,class:`hidden`,type:`file`,"data-test":`custom-sound-input`,accept:e(Je),disabled:e(i).busy||c.value,onChange:p},null,40,ln),v(j,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`library_music`,label:t.$t(`settings.customSoundsImport`),loading:e(i).busy,disable:c.value,"data-test":`custom-sound-import`,onClick:n[0]||=e=>a.value?.click()},null,8,[`label`,`loading`,`disable`]),c.value?(f(),w(`span`,un,r(t.$t(`settings.customSoundsFull`,{count:e(20)})),1)):b(``,!0)]),s.value?(f(),w(`p`,dn,r(s.value),1)):b(``,!0),e(i).sounds.length>0?(f(),y(F,{key:1,bordered:``,separator:``,class:`rounded-borders q-mt-sm`},{default:_(()=>[(f(!0),w(T,null,O(e(i).sounds,n=>(f(),y(z,{key:n.id},{default:_(()=>[v(B,null,{default:_(()=>[v(L,{class:`ellipsis`,title:n.name},{default:_(()=>[x(r(n.name),1)]),_:2},1032,[`title`]),v(L,{caption:``},{default:_(()=>[x(r(Math.max(1,Math.round(n.size/1024)))+` KB`,1)]),_:2},1024)]),_:2},1024),v(B,{side:``},{default:_(()=>[E(`div`,fn,[v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`play_arrow`,color:`primary`,"aria-label":t.$t(`settings.notificationSoundPreview`),onClick:e=>g(n.reference)},null,8,[`aria-label`,`onClick`]),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`kobo-3`,disable:e(i).busy,"aria-label":t.$t(`common.delete`),onClick:e=>h(n.id)},null,8,[`disable`,`aria-label`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):b(``,!0)]))}}),mn={class:`q-pa-sm q-gutter-sm`},hn={class:`text-caption`},gn={key:0},_n={key:1,role:`alert`,class:`text-negative`},vn={key:2,role:`status`},yn={class:`row q-gutter-sm`},bn=D({__name:`IntegrationConnectionSettings`,props:c({integration:{}},{modelValue:{default:()=>({command:``,args:``,environment:``})},modelModifiers:{},connectionStatus:{default:()=>i({configured:!1})},connectionStatusModifiers:{}}),emits:[`update:modelValue`,`update:connectionStatus`],setup(e){let{t}=ye(),n=e,i=d(e,`modelValue`),a=C(()=>({command:`npx`,args:JSON.stringify([`-y`,n.integration===`notion`?`@notionhq/notion-mcp-server`:t(`integration.packageExample`)]),environment:JSON.stringify(n.integration===`notion`?{NOTION_TOKEN:t(`integration.tokenExample`)}:{[t(`integration.variableExample`)]:t(`integration.valueExample`)})})),s=d(e,`connectionStatus`),c=C(()=>s.value.configured),l=o(!1),u=o(!1),p=o(!1),h=o(!1);function g(e,t){i.value={...i.value,[e]:String(t??``)}}async function ee(){u.value=!0,p.value=!1;try{s.value.configured=(await fe(`/api/integrations/${n.integration}`)).configured,l.value=!0}catch{p.value=!0}finally{u.value=!1}}async function x(e){if(!l.value||u.value)return;let t=i.value;u.value=!0,p.value=!1,h.value=!1;try{let r=await fe(`/api/integrations/${n.integration}`,{method:`PUT`,body:e===null?`null`:e});s.value.configured=r.configured,Object.assign(t,{command:``,args:``,environment:``}),i.value===t&&(i.value={...t}),h.value=!0}catch{p.value=!0}finally{u.value=!1}}async function S(){try{await x({command:i.value.command,args:JSON.parse(i.value.args.trim()||`[]`),env:JSON.parse(i.value.environment.trim()||`{}`)})}catch{p.value=!0,h.value=!1}}return m(ee),(e,t)=>(f(),y(dt,{label:e.$t(`integration.direct`),class:`q-mb-md`},{default:_(()=>[E(`div`,mn,[E(`p`,null,r(e.$t(`integration.directHint`)),1),E(`p`,hn,r(e.$t(`integration.agentScope`)),1),c.value?(f(),w(`p`,gn,r(e.$t(`integration.stored`)),1)):b(``,!0),v(M,{"model-value":i.value.command,outlined:``,dense:``,label:e.$t(`integration.command`),placeholder:e.$t(`integration.example`,{example:a.value.command}),"stack-label":``,disable:u.value,autocomplete:`off`,"onUpdate:modelValue":t[0]||=e=>g(`command`,e)},null,8,[`model-value`,`label`,`placeholder`,`disable`]),v(M,{"model-value":i.value.args,outlined:``,dense:``,type:`textarea`,label:e.$t(`integration.args`),placeholder:e.$t(`integration.example`,{example:a.value.args}),"stack-label":``,disable:u.value,autocomplete:`off`,spellcheck:`false`,"onUpdate:modelValue":t[1]||=e=>g(`args`,e)},null,8,[`model-value`,`label`,`placeholder`,`disable`]),v(M,{"model-value":i.value.environment,outlined:``,dense:``,type:`textarea`,label:e.$t(`integration.environment`),placeholder:e.$t(`integration.example`,{example:a.value.environment}),"stack-label":``,disable:u.value,autocomplete:`off`,spellcheck:`false`,"onUpdate:modelValue":t[2]||=e=>g(`environment`,e)},null,8,[`model-value`,`label`,`placeholder`,`disable`]),p.value?(f(),w(`p`,_n,r(e.$t(`integration.failed`)),1)):b(``,!0),h.value?(f(),w(`p`,vn,r(e.$t(`integration.saved`)),1)):b(``,!0),E(`div`,yn,[v(j,{outline:``,"no-caps":``,label:e.$t(`integration.save`),disable:u.value||!l.value||!i.value.command.trim(),onClick:S},null,8,[`label`,`disable`]),v(j,{flat:``,"no-caps":``,label:e.$t(`integration.clear`),disable:u.value||!l.value||!c.value,onClick:t[3]||=e=>x(null)},null,8,[`label`,`disable`]),l.value?b(``,!0):(f(),y(j,{key:0,flat:``,"no-caps":``,label:e.$t(`setup.check`),loading:u.value,onClick:ee},null,8,[`label`,`loading`]))])])]),_:1},8,[`label`]))}});function xn(e){let t=document.createElement(`textarea`);t.value=e,t.contentEditable=`true`,t.style.position=`fixed`;let n=()=>{};Le(n),document.body.append(t),t.focus(),t.select();let r=document.execCommand(`copy`);return t.remove(),ze(n),r}function Sn(e){if(navigator.clipboard)return navigator.clipboard.writeText(e);let t=xn(e);return t?Promise.resolve(!0):Promise.reject(t)}function G(e,t){let n=[{url:e.localUrl,kind:`local`,requiresToken:e.localRequiresToken}];if(!e.networkEnabled)return n;if(n.push(...e.lanUrls.map(e=>({url:e,kind:`remote`,requiresToken:!0}))),e.behindProxy)try{let r=new URL(t);if([`http:`,`https:`].includes(r.protocol)&&(!e.proxyHostname||r.hostname.replace(/^\[|\]$/g,``)===e.proxyHostname)){let e=`${r.origin}/api/mcp`;n.some(t=>t.url===e)||n.push({url:e,kind:`proxy`,requiresToken:!0})}}catch{}return n}function Cn(e,t,n,r){let i=n.trim()?Qe(n):``,a=r||`<KOBO_NETWORK_TOKEN>`;if(t===`stdio`){if(!e.stdio)throw Error(`MCP stdio entrypoint unavailable`);return JSON.stringify({mcpServers:{kobo:{...e.stdio,env:{...e.stdio.env,...i?{KOBO_MCP_CLIENT_NAME:i}:{},...e.localRequiresToken?{KOBO_NETWORK_TOKEN:a}:{}}}}},null,2)}let o={...i?{"X-Kobo-Client-Name":encodeURIComponent(i),"X-Kobo-Client-Name-Encoding":`uri`}:{},...t.requiresToken?{"X-Kobo-Token":a}:{}};return JSON.stringify({mcpServers:{kobo:{url:t.url,...Object.keys(o).length?{headers:o}:{}}}},null,2)}var wn={"data-tour":`settings-mcp`,class:`q-mt-lg`},Tn={class:`text-subtitle2 q-mb-sm`},En={class:`text-caption text-kobo-3`},Dn={key:0,class:`text-caption text-kobo-3`},On={key:0,class:`row items-center q-mt-sm`},kn={class:`mcp-url col`},An={class:`mcp-config q-pa-sm`},K={class:`text-caption text-kobo-3`},jn={class:`row q-gutter-sm`},Mn={key:1,class:`text-caption text-kobo-3 q-mt-sm`},Nn={key:2,class:`text-caption text-kobo-3 q-mt-sm`},Pn=ft(D({__name:`McpConnectionSettings`,props:{token:{},networkEnabled:{type:Boolean},behindProxy:{type:Boolean}},setup(t){let n=t,{t:i}=ye(),a=re(),s=o(null),c=o(!1),l=o(``),d=o(``),p=C(()=>s.value?G(s.value,window.location.origin):[]),m=C(()=>[...p.value.map(e=>({label:`${i(`settings.mcp.${e.kind}`)} — ${e.url}`,value:e.url})),...s.value?.stdio?[{label:i(`settings.mcp.stdio`),value:`stdio`}]:[]]),h=C(()=>d.value===`stdio`&&s.value?.stdio?`stdio`:p.value.find(e=>e.url===d.value)),g=C(()=>s.value&&h.value?Cn(s.value,h.value,l.value):``),ee=C(()=>h.value===`stdio`?s.value?.localRequiresToken:h.value?.requiresToken);u(()=>[n.networkEnabled,n.behindProxy],async(e,t,n)=>{let r=new AbortController;n(()=>r.abort());try{let e=await fe(`/api/settings/mcp`,{signal:r.signal});if(r.signal.aborted)return;s.value=e,c.value=!1,m.value.some(e=>e.value===d.value)||(d.value=s.value.localUrl)}catch{if(r.signal.aborted)return;c.value=!0}},{immediate:!0});async function S(e){try{await Sn(e),a.notify({type:`positive`,message:i(`settings.network.copied`)})}catch{a.notify({type:`negative`,message:i(`settings.mcp.copyFailed`)})}}function te(){s.value&&h.value&&n.token&&n.networkEnabled&&S(Cn(s.value,h.value,l.value,n.token))}return(n,a)=>(f(),w(`section`,wn,[E(`div`,Tn,r(e(i)(`settings.mcp.title`)),1),E(`p`,En,r(e(i)(`settings.mcp.hint`)),1),c.value?(f(),y(jt,{key:0,dense:``,class:`bg-negative text-white`},{default:_(()=>[x(r(e(i)(`settings.network.loadFailed`)),1)]),_:1})):s.value?(f(),w(T,{key:1},[t.networkEnabled?b(``,!0):(f(),w(`p`,Dn,r(e(i)(`settings.mcp.remoteDisabled`)),1)),v(M,{modelValue:l.value,"onUpdate:modelValue":a[0]||=e=>l.value=e,label:e(i)(`settings.mcp.clientName`),maxlength:`120`,outlined:``,dense:``,dark:``,class:`q-mb-md`},null,8,[`modelValue`,`label`]),v(R,{modelValue:d.value,"onUpdate:modelValue":a[1]||=e=>d.value=e,options:m.value,"emit-value":``,"map-options":``,label:e(i)(`settings.mcp.connection`),outlined:``,dense:``,dark:``},null,8,[`modelValue`,`options`,`label`]),h.value?(f(),w(T,{key:1},[h.value===`stdio`?b(``,!0):(f(),w(`div`,On,[E(`code`,kn,r(h.value.url),1),v(j,{flat:``,dense:``,icon:`content_copy`,title:e(i)(`settings.mcp.copyUrl`),onClick:a[2]||=e=>S(h.value.url)},null,8,[`title`])])),E(`pre`,An,r(g.value),1),E(`p`,K,r(e(i)(`settings.mcp.genericFormat`)),1),E(`div`,jn,[v(j,{outline:``,dense:``,"no-caps":``,icon:`content_copy`,label:e(i)(`settings.mcp.copyConfig`),onClick:a[3]||=e=>S(g.value)},null,8,[`label`]),ee.value?(f(),y(j,{key:0,outline:``,dense:``,"no-caps":``,disable:!t.token||!t.networkEnabled,label:e(i)(`settings.mcp.copyWithToken`),onClick:te},null,8,[`disable`,`label`])):b(``,!0)]),ee.value&&!t.token?(f(),w(`p`,Mn,r(e(i)(`settings.mcp.tokenUnavailable`)),1)):b(``,!0)],64)):b(``,!0),s.value.stdio?b(``,!0):(f(),w(`p`,Nn,r(e(i)(`settings.mcp.stdioUnavailable`)),1))],64)):(f(),y(ne,{key:2}))]))}}),[[`__scopeId`,`data-v-2ac25d1e`]]),Fn={class:`notification-sounds-grid q-mt-md`},In={class:`text-subtitle2`},Ln={class:`text-kobo-3 text-caption q-mb-sm`},q={class:`row items-center q-gutter-sm`},J={class:`row items-center q-gutter-sm q-mt-sm`},Rn={class:`text-kobo-2 text-caption volume-label`},Y={class:`text-kobo-2 text-caption volume-value`},zn=ft(D({__name:`PrNotificationSoundSettings`,props:{modelValue:{},generalSound:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let i=t,a=n,{t:o}=ye(),s=C(()=>[{soundKey:`audioPrCiFailedSound`,enabledKey:`audioPrCiFailedEnabled`,volumeKey:`audioPrCiFailedVolume`,title:o(`settings.prCiFailedSound`),description:o(`settings.prCiFailedSoundHint`)},{soundKey:`audioPrCiRecoveredSound`,enabledKey:`audioPrCiRecoveredEnabled`,volumeKey:`audioPrCiRecoveredVolume`,title:o(`settings.prCiRecoveredSound`),description:o(`settings.prCiRecoveredSoundHint`)},{soundKey:`audioPrChangesRequestedSound`,enabledKey:`audioPrChangesRequestedEnabled`,volumeKey:`audioPrChangesRequestedVolume`,title:o(`settings.prChangesRequestedSound`),description:o(`settings.prChangesRequestedSoundHint`)},{soundKey:`audioPrApprovedSound`,enabledKey:`audioPrApprovedEnabled`,volumeKey:`audioPrApprovedVolume`,title:o(`settings.prApprovedSound`),description:o(`settings.prApprovedSoundHint`)},{soundKey:`audioPrMergeConflictSound`,enabledKey:`audioPrMergeConflictEnabled`,volumeKey:`audioPrMergeConflictVolume`,title:o(`settings.prMergeConflictSound`),description:o(`settings.prMergeConflictSoundHint`)},{soundKey:`audioPrReadyToMergeSound`,enabledKey:`audioPrReadyToMergeEnabled`,volumeKey:`audioPrReadyToMergeVolume`,title:o(`settings.prReadyToMergeSound`),description:o(`settings.prReadyToMergeSoundHint`)},{soundKey:`audioPrMergedSound`,enabledKey:`audioPrMergedEnabled`,volumeKey:`audioPrMergedVolume`,title:o(`settings.prMergedSound`),description:o(`settings.prMergedSoundHint`)}]),c=At(),l=C(()=>[{label:o(`settings.soundGeneral`),value:lt},...Oe.map(e=>({label:o(e.labelKey),value:e.id})),...c.options]);function u(e,t){a(`update:modelValue`,{...i.modelValue,[e]:t})}function d(e){let t=Ne(i.modelValue[e.soundKey]);t!==null&&ct(t??i.generalSound,i.modelValue[e.volumeKey])}return(n,i)=>(f(),w(`div`,Fn,[(f(!0),w(T,null,O(s.value,n=>(f(),w(`div`,{key:n.soundKey,class:`notification-sound-card q-pa-md rounded-borders`},[E(`div`,In,r(n.title),1),E(`div`,Ln,r(n.description),1),v(P,{"model-value":t.modelValue[n.enabledKey],label:e(o)(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`,"onUpdate:modelValue":e=>u(n.enabledKey,!!e)},null,8,[`model-value`,`label`,`onUpdate:modelValue`]),E(`div`,q,[v(R,{"model-value":t.modelValue[n.soundKey],options:l.value,label:n.title,disable:!t.modelValue[n.enabledKey],dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`,"onUpdate:modelValue":e=>u(n.soundKey,String(e))},null,8,[`model-value`,`options`,`label`,`disable`,`onUpdate:modelValue`]),v(j,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:e(o)(`settings.notificationSoundPreview`),disable:!t.modelValue[n.enabledKey],onClick:e=>d(n)},null,8,[`label`,`disable`,`onClick`])]),E(`div`,J,[E(`div`,Rn,r(e(o)(`settings.notificationVolume`)),1),v(nn,{"model-value":t.modelValue[n.volumeKey],min:0,max:1,step:.05,disable:!t.modelValue[n.enabledKey],"aria-label":e(o)(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`,"onUpdate:modelValue":e=>u(n.volumeKey,Number(e))},null,8,[`model-value`,`disable`,`aria-label`,`onUpdate:modelValue`]),E(`div`,Y,r(Math.round(t.modelValue[n.volumeKey]*100))+`% `,1)])]))),128))]))}}),[[`__scopeId`,`data-v-dbeaedac`]]),Bn=ft(D({__name:`SettingsNavList`,props:{navItems:{},activeTab:{}},emits:[`select`],setup(e,{emit:t}){let n=t;return(t,i)=>(f(),y(F,{dense:``,class:`settings-nav__list`},{default:_(()=>[(f(!0),w(T,null,O(e.navItems,t=>g((f(),y(z,{key:t.value,clickable:``,"data-tour":`settings-nav-${t.value}`,class:a([`settings-nav__item`,{"settings-nav__item--active":e.activeTab===t.value}]),onClick:e=>n(`select`,t.value)},{default:_(()=>[v(B,{avatar:``,class:`settings-nav__icon`},{default:_(()=>[v(A,{name:t.icon,size:`16px`},null,8,[`name`])]),_:2},1024),v(B,{class:`settings-nav__label`},{default:_(()=>[x(r(t.label),1)]),_:2},1024)]),_:2},1032,[`data-tour`,`class`,`onClick`])),[[ie,!1]])),128))]),_:1}))}}),[[`__scopeId`,`data-v-fac6b946`]]),Vn={class:`whip-shortcut-recorder`},Hn={class:`text-caption text-kobo-2 q-mb-xs`},Un={class:`row items-center no-wrap q-gutter-xs`},Wn={"data-testid":`whip-shortcut-value`},Gn={key:0,role:`status`,"aria-live":`polite`,class:`q-sr-only`},Kn={key:1,role:`alert`,class:`text-negative text-caption q-mt-xs`},qn=ft(D({__name:`WhipShortcutRecorder`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let i=t,a=n,{t:s}=ye(),c=Re(),l=o(!1),u=o(``),d=C(()=>l.value?s(`settings.whipShortcutRecording`):Ve(i.modelValue,c)),p=C(()=>l.value?s(`settings.whipShortcutRecordingLabel`):s(`settings.whipShortcutButtonLabel`,{shortcut:d.value}));function m(){l.value&&(l.value=!1,window.removeEventListener(`keydown`,h,!0))}function h(e){e.preventDefault(),e.stopPropagation();let t=Ie(e,c);if(t.status!==`pending`){if(t.status===`reserved`){u.value=s(`settings.whipShortcutReserved`);return}u.value=``,t.status===`accepted`&&a(`update:modelValue`,t.shortcut),m()}}function g(){l.value||(u.value=``,l.value=!0,window.addEventListener(`keydown`,h,!0))}function ee(){m(),u.value=``,a(`update:modelValue`,je)}return te(m),(t,n)=>(f(),w(`div`,Vn,[E(`div`,Hn,r(e(s)(`settings.whipShortcut`)),1),E(`div`,Un,[v(j,{"data-testid":`whip-shortcut-recorder`,dense:``,"no-caps":``,outline:``,color:`primary`,"aria-label":p.value,"aria-pressed":l.value,onClick:g},{default:_(()=>[E(`span`,Wn,r(d.value),1),v(H,null,{default:_(()=>[x(r(e(s)(`settings.whipShortcutHint`)),1)]),_:1})]),_:1},8,[`aria-label`,`aria-pressed`]),v(j,{"data-testid":`whip-shortcut-reset`,dense:``,flat:``,round:``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,"aria-label":e(s)(`settings.whipShortcutReset`),onClick:ee},{default:_(()=>[v(H,null,{default:_(()=>[x(r(e(s)(`settings.whipShortcutReset`)),1)]),_:1})]),_:1},8,[`aria-label`])]),l.value?(f(),w(`div`,Gn,r(e(s)(`settings.whipShortcutRecording`)),1)):b(``,!0),u.value?(f(),w(`div`,Kn,r(u.value),1)):b(``,!0)]))}}),[[`__scopeId`,`data-v-d8618bd9`]]);function Jn(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Yn(e,t){if(e===t)return!0;if(Array.isArray(e)||Array.isArray(t)){if(!Array.isArray(e)||!Array.isArray(t)||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Yn(e[n],t[n]))return!1;return!0}return Jn(e)&&Jn(t)?Xn(e,t):!1}function Xn(e,t){let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(!Object.hasOwn(t,r)||!Yn(e[r],t[r]))return!1;return!0}function Zn(e){if(Array.isArray(e))return e.map(Zn);if(e instanceof Date)return new Date(e.getTime());if(typeof e==`object`&&e){let t={};for(let[n,r]of Object.entries(e))t[n]=Zn(r);return t}return e}function Qn(e){return Zn(e)}function $n(e){return e?{disabled:!1,hintKey:null}:{disabled:!0,hintKey:`settings.whipVolumeMasterAudioDisabled`}}var er={key:0,class:`settings-load-error`},tr={class:`column`},nr={class:`settings-load-error__title`},rr={class:`settings-load-error__detail`},ir={class:`settings-load-error__hint`},ar={class:`settings-layout`},or={key:0,class:`settings-nav`},sr={class:`settings-nav__title`},cr={class:`settings-nav`},lr={class:`settings-nav__title`},ur={class:`settings-content`},dr={class:`settings-content__header`},fr={class:`settings-content__title`},pr={class:`text-caption text-kobo-3 q-mb-md`},mr={class:`settings-panels`},hr={class:`settings-global-wrap`},gr={key:0,"data-tour":`settings-card-general`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},_r={class:`text-subtitle2 q-mb-sm`},vr={key:1,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},yr={class:`text-subtitle2 q-mb-sm`},br={class:`text-caption text-kobo-3 q-mt-xs`},xr={key:2,"data-tour":`settings-card-skills`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Sr={class:`text-subtitle2 q-mb-sm`},Cr={class:`text-caption text-kobo-3 q-mt-xs`},wr={key:3,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Tr={class:`text-subtitle2 q-mb-sm`},Er={class:`text-caption text-kobo-3 q-mb-xs q-mt-sm`},Dr={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},Or={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},kr={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},Ar={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},jr={key:4,"data-tour":`settings-card-agents`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Mr={class:`text-subtitle2 q-mb-sm`},Nr={class:`text-subtitle2 q-mb-sm q-mt-md`},Pr={class:`text-subtitle2 q-mb-sm q-mt-md`},Fr={class:`text-caption text-kobo-3 q-mb-sm`},Ir={class:`text-subtitle2 q-mb-sm q-mt-md`},Lr={key:5,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Rr={class:`text-subtitle2 q-mb-sm`},zr={class:`row items-center q-gutter-lg`},Br={key:6,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Vr={class:`text-subtitle2 q-mb-xs`},Hr={class:`text-kobo-3 text-caption q-mb-md`},Ur={key:0,class:`column q-gutter-sm q-mt-md`},Wr={class:`row items-center q-gutter-sm`},Gr={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},Kr={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},qr={key:0,class:`text-kobo-3 text-caption`},Jr={key:7,"data-tour":`settings-card-notifications`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Yr={class:`text-subtitle2 q-mb-sm`},Xr={class:`text-kobo-3 text-caption q-mb-md`},Zr={class:`notification-sounds-grid q-mt-md`},Qr={class:`notification-sound-card q-pa-md rounded-borders`},$r={class:`text-subtitle2`},ei={class:`text-kobo-3 text-caption q-mb-sm`},ti={class:`column q-gutter-xs q-mb-sm`},ni={class:`row items-center q-gutter-sm q-mb-sm`},ri={class:`row items-center q-gutter-sm`},ii={class:`row items-center q-gutter-sm q-mt-sm`},ai={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},oi={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},si={class:`notification-sound-card q-pa-md rounded-borders`},ci={class:`text-subtitle2`},li={class:`text-kobo-3 text-caption q-mb-sm`},ui={class:`row items-center q-gutter-sm`},di={class:`row items-center q-gutter-sm q-mt-sm`},fi={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},pi={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},mi={class:`notification-sound-card q-pa-md rounded-borders`},hi={class:`text-subtitle2`},gi={class:`text-kobo-3 text-caption q-mb-sm`},_i={class:`row items-center q-gutter-sm`},vi={class:`row items-center q-gutter-sm q-mt-sm`},yi={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},bi={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},xi={class:`notification-sound-card q-pa-md rounded-borders`},Si={class:`text-subtitle2`},Ci={class:`text-kobo-3 text-caption q-mb-sm`},wi={class:`row items-center q-gutter-sm`},Ti={class:`row items-center q-gutter-sm q-mt-sm`},Ei={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},Di={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Oi={key:8,"data-tour":`settings-card-voice`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ki={class:`row items-center q-mb-sm`},Ai={class:`text-subtitle2`},ji={class:`column q-gutter-xs`},Mi={class:`row items-center q-gutter-sm`},Ni={class:`row items-center q-gutter-sm`},Pi={class:`q-pa-sm text-caption text-kobo-2`},Fi={class:`q-mb-sm`},Ii={class:`q-mb-sm`},Li={href:`https://github.com/ggml-org/whisper.cpp`,target:`_blank`,rel:`noopener noreferrer`,class:`text-kobo-2`},Ri={class:`q-mb-xs text-kobo-2`},zi={class:`q-mb-sm`},Bi={class:`q-mb-xs text-kobo-2`},Vi={key:9,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Hi={class:`text-subtitle2 q-mb-sm`},Ui={class:`row q-col-gutter-sm`},Wi={class:`col-12 col-sm-6`},Gi={class:`col-12 col-sm-6`},Ki={key:10,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},qi={class:`text-subtitle2 q-mb-sm`},Ji={key:0,class:`voice-models-dir row items-center q-gutter-sm q-mb-md`},Yi={class:`text-caption text-kobo-2 ellipsis-2-lines`,style:{flex:`1`,"min-width":`0`,"word-break":`break-all`}},Xi={class:`column q-gutter-sm`},Zi={class:`row items-center q-gutter-sm`},Qi={class:`text-body2 text-kobo-1`,style:{"font-family":`var(--kobo-font-mono, monospace)`}},$i={class:`text-caption text-kobo-3`},ea={key:0,class:`q-mt-sm`},ta={class:`row items-center q-mt-xs`},na={class:`text-caption text-kobo-3`},ra={class:`text-caption text-kobo-2`},ia={key:1,class:`text-caption text-kobo-3 q-mt-xs ellipsis`,style:{"font-family":`var(--kobo-font-mono, monospace)`,"word-break":`break-all`}},aa={key:11,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},oa={class:`text-subtitle2 q-mb-sm`},sa={class:`q-pa-sm column q-gutter-sm`},ca={class:`row items-center q-gutter-sm`},la={class:`text-caption text-kobo-2`},ua={class:`text-caption text-kobo-2`,style:{"min-width":`40px`,"text-align":`right`}},da={class:`text-caption text-kobo-3`},fa={class:`text-caption text-kobo-3`},pa={class:`text-caption text-kobo-3`},ma={class:`text-caption text-kobo-3`},ha={class:`q-pa-sm column q-gutter-sm`},ga={key:12,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,"data-tour":`settings-card-git`},_a={class:`row items-center q-mb-sm q-mt-md`},va={class:`text-subtitle2`},ya={class:`text-caption text-kobo-3 q-mb-sm`},ba={key:13,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},xa={class:`text-subtitle2 q-mb-sm`},Sa={class:`text-caption text-kobo-3 q-mb-sm`},Ca={class:`row items-center no-wrap`},wa={key:1,class:`text-caption text-kobo-3 q-mb-sm`},Ta={class:`row items-center q-gutter-sm`},Ea={key:14,"data-tour":`settings-card-prompts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Da={class:`row items-center q-mb-sm`},Oa={class:`text-subtitle2`},ka={class:`text-caption text-kobo-3 q-mb-sm`},Aa={class:`q-mb-sm`},ja={class:`row items-center q-mb-sm q-mt-md`},Ma={class:`text-subtitle2`},Na={class:`text-caption text-kobo-3 q-mb-sm`},Pa={class:`row items-center q-mb-sm q-mt-md`},Fa={class:`text-subtitle2`},Ia={class:`text-caption text-kobo-3 q-mb-sm`},La={class:`row items-center q-mb-sm q-mt-md`},Ra={class:`text-subtitle2`},za={class:`text-caption text-kobo-3 q-mb-sm`},Ba={key:15,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Va={class:`text-subtitle2 q-mb-sm`},Ha={class:`text-caption text-kobo-3 q-mb-sm`},Ua={key:16,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Wa={class:`text-subtitle2 q-mb-sm`},Ga={class:`text-caption text-kobo-3 q-mb-sm`},Ka={key:17,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},qa={class:`text-subtitle2 q-mb-sm`},Ja={class:`text-caption text-kobo-3 q-mb-sm`},Ya={key:18,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Xa={class:`text-subtitle2 q-mb-sm`},Za={class:`text-caption text-kobo-3 q-mb-sm`},Qa={class:`q-mb-sm`},$a={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},eo={key:20,"data-tour":`settings-card-sentry`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},to={class:`text-subtitle2 q-mb-sm`},no={class:`text-caption text-kobo-3 q-mb-sm`},ro={class:`q-mb-sm`},io={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},ao={key:22,"data-tour":`settings-card-forge`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},oo={class:`text-subtitle2 q-mb-sm`},so={class:`text-caption text-kobo-3 q-mb-md`},co={class:`text-subtitle2 q-mb-sm`},lo={class:`text-caption text-kobo-3 q-mb-sm`},uo={class:`q-mb-sm`},fo={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},po={class:`q-mb-sm`},mo={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},ho={class:`row items-center q-mb-sm`},go={class:`text-subtitle2`},_o={class:`text-caption text-kobo-3 q-mb-xs`},vo={class:`text-subtitle2 q-mb-sm`},yo={class:`text-caption text-kobo-3 q-mb-sm`},bo={class:`q-mb-sm`},xo={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},So={class:`q-mb-sm`},Co={class:`row items-center q-mb-xs`},wo={class:`field-label-sub text-caption text-kobo-3 col`},To=[`src`,`alt`],Eo={key:1,class:`text-caption text-kobo-3 q-py-sm`},Do={key:0,class:`text-caption text-orange-5 q-mb-xs`},Oo={class:`text-subtitle2 q-mb-sm`},ko={class:`row items-center q-mb-sm`},Ao={class:`text-subtitle2`},jo={class:`text-caption text-kobo-3 q-mb-xs`},Mo={key:26,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},No={class:`text-subtitle2 q-mb-sm`},Po={class:`text-caption text-kobo-3 q-mb-sm`},Fo={key:27,"data-tour":`settings-card-scripts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Io={class:`text-subtitle2 q-mb-sm`},Lo={class:`text-caption text-kobo-3 q-mb-sm`},Ro={key:28,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},zo={class:`text-subtitle2 q-mb-sm`},Bo={class:`text-caption text-kobo-3 q-mb-sm`},Vo={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},Ho={key:29,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Uo={class:`text-subtitle2 q-mb-sm`},Wo={class:`text-caption text-kobo-3 q-mb-sm`},Go={key:30,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ko={class:`text-subtitle2 q-mb-sm`},qo={class:`text-caption text-kobo-3 q-mb-sm`},Jo={key:31,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Yo={class:`text-subtitle2 q-mb-sm`},Xo={class:`text-caption text-kobo-3 q-mb-sm`},Zo={key:32,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Qo={class:`text-subtitle2 q-mb-sm`},$o={class:`text-caption text-kobo-3 q-mb-sm`},es={key:33,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ts={class:`row items-center justify-between q-mb-sm`},ns={class:`text-subtitle2`},rs={class:`text-caption text-kobo-3 q-mb-xs`},is={class:`text-caption text-kobo-3 mono-guide q-mb-sm`},as={key:34,"data-tour":`settings-card-worktrees`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},os={class:`text-subtitle2 q-mb-sm`},ss={class:`text-caption text-kobo-3 q-mb-sm`},cs={class:`text-caption text-kobo-3 q-mt-xs`},ls={"data-tour":`settings-card-worktrees-purge`},us={class:`text-caption text-kobo-3 q-mt-xs`},ds={"data-tour":`settings-card-worktrees-retention`},fs={class:`text-subtitle2 q-mb-sm`},ps={class:`text-caption text-negative q-mb-sm`},ms={class:`text-caption text-kobo-3 q-mb-sm`},hs={key:0,class:`text-caption text-kobo-3 q-mt-sm`},gs={class:`q-pa-sm text-caption text-kobo-2`,style:{"line-height":`1.55`}},_s={class:`text-weight-medium text-kobo-1 q-mb-xs`},vs={class:`q-mb-xs`},ys={class:`purge-docs-code`},bs={class:`text-kobo-3 q-mb-md`},xs={class:`text-weight-medium text-kobo-1 q-mb-xs`},Ss={class:`q-mb-xs`},Cs={class:`q-pl-md q-my-xs`},ws={class:`purge-docs-code`},Ts={class:`text-kobo-3 q-mb-md`},Es={class:`text-weight-medium text-kobo-1 q-mb-xs`},Ds={class:`q-mb-xs`},Os={class:`q-mb-xs text-kobo-3`},ks={class:`purge-docs-code`},As={class:`q-mb-xs text-kobo-3`},js={class:`purge-docs-code`},Ms={class:`text-kobo-3`},Ns={key:35,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ps={class:`text-subtitle2 q-mb-sm`},Fs={class:`text-caption text-kobo-3 q-mb-sm`},Is={key:1,class:`q-mt-md`},Ls={class:`text-caption text-kobo-3 q-mt-xs`},Rs={class:`q-mt-md`},zs={class:`text-caption text-kobo-3 q-mb-xs`},Bs={class:`q-mt-md`},Vs={class:`text-caption text-kobo-3 q-mb-xs`},Hs={key:0,class:`text-caption text-kobo-3`},Us={key:0,class:`q-mt-md`},Ws={class:`text-caption text-kobo-3 q-mb-xs`},Gs=[`src`,`alt`],Ks={key:36,"data-tour":`settings-card-export`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},qs={class:`text-subtitle2 q-mb-sm`},Js={class:`text-caption text-kobo-3 q-mb-sm`},Ys={class:`row q-gutter-sm`},Xs={key:0,class:`q-pa-none`},Zs={class:`row q-gutter-md`,style:{"min-height":`500px`}},Qs={class:`project-list-col`},$s={class:`settings-card rounded-borders`,style:{height:`100%`}},ec={class:`q-pa-sm`},tc={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-kobo-3`,style:{"letter-spacing":`0.05em`}},nc={key:0,class:`q-pa-md text-center text-caption text-kobo-3`},rc={class:`q-pa-sm`},ic={class:`project-form-col`},ac={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},oc={class:`row items-center q-mb-md`},sc={class:`text-subtitle1 text-weight-medium text-kobo-1`},cc={key:0,class:`q-mb-md`},lc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},uc={class:`text-caption text-kobo-3 q-mt-xs`},dc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},fc={class:`text-subtitle2 q-mb-md`},pc={class:`q-mb-md`},mc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},hc={class:`q-mb-md`},gc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},_c={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},vc={class:`row items-center q-gutter-xs`},yc={class:`text-caption text-kobo-3 q-mt-xs`},bc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},xc={class:`text-subtitle2 q-mb-md`},Sc={class:`q-mb-md`},Cc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},wc={class:`q-mb-md`},Tc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ec={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Dc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,"data-test":`project-git-settings`},Oc={class:`text-subtitle2 q-mb-md`},kc={class:`q-mb-md`},Ac={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},jc={class:`text-caption text-kobo-3 q-mb-xs`},Mc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Nc={class:`text-subtitle2 q-mb-md`},Pc={class:`q-mb-md`},Fc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ic={class:`text-caption text-kobo-3 q-mb-xs`},Lc={class:`q-mb-md`},Rc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},zc={class:`text-caption text-kobo-3 q-mb-xs`},Bc={class:`q-mb-md`},Vc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Hc={class:`text-caption text-kobo-3 q-mb-xs`},Uc={key:0,class:`q-mb-md`},Wc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Gc={class:`text-caption text-kobo-3 q-mb-xs`},Kc={key:1,class:`q-mb-md`},qc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Jc={class:`text-caption text-kobo-3 q-mb-xs`},Yc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Xc={class:`text-caption text-kobo-3 q-mt-xs`},Zc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Qc={class:`text-subtitle2 q-mb-md`},$c={class:`q-mb-md`},el={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},tl={class:`text-caption text-kobo-3 q-mb-xs`},nl={class:`text-caption text-kobo-3 q-mt-xs`},rl={class:`q-mb-md`},il={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},al={class:`text-caption text-kobo-3 q-mb-xs`},ol={class:`field-label-sub text-caption q-mt-sm q-mb-xs text-kobo-3`},sl={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},cl={class:`text-caption text-kobo-3 q-mb-xs`},ll={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},ul={class:`text-caption text-kobo-3 q-mb-xs`},dl={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},fl={class:`text-caption text-kobo-3 q-mb-xs`},pl={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},ml={class:`text-caption text-kobo-3 q-mb-xs`},hl={class:`row items-center justify-between q-mb-xs`},gl={class:`field-label text-body2 text-weight-medium text-kobo-3`},_l={class:`text-caption text-kobo-3 q-mb-xs`},vl={class:`text-caption text-kobo-3 mono-guide q-mb-sm`},yl={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},bl={class:`text-subtitle2 q-mb-md`},xl={class:`q-mb-md`},Sl={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Cl={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},wl={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Tl={class:`text-subtitle2 q-mb-xs`},El={class:`text-caption text-kobo-3 q-mb-sm`},Dl={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ol={class:`text-subtitle2 q-mb-xs`},kl={class:`text-caption text-kobo-3 q-mb-sm`},Al={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},jl={class:`text-body2 text-kobo-3`},Ml={key:1,class:`q-pa-none`},Nl={"data-tour":`settings-card-templates`,class:`settings-card rounded-borders q-pa-lg`},Pl={class:`row items-center justify-between q-mb-md`},Fl={class:`text-subtitle1 text-weight-medium text-kobo-1`},Il={class:`row q-gutter-sm items-center`},Ll={key:0,class:`text-kobo-3 q-py-lg text-center`},Rl={key:1,class:`column q-gutter-sm`},zl={class:`row items-start justify-between no-wrap`},Bl={class:`col`},Vl={class:`text-body1 text-weight-medium`,style:{"font-family":`var(--kobo-font-mono)`}},Hl={class:`text-caption text-kobo-2 q-mt-xs`},Ul={class:`row no-wrap q-gutter-xs`},Wl={class:`text-caption text-kobo-3 q-mt-lg`,style:{"font-family":`var(--kobo-font-mono)`}},Gl={key:2,class:`q-pa-none`},Kl={"data-tour":`settings-card-workspaceTemplates`,class:`settings-card rounded-borders q-pa-lg`},ql={class:`text-subtitle1 text-weight-medium text-kobo-1 q-mb-xs`},Jl={class:`text-caption text-kobo-3 q-mb-md`},Yl={key:0,class:`text-caption text-kobo-3`},Xl={class:`row no-wrap q-gutter-xs`},Zl={class:`mono-guide q-ma-none`},Ql={class:`settings-savebar__label`},$l={class:`text-subtitle1`},eu={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`var(--kobo-font-mono)`,columns:`2`,"column-gap":`24px`}},tu={key:0,class:`text-negative text-caption`},nu=2500,ru=ft(D({__name:`SettingsPage`,setup(t){let i=re(),s=Be(),c=Ze(),d=Lt(),{t:p,locale:ee}=ye(),{scheduleAutoRun:te}=pt(),{isMobile:D}=vt(),ne=mt(),k=o(`general`),ie=o(!1);function ae(e){k.value=e,D.value&&(ie.value=!1)}function le(){ie.value=!1,ne.toggleLeft()}let de=C(()=>[{value:`general`,icon:`tune`,label:p(`settings.nav.general`)},{value:`agents`,icon:`smart_toy`,label:p(`settings.nav.agents`)},{value:`skills`,icon:`extension`,label:p(`settings.nav.skills`)},{value:`git`,icon:`source`,label:p(`settings.nav.git`)},{value:`prompts`,icon:`text_snippet`,label:p(`settings.nav.prompts`)},{value:`scripts`,icon:`terminal`,label:p(`settings.nav.scripts`)},{value:`notion`,icon:`integration_instructions`,label:p(`settings.nav.notion`)},{value:`sentry`,icon:`bug_report`,label:p(`settings.nav.sentry`)},{value:`forge`,icon:`account_tree`,label:p(`settings.nav.forge`)},{value:`voice`,icon:`mic`,label:p(`settings.nav.voice`)},{value:`notifications`,icon:`notifications`,label:p(`settings.nav.notifications`)},{value:`worktrees`,icon:`account_tree`,label:p(`settings.nav.worktrees`)},{value:`projects`,icon:`folder`,label:p(`settings.projects`)},{value:`templates`,icon:`description`,label:p(`settings.nav.promptTemplates`)},{value:`workspaceTemplates`,icon:`bookmarks`,label:p(`settings.nav.workspaceTemplates`)},{value:`export`,icon:`import_export`,label:p(`settings.nav.export`)}]),fe=ot();u(()=>fe.query.tab,e=>{typeof e==`string`&&de.value.some(t=>t.value===e)&&ae(e)},{immediate:!0});let me=C(()=>de.value.find(e=>e.value===k.value)?.label??``),ge=C(()=>[`general`,`agents`,`skills`,`prompts`,`git`,`scripts`,`notion`,`sentry`,`forge`,`voice`,`notifications`,`worktrees`,`export`].includes(k.value)),_e=o(`auto`),Se=o(`auto`),Ce=o(``),we=o(``),Te=o(``),De=o(``),Ne=o(``),Ie=o(``),Le=o(``),Re=o(``),ze=o(!1),Ve=o(5),He=o(0),Ke=o(!0),qe=o(0),Je=o(0),N=o({enabled:!1,token:``,behindProxy:!1,urls:[]}),Qe=o(!1),I=o(``);function ut(e){try{let t=new URL(e),n=window.location.port?`:${window.location.port}`:``;return`${window.location.protocol}//${t.hostname}${n}`}catch{return e}}let ft=C(()=>N.value.urls.map(ut));async function ht(){try{let e=await he(`/api/settings/network`);if(!e.ok)throw await pe(e);N.value=await e.json(),await zt()}catch{i.notify({type:`negative`,message:p(`settings.network.loadFailed`),position:`top`})}}async function zt(){let e=ft.value[0];if(!e||!N.value.token){I.value=``;return}let t=`${e}/?token=${encodeURIComponent(N.value.token)}`;try{let{default:e}=await xe(async()=>{let{default:e}=await import(`./browser-CU7taghA.js`).then(e=>qt(e.default,1));return{default:e}},[]);I.value=await e.toDataURL(t,{margin:1,width:200})}catch{I.value=``}}async function Bt(e){try{let t=await he(`/api/settings/network`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)});if(!t.ok)throw await pe(t);let n=await t.json();N.value={enabled:n.enabled,token:n.token,behindProxy:n.behindProxy,urls:n.urls},n.restartRequired&&(Qe.value=!0),await zt()}catch{i.notify({type:`negative`,message:p(`settings.network.updateFailed`),position:`top`}),await ht()}}function Vt(e){Bt({enabled:e})}function Ht(e){Bt({behindProxy:e})}function Ut(){i.dialog({title:p(`settings.network.title`),message:p(`settings.network.regenerateConfirm`),cancel:!0,persistent:!0}).onOk(()=>{Bt({regenerate:!0})})}function Wt(){Cf(N.value.token)}let Gt=o(!0),Kt=o(typeof Notification>`u`?`unsupported`:Notification.permission),U=o(!0),Jt=o(!1),Yt=o(!1),Xt=o(!1),Zt=o(Fe),Qt=o(lt),$t=o(lt),en=o(lt),tn=o(1),W=o(1),an=o(1),on=o(1),sn=o({...Ue}),cn=o(``),ln=o(``),un=o(``),dn=o(``),fn=o(!1),mn=o(!0),hn=o(!1),gn=o(je),_n=o(1),vn=C(()=>$n(U.value)),yn=C(()=>{switch(Kt.value){case`granted`:return{color:`positive`,label:p(`settings.browserNotificationGranted`)};case`denied`:return{color:`negative`,label:p(`settings.browserNotificationDenied`)};case`default`:return{color:`warning`,label:p(`settings.browserNotificationAsk`)};default:return{color:`kobo-3`,label:p(`settings.browserNotificationUnsupported`)}}});async function xn(){if(typeof Notification>`u`){i.notify({type:`negative`,message:p(`settings.browserNotificationUnsupported`),position:`top`});return}if(Notification.permission==="default"?Kt.value=await Notification.requestPermission():Kt.value=Notification.permission,Kt.value!==`granted`){i.notify({type:`warning`,message:p(`settings.browserNotificationPermissionNeeded`),position:`top`});return}new Notification(p(`settings.browserNotificationTestTitle`),{body:p(`settings.browserNotificationTestBody`),icon:`/favicon.ico`})}let Sn=o(null),G=o({});async function Cn(e){Sn.value=e;try{let t=await he(`/api/${e}/test`,{method:`POST`}),n=await t.json();G.value[e]=t.ok?n:{ok:!1,durationMs:0,detail:n.error??`HTTP ${t.status}`}}catch(t){G.value[e]={ok:!1,durationMs:0,detail:t instanceof Error?t.message:String(t)}}finally{Sn.value=null}}let wn=o([]),Tn=o(!1),En=o(``),Dn=C(()=>wn.value.map(e=>({label:`${e.name} — ${e.email}`,value:e.id,name:e.name,email:e.email,avatarUrl:e.avatarUrl})));async function On(e=!1){if(!Tn.value&&!(!e&&wn.value.length>0)){Tn.value=!0,En.value=``;try{let e=await he(`/api/notion/users`),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error??`HTTP ${e.status}`);wn.value=Array.isArray(t.users)?t.users:[]}catch(e){En.value=e instanceof Error?e.message:String(e),wn.value=[]}finally{Tn.value=!1}}}let kn=o(``),An=o(``),K=o(null),jn=o(`bypass`),Mn=o(`bypass`),Nn=o(``),Fn=o(``),In=o(``),Ln=o(``),q=o(!0),J=o(!0),Rn=o([]),Y=o([]),Vn=o(``),Hn=o(``),Un=o(``),Wn=o(`no-tasks`),Gn=o(!1),Kn=o(``),Jn=o(``),Yn=o(``),Zn=o(``),ru=o(``),iu=o(``),au=o(!1);function ou(e){Q.value.path=e}let su=C(()=>[{label:p(`settings.cleanupScriptMode.inherit`),value:``},{label:p(`settings.cleanupScriptMode.idle`),value:`idle`},{label:p(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}]),cu=o(et),lu=o(null),uu=o(!0);function du(e){let t=e.trim().replace(/^\/+|\/+$/g,``);return t.length===0||t.length>50||!/^[A-Za-z0-9._/-]+$/.test(t)||t.includes(`..`)?``:t}function fu(){let e=du(Vn.value);e&&!Y.value.includes(e)&&(Y.value.push(e),Vn.value=``)}function pu(e){Y.value.splice(e,1)}function mu(e,t){let n=du(t);if(!n)return;let r=Y.value.indexOf(n);(r===-1||r===e)&&(Y.value[e]=n)}function hu(e,t){let n=e+t;if(n<0||n>=Y.value.length)return;let r=Y.value;[r[e],r[n]]=[r[n],r[e]]}let gu=o(!1),_u=o(`standard`),vu=C(()=>{switch(_u.value){case`standard`:return`settings.skillSuite.standardHint`;case`gstack`:return`settings.skillSuite.gstackHint`;case`ecc`:return`settings.skillSuite.eccHint`;case`superpowers+gstack`:return`settings.skillSuite.superpowersGstackHint`;case`superpowers+gstack+ecc`:return`settings.skillSuite.allThreeHint`;case`custom`:return`settings.skillSuite.customHint`;default:return`settings.skillSuite.superpowersHint`}}),yu=o(``),bu=o(``),xu=o(``),Su=o(``),Cu=o(``),wu=o(null),Tu=C(()=>[{value:`custom`,label:p(`settings.skillSuite.agnostic`)},{value:`superpowers`,label:p(`settings.skillSuite.superpowers`)},{value:`gstack`,label:p(`settings.skillSuite.gstack`)},{value:`ecc`,label:p(`settings.skillSuite.ecc`)},{value:`superpowers+gstack`,label:p(`settings.skillSuite.superpowersGstack`)},{value:`superpowers+gstack+ecc`,label:p(`settings.skillSuite.allThree`)}]);async function Eu(e,t){wu.value=e;try{let n=await he(`/api/settings/skill-suite-prompts/${t}`);if(!n.ok)throw Error(await n.text());let r=await n.json(),a={reviewTemplate:yu,autoLoopReviewGate:bu,autoLoopGroomingIntro:xu,qaPromptTemplate:Su,brainstormingInstruction:Cu};a[e].value=r[e],i.notify({type:`positive`,message:p(`settings.skillSuite.imported`),position:`top`})}catch(e){i.notify({type:`negative`,message:`${p(`settings.skillSuite.importFailed`)}: ${String(e)}`,position:`top`})}finally{wu.value=null}}let Du=o(!1),Ou=o(`alt`),ku=o(`auto`),Au=o(null),ju=o(``),Mu=o(``),Nu=o(0),Pu=o(``),Fu=o(!1),Iu=o(!0),Lu=o(null),Ru=o(!1);function zu(){i.dialog({title:p(`settings.skillSuite.reloadDefaults`),message:p(`settings.skillSuite.reloadDefaultsConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{yu.value=xt,bu.value=Ct,xu.value=yt,Su.value=bt,Cu.value=Tt})}function Bu(e){let t=e===`global`?ru.value:Q.value.changeSourceBranchScript,n=()=>{e===`global`?ru.value=iu.value:Q.value.changeSourceBranchScript=iu.value};if(!t.trim()||t===iu.value){n();return}i.dialog({title:p(`settings.changeSourceBranchScript.replaceConfirmTitle`),message:p(`settings.changeSourceBranchScript.replaceConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(n)}function Vu(e){return!e||e===`tiny`||e===`base`?.1:.2}let Hu=[e=>e.trim().length>0||p(`settings.worktreesPathRequired`)],Uu=o(!1),Wu=o(Ee()),Gu=o({notion:{configured:!1},sentry:{configured:!1}}),Ku=o({notion:{command:``,args:``,environment:``},sentry:{command:``,args:``,environment:``}}),qu=C(()=>Object.values(Ku.value).some(e=>e.command!==``||e.args!==``||e.environment!==``)),X=o(-1),Z=o(!1),Q=o({workflowPolicy:{},path:``,displayName:``,color:null,defaultSourceBranch:``,defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,ciFixPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,sessionEndedScript:``,prMergedScript:``,autoLoopDisabledScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}}),Ju=[`workflowPolicy`,`defaultModel`,`forge`,`prPromptTemplate`,`reviewPromptTemplate`,`ciFixPromptTemplate`,`notionInitialPromptTemplate`,`sentryInitialPromptTemplate`,`gitConventions`,`setupScript`,`taskPromptTemplate`,`cleanupScript`,`cleanupScriptMode`,`archiveScript`,`changeSourceBranchScript`,`sessionEndedScript`,`prMergedScript`,`autoLoopDisabledScript`,`devServer`,`e2e`,`finalization`],Yu=o(null),Xu=o(null),Zu=C(()=>s.projects.map(e=>({value:e.path,label:Of(e)||e.path})));function Qu(e){let t=s.projects.find(t=>t.path===e);t&&(Q.value.workflowPolicy={...t.workflowPolicy},Q.value.defaultModel=t.defaultModel??``,Q.value.forge=t.forge??`auto`,Q.value.prPromptTemplate=t.prPromptTemplate??``,Q.value.reviewPromptTemplate=t.reviewPromptTemplate??``,Q.value.ciFixPromptTemplate=t.ciFixPromptTemplate??``,Q.value.notionInitialPromptTemplate=t.notionInitialPromptTemplate??``,Q.value.sentryInitialPromptTemplate=t.sentryInitialPromptTemplate??``,Q.value.gitConventions=t.gitConventions??``,Q.value.setupScript=t.setupScript??``,Q.value.devServer={startCommand:t.devServer?.startCommand??``,stopCommand:t.devServer?.stopCommand??``},Q.value.e2e={framework:t.e2e?.framework??``,skill:t.e2e?.skill??``,prompt:t.e2e?.prompt??``},Q.value.finalization={prompt:t.finalization?.prompt??``})}function $u(){let e={workflowPolicy:{},defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,sessionEndedScript:``,prMergedScript:``,autoLoopDisabledScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}};return Ju.every(t=>JSON.stringify(Q.value[t])===JSON.stringify(e[t]))}function ed(e){if(e===null){Yu.value=null,Xu.value=null;return}if(Xu.value===null&&$u()){Qu(e),Yu.value=e,Xu.value=e;return}let t=s.projects.find(t=>t.path===e),n=t&&Of(t)||e;i.dialog({title:p(`settings.copyFromConfirmTitle`),message:p(`settings.copyFromConfirm`,{project:n}),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{Qu(e),Yu.value=e,Xu.value=e}).onCancel(()=>{Yu.value=Xu.value})}let td=o([]),nd=o([]);async function rd(){try{let e=await he(`/api/skills`);e.ok&&(td.value=await e.json())}catch{}}function id(e,t){t(()=>{let t=e.trim().toLowerCase();nd.value=t?td.value.filter(e=>e.toLowerCase().includes(t)):td.value.slice()})}let ad=o([]),od=o(!1),sd=o(!1),cd=o(!1),ld=o(!1),ud=o(null),dd=o(``),fd=o(``),pd=o(``),md=o(``),hd=o(!1),gd=o(!1),_d=C(()=>[...c.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),vd=[`{workspace_name}`,`{working_branch}`,`{source_branch}`,`{project_path}`,`{worktree_path}`,`{commit_count}`,`{unpushed_count}`,`{files_changed}`,`{insertions}`,`{deletions}`,`{pr_number}`,`{pr_url}`,`{pr_state}`,`{session_name}`];function yd(){ud.value=null,dd.value=``,fd.value=``,pd.value=``,md.value=``,ld.value=!0}function bd(e){ud.value=e.slug,dd.value=e.slug,fd.value=e.description,pd.value=e.content,md.value=``,ld.value=!0}async function xd(){md.value=``;let e=dd.value.trim(),t=fd.value.trim();if(ud.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){md.value=p(`templates.slugInvalid`);return}if(!t){md.value=p(`templates.descriptionRequired`);return}if(!pd.value.trim()){md.value=p(`templates.contentRequired`);return}hd.value=!0;try{ud.value===null?await c.createTemplate({slug:e,description:t,content:pd.value}):await c.updateTemplate(ud.value,{description:t,content:pd.value}),ld.value=!1}catch(e){md.value=e instanceof Error?e.message:p(`templates.createFailed`)}finally{hd.value=!1}}function Sd(){i.dialog({title:p(`templates.reloadDefaults`),message:p(`templates.reloadDefaultsConfirmMessage`),dark:!0,cancel:{flat:!0,label:p(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:p(`templates.reloadDefaults`),color:`primary`}}).onOk(async()=>{gd.value=!0;try{let e=await c.reloadDefaults();i.notify({type:`positive`,message:p(`templates.reloadDefaultsSuccess`,{added:e.added.length,kept:e.kept.length}),position:`top`,timeout:4e3})}catch(e){i.notify({type:`negative`,message:e instanceof Error?e.message:p(`templates.reloadDefaultsFailed`),position:`top`})}finally{gd.value=!1}})}async function Cd(e){i.dialog({title:p(`templates.deleteTemplate`),message:`${p(`templates.deleteConfirm`,{slug:e.slug})}\n\n${p(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:p(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:p(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await c.deleteTemplate(e.slug)}catch(e){i.notify({type:`negative`,message:e instanceof Error?e.message:p(`templates.deleteFailed`),position:`top`})}})}function wd(e){let t=new Date(e);return Number.isNaN(t.getTime())?`-`:t.toLocaleDateString()}function Td(e,t){i.dialog({title:p(`workspaceTemplates.renameTitle`),dark:!0,prompt:{model:t,type:`text`,outlined:!0,dense:!0,isValid:e=>e.trim().length>0},cancel:!0,persistent:!0}).onOk(async t=>{try{await d.updateTemplate(e,{name:t})}catch(e){i.notify({type:`negative`,message:e instanceof Error?e.message:p(`settings.saveError`),position:`top`})}})}function Ed(e,t){i.dialog({title:p(`workspaceTemplates.title`),message:p(`workspaceTemplates.deleteConfirm`,{name:t}),dark:!0,cancel:!0,persistent:!0}).onOk(async()=>{try{await d.deleteTemplate(e),i.notify({type:`positive`,message:p(`workspaceTemplates.deleted`,{name:t}),position:`top`})}catch(e){i.notify({type:`negative`,message:e instanceof Error?e.message:p(`settings.saveError`),position:`top`})}})}function Dd(e){i.dialog({title:p(`templates.resetConfirmTitle`),message:p(`templates.resetConfirmMessage`,{slug:e.slug}),dark:!0,cancel:{flat:!0,label:p(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:p(`templates.resetToDefault`),color:`primary`}}).onOk(async()=>{try{await c.resetToDefault(e.slug),i.notify({type:`positive`,message:p(`templates.resetSuccess`,{slug:e.slug}),position:`top`})}catch(e){i.notify({type:`negative`,message:e instanceof Error?e.message:p(`templates.resetFailed`),position:`top`})}})}let Od=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function kd(e){be(e).catch(e=>{console.error(`[i18n] locale load failed:`,e),i.notify({type:`negative`,message:p(`settings.localeLoadFailed`),position:`top`})}),localStorage.setItem(`kobo:locale`,e)}let Ad=C(()=>[...wt.map(e=>({label:p(e.i18nLabelKey),value:e.value}))]),jd=C(()=>[...St.map(e=>({label:p(e.i18nLabelKey),value:e.value}))]),Md=C(()=>[{label:p(`settings.useGlobal`),value:``},...Ad.value]),Nd=C(()=>[{label:p(`settings.forge.auto`),value:`auto`},{label:p(`settings.forge.github`),value:`github`},{label:p(`settings.forge.gitlab`),value:`gitlab`},{label:p(`settings.forge.bitbucketCommunity`),value:`bitbucket-community`},{label:p(`settings.forge.none`),value:`none`}]),Pd=C(()=>Et[`claude-code`].map(e=>({label:p(`agentPermissionMode.${e}`),value:e}))),Fd=C(()=>Et.codex.map(e=>({label:p(`agentPermissionMode.${e}`),value:e}))),Id=C(()=>[{name:`{{pr_number}}`,description:p(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:p(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:p(`settings.var.branchName`)},{name:`{{source_branch}}`,description:p(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:p(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:p(`settings.var.projectName`)},{name:`{{notion_url}}`,description:p(`settings.var.notionUrl`)},{name:`{{commits}}`,description:p(`settings.var.commits`)},{name:`{{diff_stats}}`,description:p(`settings.var.diffStats`)},{name:`{{tasks}}`,description:p(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:p(`settings.var.acceptanceCriteria`)}]),Ld=C(()=>[{label:p(`settings.mcpAutoSelect`),value:``},...s.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),Rd=At(),zd=C(()=>[...Oe.map(e=>({label:p(e.labelKey),value:e.id})),...Rd.options]),Bd=C(()=>[{label:p(`settings.soundGeneral`),value:lt},...zd.value]),Vd=C(()=>[{label:p(`voice.noneModel`),value:null}].concat(s.voiceModels.map(e=>({label:e.installed?`${e.name}`:`${e.name} (${p(`voice.notInstalled`)})`,value:e.name})))),Hd=[{label:`auto`,value:`auto`},{label:`ar`,value:`ar`},{label:`de`,value:`de`},{label:`en`,value:`en`},{label:`es`,value:`es`},{label:`fr`,value:`fr`},{label:`hi`,value:`hi`},{label:`it`,value:`it`},{label:`ja`,value:`ja`},{label:`ko`,value:`ko`},{label:`nl`,value:`nl`},{label:`pl`,value:`pl`},{label:`pt`,value:`pt`},{label:`ru`,value:`ru`},{label:`tr`,value:`tr`},{label:`uk`,value:`uk`},{label:`vi`,value:`vi`},{label:`zh`,value:`zh`}];function Ud(){ct(Zt.value,tn.value)}function Wd(){ct(Qt.value,W.value)}function Gd(){ct($t.value,an.value)}function Kd(){ct(en.value,on.value)}let $=C(()=>X.value<0||X.value>=s.projects.length?null:s.projects[X.value]??null),qd=o(Zd()),Jd=o({});function Yd(){return{workflowPolicy:Wu.value,claudeModel:_e.value,codexModel:Se.value,prPrompt:Ce.value,reviewPrompt:we.value,ciFixPrompt:Te.value,finalizationPrompt:De.value,gitConventions:Ne.value,editorCommand:Ie.value,fileManagerCommand:Le.value,terminalCommand:Re.value,autoPurgeOnPrMerged:ze.value,autoLoopMaxRetries:Ve.value,awaitingUserReminderMinutes:He.value,activityDigestEnabled:Ke.value,wsEventsRetentionDays:qe.value,wsEventsKeepPerWorkspace:Je.value,browserNotifications:Gt.value,audioNotifications:U.value,audioQuestionNotifications:Jt.value,audioWorkspaceCreatedNotifications:Yt.value,audioAgentErrorNotifications:Xt.value,audioNotificationSound:Zt.value,audioQuestionSound:Qt.value,audioWorkspaceCreatedSound:$t.value,audioAgentErrorSound:en.value,audioNotificationVolume:tn.value,audioQuestionVolume:W.value,audioWorkspaceCreatedVolume:an.value,audioAgentErrorVolume:on.value,prNotificationSounds:sn.value,notionStatusProperty:cn.value,notionStatus:ln.value,notionAssigneeProperty:un.value,notionUserId:dn.value,notionInitialPrompt:kn.value,sentryInitialPrompt:An.value,claudePermissionMode:jn.value,codexPermissionMode:Mn.value,notionMcpKey:Nn.value,sentryMcpKey:Fn.value,bitbucketToken:In.value,bitbucketUsername:Ln.value,notionEnabled:q.value,sentryEnabled:J.value,showVerboseSystemMessages:fn.value,showThinkingBlocks:mn.value,whipEnabled:hn.value,whipShortcut:gn.value,whipVolume:_n.value,tags:Rn.value,branchPrefixes:Y.value,setupScript:Hn.value,cleanupScript:Un.value,cleanupScriptMode:Wn.value,cleanupScriptOnlyOnChanges:Gn.value,archiveScript:Kn.value,changeSourceBranchScript:ru.value,sessionEndedScript:Jn.value,prMergedScript:Yn.value,autoLoopDisabledScript:Zn.value,worktreesPath:cu.value,worktreesPrefixByProject:uu.value,flattenWorkspaceList:gu.value,skillSuite:_u.value,customReviewTemplate:yu.value,customAutoLoopReviewGate:bu.value,customAutoLoopGroomingIntro:xu.value,customQaPromptTemplate:Su.value,customBrainstormingInstruction:Cu.value,voiceEnabled:Du.value,voicePttKey:Ou.value,voiceLanguage:ku.value,voiceModel:Au.value,voiceCommandPath:ju.value,voiceFfmpegPath:Mu.value,voiceTemperature:Nu.value,voicePrompt:Pu.value,voiceTranslateToEnglish:Fu.value,voiceSuppressNst:Iu.value}}function Xd(){return{...Q.value}}function Zd(){return Qn(Yd())}function Qd(){return Qn(Xd())}let $d=C(()=>!Xn(Yd(),qd.value)),ef=C(()=>!Xn(Xd(),Jd.value)),tf=C(()=>s.loadError?!1:$d.value?!0:ef.value&&($.value!==null||Z.value)),nf=C(()=>ef.value&&($.value!==null||Z.value)?sd.value:Uu.value);function rf(){ef.value&&($.value!==null||Z.value)?wf():hf()}function af(){Wu.value=Ee(s.global.workflowPolicy),Ru.value=!0;let e=s.global.defaultModelByEngine??{};_e.value=e[`claude-code`]??`auto`,Se.value=e.codex??`auto`,Ce.value=s.global.prPromptTemplate,we.value=s.global.reviewPromptTemplate??``,Te.value=s.global.ciFixPromptTemplate??``,De.value=s.global.finalizationPrompt??``,Ne.value=s.global.gitConventions,Ie.value=s.global.editorCommand??``,Le.value=s.global.fileManagerCommand??``,Re.value=s.global.terminalCommand??``,ze.value=s.global.autoPurgeOnPrMerged??!1,Ve.value=s.global.autoLoopMaxRetries??5,He.value=s.global.awaitingUserReminderMinutes??0,Ke.value=s.global.activityDigestEnabled??!0,qe.value=s.global.wsEventsRetentionDays??0,Je.value=s.global.wsEventsKeepPerWorkspace??0,Gt.value=s.global.browserNotifications??!0,U.value=s.global.audioNotifications??!0,Jt.value=s.global.audioQuestionNotifications??!1,Yt.value=s.global.audioWorkspaceCreatedNotifications??!1,Xt.value=s.global.audioAgentErrorNotifications??!1,Zt.value=it(s.global.audioNotificationSound),Qt.value=ke(s.global.audioQuestionSound),$t.value=ke(s.global.audioWorkspaceCreatedSound),en.value=ke(s.global.audioAgentErrorSound);let t=Object.fromEntries(Ae.map(e=>[e,ke(s.global[e])])),n=Object.fromEntries(Ge.map(e=>{let t=s.global[e];if(e.endsWith(`Enabled`))return[e,typeof t==`boolean`&&t];let n=Number(t);return[e,Number.isFinite(n)?Math.max(0,Math.min(1,n)):1]}));sn.value={...t,...n};let r=s.global.audioNotificationVolume;tn.value=typeof r==`number`&&Number.isFinite(r)?Math.max(0,Math.min(1,r)):1;let i=s.global.audioQuestionVolume;W.value=typeof i==`number`&&Number.isFinite(i)?Math.max(0,Math.min(1,i)):1;let a=s.global.audioWorkspaceCreatedVolume;an.value=typeof a==`number`&&Number.isFinite(a)?Math.max(0,Math.min(1,a)):1;let o=s.global.audioAgentErrorVolume;on.value=typeof o==`number`&&Number.isFinite(o)?Math.max(0,Math.min(1,o)):1,cn.value=s.global.notionStatusProperty??``,ln.value=s.global.notionInProgressStatus??``,un.value=s.global.notionAssigneeProperty??``,dn.value=s.global.notionUserId??``,kn.value=s.global.notionInitialPromptTemplate??``,An.value=s.global.sentryInitialPromptTemplate??``;{let e=s.global.defaultPermissionModeByEngine??{},t=e=>e===`plan`||e===`bypass`||e===`strict`||e===`interactive`,n=e[`claude-code`];jn.value=t(n)?n:`bypass`;let r=e.codex;Mn.value=t(r)?r:`bypass`}Nn.value=s.global.notionMcpKey??``,Fn.value=s.global.sentryMcpKey??``,In.value=s.global.bitbucketToken??``,Ln.value=s.global.bitbucketUsername??``,q.value=s.global.notionEnabled??!0,J.value=s.global.sentryEnabled??!0,fn.value=s.showVerboseSystemMessages,mn.value=s.global.showThinkingBlocks??!0,hn.value=s.global.whipEnabled??!1,gn.value=s.global.whipShortcut??`mod+shift+x`,_n.value=s.global.whipVolume??1,Rn.value=Array.isArray(s.global.tags)?[...s.global.tags]:[],Y.value=Array.isArray(s.global.branchPrefixes)?[...s.global.branchPrefixes]:[],Hn.value=s.global.setupScript??``,Un.value=s.global.cleanupScript??``,Wn.value=s.global.cleanupScriptMode===`idle`?`idle`:`no-tasks`,Gn.value=s.global.cleanupScriptOnlyOnChanges??!1,Kn.value=s.global.archiveScript??``,Jn.value=s.global.sessionEndedScript??``,Yn.value=s.global.prMergedScript??``,Zn.value=s.global.autoLoopDisabledScript??``,ru.value=s.global.changeSourceBranchScript??``,cu.value=s.global.worktreesPath??`.worktrees`,uu.value=s.global.worktreesPrefixByProject??!1,gu.value=s.global.flattenWorkspaceList??!1,_u.value=s.global.skillSuite??`standard`,yu.value=s.global.customReviewTemplate??``,bu.value=s.global.customAutoLoopReviewGate??``,xu.value=s.global.customAutoLoopGroomingIntro??``,Su.value=s.global.customQaPromptTemplate??``,Cu.value=s.global.customBrainstormingInstruction??``,Du.value=s.global.voiceEnabled??!1,Ou.value=s.global.voicePttKey===`ctrl+space`?`ctrl+space`:`alt`,ku.value=s.global.voiceLanguage??`auto`,Au.value=s.global.voiceModel??null,ju.value=s.global.voiceCommandPath??``,Mu.value=s.global.voiceFfmpegPath??``,Nu.value=typeof s.global.voiceTemperature==`number`?s.global.voiceTemperature:0,Pu.value=s.global.voicePrompt??``,Fu.value=s.global.voiceTranslateToEnglish??!1,Iu.value=s.global.voiceSuppressNonSpeechTokens??!0,Ru.value=!1,qd.value=Zd()}u(()=>Au.value,(e,t)=>{Ru.value||e!==t&&(Nu.value=Vu(e))});function of(e){if(!e){Q.value={workflowPolicy:{},path:``,displayName:``,color:null,defaultSourceBranch:``,defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,ciFixPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,sessionEndedScript:``,prMergedScript:``,autoLoopDisabledScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}},ad.value=[],Jd.value=Qd();return}Q.value={workflowPolicy:{...e.workflowPolicy},path:e.path,displayName:e.displayName,color:e.color??null,defaultSourceBranch:e.defaultSourceBranch,defaultModel:e.defaultModel,forge:e.forge??`auto`,prPromptTemplate:e.prPromptTemplate,reviewPromptTemplate:e.reviewPromptTemplate??``,ciFixPromptTemplate:e.ciFixPromptTemplate??``,notionInitialPromptTemplate:e.notionInitialPromptTemplate??``,sentryInitialPromptTemplate:e.sentryInitialPromptTemplate??``,gitConventions:e.gitConventions??``,setupScript:e.setupScript??``,taskPromptTemplate:e.taskPromptTemplate??``,cleanupScript:e.cleanupScript??``,cleanupScriptMode:e.cleanupScriptMode??``,archiveScript:e.archiveScript??``,changeSourceBranchScript:e.changeSourceBranchScript??``,sessionEndedScript:e.sessionEndedScript??``,prMergedScript:e.prMergedScript??``,autoLoopDisabledScript:e.autoLoopDisabledScript??``,devServer:{startCommand:e.devServer?.startCommand??``,stopCommand:e.devServer?.stopCommand??``},e2e:{framework:e.e2e?.framework??``,skill:e.e2e?.skill??``,prompt:e.e2e?.prompt??``},finalization:{prompt:e.finalization?.prompt??``}},Jd.value=Qd(),e.path&&sf(e.path)}async function sf(e){if(!e.trim()){ad.value=[];return}od.value=!0;try{let t=await he(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw await pe(t);let n=await t.json();ad.value=n.local??n.branches??[]}catch{ad.value=[]}finally{od.value=!1}}let cf=null;u(()=>Q.value.path,e=>{cf&&clearTimeout(cf),cf=setTimeout(()=>{sf(e)},500)}),u(X,()=>{Z.value=!1,of($.value)});let lf=o(null);async function uf(){try{let e=await he(`/api/settings/export`);if(!e.ok)throw await pe(e);let t=await e.json(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),a=document.createElement(`a`);a.href=r,a.download=`kobo-config-${new Date().toISOString().replace(/[:.]/g,`-`)}.json`,a.click(),URL.revokeObjectURL(r),i.notify({type:`positive`,message:p(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function df(){lf.value?.click()}async function ff(e){let t=e.target,n=t.files?.[0];if(n)try{i.dialog({title:p(`settings.importConfirmTitle`),message:p(`settings.importConfirmMessage`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{try{let e=await n.text(),t=JSON.parse(e),r=await ve(`/api/settings/import`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error??`HTTP ${r.status}`)}await s.fetchSettings(),af(),i.notify({type:`positive`,message:p(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function pf(e){if(K.value===null){K.value=e;try{let t=await s.fetchGlobalDefaults(),n={prPromptTemplate:Ce,reviewPromptTemplate:we,ciFixPromptTemplate:Te,finalizationPrompt:De,gitConventions:Ne,notionInitialPromptTemplate:kn,sentryInitialPromptTemplate:An};n[e].value=t[e]}catch(e){console.error(`[SettingsPage] resetFieldToDefault failed:`,e),i.notify({type:`negative`,message:p(`settings.resetFailed`),position:`top`})}finally{K.value=null}}}async function mf(){let e=e=>e===0?1/0:e,t=s.global.wsEventsRetentionDays??0,n=qe.value;if(e(n)>=e(t))return!0;let r=p(`settings.retentionConfirmMessageUnknown`,{days:n});try{let e=await s.previewRetention(n,Je.value);r=p(`settings.retentionConfirmMessage`,{days:n,count:e.deletable,total:e.total})}catch(e){console.error(`[SettingsPage] retention preview failed:`,e)}return await new Promise(e=>{i.dialog({title:p(`settings.retentionConfirmTitle`),message:r,cancel:!0,persistent:!0,dark:!0}).onOk(()=>e(!0)).onCancel(()=>e(!1)).onDismiss(()=>e(!1))})}async function hf(){if(await lu.value?.validate()!==!1&&await mf()){Uu.value=!0;try{await s.updateGlobal({workflowPolicy:Ee(Wu.value),defaultModelByEngine:{"claude-code":_e.value,codex:Se.value},prPromptTemplate:Ce.value,reviewPromptTemplate:we.value,ciFixPromptTemplate:Te.value,finalizationPrompt:De.value,gitConventions:Ne.value,editorCommand:Ie.value,fileManagerCommand:Le.value,terminalCommand:Re.value,autoPurgeOnPrMerged:ze.value,autoLoopMaxRetries:Ve.value,awaitingUserReminderMinutes:He.value,activityDigestEnabled:Ke.value,wsEventsRetentionDays:qe.value,wsEventsKeepPerWorkspace:Je.value,browserNotifications:Gt.value,audioNotifications:U.value,audioQuestionNotifications:Jt.value,audioWorkspaceCreatedNotifications:Yt.value,audioAgentErrorNotifications:Xt.value,audioNotificationSound:Zt.value,audioQuestionSound:Qt.value,audioWorkspaceCreatedSound:$t.value,audioAgentErrorSound:en.value,audioNotificationVolume:tn.value,audioQuestionVolume:W.value,audioWorkspaceCreatedVolume:an.value,audioAgentErrorVolume:on.value,...sn.value,notionStatusProperty:cn.value,notionInProgressStatus:ln.value,notionAssigneeProperty:un.value,notionUserId:dn.value,notionInitialPromptTemplate:kn.value,sentryInitialPromptTemplate:An.value,defaultPermissionModeByEngine:{"claude-code":jn.value,codex:Mn.value},notionMcpKey:Nn.value,sentryMcpKey:Fn.value,bitbucketToken:In.value,bitbucketUsername:Ln.value,notionEnabled:q.value,sentryEnabled:J.value,showThinkingBlocks:mn.value,whipEnabled:hn.value,whipShortcut:gn.value,whipVolume:_n.value,tags:Rn.value,branchPrefixes:Y.value,setupScript:Hn.value,cleanupScript:Un.value,cleanupScriptMode:Wn.value,cleanupScriptOnlyOnChanges:Gn.value,archiveScript:Kn.value,changeSourceBranchScript:ru.value,sessionEndedScript:Jn.value,prMergedScript:Yn.value,autoLoopDisabledScript:Zn.value,worktreesPath:cu.value,worktreesPrefixByProject:uu.value,flattenWorkspaceList:gu.value,skillSuite:_u.value,customReviewTemplate:yu.value,customAutoLoopReviewGate:bu.value,customAutoLoopGroomingIntro:xu.value,customQaPromptTemplate:Su.value,customBrainstormingInstruction:Cu.value,voiceEnabled:Du.value,voicePttKey:Ou.value,voiceLanguage:ku.value,voiceModel:Au.value,voiceCommandPath:ju.value.trim(),voiceFfmpegPath:Mu.value.trim(),voiceTemperature:Nu.value,voicePrompt:Pu.value,voiceTranslateToEnglish:Fu.value,voiceSuppressNonSpeechTokens:Iu.value}),s.setVerboseSystemMessages(fn.value),qd.value=Zd(),i.notify({type:`positive`,message:p(`settings.saved`),position:`top`})}catch{i.notify({type:`negative`,message:p(`settings.saveError`),position:`top`})}finally{Uu.value=!1}}}async function gf(e){Lu.value=e,xf();try{await s.downloadVoiceModel(e)}catch{i.notify({type:`negative`,message:p(`voice.downloadFailed`),position:`top`})}finally{Lu.value=null,Sf()}}async function _f(e){Lu.value=e;try{await s.deleteVoiceModel(e),Au.value===e&&(Au.value=null)}catch{i.notify({type:`negative`,message:p(`voice.deleteFailed`),position:`top`})}finally{Lu.value=null}}async function vf(e){try{await s.cancelVoiceModelDownload(e)}catch{i.notify({type:`negative`,message:p(`voice.cancelFailed`),position:`top`})}}function yf(e){if(e==null||!Number.isFinite(e)||e<0)return`—`;if(e<1024)return`${e} B`;let t=[`KB`,`MB`,`GB`,`TB`],n=e/1024,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r++;return`${n<10?n.toFixed(1):Math.round(n)} ${t[r]}`}let bf=null;function xf(){bf||=setInterval(()=>{document.visibilityState!==`hidden`&&s.fetchVoiceModels().catch(e=>{console.error(`[settings] voice model polling failed:`,e)})},nu)}function Sf(){bf&&=(clearInterval(bf),null)}async function Cf(e){try{await navigator.clipboard.writeText(e),i.notify({type:`positive`,message:p(`common.copied`),position:`top`,timeout:1200})}catch{i.notify({type:`negative`,message:p(`common.copyFailed`),position:`top`})}}async function wf(){if(!Q.value.path.trim()){i.notify({type:`negative`,message:p(`settings.projectPathRequired`),position:`top`});return}sd.value=!0;try{await s.upsertProject(Q.value.path.trim(),{workflowPolicy:{...Q.value.workflowPolicy},displayName:Q.value.displayName,color:Q.value.color,defaultSourceBranch:Q.value.defaultSourceBranch,defaultModel:Q.value.defaultModel,forge:Q.value.forge,prPromptTemplate:Q.value.prPromptTemplate,reviewPromptTemplate:Q.value.reviewPromptTemplate,ciFixPromptTemplate:Q.value.ciFixPromptTemplate,notionInitialPromptTemplate:Q.value.notionInitialPromptTemplate,sentryInitialPromptTemplate:Q.value.sentryInitialPromptTemplate,gitConventions:Q.value.gitConventions,setupScript:Q.value.setupScript,taskPromptTemplate:Q.value.taskPromptTemplate,cleanupScript:Q.value.cleanupScript,cleanupScriptMode:Q.value.cleanupScriptMode,archiveScript:Q.value.archiveScript,changeSourceBranchScript:Q.value.changeSourceBranchScript,sessionEndedScript:Q.value.sessionEndedScript,prMergedScript:Q.value.prMergedScript,autoLoopDisabledScript:Q.value.autoLoopDisabledScript,devServer:Q.value.devServer,e2e:Q.value.e2e,finalization:Q.value.finalization}),Z.value=!1;let e=s.projects.findIndex(e=>e.path===Q.value.path.trim());e>=0&&(X.value=e),Jd.value=Qd(),i.notify({type:`positive`,message:p(`settings.projectSaved`),position:`top`})}catch{i.notify({type:`negative`,message:p(`settings.projectSaveError`),position:`top`})}finally{sd.value=!1}}function Tf(){if(!$.value)return;let e=$.value.displayName||$.value.path;i.dialog({title:p(`settings.deleteProjectConfirmTitle`),message:p(`settings.deleteProjectConfirmMessage`,{name:e}),dark:!0,cancel:{flat:!0,label:p(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:p(`common.delete`),color:`red-5`}}).onOk(async()=>{if($.value){cd.value=!0;try{await s.deleteProject($.value.path),X.value=-1,Z.value=!1,of(null),i.notify({type:`positive`,message:p(`settings.projectDeleted`),position:`top`})}catch{i.notify({type:`negative`,message:p(`settings.projectDeleteError`),position:`top`})}finally{cd.value=!1}}})}function Ef(){X.value=-1,Z.value=!0,of(null),Yu.value=null,Xu.value=null}function Df(e){if(ef.value&&($.value!==null||Z.value)){i.dialog({title:p(`settings.unsavedChanges.title`),message:p(`settings.unsavedChanges.message`),dark:!0,persistent:!0,ok:{flat:!0,label:p(`settings.unsavedChanges.discard`),color:`negative`},cancel:{flat:!0,label:p(`settings.unsavedChanges.cancel`),color:`kobo-2`}}).onOk(()=>{Z.value=!1,X.value=e,Yu.value=null,Xu.value=null});return}Z.value=!1,X.value=e,Yu.value=null,Xu.value=null}function Of(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let kf=o([]);function Af(e,t){t(()=>{kf.value=e?ad.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):ad.value})}async function jf(){await s.fetchSettings(),s.loadError||af()}return m(async()=>{await Promise.all([s.fetchSettings(),s.fetchActiveMcpServers(),rd()]);try{let e=await s.fetchGlobalDefaults();iu.value=e.changeSourceBranchScript??``}catch(e){console.error(`[SettingsPage] fetchGlobalDefaults failed:`,e)}await s.fetchVoiceModels(),await s.fetchVoiceRuntime(),af(),te(`settings`),ht(),d.fetchTemplates(),Ye(`settings:global`,()=>$d.value),Ye(`settings:integrations`,()=>qu.value),Ye(`settings:project`,()=>ef.value&&($.value!==null||Z.value))}),l(()=>{cf&&clearTimeout(cf),Sf(),rt(`settings:global`),rt(`settings:integrations`),rt(`settings:project`)}),(t,i)=>(f(),y(Nt,{class:`settings-page`,"style-fn":e(Rt)},{default:_(()=>[e(s).loadError?(f(),w(`div`,er,[v(A,{name:`error`,size:`18px`}),E(`div`,tr,[E(`span`,nr,r(t.$t(`settings.loadFailed`)),1),E(`span`,rr,r(e(s).loadError),1),E(`span`,ir,r(t.$t(`settings.loadFailedHint`)),1)]),v(V),v(j,{dense:``,flat:``,"no-caps":``,icon:`refresh`,label:t.$t(`common.retry`),onClick:jf},null,8,[`label`])])):b(``,!0),E(`div`,ar,[e(D)?(f(),y(kt,{key:1,modelValue:ie.value,"onUpdate:modelValue":i[0]||=e=>ie.value=e,side:`left`,overlay:``,behavior:`mobile`,width:240},{default:_(()=>[v(F,null,{default:_(()=>[v(z,{clickable:``,onClick:le},{default:_(()=>[v(B,{avatar:``},{default:_(()=>[v(A,{name:`arrow_back`})]),_:1}),v(B,null,{default:_(()=>[x(r(t.$t(`workspaceList.title`)),1)]),_:1})]),_:1}),v(Xe)]),_:1}),E(`div`,cr,[E(`div`,lr,r(t.$t(`settings.title`)),1),v(Bn,{"nav-items":de.value,"active-tab":k.value,onSelect:ae},null,8,[`nav-items`,`active-tab`])])]),_:1},8,[`modelValue`])):(f(),w(`aside`,or,[E(`div`,sr,r(t.$t(`settings.title`)),1),v(Bn,{"nav-items":de.value,"active-tab":k.value,onSelect:ae},null,8,[`nav-items`,`active-tab`])])),E(`main`,ur,[E(`header`,dr,[v(Pt,{"exclude-mobile":``,class:`q-mr-sm`}),e(D)?(f(),y(j,{key:0,flat:``,dense:``,round:``,icon:`menu`,"aria-label":t.$t(`settings.openNav`),class:`settings-content__nav-toggle`,onClick:i[1]||=e=>ie.value=!0},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`settings.openNav`)),1)]),_:1})]),_:1},8,[`aria-label`])):b(``,!0),E(`h2`,fr,r(me.value),1),v(Ft,{"tour-id":`settings`,class:`q-ml-sm`})]),E(`div`,pr,r(t.$t(`settings.help.${k.value}`)),1),E(`div`,mr,[g(E(`div`,hr,[k.value===`general`?(f(),w(`div`,gr,[E(`div`,_r,r(t.$t(`settings.language`)),1),v(R,{"model-value":e(ee),options:Od,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":kd},null,8,[`model-value`])])):b(``,!0),k.value===`general`?(f(),w(`div`,vr,[E(`div`,yr,r(t.$t(`settings.workspaceListSection`)),1),v(P,{modelValue:gu.value,"onUpdate:modelValue":i[2]||=e=>gu.value=e,label:t.$t(`settings.flattenWorkspaceList`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),E(`div`,br,r(t.$t(`settings.flattenWorkspaceListHint`)),1)])):b(``,!0),k.value===`skills`?(f(),w(`div`,xr,[E(`div`,Sr,r(t.$t(`settings.skillSuite.section`)),1),v(st,{modelValue:_u.value,"onUpdate:modelValue":i[3]||=e=>_u.value=e,options:[{label:t.$t(`settings.skillSuite.standard`),value:`standard`},{label:t.$t(`settings.skillSuite.superpowers`),value:`superpowers`},{label:t.$t(`settings.skillSuite.gstack`),value:`gstack`},{label:t.$t(`settings.skillSuite.ecc`),value:`ecc`},{label:t.$t(`settings.skillSuite.superpowersGstack`),value:`superpowers+gstack`},{label:t.$t(`settings.skillSuite.allThree`),value:`superpowers+gstack+ecc`},{label:t.$t(`settings.skillSuite.custom`),value:`custom`}],type:`radio`,color:`primary`,dense:``,dark:``,inline:``},null,8,[`modelValue`,`options`]),E(`div`,Cr,r(t.$t(vu.value)),1),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t.$t(`settings.skillSuite.reloadDefaults`),disable:_u.value!==`custom`,class:`q-mt-sm`,onClick:zu},null,8,[`label`,`disable`])])):b(``,!0),k.value===`skills`&&_u.value===`custom`?(f(),w(`div`,wr,[E(`div`,Tr,r(t.$t(`settings.skillSuite.customPrompts`)),1),E(`div`,Er,r(t.$t(`settings.skillSuite.reviewTemplate`)),1),v(Dt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:t.$t(`settings.skillSuite.importPrompt`),loading:wu.value===`reviewTemplate`,class:`q-mb-sm`},{default:_(()=>[v(F,{dense:``},{default:_(()=>[(f(!0),w(T,null,O(Tu.value,e=>g((f(),y(z,{key:e.value,clickable:``,onClick:t=>Eu(`reviewTemplate`,e.value)},{default:_(()=>[v(B,null,{default:_(()=>[x(r(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[_t]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),v(M,{modelValue:yu.value,"onUpdate:modelValue":i[4]||=e=>yu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),E(`div`,Dr,r(t.$t(`settings.skillSuite.autoLoopReviewGate`)),1),v(Dt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:t.$t(`settings.skillSuite.importPrompt`),loading:wu.value===`autoLoopReviewGate`,class:`q-mb-sm`},{default:_(()=>[v(F,{dense:``},{default:_(()=>[(f(!0),w(T,null,O(Tu.value,e=>g((f(),y(z,{key:e.value,clickable:``,onClick:t=>Eu(`autoLoopReviewGate`,e.value)},{default:_(()=>[v(B,null,{default:_(()=>[x(r(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[_t]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),v(M,{modelValue:bu.value,"onUpdate:modelValue":i[5]||=e=>bu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),E(`div`,Or,r(t.$t(`settings.skillSuite.autoLoopGroomingIntro`)),1),v(Dt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:t.$t(`settings.skillSuite.importPrompt`),loading:wu.value===`autoLoopGroomingIntro`,class:`q-mb-sm`},{default:_(()=>[v(F,{dense:``},{default:_(()=>[(f(!0),w(T,null,O(Tu.value,e=>g((f(),y(z,{key:e.value,clickable:``,onClick:t=>Eu(`autoLoopGroomingIntro`,e.value)},{default:_(()=>[v(B,null,{default:_(()=>[x(r(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[_t]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),v(M,{modelValue:xu.value,"onUpdate:modelValue":i[6]||=e=>xu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),E(`div`,kr,r(t.$t(`settings.skillSuite.qaTemplate`)),1),v(Dt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:t.$t(`settings.skillSuite.importPrompt`),loading:wu.value===`qaPromptTemplate`,class:`q-mb-sm`},{default:_(()=>[v(F,{dense:``},{default:_(()=>[(f(!0),w(T,null,O(Tu.value,e=>g((f(),y(z,{key:e.value,clickable:``,onClick:t=>Eu(`qaPromptTemplate`,e.value)},{default:_(()=>[v(B,null,{default:_(()=>[x(r(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[_t]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),v(M,{modelValue:Su.value,"onUpdate:modelValue":i[7]||=e=>Su.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),E(`div`,Ar,r(t.$t(`settings.skillSuite.brainstormingInstruction`)),1),v(Dt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:t.$t(`settings.skillSuite.importPrompt`),loading:wu.value===`brainstormingInstruction`,class:`q-mb-sm`},{default:_(()=>[v(F,{dense:``},{default:_(()=>[(f(!0),w(T,null,O(Tu.value,e=>g((f(),y(z,{key:e.value,clickable:``,onClick:t=>Eu(`brainstormingInstruction`,e.value)},{default:_(()=>[v(B,null,{default:_(()=>[x(r(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[_t]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),v(M,{modelValue:Cu.value,"onUpdate:modelValue":i[8]||=e=>Cu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):b(``,!0),k.value===`agents`?(f(),w(`div`,jr,[E(`div`,Mr,r(t.$t(`settings.defaultModelClaude`)),1),v(R,{modelValue:_e.value,"onUpdate:modelValue":i[9]||=e=>_e.value=e,options:Ad.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),E(`div`,Nr,r(t.$t(`settings.defaultModelCodex`)),1),v(R,{modelValue:Se.value,"onUpdate:modelValue":i[10]||=e=>Se.value=e,options:jd.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),E(`div`,Pr,r(t.$t(`settings.defaultPermissionModeClaude`)),1),E(`div`,Fr,r(t.$t(`settings.defaultPermissionModeHint`)),1),v(R,{modelValue:jn.value,"onUpdate:modelValue":i[11]||=e=>jn.value=e,options:Pd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),E(`div`,Ir,r(t.$t(`settings.defaultPermissionModeCodex`)),1),v(R,{modelValue:Mn.value,"onUpdate:modelValue":i[12]||=e=>Mn.value=e,options:Fd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`]),v(M,{modelValue:Ve.value,"onUpdate:modelValue":i[13]||=e=>Ve.value=e,modelModifiers:{number:!0},label:t.$t(`settings.autoLoopMaxRetries`),hint:t.$t(`settings.autoLoopMaxRetriesHint`),type:`number`,min:`1`,max:`20`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`])])):b(``,!0),k.value===`general`?(f(),w(`div`,Lr,[E(`div`,Rr,r(t.$t(`settings.activityFeed`)),1),E(`div`,zr,[v(P,{modelValue:fn.value,"onUpdate:modelValue":i[14]||=e=>fn.value=e,label:t.$t(`settings.verboseMessages`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),v(P,{modelValue:mn.value,"onUpdate:modelValue":i[15]||=e=>mn.value=e,label:t.$t(`settings.showThinkingBlocks`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`])])])):b(``,!0),k.value===`general`?(f(),w(`div`,Br,[E(`div`,Vr,r(t.$t(`settings.whipSettings`)),1),E(`div`,Hr,r(t.$t(`settings.whipSettingsHint`)),1),v(P,{modelValue:hn.value,"onUpdate:modelValue":i[16]||=e=>hn.value=e,label:t.$t(`settings.whipEnabled`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`settings.whipEnabledHint`)),1)]),_:1})]),_:1},8,[`modelValue`,`label`]),hn.value?(f(),w(`div`,Ur,[v(qn,{modelValue:gn.value,"onUpdate:modelValue":i[17]||=e=>gn.value=e},null,8,[`modelValue`]),E(`div`,Wr,[E(`div`,Gr,r(t.$t(`settings.whipVolume`)),1),v(nn,{modelValue:_n.value,"onUpdate:modelValue":i[18]||=e=>_n.value=e,min:0,max:1,step:.05,disable:vn.value.disabled,"aria-label":t.$t(`settings.whipVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),E(`div`,Kr,r(Math.round(_n.value*100))+`% `,1)]),vn.value.hintKey?(f(),w(`div`,qr,r(t.$t(vn.value.hintKey)),1)):b(``,!0)])):b(``,!0)])):b(``,!0),k.value===`notifications`?(f(),w(`div`,Jr,[E(`div`,Yr,r(t.$t(`settings.notifications`)),1),v(P,{modelValue:Ke.value,"onUpdate:modelValue":i[19]||=e=>Ke.value=e,label:t.$t(`absence.title`),color:`primary`},null,8,[`modelValue`,`label`]),E(`div`,Xr,r(t.$t(`settings.activityDigestHint`)),1),v(M,{modelValue:He.value,"onUpdate:modelValue":i[20]||=e=>He.value=e,modelModifiers:{number:!0},label:t.$t(`settings.awaitingUserReminder`),hint:t.$t(`settings.awaitingUserReminderHint`),type:`number`,min:`0`,max:`1440`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`]),v(Xe,{dark:``,class:`q-my-md`}),v(pn),E(`div`,Zr,[E(`div`,Qr,[E(`div`,$r,r(t.$t(`settings.notificationSound`)),1),E(`div`,ei,r(t.$t(`settings.notificationSoundHint`)),1),E(`div`,ti,[v(P,{modelValue:Gt.value,"onUpdate:modelValue":i[21]||=e=>Gt.value=e,label:t.$t(`settings.enableBrowserNotifications`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),v(P,{modelValue:U.value,"onUpdate:modelValue":i[22]||=e=>U.value=e,label:t.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`])]),E(`div`,ni,[v(gt,{dense:``,square:``,color:yn.value.color,"text-color":`white`,icon:`notifications`},{default:_(()=>[x(r(yn.value.label),1)]),_:1},8,[`color`]),v(j,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`notifications_active`,label:t.$t(`settings.testBrowserNotification`),onClick:xn},null,8,[`label`])]),E(`div`,ri,[v(R,{modelValue:Zt.value,"onUpdate:modelValue":i[23]||=e=>Zt.value=e,options:zd.value,label:t.$t(`settings.notificationSound`),disable:!U.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),v(j,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:t.$t(`settings.notificationSoundPreview`),disable:!U.value,onClick:Ud},null,8,[`label`,`disable`])]),E(`div`,ii,[E(`div`,ai,r(t.$t(`settings.notificationVolume`)),1),v(nn,{modelValue:tn.value,"onUpdate:modelValue":i[24]||=e=>tn.value=e,min:0,max:1,step:.05,disable:!U.value,"aria-label":t.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),E(`div`,oi,r(Math.round(tn.value*100))+`% `,1)])]),E(`div`,si,[E(`div`,ci,r(t.$t(`settings.questionSound`)),1),E(`div`,li,r(t.$t(`settings.questionSoundHint`)),1),v(P,{modelValue:Jt.value,"onUpdate:modelValue":i[25]||=e=>Jt.value=e,label:t.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),E(`div`,ui,[v(R,{modelValue:Qt.value,"onUpdate:modelValue":i[26]||=e=>Qt.value=e,options:Bd.value,label:t.$t(`settings.questionSound`),disable:!Jt.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),v(j,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:t.$t(`settings.notificationSoundPreview`),disable:!Jt.value,onClick:Wd},null,8,[`label`,`disable`])]),E(`div`,di,[E(`div`,fi,r(t.$t(`settings.notificationVolume`)),1),v(nn,{modelValue:W.value,"onUpdate:modelValue":i[27]||=e=>W.value=e,min:0,max:1,step:.05,disable:!Jt.value,"aria-label":t.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),E(`div`,pi,r(Math.round(W.value*100))+`% `,1)])]),E(`div`,mi,[E(`div`,hi,r(t.$t(`settings.workspaceCreatedSound`)),1),E(`div`,gi,r(t.$t(`settings.workspaceCreatedSoundHint`)),1),v(P,{modelValue:Yt.value,"onUpdate:modelValue":i[28]||=e=>Yt.value=e,label:t.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),E(`div`,_i,[v(R,{modelValue:$t.value,"onUpdate:modelValue":i[29]||=e=>$t.value=e,options:Bd.value,label:t.$t(`settings.workspaceCreatedSound`),disable:!Yt.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),v(j,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:t.$t(`settings.notificationSoundPreview`),disable:!Yt.value,onClick:Gd},null,8,[`label`,`disable`])]),E(`div`,vi,[E(`div`,yi,r(t.$t(`settings.notificationVolume`)),1),v(nn,{modelValue:an.value,"onUpdate:modelValue":i[30]||=e=>an.value=e,min:0,max:1,step:.05,disable:!Yt.value,"aria-label":t.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),E(`div`,bi,r(Math.round(an.value*100))+`% `,1)])]),E(`div`,xi,[E(`div`,Si,r(t.$t(`settings.agentErrorSound`)),1),E(`div`,Ci,r(t.$t(`settings.agentErrorSoundHint`)),1),v(P,{modelValue:Xt.value,"onUpdate:modelValue":i[31]||=e=>Xt.value=e,label:t.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),E(`div`,wi,[v(R,{modelValue:en.value,"onUpdate:modelValue":i[32]||=e=>en.value=e,options:Bd.value,label:t.$t(`settings.agentErrorSound`),disable:!Xt.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),v(j,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:t.$t(`settings.notificationSoundPreview`),disable:!Xt.value,onClick:Kd},null,8,[`label`,`disable`])]),E(`div`,Ti,[E(`div`,Ei,r(t.$t(`settings.notificationVolume`)),1),v(nn,{modelValue:on.value,"onUpdate:modelValue":i[33]||=e=>on.value=e,min:0,max:1,step:.05,disable:!Xt.value,"aria-label":t.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),E(`div`,Di,r(Math.round(on.value*100))+`%`,1)])])]),v(zn,{modelValue:sn.value,"onUpdate:modelValue":i[34]||=e=>sn.value=e,"general-sound":Zt.value},null,8,[`modelValue`,`general-sound`])])):b(``,!0),k.value===`voice`?(f(),w(`div`,Oi,[E(`div`,ki,[E(`div`,Ai,r(t.$t(`voice.sectionRuntime`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`kobo-2`,label:e(p)(`common.refresh`),onClick:i[35]||=t=>e(s).fetchVoiceRuntime()},null,8,[`label`])]),E(`div`,ji,[E(`div`,Mi,[v(A,{name:e(s).voiceRuntime?.available?`check_circle`:`cancel`,color:e(s).voiceRuntime?.available?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),E(`span`,{class:a([`text-caption`,e(s).voiceRuntime?.available?`text-green-5`:`text-red-5`])},r(e(s).voiceRuntime?.available?e(p)(`voice.runtimeReady`,{command:e(s).voiceRuntime?.command??`whisper-cli`}):e(p)(`voice.runtimeMissing`,{command:e(s).voiceRuntime?.command??`whisper-cli`})),3)]),E(`div`,Ni,[v(A,{name:e(s).voiceRuntime?.ffmpegAvailable?`check_circle`:`cancel`,color:e(s).voiceRuntime?.ffmpegAvailable?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),E(`span`,{class:a([`text-caption`,e(s).voiceRuntime?.ffmpegAvailable?`text-green-5`:`text-red-5`])},r(e(s).voiceRuntime?.ffmpegAvailable?e(p)(`voice.ffmpegReady`):e(p)(`voice.ffmpegMissing`)),3)])]),v(dt,{dense:``,dark:``,icon:`help_outline`,label:t.$t(`voice.installGuideTitle`),class:`variables-panel rounded-borders q-mt-sm`},{default:_(()=>[E(`div`,Pi,[E(`div`,Fi,r(t.$t(`voice.installGuideIntro`)),1),E(`div`,Ii,[E(`a`,Li,r(t.$t(`voice.installLink`)),1)]),E(`div`,Ri,r(t.$t(`voice.installGuideUbuntuTitle`)),1),i[135]||=E(`pre`,{class:`mono-guide q-mb-sm`},`sudo apt update
|
|
2
|
-
sudo apt install -y cmake build-essential ffmpeg
|
|
3
|
-
git clone https://github.com/ggml-org/whisper.cpp.git
|
|
4
|
-
cd whisper.cpp
|
|
5
|
-
cmake -B build
|
|
6
|
-
cmake --build build -j`,-1),E(`div`,zi,r(t.$t(`voice.installGuideBinaryPathHint`)),1),E(`div`,Bi,r(t.$t(`voice.installGuideWindowsTitle`)),1),i[136]||=E(`pre`,{class:`mono-guide q-mb-sm`},`# Install CMake + Visual Studio Build Tools (C/C++)
|
|
7
|
-
# Install ffmpeg (choco/scoop)
|
|
8
|
-
where whisper-cli
|
|
9
|
-
where ffmpeg`,-1),E(`div`,null,r(t.$t(`voice.installGuideSettingsHint`)),1)])]),_:1},8,[`label`])])):b(``,!0),k.value===`voice`?(f(),w(`div`,Vi,[E(`div`,Hi,r(t.$t(`voice.sectionActivation`)),1),v(P,{modelValue:Du.value,"onUpdate:modelValue":i[36]||=e=>Du.value=e,label:t.$t(`voice.enabled`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),E(`div`,Ui,[E(`div`,Wi,[v(R,{modelValue:Ou.value,"onUpdate:modelValue":i[37]||=e=>Ou.value=e,label:t.$t(`voice.pttKey`),options:[{label:t.$t(`voice.pttAlt`),value:`alt`},{label:t.$t(`voice.pttCtrlSpace`),value:`ctrl+space`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`,`options`])]),E(`div`,Gi,[v(R,{modelValue:ku.value,"onUpdate:modelValue":i[38]||=e=>ku.value=e,label:t.$t(`voice.language`),options:Hd,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])])])):b(``,!0),k.value===`voice`?(f(),w(`div`,Ki,[E(`div`,qi,r(t.$t(`voice.sectionModels`)),1),v(R,{modelValue:Au.value,"onUpdate:modelValue":i[39]||=e=>Au.value=e,label:t.$t(`voice.model`),options:Vd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`label`,`options`]),e(s).voiceModelsDir?(f(),w(`div`,Ji,[v(A,{name:`folder`,color:`kobo-2`,size:`xs`}),E(`span`,Yi,r(e(s).voiceModelsDir),1),v(j,{flat:``,dense:``,round:``,size:`xs`,icon:`content_copy`,color:`kobo-2`,title:e(p)(`common.copy`),onClick:i[40]||=t=>Cf(e(s).voiceModelsDir)},null,8,[`title`])])):b(``,!0),E(`div`,Xi,[(f(!0),w(T,null,O(e(s).voiceModels,e=>(f(),w(`div`,{key:e.name,class:a([`voice-model-row q-pa-sm rounded-borders`,{"voice-model-row--active":e.download}])},[E(`div`,Zi,[v(A,{name:e.download?`downloading`:e.installed?`check_circle`:`circle`,color:e.download?`primary`:e.installed?`green-5`:`kobo-3`,size:`xs`},null,8,[`name`,`color`]),E(`span`,Qi,r(e.name),1),E(`span`,$i,r(yf(e.installedSizeBytes??e.sizeBytes)),1),v(V),e.download?(f(),y(j,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`close`,label:t.$t(`common.cancel`),onClick:t=>vf(e.name)},null,8,[`label`,`onClick`])):(f(),y(j,{key:1,flat:``,dense:``,"no-caps":``,size:`sm`,color:e.installed?`red-5`:`primary`,icon:e.installed?`delete_outline`:`download`,label:e.installed?t.$t(`voice.delete`):t.$t(`voice.download`),loading:Lu.value===e.name,onClick:t=>e.installed?_f(e.name):gf(e.name)},null,8,[`color`,`icon`,`label`,`loading`,`onClick`]))]),e.download?(f(),w(`div`,ea,[v(at,{value:e.download.total>0?Math.min(1,e.download.downloaded/e.download.total):0,indeterminate:!e.download.total,color:`primary`,"track-color":`kobo-surface-2`,size:`6px`,rounded:``},null,8,[`value`,`indeterminate`]),E(`div`,ta,[E(`span`,na,r(yf(e.download.downloaded))+` / `+r(yf(e.download.total)),1),v(V),E(`span`,ra,r(e.download.total>0?`${Math.floor(e.download.downloaded/e.download.total*100)}%`:`—`),1)])])):e.installed?(f(),w(`div`,ia,r(e.fileName),1)):b(``,!0)],2))),128))])])):b(``,!0),k.value===`voice`?(f(),w(`div`,aa,[E(`div`,oa,r(t.$t(`voice.sectionAdvanced`)),1),v(dt,{dense:``,dark:``,icon:`tune`,label:t.$t(`voice.sectionBehavior`),class:`variables-panel rounded-borders q-mb-sm`},{default:_(()=>[E(`div`,sa,[E(`div`,ca,[E(`div`,la,r(t.$t(`voice.temperature`)),1),v(nn,{modelValue:Nu.value,"onUpdate:modelValue":i[41]||=e=>Nu.value=e,min:0,max:1,step:.05,dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`]),E(`div`,ua,r(Nu.value.toFixed(2)),1)]),E(`div`,da,r(t.$t(`voice.temperatureHint`)),1),v(M,{modelValue:Pu.value,"onUpdate:modelValue":i[42]||=e=>Pu.value=e,label:t.$t(`voice.initialPrompt`),type:`textarea`,dense:``,dark:``,outlined:``,rows:2,class:`settings-input`},null,8,[`modelValue`,`label`]),E(`div`,fa,r(t.$t(`voice.initialPromptHint`)),1),v(P,{modelValue:Fu.value,"onUpdate:modelValue":i[43]||=e=>Fu.value=e,label:t.$t(`voice.translateToEnglish`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),E(`div`,pa,r(t.$t(`voice.translateToEnglishHint`)),1),v(P,{modelValue:Iu.value,"onUpdate:modelValue":i[44]||=e=>Iu.value=e,label:t.$t(`voice.suppressNst`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),E(`div`,ma,r(t.$t(`voice.suppressNstHint`)),1)])]),_:1},8,[`label`]),v(dt,{dense:``,dark:``,icon:`terminal`,label:t.$t(`voice.sectionBinaries`),class:`variables-panel rounded-borders`},{default:_(()=>[E(`div`,ha,[v(M,{modelValue:ju.value,"onUpdate:modelValue":i[45]||=e=>ju.value=e,label:t.$t(`voice.commandPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`]),v(M,{modelValue:Mu.value,"onUpdate:modelValue":i[46]||=e=>Mu.value=e,label:t.$t(`voice.ffmpegPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])]),_:1},8,[`label`])])):b(``,!0),k.value===`git`?(f(),w(`div`,ga,[v(It,{modelValue:Wu.value,"onUpdate:modelValue":i[47]||=e=>Wu.value=e,class:`q-my-md`},null,8,[`modelValue`]),E(`div`,_a,[E(`div`,va,r(t.$t(`settings.gitConventions`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`gitConventions`,disable:K.value!==null&&K.value!==`gitConventions`,onClick:i[48]||=e=>pf(`gitConventions`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,ya,r(t.$t(`settings.gitConventionsHint`)),1),v(M,{modelValue:Ne.value,"onUpdate:modelValue":i[49]||=e=>Ne.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`git`?(f(),w(`div`,ba,[E(`div`,xa,r(t.$t(`settings.branchPrefixesTitle`)),1),E(`div`,Sa,r(t.$t(`settings.branchPrefixesHint`)),1),Y.value.length>0?(f(),y(F,{key:0,bordered:``,separator:``,class:`rounded-borders q-mb-sm`},{default:_(()=>[(f(!0),w(T,null,O(Y.value,(e,n)=>(f(),y(z,{key:e},{default:_(()=>[v(B,null,{default:_(()=>[v(L,{class:`cursor-pointer`},{default:_(()=>[x(r(e)+`/ `,1),v(rn,{"model-value":e,"auto-save":``,onSave:e=>mu(n,e)},{default:_(e=>[v(M,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,dense:``,dark:``,autofocus:``,onKeyup:ue(e.set,[`enter`])},null,8,[`modelValue`,`onUpdate:modelValue`,`onKeyup`])]),_:1},8,[`model-value`,`onSave`]),v(H,null,{default:_(()=>[x(r(t.$t(`settings.branchPrefixesEditHint`)),1)]),_:1})]),_:2},1024)]),_:2},1024),v(B,{side:``},{default:_(()=>[E(`div`,Ca,[v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_up`,color:`kobo-3`,disable:n===0,title:t.$t(`settings.branchPrefixesMoveUp`),onClick:e=>hu(n,-1)},null,8,[`disable`,`title`,`onClick`]),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_down`,color:`kobo-3`,disable:n===Y.value.length-1,title:t.$t(`settings.branchPrefixesMoveDown`),onClick:e=>hu(n,1)},null,8,[`disable`,`title`,`onClick`]),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`kobo-3`,title:t.$t(`common.delete`),onClick:e=>pu(n)},null,8,[`title`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):(f(),w(`div`,wa,r(t.$t(`settings.branchPrefixesEmpty`)),1)),E(`div`,Ta,[v(M,{modelValue:Vn.value,"onUpdate:modelValue":i[50]||=e=>Vn.value=e,label:t.$t(`settings.branchPrefixesAddLabel`),dense:``,dark:``,outlined:``,class:`col`,onKeyup:ue(fu,[`enter`])},null,8,[`modelValue`,`label`]),v(j,{flat:``,label:t.$t(`common.add`),icon:`add`,color:`primary`,disable:du(Vn.value).length===0,onClick:fu},null,8,[`label`,`disable`])])])):b(``,!0),k.value===`prompts`?(f(),w(`div`,Ea,[E(`div`,Da,[E(`div`,Oa,r(t.$t(`settings.prPromptTemplate`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`prPromptTemplate`,disable:K.value!==null&&K.value!==`prPromptTemplate`,onClick:i[51]||=e=>pf(`prPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,ka,r(t.$t(`settings.prPromptHint`)),1),v(M,{modelValue:Ce.value,"onUpdate:modelValue":i[52]||=e=>Ce.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),E(`div`,Aa,[v(dt,{dense:``,dark:``,icon:`code`,label:t.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:_(()=>[v(F,{dense:``,dark:``,class:`q-pa-sm`},{default:_(()=>[(f(!0),w(T,null,O(Id.value,e=>(f(),y(z,{key:e.name,dense:``},{default:_(()=>[v(B,null,{default:_(()=>[v(L,{class:`text-caption`,style:{"font-family":`monospace`}},{default:_(()=>[x(r(e.name),1)]),_:2},1024),v(L,{caption:``,class:`text-kobo-3`},{default:_(()=>[x(r(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),E(`div`,ja,[E(`div`,Ma,r(t.$t(`settings.reviewPromptTemplate`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`reviewPromptTemplate`,disable:K.value!==null&&K.value!==`reviewPromptTemplate`,onClick:i[53]||=e=>pf(`reviewPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,Na,r(t.$t(`settings.reviewPromptHint`)),1),v(M,{modelValue:we.value,"onUpdate:modelValue":i[54]||=e=>we.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),E(`div`,Pa,[E(`div`,Fa,r(t.$t(`settings.ciFixPromptTemplate`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`ciFixPromptTemplate`,disable:K.value!==null&&K.value!==`ciFixPromptTemplate`,onClick:i[55]||=e=>pf(`ciFixPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,Ia,r(t.$t(`settings.ciFixPromptHint`)),1),v(M,{modelValue:Te.value,"onUpdate:modelValue":i[56]||=e=>Te.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),E(`div`,La,[E(`div`,Ra,r(t.$t(`settings.finalizationPromptTemplate`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`finalizationPrompt`,disable:K.value!==null&&K.value!==`finalizationPrompt`,onClick:i[57]||=e=>pf(`finalizationPrompt`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,za,r(t.$t(`settings.finalizationPromptHint`)),1),v(M,{modelValue:De.value,"onUpdate:modelValue":i[58]||=e=>De.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.finalizationPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`general`?(f(),w(`div`,Ba,[E(`div`,Va,r(t.$t(`settings.editorCommand`)),1),E(`div`,Ha,r(t.$t(`settings.editorCommandHint`)),1),v(M,{modelValue:Ie.value,"onUpdate:modelValue":i[59]||=e=>Ie.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`general`?(f(),w(`div`,Ua,[E(`div`,Wa,r(t.$t(`settings.fileManagerCommand`)),1),E(`div`,Ga,r(t.$t(`settings.fileManagerCommandHint`)),1),v(M,{modelValue:Le.value,"onUpdate:modelValue":i[60]||=e=>Le.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.fileManagerCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`general`?(f(),w(`div`,Ka,[E(`div`,qa,r(t.$t(`settings.terminalCommand`)),1),E(`div`,Ja,r(t.$t(`settings.terminalCommandHint`)),1),v(M,{modelValue:Re.value,"onUpdate:modelValue":i[61]||=e=>Re.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.terminalCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`notion`?(f(),w(`div`,Ya,[v(P,{modelValue:q.value,"onUpdate:modelValue":i[62]||=e=>q.value=e,label:t.$t(`settings.integrationEnabled`),dark:``,dense:``,color:`primary`},null,8,[`modelValue`,`label`])])):b(``,!0),k.value===`notion`?(f(),w(`div`,{key:19,"data-tour":`settings-card-notion`,class:a([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!q.value}])},[v(bn,{modelValue:Ku.value.notion,"onUpdate:modelValue":i[63]||=e=>Ku.value.notion=e,"connection-status":Gu.value.notion,"onUpdate:connectionStatus":i[64]||=e=>Gu.value.notion=e,integration:`notion`},null,8,[`modelValue`,`connection-status`]),E(`div`,Xa,r(t.$t(`settings.mcpSelection`)),1),E(`div`,Za,r(t.$t(Gu.value.notion.configured?`integration.directOverrides`:`settings.mcpSelectionHint`)),1),E(`div`,Qa,[E(`div`,$a,r(t.$t(`settings.notionMcp`)),1),v(R,{modelValue:Nn.value,"onUpdate:modelValue":i[65]||=e=>Nn.value=e,"data-test":`notion-mcp-key`,disable:Gu.value.notion.configured,options:Ld.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`disable`,`options`])]),v(j,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`health_and_safety`,label:t.$t(`settings.testIntegration`),loading:Sn.value===`notion`,disable:!q.value||Sn.value!==null,onClick:i[66]||=e=>Cn(`notion`)},null,8,[`label`,`loading`,`disable`]),G.value.notion?(f(),w(`div`,{key:0,class:a([`text-caption q-mt-sm`,G.value.notion.ok?`text-positive`:`text-negative`])},r(G.value.notion.detail)+` (`+r(G.value.notion.durationMs)+` ms) `,3)):b(``,!0)],2)):b(``,!0),k.value===`sentry`?(f(),w(`div`,eo,[v(P,{modelValue:J.value,"onUpdate:modelValue":i[67]||=e=>J.value=e,label:t.$t(`settings.integrationEnabled`),dark:``,dense:``,color:`primary`},null,8,[`modelValue`,`label`])])):b(``,!0),k.value===`sentry`?(f(),w(`div`,{key:21,class:a([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!J.value}])},[v(bn,{modelValue:Ku.value.sentry,"onUpdate:modelValue":i[68]||=e=>Ku.value.sentry=e,"connection-status":Gu.value.sentry,"onUpdate:connectionStatus":i[69]||=e=>Gu.value.sentry=e,integration:`sentry`},null,8,[`modelValue`,`connection-status`]),E(`div`,to,r(t.$t(`settings.mcpSelection`)),1),E(`div`,no,r(t.$t(Gu.value.sentry.configured?`integration.directOverrides`:`settings.mcpSelectionHint`)),1),E(`div`,ro,[E(`div`,io,r(t.$t(`settings.sentryMcp`)),1),v(R,{modelValue:Fn.value,"onUpdate:modelValue":i[70]||=e=>Fn.value=e,"data-test":`sentry-mcp-key`,disable:Gu.value.sentry.configured,options:Ld.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`disable`,`options`])]),v(j,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`health_and_safety`,label:t.$t(`settings.testIntegration`),loading:Sn.value===`sentry`,disable:!J.value||Sn.value!==null,class:`q-mt-sm`,onClick:i[71]||=e=>Cn(`sentry`)},null,8,[`label`,`loading`,`disable`]),G.value.sentry?(f(),w(`div`,{key:0,class:a([`text-caption q-mt-sm`,G.value.sentry.ok?`text-positive`:`text-negative`])},r(G.value.sentry.detail)+` (`+r(G.value.sentry.durationMs)+` ms) `,3)):b(``,!0)],2)):b(``,!0),k.value===`forge`?(f(),w(`div`,ao,[E(`div`,oo,r(t.$t(`settings.bitbucketCommunity`)),1),E(`div`,so,r(t.$t(`settings.bitbucketCommunityHint`)),1),v(M,{modelValue:Ln.value,"onUpdate:modelValue":i[72]||=e=>Ln.value=e,label:t.$t(`settings.bitbucketUsername`),autocomplete:`username`,dark:``,dense:``,outlined:``,class:`q-mb-sm`},null,8,[`modelValue`,`label`]),v(M,{modelValue:In.value,"onUpdate:modelValue":i[73]||=e=>In.value=e,label:t.$t(`settings.bitbucketToken`),type:`password`,autocomplete:`off`,dark:``,dense:``,outlined:``},null,8,[`modelValue`,`label`])])):b(``,!0),k.value===`notion`?(f(),w(`div`,{key:23,class:a([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!q.value}])},[E(`div`,co,r(t.$t(`settings.notionStatus`)),1),E(`div`,lo,r(t.$t(`settings.notionStatusHint`)),1),E(`div`,uo,[E(`div`,fo,r(t.$t(`settings.notionStatusProperty`)),1),v(M,{modelValue:cn.value,"onUpdate:modelValue":i[74]||=e=>cn.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),E(`div`,po,[E(`div`,mo,r(t.$t(`settings.notionInProgressStatus`)),1),v(M,{modelValue:ln.value,"onUpdate:modelValue":i[75]||=e=>ln.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),E(`div`,ho,[E(`div`,go,r(e(p)(`settings.notionInitialPrompt`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`notionInitialPromptTemplate`,disable:K.value!==null&&K.value!==`notionInitialPromptTemplate`,onClick:i[76]||=e=>pf(`notionInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,_o,r(e(p)(`settings.notionInitialPrompt.help`,{variables:`{ticket_id}, {notion_url}, {notion_file_path}`})),1),v(M,{modelValue:kn.value,"onUpdate:modelValue":i[77]||=e=>kn.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])],2)):b(``,!0),k.value===`notion`?(f(),w(`div`,{key:24,class:a([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!q.value}])},[E(`div`,vo,r(t.$t(`settings.notionAssignee`)),1),E(`div`,yo,r(t.$t(`settings.notionAssigneeHint`)),1),E(`div`,bo,[E(`div`,xo,r(t.$t(`settings.notionAssigneeProperty`)),1),v(M,{modelValue:un.value,"onUpdate:modelValue":i[78]||=e=>un.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionAssigneePropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),E(`div`,So,[E(`div`,Co,[E(`div`,wo,r(t.$t(`settings.notionUserId`)),1),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`kobo-2`,loading:Tn.value,label:t.$t(`settings.notionUsersRefresh`),onClick:i[79]||=e=>On(!0)},null,8,[`loading`,`label`])]),wn.value.length>0?(f(),y(R,{key:0,modelValue:dn.value,"onUpdate:modelValue":i[80]||=e=>dn.value=e,options:Dn.value,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,hint:t.$t(`settings.notionUserIdHint`),class:`settings-input`},{option:_(e=>[v(z,n(h(e.itemProps)),{default:_(()=>[v(B,{avatar:``},{default:_(()=>[v($e,{size:`24px`},{default:_(()=>[e.opt.avatarUrl?(f(),w(`img`,{key:0,src:e.opt.avatarUrl,alt:e.opt.label},null,8,To)):(f(),y(A,{key:1,name:`person`,size:`20px`}))]),_:2},1024)]),_:2},1024),v(B,null,{default:_(()=>[v(L,null,{default:_(()=>[x(r(e.opt.name),1)]),_:2},1024),v(L,{caption:``},{default:_(()=>[x(r(e.opt.email),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`hint`])):Tn.value?(f(),w(`div`,Eo,r(t.$t(`settings.notionUsersLoading`)),1)):(f(),w(T,{key:2},[En.value?(f(),w(`div`,Do,r(t.$t(`settings.notionUsersLoadFailed`,{error:En.value})),1)):b(``,!0),v(M,{modelValue:dn.value,"onUpdate:modelValue":i[81]||=e=>dn.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionUserIdPlaceholder`),hint:En.value?t.$t(`settings.notionUsersManualFallback`):t.$t(`settings.notionUserIdHint`),class:`settings-input`},null,8,[`modelValue`,`placeholder`,`hint`])],64))])],2)):b(``,!0),k.value===`sentry`?(f(),w(`div`,{key:25,class:a([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!J.value}])},[E(`div`,Oo,r(e(p)(`settings.sentryIntegration`)),1),E(`div`,ko,[E(`div`,Ao,r(e(p)(`settings.sentryInitialPrompt`)),1),v(V),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e(p)(`settings.resetToDefault`),loading:K.value===`sentryInitialPromptTemplate`,disable:K.value!==null&&K.value!==`sentryInitialPromptTemplate`,onClick:i[82]||=e=>pf(`sentryInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),E(`div`,jo,r(e(p)(`settings.sentryInitialPrompt.help`,{variables:`{issue_id}, {sentry_url}, {sentry_file_path}`})),1),v(M,{modelValue:An.value,"onUpdate:modelValue":i[83]||=e=>An.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])],2)):b(``,!0),k.value===`general`?(f(),w(`div`,Mo,[E(`div`,No,r(t.$t(`settings.tagsTitle`)),1),E(`div`,Po,r(t.$t(`settings.tagsHint`)),1),v(R,{modelValue:Rn.value,"onUpdate:modelValue":i[84]||=e=>Rn.value=e,label:t.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Fo,[E(`div`,Io,r(t.$t(`settings.setupScript`)),1),E(`div`,Lo,r(t.$t(`settings.setupScriptHint`)),1),v(M,{modelValue:Hn.value,"onUpdate:modelValue":i[85]||=e=>Hn.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Ro,[E(`div`,zo,r(t.$t(`settings.cleanupScript`)),1),E(`div`,Bo,r(t.$t(`settings.cleanupScriptHint`)),1),v(M,{modelValue:Un.value,"onUpdate:modelValue":i[86]||=e=>Un.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),E(`div`,Vo,r(t.$t(`settings.cleanupScriptMode`)),1),v(st,{modelValue:Wn.value,"onUpdate:modelValue":i[87]||=e=>Wn.value=e,options:[{label:t.$t(`settings.cleanupScriptMode.idle`),value:`idle`},{label:t.$t(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}],type:`radio`,color:`primary`,dense:``},null,8,[`modelValue`,`options`]),v(nt,{modelValue:Gn.value,"onUpdate:modelValue":i[88]||=e=>Gn.value=e,label:t.$t(`settings.cleanupScriptOnlyOnChanges`),dark:``,dense:``,color:`primary`,class:`q-mt-sm`},null,8,[`modelValue`,`label`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Ho,[E(`div`,Uo,r(t.$t(`settings.archiveScript`)),1),E(`div`,Wo,r(t.$t(`settings.archiveScriptHint`)),1),v(M,{modelValue:Kn.value,"onUpdate:modelValue":i[89]||=e=>Kn.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Go,[E(`div`,Ko,r(t.$t(`settings.hook.sessionEndedTitle`)),1),E(`div`,qo,r(t.$t(`settings.hook.sessionEndedHint`)),1),v(M,{modelValue:Jn.value,"onUpdate:modelValue":i[90]||=e=>Jn.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.sessionEndedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Jo,[E(`div`,Yo,r(t.$t(`settings.hook.prMergedTitle`)),1),E(`div`,Xo,r(t.$t(`settings.hook.prMergedHint`)),1),v(M,{modelValue:Yn.value,"onUpdate:modelValue":i[91]||=e=>Yn.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.prMergedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,Zo,[E(`div`,Qo,r(t.$t(`settings.hook.autoLoopDisabledTitle`)),1),E(`div`,$o,r(t.$t(`settings.hook.autoLoopDisabledHint`)),1),v(M,{modelValue:Zn.value,"onUpdate:modelValue":i[92]||=e=>Zn.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.autoLoopDisabledPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`scripts`?(f(),w(`div`,es,[E(`div`,ts,[E(`div`,ns,r(t.$t(`settings.changeSourceBranchScript`)),1),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:t.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:i[93]||=e=>Bu(`global`)},null,8,[`label`])]),E(`div`,rs,r(t.$t(`settings.changeSourceBranchScript.help`)),1),E(`pre`,is,r(t.$t(`settings.changeSourceBranchScript.envHelp`)),1),v(M,{modelValue:ru.value,"onUpdate:modelValue":i[94]||=e=>ru.value=e,type:`textarea`,dark:``,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:t.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):b(``,!0),k.value===`worktrees`?(f(),w(`div`,as,[E(`div`,os,r(t.$t(`settings.worktreesTitle`)),1),E(`div`,ss,r(t.$t(`settings.worktreesHint`)),1),v(M,{ref_key:`globalWorktreesPathInput`,ref:lu,modelValue:cu.value,"onUpdate:modelValue":i[95]||=e=>cu.value=e,label:t.$t(`settings.worktreesPathLabel`),dense:``,dark:``,outlined:``,placeholder:e(et),rules:Hu,"lazy-rules":``,class:`settings-input`},null,8,[`modelValue`,`label`,`placeholder`]),v(P,{modelValue:uu.value,"onUpdate:modelValue":i[96]||=e=>uu.value=e,label:t.$t(`settings.worktreesPrefixByProject`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mt-sm`},null,8,[`modelValue`,`label`]),E(`div`,cs,r(t.$t(`settings.worktreesPrefixByProjectHint`)),1),v(Xe,{dark:``,class:`q-my-md`}),E(`div`,ls,[v(P,{modelValue:ze.value,"onUpdate:modelValue":i[97]||=e=>ze.value=e,label:t.$t(`settings.autoPurgeOnPrMerged`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),E(`div`,us,r(t.$t(`settings.autoPurgeOnPrMergedHint`)),1)]),v(Xe,{dark:``,class:`q-my-md`}),E(`div`,ds,[E(`div`,fs,r(t.$t(`settings.retentionTitle`)),1),E(`div`,ps,r(t.$t(`settings.retentionWarning`)),1),E(`div`,ms,r(t.$t(`settings.retentionHint`)),1),v(M,{modelValue:qe.value,"onUpdate:modelValue":i[98]||=e=>qe.value=e,modelModifiers:{number:!0},label:t.$t(`settings.retentionDaysLabel`),hint:t.$t(`settings.retentionDaysHint`),type:`number`,min:`0`,max:`3650`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`,`hint`]),v(M,{modelValue:Je.value,"onUpdate:modelValue":i[99]||=e=>Je.value=e,modelModifiers:{number:!0},label:t.$t(`settings.retentionKeepLabel`),hint:t.$t(`settings.retentionKeepHint`),type:`number`,min:`0`,max:`1000000`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`]),qe.value===0?(f(),w(`div`,hs,r(t.$t(`settings.retentionDisabledHint`)),1)):b(``,!0)]),v(dt,{dense:``,dark:``,icon:`help_outline`,label:t.$t(`settings.purgeDocsTitle`),class:`purge-docs q-mt-md rounded-borders`},{default:_(()=>[E(`div`,gs,[E(`div`,_s,r(t.$t(`settings.purgeDocsRestoreTitle`)),1),E(`div`,vs,r(t.$t(`settings.purgeDocsRestoreIntro`)),1),E(`pre`,ys,r(t.$t(`settings.purgeDocsRestoreCommands`)),1),E(`div`,bs,r(t.$t(`settings.purgeDocsRestoreFootnote`)),1),E(`div`,xs,r(t.$t(`settings.purgeDocsPermissionsTitle`)),1),E(`div`,Ss,r(t.$t(`settings.purgeDocsPermissionsIntro`)),1),E(`ul`,Cs,[E(`li`,null,r(t.$t(`settings.purgeDocsPermissionsDocker`)),1),E(`li`,null,r(t.$t(`settings.purgeDocsPermissionsAcl`)),1)]),E(`pre`,ws,r(t.$t(`settings.purgeDocsPermissionsAclCommand`)),1),E(`div`,Ts,r(t.$t(`settings.purgeDocsPermissionsFootnote`)),1),E(`div`,Es,r(t.$t(`settings.purgeDocsPermissionsRecoverTitle`)),1),E(`div`,Ds,r(t.$t(`settings.purgeDocsPermissionsRecoverIntro`)),1),E(`div`,Os,r(t.$t(`settings.purgeDocsPermissionsRecoverAclIntro`)),1),E(`pre`,ks,r(t.$t(`settings.purgeDocsPermissionsRecoverAclCommand`)),1),E(`div`,As,r(t.$t(`settings.purgeDocsPermissionsRecoverChownIntro`)),1),E(`pre`,js,r(t.$t(`settings.purgeDocsPermissionsRecoverChownCommand`)),1),E(`div`,Ms,r(t.$t(`settings.purgeDocsPermissionsRecoverFootnote`)),1)])]),_:1},8,[`label`])])):b(``,!0),k.value===`general`?(f(),w(`div`,Ns,[E(`div`,Ps,r(t.$t(`settings.network.title`)),1),E(`div`,Fs,r(t.$t(`settings.network.hint`)),1),v(P,{"model-value":N.value.enabled,label:t.$t(`settings.network.enable`),dark:``,color:`primary`,"onUpdate:modelValue":Vt},null,8,[`model-value`,`label`]),Qe.value?(f(),y(jt,{key:0,class:`bg-amber-1 text-amber-9 q-mt-sm`,dense:``,rounded:``},{default:_(()=>[x(r(t.$t(`settings.network.restartRequired`)),1)]),_:1})):b(``,!0),N.value.enabled?(f(),w(`div`,Is,[v(P,{"model-value":N.value.behindProxy,label:t.$t(`settings.network.behindProxy`),dark:``,color:`primary`,"onUpdate:modelValue":Ht},null,8,[`model-value`,`label`]),E(`div`,Ls,r(t.$t(`settings.network.behindProxyHint`)),1)])):b(``,!0),N.value.enabled&&N.value.token?(f(),w(T,{key:2},[E(`div`,Rs,[E(`div`,zs,r(t.$t(`settings.network.token`)),1),v(M,{"model-value":N.value.token,readonly:``,dense:``,dark:``,outlined:``},{append:_(()=>[v(j,{flat:``,dense:``,icon:`content_copy`,title:t.$t(`settings.network.copy`),onClick:Wt},null,8,[`title`])]),_:1},8,[`model-value`]),v(j,{class:`q-mt-sm`,label:t.$t(`settings.network.regenerate`),color:`primary`,outline:``,dense:``,onClick:Ut},null,8,[`label`])]),E(`div`,Bs,[E(`div`,Vs,r(t.$t(`settings.network.urls`)),1),ft.value.length===0?(f(),w(`div`,Hs,r(t.$t(`settings.network.noUrls`)),1)):b(``,!0),(f(!0),w(T,null,O(ft.value,e=>(f(),w(`div`,{key:e,class:`text-body2`},r(e),1))),128))]),I.value?(f(),w(`div`,Us,[E(`div`,Ws,r(t.$t(`settings.network.scan`)),1),E(`img`,{src:I.value,alt:t.$t(`settings.network.scan`),width:`200`,height:`200`},null,8,Gs)])):b(``,!0)],64)):b(``,!0),v(Pn,{token:N.value.token,"network-enabled":N.value.enabled,"behind-proxy":N.value.behindProxy},null,8,[`token`,`network-enabled`,`behind-proxy`])])):b(``,!0),k.value===`export`?(f(),w(`div`,Ks,[E(`div`,qs,r(t.$t(`settings.shareTitle`)),1),E(`div`,Js,r(t.$t(`settings.shareHint`)),1),E(`div`,Ys,[v(j,{label:t.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`kobo-2`,onClick:uf},null,8,[`label`]),v(j,{label:t.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`kobo-2`,onClick:df},null,8,[`label`]),E(`input`,{ref_key:`importFileInput`,ref:lf,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:ff},null,544)])])):b(``,!0)],512),[[oe,ge.value]]),k.value===`projects`?(f(),w(`div`,Xs,[E(`div`,Zs,[E(`div`,Qs,[E(`div`,$s,[E(`div`,ec,[E(`div`,tc,r(t.$t(`settings.configuredProjects`)),1)]),v(Xe,{dark:``}),v(F,{dark:``,dense:``,class:`q-py-xs`},{default:_(()=>[(f(!0),w(T,null,O(e(s).projects,(e,t)=>(f(),y(z,{key:e.path,clickable:``,active:X.value===t&&!Z.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>Df(t)},{default:_(()=>[v(B,null,{default:_(()=>[v(L,{class:`text-body2 text-kobo-1`},{default:_(()=>[x(r(Of(e)),1)]),_:2},1024),v(L,{caption:``,class:`text-kobo-3 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:_(()=>[x(r(e.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),e(s).projects.length===0&&!e(s).loading?(f(),w(`div`,nc,r(t.$t(`settings.noProjects`)),1)):b(``,!0),v(Xe,{dark:``}),E(`div`,rc,[v(j,{"data-tour":`settings-card-projects`,label:t.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`primary`,onClick:Ef},null,8,[`label`])])])]),E(`div`,ic,[E(`div`,ac,[$.value||Z.value?(f(),w(T,{key:0},[E(`div`,oc,[E(`div`,sc,r(Z.value?t.$t(`settings.newProject`):t.$t(`settings.editProject`)),1),v(V),Z.value?b(``,!0):(f(),y(j,{key:0,label:t.$t(`common.delete`),icon:`delete_outline`,"no-caps":``,flat:``,dense:``,size:`sm`,color:`red-5`,loading:cd.value,onClick:Tf},null,8,[`label`,`loading`]))]),v(Xe,{dark:``,class:`q-mb-md`}),Z.value&&e(s).projects.length>0?(f(),w(`div`,cc,[E(`div`,lc,r(t.$t(`settings.copyFrom`)),1),v(R,{"model-value":Yu.value,options:Zu.value,"option-value":`value`,"option-label":`label`,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.copyFromPlaceholder`),class:`settings-input`,"onUpdate:modelValue":ed},null,8,[`model-value`,`options`,`placeholder`]),E(`div`,uc,r(t.$t(`settings.copyFromHint`)),1)])):b(``,!0),E(`div`,dc,[E(`div`,fc,r(t.$t(`settings.projectGroup.identity`)),1),E(`div`,pc,[E(`div`,mc,r(t.$t(`settings.projectPath`)),1),v(M,{modelValue:Q.value.path,"onUpdate:modelValue":i[101]||=e=>Q.value.path=e,dense:``,dark:``,outlined:``,readonly:!Z.value,placeholder:t.$t(`settings.projectPathPlaceholder`),class:a([`settings-input`,{"readonly-input":!Z.value}])},S({_:2},[Z.value?{name:`append`,fn:_(()=>[v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`folder_open`,color:`kobo-2`,onClick:i[100]||=e=>au.value=!0},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`folderPicker.title`)),1)]),_:1})]),_:1})]),key:`0`}:void 0]),1032,[`modelValue`,`readonly`,`placeholder`,`class`])]),E(`div`,hc,[E(`div`,gc,r(t.$t(`settings.displayName`)),1),v(M,{modelValue:Q.value.displayName,"onUpdate:modelValue":i[102]||=e=>Q.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,_c,r(t.$t(`settings.projectColor`)),1),E(`div`,vc,[(f(!0),w(T,null,O(e(Mt),e=>(f(),y(gt,{key:e,dense:``,clickable:``,color:e,icon:Q.value.color===e?`check`:void 0,"text-color":`white`,onClick:t=>Q.value.color=e},null,8,[`color`,`icon`,`onClick`]))),128)),v(j,{flat:``,dense:``,"no-caps":``,size:`xs`,label:t.$t(`settings.projectColorClear`),color:`kobo-2`,disable:!Q.value.color,onClick:i[103]||=e=>Q.value.color=null},null,8,[`label`,`disable`])]),E(`div`,yc,r(Q.value.color??t.$t(`settings.projectColorDefault`)),1)])]),E(`div`,bc,[E(`div`,xc,r(t.$t(`settings.projectGroup.defaults`)),1),E(`div`,Sc,[E(`div`,Cc,r(t.$t(`settings.defaultSourceBranch`)),1),v(R,{modelValue:Q.value.defaultSourceBranch,"onUpdate:modelValue":i[104]||=e=>Q.value.defaultSourceBranch=e,options:kf.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:od.value,class:`settings-input`,placeholder:`main`,onFilter:Af},{"no-option":_(()=>[v(z,null,{default:_(()=>[v(B,{class:`text-kobo-3 text-caption`},{default:_(()=>[x(r(Q.value.path.trim()?t.$t(`createPage.noBranches`):t.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),E(`div`,wc,[E(`div`,Tc,r(t.$t(`settings.defaultModel.project`)),1),v(R,{modelValue:Q.value.defaultModel,"onUpdate:modelValue":i[105]||=e=>Q.value.defaultModel=e,options:Md.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),E(`div`,null,[E(`div`,Ec,r(t.$t(`settings.forge`)),1),v(R,{modelValue:Q.value.forge,"onUpdate:modelValue":i[106]||=e=>Q.value.forge=e,options:Nd.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])]),E(`div`,Dc,[E(`div`,Oc,r(t.$t(`settings.nav.git`)),1),v(It,{modelValue:Q.value.workflowPolicy,"onUpdate:modelValue":i[107]||=e=>Q.value.workflowPolicy=e,inherit:``,class:`q-my-md`},null,8,[`modelValue`]),E(`div`,kc,[E(`div`,Ac,r(t.$t(`settings.gitConventions.project`)),1),E(`div`,jc,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.gitConventions,"onUpdate:modelValue":i[108]||=e=>Q.value.gitConventions=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`140px`},placeholder:t.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),E(`div`,Mc,[E(`div`,Nc,r(t.$t(`settings.projectGroup.prompts`)),1),E(`div`,Pc,[E(`div`,Fc,r(t.$t(`settings.prPromptTemplate.project`)),1),E(`div`,Ic,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.prPromptTemplate,"onUpdate:modelValue":i[109]||=e=>Q.value.prPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,Lc,[E(`div`,Rc,r(t.$t(`settings.reviewPromptTemplate.project`)),1),E(`div`,zc,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.reviewPromptTemplate,"onUpdate:modelValue":i[110]||=e=>Q.value.reviewPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,Bc,[E(`div`,Vc,r(t.$t(`settings.ciFixPromptTemplate.project`)),1),E(`div`,Hc,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.ciFixPromptTemplate,"onUpdate:modelValue":i[111]||=e=>Q.value.ciFixPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),q.value?(f(),w(`div`,Uc,[E(`div`,Wc,r(e(p)(`settings.notionInitialPrompt.project`)),1),E(`div`,Gc,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.notionInitialPromptTemplate,"onUpdate:modelValue":i[112]||=e=>Q.value.notionInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):b(``,!0),J.value?(f(),w(`div`,Kc,[E(`div`,qc,r(e(p)(`settings.sentryInitialPrompt.project`)),1),E(`div`,Jc,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.sentryInitialPromptTemplate,"onUpdate:modelValue":i[113]||=e=>Q.value.sentryInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):b(``,!0),E(`div`,null,[E(`div`,Yc,r(t.$t(`settings.taskPromptTemplate`)),1),v(M,{modelValue:Q.value.taskPromptTemplate,"onUpdate:modelValue":i[114]||=e=>Q.value.taskPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.taskPromptTemplatePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`]),E(`div`,Xc,r(t.$t(`settings.taskPromptTemplateHint`)),1)])]),E(`div`,Zc,[E(`div`,Qc,r(t.$t(`settings.projectGroup.scripts`)),1),E(`div`,$c,[E(`div`,el,r(t.$t(`settings.setupScript`)),1),E(`div`,tl,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.setupScript,"onUpdate:modelValue":i[115]||=e=>Q.value.setupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),E(`div`,nl,r(t.$t(`settings.setupScriptHint`)),1)]),E(`div`,rl,[E(`div`,il,r(t.$t(`settings.cleanupScript`)),1),E(`div`,al,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.cleanupScript,"onUpdate:modelValue":i[116]||=e=>Q.value.cleanupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),E(`div`,ol,r(t.$t(`settings.cleanupScriptMode`)),1),v(R,{modelValue:Q.value.cleanupScriptMode,"onUpdate:modelValue":i[117]||=e=>Q.value.cleanupScriptMode=e,options:su.value,"emit-value":``,"map-options":``,dense:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),E(`div`,null,[E(`div`,sl,r(t.$t(`settings.archiveScript`)),1),E(`div`,cl,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.archiveScript,"onUpdate:modelValue":i[118]||=e=>Q.value.archiveScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,ll,r(t.$t(`settings.hook.sessionEndedTitle`)),1),E(`div`,ul,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.sessionEndedScript,"onUpdate:modelValue":i[119]||=e=>Q.value.sessionEndedScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.sessionEndedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,dl,r(t.$t(`settings.hook.prMergedTitle`)),1),E(`div`,fl,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.prMergedScript,"onUpdate:modelValue":i[120]||=e=>Q.value.prMergedScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.prMergedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,pl,r(t.$t(`settings.hook.autoLoopDisabledTitle`)),1),E(`div`,ml,r(e(p)(`settings.initialPrompt.inheritHint`)),1),v(M,{modelValue:Q.value.autoLoopDisabledScript,"onUpdate:modelValue":i[121]||=e=>Q.value.autoLoopDisabledScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:t.$t(`settings.hook.autoLoopDisabledPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,hl,[E(`div`,gl,r(t.$t(`settings.changeSourceBranchScript`)),1),v(j,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:t.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:i[122]||=e=>Bu(`project`)},null,8,[`label`])]),E(`div`,_l,r(t.$t(`settings.changeSourceBranchScript.help`)),1),E(`pre`,vl,r(t.$t(`settings.changeSourceBranchScript.envHelp`)),1),v(M,{modelValue:Q.value.changeSourceBranchScript,"onUpdate:modelValue":i[123]||=e=>Q.value.changeSourceBranchScript=e,type:`textarea`,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:t.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),E(`div`,yl,[E(`div`,bl,r(t.$t(`settings.devServer`)),1),E(`div`,xl,[E(`div`,Sl,r(t.$t(`settings.devServerStart`)),1),v(M,{modelValue:Q.value.devServer.startCommand,"onUpdate:modelValue":i[124]||=e=>Q.value.devServer.startCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:t.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),E(`div`,null,[E(`div`,Cl,r(t.$t(`settings.devServerStop`)),1),v(M,{modelValue:Q.value.devServer.stopCommand,"onUpdate:modelValue":i[125]||=e=>Q.value.devServer.stopCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:t.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),E(`div`,wl,[E(`div`,Tl,r(t.$t(`settings.e2e.title`)),1),E(`div`,El,r(t.$t(`settings.e2e.helpText`)),1),v(R,{modelValue:Q.value.e2e.framework,"onUpdate:modelValue":i[126]||=e=>Q.value.e2e.framework=e,options:[{label:t.$t(`settings.e2e.frameworkNone`),value:``},{label:`Cypress`,value:`cypress`},{label:`Playwright`,value:`playwright`},{label:`Jest`,value:`jest`},{label:`Vitest`,value:`vitest`},{label:t.$t(`settings.e2e.frameworkOther`),value:`other`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:t.$t(`settings.e2e.framework`)},null,8,[`modelValue`,`options`,`label`]),Q.value.e2e.framework?(f(),w(T,{key:0},[v(R,{modelValue:Q.value.e2e.skill,"onUpdate:modelValue":i[127]||=e=>Q.value.e2e.skill=e,options:nd.value,"use-input":``,"fill-input":``,"hide-selected":``,"hide-dropdown-icon":``,"input-debounce":`200`,"new-value-mode":`add-unique`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:t.$t(`settings.e2e.skill`),placeholder:t.$t(`settings.e2e.skillPlaceholder`),onFilter:id},null,8,[`modelValue`,`options`,`label`,`placeholder`]),v(M,{modelValue:Q.value.e2e.prompt,"onUpdate:modelValue":i[128]||=e=>Q.value.e2e.prompt=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea`,label:t.$t(`settings.e2e.prompt`),placeholder:t.$t(`settings.e2e.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])],64)):b(``,!0)]),E(`div`,Dl,[E(`div`,Ol,r(t.$t(`settings.finalization.title`)),1),E(`div`,kl,r(t.$t(`settings.finalization.helpText`)),1),v(M,{modelValue:Q.value.finalization.prompt,"onUpdate:modelValue":i[129]||=e=>Q.value.finalization.prompt=e,type:`textarea`,autogrow:``,rows:`4`,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea q-mb-sm`,label:t.$t(`settings.finalization.prompt`),placeholder:t.$t(`settings.finalization.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])])],64)):(f(),w(`div`,Al,[v(A,{name:`folder_open`,size:`48px`,color:`kobo-3`,class:`q-mb-md`}),E(`div`,jl,r(t.$t(`settings.selectProject`)),1)]))])])])])):b(``,!0),k.value===`templates`?(f(),w(`div`,Ml,[E(`div`,Nl,[E(`div`,Pl,[E(`div`,Fl,r(t.$t(`templates.title`)),1),E(`div`,Il,[v(j,{flat:``,color:`kobo-2`,icon:`restart_alt`,label:t.$t(`templates.reloadDefaults`),dense:``,"no-caps":``,loading:gd.value,onClick:Sd},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`templates.reloadDefaultsHint`)),1)]),_:1})]),_:1},8,[`label`,`loading`]),v(j,{color:`primary`,icon:`add`,label:t.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:yd},null,8,[`label`])])]),v(Xe,{dark:``,class:`q-mb-md`}),_d.value.length===0?(f(),w(`div`,Ll,r(t.$t(`templates.empty`)),1)):(f(),w(`div`,Rl,[(f(!0),w(T,null,O(_d.value,n=>(f(),y(Pe,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:_(()=>[E(`div`,zl,[E(`div`,Bl,[E(`div`,Vl,` /`+r(n.slug),1),E(`div`,Hl,r(n.description),1)]),E(`div`,Ul,[e(c).isDefault(n.slug)?(f(),y(j,{key:0,flat:``,dense:``,round:``,size:`sm`,icon:`settings_backup_restore`,color:`kobo-2`,onClick:e=>Dd(n)},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`templates.resetToDefault`)),1)]),_:1})]),_:1},8,[`onClick`])):b(``,!0),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`kobo-2`,onClick:e=>bd(n)},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>Cd(n)},{default:_(()=>[v(H,null,{default:_(()=>[x(r(t.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),E(`div`,Wl,r(t.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])])):b(``,!0),k.value===`workspaceTemplates`?(f(),w(`div`,Gl,[E(`div`,Kl,[E(`div`,ql,r(t.$t(`workspaceTemplates.title`)),1),E(`div`,Jl,r(t.$t(`workspaceTemplates.hint`)),1),e(d).templates.length===0?(f(),w(`div`,Yl,r(t.$t(`workspaceTemplates.empty`)),1)):(f(),y(F,{key:1,dark:``,separator:``},{default:_(()=>[(f(!0),w(T,null,O(e(d).templates,e=>(f(),y(dt,{key:e.id,dense:``,"header-class":`text-kobo-1`},{header:_(()=>[v(B,null,{default:_(()=>[v(L,null,{default:_(()=>[x(r(e.name),1)]),_:2},1024),v(L,{caption:``,class:`text-kobo-3`},{default:_(()=>[x(r(e.preset.projectPath||t.$t(`workspaceTemplates.anyProject`))+` · `+r(e.preset.engine??`-`)+` · `+r(e.preset.model??`-`)+` · `+r(wd(e.updatedAt)),1)]),_:2},1024)]),_:2},1024),v(B,{side:``},{default:_(()=>[E(`div`,Xl,[v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,title:t.$t(`workspaceTemplates.rename`),onClick:ce(t=>Td(e.id,e.name),[`stop`])},null,8,[`title`,`onClick`]),v(j,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`kobo-danger`,title:t.$t(`common.delete`),onClick:ce(t=>Ed(e.id,e.name),[`stop`])},null,8,[`title`,`onClick`])])]),_:2},1024)]),default:_(()=>[v(Pe,{dark:``,flat:``,class:`settings-subcard q-pa-md`},{default:_(()=>[E(`pre`,Zl,r(JSON.stringify(e.preset,null,2)),1)]),_:2},1024)]),_:2},1024))),128))]),_:1}))])])):b(``,!0)])]),v(se,{name:`save-bar`},{default:_(()=>[tf.value?(f(),w(`div`,{key:0,class:a([`settings-savebar`,{"settings-savebar--full":e(D)}])},[E(`span`,Ql,r(t.$t(`settings.unsavedChanges`)),1),v(j,{dense:``,"no-caps":``,unelevated:``,class:`settings-savebar__action`,loading:nf.value,label:t.$t(`common.save`),onClick:rf},null,8,[`loading`,`label`])],2)):b(``,!0)]),_:1})]),v(tt,{modelValue:ld.value,"onUpdate:modelValue":i[133]||=e=>ld.value=e,persistent:``},{default:_(()=>[v(Pe,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:_(()=>[v(Me,null,{default:_(()=>[E(`div`,$l,r(ud.value===null?t.$t(`templates.newTemplate`):t.$t(`templates.editTemplate`)),1)]),_:1}),v(Me,{class:`q-gutter-md`},{default:_(()=>[v(M,{modelValue:dd.value,"onUpdate:modelValue":i[130]||=e=>dd.value=e,label:t.$t(`templates.slug`),hint:t.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:ud.value!==null,rules:[e=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)||t.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),v(M,{modelValue:fd.value,"onUpdate:modelValue":i[131]||=e=>fd.value=e,label:t.$t(`templates.description`),hint:t.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),v(M,{modelValue:pd.value,"onUpdate:modelValue":i[132]||=e=>pd.value=e,label:t.$t(`templates.content`),hint:t.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),v(dt,{dense:``,"dense-toggle":``,label:t.$t(`templates.availableVars`),"header-class":`text-kobo-3 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:_(()=>[E(`div`,eu,[(f(),w(T,null,O(vd,e=>E(`div`,{key:e,class:`text-kobo-2 q-mb-xs`},r(e),1)),64))])]),_:1},8,[`label`]),md.value?(f(),w(`div`,tu,r(md.value),1)):b(``,!0)]),_:1}),v(We,{align:`right`},{default:_(()=>[g(v(j,{flat:``,label:t.$t(`common.cancel`)},null,8,[`label`]),[[_t]]),v(j,{flat:``,color:`primary`,label:ud.value===null?t.$t(`templates.create`):t.$t(`templates.save`),loading:hd.value,onClick:xd},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),v(Ot,{modelValue:au.value,"onUpdate:modelValue":i[134]||=e=>au.value=e,"initial-path":Q.value.path,onSelect:ou},null,8,[`modelValue`,`initial-path`])]),_:1},8,[`style-fn`]))}}),[[`__scopeId`,`data-v-fe72d895`]]);export{ru as default,Kt as n,Gt as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.mcp-config[data-v-2ac25d1e]{white-space:pre-wrap;overflow-wrap:anywhere;background:#00000029;border-radius:4px;font-size:12px;overflow-x:auto}.mcp-url[data-v-2ac25d1e]{overflow-wrap:anywhere;min-width:0}.notification-sounds-grid[data-v-dbeaedac]{grid-template-columns:1fr;gap:12px;display:grid}.notification-sound-card[data-v-dbeaedac]{background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle)}.volume-label[data-v-dbeaedac]{min-width:58px}.volume-value[data-v-dbeaedac]{text-align:right;min-width:40px}.settings-nav__list[data-v-fac6b946]{padding:0}.settings-nav__item[data-v-fac6b946]{border-radius:var(--kobo-radius-sm);color:var(--kobo-text-2);min-height:30px;transition:background-color var(--kobo-duration-micro) var(--kobo-ease-out), color var(--kobo-duration-micro) var(--kobo-ease-out);padding:6px 12px;font-size:13px;font-weight:500}.settings-nav__item[data-v-fac6b946]:hover{background-color:var(--kobo-hover);color:var(--kobo-text)}.settings-nav__item--active[data-v-fac6b946]{background-color:var(--kobo-hover);color:var(--kobo-text);position:relative}.settings-nav__item--active[data-v-fac6b946]:before{content:"";background-color:var(--kobo-accent);border-radius:1px;width:2px;position:absolute;top:6px;bottom:6px;left:-8px}.settings-nav__icon[data-v-fac6b946]{min-width:24px;color:inherit}.settings-nav__label[data-v-fac6b946]{padding-left:4px}.whip-shortcut-recorder[data-v-d8618bd9]{min-width:180px}.settings-page.q-page[data-v-fe72d895]{background-color:var(--kobo-bg);flex-direction:column;padding:0;display:flex;position:relative}.purge-docs[data-v-fe72d895]{background-color:#ffffff05;border:1px solid #ffffff0f}.purge-docs-code[data-v-fe72d895]{font-family:var(--kobo-font-mono,monospace);color:var(--kobo-text-2);white-space:pre-wrap;word-break:break-all;background-color:#00000059;border:1px solid #ffffff0f;border-radius:4px;margin:6px 0;padding:8px 10px;font-size:11px}.settings-load-error[data-v-fe72d895]{align-items:flex-start;gap:var(--kobo-space-sm);padding:var(--kobo-space-md);border:1px solid var(--kobo-danger);border-radius:var(--kobo-radius-sm);background:var(--kobo-surface);color:var(--kobo-text);flex-shrink:0;display:flex}.settings-load-error__detail[data-v-fe72d895],.settings-load-error__hint[data-v-fe72d895]{color:var(--kobo-text-3);font-size:12px}.settings-layout[data-v-fe72d895]{flex:auto;align-items:stretch;min-height:0;display:flex;position:relative;overflow:hidden}.settings-nav[data-v-fe72d895]{background-color:var(--kobo-surface);border-right:1px solid var(--kobo-border-subtle);flex-shrink:0;width:240px;padding:24px 12px;overflow-y:auto}.settings-nav__title[data-v-fe72d895]{font-family:var(--kobo-font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--kobo-text-3);margin-bottom:16px;padding:0 12px;font-size:11px;font-weight:600}.settings-content[data-v-fe72d895]{flex:1;min-width:0;padding:24px 32px 80px;overflow-y:auto}.settings-content__header[data-v-fe72d895]{border-bottom:1px solid var(--kobo-border-subtle);background-color:var(--kobo-bg);z-index:2;align-items:center;gap:var(--kobo-space-sm);margin-top:-24px;margin-bottom:24px;padding-top:24px;padding-bottom:16px;display:flex;position:sticky;top:-24px}.settings-content__nav-toggle[data-v-fe72d895]{color:var(--kobo-text-2)}.settings-content__title[data-v-fe72d895]{font-family:var(--kobo-font-sans);color:var(--kobo-text);margin:0;font-size:22px;font-weight:600;line-height:1.2}.settings-panels[data-v-fe72d895]{background:0 0}.settings-global-wrap[data-v-fe72d895]{display:block}.settings-card[data-v-fe72d895]{background:var(--kobo-surface);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-md)}.settings-subcard[data-v-fe72d895]{background:var(--kobo-surface);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-md);margin-bottom:16px}.notification-sounds-grid[data-v-fe72d895]{grid-template-columns:1fr;gap:12px;display:grid}.notification-sound-card[data-v-fe72d895]{background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle)}.voice-model-row[data-v-fe72d895]{background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle);transition:border-color var(--kobo-duration-short) var(--kobo-ease-out)}.voice-model-row--active[data-v-fe72d895]{border-color:var(--kobo-accent)}.voice-models-dir[data-v-fe72d895]{background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-sm);padding:6px 10px}.template-card[data-v-fe72d895]{background:var(--kobo-surface);border:1px solid var(--kobo-border-subtle)}.settings-input[data-v-fe72d895] .q-field__control{background:var(--kobo-surface-2);border-color:var(--kobo-border-subtle)}.settings-input[data-v-fe72d895] .q-field__native,.settings-input[data-v-fe72d895] input,.settings-input[data-v-fe72d895] textarea{color:var(--kobo-text)}.settings-input[data-v-fe72d895] .q-field__label{color:var(--kobo-text-3)}.mono-textarea[data-v-fe72d895] textarea{font-family:var(--kobo-font-mono);font-size:13px}.mono-guide[data-v-fe72d895]{white-space:pre-wrap;background:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle);border-radius:var(--kobo-radius-sm);font-family:var(--kobo-font-mono);color:var(--kobo-text-2);margin:0;padding:8px 10px;font-size:12px;line-height:1.35}.readonly-input[data-v-fe72d895] .q-field__control{background:var(--kobo-bg)}.readonly-input[data-v-fe72d895] input{color:var(--kobo-text-3)}.project-list-col[data-v-fe72d895]{flex-shrink:0;align-self:flex-start;width:30%;min-width:200px;max-width:280px;max-height:calc(100vh - 140px);position:sticky;top:0;overflow:hidden}.project-form-col[data-v-fe72d895]{flex:1;min-width:0}.project-item[data-v-fe72d895]:hover{background-color:#ffffff08}.project-item--active[data-v-fe72d895]{border-left:2px solid var(--kobo-accent);background-color:var(--kobo-hover)!important}.save-btn--dirty[data-v-fe72d895]{border-radius:var(--kobo-radius-sm);transition:box-shadow var(--kobo-duration-short) var(--kobo-ease-out);box-shadow:0 0 0 2px var(--kobo-accent)!important}.settings-savebar[data-v-fe72d895]{z-index:30;background-color:var(--kobo-surface);border-top:1px solid var(--kobo-border-subtle);justify-content:space-between;align-items:center;gap:16px;padding:12px 32px;display:flex;position:absolute;bottom:0;left:240px;right:0}.settings-savebar--full[data-v-fe72d895]{padding:var(--kobo-space-md) var(--kobo-space-lg);left:0}.settings-savebar__label[data-v-fe72d895]{font-family:var(--kobo-font-sans);color:var(--kobo-text-2);font-size:13px;font-weight:500}.settings-savebar__action[data-v-fe72d895]{border-radius:var(--kobo-radius-sm);padding:6px 16px;font-size:13px;font-weight:500;background-color:var(--kobo-accent)!important;color:var(--kobo-accent-fg)!important}.settings-savebar__action[data-v-fe72d895]:hover{background-color:var(--kobo-accent-hover)!important}.save-bar-enter-active[data-v-fe72d895],.save-bar-leave-active[data-v-fe72d895]{transition:transform var(--kobo-duration-medium) var(--kobo-ease-out), opacity var(--kobo-duration-medium) var(--kobo-ease-out)}.save-bar-enter-from[data-v-fe72d895],.save-bar-leave-to[data-v-fe72d895]{opacity:0;transform:translateY(100%)}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{M as e,S as t,dt as n,st as r,v as i}from"./reactivity.esm-bundler-tuEvQ47f.js";import{C as a,F as o,J as s,L as c,O as l,P as u,X as d,Y as f,_ as p,d as m,h,l as g,p as _,u as v,y,z as b}from"./runtime-core.esm-bundler-DOiZcasU.js";import{C as x,b as S,nt as C,t as w,tt as T,x as E}from"./QBtn-b_baQtAt.js";import{m as D,p as O}from"./latest-request-7rgsEfKZ.js";import{t as k}from"./use-id-b4A2I8LB.js";import{a as A}from"./i18n-CPFleoLe.js";import{C as j,a as M,i as N,nt as P,o as F,r as I,x as L,y as R}from"./index-BVJWwOvK.js";import{t as z}from"./QSelect-DUuWu79L.js";import{a as B,i as V,n as H,r as U}from"./use-tours-CM4E53aB.js";import{t as W}from"./TouchPan-DKpZbMAf.js";import{t as G}from"./QPage-BCDXjfVj.js";import{t as K}from"./workspace-page-layout-Dw9NhZsL.js";var q=C({name:`QSplitter`,props:{...D,modelValue:{type:Number,required:!0},reverse:Boolean,unit:{type:String,default:`%`,validator:e=>[`%`,`px`].includes(e)},limits:{type:Array,validator:e=>e.length!==2||typeof e[0]!=`number`||typeof e[1]!=`number`?!1:e[0]>=0&&e[0]<=e[1]},emitImmediately:Boolean,horizontal:Boolean,disable:Boolean,beforeClass:[Array,String,Object],afterClass:[Array,String,Object],separatorClass:[Array,String,Object],separatorStyle:[Array,String,Object],separatorAriaLabel:String},emits:[`update:modelValue`],setup(e,{slots:n,emit:r}){let i=S(),o=O(e,i),c=t(null),u={before:t(null),after:t(null)},f=k(),p=g(()=>`q-splitter no-wrap ${e.horizontal?`q-splitter--horizontal column`:`q-splitter--vertical row`} q-splitter--${e.disable?`disabled`:`workable`}`+(o()?` q-splitter--dark`:``)),m=g(()=>e.horizontal?`height`:`width`),h=g(()=>e.reverse?`after`:`before`),_=g(()=>e.limits===void 0?e.unit===`%`?[10,90]:[50,1/0]:e.limits);function v(t){return(e.unit===`%`?t:Math.round(t))+e.unit}let y=g(()=>({[h.value]:{[m.value]:v(e.modelValue)}})),b,C,w,D,A;function j(t){if(t.isFirst){let t=c.value.getBoundingClientRect()[m.value];b=e.horizontal?`up`:`left`,C=e.unit===`%`?100:t,w=Math.min(C,_.value[1],Math.max(_.value[0],e.modelValue)),D=(e.reverse?-1:1)*(e.horizontal?1:i.lang.rtl?-1:1)*(e.unit===`%`?t===0?0:100/t:1),c.value.classList.add(`q-splitter--active`);return}if(t.isFinal){A!==e.modelValue&&r(`update:modelValue`,A),c.value.classList.remove(`q-splitter--active`);return}let n=w+D*(t.direction===b?-1:1)*t.distance[e.horizontal?`y`:`x`];A=Math.min(C,_.value[1],Math.max(_.value[0],n)),u[h.value].value.style[m.value]=v(A),e.emitImmediately&&e.modelValue!==A&&r(`update:modelValue`,A)}let M=g(()=>[[W,e.disable?void 0:j,void 0,{[e.horizontal?`vertical`:`horizontal`]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]),N=g(()=>{let t={role:`separator`,"aria-orientation":e.horizontal?`horizontal`:`vertical`,"aria-label":e.separatorAriaLabel||i.lang.label.resize};if(e.disable)t[`aria-disabled`]=`true`;else{let n=_.value;t.tabindex=0,t[`aria-controls`]=f.value,t[`aria-valuemin`]=n[0],n[1]!==1/0&&(t[`aria-valuemax`]=n[1]),t[`aria-valuenow`]=Math.round(e.modelValue*100)/100}return t}),P=null;function F(t){let{keyCode:n}=t,a=e.horizontal?[38,40]:[37,39];if(n!==13&&n!==36&&n!==35&&!a.includes(n))return;T(t);let o=_.value,s=e.unit===`%`?100:c.value.getBoundingClientRect()[m.value],l;if(n===13)e.modelValue===o[0]?l=P===null?e.modelValue:P:(P=e.modelValue,l=o[0]);else if(n===36)l=o[0];else if(n===35)l=o[1];else{let t=(n===a[0]?-1:1)*(e.reverse?-1:1)*(e.horizontal?1:i.lang.rtl?-1:1);l=e.modelValue+t*(e.unit===`%`?1:10)}let u=Math.min(s,o[1],Math.max(o[0],l));u!==e.modelValue&&r(`update:modelValue`,u)}function I(e,t){e<t[0]?r(`update:modelValue`,t[0]):e>t[1]&&r(`update:modelValue`,t[1])}return s(()=>e.modelValue,e=>{I(e,_.value)}),s(()=>e.limits,()=>{l(()=>{I(e.modelValue,_.value)})}),()=>{let t=[a(`div`,{ref:u.before,id:h.value===`before`?f.value:void 0,class:[`q-splitter__panel q-splitter__before`+(e.reverse?` col`:``),e.beforeClass],style:y.value.before},x(n.before)),a(`div`,{class:[`q-splitter__separator`,e.separatorClass],style:e.separatorStyle,...N.value,onKeydown:e.disable?void 0:F},[d(a(`div`,{class:`q-splitter__separator-area absolute-full`},x(n.separator)),M.value)]),a(`div`,{ref:u.after,id:h.value===`after`?f.value:void 0,class:[`q-splitter__panel q-splitter__after`+(e.reverse?``:` col`),e.afterClass],style:y.value.after},x(n.after))];return a(`div`,{class:p.value,ref:c},E(n.default,t))}}}),J={class:`split-header`,"data-tour":`split-controls`},Y={class:`split-pane-header`},ee={class:`split-recipient`,"aria-live":`polite`},te=[`src`,`title`],ne={key:1,class:`split-empty`},X=B(y({__name:`SplitWorkspacePage`,setup(t){let a=P(),l=U(),d=I(),y=N(),{t:x}=A(),S=[`before`,`after`],C=i([``,``]),T=i([``,``]),E=[null,null],D=i(0),O=null;try{O=localStorage.getItem(`kobo:splitRatio`)}catch{}let k=i(L(O)),B=g(()=>[...a.workspaces,...a.archivedWorkspaces].map(e=>({label:e.name,value:e.id})));function W(e){return B.value.find(t=>t.value===C.value[e])?.label||C.value[e]||x(`split.choose`)}function X(e,t){E[e]=t}function Z(e){try{return E[e]?.contentWindow?.koboPane}catch{return}}async function re(e,t){D.value=e;let n=Z(e);n?(await n.navigate(t),Q()):T.value[e]||(C.value[e]=t,T.value[e]=R(t))}function Q(){for(let e of[0,1]){let t=Z(e);t?.ready()&&(C.value[e]=t.workspaceId()??``),E[e]&&document.activeElement===E[e]&&(D.value=e)}d.name===`split`&&[0,1].every(e=>!T.value[e]||Z(e)?.ready())&&j(y,{left:C.value[0]||void 0,right:C.value[1]||void 0})}function ie(){try{localStorage.setItem(`kobo:splitRatio`,String(k.value))}catch{}}s(()=>[d.query.left,d.query.right],([e,t])=>{for(let[n,r]of[e,t].entries()){let e=typeof r==`string`?r:``;C.value[n]!==e&&(C.value[n]=e,T.value[n]=C.value[n]?R(C.value[n]):``)}},{immediate:!0});let{scheduleAutoRun:ae}=H(),$;return u(()=>{M(`split-panes`,()=>[0,1].some(e=>Z(e)?.hasUnsavedWork())),$=setInterval(Q,500),ae(`split`)}),o(()=>{F(`split-panes`),clearInterval($)}),(t,i)=>(c(),m(G,{class:`split-page`,"style-fn":e(K)},{default:f(()=>[v(`header`,J,[p(w,{flat:``,dense:``,"no-caps":``,label:t.$t(`layout.toggleWorkspaces`),onClick:i[0]||=t=>e(l).toggleLeft()},null,8,[`label`]),v(`strong`,null,n(t.$t(`split.title`)),1),p(V),p(w,{flat:``,dense:``,"no-caps":``,label:t.$t(`split.close`),onClick:i[1]||=t=>e(y).push({name:`workspace`,params:{id:C.value[D.value]||void 0}})},null,8,[`label`])]),p(q,{modelValue:k.value,"onUpdate:modelValue":[i[2]||=e=>k.value=e,ie],limits:[25,75],horizontal:t.$q.screen.lt.md,class:`split-body`},h({_:2},[b(S,(e,i)=>({name:e,fn:f(()=>[v(`section`,{class:r([`split-pane`,{"split-pane--active":D.value===i}])},[v(`div`,Y,[p(z,{"model-value":C.value[i],options:B.value,"emit-value":``,"map-options":``,dense:``,outlined:``,label:t.$t(i===0?`split.left`:`split.right`),class:`split-select`,"onUpdate:modelValue":e=>re(i,e)},null,8,[`model-value`,`options`,`label`,`onUpdate:modelValue`]),v(`span`,ee,n(t.$t(`split.recipient`,{name:W(i)})),1)]),T.value[i]?(c(),_(`iframe`,{key:0,ref:e=>X(i,e),src:T.value[i],title:t.$t(`split.recipient`,{name:W(i)}),class:`split-frame`,onLoad:Q},null,40,te)):(c(),_(`div`,ne,n(t.$t(`split.choose`)),1))],2)])}))]),1032,[`modelValue`,`horizontal`])]),_:1},8,[`style-fn`]))}}),[[`__scopeId`,`data-v-f921b7b1`]]);export{X as default};
|