@loicngr/kobo 1.11.39 → 1.11.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/AGENTS.md +101 -32
  2. package/CHANGELOG.md +8 -0
  3. package/README.md +6 -4
  4. package/dist/mcp-server/kobo-tasks-handlers.js +16 -9
  5. package/dist/mcp-server/kobo-tasks-server.js +13 -2
  6. package/dist/mcp-server/workspace-dialogue-client.js +28 -0
  7. package/dist/server/db/mcp-message-schema.js +16 -0
  8. package/dist/server/db/migrations.js +4 -0
  9. package/dist/server/db/schema.js +4 -0
  10. package/dist/server/db/search-schema.js +53 -0
  11. package/dist/server/index.js +17 -86
  12. package/dist/server/middleware/network-auth-middleware.js +5 -1
  13. package/dist/server/routes/changelog.js +4 -49
  14. package/dist/server/routes/git.js +2 -2
  15. package/dist/server/routes/images.js +65 -5
  16. package/dist/server/routes/mcp.js +47 -0
  17. package/dist/server/routes/pull-requests.js +1 -1
  18. package/dist/server/routes/search.js +13 -4
  19. package/dist/server/routes/settings.js +5 -0
  20. package/dist/server/routes/workspaces.js +250 -248
  21. package/dist/server/services/agent/engines/claude-code/engine.js +31 -33
  22. package/dist/server/services/agent/engines/codex/engine.js +37 -8
  23. package/dist/server/services/agent/engines/codex/event-mapper.js +3 -1
  24. package/dist/server/services/agent/engines/codex/options-builder.js +4 -3
  25. package/dist/server/services/agent/engines/codex/server-requests.js +8 -1
  26. package/dist/server/services/agent/orchestrator.js +20 -3
  27. package/dist/server/services/attachment-service.js +122 -0
  28. package/dist/server/services/change-source-branch-service.js +10 -42
  29. package/dist/server/services/chat-receipt-service.js +33 -0
  30. package/dist/server/services/cron-service.js +27 -1
  31. package/dist/server/services/image-service.js +16 -7
  32. package/dist/server/services/mcp-client-context.js +12 -0
  33. package/dist/server/services/mcp-connection-info-service.js +63 -0
  34. package/dist/server/services/mcp-message-delivery-service.js +59 -0
  35. package/dist/server/services/mcp-message-request-service.js +64 -0
  36. package/dist/server/services/pr-checkout-service.js +10 -10
  37. package/dist/server/services/pr-watcher-service.js +14 -9
  38. package/dist/server/services/search/indexer.js +232 -0
  39. package/dist/server/services/search/worker.js +76 -0
  40. package/dist/server/services/search-service.js +104 -110
  41. package/dist/server/services/update-check-service.js +119 -0
  42. package/dist/server/services/websocket-service.js +121 -35
  43. package/dist/server/services/workspace-dialogue-service.js +128 -0
  44. package/dist/server/services/workspace-message-service.js +58 -0
  45. package/dist/server/services/workspace-permission-policy-service.js +33 -3
  46. package/dist/server/services/worktree-restore-service.js +2 -2
  47. package/dist/server/services/worktree-service.js +197 -124
  48. package/dist/server/utils/bounded-process.js +137 -0
  49. package/dist/server/utils/git-ops.js +76 -128
  50. package/dist/server/utils/git-repo-lock.js +27 -13
  51. package/dist/shared/attachments.js +58 -0
  52. package/dist/shared/workspace-dialogue-tools.js +89 -0
  53. package/dist/shared/workspace-message-types.js +19 -0
  54. package/package.json +2 -1
  55. package/src/client/dist/pwa/assets/{ActivityFeed-Chsw1Mh7.css → ActivityFeed-BYR5x7aa.css} +1 -1
  56. package/src/client/dist/pwa/assets/ActivityFeed-DTIe6O9o.js +8 -0
  57. package/src/client/dist/pwa/assets/{ChangelogPage-D8563008.js → ChangelogPage-BWeu0YeI.js} +1 -1
  58. package/src/client/dist/pwa/assets/{ComparisonPanel-Bd0X08sg.js → ComparisonPanel-o_EHlTwV.js} +2 -2
  59. package/src/client/dist/pwa/assets/CreatePage-CGi88k6z.css +1 -0
  60. package/src/client/dist/pwa/assets/CreatePage-DbY5gBv8.js +2 -0
  61. package/src/client/dist/pwa/assets/DashboardPage-CIo_gesD.js +1 -0
  62. package/src/client/dist/pwa/assets/{DiffViewer-DnR79ycb.css → DiffViewer-DEPOa3D7.css} +1 -1
  63. package/src/client/dist/pwa/assets/DiffViewer-DEcf48KI.js +8 -0
  64. package/src/client/dist/pwa/assets/{DocumentsPanel-BJsJ0fNs.js → DocumentsPanel-D9vcB91W.js} +1 -1
  65. package/src/client/dist/pwa/assets/{DrawerToggleButton-BVLO5K5d.js → DrawerToggleButton-Ca0_CxSl.js} +1 -1
  66. package/src/client/dist/pwa/assets/GitPanel-DCmB2R5i.js +3 -0
  67. package/src/client/dist/pwa/assets/{HealthPage-RFZS7Lao.js → HealthPage-_q3vy_xn.js} +1 -1
  68. package/src/client/dist/pwa/assets/MainLayout-Duwnq3cc.js +2 -0
  69. package/src/client/dist/pwa/assets/{QBtnDropdown-X8oNU5Mb.js → QBtnDropdown-BeiZIHVA.js} +1 -1
  70. package/src/client/dist/pwa/assets/{QDrawer-Cij17skX.js → QDrawer-Fj3M9QGD.js} +1 -1
  71. package/src/client/dist/pwa/assets/QSelect-DtSUuK8t.js +1 -0
  72. package/src/client/dist/pwa/assets/{QTooltip-CwcCGSWq.js → QTooltip-DwkX8eQ6.js} +1 -1
  73. package/src/client/dist/pwa/assets/SchedulePanel-BAA4Aajn.css +1 -0
  74. package/src/client/dist/pwa/assets/SchedulePanel-BlZDd7TK.js +1 -0
  75. package/src/client/dist/pwa/assets/SearchPage-BGc1oQSM.css +1 -0
  76. package/src/client/dist/pwa/assets/SearchPage-BGi1yRxU.js +1 -0
  77. package/src/client/dist/pwa/assets/SettingsPage-DnO-ImWE.js +9 -0
  78. package/src/client/dist/pwa/assets/SettingsPage-sVlsJQ0b.css +1 -0
  79. package/src/client/dist/pwa/assets/{SplitWorkspacePage-D7lGFRKs.js → SplitWorkspacePage-vz6jN1DM.js} +1 -1
  80. package/src/client/dist/pwa/assets/{TerminalPanel-DI8DHb9e.js → TerminalPanel-IdPIGp2_.js} +9 -9
  81. package/src/client/dist/pwa/assets/{TouchPan-B3nrkCY8.js → TouchPan-DTJqxVp9.js} +1 -1
  82. package/src/client/dist/pwa/assets/{TourReplayButton-DU1UShMY.js → TourReplayButton-Bj2GGyhU.js} +1 -1
  83. package/src/client/dist/pwa/assets/{WorkspaceAttentionLabels-C-yN5IX8.js → WorkspaceAttentionLabels-BBaGZlwv.js} +1 -1
  84. package/src/client/dist/pwa/assets/WorkspacePage-DCg9zSxz.css +1 -0
  85. package/src/client/dist/pwa/assets/WorkspacePage-Dy0spsfi.js +4 -0
  86. package/src/client/dist/pwa/assets/{browser-f9MHQjfi.js → browser-BFj5wwbS.js} +1 -1
  87. package/src/client/dist/pwa/assets/{build-path-tree-BWBzP8os.js → build-path-tree-C-HSiySk.js} +1 -1
  88. package/src/client/dist/pwa/assets/de-BdLe7apJ.js +17 -0
  89. package/src/client/dist/pwa/assets/{documents-C2cLnEBQ.js → documents-C2Xnjh9Z.js} +1 -1
  90. package/src/client/dist/pwa/assets/{editor.api-sw146MWN.js → editor.api-BbKfnNmv.js} +1 -1
  91. package/src/client/dist/pwa/assets/{efforts-C5ZZgCH4.js → efforts-BM7fdaaL.js} +1 -1
  92. package/src/client/dist/pwa/assets/engineFeatures-b74YRODT.js +1 -0
  93. package/src/client/dist/pwa/assets/es-C1LM-3aq.js +17 -0
  94. package/src/client/dist/pwa/assets/expand-template-DiDWiIkx.js +1 -0
  95. package/src/client/dist/pwa/assets/{format-BwWP6Aay.js → format-CnbUxAmw.js} +1 -1
  96. package/src/client/dist/pwa/assets/{formatters-DyWtO-nR.js → formatters-B2uUIbAY.js} +1 -1
  97. package/src/client/dist/pwa/assets/fr-KCK6r5ga.js +17 -0
  98. package/src/client/dist/pwa/assets/{freemarker2-DZ5Hm8UH.js → freemarker2-Cu1vGY0x.js} +1 -1
  99. package/src/client/dist/pwa/assets/{handlebars-BRUGpTA7.js → handlebars-CETuqLyz.js} +1 -1
  100. package/src/client/dist/pwa/assets/{html-DNOayNNs.js → html-BTNpr39P.js} +1 -1
  101. package/src/client/dist/pwa/assets/i18n-BkUirOzl.js +1 -0
  102. package/src/client/dist/pwa/assets/index-mvh5w1cM.js +20 -0
  103. package/src/client/dist/pwa/assets/it-BM6t0IGU.js +17 -0
  104. package/src/client/dist/pwa/assets/{javascript-C0tDQU3z.js → javascript-C7Ncb6V7.js} +1 -1
  105. package/src/client/dist/pwa/assets/{liquid-CN46O6OF.js → liquid-D0hUdg4x.js} +1 -1
  106. package/src/client/dist/pwa/assets/{mdx-DM-lrr8Q.js → mdx-BK5H1Xst.js} +1 -1
  107. package/src/client/dist/pwa/assets/{monaco-contributions-CkN7y-8c.js → monaco-contributions-BBW6JNgz.js} +1 -1
  108. package/src/client/dist/pwa/assets/{monaco.contribution-2BcAOLjc.js → monaco.contribution-1LZrAlY4.js} +2 -2
  109. package/src/client/dist/pwa/assets/network-auth-CVGS__6a.js +1 -0
  110. package/src/client/dist/pwa/assets/{notify-theme-a91Tcr6o.js → notify-theme-DIKLxr8F.js} +1 -1
  111. package/src/client/dist/pwa/assets/{pending-diff-open-DOtELZfB.js → pending-diff-open-B02zuH1j.js} +1 -1
  112. package/src/client/dist/pwa/assets/{permissionModes-C-9Crj-c.js → permissionModes-C3otN1Vk.js} +1 -1
  113. package/src/client/dist/pwa/assets/{project-color-BRe4oyNx.js → project-color-BUcW_eZA.js} +1 -1
  114. package/src/client/dist/pwa/assets/{python-BRpJG6sZ.js → python-DEeUVvnp.js} +1 -1
  115. package/src/client/dist/pwa/assets/{razor-CehCmvHl.js → razor-CG6cL8ya.js} +1 -1
  116. package/src/client/dist/pwa/assets/{render-chat-markdown-DlbQLZ02.js → render-chat-markdown-Ct_T5TPN.js} +1 -1
  117. package/src/client/dist/pwa/assets/{typescript-Dt_8mVuj.js → typescript-CSQAg5UC.js} +1 -1
  118. package/src/client/dist/pwa/assets/use-search-index-status-DtLzygcy.js +1 -0
  119. package/src/client/dist/pwa/assets/use-tours-_6HwJ_Rp.js +2 -0
  120. package/src/client/dist/pwa/assets/{workspace-templates-GCObcjO6.js → workspace-templates-B8WWsWEI.js} +1 -1
  121. package/src/client/dist/pwa/assets/{xml-_gOwdzB4.js → xml-BSB4-DXR.js} +1 -1
  122. package/src/client/dist/pwa/assets/{yaml-BxeBqpGf.js → yaml-CSGKph85.js} +1 -1
  123. package/src/client/dist/pwa/index.html +1 -1
  124. package/src/client/dist/pwa/sw.js +1 -1
  125. package/src/mcp-server/README.md +169 -9
  126. package/src/mcp-server/kobo-tasks-handlers.ts +14 -11
  127. package/src/mcp-server/kobo-tasks-server.ts +19 -2
  128. package/src/mcp-server/workspace-dialogue-client.ts +34 -0
  129. package/src/client/dist/pwa/assets/ActivityFeed-BzzvcOmq.js +0 -8
  130. package/src/client/dist/pwa/assets/CreatePage-A3pVradx.css +0 -1
  131. package/src/client/dist/pwa/assets/CreatePage-Bon8qIka.js +0 -2
  132. package/src/client/dist/pwa/assets/DashboardPage-DYxdxEul.js +0 -1
  133. package/src/client/dist/pwa/assets/DiffViewer-BpsLNxnj.js +0 -8
  134. package/src/client/dist/pwa/assets/GitPanel-Cal_wzC0.js +0 -3
  135. package/src/client/dist/pwa/assets/MainLayout-vvyiRcql.js +0 -2
  136. package/src/client/dist/pwa/assets/QSelect-xd-AlGo_.js +0 -1
  137. package/src/client/dist/pwa/assets/SchedulePanel-BunlzsOY.css +0 -1
  138. package/src/client/dist/pwa/assets/SchedulePanel-CXRUsz6G.js +0 -1
  139. package/src/client/dist/pwa/assets/SearchPage-CVgRa025.css +0 -1
  140. package/src/client/dist/pwa/assets/SearchPage-DopbgLxh.js +0 -1
  141. package/src/client/dist/pwa/assets/SettingsPage-Do9d0Pov.css +0 -1
  142. package/src/client/dist/pwa/assets/SettingsPage-Jx6TnOzR.js +0 -9
  143. package/src/client/dist/pwa/assets/WorkspacePage-BAC6u9OP.css +0 -1
  144. package/src/client/dist/pwa/assets/WorkspacePage-DKRpdpPg.js +0 -4
  145. package/src/client/dist/pwa/assets/de-QkDLrcGq.js +0 -17
  146. package/src/client/dist/pwa/assets/engineFeatures-CAVMDawq.js +0 -1
  147. package/src/client/dist/pwa/assets/es-BgQFKlo8.js +0 -17
  148. package/src/client/dist/pwa/assets/expand-template-B6xAlAaM.js +0 -1
  149. package/src/client/dist/pwa/assets/fr-DAdLWjNM.js +0 -17
  150. package/src/client/dist/pwa/assets/i18n-CBez_vip.js +0 -1
  151. package/src/client/dist/pwa/assets/index-VL3fI9a3.js +0 -20
  152. package/src/client/dist/pwa/assets/it-Bumaewp1.js +0 -17
  153. package/src/client/dist/pwa/assets/network-auth-KYS4snQH.js +0 -1
  154. package/src/client/dist/pwa/assets/use-tours-CSVM_54K.js +0 -2
@@ -1 +1 @@
1
- import{v as e}from"./reactivity.esm-bundler-DEJj9cFv.js";import{C as t,J as n,O as r,P as i,T as a,X as o,b as ee,j as te,l as s}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{I as ne,P as c,S as re,tt as l,y as ie}from"./QBtn-CZaBclNw.js";import{a as u,i as ae}from"./pinia-BKqmoVru.js";import{C as oe,b as d,c as f,s as se,v as ce,y as p}from"./use-id-BIuaWKkB.js";import{Et as le,It as ue}from"./index-VL3fI9a3.js";import{i as m}from"./QSelect-xd-AlGo_.js";import{t as h}from"./TouchPan-B3nrkCY8.js";var g=150;function de(e,t){e.value!==t&&(e.value=t)}var _=l({name:`QDrawer`,inheritAttrs:!1,props:{...d,...u,side:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>[`default`,`desktop`,`mobile`].includes(e),default:`default`},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...p,`onLayout`,`miniState`,`escapeKey`],setup(l,{slots:u,emit:d,attrs:p}){let _=ee(),v=ie(),fe=ae(l,v),{preventBodyScroll:y}=le(),{registerTimeout:b,removeTimeout:pe}=oe(),x=a(ne,c);if(x===c)return console.error(`QDrawer needs to be child of QLayout`),c;let S,C=null,w,T=e(l.behavior===`mobile`||l.behavior!==`desktop`&&x.totalWidth.value<=l.breakpoint),E=s(()=>l.mini&&!T.value),D=s(()=>E.value?l.miniWidth:l.width),O=s(()=>l.overlay||l.miniToOverlay||x.view.value.includes(R.value?`R`:`L`)||v.platform.is.ios&&x.isContainer.value),k=e(l.showIfAbove&&!T.value||l.modelValue===!0),A=s(()=>!l.overlay&&k.value&&!T.value),me=s(()=>l.overlay&&k.value&&!T.value),j=s(()=>!l.persistent&&(T.value||me.value));function M(e,t){if(he(),e!==!1&&x.animate(),J(0),T.value){let e=x.instances[W.value];e?.belowBreakpoint.value&&e.hide(!1),Y(1),x.isContainer.value||y(!0)}else Y(0),e!==!1&&X(!1);b(()=>{e!==!1&&X(!0),t||d(`show`,e)},g)}function N(e,t){ge(),e!==!1&&x.animate(),Y(0),J(z.value*D.value),Z(),t?pe():b(()=>{d(`hide`,e)},g)}let{show:P,hide:F}=ce({showing:k,hideOnRouteChange:j,handleShow:M,handleHide:N}),{addToHistory:he,removeFromHistory:ge}=ue(k,F,j),_e=s(()=>k.value&&j.value);function I(e){d(`escapeKey`),F(e)}function ve(e){e?se(I):f(I)}let L={belowBreakpoint:T,hide:F},R=s(()=>l.side===`right`),z=s(()=>(v.lang.rtl?-1:1)*(R.value?1:-1)),B=e(0),V=e(!1),H=e(!1),U=e(D.value*z.value),W=s(()=>R.value?`left`:`right`),G=s(()=>k.value&&!T.value&&!l.overlay?l.miniToOverlay?l.miniWidth:D.value:0),ye=s(()=>`fullscreen q-drawer__backdrop`+(!k.value&&!V.value?` hidden`:``)),be=s(()=>({backgroundColor:`rgba(0,0,0,${B.value*.4})`})),K=s(()=>R.value?x.rows.value.top[2]===`r`:x.rows.value.top[0]===`l`),xe=s(()=>R.value?x.rows.value.bottom[2]===`r`:x.rows.value.bottom[0]===`l`),Se=s(()=>{let e={};return x.header.space&&!K.value&&(O.value?e.top=`${x.header.offset}px`:x.header.space&&(e.top=`${x.header.size}px`)),x.footer.space&&!xe.value&&(O.value?e.bottom=`${x.footer.offset}px`:x.footer.space&&(e.bottom=`${x.footer.size}px`)),e}),Ce=s(()=>{let e={width:`${D.value}px`,transform:`translateX(${U.value}px)`};return T.value?e:Object.assign(e,Se.value)}),we=s(()=>`q-drawer__content fit `+(x.isContainer.value?`overflow-auto`:`scroll`)),Te=s(()=>`q-drawer q-drawer--${l.side}`+(H.value?` q-drawer--mini-animate`:``)+(l.bordered?` q-drawer--bordered`:``)+(fe()?` q-drawer--dark q-dark`:``)+(V.value?` no-transition`:k.value?``:` q-layout--prevent-focus`)+(T.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${E.value?`mini`:`standard`}`+(O.value||!A.value?` fixed`:``)+(l.overlay||l.miniToOverlay?` q-drawer--on-top`:``)+(K.value?` q-drawer--top-padding`:``))),Ee=s(()=>{let e=v.lang.rtl?l.side:W.value;return[[h,Ae,void 0,{[e]:!0,mouse:!0}]]}),De=s(()=>{let e=v.lang.rtl?W.value:l.side;return[[h,T.value&&!l.noSwipeClose?je:void 0,void 0,{[e]:!0,mouse:!0}]]}),Oe=s(()=>{let e=v.lang.rtl?W.value:l.side;return[[h,k.value&&!l.noSwipeBackdrop?je:void 0,void 0,{[e]:!0,mouse:!0,mouseAllDir:!0}]]});function q(){de(T,l.behavior===`mobile`||l.behavior!==`desktop`&&x.totalWidth.value<=l.breakpoint)}n(T,e=>{e?(S=k.value,k.value&&F(!1)):k.value?(J(0),Y(0),Z()):!l.overlay&&l.behavior!==`mobile`&&S!==!1&&P(!1)}),n(()=>l.side,(e,t)=>{x.instances[t]===L&&(x.instances[t]=void 0,x[t].space=!1,x[t].offset=0),x.instances[e]=L,x[e].size=D.value,x[e].space=A.value,x[e].offset=G.value}),n(x.totalWidth,()=>{(x.isContainer.value||!document.qScrollPrevented)&&q()}),n(()=>l.behavior+l.breakpoint,q),n(x.isContainer,e=>{k.value&&y(!e),e&&q()}),n(x.scrollbarWidth,()=>{J(k.value?0:void 0)}),n(G,e=>{Q(`offset`,e)}),n(A,e=>{d(`onLayout`,e),Q(`space`,e)}),n(R,()=>{J()}),n(D,e=>{J(),$(l.miniToOverlay,e)}),n(()=>l.miniToOverlay,e=>{$(e,D.value)}),n(()=>v.lang.rtl,()=>{J()}),n(()=>l.mini,()=>{l.noMiniAnimation||l.modelValue&&(ke(),x.animate())}),n(E,e=>{d(`miniState`,e)});function J(e){e===void 0?r(()=>{e=k.value?0:D.value,J(z.value*e)}):(x.isContainer.value&&R.value&&(T.value||Math.abs(e)===D.value)&&(e+=z.value*x.scrollbarWidth.value),U.value=e)}function Y(e){B.value=e}function X(e){let t=e?`remove`:x.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function ke(){C!==null&&clearTimeout(C),_.proxy&&_.proxy.$el&&_.proxy.$el.classList.add(`q-drawer--mini-animate`),H.value=!0,C=setTimeout(()=>{C=null,H.value=!1,_?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function Ae(e){if(k.value)return;let t=D.value,n=m(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?P():(x.animate(),Y(0),J(z.value*t)),V.value=!1;return}J((v.lang.rtl?!R.value:R.value)?Math.max(t-n,0):Math.min(0,n-t)),Y(m(n/t,0,1)),e.isFirst&&(V.value=!0)}function je(e){if(!k.value)return;let t=D.value,n=e.direction===l.side,r=(v.lang.rtl?!n:n)?m(e.distance.x,0,t):0;if(e.isFinal){Math.abs(r)<Math.min(75,t)?(x.animate(),Y(1),J(0)):F(),V.value=!1;return}J(z.value*r),Y(m(1-r/t,0,1)),e.isFirst&&(V.value=!0)}function Z(){y(!1),X(!0)}function Q(e,t){x.update(l.side,e,t)}function $(e,t){Q(`size`,e?l.miniWidth:t)}return x.instances[l.side]=L,$(l.miniToOverlay,D.value),Q(`space`,A.value),Q(`offset`,G.value),l.showIfAbove&&!l.modelValue&&k.value&&l[`onUpdate:modelValue`]!==void 0&&d(`update:modelValue`,!0),i(()=>{d(`onLayout`,A.value),d(`miniState`,E.value),n(_e,ve,{immediate:!0}),S=l.showIfAbove;let e=()=>{(k.value?M:N)(!1,!0)};if(x.totalWidth.value!==0){r(e);return}w=n(x.totalWidth,()=>{w(),w=void 0,!k.value&&l.showIfAbove&&!T.value?P(!1):e()})}),te(()=>{w?.(),f(I),C!==null&&(clearTimeout(C),C=null),k.value&&Z(),x.instances[l.side]===L&&(x.instances[l.side]=void 0,Q(`size`,0),Q(`offset`,0),Q(`space`,!1))}),()=>{let e=[];T.value&&(l.noSwipeOpen||e.push(o(t(`div`,{key:`open`,class:`q-drawer__opener fixed-${l.side}`,"aria-hidden":`true`}),Ee.value)),e.push(o(t(`div`,{ref:`backdrop`,class:ye.value,style:be.value,"aria-hidden":`true`,onClick:F}),Oe.value)));let n={},r={};for(let e in p)e===`role`||e.startsWith(`aria-`)?n[e]=p[e]:r[e]=p[e];let i=E.value&&u.mini!==void 0,a=[t(`div`,{...r,key:String(i),class:[we.value,p.class]},i?u.mini():re(u.default))];return l.elevated&&k.value&&a.push(t(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),e.push(o(t(`aside`,{ref:`content`,class:Te.value,style:Ce.value,...n},a),De.value)),t(`div`,{class:`q-drawer-container`},e)}}});export{_ as t};
1
+ import{v as e}from"./reactivity.esm-bundler-DEJj9cFv.js";import{C as t,J as n,O as r,P as i,T as a,X as o,b as ee,j as te,l as s}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{I as ne,P as c,S as re,tt as l,y as ie}from"./QBtn-CZaBclNw.js";import{a as u,i as ae}from"./pinia-BKqmoVru.js";import{C as oe,b as d,c as f,s as se,v as ce,y as p}from"./use-id-BIuaWKkB.js";import{At as le,Bt as ue}from"./index-mvh5w1cM.js";import{i as m}from"./QSelect-DtSUuK8t.js";import{t as h}from"./TouchPan-DTJqxVp9.js";var g=150;function de(e,t){e.value!==t&&(e.value=t)}var _=l({name:`QDrawer`,inheritAttrs:!1,props:{...d,...u,side:{type:String,default:`left`,validator:e=>[`left`,`right`].includes(e)},width:{type:Number,default:300},mini:Boolean,miniToOverlay:Boolean,miniWidth:{type:Number,default:57},noMiniAnimation:Boolean,breakpoint:{type:Number,default:1023},showIfAbove:Boolean,behavior:{type:String,validator:e=>[`default`,`desktop`,`mobile`].includes(e),default:`default`},bordered:Boolean,elevated:Boolean,overlay:Boolean,persistent:Boolean,noSwipeOpen:Boolean,noSwipeClose:Boolean,noSwipeBackdrop:Boolean},emits:[...p,`onLayout`,`miniState`,`escapeKey`],setup(l,{slots:u,emit:d,attrs:p}){let _=ee(),v=ie(),fe=ae(l,v),{preventBodyScroll:y}=le(),{registerTimeout:b,removeTimeout:pe}=oe(),x=a(ne,c);if(x===c)return console.error(`QDrawer needs to be child of QLayout`),c;let S,C=null,w,T=e(l.behavior===`mobile`||l.behavior!==`desktop`&&x.totalWidth.value<=l.breakpoint),E=s(()=>l.mini&&!T.value),D=s(()=>E.value?l.miniWidth:l.width),O=s(()=>l.overlay||l.miniToOverlay||x.view.value.includes(R.value?`R`:`L`)||v.platform.is.ios&&x.isContainer.value),k=e(l.showIfAbove&&!T.value||l.modelValue===!0),A=s(()=>!l.overlay&&k.value&&!T.value),me=s(()=>l.overlay&&k.value&&!T.value),j=s(()=>!l.persistent&&(T.value||me.value));function M(e,t){if(he(),e!==!1&&x.animate(),J(0),T.value){let e=x.instances[W.value];e?.belowBreakpoint.value&&e.hide(!1),Y(1),x.isContainer.value||y(!0)}else Y(0),e!==!1&&X(!1);b(()=>{e!==!1&&X(!0),t||d(`show`,e)},g)}function N(e,t){ge(),e!==!1&&x.animate(),Y(0),J(z.value*D.value),Z(),t?pe():b(()=>{d(`hide`,e)},g)}let{show:P,hide:F}=ce({showing:k,hideOnRouteChange:j,handleShow:M,handleHide:N}),{addToHistory:he,removeFromHistory:ge}=ue(k,F,j),_e=s(()=>k.value&&j.value);function I(e){d(`escapeKey`),F(e)}function ve(e){e?se(I):f(I)}let L={belowBreakpoint:T,hide:F},R=s(()=>l.side===`right`),z=s(()=>(v.lang.rtl?-1:1)*(R.value?1:-1)),B=e(0),V=e(!1),H=e(!1),U=e(D.value*z.value),W=s(()=>R.value?`left`:`right`),G=s(()=>k.value&&!T.value&&!l.overlay?l.miniToOverlay?l.miniWidth:D.value:0),ye=s(()=>`fullscreen q-drawer__backdrop`+(!k.value&&!V.value?` hidden`:``)),be=s(()=>({backgroundColor:`rgba(0,0,0,${B.value*.4})`})),K=s(()=>R.value?x.rows.value.top[2]===`r`:x.rows.value.top[0]===`l`),xe=s(()=>R.value?x.rows.value.bottom[2]===`r`:x.rows.value.bottom[0]===`l`),Se=s(()=>{let e={};return x.header.space&&!K.value&&(O.value?e.top=`${x.header.offset}px`:x.header.space&&(e.top=`${x.header.size}px`)),x.footer.space&&!xe.value&&(O.value?e.bottom=`${x.footer.offset}px`:x.footer.space&&(e.bottom=`${x.footer.size}px`)),e}),Ce=s(()=>{let e={width:`${D.value}px`,transform:`translateX(${U.value}px)`};return T.value?e:Object.assign(e,Se.value)}),we=s(()=>`q-drawer__content fit `+(x.isContainer.value?`overflow-auto`:`scroll`)),Te=s(()=>`q-drawer q-drawer--${l.side}`+(H.value?` q-drawer--mini-animate`:``)+(l.bordered?` q-drawer--bordered`:``)+(fe()?` q-drawer--dark q-dark`:``)+(V.value?` no-transition`:k.value?``:` q-layout--prevent-focus`)+(T.value?` fixed q-drawer--on-top q-drawer--mobile q-drawer--top-padding`:` q-drawer--${E.value?`mini`:`standard`}`+(O.value||!A.value?` fixed`:``)+(l.overlay||l.miniToOverlay?` q-drawer--on-top`:``)+(K.value?` q-drawer--top-padding`:``))),Ee=s(()=>{let e=v.lang.rtl?l.side:W.value;return[[h,Ae,void 0,{[e]:!0,mouse:!0}]]}),De=s(()=>{let e=v.lang.rtl?W.value:l.side;return[[h,T.value&&!l.noSwipeClose?je:void 0,void 0,{[e]:!0,mouse:!0}]]}),Oe=s(()=>{let e=v.lang.rtl?W.value:l.side;return[[h,k.value&&!l.noSwipeBackdrop?je:void 0,void 0,{[e]:!0,mouse:!0,mouseAllDir:!0}]]});function q(){de(T,l.behavior===`mobile`||l.behavior!==`desktop`&&x.totalWidth.value<=l.breakpoint)}n(T,e=>{e?(S=k.value,k.value&&F(!1)):k.value?(J(0),Y(0),Z()):!l.overlay&&l.behavior!==`mobile`&&S!==!1&&P(!1)}),n(()=>l.side,(e,t)=>{x.instances[t]===L&&(x.instances[t]=void 0,x[t].space=!1,x[t].offset=0),x.instances[e]=L,x[e].size=D.value,x[e].space=A.value,x[e].offset=G.value}),n(x.totalWidth,()=>{(x.isContainer.value||!document.qScrollPrevented)&&q()}),n(()=>l.behavior+l.breakpoint,q),n(x.isContainer,e=>{k.value&&y(!e),e&&q()}),n(x.scrollbarWidth,()=>{J(k.value?0:void 0)}),n(G,e=>{Q(`offset`,e)}),n(A,e=>{d(`onLayout`,e),Q(`space`,e)}),n(R,()=>{J()}),n(D,e=>{J(),$(l.miniToOverlay,e)}),n(()=>l.miniToOverlay,e=>{$(e,D.value)}),n(()=>v.lang.rtl,()=>{J()}),n(()=>l.mini,()=>{l.noMiniAnimation||l.modelValue&&(ke(),x.animate())}),n(E,e=>{d(`miniState`,e)});function J(e){e===void 0?r(()=>{e=k.value?0:D.value,J(z.value*e)}):(x.isContainer.value&&R.value&&(T.value||Math.abs(e)===D.value)&&(e+=z.value*x.scrollbarWidth.value),U.value=e)}function Y(e){B.value=e}function X(e){let t=e?`remove`:x.isContainer.value?``:`add`;t!==``&&document.body.classList[t](`q-body--drawer-toggle`)}function ke(){C!==null&&clearTimeout(C),_.proxy&&_.proxy.$el&&_.proxy.$el.classList.add(`q-drawer--mini-animate`),H.value=!0,C=setTimeout(()=>{C=null,H.value=!1,_?.proxy?.$el?.classList.remove(`q-drawer--mini-animate`)},150)}function Ae(e){if(k.value)return;let t=D.value,n=m(e.distance.x,0,t);if(e.isFinal){n>=Math.min(75,t)?P():(x.animate(),Y(0),J(z.value*t)),V.value=!1;return}J((v.lang.rtl?!R.value:R.value)?Math.max(t-n,0):Math.min(0,n-t)),Y(m(n/t,0,1)),e.isFirst&&(V.value=!0)}function je(e){if(!k.value)return;let t=D.value,n=e.direction===l.side,r=(v.lang.rtl?!n:n)?m(e.distance.x,0,t):0;if(e.isFinal){Math.abs(r)<Math.min(75,t)?(x.animate(),Y(1),J(0)):F(),V.value=!1;return}J(z.value*r),Y(m(1-r/t,0,1)),e.isFirst&&(V.value=!0)}function Z(){y(!1),X(!0)}function Q(e,t){x.update(l.side,e,t)}function $(e,t){Q(`size`,e?l.miniWidth:t)}return x.instances[l.side]=L,$(l.miniToOverlay,D.value),Q(`space`,A.value),Q(`offset`,G.value),l.showIfAbove&&!l.modelValue&&k.value&&l[`onUpdate:modelValue`]!==void 0&&d(`update:modelValue`,!0),i(()=>{d(`onLayout`,A.value),d(`miniState`,E.value),n(_e,ve,{immediate:!0}),S=l.showIfAbove;let e=()=>{(k.value?M:N)(!1,!0)};if(x.totalWidth.value!==0){r(e);return}w=n(x.totalWidth,()=>{w(),w=void 0,!k.value&&l.showIfAbove&&!T.value?P(!1):e()})}),te(()=>{w?.(),f(I),C!==null&&(clearTimeout(C),C=null),k.value&&Z(),x.instances[l.side]===L&&(x.instances[l.side]=void 0,Q(`size`,0),Q(`offset`,0),Q(`space`,!1))}),()=>{let e=[];T.value&&(l.noSwipeOpen||e.push(o(t(`div`,{key:`open`,class:`q-drawer__opener fixed-${l.side}`,"aria-hidden":`true`}),Ee.value)),e.push(o(t(`div`,{ref:`backdrop`,class:ye.value,style:be.value,"aria-hidden":`true`,onClick:F}),Oe.value)));let n={},r={};for(let e in p)e===`role`||e.startsWith(`aria-`)?n[e]=p[e]:r[e]=p[e];let i=E.value&&u.mini!==void 0,a=[t(`div`,{...r,key:String(i),class:[we.value,p.class]},i?u.mini():re(u.default))];return l.elevated&&k.value&&a.push(t(`div`,{class:`q-layout__shadow absolute-full overflow-hidden no-pointer-events`})),e.push(o(t(`aside`,{ref:`content`,class:Te.value,style:Ce.value,...n},a),De.value)),t(`div`,{class:`q-drawer-container`},e)}}});export{_ as t};
@@ -0,0 +1 @@
1
+ import{S as e,v as t}from"./reactivity.esm-bundler-DEJj9cFv.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-CDnVUfeZ.js";import{$ as p,J as m,S as h,U as g,V as _,W as v,Y as y,Z as b,b as te,ct as x,et as S,g as C,l as w,tt as T,u as E,y as ne}from"./QBtn-CZaBclNw.js";import{a as D,i as O}from"./pinia-BKqmoVru.js";import{C as k,S as A,_ as j,a as re,b as ie,c as M,f as N,g as P,h as F,i as I,l as L,m as ae,s as R,u as oe,v as z,x as B,y as V}from"./use-id-BIuaWKkB.js";import{i as se,r as ce}from"./private.use-form-C7umbGO-.js";import{Ct as le,Dt as ue,Ot as de,St as fe,Wt as pe,bt as me,kt as H,vt as he,xt as ge,yt as _e}from"./index-mvh5w1cM.js";import{n as ve,t as U}from"./QItemSection-D_5_0UrX.js";import{c as ye,d as be,l as xe,o as Se,s as Ce,u as we}from"./use-tours-_6HwJ_Rp.js";import{t as Te}from"./QChip-owciRuZu.js";var W=1e3,G=[`start`,`center`,`end`,`start-force`,`center-force`,`end-force`],Ee=Array.prototype.filter,De=window.getComputedStyle(document.body).overflowAnchor===void 0?y: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||[];Ee.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 Oe(e,t){return e+t}function ke(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 Ae(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 K(e,t,n,r){if(n>=r)return 0;let i=t.length,a=Math.floor(n/W),o=Math.floor((r-1)/W)+1,s=0;for(let t=a;t<o;t++)s+=e[t];if(n%W!==0)for(let e=a*W;e<n;e++)s-=t[e];if(r%W!==0&&r!==i){let e=Math.min(o*W,i);for(let n=r;n<e;n++)s-=t[n]}return s}var q={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(q);var je={virtualScrollHorizontal:Boolean,onVirtualScroll:Function,...q};function Me({virtualScrollLength:i,getVirtualScrollTarget:o,getVirtualScrollEl:l,virtualScrollItemSizeComputed:p}){let{props:m,emit:h,proxy:g}=u(),_=ne(),y,b,te,x=[],S,C=t(0),w=t(0),T=t({}),E=e(null),D=e(null),O=e(null),k=t({from:0,to:0}),A=f(()=>m.tableColspan===void 0?100:m.tableColspan);p===void 0&&(p=f(()=>m.virtualScrollItemSize));let j=f(()=>p.value+`;`+m.virtualScrollHorizontal),re=f(()=>j.value+`;`+m.virtualScrollSliceRatioBefore+`;`+m.virtualScrollSliceRatioAfter);a(re,()=>{R()}),a(j,ie);function ie(){ae(b,!0)}function M(e){ae(e===void 0?b:e)}function N(e,t){let n=o();if(n==null||n.nodeType===8)return;let r=ke(n,l(),E.value,D.value,m.virtualScrollHorizontal,_.lang.rtl,m.virtualScrollStickySizeStart,m.virtualScrollStickySizeEnd);te!==r.scrollViewSize&&R(r.scrollViewSize),F(n,r,Math.min(i.value-1,Math.max(0,Number.parseInt(e,10)||0)),0,G.includes(t)?t:b!==-1&&e>b?`end`:`start`)}function P(){let e=o();if(e==null||e.nodeType===8)return;let t=ke(e,l(),E.value,D.value,m.virtualScrollHorizontal,_.lang.rtl,m.virtualScrollStickySizeStart,m.virtualScrollStickySizeEnd),n=i.value-1,r=t.scrollMaxSize-t.offsetStart-t.offsetEnd-w.value;if(y===t.scrollStart)return;if(t.scrollMaxSize<=0){F(e,t,0,0);return}te!==t.scrollViewSize&&R(t.scrollViewSize),I(k.value.from);let a=Math.floor(t.scrollMaxSize-Math.max(t.scrollViewSize,t.offsetEnd)-Math.min(S[n],t.scrollViewSize/2));if(a>0&&Math.ceil(t.scrollStart)>=a){F(e,t,n,t.scrollMaxSize-t.offsetEnd-x.reduce(Oe,0));return}let s=0,c=t.scrollStart-t.offsetStart,u=c;if(c<=r&&c+t.scrollViewSize>=C.value)c-=C.value,s=k.value.from,u=c;else for(let e=0;c>=x[e]&&s<n;e++)c-=x[e],s+=W;for(;c>0&&s<n;)c-=S[s],c>-t.scrollViewSize?(s++,u=c):u=S[s]+c;F(e,t,s,u)}function F(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-T.value[c]),u=l+T.value.total;u>i.value&&(u=i.value,l=Math.max(0,u-T.value.total)),y=t.scrollStart;let ee=l!==k.value.from||u!==k.value.to;if(!ee&&s===void 0){z(n);return}let{activeElement:d}=document,f=O.value;ee&&f!==null&&f!==d&&f.contains(d)&&(f.addEventListener(`focusout`,L),setTimeout(()=>{f?.removeEventListener(`focusout`,L)},0)),De(f,n-l);let p=s===void 0?0:S.slice(l,n).reduce(Oe,0);if(ee){let e=u>=k.value.from&&l<=k.value.to?k.value.to:u;k.value={from:l,to:e},C.value=K(x,S,0,l),w.value=K(x,S,u,i.value),requestAnimationFrame(()=>{k.value.to!==u&&y===t.scrollStart&&(k.value={from:k.value.from,to:u},w.value=K(x,S,u,i.value))})}requestAnimationFrame(()=>{if(y!==t.scrollStart)return;ee&&I(l);let i=S.slice(l,n).reduce(Oe,0),a=i+t.offsetStart+C.value,c=a+S[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-S[n])/2))}y=u,Ae(e,u,m.virtualScrollHorizontal,_.lang.rtl),z(n)})}function I(e){let t=O.value;if(t){let n=Ee.call(t.children,e=>e.classList&&!e.classList.contains(`q-virtual-scroll--skip`)),r=n.length,i=m.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-S[a],s!==0&&(S[a]+=s,x[Math.floor(a/W)]+=s),a++}}}function L(){O.value?.focus({preventScroll:!0})}function ae(e,t){let n=Number(p.value);(t||!Array.isArray(S))&&(S=[]);let r=S.length;S.length=i.value;for(let e=i.value-1;e>=r;e--)S[e]=n;let a=Math.floor((i.value-1)/W);x=[];for(let e=0;e<=a;e++){let t=0,n=Math.min((e+1)*W,i.value);for(let r=e*W;r<n;r++)t+=S[r];x.push(t)}b=-1,y=void 0,C.value=K(x,S,0,k.value.from),w.value=K(x,S,k.value.to,i.value),e>=0?(I(k.value.from),c(()=>{N(e)})):B()}function R(e){if(e===void 0&&typeof window<`u`){let t=o();t!=null&&t.nodeType!==8&&(e=ke(t,l(),E.value,D.value,m.virtualScrollHorizontal,_.lang.rtl,m.virtualScrollStickySizeStart,m.virtualScrollStickySizeEnd).scrollViewSize)}te=e;let t=Number.parseFloat(m.virtualScrollSliceRatioBefore)||0,n=Number.parseFloat(m.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((m.virtualScrollSliceSize>0?m.virtualScrollSliceSize:10)/r));T.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 oe(e,t,n){let i=m.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:E,"aria-hidden":`true`},[r(`tr`,[r(`td`,{style:{[i]:`${C.value}px`,...a},colspan:A.value})])]):r(e,{class:`q-virtual-scroll__padding`,key:`before`,ref:E,"aria-hidden":`true`,style:{[i]:`${C.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]:`${w.value}px`,...a},colspan:A.value})])]):r(e,{class:`q-virtual-scroll__padding`,key:`after`,ref:D,"aria-hidden":`true`,style:{[i]:`${w.value}px`,...a}})]}function z(e){b!==e&&(m.onVirtualScroll!==void 0&&h(`virtualScroll`,{index:e,from:k.value.from,to:k.value.to-1,direction:e<b?`decrease`:`increase`,ref:g}),b=e)}R();{let e=Math.min(i.value,T.value.total),t=Number(p.value);k.value={from:0,to:e},w.value=Number.isFinite(t)?Math.max(0,(i.value-e)*t):0}let B=v(P,_.platform.is.ios?120:35);n(()=>{R()});let V=!1;return s(()=>{V=!0}),d(()=>{if(!V)return;let e=o();y!==void 0&&e!=null&&e.nodeType!==8?Ae(e,y,m.virtualScrollHorizontal,_.lang.rtl):N(b)}),ee(()=>{B.cancel()}),Object.assign(g,{scrollTo:N,reset:ie,refresh:M}),{virtualScrollSliceRange:k,virtualScrollSliceSizeComputed:T,setVirtualScrollSize:R,onVirtualScrollEvt:B,localResetVirtualScroll:ae,padVirtualScroll:oe,scrollTo:N,reset:ie,refresh:M}}var Ne=T({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},h(t.default))}}),Pe={left:!0,right:!0,up:!0,down:!0,horizontal:!0,vertical:!0},Fe=Object.keys(Pe);Pe.all=!0;function Ie(e){let t={};for(let n of Fe)e[n]&&(t[n]=!0);return Object.keys(t).length===0?Pe:(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 Le=[`INPUT`,`TEXTAREA`];function Re(e,t){return t.event===void 0&&e.target!==void 0&&!e.target.draggable&&typeof t.handler==`function`&&!Le.includes(e.target.nodeName.toUpperCase())&&(e.qClonedBy===void 0||!e.qClonedBy.includes(t.uid))}function ze(e,t,n){return n<=t?t:Math.min(n,Math.max(t,e))}function Be(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 Ve={hover:Boolean,hoverDelay:{type:Number,default:0},hoverHideDelay:{type:Number,default:150}};function He({props:e,canShow:t,show:n,canHide:r,hide:i}){let{removeTimeout:a,registerTimeout:o}=k();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 J=null,{notPassiveCapture:Ue,passiveCapture:We}=m,Y=[];function X(e){J!==null&&(clearTimeout(J),J=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=F.length-1;e>=0;e--){let t=F[e].$,i=t.type.name;if(i!==`QTooltip`){if(i===`QDialog`){if(t.props.seamless!==!0){if(r===!1)return;n=new Set(F.slice(e+1).map(e=>e.contentEl));break}continue}r=!0}}for(let r=Y.length-1;r>=0;r--){let i=Y[r];if(n!==null&&!n.has(i.innerRef.value))return;if((i.anchorEl.value===null||!i.anchorEl.value.contains(t)&&!I(i.anchorEl.value,t))&&(t===document.body||i.innerRef.value!==null&&!i.innerRef.value.contains(t)&&!I(i.innerRef.value,t)))e.qClickOutside=!0,i.onClickOutside(e);else return}}function Z(e){e.pointerType!==`touch`&&(J!==null&&clearTimeout(J),J=setTimeout(()=>{J=null,X(e)},0))}function Q(e){Y.push(e),Y.length===1&&(document.addEventListener(`pointerdown`,Z,We),document.addEventListener(`mousedown`,X,Ue),document.addEventListener(`touchstart`,X,Ue))}function Ge(e){let t=Y.indexOf(e);t!==-1&&(Y.splice(t,1),Y.length===0&&(J!==null&&(clearTimeout(J),J=null),document.removeEventListener(`pointerdown`,Z,We),document.removeEventListener(`mousedown`,X,Ue),document.removeEventListener(`touchstart`,X,Ue)))}var Ke=`a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"])`,qe=T({name:`QMenu`,inheritAttrs:!1,props:{...be,...ie,...D,...j,persistent:Boolean,autoClose:Boolean,separateClosePopup:Boolean,noEscDismiss:Boolean,noRouteDismiss:Boolean,noRefocus:Boolean,noFocus:Boolean,fit:Boolean,cover:Boolean,square:Boolean,anchor:{type:String,validator:xe},self:{type:String,validator:xe},offset:{type:Array,validator:ye},touchPosition:Boolean,...Ve,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null}},emits:[...V,`click`,`escapeKey`],setup(n,{slots:i,emit:o,attrs:s}){let c=null,l,d=!1,p=u(),{proxy:m}=p,g=ne(),_=e(null),v=t(!1),y=f(()=>!n.persistent&&!n.noRouteDismiss),b=O(n,g),{registerTick:te,removeTick:w}=B(),{registerTransitionEnd:T}=A(n),{transitionProps:D,transitionStyle:k}=P(n),{anchorEl:j,canShow:ie,anchorEvents:F}=we({showing:v,getPopupRole:()=>s.role}),{show:I,hide:V}=z({showing:v,canShow:ie,canHide(e){return d&&!me.value?e?.type!==`click`:!0},handleShow:Ee,handleHide:De,handleRouteChange:Oe,hideOnRouteChange:y,processOnMount:!0}),{clearHoverTimer:se,hoverShow:ce,scheduleHoverHide:le,onHoverContentEnter:ue}=He({props:n,canShow:()=>!v.value,show:I,canHide:e=>v.value&&!W(e.relatedTarget),hide:V});Object.assign(F,{hoverShow:ce,hoverHide:G});let{showPortal:fe,hidePortal:pe,portalIsAccessible:me,renderPortal:he}=L(p,_,Me,`menu`),ge={anchorEl:j,innerRef:_,onClickOutside(e){if(!n.persistent&&v.value)return V(e),(e.type===`touchstart`||e.target.classList.contains(`q-dialog__backdrop`))&&S(e),!0}},_e=f(()=>Ce(n.anchor||(n.cover?`center middle`:`bottom start`),g.lang.rtl)),ve=f(()=>n.cover?_e.value:Ce(n.self||`top start`,g.lang.rtl)),U=Se({props:n,$q:g,anchorEl:j,innerRef:_,showing:v,anchorOrigin:_e,selfOrigin:ve}),ye=f(()=>`q-menu scroll`+(U.viaCssAnchor?``:` q-position-engine`)+(n.square?` q-menu--square`:``)+(b()?` q-menu--dark q-dark`:``)),be=f(()=>n.autoClose?{onClick:Ae}:{}),xe=f(()=>v.value&&!n.persistent);a(xe,e=>{e?(R(q),Q(ge)):(M(q),Ge(ge))});function Te(){oe(()=>{let e=_.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 W(e){if(e==null)return!1;if(j.value!==null&&j.value.contains(e)||_.value!==null&&_.value.contains(e))return!0;let t=ae(e);for(;t!=null;){if(t===m)return!0;t=C(t)}return!1}function G(e){if(e.pointerType===`touch`)return;le(e);let t=C(m);for(;t!=null;)t.$options.name===`QMenu`&&t.$props.hover===!0&&t.__qHoverHide?.(e),t=C(t)}function Ee(e){d=n.hover&&e?.type===`pointerenter`,se(),c=n.noRefocus||d?null:document.activeElement,de(K),fe(!1,d),U.handleShow(!d&&(n.touchPosition||n.contextMenu)?e:void 0),!n.noFocus&&!d&&document.activeElement.blur(),te(()=>{U.handleTick(),!n.noFocus&&!d&&Te()}),T(()=>{g.platform.is.ios&&(l=n.autoClose,_.value.click()),U.viaCssAnchor||U.track(),fe(!0),o(`show`,e)})}function De(e){if(d=!1,w(),pe(),ke(!0),c!==null&&(e===void 0||!e.qClickOutside)){let t=(e?.type.indexOf(`key`)===0?c.closest(`[tabindex]:not([tabindex^="-"])`):void 0)||c;c=null,oe(()=>{t.isConnected&&t.focus({preventScroll:!0})})}T(()=>{pe(!0),U.releaseAnchor(!1),o(`hide`,e)})}function Oe(){c=null}function ke(e){se(),U.releaseAnchor(e),(e||v.value)&&(H(K),Ge(ge),M(q)),e||(c=null)}function Ae(e){l?l=!1:(N(m,e),o(`click`,e))}function K(e){xe.value&&!n.noFocus&&!d&&!E(_.value,e.target)&&!re(_.value,e.target)&&Te()}function q(e){n.noEscDismiss||(o(`escapeKey`),V(e))}function je(e){if(e.keyCode!==9||e.defaultPrevented||!xe.value||_.value===null)return;let t=_.value,n=t.querySelectorAll(Ke),r=n.length===0?null:n[e.shiftKey?0:n.length-1];(r===null||document.activeElement===r||e.shiftKey&&document.activeElement===t)&&(H(K),c!==null&&c.isConnected&&(c.closest(`[tabindex]:not([tabindex^="-"])`)||c).focus({preventScroll:!0}),c=null,V(e))}function Me(){return r(x,D(),()=>v.value?r(`div`,{...s,ref:_,tabindex:-1,onKeydown:[].concat(s.onKeydown||[],je),...n.hover?{onPointerenter:[].concat(s.onPointerenter||[],ue),onPointerleave:[].concat(s.onPointerleave||[],G)}:{},class:[ye.value,s.class],style:[s.style,k(),U.positionStyle.value],...be.value},h(i.default)):null)}return ee(()=>{ke(!1)}),Object.assign(m,{focus:Te,updatePosition:U.updatePosition}),m.__qHoverHide=le,he}}),Je=T({name:`QField`,inheritAttrs:!1,props:{...fe,tag:{type:String,default:`label`}},emits:ge,setup(){return me(le({tagProp:!0}))}}),Ye=e=>[`add`,`add-unique`,`toggle`].includes(e),Xe=".*+?^${}()|[]\\",Ze=Object.keys(fe);function Qe(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 $e=T({name:`QSelect`,inheritAttrs:!1,props:{...je,...se,...fe,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:Ye},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`},...Ve,virtualScrollItemSize:je.virtualScrollItemSize.type,onNewValue:Function,onFilter:Function},emits:[...ge,`add`,`remove`,`inputValue`,`keyup`,`keypress`,`keydown`,`popupShow`,`popupHide`,`filterAbort`],setup(n,{slots:s,emit:d}){let{proxy:m}=u(),h=ne(),v=t(!1),y=t(!1),x=t(-1),T=t(``),E=t(!1),D=t(!1),O=null,k=null,A=!1,j=0,re,ie=!1,M,N,P=null,F,I,L,R,oe=e(null),z=e(null),B=e(null),V=e(null),se=e(null),de=ce(n),fe=he(vt),H=f(()=>Array.isArray(n.options)?n.options.length:0),{virtualScrollSliceRange:ge,virtualScrollSliceSizeComputed:ye,localResetVirtualScroll:be,padVirtualScroll:xe,onVirtualScrollEvt:Se,scrollTo:Ce,setVirtualScrollSize:we}=Me({virtualScrollLength:H,getVirtualScrollTarget:mt,getVirtualScrollEl:pt,virtualScrollItemSizeComputed:f(()=>n.virtualScrollItemSize===void 0?n.optionsDense?24:48:n.virtualScrollItemSize)}),W=le(),G=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&&re!==void 0?re:[],i=t.map(e=>ot(e,r));return n.modelValue===null&&e?i.filter(e=>e!==null):i}return t}),Ee=f(()=>{let e={};return Ze.forEach(t=>{let r=n[t];r!==void 0&&(e[t]=r)}),e}),De=f(()=>n.optionsDark===null?W.isDark():n.optionsDark),Oe=f(()=>_e(G.value)),ke=f(()=>{let e=`q-field__input q-placeholder col`;return n.hideSelected||G.value.length===0?[e,n.inputClass]:(e+=` q-field__input--padding`,n.inputClass===void 0?e:[e,n.inputClass])}),Ae=f(()=>(n.virtualScrollHorizontal?`q-virtual-scroll--horizontal`:``)+(n.popupContentClass?` `+n.popupContentClass:``)),K=f(()=>H.value===0);function q(){return s[`no-option`]!==void 0||n.noOptionLabel!==void 0}let je=f(()=>G.value.map(e=>Z.value(e)).join(`, `)),Pe=f(()=>n.displayValue===void 0?je.value:n.displayValue),Fe=f(()=>n.optionsHtml?()=>!0:e=>e?.html===!0),Ie=f(()=>n.displayValueHtml||n.displayValue===void 0&&(n.optionsHtml||G.value.some(Fe.value))),Le=f(()=>W.focused.value?n.tabindex:-1),Re=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&&!K.value&&(e[`aria-controls`]=`${W.targetUid.value}_lb`),x.value>=0&&(e[`aria-activedescendant`]=`${W.targetUid.value}_${x.value}`),e}),ze=f(()=>({id:`${W.targetUid.value}_lb`,role:`listbox`,"aria-multiselectable":n.multiple?`true`:`false`})),Ve=f(()=>G.value.map((e,t)=>({index:t,opt:e,html:Fe.value(e),selected:!0,removeAtIndex:tt,toggleOption:rt,tabindex:Le.value}))),J=f(()=>{if(H.value===0)return[];let{from:e,to:t}=ge.value;return n.options.slice(e,t).map((t,r)=>{let i=Q.value(t)===!0,a=st(t),o=e+r,s={clickable:!0,active:a,activeClass:Y.value,manualFocus:!0,focused:!1,disable:i,tabindex:-1,dense:n.optionsDense,dark:De.value,role:`option`,"aria-selected":a?`true`:`false`,"aria-setsize":H.value,"aria-posinset":o+1,id:`${W.targetUid.value}_${o}`,onClick:()=>{rt(t)}};return i||(x.value===o&&(s.focused=!0),s.onPointermove=e=>{e.pointerType!==`touch`&&v.value&&it(o)}),{index:o,opt:t,html:Fe.value(t),label:Z.value(t),selected:s.active,focused:s.focused,toggleOption:rt,setOptionIndex:it,itemProps:s}})}),Ue=f(()=>n.dropdownIcon===void 0?h.iconSet.arrow.dropdown:n.dropdownIcon),We=f(()=>!n.optionsCover&&!n.outlined&&!n.standout&&!n.borderless&&!n.rounded),Y=f(()=>n.optionsSelectedClass===void 0?n.color===void 0?``:`text-${n.color}`:n.optionsSelectedClass),X=f(()=>Qe(n.optionValue,`value`)),Z=f(()=>Qe(n.optionLabel,`label`)),Q=f(()=>Qe(n.optionDisable,`disable`)),Ge=f(()=>G.value.map(X.value)),Ke=f(()=>{let e={onInput:vt,onChange:fe,onKeydown:ft,onKeyup:ut,onKeypress:dt,onFocus:ct,onClick(e){M&&p(e)}};return e.onCompositionstart=e.onCompositionupdate=e.onCompositionend=fe,e});a(G,e=>{re=e,n.useInput&&n.fillInput&&!n.multiple&&!W.innerLoading.value&&(!y.value&&!v.value||!Oe.value)&&(N||Bt(),(y.value||v.value)&&xt(``)),ie&&St()&&(ie=!1)},{immediate:!0}),a(()=>n.fillInput,Bt),a(v,Vt),a(H,Ht);function $e(e){return n.emitValue?X.value(e):e}function et(e){if(e!==-1&&e<G.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 tt(e){et(e),W.focus()}function nt(e,t){let r=$e(e);if(!n.multiple){n.fillInput&&bt(Z.value(e),!0,!0),d(`update:modelValue`,r);return}if(G.value.length===0){d(`add`,{index:0,value:r}),d(`update:modelValue`,n.multiple?[r]:r);return}if(t&&st(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 rt(e,t){if(!W.editable.value||e===void 0||Q.value(e)===!0)return;let r=X.value(e);if(!n.multiple){let i=!t&&y.value;t||(bt(n.fillInput?Z.value(e):``,!0,!0),$()),i||z.value?.focus(),(G.value.length===0||!pe(X.value(G.value[0]),r))&&d(`update:modelValue`,n.emitValue?r:e);return}if((!M||E.value)&&W.focus(),ct(),G.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=Ge.value.findIndex(e=>pe(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 it(e){let t=e!==-1&&e<H.value?e:-1;x.value!==t&&(x.value=t)}function at(e=1,t){if(v.value){let r=x.value;do r=Be(r+e,-1,H.value-1);while(r!==-1&&r!==x.value&&Q.value(n.options[r])===!0);x.value!==r&&(it(r),Ce(r),!t&&n.useInput&&n.fillInput&&yt(r>=0?Z.value(n.options[r]):F,!0))}}function ot(e,t){let r=t=>pe(X.value(t),e);return n.options.find(r)||t.find(r)||e}function st(e){let t=X.value(e);return Ge.value.find(e=>pe(e,t))!==void 0}function ct(e){n.useInput&&z.value!==null&&(e===void 0||z.value===e.target&&e.target.value===je.value)&&z.value.select()}function lt(e){_(e,27)&&v.value&&(p(e),$(e),Bt()),d(`keyup`,e)}function ut(e){let{value:t}=e.target;if(e.keyCode!==void 0){lt(e);return}if(e.target.value=``,O!==null&&(clearTimeout(O),O=null),k!==null&&(clearTimeout(k),k=null),Bt(),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&&(G.value.includes(r)?$():rt(r),!0)},i=e=>{!r(X)&&!e&&!r(Z)&&xt(t,!0,()=>i(!0))};i()}else W.clearValue(e)}function dt(e){d(`keypress`,e)}function ft(e){if(d(`keydown`,e),e.defaultPrevented||g(e))return;let t=T.value.length!==0&&(n.newValueMode!==void 0||n.onNewValue!==void 0),r=!e.shiftKey&&!n.disableTabSelection&&!n.multiple&&(x.value!==-1||t);if(e.keyCode===27){b(e);return}if(e.keyCode===9&&!r){Mt(e);return}if(e.target===void 0||e.target.id!==W.targetUid.value||!W.editable.value)return;if((e.keyCode===40||e.keyCode===38)&&!W.innerLoading.value&&!v.value){S(e),zt(e);return}if(e.keyCode===8&&(n.useChips&&!n.noChipRemove||n.clearable)&&!n.hideSelected&&T.value.length===0){(n.clearable||Q.value(G.value.at(-1))!==!0)&&(n.multiple&&Array.isArray(n.modelValue)?et(n.modelValue.length-1):!n.multiple&&n.modelValue!==null&&d(`update:modelValue`,null));return}(e.keyCode===35||e.keyCode===36)&&(typeof T.value!=`string`||T.value.length===0)&&(S(e),x.value=-1,at(e.keyCode===36?1:-1,n.multiple)),(e.keyCode===33||e.keyCode===34)&&ye.value!==void 0&&(S(e),x.value=Math.max(-1,Math.min(H.value,x.value+(e.keyCode===33?-1:1)*ye.value.view)),at(e.keyCode===33?1:-1,n.multiple)),(e.keyCode===38||e.keyCode===40)&&(S(e),at(e.keyCode===38?-1:1,n.multiple));let i=H.value;if((L===void 0||R<Date.now())&&(L=``),i>0&&!n.useInput&&e.key!==void 0&&e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&(e.keyCode!==32||L.length!==0)){v.value||zt(e);let t=e.key.toLocaleLowerCase(),r=L.length===1&&L[0]===t;R=Date.now()+1500,r||(S(e),L+=t);let a=RegExp(`^`+[...L].map(e=>Xe.includes(e)?`\\`+e:e).join(`.*`),`i`),o=x.value;if(r||o<0||!a.test(Z.value(n.options[o])))do o=Be(o+1,-1,i-1);while(o!==x.value&&(Q.value(n.options[o])===!0||!a.test(Z.value(n.options[o]))));x.value!==o&&c(()=>{it(o),Ce(o),o>=0&&n.useInput&&n.fillInput&&yt(Z.value(n.options[o]),!0)});return}if(e.keyCode===13||e.keyCode===32&&!n.useInput&&L===``||e.keyCode===9&&r){if(e.keyCode!==9&&S(e),x.value!==-1&&x.value<i){rt(n.options[x.value]);return}if(t){let e=(e,t)=>{if(t){if(!Ye(t))return}else t=n.newValueMode;bt(``,!n.multiple,!0),e!=null&&((t===`toggle`?rt:nt)(e,t===`add-unique`),n.multiple||(z.value?.focus(),$()))};if(n.onNewValue===void 0?e(T.value):d(`newValue`,T.value,e),!n.multiple)return}v.value?Mt(e):W.innerLoading.value||zt(e)}}function pt(){return M?se.value:B.value!==null&&B.value.contentEl!==null?B.value.contentEl:void 0}function mt(){return pt()}function ht(){return n.hideSelected?[]:s[`selected-item`]===void 0?s.selected===void 0?n.useChips?Ve.value.map((e,t)=>r(Te,{key:`option-`+t,removable:!n.noChipRemove&&W.editable.value&&Q.value(e.opt)!==!0,dense:!0,textColor:n.color,tabindex:Le.value,onRemove(){e.removeAtIndex(t)}},()=>r(`span`,{class:`ellipsis`,[e.html?`innerHTML`:`textContent`]:Z.value(e.opt)}))):[r(`span`,{class:`q-select__selected-value ellipsis`,[Ie.value?`innerHTML`:`textContent`]:Pe.value})]:[s.selected()].flat():Ve.value.map(e=>s[`selected-item`](e))}function gt(){if(K.value)return s[`no-option`]===void 0?n.noOptionLabel===void 0?void 0:[r(ve,()=>r(U,{class:`text-grey`},()=>r(Ne,()=>n.noOptionLabel)))]:s[`no-option`]({inputValue:T.value});let e=s.option===void 0?e=>r(ve,{key:e.index,...e.itemProps},()=>r(U,()=>r(Ne,()=>r(`span`,{[e.html?`innerHTML`:`textContent`]:e.label})))):s.option,t=xe(`div`,J.value.map(e),ze.value);return s[`before-options`]!==void 0&&(t=[s[`before-options`](),...t].flat()),te(s[`after-options`],t)}function _t(e,t){let i=t?{...Re.value,...W.splitAttrs.attributes.value}:void 0,a={ref:t?z:void 0,key:`i_t`,class:ke.value,style:n.inputStyle,value:T.value===void 0?``:T.value,type:`search`,...i,id:t?W.targetUid.value:void 0,maxlength:n.maxlength,autocomplete:n.autocomplete,"data-autofocus":e===!0||n.autofocus||void 0,disabled:n.disable,readonly:n.readonly,...Ke.value};return t&&Object.assign(a,W.getErrorAriaAttrs(a)),!e&&M&&(Array.isArray(a.class)?a.class=[...a.class,`no-pointer-events`]:a.class+=` no-pointer-events`),r(`input`,a)}function vt(e){O!==null&&(clearTimeout(O),O=null),k!==null&&(clearTimeout(k),k=null),!e?.target?.qComposing&&(yt(e.target.value||``),N=!0,F=T.value,!W.focused.value&&(!M||E.value)&&W.focus(),n.onFilter!==void 0&&(M&&!y.value?zt(e):O=setTimeout(()=>{O=null,xt(T.value)},n.inputDebounce)))}function yt(e,t){T.value!==e&&(k!==null&&(clearTimeout(k),k=null),T.value=e,t||n.inputDebounce===0||n.inputDebounce===`0`?d(`inputValue`,e):k=setTimeout(()=>{k=null,d(`inputValue`,e)},n.inputDebounce))}function bt(e,t,r){N=r!==!0,n.useInput&&(yt(e,!0),(t||N)&&(F=e),t||xt(e))}function xt(e,t,r){if(n.onFilter===void 0||!t&&!W.focused.value&&!A)return;W.innerLoading.value?d(`filterAbort`):(W.innerLoading.value=!0,D.value=!0),e!==``&&!n.multiple&&G.value.length!==0&&!N&&e===Z.value(G.value[0])&&(e=``);let i=setTimeout(()=>{v.value&&=!1},10);P!==null&&clearTimeout(P),P=i,d(`filter`,e,(e,n)=>{(t||W.focused.value||A)&&P===i&&(clearTimeout(P),typeof e==`function`&&e(),D.value=!1,c(()=>{W.innerLoading.value=!1,W.editable.value&&(t?v.value&&$():v.value?Vt(!0):v.value=!0),typeof n==`function`&&c(()=>{n(m)}),typeof r==`function`&&c(()=>{r(m)})}))},()=>{(t||W.focused.value||A)&&P===i&&(clearTimeout(P),W.innerLoading.value=!1,D.value=!1),v.value&&=!1})}function St(){return H.value!==0||G.value.every(e=>typeof e==`object`&&!!e)?!1:(xt(``,!0,Bt),!0)}function Ct(){return r(qe,{ref:B,class:Ae.value,style:n.popupContentStyle,modelValue:v.value,fit:!n.menuShrink,cover:n.optionsCover&&!K.value&&!n.useInput,anchor:n.menuAnchor,self:n.menuSelf,offset:n.menuOffset,dark:De.value,noParentEvent:!0,noRefocus:!0,noFocus:!0,noRouteDismiss:n.popupNoRouteDismiss,square:We.value,transitionShow:n.transitionShow,transitionHide:n.transitionHide,transitionDuration:n.transitionDuration,separateClosePopup:!0,onScrollPassive:Se,onBeforeShow:Wt,onBeforeHide:wt,onShow:Tt,...n.hover?{onPointerenter:Lt,onPointerleave:It}:{}},gt)}function wt(e){Gt(e),Mt()}function Tt(){we()}function Et(e){p(e),z.value?.focus(),E.value=!0,h.platform.is.ios&&window.scrollTo(window.scrollX,0)}function Dt(e){p(e),c(()=>{E.value=!1})}function Ot(){let e=[r(Je,{class:`col-auto ${W.fieldClass.value}`,...Ee.value,for:W.targetUid.value,dark:De.value,square:!0,loading:D.value,itemAligned:!1,filled:!0,stackLabel:T.value.length!==0,...W.splitAttrs.listeners.value,onFocus:Et,onBlur:Dt},{...s,rawControl:()=>W.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:$},h.lang.label.close);return s.append===void 0?[e]:[...s.append(),e]}})];return v.value&&e.push(r(`div`,{ref:se,class:Ae.value+` scroll`,style:n.popupContentStyle,onClick:b,onScrollPassive:Se},gt())),r(ue,{ref:V,modelValue:y.value,position:n.useInput?`top`:void 0,noFocus:!0,transitionShow:I,transitionHide:n.transitionHide,transitionDuration:n.transitionDuration,noRouteDismiss:n.popupNoRouteDismiss,onBeforeShow:Wt,onBeforeHide:kt,onHide:At,onShow:jt},()=>r(`div`,{class:`q-select__dialog`+(De.value?` q-select__dialog--dark q-dark`:``)+(E.value?` q-select__dialog--focused`:``)},e))}function kt(e){if(Gt(e),V.value!==null){let t=!h.platform.is.mobile||!n.useInput||e!==void 0&&(e.type.indexOf(`key`)===0||e.type===`click`&&e.detail===0)?W.rootRef.value.querySelector(`.q-field__native > .q-select__focus-target, .q-field__native > .q-field__input`):null;V.value.__updateRefocusTarget(t)}W.focused.value=!1}function At(e){$(),W.focused.value||d(`blur`,e),Bt()}function jt(){let e=document.activeElement;(e===null||e.id!==W.targetUid.value)&&z.value!==null&&z.value!==e&&z.value.focus(),we()}function Mt(e){y.value||(Pt(),A=!1,x.value=-1,v.value&&(e!==void 0&&(e.qSelectHandled=!0),v.value=!1,B.value?.hide(e)),W.focused.value||(P!==null&&(clearTimeout(P),P=null),W.innerLoading.value&&(d(`filterAbort`),W.innerLoading.value=!1,D.value=!1)))}function Nt(e){if(e==null)return!1;let t=B.value===null?null:B.value.contentEl;if(W.controlRef.value!==null&&W.controlRef.value.contains(e)||t!==null&&t.contains(e))return!0;let n=ae(e);for(;n!=null;){if(n===m)return!0;n=C(n)}return!1}let{clearHoverTimer:Pt,hoverShow:Ft,hoverHide:It,onHoverContentEnter:Lt}=He({props:n,canShow:()=>!M&&!A&&!v.value&&W.editable.value,show:Rt,canHide:e=>A&&!Nt(e.relatedTarget),hide:$});function Rt(e){(n.onFilter!==void 0||!K.value||q())&&(A=!0,j=Date.now(),e.qSelectHandled=!0,n.onFilter===void 0?(v.value=!0,B.value?.show(e)):xt(T.value))}function zt(e){W.editable.value&&(Pt(),A=!1,e!==void 0&&(e.qSelectHandled=!0),M?(W.onControlFocusin(e),W.focus(),y.value=!0,V.value?.show(e),c(()=>{W.focus()})):W.focus(),n.onFilter===void 0?(!K.value||q())&&(v.value=!0,B.value?.show(e)):xt(T.value))}function $(e){y.value&&(e!==void 0&&(e.qSelectHandled=!0),y.value=!1,V.value?.hide(e)),Mt(e)}function Bt(){n.useInput&&bt(!n.multiple&&n.fillInput&&G.value.length!==0?Z.value(G.value[0])??``:``,!0,!0)}function Vt(e){let t=-1;if(e){if(G.value.length!==0){let e=X.value(G.value[0]);t=n.options.findIndex(t=>pe(X.value(t),e))}be(t)}it(t)}function Ht(e,t){v.value&&!W.innerLoading.value&&(be(-1,!0),c(()=>{v.value&&!W.innerLoading.value&&(e>t?be():Vt(!0))}))}function Ut(){y.value||B.value?.updatePosition()}function Wt(e){e!==void 0&&e.qSelectHandled!==!0&&p(e),d(`popupShow`,e),W.hasPopupOpen=!0,A||W.onControlFocusin(e)}function Gt(e){e!==void 0&&e.qSelectHandled!==!0&&p(e),d(`popupHide`,e),W.hasPopupOpen=!1,W.onControlFocusout(e,Bt)}function Kt(){M=!h.platform.is.mobile&&n.behavior!==`dialog`?!1:n.behavior!==`menu`&&(!n.useInput||q()||n.onFilter!==void 0||!K.value),I=h.platform.is.ios&&M&&n.useInput?`fade`:n.transitionShow}return o(Kt),i(Ut),!n.noOptionPrefetch&&n.mapOptions&&n.onFilter!==void 0&&l(()=>{ie=!St()}),Kt(),ee(()=>{O!==null&&clearTimeout(O),k!==null&&clearTimeout(k)}),Object.assign(m,{showPopup:zt,hidePopup:$,removeAtIndex:et,add:nt,toggleOption:rt,getOptionIndex:()=>x.value,setOptionIndex:it,moveOptionSelection:at,filter:xt,updateMenuPosition:Ut,updateInputValue:bt,isOptionSelected:st,getEmittingOptionValue:$e,isOptionDisabled:(...e)=>Q.value(...e)===!0,getOptionValue:(...e)=>X.value(...e),getOptionLabel:(...e)=>Z.value(...e)}),Object.assign(W,{innerValue:G,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:oe,targetRef:z,hasValue:Oe,showPopup:zt,floatingLabel:f(()=>!n.hideSelected&&Oe.value||typeof T.value==`number`||T.value.length!==0||_e(n.displayValue)),getControlChild:()=>{if(W.editable.value&&(y.value||!K.value||q()))return M?Ot():Ct();W.hasPopupOpen&&=!1},controlEvents:{onFocusin(e){Pt(),A=!1,W.onControlFocusin(e)},onFocusout(e){W.onControlFocusout(e,()=>{Bt(),Mt(e)})},onClick(e){if(b(e),!M&&v.value){if(A&&Date.now()-j<(n.transitionDuration===void 0?300:Number(n.transitionDuration))){A=!1,W.focus();return}Mt(e),z.value?.focus();return}zt(e)},onPointerenter:Ft,onPointerleave:It},getControl:e=>{let t=ht(),i=e===!0||!y.value||!M;if(n.useInput)t.push(_t(e,i));else{let a=i?{...Re.value,...W.splitAttrs.attributes.value}:void 0,o={ref:i?z:void 0,key:`d_t`,class:`q-select__focus-target`,value:Pe.value,readonly:!0,"data-autofocus":e===!0||n.autofocus||void 0,...a,disabled:n.disable,id:i?W.targetUid.value:void 0,onKeydown:ft,onKeyup:lt,onKeypress:dt};i&&Object.assign(o,W.getErrorAriaAttrs(o)),t.push(r(`input`,o)),i&&W.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:ut}))}if(!n.disable){let e=de();if(e!==void 0){let i=Ge.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`,...W.splitAttrs.listeners.value},t)},shouldHideLoadingIndicator:()=>n.hideDropdownIcon===!0,getInnerAppend:()=>!n.loading&&!D.value&&!n.hideDropdownIcon?[r(w,{class:`q-select__dropdown-icon`+(v.value?` rotate-180`:``),name:Ue.value})]:null}),me(W)}});export{Ie as a,Me as c,ze as i,je as l,Je as n,Re as o,qe as r,Ne as s,$e as t};
@@ -1 +1 @@
1
- import{S as e,v as t}from"./reactivity.esm-bundler-DEJj9cFv.js";import{C as n,J as ee,b as te,j as ne,l as r}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{G as i,K as a,S as re,X as o,ct as s,tt as c,y as l}from"./QBtn-CZaBclNw.js";import{S as u,_ as d,b as f,c as p,g as m,l as ie,s as ae,t as h,v as oe,x as se,y as g}from"./use-id-BIuaWKkB.js";import{c as _,f as v,l as y,o as b,p as x,s as S,u as ce}from"./use-tours-CSVM_54K.js";var C=0,w=100,T=4;function le(e){return e.pointerType===`touch`||e.pointerType===`pen`&&e.buttons!==0}var E=c({name:`QTooltip`,inheritAttrs:!1,props:{...v,...f,...d,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...d.transitionShow,default:`jump-down`},transitionHide:{...d.transitionHide,default:`jump-up`},anchor:{type:String,default:`bottom middle`,validator:y},self:{type:String,default:`top middle`,validator:y},offset:{type:Array,default:()=>[14,14],validator:_},cursorPosition:Boolean,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...g],setup(c,{slots:d,emit:f,attrs:g}){let _,v=!1,y=null,E=null,D,O=te(),k=l(),A=e(null),j=t(!1),ue=h();function M(){return g.id||ue.value}let N=r(()=>S(c.anchor,k.lang.rtl)),P=r(()=>S(c.self,k.lang.rtl)),F=r(()=>!c.persistent),{registerTimeout:I,registerTransitionEnd:L}=u(c),{transitionProps:R,transitionStyle:z}=m(c),{anchorEl:B,canShow:V,anchorEvents:H}=ce({showing:j,configureAnchorEl:be}),{show:U,hide:W}=oe({showing:j,canShow:V,handleShow:me,handleHide:he,hideOnRouteChange:F,processOnMount:!0});Object.assign(H,{delayShow:Y,delayHide:ve,onFocusin:ye,onPointerdown:_e,onCursorMove:ge});let{showPortal:G,hidePortal:K,renderPortal:de}=ie(O,A,we,`tooltip`),{registerTick:fe,removeTick:pe}=se(),q=b({props:c,$q:k,anchorEl:B,innerRef:A,showing:j,anchorOrigin:N,selfOrigin:P,trackContent:!0});ee(()=>(c.modelValue===null||c[`onUpdate:modelValue`])&&j.value===!0&&c.persistent!==!0,e=>{(e===!0?ae:p)(Q)});function me(e){a(H,`cursorTemp`),G(),xe(),q.handleShow(c.cursorPosition?e:void 0),fe(q.handleTick),L(()=>{G(!0),f(`show`,e)})}function he(e){pe(),K(),J(!0),L(()=>{K(!0),q.releaseAnchor(!1),f(`hide`,e)})}function J(e){q.releaseAnchor(e),p(Q),y=null,a(H,`tooltipTemp`),a(H,`cursorTemp`),Se(),$(!1)}function Y(e){if(e.pointerType===`touch`&&e.isPrimary===!1)return;let t=le(e);if(t&&Z(e),c.cursorPosition&&!t){let t=o(e);if(t.left!==void 0){E=t,i(H,`cursorTemp`,[[B.value,`pointermove`,`onCursorMove`,`passive`]]),X(e);return}}I(()=>{U(e)},c.delay)}function X(e){I(()=>{U(e)},Math.max(c.delay,w))}function ge(e){let t=o(e);Math.abs(t.left-E.left)<=T&&Math.abs(t.top-E.top)<=T||(E=t,X(e))}function Z(e){y=e.pointerType,_!==void 0&&(clearTimeout(_),_=void 0),x(),$(!0);let t=B.value,n=[`touchmove`,`touchcancel`,`touchend`,`click`].map(e=>[t,e,`delayHide`,`passiveCapture`]);i(H,`tooltipTemp`,n)}function _e(e){e.pointerType===`pen`&&y===null&&Z(e)}function ve(e){if((e.pointerType!==`touch`||e.isPrimary!==!1)&&!(e.type===`focusout`&&B.value!==null&&B.value.contains(e.relatedTarget))){if(a(H,`cursorTemp`),y!==null){let t=y===`pen`&&(e.type===`click`||e.type===`touchend`);if(y=null,a(H,`tooltipTemp`),x(),_=setTimeout(()=>{_=void 0,$(!1)},10),t)return}I(()=>{W(e)},c.hideDelay)}}function ye(e){let t=e.target;t&&t.matches(`:focus-visible`)&&Y(e)}function Q(e){W(e)}function be(){if(c.noParentEvent||B.value===null)return;let e=[[B.value,`pointerenter`,`delayShow`,`passive`],[B.value,`pointerdown`,`onPointerdown`,`passive`],[B.value,`pointerleave`,`delayHide`,`passive`],[B.value,`focusin`,`onFocusin`,`passive`],[B.value,`focusout`,`delayHide`,`passive`]];i(H,`anchor`,e)}function $(e){v!==e&&(v=e,C+=e?1:-1,document.body.classList.toggle(`non-selectable`,C>0),!e&&_!==void 0&&(clearTimeout(_),_=void 0))}function xe(){let e=B.value,t=M();if(e===null||t===void 0)return;let n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(Boolean);D={el:e,id:t,added:!n.includes(t)},D.added&&(n.push(t),e.setAttribute(`aria-describedby`,n.join(` `)))}function Se(){if(D?.added===!0){let{el:e,id:t}=D,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(` `))}D=void 0}function Ce(){return j.value?n(`div`,{...g,id:M(),ref:A,class:[`q-tooltip q-tooltip--style no-pointer-events`+(q.viaCssAnchor?``:` q-position-engine`),g.class],style:[g.style,z(),q.positionStyle.value],role:`tooltip`},re(d.default)):null}function we(){return n(s,R(),Ce)}return ne(()=>{J(!1)}),Object.assign(O.proxy,{updatePosition:q.updatePosition}),de}});export{E as t};
1
+ import{S as e,v as t}from"./reactivity.esm-bundler-DEJj9cFv.js";import{C as n,J as ee,b as te,j as ne,l as r}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{G as i,K as a,S as re,X as o,ct as s,tt as c,y as l}from"./QBtn-CZaBclNw.js";import{S as u,_ as d,b as f,c as p,g as m,l as ie,s as ae,t as h,v as oe,x as se,y as g}from"./use-id-BIuaWKkB.js";import{c as _,f as v,l as y,o as b,p as x,s as S,u as ce}from"./use-tours-_6HwJ_Rp.js";var C=0,w=100,T=4;function le(e){return e.pointerType===`touch`||e.pointerType===`pen`&&e.buttons!==0}var E=c({name:`QTooltip`,inheritAttrs:!1,props:{...v,...f,...d,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...d.transitionShow,default:`jump-down`},transitionHide:{...d.transitionHide,default:`jump-up`},anchor:{type:String,default:`bottom middle`,validator:y},self:{type:String,default:`top middle`,validator:y},offset:{type:Array,default:()=>[14,14],validator:_},cursorPosition:Boolean,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...g],setup(c,{slots:d,emit:f,attrs:g}){let _,v=!1,y=null,E=null,D,O=te(),k=l(),A=e(null),j=t(!1),ue=h();function M(){return g.id||ue.value}let N=r(()=>S(c.anchor,k.lang.rtl)),P=r(()=>S(c.self,k.lang.rtl)),F=r(()=>!c.persistent),{registerTimeout:I,registerTransitionEnd:L}=u(c),{transitionProps:R,transitionStyle:z}=m(c),{anchorEl:B,canShow:V,anchorEvents:H}=ce({showing:j,configureAnchorEl:be}),{show:U,hide:W}=oe({showing:j,canShow:V,handleShow:me,handleHide:he,hideOnRouteChange:F,processOnMount:!0});Object.assign(H,{delayShow:Y,delayHide:ve,onFocusin:ye,onPointerdown:_e,onCursorMove:ge});let{showPortal:G,hidePortal:K,renderPortal:de}=ie(O,A,we,`tooltip`),{registerTick:fe,removeTick:pe}=se(),q=b({props:c,$q:k,anchorEl:B,innerRef:A,showing:j,anchorOrigin:N,selfOrigin:P,trackContent:!0});ee(()=>(c.modelValue===null||c[`onUpdate:modelValue`])&&j.value===!0&&c.persistent!==!0,e=>{(e===!0?ae:p)(Q)});function me(e){a(H,`cursorTemp`),G(),xe(),q.handleShow(c.cursorPosition?e:void 0),fe(q.handleTick),L(()=>{G(!0),f(`show`,e)})}function he(e){pe(),K(),J(!0),L(()=>{K(!0),q.releaseAnchor(!1),f(`hide`,e)})}function J(e){q.releaseAnchor(e),p(Q),y=null,a(H,`tooltipTemp`),a(H,`cursorTemp`),Se(),$(!1)}function Y(e){if(e.pointerType===`touch`&&e.isPrimary===!1)return;let t=le(e);if(t&&Z(e),c.cursorPosition&&!t){let t=o(e);if(t.left!==void 0){E=t,i(H,`cursorTemp`,[[B.value,`pointermove`,`onCursorMove`,`passive`]]),X(e);return}}I(()=>{U(e)},c.delay)}function X(e){I(()=>{U(e)},Math.max(c.delay,w))}function ge(e){let t=o(e);Math.abs(t.left-E.left)<=T&&Math.abs(t.top-E.top)<=T||(E=t,X(e))}function Z(e){y=e.pointerType,_!==void 0&&(clearTimeout(_),_=void 0),x(),$(!0);let t=B.value,n=[`touchmove`,`touchcancel`,`touchend`,`click`].map(e=>[t,e,`delayHide`,`passiveCapture`]);i(H,`tooltipTemp`,n)}function _e(e){e.pointerType===`pen`&&y===null&&Z(e)}function ve(e){if((e.pointerType!==`touch`||e.isPrimary!==!1)&&!(e.type===`focusout`&&B.value!==null&&B.value.contains(e.relatedTarget))){if(a(H,`cursorTemp`),y!==null){let t=y===`pen`&&(e.type===`click`||e.type===`touchend`);if(y=null,a(H,`tooltipTemp`),x(),_=setTimeout(()=>{_=void 0,$(!1)},10),t)return}I(()=>{W(e)},c.hideDelay)}}function ye(e){let t=e.target;t&&t.matches(`:focus-visible`)&&Y(e)}function Q(e){W(e)}function be(){if(c.noParentEvent||B.value===null)return;let e=[[B.value,`pointerenter`,`delayShow`,`passive`],[B.value,`pointerdown`,`onPointerdown`,`passive`],[B.value,`pointerleave`,`delayHide`,`passive`],[B.value,`focusin`,`onFocusin`,`passive`],[B.value,`focusout`,`delayHide`,`passive`]];i(H,`anchor`,e)}function $(e){v!==e&&(v=e,C+=e?1:-1,document.body.classList.toggle(`non-selectable`,C>0),!e&&_!==void 0&&(clearTimeout(_),_=void 0))}function xe(){let e=B.value,t=M();if(e===null||t===void 0)return;let n=(e.getAttribute(`aria-describedby`)||``).split(/\s+/).filter(Boolean);D={el:e,id:t,added:!n.includes(t)},D.added&&(n.push(t),e.setAttribute(`aria-describedby`,n.join(` `)))}function Se(){if(D?.added===!0){let{el:e,id:t}=D,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(` `))}D=void 0}function Ce(){return j.value?n(`div`,{...g,id:M(),ref:A,class:[`q-tooltip q-tooltip--style no-pointer-events`+(q.viaCssAnchor?``:` q-position-engine`),g.class],style:[g.style,z(),q.positionStyle.value],role:`tooltip`},re(d.default)):null}function we(){return n(s,R(),Ce)}return ne(()=>{J(!1)}),Object.assign(O.proxy,{updatePosition:q.updatePosition}),de}});export{E as t};
@@ -0,0 +1 @@
1
+ .schedule-header__icon[data-v-7194e776]{width:38px;height:38px;color:var(--kobo-text-2);background:#665fdd1f;border:1px solid #665fdd59;border-radius:10px;flex:0 0 38px;place-items:center;display:grid}.empty-state[data-v-7194e776]{background:#ffffff04;border-style:dashed}.schedule-item[data-v-7194e776]{background:#ffffff06}.schedule-item--wakeup[data-v-7194e776]{border-color:#fbbf2447}.schedule-item__icon[data-v-7194e776]{border-radius:8px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.schedule-item__icon--wakeup[data-v-7194e776]{color:var(--kobo-warning);background:#fbbf241f}.schedule-item__icon--cron[data-v-7194e776]{color:var(--kobo-accent);background:#22d3ee1a}.schedule-item__prompt[data-v-7194e776]{color:var(--kobo-text-3);background:#00000029;border-radius:6px;margin-top:8px;padding:8px 10px;font-size:12px;line-height:1.45}.min-width-zero[data-v-7194e776]{min-width:0}.create-card[data-v-7194e776]{background:#ffffff06;overflow:hidden}.type-toggle[data-v-7194e776]{border-bottom:1px solid #ffffff17;gap:6px;padding:6px}.type-toggle[data-v-7194e776] .q-btn{border-radius:7px;min-height:38px}.field-label[data-v-7194e776]{color:var(--kobo-text-2);font-size:12px;font-weight:500}.frequency-value[data-v-7194e776]{flex:0 0 72px;width:72px}.session-toggle[data-v-7194e776]{border:1px solid #ffffff24;border-radius:7px;overflow:hidden}.session-toggle[data-v-7194e776] .q-btn{min-height:36px}.advanced-section[data-v-7194e776]{background:#00000014;border:1px solid #ffffff1a;border-radius:7px}.advanced-section[data-v-7194e776] .q-expansion-item__content{padding:0 12px 12px}.one-shot-option[data-v-7194e776]{border:1px solid #ffffff1a;border-radius:7px}.action-button[data-v-7194e776]{min-height:40px}.prompt-preview[data-v-7194e776]{white-space:pre-wrap;word-break:break-word;margin:0}
@@ -0,0 +1 @@
1
+ import{j as e,ut as t,v as n}from"./reactivity.esm-bundler-DEJj9cFv.js";import{J as r,L as i,Y as a,_ as o,d as s,f as c,g as ee,l,p as u,r as te,u as d,y as f,z as ne}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{l as p,t as m,y as re}from"./QBtn-CZaBclNw.js";import{Tt as ie,Ut as h,Vt as g,_t as _,o as ae,p as oe}from"./index-mvh5w1cM.js";import{t as se}from"./QSelect-DtSUuK8t.js";import{d as ce}from"./permissionModes-C3otN1Vk.js";import{a as v}from"./use-tours-_6HwJ_Rp.js";import{t as le}from"./QBadge-DbkxGtht.js";import{t as ue}from"./QChip-owciRuZu.js";import{t as y}from"./QBtnToggle-BI3k3Ch2.js";function de(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 fe(e){return Math.max(1,Math.floor(e))>1}var pe={class:`column q-pa-md q-gutter-lg`},me={class:`row items-center no-wrap q-gutter-sm`},he={class:`schedule-header__icon`},ge={class:`text-subtitle1 text-weight-medium`},_e={class:`text-caption text-kobo-3`},ve={class:`row items-center justify-between q-mb-sm`},ye={class:`text-subtitle2`},be={class:`text-body2 text-weight-medium`},xe={class:`text-caption text-kobo-3`},Se={key:1,class:`column q-gutter-sm`},b={class:`row items-start no-wrap q-gutter-sm`},x={class:`schedule-item__icon schedule-item__icon--wakeup`},S={class:`col min-width-zero`},C={class:`text-caption text-kobo-3`},w={class:`text-body2 text-weight-medium`},T={key:0,class:`prompt-preview schedule-item__prompt`},E={class:`row items-start no-wrap q-gutter-sm`},D={class:`schedule-item__icon schedule-item__icon--cron`},O={class:`col min-width-zero`},k={class:`text-body2 text-weight-medium ellipsis`},A=[`title`],j={key:1,class:`text-caption text-kobo-3`},Ce={class:`row items-center q-gutter-xs q-mt-sm`},we={key:0,class:`text-caption text-kobo-3`},Te={class:`prompt-preview schedule-item__prompt`},Ee={class:`row items-center justify-between q-mb-sm`},De={class:`text-subtitle2`},Oe={class:`text-caption text-kobo-3`},ke={class:`text-body2 text-weight-medium`},Ae={class:`text-caption text-kobo-3`},je={class:`column q-gutter-y-xs`},Me={class:`field-label`},Ne={class:`text-body2 text-weight-medium`},Pe={class:`text-caption text-kobo-3`},Fe={class:`column q-gutter-y-xs`},Ie={class:`field-label`},Le={class:`row items-center no-wrap q-gutter-sm`},Re={class:`text-body2 text-kobo-2`},ze={key:0,class:`text-caption text-warning`},Be={class:`column q-gutter-y-xs`},Ve={class:`field-label`},M={class:`one-shot-option row items-center justify-between no-wrap q-pa-sm`},He={class:`text-body2`},Ue={class:`text-caption text-kobo-3`},N=v(f({__name:`SchedulePanel`,props:{workspaceId:{}},setup(f){let v=f,{t:N}=ie(),P=re(),F=oe(),I=l(()=>F.pendingWakeups[v.workspaceId]??null),L=l(()=>F.crons[v.workspaceId]??[]),R=l(()=>L.value.filter(e=>!e.validationError).length+ +!!I.value);r(()=>v.workspaceId,e=>{e&&F.fetchCrons(e)},{immediate:!0});function z(e){return new Date(e).toLocaleString(void 0,{weekday:`short`,day:`numeric`,month:`short`,hour:`2-digit`,minute:`2-digit`})}function We(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 Ge(){try{let e=await fetch(`/api/workspaces/${v.workspaceId}/pending-wakeup`,{method:`DELETE`});if(!e.ok)throw Error(`HTTP ${e.status}`)}catch(e){P.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}async function Ke(e){try{await F.cancelCron(v.workspaceId,e)}catch(e){P.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),qe=l(()=>[{label:N(`schedule.typeWakeup`),value:`wakeup`,icon:`alarm`},{label:N(`schedule.typeRecurring`),value:`cron`,icon:`event_repeat`}]),Y=l(()=>[{label:N(`schedule.modeFresh`),value:`fresh`,icon:`add_comment`},{label:N(`schedule.modeResume`),value:`resume`,icon:`history`}]),Je=l(()=>[{label:N(`schedule.unitMinutes`),value:`minutes`},{label:N(`schedule.unitHours`),value:`hours`},{label:N(`schedule.unitDays`),value:`days`}]);async function Ye(){if(W.value.trim()&&!J.value){J.value=!0;try{let e=U.value.trim()||de(H.value,V.value);await F.createCron(v.workspaceId,{expression:e,prompt:W.value,label:G.value.trim()||void 0,mode:K.value,oneShot:q.value}),W.value=``,G.value=``,U.value=``,P.notify({type:`positive`,message:N(`schedule.cronCreated`),position:`top`,timeout:2500})}catch(e){P.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 Xe(){if(Z.value.trim()&&X.value>0&&!$.value){$.value=!0;try{await F.scheduleManualWakeup(v.workspaceId,{delaySeconds:Math.round(X.value*60),prompt:Z.value,mode:Q.value}),Z.value=``,P.notify({type:`positive`,message:N(`schedule.wakeupCreated`),position:`top`,timeout:2500})}catch(e){P.notify({type:`negative`,message:String(e instanceof Error?e.message:e),position:`top`,timeout:5e3})}finally{$.value=!1}}}return(n,r)=>(i(),u(`div`,pe,[d(`header`,me,[d(`div`,he,[o(p,{name:`calendar_month`,size:`22px`})]),d(`div`,null,[d(`div`,ge,t(n.$t(`schedule.panelTitle`)),1),d(`div`,_e,t(n.$t(`schedule.panelDescription`)),1)])]),d(`section`,null,[d(`div`,ve,[d(`div`,ye,t(n.$t(`schedule.activeTitle`)),1),R.value>0?(i(),s(le,{key:0,rounded:``,color:`primary`,label:R.value},null,8,[`label`])):c(``,!0)]),L.value.length===0&&!I.value?(i(),s(g,{key:0,dark:``,flat:``,bordered:``,class:`empty-state row items-center q-gutter-sm q-pa-md`},{default:a(()=>[o(p,{name:`event_available`,size:`24px`,color:`kobo-3`}),d(`div`,null,[d(`div`,be,t(n.$t(`schedule.emptyTitle`)),1),d(`div`,xe,t(n.$t(`schedule.emptyDescription`)),1)])]),_:1})):(i(),u(`div`,Se,[I.value?(i(),s(g,{key:0,dark:``,flat:``,bordered:``,class:`schedule-item schedule-item--wakeup`},{default:a(()=>[o(h,null,{default:a(()=>[d(`div`,b,[d(`div`,x,[o(p,{name:`alarm`,size:`18px`})]),d(`div`,S,[d(`div`,C,t(n.$t(`schedule.wakeupTitle`)),1),d(`div`,w,t(z(I.value.targetAt)),1)]),o(m,{flat:``,dense:``,round:``,icon:`delete_outline`,size:`sm`,color:`kobo-2`,title:n.$t(`schedule.cancelWakeup`),onClick:Ge},null,8,[`title`])]),I.value.reason?(i(),u(`div`,T,t(I.value.reason),1)):c(``,!0)]),_:1})]),_:1})):c(``,!0),(i(!0),u(te,null,ne(L.value,e=>(i(),s(g,{key:e.id,dark:``,flat:``,bordered:``,class:`schedule-item`},{default:a(()=>[o(h,null,{default:a(()=>[d(`div`,E,[d(`div`,D,[o(p,{name:`event_repeat`,size:`18px`})]),d(`div`,O,[d(`div`,k,t(e.label||e.expression),1),e.validationError?(i(),u(`div`,{key:0,class:`text-caption text-negative`,title:e.validationError},t(n.$t(`schedule.invalidCron`)),9,A)):(i(),u(`div`,j,t(n.$t(`schedule.nextFireAt`,{time:z(e.nextFireAt)})),1))]),o(m,{flat:``,dense:``,round:``,icon:`delete_outline`,size:`sm`,color:`kobo-2`,title:n.$t(`schedule.cancelCron`),onClick:t=>Ke(e.id)},null,8,[`title`,`onClick`])]),d(`div`,Ce,[o(ue,{dense:``,square:``,color:`blue-grey-9`,"text-color":`kobo-2`,size:`sm`},{default:a(()=>[ee(t(e.expression),1)]),_:2},1024),e.lastFiredAt?(i(),u(`span`,we,t(n.$t(`schedule.lastFiredAt`,{time:We(e.lastFiredAt)})),1)):c(``,!0)]),d(`div`,Te,t(e.prompt),1)]),_:2},1024)]),_:2},1024))),128))]))]),d(`section`,null,[d(`div`,Ee,[d(`div`,null,[d(`div`,De,t(n.$t(`schedule.createTitle`)),1),d(`div`,Oe,t(n.$t(`schedule.createDescription`)),1)])]),o(g,{dark:``,flat:``,bordered:``,class:`create-card`},{default:a(()=>[o(y,{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:qe.value,class:`type-toggle`},null,8,[`modelValue`,`options`]),B.value===`wakeup`?(i(),s(h,{key:0,class:`column q-gutter-y-md`},{default:a(()=>[d(`div`,null,[d(`div`,ke,t(n.$t(`schedule.addWakeupTitle`)),1),d(`div`,Ae,t(n.$t(`schedule.wakeupDescription`)),1)]),o(_,{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:a(()=>[o(p,{name:`timer`,size:`18px`})]),_:1},8,[`modelValue`,`label`]),o(_,{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`]),d(`div`,je,[d(`div`,Me,t(n.$t(`schedule.sessionModeTitle`)),1),o(y,{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`])]),o(m,{"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:Xe},null,8,[`loading`,`disable`,`label`])]),_:1})):(i(),s(h,{key:1,class:`column q-gutter-y-md`},{default:a(()=>[d(`div`,null,[d(`div`,Ne,t(n.$t(`schedule.addCronTitle`)),1),d(`div`,Pe,t(n.$t(`schedule.cronDescription`)),1)]),o(_,{modelValue:G.value,"onUpdate:modelValue":r[4]||=e=>G.value=e,dense:``,dark:``,outlined:``,label:n.$t(`schedule.labelOptional`)},null,8,[`modelValue`,`label`]),d(`div`,Fe,[d(`div`,Ie,t(n.$t(`schedule.frequencyTitle`)),1),d(`div`,Le,[d(`span`,Re,t(n.$t(`schedule.every`)),1),o(_,{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`]),o(se,{modelValue:H.value,"onUpdate:modelValue":r[6]||=e=>H.value=e,options:Je.value,dense:``,dark:``,outlined:``,"options-dense":``,"emit-value":``,"map-options":``,class:`col min-width-zero`},null,8,[`modelValue`,`options`])]),H.value===`days`&&e(fe)(V.value)?(i(),u(`div`,ze,t(n.$t(`schedule.daysDriftWarning`)),1)):c(``,!0)]),o(_,{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`]),o(ce,{dense:``,"dense-toggle":``,"switch-toggle-side":``,icon:`code`,label:n.$t(`schedule.advancedExpression`),caption:n.$t(`schedule.advancedDescription`),class:`advanced-section`},{default:a(()=>[o(_,{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`]),d(`div`,Be,[d(`div`,Ve,t(n.$t(`schedule.sessionModeTitle`)),1),o(y,{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`])]),d(`div`,M,[d(`div`,null,[d(`div`,He,t(n.$t(`schedule.oneShot`)),1),d(`div`,Ue,t(n.$t(`schedule.oneShotHint`)),1)]),o(ae,{modelValue:q.value,"onUpdate:modelValue":r[10]||=e=>q.value=e,dense:``},null,8,[`modelValue`])]),o(m,{"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:Ye},null,8,[`loading`,`disable`,`label`])]),_:1}))]),_:1})])]))}}),[[`__scopeId`,`data-v-7194e776`]]);export{N as default};
@@ -0,0 +1 @@
1
+ .search-page[data-v-2ac4f1d8]{max-width:900px;margin:0 auto}.search-result[data-v-2ac4f1d8]{background-color:var(--kobo-surface-2);border:1px solid var(--kobo-border-subtle);border-radius:6px;transition:border-color .12s}.search-result[data-v-2ac4f1d8]:hover{border-color:var(--kobo-accent)}.search-snippet[data-v-2ac4f1d8]{white-space:pre-wrap;word-break:break-word;line-height:1.4}
@@ -0,0 +1 @@
1
+ import{j as e,ut as t,v as n}from"./reactivity.esm-bundler-DEJj9cFv.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-CDnVUfeZ.js";import{l as g}from"./QBtn-CZaBclNw.js";import{Tt as _,_t as v,l as y,n as b,o as x}from"./index-mvh5w1cM.js";import{a as S,i as C,n as w}from"./use-tours-_6HwJ_Rp.js";import{t as T}from"./QBadge-DbkxGtht.js";import{t as E}from"./formatters-B2uUIbAY.js";import{t as D}from"./QPage-DaX9sMQC.js";import{t as O}from"./DrawerToggleButton-Ca0_CxSl.js";import{t as k}from"./TourReplayButton-Bj2GGyhU.js";import{n as A,t as j}from"./use-search-index-status-DtLzygcy.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=b(),{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(x,{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(y,{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};
@@ -0,0 +1,9 @@
1
+ import{S as e,j as t,ot as n,st as r,ut as i,v as a}from"./reactivity.esm-bundler-DEJj9cFv.js";import{C as o,F as s,J as c,L as l,O as u,P as d,S as f,X as p,Y as m,_ as h,b as g,d as _,f as v,g as y,h as b,j as x,l as S,p as C,r as w,u as T,y as E,z as D}from"./runtime-core.esm-bundler-CDnVUfeZ.js";import{X as ee,c as te,ct as ne,dt as re,et as ie,ft as ae,l as O,pt as oe,st as se,t as k,tt as A,w as j,y as ce}from"./QBtn-CZaBclNw.js";import{a as le,i as ue}from"./pinia-BKqmoVru.js";import{i as de,n as fe,t as pe}from"./private.use-form-C7umbGO-.js";import{B as me,C as he,Dt as ge,F as _e,G as ve,Gt as ye,H as be,Ht as xe,I as Se,J as Ce,K as we,Kt as Te,L as M,N as Ee,Ot as De,P as Oe,Tt as ke,U as Ae,Ut as je,V as Me,Vt as Ne,W as Pe,Wt as Fe,X as Ie,_t as N,a as Le,b as Re,gt as ze,i as Be,kt as Ve,l as He,lt as Ue,o as P,ot as We,q as Ge,r as Ke,s as qe,st as Je,t as Ye,ut as Xe,wt as Ze,z as Qe}from"./index-mvh5w1cM.js";import{t as F}from"./QList-qupzuEqO.js";import{i as I,r as $e,s as et,t as L}from"./QSelect-DtSUuK8t.js";import{n as R,t as z}from"./QItemSection-D_5_0UrX.js";import{a as tt,c as nt,d as rt,l as it,n as at,o as ot,r as st,s as ct,t as lt}from"./permissionModes-C3otN1Vk.js";import{a as B,i as V,n as ut,r as dt}from"./use-tours-_6HwJ_Rp.js";import{t as ft}from"./TouchPan-DTJqxVp9.js";import{t as H}from"./QTooltip-DwkX8eQ6.js";import{t as pt}from"./QChip-owciRuZu.js";import{t as mt}from"./ClosePopup-BqW5dy-O.js";import{t as ht}from"./use-is-mobile-CWjqe8gC.js";import{t as gt}from"./QBtnDropdown-BeiZIHVA.js";import{t as _t}from"./QDrawer-Fj3M9QGD.js";import{t as vt}from"./QBanner-DhqH95GW.js";import{t as yt}from"./project-color-BUcW_eZA.js";import{t as bt}from"./QPage-DaX9sMQC.js";import{t as xt}from"./DrawerToggleButton-Ca0_CxSl.js";import{t as St}from"./TourReplayButton-Bj2GGyhU.js";import{t as Ct}from"./workspace-templates-B8WWsWEI.js";var U=Object.create,wt=Object.defineProperty,Tt=Object.getOwnPropertyDescriptor,Et=Object.getOwnPropertyNames,Dt=Object.getPrototypeOf,Ot=Object.prototype.hasOwnProperty,kt=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),At=(e,t)=>{let n={};for(var r in e)wt(n,r,{get:e[r],enumerable:!0});return t||wt(n,Symbol.toStringTag,{value:`Module`}),n},jt=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=Et(t),a=0,o=i.length,s;a<o;a++)s=i[a],!Ot.call(e,s)&&s!==n&&wt(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=Tt(t,s))||r.enumerable});return e},Mt=(e,t,n)=>(n=e==null?{}:U(Dt(e)),jt(t||!e||!e.__esModule||!Ot.call(e,`default`)?wt(n,`default`,{value:e,enumerable:!0}):n,e)),Nt=`q-slider__marker-labels`,Pt=e=>({value:e}),Ft=({marker:e})=>o(`div`,{key:e.value,style:e.style,class:e.classes},e.label),It=[34,37,40,33,39,38,35,36],Lt={...le,...de,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`}},W=[`pan`,`update:modelValue`,`change`];function Rt({updateValue:e,updatePosition:t,getDragging:n,formAttrs:r}){let{props:i,emit:s,slots:c}=g(),l=ce(),u=ue(i,l),d=fe(r),f=a(!1),m=a(!1),h=a(!1),_=a(!1),v=S(()=>i.vertical?`--v`:`--h`),y=S(()=>`-`+(i.switchLabelSide?`switched`:`standard`)),b=S(()=>i.vertical?i.reverse:i.reverse!==(l.lang.rtl===!0)),C=S(()=>!Number.isFinite(i.innerMin)||i.innerMin<i.min?i.min:i.innerMin),w=S(()=>!Number.isFinite(i.innerMax)||i.innerMax>i.max?i.max:i.innerMax),T=S(()=>!i.disable&&!i.readonly&&C.value<w.value),E=S(()=>{if(i.step===0)return e=>e;let e=(String(i.step).trim().split(`.`)[1]||``).length;return t=>Number.parseFloat(t.toFixed(e))}),D=S(()=>i.step===0?1:i.step),te=S(()=>T.value?i.tabindex||0:-1),ne=S(()=>i.max-i.min),re=S(()=>w.value-C.value),ie=S(()=>M(C.value)),ae=S(()=>M(w.value)),O=S(()=>i.vertical?b.value?`bottom`:`top`:b.value?`right`:`left`),oe=S(()=>i.vertical?`height`:`width`),se=S(()=>i.vertical?`width`:`height`),k=S(()=>i.vertical?`vertical`:`horizontal`),A=S(()=>`q-slider q-slider${v.value} q-slider--${f.value?``:`in`}active inline no-wrap `+(i.vertical?`row`:`column`)+(i.disable?` disabled`:` q-slider--enabled`+(T.value?` q-slider--editable`:``))+(h.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`+v.value:``));function j(e){let t=`q-slider__`+e;return`${t} ${t}${v.value} ${t}${v.value}${y.value}`}function le(e){let t=`q-slider__`+e;return`${t} ${t}${v.value}`}let de=S(()=>{let e=i.selectionColor||i.color;return`q-slider__selection absolute`+(e===void 0?``:` text-${e}`)}),pe=S(()=>le(`markers`)+` absolute overflow-hidden`),me=S(()=>le(`track-container`)),he=S(()=>j(`pin`)),ge=S(()=>j(`label`)),_e=S(()=>j(`text-container`)),ve=S(()=>j(`marker-labels-container`)+(i.markerLabelsClass===void 0?``:` ${i.markerLabelsClass}`)),be=S(()=>`q-slider__track relative-position no-outline`+(i.trackColor===void 0?``:` bg-${i.trackColor}`)),xe=S(()=>{let e={[se.value]:i.trackSize};return i.trackImg!==void 0&&(e.backgroundImage=`url(${i.trackImg}) !important`),e}),Se=S(()=>`q-slider__inner absolute`+(i.innerTrackColor===void 0?``:` bg-${i.innerTrackColor}`)),Ce=S(()=>{let e=ae.value-ie.value,t={[O.value]:`${100*ie.value}%`,[oe.value]:e===0?`2px`:`${100*e}%`};return i.innerTrackImg!==void 0&&(t.backgroundImage=`url(${i.innerTrackImg}) !important`),t});function we(e){let{min:t,max:n,step:r}=i,a=t+e*(n-t);if(r>0){let e=(a-C.value)%r;a+=(Math.abs(e)>=r/2?(e<0?-1:1)*r:0)-e}return a=E.value(a),I(a,C.value,w.value)}function M(e){return ne.value===0?0:(e-i.min)/ne.value}function Ee(e,t){let n=ee(e),r=i.vertical?I((n.top-t.top)/t.height,0,1):I((n.left-t.left)/t.width,0,1);return I(b.value?1-r:r,ie.value,ae.value)}let De=S(()=>ye(i.markers)&&i.markers>0?i.markers:D.value),Oe=S(()=>{let e=[],t=De.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}),ke=S(()=>{let e=` ${Nt}${v.value}-`;return`q-slider__marker-labels${e}${i.switchMarkerLabelsSide?`switched`:`standard`}${e}${b.value?`rtl`:`ltr`}`}),Ae=S(()=>i.markerLabels===!1?null:Ne(i.markerLabels).map((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:ke.value+(e.classes===void 0?``:` `+e.classes),style:{...Pe(e.value),...e.style}}))),je=S(()=>({markerList:Ae.value,markerMap:Fe.value,classes:ke.value,getStyle:Pe})),Me=S(()=>{let e=re.value===0?`2px`:100*De.value/re.value;return{...Ce.value,backgroundSize:i.vertical?`2px ${e}%`:`${e}% 2px`}});function Ne(e){if(e===!1)return null;if(e===!0)return Oe.value.map(Pt);if(typeof e==`function`)return Oe.value.map(t=>{let n=e(t);return Te(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=>Te(e)?e:{value:e}).filter(t):Object.keys(e).map(t=>{let n=e[t],r=Number(t);return Te(n)?{...n,value:r}:{value:r,label:n}}).filter(t)}function Pe(e){return{[O.value]:`${100*(e-i.min)/ne.value}%`}}let Fe=S(()=>{if(i.markerLabels===!1)return null;let e={};return Ae.value.forEach(t=>{e[t.value]=t}),e});function Ie(){if(c[`marker-label-group`]!==void 0)return c[`marker-label-group`](je.value);let e=c[`marker-label`]||Ft;return Ae.value.map(t=>e({marker:t,...je.value}))}let N=S(()=>[[ft,T.value?Le:void 0,void 0,{[k.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function Le(r){r.isFinal?(_.value!==void 0&&(t(r.evt),r.touch&&e(!0),_.value=void 0,s(`pan`,`end`)),f.value=!1,h.value=!1):r.isFirst?(_.value=n(r.evt),t(r.evt),e(),f.value=!0,s(`pan`,`start`)):(t(r.evt),e())}function Re(){h.value=!1}function ze(r){t(r,n(r)),e(),m.value=!0,f.value=!0,document.addEventListener(`mouseup`,Be,!0)}function Be(){m.value=!1,f.value=!1,e(!0),Re(),document.removeEventListener(`mouseup`,Be,!0)}function Ve(r){t(r,n(r)),e(!0),Re()}function He(t){It.includes(t.keyCode)&&e(!0)}function Ue(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 P(e){let t=S(()=>!m.value&&(h.value===e.focusValue||h.value===`both`)?` q-slider--focus`:``),n=S(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${b.value?`rtl`:`ltr`} absolute non-selectable`+t.value+(e.thumbColor.value===void 0?``:` text-${e.thumbColor.value}`)),r=S(()=>({width:i.thumbSize,height:i.thumbSize,[O.value]:`${100*e.ratio.value}%`,zIndex:h.value===e.focusValue?2:void 0})),a=S(()=>e.labelColor.value===void 0?``:` text-${e.labelColor.value}`),s=S(()=>Ue(e.ratio.value)),c=S(()=>`q-slider__text`+(e.labelTextColor.value===void 0?``:` text-${e.labelTextColor.value}`));return()=>{let t=[o(`svg`,{class:`q-slider__thumb-shape absolute-full`,viewBox:`0 0 20 20`,"aria-hidden":`true`},[o(`path`,{d:i.thumbPath})]),o(`div`,{class:`q-slider__focus-ring fit`})];return(i.label||i.labelAlways)&&t.push(o(`div`,{class:he.value+` absolute fit no-pointer-events`+a.value},[o(`div`,{class:ge.value,style:{minWidth:i.thumbSize}},[o(`div`,{class:_e.value,style:s.value},[o(`span`,{class:c.value},e.label.value)])])])),e.injectFormInput!==!1&&i.name!==void 0&&!i.disable&&d(t,`push`),o(`div`,{class:n.value,style:r.value,...e.getNodeData()},t)}}function We(e,t,n,r){let a=[];i.innerTrackColor!==`transparent`&&a.push(o(`div`,{key:`inner`,class:Se.value,style:Ce.value})),i.selectionColor!==`transparent`&&a.push(o(`div`,{key:`selection`,class:de.value,style:e.value})),i.markers!==!1&&a.push(o(`div`,{key:`marker`,class:pe.value,style:Me.value})),r(a);let s=[p(o(`div`,{key:`trackC`,class:me.value,tabindex:t.value,...n.value},[o(`div`,{class:be.value,style:xe.value},a)]),N.value)];return i.markerLabels!==!1&&s[i.switchMarkerLabelsSide?`unshift`:`push`](o(`div`,{key:`markerL`,class:ve.value},Ie())),s}return x(()=>{document.removeEventListener(`mouseup`,Be,!0)}),{state:{active:f,focus:h,preventFocus:m,dragging:_,editable:T,classes:A,tabindex:te,orientation:k,roundValueFn:E,keyStep:D,trackLen:ne,innerMin:C,innerMinRatio:ie,innerMax:w,innerMaxRatio:ae,positionProp:O,sizeProp:oe,isReversed:b},methods:{onActivate:ze,onClick:Ve,onBlur:Re,onKeyup:He,getContent:We,getThumbRenderFn:P,convertRatioToModel:we,convertModelToRatio:M,getDraggingRatio:Ee}}}var zt=()=>({}),Bt=A({name:`QSlider`,props:{...Lt,modelValue:{required:!0,default:null,validator:e=>typeof e==`number`||e===null},labelValue:[String,Number]},emits:W,inheritAttrs:!1,setup(t,{emit:n,attrs:r}){let i=ce(),s=Ze(),{state:l,methods:u}=Rt({updateValue:T,updatePosition:D,getDragging:E,formAttrs:pe(t)}),d=e(null),f=a(0),p=a(0),m=null,h=null;function g(){h=null,p.value=t.modelValue===null?l.innerMin.value:I(t.modelValue,l.innerMin.value,l.innerMax.value)}c(()=>`${t.modelValue}|${l.innerMin.value}|${l.innerMax.value}`,g,{immediate:!0});let _=S(()=>u.convertModelToRatio(p.value)),v=S(()=>l.active.value?f.value:_.value),y=S(()=>{let e={[l.positionProp.value]:`${100*l.innerMinRatio.value}%`,[l.sizeProp.value]:`${100*(v.value-l.innerMinRatio.value)}%`};return t.selectionImg!==void 0&&(e.backgroundImage=`url(${t.selectionImg}) !important`),e}),b=u.getThumbRenderFn({focusValue:!0,getNodeData:zt,ratio:v,label:S(()=>t.labelValue===void 0?p.value:t.labelValue),thumbColor:S(()=>t.thumbColor||t.color),labelColor:S(()=>t.labelColor),labelTextColor:S(()=>t.labelTextColor)}),x=S(()=>l.editable.value?{onClick:u.onClick,onMousedown:u.onActivate,onFocus:ee,onBlur:u.onBlur,onKeydown:te,onKeyup:u.onKeyup}:{}),C=S(()=>{let e={role:`slider`,"aria-orientation":l.orientation.value,"aria-valuemin":l.innerMin.value,"aria-valuemax":l.innerMax.value,"aria-valuenow":t.modelValue===null?l.innerMin.value:t.modelValue,"data-step":t.step};return t.labelValue===void 0?t.modelValue===null&&(e[`aria-valuetext`]=i.lang.label.noValue):e[`aria-valuetext`]=t.labelValue,t.disable?e[`aria-disabled`]=`true`:t.readonly&&(e[`aria-readonly`]=`true`),e}),w=S(()=>({...C.value,...s.attributes.value,...x.value}));function T(e){p.value!==t.modelValue&&p.value!==h&&(h=p.value,n(`update:modelValue`,p.value)),e&&(m!==null&&m!==p.value&&n(`change`,p.value),m=null)}function E(){return m=p.value,d.value.getBoundingClientRect()}function D(e,n=l.dragging.value){let r=u.getDraggingRatio(e,n);p.value=u.convertRatioToModel(r),f.value=!t.snap||t.step===0?r:u.convertModelToRatio(p.value)}function ee(){l.focus.value=!0}function te(e){if(!It.includes(e.keyCode))return;if(ie(e),m===null&&(m=p.value),e.keyCode===36||e.keyCode===35){p.value=e.keyCode===36?l.innerMin.value:l.innerMax.value,T();return}let n=([34,33].includes(e.keyCode)?10:1)*l.keyStep.value,r=([34,37,40].includes(e.keyCode)?-1:1)*(l.isReversed.value?-1:1)*(t.vertical?-1:1)*n;p.value=I(l.roundValueFn.value(p.value+r),l.innerMin.value,l.innerMax.value),T()}return()=>{let e=u.getContent(y,l.tabindex,w,e=>{e.push(b())});return o(`div`,{ref:d,class:[l.classes.value+(t.modelValue===null?` q-slider--no-value`:``),r.class],style:r.style,...s.listeners.value},e)}}});function G(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(G(e,t))}):e instanceof Map&&e.forEach((e,r)=>{n.set(r,G(e,t))}),Object.assign(n,...Object.keys(e).map(n=>({[n]:G(e[n],t)})))}var Vt=A({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(t,{slots:n,emit:r}){let{proxy:i}=g(),s=ce(),c=e(null),l=a(``),d=a(``),f=!1,p=S(()=>se({initialValue:l.value,validate:t.validate,set:m,cancel:h,updatePosition:_},`value`,()=>d.value,e=>{d.value=e}));function m(){t.validate(d.value)&&(v()&&(r(`save`,d.value,l.value),r(`update:modelValue`,d.value)),y())}function h(){v()&&r(`cancel`,d.value,l.value),y()}function _(){u(()=>{c.value.updatePosition()})}function v(){return!Fe(d.value,l.value)}function y(){f=!0,c.value.hide()}function b(){f=!1,l.value=G(t.modelValue),d.value=G(t.modelValue),r(`beforeShow`)}function x(){r(`show`)}function C(){!f&&v()&&(t.autoSave&&t.validate(d.value)?(r(`save`,d.value,l.value),r(`update:modelValue`,d.value)):r(`cancel`,d.value,l.value)),r(`beforeHide`)}function w(){r(`hide`)}function T(){let e=n.default===void 0?[]:[n.default(p.value)].flat();return t.title&&e.unshift(o(`div`,{class:`q-dialog__title q-mt-sm q-mb-sm`},t.title)),t.buttons&&e.push(o(`div`,{class:`q-popup-edit__buttons row justify-center no-wrap`},[o(k,{flat:!0,color:t.color,label:t.labelCancel||s.lang.label.cancel,onClick:h}),o(k,{flat:!0,color:t.color,label:t.labelSet||s.lang.label.set,onClick:m})])),e}return Object.assign(i,{set:m,cancel:h,show(e){c.value?.show(e)},hide(e){c.value?.hide(e)},updatePosition:_}),()=>{if(!t.disable)return o($e,{ref:c,class:`q-popup-edit`,cover:t.cover,onBeforeShow:b,onShow:x,onBeforeHide:C,onHide:w,onEscapeKey:h},T)}}}),Ht={class:`text-h6`},Ut=[`title`],Wt={key:1,class:`row justify-center q-mt-sm`},Gt=E({__name:`FolderPickerDialog`,props:{modelValue:{type:Boolean},initialPath:{}},emits:[`update:modelValue`,`select`],setup(e,{emit:t}){let n=e,r=t,o=a(``),s=a(null),u=a([]),d=a(!1),f=a(``);async function g(e){d.value=!0,f.value=``;try{let t=e?`?path=${encodeURIComponent(e)}`:``,n=await fetch(`/api/fs/list-dirs${t}`),r=await n.json();if(!n.ok){f.value=r?.error??`HTTP ${n.status}`;return}o.value=r.path??``,s.value=r.parent??null,u.value=Array.isArray(r.entries)?r.entries:[]}catch(e){f.value=e instanceof Error?e.message:String(e)}finally{d.value=!1}}function b(){o.value&&(r(`select`,o.value),r(`update:modelValue`,!1))}return c(()=>n.modelValue,e=>{e&&g(n.initialPath||void 0)}),(t,n)=>(l(),_(ge,{"model-value":e.modelValue,"onUpdate:modelValue":n[1]||=e=>t.$emit(`update:modelValue`,e)},{default:m(()=>[h(Ne,{class:`text-kobo-1`,style:{"min-width":`480px`,"max-width":`90vw`,background:`var(--kobo-surface)`}},{default:m(()=>[h(je,{class:`row items-center q-pb-none`},{default:m(()=>[T(`div`,Ht,i(t.$t(`folderPicker.title`)),1),h(V),p(h(k,{flat:``,dense:``,round:``,icon:`close`,color:`kobo-2`},null,512),[[mt]])]),_:1}),h(je,null,{default:m(()=>[T(`div`,{class:`text-caption text-kobo-3 ellipsis q-mb-sm`,style:{"font-family":`monospace`},title:o.value},i(o.value||`…`),9,Ut),f.value?(l(),_(vt,{key:0,dense:``,class:`bg-red-9 text-white q-mb-sm rounded-borders`},{default:m(()=>[y(i(f.value),1)]),_:1})):v(``,!0),h(F,{bordered:``,separator:``,class:`rounded-borders`,style:{"max-height":`320px`,"overflow-y":`auto`}},{default:m(()=>[s.value?p((l(),_(R,{key:0,clickable:``,onClick:n[0]||=e=>g(s.value)},{default:m(()=>[h(z,{avatar:``},{default:m(()=>[h(O,{name:`arrow_upward`,color:`kobo-2`})]),_:1}),h(z,null,{default:m(()=>[y(i(t.$t(`folderPicker.parent`)),1)]),_:1})]),_:1})),[[te]]):v(``,!0),(l(!0),C(w,null,D(u.value,e=>p((l(),_(R,{key:e.path,clickable:``,onClick:t=>g(e.path)},{default:m(()=>[h(z,{avatar:``},{default:m(()=>[h(O,{name:`folder`,color:`amber-6`})]),_:1}),h(z,null,{default:m(()=>[y(i(e.name),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[te]])),128)),!d.value&&u.value.length===0?(l(),_(R,{key:1},{default:m(()=>[h(z,{class:`text-kobo-3`},{default:m(()=>[y(i(t.$t(`folderPicker.empty`)),1)]),_:1})]),_:1})):v(``,!0)]),_:1}),d.value?(l(),C(`div`,Wt,[h(j,{size:`20px`,color:`kobo-2`})])):v(``,!0)]),_:1}),h(ze,{align:`right`},{default:m(()=>[p(h(k,{flat:``,label:t.$t(`common.cancel`),color:`kobo-2`},null,8,[`label`]),[[mt]]),h(k,{flat:``,label:t.$t(`folderPicker.select`),color:`primary`,disable:!o.value||d.value,onClick:b},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}});function Kt(e){let t=document.createElement(`textarea`);t.value=e,t.contentEditable=`true`,t.style.position=`fixed`;let n=()=>{};De(n),document.body.append(t),t.focus(),t.select();let r=document.execCommand(`copy`);return t.remove(),Ve(n),r}function qt(e){if(navigator.clipboard)return navigator.clipboard.writeText(e);let t=Kt(e);return t?Promise.resolve(!0):Promise.reject(t)}function Jt(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 Yt(e,t,n,r){let i=n.trim()?Re(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 Xt={"data-tour":`settings-mcp`,class:`q-mt-lg`},Zt={class:`text-subtitle2 q-mb-sm`},Qt={class:`text-caption text-kobo-3`},$t={key:0,class:`text-caption text-kobo-3`},en={key:0,class:`row items-center q-mt-sm`},tn={class:`mcp-url col`},nn={class:`mcp-config q-pa-sm`},rn={class:`text-caption text-kobo-3`},an={class:`row q-gutter-sm`},on={key:1,class:`text-caption text-kobo-3 q-mt-sm`},sn={key:2,class:`text-caption text-kobo-3 q-mt-sm`},cn=B(E({__name:`McpConnectionSettings`,props:{token:{},networkEnabled:{type:Boolean},behindProxy:{type:Boolean}},setup(e){let n=e,{t:r}=ke(),o=ce(),s=a(null),u=a(!1),d=a(``),f=a(``),p=S(()=>s.value?Jt(s.value,window.location.origin):[]),g=S(()=>[...p.value.map(e=>({label:`${r(`settings.mcp.${e.kind}`)} — ${e.url}`,value:e.url})),...s.value?.stdio?[{label:r(`settings.mcp.stdio`),value:`stdio`}]:[]]),b=S(()=>f.value===`stdio`&&s.value?.stdio?`stdio`:p.value.find(e=>e.url===f.value)),x=S(()=>s.value&&b.value?Yt(s.value,b.value,d.value):``),E=S(()=>b.value===`stdio`?s.value?.localRequiresToken:b.value?.requiresToken);c(()=>[n.networkEnabled,n.behindProxy],async(e,t,n)=>{let r=new AbortController;n(()=>r.abort());try{let e=await Ie(`/api/settings/mcp`,{signal:r.signal});if(r.signal.aborted)return;s.value=e,u.value=!1,g.value.some(e=>e.value===f.value)||(f.value=s.value.localUrl)}catch{if(r.signal.aborted)return;u.value=!0}},{immediate:!0});async function D(e){try{await qt(e),o.notify({type:`positive`,message:r(`settings.network.copied`)})}catch{o.notify({type:`negative`,message:r(`settings.mcp.copyFailed`)})}}function ee(){s.value&&b.value&&n.token&&n.networkEnabled&&D(Yt(s.value,b.value,d.value,n.token))}return(n,a)=>(l(),C(`section`,Xt,[T(`div`,Zt,i(t(r)(`settings.mcp.title`)),1),T(`p`,Qt,i(t(r)(`settings.mcp.hint`)),1),u.value?(l(),_(vt,{key:0,dense:``,class:`bg-negative text-white`},{default:m(()=>[y(i(t(r)(`settings.network.loadFailed`)),1)]),_:1})):s.value?(l(),C(w,{key:1},[e.networkEnabled?v(``,!0):(l(),C(`p`,$t,i(t(r)(`settings.mcp.remoteDisabled`)),1)),h(N,{modelValue:d.value,"onUpdate:modelValue":a[0]||=e=>d.value=e,label:t(r)(`settings.mcp.clientName`),maxlength:`120`,outlined:``,dense:``,dark:``,class:`q-mb-md`},null,8,[`modelValue`,`label`]),h(L,{modelValue:f.value,"onUpdate:modelValue":a[1]||=e=>f.value=e,options:g.value,"emit-value":``,"map-options":``,label:t(r)(`settings.mcp.connection`),outlined:``,dense:``,dark:``},null,8,[`modelValue`,`options`,`label`]),b.value?(l(),C(w,{key:1},[b.value===`stdio`?v(``,!0):(l(),C(`div`,en,[T(`code`,tn,i(b.value.url),1),h(k,{flat:``,dense:``,icon:`content_copy`,title:t(r)(`settings.mcp.copyUrl`),onClick:a[2]||=e=>D(b.value.url)},null,8,[`title`])])),T(`pre`,nn,i(x.value),1),T(`p`,rn,i(t(r)(`settings.mcp.genericFormat`)),1),T(`div`,an,[h(k,{outline:``,dense:``,"no-caps":``,icon:`content_copy`,label:t(r)(`settings.mcp.copyConfig`),onClick:a[3]||=e=>D(x.value)},null,8,[`label`]),E.value?(l(),_(k,{key:0,outline:``,dense:``,"no-caps":``,disable:!e.token||!e.networkEnabled,label:t(r)(`settings.mcp.copyWithToken`),onClick:ee},null,8,[`disable`,`label`])):v(``,!0)]),E.value&&!e.token?(l(),C(`p`,on,i(t(r)(`settings.mcp.tokenUnavailable`)),1)):v(``,!0)],64)):v(``,!0),s.value.stdio?v(``,!0):(l(),C(`p`,sn,i(t(r)(`settings.mcp.stdioUnavailable`)),1))],64)):(l(),_(j,{key:2}))]))}}),[[`__scopeId`,`data-v-2ac25d1e`]]),ln={class:`notification-sounds-grid q-mt-md`},un={class:`text-subtitle2`},dn={class:`text-kobo-3 text-caption q-mb-sm`},fn={class:`row items-center q-gutter-sm`},K={class:`row items-center q-gutter-sm q-mt-sm`},pn={class:`text-kobo-2 text-caption volume-label`},mn={class:`text-kobo-2 text-caption volume-value`},hn=B(E({__name:`PrNotificationSoundSettings`,props:{modelValue:{},generalSound:{}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,a=n,{t:o}=ke(),s=S(()=>[{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=S(()=>[{label:o(`settings.soundGeneral`),value:be},...Ae.map(e=>({label:o(e.labelKey),value:e.id}))]);function u(e,t){a(`update:modelValue`,{...r.modelValue,[e]:t})}function d(e){let t=Ge(r.modelValue[e.soundKey]);t!==null&&he(t??r.generalSound,r.modelValue[e.volumeKey])}return(n,r)=>(l(),C(`div`,ln,[(l(!0),C(w,null,D(s.value,n=>(l(),C(`div`,{key:n.soundKey,class:`notification-sound-card q-pa-md rounded-borders`},[T(`div`,un,i(n.title),1),T(`div`,dn,i(n.description),1),h(P,{"model-value":e.modelValue[n.enabledKey],label:t(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`]),T(`div`,fn,[h(L,{"model-value":e.modelValue[n.soundKey],options:c.value,label:n.title,disable:!e.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`]),h(k,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:t(o)(`settings.notificationSoundPreview`),disable:!e.modelValue[n.enabledKey],onClick:e=>d(n)},null,8,[`label`,`disable`,`onClick`])]),T(`div`,K,[T(`div`,pn,i(t(o)(`settings.notificationVolume`)),1),h(Bt,{"model-value":e.modelValue[n.volumeKey],min:0,max:1,step:.05,disable:!e.modelValue[n.enabledKey],"aria-label":t(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`]),T(`div`,mn,i(Math.round(e.modelValue[n.volumeKey]*100))+`% `,1)])]))),128))]))}}),[[`__scopeId`,`data-v-41966330`]]),gn=B(E({__name:`SettingsNavList`,props:{navItems:{},activeTab:{}},emits:[`select`],setup(e,{emit:t}){let r=t;return(t,a)=>(l(),_(F,{dense:``,class:`settings-nav__list`},{default:m(()=>[(l(!0),C(w,null,D(e.navItems,t=>p((l(),_(R,{key:t.value,clickable:``,"data-tour":`settings-nav-${t.value}`,class:n([`settings-nav__item`,{"settings-nav__item--active":e.activeTab===t.value}]),onClick:e=>r(`select`,t.value)},{default:m(()=>[h(z,{avatar:``,class:`settings-nav__icon`},{default:m(()=>[h(O,{name:t.icon,size:`16px`},null,8,[`name`])]),_:2},1024),h(z,{class:`settings-nav__label`},{default:m(()=>[y(i(t.label),1)]),_:2},1024)]),_:2},1032,[`data-tour`,`class`,`onClick`])),[[te,!1]])),128))]),_:1}))}}),[[`__scopeId`,`data-v-fac6b946`]]),_n={class:`whip-shortcut-recorder`},vn={class:`text-caption text-kobo-2 q-mb-xs`},yn={class:`row items-center no-wrap q-gutter-xs`},bn={"data-testid":`whip-shortcut-value`},xn={key:0,role:`status`,"aria-live":`polite`,class:`q-sr-only`},Sn={key:1,role:`alert`,class:`text-negative text-caption q-mt-xs`},Cn=B(E({__name:`WhipShortcutRecorder`,props:{modelValue:{}},emits:[`update:modelValue`],setup(e,{emit:n}){let r=e,o=n,{t:s}=ke(),c=Se(),u=a(!1),d=a(``),f=S(()=>u.value?s(`settings.whipShortcutRecording`):M(r.modelValue,c)),p=S(()=>u.value?s(`settings.whipShortcutRecordingLabel`):s(`settings.whipShortcutButtonLabel`,{shortcut:f.value}));function g(){u.value&&(u.value=!1,window.removeEventListener(`keydown`,_,!0))}function _(e){e.preventDefault(),e.stopPropagation();let t=_e(e,c);if(t.status!==`pending`){if(t.status===`reserved`){d.value=s(`settings.whipShortcutReserved`);return}d.value=``,t.status===`accepted`&&o(`update:modelValue`,t.shortcut),g()}}function b(){u.value||(d.value=``,u.value=!0,window.addEventListener(`keydown`,_,!0))}function w(){g(),d.value=``,o(`update:modelValue`,Qe)}return x(g),(e,n)=>(l(),C(`div`,_n,[T(`div`,vn,i(t(s)(`settings.whipShortcut`)),1),T(`div`,yn,[h(k,{"data-testid":`whip-shortcut-recorder`,dense:``,"no-caps":``,outline:``,color:`primary`,"aria-label":p.value,"aria-pressed":u.value,onClick:b},{default:m(()=>[T(`span`,bn,i(f.value),1),h(H,null,{default:m(()=>[y(i(t(s)(`settings.whipShortcutHint`)),1)]),_:1})]),_:1},8,[`aria-label`,`aria-pressed`]),h(k,{"data-testid":`whip-shortcut-reset`,dense:``,flat:``,round:``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,"aria-label":t(s)(`settings.whipShortcutReset`),onClick:w},{default:m(()=>[h(H,null,{default:m(()=>[y(i(t(s)(`settings.whipShortcutReset`)),1)]),_:1})]),_:1},8,[`aria-label`])]),u.value?(l(),C(`div`,xn,i(t(s)(`settings.whipShortcutRecording`)),1)):v(``,!0),d.value?(l(),C(`div`,Sn,i(d.value),1)):v(``,!0)]))}}),[[`__scopeId`,`data-v-d8618bd9`]]);function q(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function wn(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(!wn(e[n],t[n]))return!1;return!0}return q(e)&&q(t)?Tn(e,t):!1}function Tn(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)||!wn(e[r],t[r]))return!1;return!0}function En(e){if(Array.isArray(e))return e.map(En);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]=En(r);return t}return e}function Dn(e){return En(e)}function On(e){return e?{disabled:!1,hintKey:null}:{disabled:!0,hintKey:`settings.whipVolumeMasterAudioDisabled`}}var kn={key:0,class:`settings-load-error`},An={class:`column`},jn={class:`settings-load-error__title`},Mn={class:`settings-load-error__detail`},Nn={class:`settings-load-error__hint`},Pn={class:`settings-layout`},Fn={key:0,class:`settings-nav`},In={class:`settings-nav__title`},Ln={class:`settings-nav`},Rn={class:`settings-nav__title`},zn={class:`settings-content`},Bn={class:`settings-content__header`},Vn={class:`settings-content__title`},Hn={class:`text-caption text-kobo-3 q-mb-md`},Un={class:`settings-panels`},Wn={class:`settings-global-wrap`},Gn={key:0,"data-tour":`settings-card-general`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Kn={class:`text-subtitle2 q-mb-sm`},qn={key:1,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Jn={class:`text-subtitle2 q-mb-sm`},Yn={class:`text-caption text-kobo-3 q-mt-xs`},Xn={key:2,"data-tour":`settings-card-skills`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Zn={class:`text-subtitle2 q-mb-sm`},Qn={class:`text-caption text-kobo-3 q-mt-xs`},$n={key:3,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},er={class:`text-subtitle2 q-mb-sm`},tr={class:`text-caption text-kobo-3 q-mb-xs q-mt-sm`},nr={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},rr={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},ir={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`},or={key:4,"data-tour":`settings-card-agents`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},sr={class:`text-subtitle2 q-mb-sm`},cr={class:`text-subtitle2 q-mb-sm q-mt-md`},lr={class:`text-subtitle2 q-mb-sm q-mt-md`},ur={class:`text-caption text-kobo-3 q-mb-sm`},dr={class:`text-subtitle2 q-mb-sm q-mt-md`},fr={key:5,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},pr={class:`text-subtitle2 q-mb-sm`},mr={class:`row items-center q-gutter-lg`},hr={key:6,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},gr={class:`text-subtitle2 q-mb-xs`},_r={class:`text-kobo-3 text-caption q-mb-md`},vr={key:0,class:`column q-gutter-sm q-mt-md`},yr={class:`row items-center q-gutter-sm`},br={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},xr={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Sr={key:0,class:`text-kobo-3 text-caption`},Cr={key:7,"data-tour":`settings-card-notifications`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},wr={class:`text-subtitle2 q-mb-sm`},Tr={class:`notification-sounds-grid q-mt-md`},Er={class:`notification-sound-card q-pa-md rounded-borders`},Dr={class:`text-subtitle2`},Or={class:`text-kobo-3 text-caption q-mb-sm`},kr={class:`column q-gutter-xs q-mb-sm`},Ar={class:`row items-center q-gutter-sm q-mb-sm`},jr={class:`row items-center q-gutter-sm`},Mr={class:`row items-center q-gutter-sm q-mt-sm`},Nr={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},Pr={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Fr={class:`notification-sound-card q-pa-md rounded-borders`},Ir={class:`text-subtitle2`},Lr={class:`text-kobo-3 text-caption q-mb-sm`},Rr={class:`row items-center q-gutter-sm`},zr={class:`row items-center q-gutter-sm q-mt-sm`},Br={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},Vr={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Hr={class:`notification-sound-card q-pa-md rounded-borders`},Ur={class:`text-subtitle2`},Wr={class:`text-kobo-3 text-caption q-mb-sm`},Gr={class:`row items-center q-gutter-sm`},Kr={class:`row items-center q-gutter-sm q-mt-sm`},qr={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},Jr={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Yr={class:`notification-sound-card q-pa-md rounded-borders`},Xr={class:`text-subtitle2`},Zr={class:`text-kobo-3 text-caption q-mb-sm`},Qr={class:`row items-center q-gutter-sm`},$r={class:`row items-center q-gutter-sm q-mt-sm`},ei={class:`text-kobo-2 text-caption`,style:{"min-width":`58px`}},ti={class:`text-kobo-2 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},ni={key:8,"data-tour":`settings-card-voice`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ri={class:`row items-center q-mb-sm`},ii={class:`text-subtitle2`},ai={class:`column q-gutter-xs`},oi={class:`row items-center q-gutter-sm`},si={class:`row items-center q-gutter-sm`},ci={class:`q-pa-sm text-caption text-kobo-2`},li={class:`q-mb-sm`},ui={class:`q-mb-sm`},di={href:`https://github.com/ggml-org/whisper.cpp`,target:`_blank`,rel:`noopener noreferrer`,class:`text-kobo-2`},fi={class:`q-mb-xs text-kobo-2`},pi={class:`q-mb-sm`},mi={class:`q-mb-xs text-kobo-2`},hi={key:9,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},gi={class:`text-subtitle2 q-mb-sm`},_i={class:`row q-col-gutter-sm`},vi={class:`col-12 col-sm-6`},yi={class:`col-12 col-sm-6`},bi={key:10,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},xi={class:`text-subtitle2 q-mb-sm`},Si={key:0,class:`voice-models-dir row items-center q-gutter-sm q-mb-md`},Ci={class:`text-caption text-kobo-2 ellipsis-2-lines`,style:{flex:`1`,"min-width":`0`,"word-break":`break-all`}},wi={class:`column q-gutter-sm`},Ti={class:`row items-center q-gutter-sm`},Ei={class:`text-body2 text-kobo-1`,style:{"font-family":`var(--kobo-font-mono, monospace)`}},Di={class:`text-caption text-kobo-3`},Oi={key:0,class:`q-mt-sm`},ki={class:`row items-center q-mt-xs`},Ai={class:`text-caption text-kobo-3`},ji={class:`text-caption text-kobo-2`},Mi={key:1,class:`text-caption text-kobo-3 q-mt-xs ellipsis`,style:{"font-family":`var(--kobo-font-mono, monospace)`,"word-break":`break-all`}},Ni={key:11,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Pi={class:`text-subtitle2 q-mb-sm`},Fi={class:`q-pa-sm column q-gutter-sm`},Ii={class:`row items-center q-gutter-sm`},Li={class:`text-caption text-kobo-2`},Ri={class:`text-caption text-kobo-2`,style:{"min-width":`40px`,"text-align":`right`}},zi={class:`text-caption text-kobo-3`},Bi={class:`text-caption text-kobo-3`},Vi={class:`text-caption text-kobo-3`},Hi={class:`text-caption text-kobo-3`},Ui={class:`q-pa-sm column q-gutter-sm`},Wi={key:12,"data-tour":`settings-card-prompts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Gi={class:`row items-center q-mb-sm`},Ki={class:`text-subtitle2`},qi={class:`text-caption text-kobo-3 q-mb-sm`},Ji={class:`q-mb-sm`},Yi={class:`row items-center q-mb-sm q-mt-md`},Xi={class:`text-subtitle2`},Zi={class:`text-caption text-kobo-3 q-mb-sm`},Qi={class:`row items-center q-mb-sm q-mt-md`},$i={class:`text-subtitle2`},ea={class:`text-caption text-kobo-3 q-mb-sm`},ta={class:`row items-center q-mb-sm q-mt-md`},na={class:`text-subtitle2`},ra={class:`text-caption text-kobo-3 q-mb-sm`},ia={class:`row items-center q-mb-sm q-mt-md`},aa={class:`text-subtitle2`},oa={class:`text-caption text-kobo-3 q-mb-sm`},sa={key:13,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ca={class:`text-subtitle2 q-mb-sm`},la={class:`text-caption text-kobo-3 q-mb-sm`},ua={key:14,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},da={class:`text-subtitle2 q-mb-sm`},fa={class:`text-caption text-kobo-3 q-mb-sm`},pa={key:15,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ma={class:`text-subtitle2 q-mb-sm`},ha={class:`text-caption text-kobo-3 q-mb-sm`},ga={key:16,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},_a={class:`text-subtitle2 q-mb-sm`},va={class:`text-caption text-kobo-3 q-mb-sm`},ya={class:`q-mb-sm`},ba={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},xa={key:18,"data-tour":`settings-card-sentry`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Sa={class:`text-subtitle2 q-mb-sm`},Ca={class:`text-caption text-kobo-3 q-mb-sm`},wa={class:`q-mb-sm`},Ta={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Ea={key:20,"data-tour":`settings-card-forge`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Da={class:`text-subtitle2 q-mb-sm`},Oa={class:`text-caption text-kobo-3 q-mb-md`},ka={class:`text-subtitle2 q-mb-sm`},Aa={class:`text-caption text-kobo-3 q-mb-sm`},ja={class:`q-mb-sm`},Ma={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Na={class:`q-mb-sm`},Pa={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Fa={class:`row items-center q-mb-sm`},Ia={class:`text-subtitle2`},La={class:`text-caption text-kobo-3 q-mb-xs`},Ra={class:`text-subtitle2 q-mb-sm`},za={class:`text-caption text-kobo-3 q-mb-sm`},Ba={class:`q-mb-sm`},Va={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Ha={class:`q-mb-sm`},Ua={class:`row items-center q-mb-xs`},Wa={class:`field-label-sub text-caption text-kobo-3 col`},Ga=[`src`,`alt`],Ka={key:1,class:`text-caption text-kobo-3 q-py-sm`},qa={key:0,class:`text-caption text-orange-5 q-mb-xs`},Ja={class:`text-subtitle2 q-mb-sm`},Ya={class:`row items-center q-mb-sm`},Xa={class:`text-subtitle2`},Za={class:`text-caption text-kobo-3 q-mb-xs`},Qa={key:24,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},$a={class:`text-subtitle2 q-mb-sm`},eo={class:`text-caption text-kobo-3 q-mb-sm`},to={key:25,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},no={class:`text-subtitle2 q-mb-sm`},ro={class:`text-caption text-kobo-3 q-mb-sm`},io={class:`row items-center no-wrap`},ao={key:1,class:`text-caption text-kobo-3 q-mb-sm`},oo={class:`row items-center q-gutter-sm`},so={key:26,"data-tour":`settings-card-scripts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},co={class:`text-subtitle2 q-mb-sm`},lo={class:`text-caption text-kobo-3 q-mb-sm`},uo={key:27,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},fo={class:`text-subtitle2 q-mb-sm`},po={class:`text-caption text-kobo-3 q-mb-sm`},mo={class:`text-caption text-kobo-3 q-mt-md q-mb-xs`},ho={key:28,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},go={class:`text-subtitle2 q-mb-sm`},_o={class:`text-caption text-kobo-3 q-mb-sm`},vo={key:29,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},yo={class:`text-subtitle2 q-mb-sm`},bo={class:`text-caption text-kobo-3 q-mb-sm`},xo={key:30,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},So={class:`text-subtitle2 q-mb-sm`},Co={class:`text-caption text-kobo-3 q-mb-sm`},wo={key:31,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},To={class:`text-subtitle2 q-mb-sm`},Eo={class:`text-caption text-kobo-3 q-mb-sm`},Do={key:32,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Oo={class:`row items-center justify-between q-mb-sm`},ko={class:`text-subtitle2`},Ao={class:`text-caption text-kobo-3 q-mb-xs`},jo={class:`text-caption text-kobo-3 mono-guide q-mb-sm`},Mo={key:33,"data-tour":`settings-card-worktrees`,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={class:`text-caption text-kobo-3 q-mt-xs`},Io={"data-tour":`settings-card-worktrees-purge`},Lo={class:`text-caption text-kobo-3 q-mt-xs`},Ro={"data-tour":`settings-card-worktrees-retention`},zo={class:`text-subtitle2 q-mb-sm`},Bo={class:`text-caption text-negative q-mb-sm`},Vo={class:`text-caption text-kobo-3 q-mb-sm`},Ho={key:0,class:`text-caption text-kobo-3 q-mt-sm`},Uo={class:`q-pa-sm text-caption text-kobo-2`,style:{"line-height":`1.55`}},Wo={class:`text-weight-medium text-kobo-1 q-mb-xs`},Go={class:`q-mb-xs`},Ko={class:`purge-docs-code`},qo={class:`text-kobo-3 q-mb-md`},Jo={class:`text-weight-medium text-kobo-1 q-mb-xs`},Yo={class:`q-mb-xs`},Xo={class:`q-pl-md q-my-xs`},Zo={class:`purge-docs-code`},Qo={class:`text-kobo-3 q-mb-md`},$o={class:`text-weight-medium text-kobo-1 q-mb-xs`},es={class:`q-mb-xs`},ts={class:`q-mb-xs text-kobo-3`},ns={class:`purge-docs-code`},rs={class:`q-mb-xs text-kobo-3`},is={class:`purge-docs-code`},as={class:`text-kobo-3`},os={key:34,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ss={class:`text-subtitle2 q-mb-sm`},cs={class:`text-caption text-kobo-3 q-mb-sm`},ls={key:1,class:`q-mt-md`},us={class:`text-caption text-kobo-3 q-mt-xs`},ds={class:`q-mt-md`},fs={class:`text-caption text-kobo-3 q-mb-xs`},ps={class:`q-mt-md`},ms={class:`text-caption text-kobo-3 q-mb-xs`},hs={key:0,class:`text-caption text-kobo-3`},gs={key:0,class:`q-mt-md`},_s={class:`text-caption text-kobo-3 q-mb-xs`},vs=[`src`,`alt`],ys={key:35,"data-tour":`settings-card-export`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},bs={class:`text-subtitle2 q-mb-sm`},xs={class:`text-caption text-kobo-3 q-mb-sm`},Ss={class:`row q-gutter-sm`},Cs={key:0,class:`q-pa-none`},ws={class:`row q-gutter-md`,style:{"min-height":`500px`}},Ts={class:`project-list-col`},Es={class:`settings-card rounded-borders`,style:{height:`100%`}},Ds={class:`q-pa-sm`},Os={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-kobo-3`,style:{"letter-spacing":`0.05em`}},ks={key:0,class:`q-pa-md text-center text-caption text-kobo-3`},As={class:`q-pa-sm`},js={class:`project-form-col`},Ms={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},Ns={class:`row items-center q-mb-md`},Ps={class:`text-subtitle1 text-weight-medium text-kobo-1`},Fs={key:0,class:`q-mb-md`},Is={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ls={class:`text-caption text-kobo-3 q-mt-xs`},Rs={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},zs={class:`text-subtitle2 q-mb-md`},Bs={class:`q-mb-md`},Vs={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Hs={class:`q-mb-md`},Us={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ws={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Gs={class:`row items-center q-gutter-xs`},Ks={class:`text-caption text-kobo-3 q-mt-xs`},qs={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Js={class:`text-subtitle2 q-mb-md`},Ys={class:`q-mb-md`},Xs={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Zs={class:`q-mb-md`},Qs={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},$s={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},ec={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},tc={class:`text-subtitle2 q-mb-md`},nc={class:`q-mb-md`},rc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},ic={class:`text-caption text-kobo-3 q-mb-xs`},ac={class:`q-mb-md`},oc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},sc={class:`text-caption text-kobo-3 q-mb-xs`},cc={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-mb-xs`},dc={key:0,class:`q-mb-md`},fc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},pc={class:`text-caption text-kobo-3 q-mb-xs`},mc={key:1,class:`q-mb-md`},hc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},gc={class:`text-caption text-kobo-3 q-mb-xs`},_c={class:`q-mb-md`},vc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},yc={class:`text-caption text-kobo-3 q-mb-xs`},bc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},xc={class:`text-caption text-kobo-3 q-mt-xs`},Sc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Cc={class:`text-subtitle2 q-mb-md`},wc={class:`q-mb-md`},Tc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ec={class:`text-caption text-kobo-3 q-mb-xs`},Dc={class:`text-caption text-kobo-3 q-mt-xs`},Oc={class:`q-mb-md`},kc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Ac={class:`text-caption text-kobo-3 q-mb-xs`},jc={class:`field-label-sub text-caption q-mt-sm q-mb-xs text-kobo-3`},Mc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Nc={class:`text-caption text-kobo-3 q-mb-xs`},Pc={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Fc={class:`text-caption text-kobo-3 q-mb-xs`},Ic={class:`field-label text-body2 text-weight-medium q-mb-xs text-kobo-3`},Lc={class:`text-caption text-kobo-3 q-mb-xs`},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:`row items-center justify-between q-mb-xs`},Vc={class:`field-label text-body2 text-weight-medium text-kobo-3`},Hc={class:`text-caption text-kobo-3 q-mb-xs`},Uc={class:`text-caption text-kobo-3 mono-guide q-mb-sm`},Wc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Gc={class:`text-subtitle2 q-mb-md`},Kc={class:`q-mb-md`},qc={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Jc={class:`field-label-sub text-caption q-mb-xs text-kobo-3`},Yc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Xc={class:`text-subtitle2 q-mb-xs`},Zc={class:`text-caption text-kobo-3 q-mb-sm`},Qc={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},$c={class:`text-subtitle2 q-mb-xs`},el={class:`text-caption text-kobo-3 q-mb-sm`},tl={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},nl={class:`text-body2 text-kobo-3`},rl={key:1,class:`q-pa-none`},il={"data-tour":`settings-card-templates`,class:`settings-card rounded-borders q-pa-lg`},al={class:`row items-center justify-between q-mb-md`},ol={class:`text-subtitle1 text-weight-medium text-kobo-1`},sl={class:`row q-gutter-sm items-center`},cl={key:0,class:`text-kobo-3 q-py-lg text-center`},ll={key:1,class:`column q-gutter-sm`},ul={class:`row items-start justify-between no-wrap`},dl={class:`col`},fl={class:`text-body1 text-weight-medium`,style:{"font-family":`var(--kobo-font-mono)`}},pl={class:`text-caption text-kobo-2 q-mt-xs`},ml={class:`row no-wrap q-gutter-xs`},hl={class:`text-caption text-kobo-3 q-mt-lg`,style:{"font-family":`var(--kobo-font-mono)`}},gl={key:2,class:`q-pa-none`},_l={"data-tour":`settings-card-workspaceTemplates`,class:`settings-card rounded-borders q-pa-lg`},vl={class:`text-subtitle1 text-weight-medium text-kobo-1 q-mb-xs`},yl={class:`text-caption text-kobo-3 q-mb-md`},bl={key:0,class:`text-caption text-kobo-3`},xl={class:`row no-wrap q-gutter-xs`},Sl={class:`mono-guide q-ma-none`},Cl={class:`settings-savebar__label`},wl={class:`text-subtitle1`},Tl={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`var(--kobo-font-mono)`,columns:`2`,"column-gap":`24px`}},El={key:0,class:`text-negative text-caption`},Dl=2500,Ol=B(E({__name:`SettingsPage`,setup(e){let o=ce(),u=Ee(),g=Xe(),x=Ct(),{t:E,locale:ee}=ke(),{scheduleAutoRun:te}=ut(),{isMobile:ie}=ht(),se=dt(),A=a(`general`),j=a(!1);function le(e){A.value=e,ie.value&&(j.value=!1)}function ue(){j.value=!1,se.toggleLeft()}let de=S(()=>[{value:`general`,icon:`tune`,label:E(`settings.nav.general`)},{value:`agents`,icon:`smart_toy`,label:E(`settings.nav.agents`)},{value:`skills`,icon:`extension`,label:E(`settings.nav.skills`)},{value:`prompts`,icon:`text_snippet`,label:E(`settings.nav.prompts`)},{value:`scripts`,icon:`terminal`,label:E(`settings.nav.scripts`)},{value:`notion`,icon:`integration_instructions`,label:E(`settings.nav.notion`)},{value:`sentry`,icon:`bug_report`,label:E(`settings.nav.sentry`)},{value:`forge`,icon:`account_tree`,label:E(`settings.nav.forge`)},{value:`voice`,icon:`mic`,label:E(`settings.nav.voice`)},{value:`notifications`,icon:`notifications`,label:E(`settings.nav.notifications`)},{value:`worktrees`,icon:`account_tree`,label:E(`settings.nav.worktrees`)},{value:`projects`,icon:`folder`,label:E(`settings.projects`)},{value:`templates`,icon:`description`,label:E(`templates.title`)},{value:`workspaceTemplates`,icon:`bookmarks`,label:E(`settings.nav.workspaceTemplates`)},{value:`export`,icon:`import_export`,label:E(`settings.nav.export`)}]),fe=Ye();c(()=>fe.query.tab,e=>{typeof e==`string`&&de.value.some(t=>t.value===e)&&le(e)},{immediate:!0});let pe=S(()=>de.value.find(e=>e.value===A.value)?.label??``),_e=S(()=>[`general`,`agents`,`skills`,`prompts`,`scripts`,`notion`,`sentry`,`forge`,`voice`,`notifications`,`worktrees`,`export`].includes(A.value)),ye=a(`auto`),Se=a(`auto`),Te=a(``),M=a(``),De=a(``),Fe=a(``),Ie=a(``),Re=a(``),Ve=a(``),Ge=a(``),Ze=a(!1),I=a(5),$e=a(0),B=a(0),ft=a(0),U=a({enabled:!1,token:``,behindProxy:!1,urls:[]}),wt=a(!1),Tt=a(``);function Et(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 Dt=S(()=>U.value.urls.map(Et));async function Ot(){try{let e=await fetch(`/api/settings/network`);if(!e.ok)throw Error(`HTTP ${e.status}`);U.value=await e.json(),await kt()}catch{o.notify({type:`negative`,message:E(`settings.network.loadFailed`),position:`top`})}}async function kt(){let e=Dt.value[0];if(!e||!U.value.token){Tt.value=``;return}let t=`${e}/?token=${encodeURIComponent(U.value.token)}`;try{let{default:e}=await Je(async()=>{let{default:e}=await import(`./browser-BFj5wwbS.js`).then(e=>Mt(e.default,1));return{default:e}},[]);Tt.value=await e.toDataURL(t,{margin:1,width:200})}catch{Tt.value=``}}async function At(e){try{let t=await fetch(`/api/settings/network`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)});if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();U.value={enabled:n.enabled,token:n.token,behindProxy:n.behindProxy,urls:n.urls},n.restartRequired&&(wt.value=!0),await kt()}catch{o.notify({type:`negative`,message:E(`settings.network.updateFailed`),position:`top`}),await Ot()}}function jt(e){At({enabled:e})}function Nt(e){At({behindProxy:e})}function Pt(){o.dialog({title:E(`settings.network.title`),message:E(`settings.network.regenerateConfirm`),cancel:!0,persistent:!0}).onOk(()=>{At({regenerate:!0})})}function Ft(){rf(U.value.token)}let It=a(!0),Lt=a(typeof Notification>`u`?`unsupported`:Notification.permission),W=a(!0),Rt=a(!1),zt=a(!1),G=a(!1),Ht=a(me),Ut=a(be),Wt=a(be),Kt=a(be),qt=a(1),Jt=a(1),Yt=a(1),Xt=a(1),Zt=a({...Me}),Qt=a(``),$t=a(``),en=a(``),tn=a(``),nn=a(!1),rn=a(!0),an=a(!1),on=a(Qe),sn=a(1),ln=S(()=>On(W.value)),un=S(()=>{switch(Lt.value){case`granted`:return{color:`positive`,label:E(`settings.browserNotificationGranted`)};case`denied`:return{color:`negative`,label:E(`settings.browserNotificationDenied`)};case`default`:return{color:`warning`,label:E(`settings.browserNotificationAsk`)};default:return{color:`kobo-3`,label:E(`settings.browserNotificationUnsupported`)}}});async function dn(){if(typeof Notification>`u`){o.notify({type:`negative`,message:E(`settings.browserNotificationUnsupported`),position:`top`});return}if(Notification.permission==="default"?Lt.value=await Notification.requestPermission():Lt.value=Notification.permission,Lt.value!==`granted`){o.notify({type:`warning`,message:E(`settings.browserNotificationPermissionNeeded`),position:`top`});return}new Notification(E(`settings.browserNotificationTestTitle`),{body:E(`settings.browserNotificationTestBody`),icon:`/favicon.ico`})}let fn=a(null),K=a({});async function pn(e){fn.value=e;try{let t=await fetch(`/api/${e}/test`,{method:`POST`}),n=await t.json();K.value[e]=t.ok?n:{ok:!1,durationMs:0,detail:n.error??`HTTP ${t.status}`}}catch(t){K.value[e]={ok:!1,durationMs:0,detail:t instanceof Error?t.message:String(t)}}finally{fn.value=null}}let mn=a([]),_n=a(!1),vn=a(``),yn=S(()=>mn.value.map(e=>({label:`${e.name} — ${e.email}`,value:e.id,name:e.name,email:e.email,avatarUrl:e.avatarUrl})));async function bn(e=!1){if(!_n.value&&!(!e&&mn.value.length>0)){_n.value=!0,vn.value=``;try{let e=await fetch(`/api/notion/users`),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error??`HTTP ${e.status}`);mn.value=Array.isArray(t.users)?t.users:[]}catch(e){vn.value=e instanceof Error?e.message:String(e),mn.value=[]}finally{_n.value=!1}}}let xn=a(``),Sn=a(``),q=a(null),wn=a(`bypass`),En=a(`bypass`),Ol=a(``),kl=a(``),Al=a(``),jl=a(``),J=a(!0),Ml=a(!0),Nl=a([]),Y=a([]),Pl=a(``),Fl=a(``),Il=a(``),Ll=a(`no-tasks`),Rl=a(!1),zl=a(``),Bl=a(``),Vl=a(``),Hl=a(``),Ul=a(``),Wl=a(``),Gl=a(!1);function Kl(e){Q.value.path=e}let ql=S(()=>[{label:E(`settings.cleanupScriptMode.inherit`),value:``},{label:E(`settings.cleanupScriptMode.idle`),value:`idle`},{label:E(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}]),Jl=a(Oe),Yl=a(null),Xl=a(!0);function Zl(e){let t=e.trim().replace(/^\/+|\/+$/g,``);return t.length===0||t.length>50||!/^[A-Za-z0-9._/-]+$/.test(t)||t.includes(`..`)?``:t}function Ql(){let e=Zl(Pl.value);e&&!Y.value.includes(e)&&(Y.value.push(e),Pl.value=``)}function $l(e){Y.value.splice(e,1)}function eu(e,t){let n=Zl(t);if(!n)return;let r=Y.value.indexOf(n);(r===-1||r===e)&&(Y.value[e]=n)}function tu(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 nu=a(!1),ru=a(`superpowers`),iu=S(()=>{switch(ru.value){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`}}),au=a(``),ou=a(``),su=a(``),cu=a(``),lu=a(``),uu=a(null),du=S(()=>[{value:`custom`,label:E(`settings.skillSuite.agnostic`)},{value:`superpowers`,label:E(`settings.skillSuite.superpowers`)},{value:`gstack`,label:E(`settings.skillSuite.gstack`)},{value:`ecc`,label:E(`settings.skillSuite.ecc`)},{value:`superpowers+gstack`,label:E(`settings.skillSuite.superpowersGstack`)},{value:`superpowers+gstack+ecc`,label:E(`settings.skillSuite.allThree`)}]);async function fu(e,t){uu.value=e;try{let n=await fetch(`/api/settings/skill-suite-prompts/${t}`);if(!n.ok)throw Error(await n.text());let r=await n.json(),i={reviewTemplate:au,autoLoopReviewGate:ou,autoLoopGroomingIntro:su,qaPromptTemplate:cu,brainstormingInstruction:lu};i[e].value=r[e],o.notify({type:`positive`,message:E(`settings.skillSuite.imported`),position:`top`})}catch(e){o.notify({type:`negative`,message:`${E(`settings.skillSuite.importFailed`)}: ${String(e)}`,position:`top`})}finally{uu.value=null}}let pu=a(!1),mu=a(`alt`),hu=a(`auto`),gu=a(null),_u=a(``),vu=a(``),yu=a(0),bu=a(``),xu=a(!1),Su=a(!0),Cu=a(null),wu=a(!1);function Tu(){o.dialog({title:E(`settings.skillSuite.reloadDefaults`),message:E(`settings.skillSuite.reloadDefaultsConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{au.value=it,ou.value=ot,su.value=tt,cu.value=nt,lu.value=ct})}function Eu(e){let t=e===`global`?Ul.value:Q.value.changeSourceBranchScript,n=()=>{e===`global`?Ul.value=Wl.value:Q.value.changeSourceBranchScript=Wl.value};if(!t.trim()||t===Wl.value){n();return}o.dialog({title:E(`settings.changeSourceBranchScript.replaceConfirmTitle`),message:E(`settings.changeSourceBranchScript.replaceConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(n)}function Du(e){return!e||e===`tiny`||e===`base`?.1:.2}let Ou=[e=>e.trim().length>0||E(`settings.worktreesPathRequired`)],ku=a(!1),X=a(-1),Z=a(!1),Q=a({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:``}}),Au=[`defaultModel`,`forge`,`prPromptTemplate`,`reviewPromptTemplate`,`ciFixPromptTemplate`,`notionInitialPromptTemplate`,`sentryInitialPromptTemplate`,`gitConventions`,`setupScript`,`taskPromptTemplate`,`cleanupScript`,`cleanupScriptMode`,`archiveScript`,`changeSourceBranchScript`,`sessionEndedScript`,`prMergedScript`,`autoLoopDisabledScript`,`devServer`,`e2e`,`finalization`],ju=a(null),Mu=a(null),Nu=S(()=>u.projects.map(e=>({value:e.path,label:lf(e)||e.path})));function Pu(e){let t=u.projects.find(t=>t.path===e);t&&(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 Fu(){let e={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 Au.every(t=>JSON.stringify(Q.value[t])===JSON.stringify(e[t]))}function Iu(e){if(e===null){ju.value=null,Mu.value=null;return}if(Mu.value===null&&Fu()){Pu(e),ju.value=e,Mu.value=e;return}let t=u.projects.find(t=>t.path===e),n=t&&lf(t)||e;o.dialog({title:E(`settings.copyFromConfirmTitle`),message:E(`settings.copyFromConfirm`,{project:n}),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{Pu(e),ju.value=e,Mu.value=e}).onCancel(()=>{ju.value=Mu.value})}let Lu=a([]),Ru=a([]);async function zu(){try{let e=await fetch(`/api/skills`);e.ok&&(Lu.value=await e.json())}catch{}}function Bu(e,t){t(()=>{let t=e.trim().toLowerCase();Ru.value=t?Lu.value.filter(e=>e.toLowerCase().includes(t)):Lu.value.slice()})}let Vu=a([]),Hu=a(!1),Uu=a(!1),Wu=a(!1),Gu=a(!1),Ku=a(null),qu=a(``),Ju=a(``),Yu=a(``),Xu=a(``),Zu=a(!1),Qu=a(!1),$u=S(()=>[...g.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),ed=[`{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 td(){Ku.value=null,qu.value=``,Ju.value=``,Yu.value=``,Xu.value=``,Gu.value=!0}function nd(e){Ku.value=e.slug,qu.value=e.slug,Ju.value=e.description,Yu.value=e.content,Xu.value=``,Gu.value=!0}async function rd(){Xu.value=``;let e=qu.value.trim(),t=Ju.value.trim();if(Ku.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Xu.value=E(`templates.slugInvalid`);return}if(!t){Xu.value=E(`templates.descriptionRequired`);return}if(!Yu.value.trim()){Xu.value=E(`templates.contentRequired`);return}Zu.value=!0;try{Ku.value===null?await g.createTemplate({slug:e,description:t,content:Yu.value}):await g.updateTemplate(Ku.value,{description:t,content:Yu.value}),Gu.value=!1}catch(e){Xu.value=e instanceof Error?e.message:E(`templates.createFailed`)}finally{Zu.value=!1}}function id(){o.dialog({title:E(`templates.reloadDefaults`),message:E(`templates.reloadDefaultsConfirmMessage`),dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:E(`templates.reloadDefaults`),color:`primary`}}).onOk(async()=>{Qu.value=!0;try{let e=await g.reloadDefaults();o.notify({type:`positive`,message:E(`templates.reloadDefaultsSuccess`,{added:e.added.length,kept:e.kept.length}),position:`top`,timeout:4e3})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:E(`templates.reloadDefaultsFailed`),position:`top`})}finally{Qu.value=!1}})}async function ad(e){o.dialog({title:E(`templates.deleteTemplate`),message:`${E(`templates.deleteConfirm`,{slug:e.slug})}\n\n${E(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:E(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await g.deleteTemplate(e.slug)}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:E(`templates.deleteFailed`),position:`top`})}})}function od(e){let t=new Date(e);return Number.isNaN(t.getTime())?`-`:t.toLocaleDateString()}function sd(e,t){o.dialog({title:E(`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 x.updateTemplate(e,{name:t})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:E(`settings.saveError`),position:`top`})}})}function cd(e,t){o.dialog({title:E(`workspaceTemplates.title`),message:E(`workspaceTemplates.deleteConfirm`,{name:t}),dark:!0,cancel:!0,persistent:!0}).onOk(async()=>{try{await x.deleteTemplate(e),o.notify({type:`positive`,message:E(`workspaceTemplates.deleted`,{name:t}),position:`top`})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:E(`settings.saveError`),position:`top`})}})}function ld(e){o.dialog({title:E(`templates.resetConfirmTitle`),message:E(`templates.resetConfirmMessage`,{slug:e.slug}),dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:E(`templates.resetToDefault`),color:`primary`}}).onOk(async()=>{try{await g.resetToDefault(e.slug),o.notify({type:`positive`,message:E(`templates.resetSuccess`,{slug:e.slug}),position:`top`})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:E(`templates.resetFailed`),position:`top`})}})}let ud=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function dd(e){We(e).catch(e=>{console.error(`[i18n] locale load failed:`,e),o.notify({type:`negative`,message:E(`settings.localeLoadFailed`),position:`top`})}),localStorage.setItem(`kobo:locale`,e)}let fd=S(()=>[...st.map(e=>({label:E(e.i18nLabelKey),value:e.value}))]),pd=S(()=>[...at.map(e=>({label:E(e.i18nLabelKey),value:e.value}))]),md=S(()=>[{label:E(`settings.useGlobal`),value:``},...fd.value]),hd=S(()=>[{label:E(`settings.forge.auto`),value:`auto`},{label:E(`settings.forge.github`),value:`github`},{label:E(`settings.forge.gitlab`),value:`gitlab`},{label:E(`settings.forge.bitbucketCommunity`),value:`bitbucket-community`},{label:E(`settings.forge.none`),value:`none`}]),gd=S(()=>lt[`claude-code`].map(e=>({label:E(`agentPermissionMode.${e}`),value:e}))),_d=S(()=>lt.codex.map(e=>({label:E(`agentPermissionMode.${e}`),value:e}))),vd=S(()=>[{name:`{{pr_number}}`,description:E(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:E(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:E(`settings.var.branchName`)},{name:`{{source_branch}}`,description:E(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:E(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:E(`settings.var.projectName`)},{name:`{{notion_url}}`,description:E(`settings.var.notionUrl`)},{name:`{{commits}}`,description:E(`settings.var.commits`)},{name:`{{diff_stats}}`,description:E(`settings.var.diffStats`)},{name:`{{tasks}}`,description:E(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:E(`settings.var.acceptanceCriteria`)}]),yd=S(()=>[{label:E(`settings.mcpAutoSelect`),value:``},...u.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),bd=S(()=>Ae.map(e=>({label:E(e.labelKey),value:e.id}))),xd=S(()=>[{label:E(`settings.soundGeneral`),value:be},...bd.value]),Sd=S(()=>[{label:E(`voice.noneModel`),value:null}].concat(u.voiceModels.map(e=>({label:e.installed?`${e.name}`:`${e.name} (${E(`voice.notInstalled`)})`,value:e.name})))),Cd=[{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 wd(){he(Ht.value,qt.value)}function Td(){he(Ut.value,Jt.value)}function Ed(){he(Wt.value,Yt.value)}function Dd(){he(Kt.value,Xt.value)}let $=S(()=>X.value<0||X.value>=u.projects.length?null:u.projects[X.value]??null),Od=a(Md()),kd=a({});function Ad(){return{claudeModel:ye.value,codexModel:Se.value,prPrompt:Te.value,reviewPrompt:M.value,ciFixPrompt:De.value,finalizationPrompt:Fe.value,gitConventions:Ie.value,editorCommand:Re.value,fileManagerCommand:Ve.value,terminalCommand:Ge.value,autoPurgeOnPrMerged:Ze.value,autoLoopMaxRetries:I.value,awaitingUserReminderMinutes:$e.value,wsEventsRetentionDays:B.value,wsEventsKeepPerWorkspace:ft.value,browserNotifications:It.value,audioNotifications:W.value,audioQuestionNotifications:Rt.value,audioWorkspaceCreatedNotifications:zt.value,audioAgentErrorNotifications:G.value,audioNotificationSound:Ht.value,audioQuestionSound:Ut.value,audioWorkspaceCreatedSound:Wt.value,audioAgentErrorSound:Kt.value,audioNotificationVolume:qt.value,audioQuestionVolume:Jt.value,audioWorkspaceCreatedVolume:Yt.value,audioAgentErrorVolume:Xt.value,prNotificationSounds:Zt.value,notionStatusProperty:Qt.value,notionStatus:$t.value,notionAssigneeProperty:en.value,notionUserId:tn.value,notionInitialPrompt:xn.value,sentryInitialPrompt:Sn.value,claudePermissionMode:wn.value,codexPermissionMode:En.value,notionMcpKey:Ol.value,sentryMcpKey:kl.value,bitbucketToken:Al.value,bitbucketUsername:jl.value,notionEnabled:J.value,sentryEnabled:Ml.value,showVerboseSystemMessages:nn.value,showThinkingBlocks:rn.value,whipEnabled:an.value,whipShortcut:on.value,whipVolume:sn.value,tags:Nl.value,branchPrefixes:Y.value,setupScript:Fl.value,cleanupScript:Il.value,cleanupScriptMode:Ll.value,cleanupScriptOnlyOnChanges:Rl.value,archiveScript:zl.value,changeSourceBranchScript:Ul.value,sessionEndedScript:Bl.value,prMergedScript:Vl.value,autoLoopDisabledScript:Hl.value,worktreesPath:Jl.value,worktreesPrefixByProject:Xl.value,flattenWorkspaceList:nu.value,skillSuite:ru.value,customReviewTemplate:au.value,customAutoLoopReviewGate:ou.value,customAutoLoopGroomingIntro:su.value,customQaPromptTemplate:cu.value,customBrainstormingInstruction:lu.value,voiceEnabled:pu.value,voicePttKey:mu.value,voiceLanguage:hu.value,voiceModel:gu.value,voiceCommandPath:_u.value,voiceFfmpegPath:vu.value,voiceTemperature:yu.value,voicePrompt:bu.value,voiceTranslateToEnglish:xu.value,voiceSuppressNst:Su.value}}function jd(){return{...Q.value}}function Md(){return Dn(Ad())}function Nd(){return Dn(jd())}let Pd=S(()=>!Tn(Ad(),Od.value)),Fd=S(()=>!Tn(jd(),kd.value)),Id=S(()=>u.loadError?!1:Pd.value?!0:Fd.value&&($.value!==null||Z.value)),Ld=S(()=>Fd.value&&($.value!==null||Z.value)?Uu.value:ku.value);function Rd(){Fd.value&&($.value!==null||Z.value)?af():Yd()}function zd(){wu.value=!0;let e=u.global.defaultModelByEngine??{};ye.value=e[`claude-code`]??`auto`,Se.value=e.codex??`auto`,Te.value=u.global.prPromptTemplate,M.value=u.global.reviewPromptTemplate??``,De.value=u.global.ciFixPromptTemplate??``,Fe.value=u.global.finalizationPrompt??``,Ie.value=u.global.gitConventions,Re.value=u.global.editorCommand??``,Ve.value=u.global.fileManagerCommand??``,Ge.value=u.global.terminalCommand??``,Ze.value=u.global.autoPurgeOnPrMerged??!1,I.value=u.global.autoLoopMaxRetries??5,$e.value=u.global.awaitingUserReminderMinutes??0,B.value=u.global.wsEventsRetentionDays??0,ft.value=u.global.wsEventsKeepPerWorkspace??0,It.value=u.global.browserNotifications??!0,W.value=u.global.audioNotifications??!0,Rt.value=u.global.audioQuestionNotifications??!1,zt.value=u.global.audioWorkspaceCreatedNotifications??!1,G.value=u.global.audioAgentErrorNotifications??!1,Ht.value=Ce(u.global.audioNotificationSound),Ut.value=we(u.global.audioQuestionSound),Wt.value=we(u.global.audioWorkspaceCreatedSound),Kt.value=we(u.global.audioAgentErrorSound);let t=Object.fromEntries(ve.map(e=>[e,we(u.global[e])])),n=Object.fromEntries(Pe.map(e=>{let t=u.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]}));Zt.value={...t,...n};let r=u.global.audioNotificationVolume;qt.value=typeof r==`number`&&Number.isFinite(r)?Math.max(0,Math.min(1,r)):1;let i=u.global.audioQuestionVolume;Jt.value=typeof i==`number`&&Number.isFinite(i)?Math.max(0,Math.min(1,i)):1;let a=u.global.audioWorkspaceCreatedVolume;Yt.value=typeof a==`number`&&Number.isFinite(a)?Math.max(0,Math.min(1,a)):1;let o=u.global.audioAgentErrorVolume;Xt.value=typeof o==`number`&&Number.isFinite(o)?Math.max(0,Math.min(1,o)):1,Qt.value=u.global.notionStatusProperty??``,$t.value=u.global.notionInProgressStatus??``,en.value=u.global.notionAssigneeProperty??``,tn.value=u.global.notionUserId??``,xn.value=u.global.notionInitialPromptTemplate??``,Sn.value=u.global.sentryInitialPromptTemplate??``;{let e=u.global.defaultPermissionModeByEngine??{},t=e=>e===`plan`||e===`bypass`||e===`strict`||e===`interactive`,n=e[`claude-code`];wn.value=t(n)?n:`bypass`;let r=e.codex;En.value=t(r)?r:`bypass`}Ol.value=u.global.notionMcpKey??``,kl.value=u.global.sentryMcpKey??``,Al.value=u.global.bitbucketToken??``,jl.value=u.global.bitbucketUsername??``,J.value=u.global.notionEnabled??!0,Ml.value=u.global.sentryEnabled??!0,nn.value=u.showVerboseSystemMessages,rn.value=u.global.showThinkingBlocks??!0,an.value=u.global.whipEnabled??!1,on.value=u.global.whipShortcut??`mod+shift+x`,sn.value=u.global.whipVolume??1,Nl.value=Array.isArray(u.global.tags)?[...u.global.tags]:[],Y.value=Array.isArray(u.global.branchPrefixes)?[...u.global.branchPrefixes]:[],Fl.value=u.global.setupScript??``,Il.value=u.global.cleanupScript??``,Ll.value=u.global.cleanupScriptMode===`idle`?`idle`:`no-tasks`,Rl.value=u.global.cleanupScriptOnlyOnChanges??!1,zl.value=u.global.archiveScript??``,Bl.value=u.global.sessionEndedScript??``,Vl.value=u.global.prMergedScript??``,Hl.value=u.global.autoLoopDisabledScript??``,Ul.value=u.global.changeSourceBranchScript??``,Jl.value=u.global.worktreesPath??`.worktrees`,Xl.value=u.global.worktreesPrefixByProject??!1,nu.value=u.global.flattenWorkspaceList??!1,ru.value=u.global.skillSuite??`superpowers`,au.value=u.global.customReviewTemplate??``,ou.value=u.global.customAutoLoopReviewGate??``,su.value=u.global.customAutoLoopGroomingIntro??``,cu.value=u.global.customQaPromptTemplate??``,lu.value=u.global.customBrainstormingInstruction??``,pu.value=u.global.voiceEnabled??!1,mu.value=u.global.voicePttKey===`ctrl+space`?`ctrl+space`:`alt`,hu.value=u.global.voiceLanguage??`auto`,gu.value=u.global.voiceModel??null,_u.value=u.global.voiceCommandPath??``,vu.value=u.global.voiceFfmpegPath??``,yu.value=typeof u.global.voiceTemperature==`number`?u.global.voiceTemperature:0,bu.value=u.global.voicePrompt??``,xu.value=u.global.voiceTranslateToEnglish??!1,Su.value=u.global.voiceSuppressNonSpeechTokens??!0,wu.value=!1,Od.value=Md()}c(()=>gu.value,(e,t)=>{wu.value||e!==t&&(yu.value=Du(e))});function Bd(e){if(!e){Q.value={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:``}},Vu.value=[],kd.value=Nd();return}Q.value={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??``}},kd.value=Nd(),e.path&&Vd(e.path)}async function Vd(e){if(!e.trim()){Vu.value=[];return}Hu.value=!0;try{let t=await fetch(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();Vu.value=n.local??n.branches??[]}catch{Vu.value=[]}finally{Hu.value=!1}}let Hd=null;c(()=>Q.value.path,e=>{Hd&&clearTimeout(Hd),Hd=setTimeout(()=>{Vd(e)},500)}),c(X,()=>{Z.value=!1,Bd($.value)});let Ud=a(null);async function Wd(){try{let e=await fetch(`/api/settings/export`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`kobo-config-${new Date().toISOString().replace(/[:.]/g,`-`)}.json`,i.click(),URL.revokeObjectURL(r),o.notify({type:`positive`,message:E(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){o.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function Gd(){Ud.value?.click()}async function Kd(e){let t=e.target,n=t.files?.[0];if(n)try{o.dialog({title:E(`settings.importConfirmTitle`),message:E(`settings.importConfirmMessage`),cancel:!0,persistent:!0,dark:!0}).onOk(async()=>{try{let e=await n.text(),t=JSON.parse(e),r=await fetch(`/api/settings/import`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(!r.ok){let e=await r.json().catch(()=>({}));throw Error(e.error??`HTTP ${r.status}`)}await u.fetchSettings(),zd(),o.notify({type:`positive`,message:E(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){o.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function qd(e){if(q.value===null){q.value=e;try{let t=await u.fetchGlobalDefaults(),n={prPromptTemplate:Te,reviewPromptTemplate:M,ciFixPromptTemplate:De,finalizationPrompt:Fe,gitConventions:Ie,notionInitialPromptTemplate:xn,sentryInitialPromptTemplate:Sn};n[e].value=t[e]}catch(e){console.error(`[SettingsPage] resetFieldToDefault failed:`,e),o.notify({type:`negative`,message:E(`settings.resetFailed`),position:`top`})}finally{q.value=null}}}async function Jd(){let e=e=>e===0?1/0:e,t=u.global.wsEventsRetentionDays??0,n=B.value;if(e(n)>=e(t))return!0;let r=E(`settings.retentionConfirmMessageUnknown`,{days:n});try{let e=await u.previewRetention(n,ft.value);r=E(`settings.retentionConfirmMessage`,{days:n,count:e.deletable,total:e.total})}catch(e){console.error(`[SettingsPage] retention preview failed:`,e)}return await new Promise(e=>{o.dialog({title:E(`settings.retentionConfirmTitle`),message:r,cancel:!0,persistent:!0,dark:!0}).onOk(()=>e(!0)).onCancel(()=>e(!1)).onDismiss(()=>e(!1))})}async function Yd(){if(await Yl.value?.validate()!==!1&&await Jd()){ku.value=!0;try{await u.updateGlobal({defaultModelByEngine:{"claude-code":ye.value,codex:Se.value},prPromptTemplate:Te.value,reviewPromptTemplate:M.value,ciFixPromptTemplate:De.value,finalizationPrompt:Fe.value,gitConventions:Ie.value,editorCommand:Re.value,fileManagerCommand:Ve.value,terminalCommand:Ge.value,autoPurgeOnPrMerged:Ze.value,autoLoopMaxRetries:I.value,awaitingUserReminderMinutes:$e.value,wsEventsRetentionDays:B.value,wsEventsKeepPerWorkspace:ft.value,browserNotifications:It.value,audioNotifications:W.value,audioQuestionNotifications:Rt.value,audioWorkspaceCreatedNotifications:zt.value,audioAgentErrorNotifications:G.value,audioNotificationSound:Ht.value,audioQuestionSound:Ut.value,audioWorkspaceCreatedSound:Wt.value,audioAgentErrorSound:Kt.value,audioNotificationVolume:qt.value,audioQuestionVolume:Jt.value,audioWorkspaceCreatedVolume:Yt.value,audioAgentErrorVolume:Xt.value,...Zt.value,notionStatusProperty:Qt.value,notionInProgressStatus:$t.value,notionAssigneeProperty:en.value,notionUserId:tn.value,notionInitialPromptTemplate:xn.value,sentryInitialPromptTemplate:Sn.value,defaultPermissionModeByEngine:{"claude-code":wn.value,codex:En.value},notionMcpKey:Ol.value,sentryMcpKey:kl.value,bitbucketToken:Al.value,bitbucketUsername:jl.value,notionEnabled:J.value,sentryEnabled:Ml.value,showThinkingBlocks:rn.value,whipEnabled:an.value,whipShortcut:on.value,whipVolume:sn.value,tags:Nl.value,branchPrefixes:Y.value,setupScript:Fl.value,cleanupScript:Il.value,cleanupScriptMode:Ll.value,cleanupScriptOnlyOnChanges:Rl.value,archiveScript:zl.value,changeSourceBranchScript:Ul.value,sessionEndedScript:Bl.value,prMergedScript:Vl.value,autoLoopDisabledScript:Hl.value,worktreesPath:Jl.value,worktreesPrefixByProject:Xl.value,flattenWorkspaceList:nu.value,skillSuite:ru.value,customReviewTemplate:au.value,customAutoLoopReviewGate:ou.value,customAutoLoopGroomingIntro:su.value,customQaPromptTemplate:cu.value,customBrainstormingInstruction:lu.value,voiceEnabled:pu.value,voicePttKey:mu.value,voiceLanguage:hu.value,voiceModel:gu.value,voiceCommandPath:_u.value.trim(),voiceFfmpegPath:vu.value.trim(),voiceTemperature:yu.value,voicePrompt:bu.value,voiceTranslateToEnglish:xu.value,voiceSuppressNonSpeechTokens:Su.value}),u.setVerboseSystemMessages(nn.value),Od.value=Md(),o.notify({type:`positive`,message:E(`settings.saved`),position:`top`})}catch{o.notify({type:`negative`,message:E(`settings.saveError`),position:`top`})}finally{ku.value=!1}}}async function Xd(e){Cu.value=e,tf();try{await u.downloadVoiceModel(e)}catch{o.notify({type:`negative`,message:E(`voice.downloadFailed`),position:`top`})}finally{Cu.value=null,nf()}}async function Zd(e){Cu.value=e;try{await u.deleteVoiceModel(e),gu.value===e&&(gu.value=null)}catch{o.notify({type:`negative`,message:E(`voice.deleteFailed`),position:`top`})}finally{Cu.value=null}}async function Qd(e){try{await u.cancelVoiceModelDownload(e)}catch{o.notify({type:`negative`,message:E(`voice.cancelFailed`),position:`top`})}}function $d(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 ef=null;function tf(){ef||=setInterval(()=>{document.visibilityState!==`hidden`&&u.fetchVoiceModels().catch(e=>{console.error(`[settings] voice model polling failed:`,e)})},Dl)}function nf(){ef&&=(clearInterval(ef),null)}async function rf(e){try{await navigator.clipboard.writeText(e),o.notify({type:`positive`,message:E(`common.copied`),position:`top`,timeout:1200})}catch{o.notify({type:`negative`,message:E(`common.copyFailed`),position:`top`})}}async function af(){if(!Q.value.path.trim()){o.notify({type:`negative`,message:E(`settings.projectPathRequired`),position:`top`});return}Uu.value=!0;try{await u.upsertProject(Q.value.path.trim(),{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=u.projects.findIndex(e=>e.path===Q.value.path.trim());e>=0&&(X.value=e),kd.value=Nd(),o.notify({type:`positive`,message:E(`settings.projectSaved`),position:`top`})}catch{o.notify({type:`negative`,message:E(`settings.projectSaveError`),position:`top`})}finally{Uu.value=!1}}function of(){if(!$.value)return;let e=$.value.displayName||$.value.path;o.dialog({title:E(`settings.deleteProjectConfirmTitle`),message:E(`settings.deleteProjectConfirmMessage`,{name:e}),dark:!0,cancel:{flat:!0,label:E(`common.cancel`),color:`kobo-2`},ok:{flat:!0,label:E(`common.delete`),color:`red-5`}}).onOk(async()=>{if($.value){Wu.value=!0;try{await u.deleteProject($.value.path),X.value=-1,Z.value=!1,Bd(null),o.notify({type:`positive`,message:E(`settings.projectDeleted`),position:`top`})}catch{o.notify({type:`negative`,message:E(`settings.projectDeleteError`),position:`top`})}finally{Wu.value=!1}}})}function sf(){X.value=-1,Z.value=!0,Bd(null),ju.value=null,Mu.value=null}function cf(e){if(Fd.value&&($.value!==null||Z.value)){o.dialog({title:E(`settings.unsavedChanges.title`),message:E(`settings.unsavedChanges.message`),dark:!0,persistent:!0,ok:{flat:!0,label:E(`settings.unsavedChanges.discard`),color:`negative`},cancel:{flat:!0,label:E(`settings.unsavedChanges.cancel`),color:`kobo-2`}}).onOk(()=>{Z.value=!1,X.value=e,ju.value=null,Mu.value=null});return}Z.value=!1,X.value=e,ju.value=null,Mu.value=null}function lf(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let uf=a([]);function df(e,t){t(()=>{uf.value=e?Vu.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):Vu.value})}async function ff(){await u.fetchSettings(),u.loadError||zd()}return d(async()=>{await Promise.all([u.fetchSettings(),u.fetchActiveMcpServers(),zu()]);try{let e=await u.fetchGlobalDefaults();Wl.value=e.changeSourceBranchScript??``}catch(e){console.error(`[SettingsPage] fetchGlobalDefaults failed:`,e)}await u.fetchVoiceModels(),await u.fetchVoiceRuntime(),zd(),te(`settings`),u.global.notionEnabled&&bn().catch(()=>{}),Ot(),x.fetchTemplates(),Ke(`settings:global`,()=>Pd.value),Ke(`settings:project`,()=>Fd.value&&($.value!==null||Z.value))}),s(()=>{Hd&&clearTimeout(Hd),nf(),Be(`settings:global`),Be(`settings:project`)}),(e,a)=>(l(),_(bt,{class:`settings-page`},{default:m(()=>[t(u).loadError?(l(),C(`div`,kn,[h(O,{name:`error`,size:`18px`}),T(`div`,An,[T(`span`,jn,i(e.$t(`settings.loadFailed`)),1),T(`span`,Mn,i(t(u).loadError),1),T(`span`,Nn,i(e.$t(`settings.loadFailedHint`)),1)]),h(V),h(k,{dense:``,flat:``,"no-caps":``,icon:`refresh`,label:e.$t(`common.retry`),onClick:ff},null,8,[`label`])])):v(``,!0),T(`div`,Pn,[t(ie)?(l(),_(_t,{key:1,modelValue:j.value,"onUpdate:modelValue":a[0]||=e=>j.value=e,side:`left`,overlay:``,behavior:`mobile`,width:240},{default:m(()=>[h(F,null,{default:m(()=>[h(R,{clickable:``,onClick:ue},{default:m(()=>[h(z,{avatar:``},{default:m(()=>[h(O,{name:`arrow_back`})]),_:1}),h(z,null,{default:m(()=>[y(i(e.$t(`workspaceList.title`)),1)]),_:1})]),_:1}),h(He)]),_:1}),T(`div`,Ln,[T(`div`,Rn,i(e.$t(`settings.title`)),1),h(gn,{"nav-items":de.value,"active-tab":A.value,onSelect:le},null,8,[`nav-items`,`active-tab`])])]),_:1},8,[`modelValue`])):(l(),C(`aside`,Fn,[T(`div`,In,i(e.$t(`settings.title`)),1),h(gn,{"nav-items":de.value,"active-tab":A.value,onSelect:le},null,8,[`nav-items`,`active-tab`])])),T(`main`,zn,[T(`header`,Bn,[h(xt,{"exclude-mobile":``,class:`q-mr-sm`}),t(ie)?(l(),_(k,{key:0,flat:``,dense:``,round:``,icon:`menu`,"aria-label":e.$t(`settings.openNav`),class:`settings-content__nav-toggle`,onClick:a[1]||=e=>j.value=!0},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`settings.openNav`)),1)]),_:1})]),_:1},8,[`aria-label`])):v(``,!0),T(`h2`,Vn,i(pe.value),1),h(St,{"tour-id":`settings`,class:`q-ml-sm`})]),T(`div`,Hn,i(e.$t(`settings.help.${A.value}`)),1),T(`div`,Un,[p(T(`div`,Wn,[A.value===`general`?(l(),C(`div`,Gn,[T(`div`,Kn,i(e.$t(`settings.language`)),1),h(L,{"model-value":t(ee),options:ud,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":dd},null,8,[`model-value`])])):v(``,!0),A.value===`general`?(l(),C(`div`,qn,[T(`div`,Jn,i(e.$t(`settings.workspaceListSection`)),1),h(P,{modelValue:nu.value,"onUpdate:modelValue":a[2]||=e=>nu.value=e,label:e.$t(`settings.flattenWorkspaceList`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),T(`div`,Yn,i(e.$t(`settings.flattenWorkspaceListHint`)),1)])):v(``,!0),A.value===`skills`?(l(),C(`div`,Xn,[T(`div`,Zn,i(e.$t(`settings.skillSuite.section`)),1),h(Le,{modelValue:ru.value,"onUpdate:modelValue":a[3]||=e=>ru.value=e,options:[{label:e.$t(`settings.skillSuite.superpowers`),value:`superpowers`},{label:e.$t(`settings.skillSuite.gstack`),value:`gstack`},{label:e.$t(`settings.skillSuite.ecc`),value:`ecc`},{label:e.$t(`settings.skillSuite.superpowersGstack`),value:`superpowers+gstack`},{label:e.$t(`settings.skillSuite.allThree`),value:`superpowers+gstack+ecc`},{label:e.$t(`settings.skillSuite.custom`),value:`custom`}],type:`radio`,color:`primary`,dense:``,dark:``,inline:``},null,8,[`modelValue`,`options`]),T(`div`,Qn,i(e.$t(iu.value)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:e.$t(`settings.skillSuite.reloadDefaults`),disable:ru.value!==`custom`,class:`q-mt-sm`,onClick:Tu},null,8,[`label`,`disable`])])):v(``,!0),A.value===`skills`&&ru.value===`custom`?(l(),C(`div`,$n,[T(`div`,er,i(e.$t(`settings.skillSuite.customPrompts`)),1),T(`div`,tr,i(e.$t(`settings.skillSuite.reviewTemplate`)),1),h(gt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:e.$t(`settings.skillSuite.importPrompt`),loading:uu.value===`reviewTemplate`,class:`q-mb-sm`},{default:m(()=>[h(F,{dense:``},{default:m(()=>[(l(!0),C(w,null,D(du.value,e=>p((l(),_(R,{key:e.value,clickable:``,onClick:t=>fu(`reviewTemplate`,e.value)},{default:m(()=>[h(z,null,{default:m(()=>[y(i(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[mt]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),h(N,{modelValue:au.value,"onUpdate:modelValue":a[4]||=e=>au.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),T(`div`,nr,i(e.$t(`settings.skillSuite.autoLoopReviewGate`)),1),h(gt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:e.$t(`settings.skillSuite.importPrompt`),loading:uu.value===`autoLoopReviewGate`,class:`q-mb-sm`},{default:m(()=>[h(F,{dense:``},{default:m(()=>[(l(!0),C(w,null,D(du.value,e=>p((l(),_(R,{key:e.value,clickable:``,onClick:t=>fu(`autoLoopReviewGate`,e.value)},{default:m(()=>[h(z,null,{default:m(()=>[y(i(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[mt]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),h(N,{modelValue:ou.value,"onUpdate:modelValue":a[5]||=e=>ou.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),T(`div`,rr,i(e.$t(`settings.skillSuite.autoLoopGroomingIntro`)),1),h(gt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:e.$t(`settings.skillSuite.importPrompt`),loading:uu.value===`autoLoopGroomingIntro`,class:`q-mb-sm`},{default:m(()=>[h(F,{dense:``},{default:m(()=>[(l(!0),C(w,null,D(du.value,e=>p((l(),_(R,{key:e.value,clickable:``,onClick:t=>fu(`autoLoopGroomingIntro`,e.value)},{default:m(()=>[h(z,null,{default:m(()=>[y(i(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[mt]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),h(N,{modelValue:su.value,"onUpdate:modelValue":a[6]||=e=>su.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),T(`div`,ir,i(e.$t(`settings.skillSuite.qaTemplate`)),1),h(gt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:e.$t(`settings.skillSuite.importPrompt`),loading:uu.value===`qaPromptTemplate`,class:`q-mb-sm`},{default:m(()=>[h(F,{dense:``},{default:m(()=>[(l(!0),C(w,null,D(du.value,e=>p((l(),_(R,{key:e.value,clickable:``,onClick:t=>fu(`qaPromptTemplate`,e.value)},{default:m(()=>[h(z,null,{default:m(()=>[y(i(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[mt]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),h(N,{modelValue:cu.value,"onUpdate:modelValue":a[7]||=e=>cu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),T(`div`,ar,i(e.$t(`settings.skillSuite.brainstormingInstruction`)),1),h(gt,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`download`,label:e.$t(`settings.skillSuite.importPrompt`),loading:uu.value===`brainstormingInstruction`,class:`q-mb-sm`},{default:m(()=>[h(F,{dense:``},{default:m(()=>[(l(!0),C(w,null,D(du.value,e=>p((l(),_(R,{key:e.value,clickable:``,onClick:t=>fu(`brainstormingInstruction`,e.value)},{default:m(()=>[h(z,null,{default:m(()=>[y(i(e.label),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[mt]])),128))]),_:1})]),_:1},8,[`label`,`loading`]),h(N,{modelValue:lu.value,"onUpdate:modelValue":a[8]||=e=>lu.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),A.value===`agents`?(l(),C(`div`,or,[T(`div`,sr,i(e.$t(`settings.defaultModelClaude`)),1),h(L,{modelValue:ye.value,"onUpdate:modelValue":a[9]||=e=>ye.value=e,options:fd.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),T(`div`,cr,i(e.$t(`settings.defaultModelCodex`)),1),h(L,{modelValue:Se.value,"onUpdate:modelValue":a[10]||=e=>Se.value=e,options:pd.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),T(`div`,lr,i(e.$t(`settings.defaultPermissionModeClaude`)),1),T(`div`,ur,i(e.$t(`settings.defaultPermissionModeHint`)),1),h(L,{modelValue:wn.value,"onUpdate:modelValue":a[11]||=e=>wn.value=e,options:gd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),T(`div`,dr,i(e.$t(`settings.defaultPermissionModeCodex`)),1),h(L,{modelValue:En.value,"onUpdate:modelValue":a[12]||=e=>En.value=e,options:_d.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])):v(``,!0),A.value===`general`?(l(),C(`div`,fr,[T(`div`,pr,i(e.$t(`settings.activityFeed`)),1),T(`div`,mr,[h(P,{modelValue:nn.value,"onUpdate:modelValue":a[13]||=e=>nn.value=e,label:e.$t(`settings.verboseMessages`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),h(P,{modelValue:rn.value,"onUpdate:modelValue":a[14]||=e=>rn.value=e,label:e.$t(`settings.showThinkingBlocks`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`])])])):v(``,!0),A.value===`general`?(l(),C(`div`,hr,[T(`div`,gr,i(e.$t(`settings.whipSettings`)),1),T(`div`,_r,i(e.$t(`settings.whipSettingsHint`)),1),h(P,{modelValue:an.value,"onUpdate:modelValue":a[15]||=e=>an.value=e,label:e.$t(`settings.whipEnabled`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`settings.whipEnabledHint`)),1)]),_:1})]),_:1},8,[`modelValue`,`label`]),an.value?(l(),C(`div`,vr,[h(Cn,{modelValue:on.value,"onUpdate:modelValue":a[16]||=e=>on.value=e},null,8,[`modelValue`]),T(`div`,yr,[T(`div`,br,i(e.$t(`settings.whipVolume`)),1),h(Bt,{modelValue:sn.value,"onUpdate:modelValue":a[17]||=e=>sn.value=e,min:0,max:1,step:.05,disable:ln.value.disabled,"aria-label":e.$t(`settings.whipVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),T(`div`,xr,i(Math.round(sn.value*100))+`% `,1)]),ln.value.hintKey?(l(),C(`div`,Sr,i(e.$t(ln.value.hintKey)),1)):v(``,!0)])):v(``,!0)])):v(``,!0),A.value===`notifications`?(l(),C(`div`,Cr,[T(`div`,wr,i(e.$t(`settings.notifications`)),1),T(`div`,Tr,[T(`div`,Er,[T(`div`,Dr,i(e.$t(`settings.notificationSound`)),1),T(`div`,Or,i(e.$t(`settings.notificationSoundHint`)),1),T(`div`,kr,[h(P,{modelValue:It.value,"onUpdate:modelValue":a[18]||=e=>It.value=e,label:e.$t(`settings.enableBrowserNotifications`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),h(P,{modelValue:W.value,"onUpdate:modelValue":a[19]||=e=>W.value=e,label:e.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`])]),T(`div`,Ar,[h(pt,{dense:``,square:``,color:un.value.color,"text-color":`white`,icon:`notifications`},{default:m(()=>[y(i(un.value.label),1)]),_:1},8,[`color`]),h(k,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`notifications_active`,label:e.$t(`settings.testBrowserNotification`),onClick:dn},null,8,[`label`])]),T(`div`,jr,[h(L,{modelValue:Ht.value,"onUpdate:modelValue":a[20]||=e=>Ht.value=e,options:bd.value,label:e.$t(`settings.notificationSound`),disable:!W.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),h(k,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:e.$t(`settings.notificationSoundPreview`),disable:!W.value,onClick:wd},null,8,[`label`,`disable`])]),T(`div`,Mr,[T(`div`,Nr,i(e.$t(`settings.notificationVolume`)),1),h(Bt,{modelValue:qt.value,"onUpdate:modelValue":a[21]||=e=>qt.value=e,min:0,max:1,step:.05,disable:!W.value,"aria-label":e.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),T(`div`,Pr,i(Math.round(qt.value*100))+`% `,1)])]),T(`div`,Fr,[T(`div`,Ir,i(e.$t(`settings.questionSound`)),1),T(`div`,Lr,i(e.$t(`settings.questionSoundHint`)),1),h(P,{modelValue:Rt.value,"onUpdate:modelValue":a[22]||=e=>Rt.value=e,label:e.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),T(`div`,Rr,[h(L,{modelValue:Ut.value,"onUpdate:modelValue":a[23]||=e=>Ut.value=e,options:xd.value,label:e.$t(`settings.questionSound`),disable:!Rt.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),h(k,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:e.$t(`settings.notificationSoundPreview`),disable:!Rt.value,onClick:Td},null,8,[`label`,`disable`])]),T(`div`,zr,[T(`div`,Br,i(e.$t(`settings.notificationVolume`)),1),h(Bt,{modelValue:Jt.value,"onUpdate:modelValue":a[24]||=e=>Jt.value=e,min:0,max:1,step:.05,disable:!Rt.value,"aria-label":e.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),T(`div`,Vr,i(Math.round(Jt.value*100))+`% `,1)])]),T(`div`,Hr,[T(`div`,Ur,i(e.$t(`settings.workspaceCreatedSound`)),1),T(`div`,Wr,i(e.$t(`settings.workspaceCreatedSoundHint`)),1),h(P,{modelValue:zt.value,"onUpdate:modelValue":a[25]||=e=>zt.value=e,label:e.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),T(`div`,Gr,[h(L,{modelValue:Wt.value,"onUpdate:modelValue":a[26]||=e=>Wt.value=e,options:xd.value,label:e.$t(`settings.workspaceCreatedSound`),disable:!zt.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),h(k,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:e.$t(`settings.notificationSoundPreview`),disable:!zt.value,onClick:Ed},null,8,[`label`,`disable`])]),T(`div`,Kr,[T(`div`,qr,i(e.$t(`settings.notificationVolume`)),1),h(Bt,{modelValue:Yt.value,"onUpdate:modelValue":a[27]||=e=>Yt.value=e,min:0,max:1,step:.05,disable:!zt.value,"aria-label":e.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),T(`div`,Jr,i(Math.round(Yt.value*100))+`% `,1)])]),T(`div`,Yr,[T(`div`,Xr,i(e.$t(`settings.agentErrorSound`)),1),T(`div`,Zr,i(e.$t(`settings.agentErrorSoundHint`)),1),h(P,{modelValue:G.value,"onUpdate:modelValue":a[28]||=e=>G.value=e,label:e.$t(`settings.enableAudio`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),T(`div`,Qr,[h(L,{modelValue:Kt.value,"onUpdate:modelValue":a[29]||=e=>Kt.value=e,options:xd.value,label:e.$t(`settings.agentErrorSound`),disable:!G.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`primary`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),h(k,{flat:``,dense:``,color:`primary`,icon:`play_arrow`,label:e.$t(`settings.notificationSoundPreview`),disable:!G.value,onClick:Dd},null,8,[`label`,`disable`])]),T(`div`,$r,[T(`div`,ei,i(e.$t(`settings.notificationVolume`)),1),h(Bt,{modelValue:Xt.value,"onUpdate:modelValue":a[30]||=e=>Xt.value=e,min:0,max:1,step:.05,disable:!G.value,"aria-label":e.$t(`settings.notificationVolume`),dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`,`disable`,`aria-label`]),T(`div`,ti,i(Math.round(Xt.value*100))+`%`,1)])])]),h(hn,{modelValue:Zt.value,"onUpdate:modelValue":a[31]||=e=>Zt.value=e,"general-sound":Ht.value},null,8,[`modelValue`,`general-sound`])])):v(``,!0),A.value===`voice`?(l(),C(`div`,ni,[T(`div`,ri,[T(`div`,ii,i(e.$t(`voice.sectionRuntime`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`kobo-2`,label:t(E)(`common.refresh`),onClick:a[32]||=e=>t(u).fetchVoiceRuntime()},null,8,[`label`])]),T(`div`,ai,[T(`div`,oi,[h(O,{name:t(u).voiceRuntime?.available?`check_circle`:`cancel`,color:t(u).voiceRuntime?.available?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),T(`span`,{class:n([`text-caption`,t(u).voiceRuntime?.available?`text-green-5`:`text-red-5`])},i(t(u).voiceRuntime?.available?t(E)(`voice.runtimeReady`,{command:t(u).voiceRuntime?.command??`whisper-cli`}):t(E)(`voice.runtimeMissing`,{command:t(u).voiceRuntime?.command??`whisper-cli`})),3)]),T(`div`,si,[h(O,{name:t(u).voiceRuntime?.ffmpegAvailable?`check_circle`:`cancel`,color:t(u).voiceRuntime?.ffmpegAvailable?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),T(`span`,{class:n([`text-caption`,t(u).voiceRuntime?.ffmpegAvailable?`text-green-5`:`text-red-5`])},i(t(u).voiceRuntime?.ffmpegAvailable?t(E)(`voice.ffmpegReady`):t(E)(`voice.ffmpegMissing`)),3)])]),h(rt,{dense:``,dark:``,icon:`help_outline`,label:e.$t(`voice.installGuideTitle`),class:`variables-panel rounded-borders q-mt-sm`},{default:m(()=>[T(`div`,ci,[T(`div`,li,i(e.$t(`voice.installGuideIntro`)),1),T(`div`,ui,[T(`a`,di,i(e.$t(`voice.installLink`)),1)]),T(`div`,fi,i(e.$t(`voice.installGuideUbuntuTitle`)),1),a[128]||=T(`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),T(`div`,pi,i(e.$t(`voice.installGuideBinaryPathHint`)),1),T(`div`,mi,i(e.$t(`voice.installGuideWindowsTitle`)),1),a[129]||=T(`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),T(`div`,null,i(e.$t(`voice.installGuideSettingsHint`)),1)])]),_:1},8,[`label`])])):v(``,!0),A.value===`voice`?(l(),C(`div`,hi,[T(`div`,gi,i(e.$t(`voice.sectionActivation`)),1),h(P,{modelValue:pu.value,"onUpdate:modelValue":a[33]||=e=>pu.value=e,label:e.$t(`voice.enabled`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),T(`div`,_i,[T(`div`,vi,[h(L,{modelValue:mu.value,"onUpdate:modelValue":a[34]||=e=>mu.value=e,label:e.$t(`voice.pttKey`),options:[{label:e.$t(`voice.pttAlt`),value:`alt`},{label:e.$t(`voice.pttCtrlSpace`),value:`ctrl+space`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`,`options`])]),T(`div`,yi,[h(L,{modelValue:hu.value,"onUpdate:modelValue":a[35]||=e=>hu.value=e,label:e.$t(`voice.language`),options:Cd,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])])])):v(``,!0),A.value===`voice`?(l(),C(`div`,bi,[T(`div`,xi,i(e.$t(`voice.sectionModels`)),1),h(L,{modelValue:gu.value,"onUpdate:modelValue":a[36]||=e=>gu.value=e,label:e.$t(`voice.model`),options:Sd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`label`,`options`]),t(u).voiceModelsDir?(l(),C(`div`,Si,[h(O,{name:`folder`,color:`kobo-2`,size:`xs`}),T(`span`,Ci,i(t(u).voiceModelsDir),1),h(k,{flat:``,dense:``,round:``,size:`xs`,icon:`content_copy`,color:`kobo-2`,title:t(E)(`common.copy`),onClick:a[37]||=e=>rf(t(u).voiceModelsDir)},null,8,[`title`])])):v(``,!0),T(`div`,wi,[(l(!0),C(w,null,D(t(u).voiceModels,t=>(l(),C(`div`,{key:t.name,class:n([`voice-model-row q-pa-sm rounded-borders`,{"voice-model-row--active":t.download}])},[T(`div`,Ti,[h(O,{name:t.download?`downloading`:t.installed?`check_circle`:`circle`,color:t.download?`primary`:t.installed?`green-5`:`kobo-3`,size:`xs`},null,8,[`name`,`color`]),T(`span`,Ei,i(t.name),1),T(`span`,Di,i($d(t.installedSizeBytes??t.sizeBytes)),1),h(V),t.download?(l(),_(k,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`close`,label:e.$t(`common.cancel`),onClick:e=>Qd(t.name)},null,8,[`label`,`onClick`])):(l(),_(k,{key:1,flat:``,dense:``,"no-caps":``,size:`sm`,color:t.installed?`red-5`:`primary`,icon:t.installed?`delete_outline`:`download`,label:t.installed?e.$t(`voice.delete`):e.$t(`voice.download`),loading:Cu.value===t.name,onClick:e=>t.installed?Zd(t.name):Xd(t.name)},null,8,[`color`,`icon`,`label`,`loading`,`onClick`]))]),t.download?(l(),C(`div`,Oi,[h(xe,{value:t.download.total>0?Math.min(1,t.download.downloaded/t.download.total):0,indeterminate:!t.download.total,color:`primary`,"track-color":`kobo-surface-2`,size:`6px`,rounded:``},null,8,[`value`,`indeterminate`]),T(`div`,ki,[T(`span`,Ai,i($d(t.download.downloaded))+` / `+i($d(t.download.total)),1),h(V),T(`span`,ji,i(t.download.total>0?`${Math.floor(t.download.downloaded/t.download.total*100)}%`:`—`),1)])])):t.installed?(l(),C(`div`,Mi,i(t.fileName),1)):v(``,!0)],2))),128))])])):v(``,!0),A.value===`voice`?(l(),C(`div`,Ni,[T(`div`,Pi,i(e.$t(`voice.sectionAdvanced`)),1),h(rt,{dense:``,dark:``,icon:`tune`,label:e.$t(`voice.sectionBehavior`),class:`variables-panel rounded-borders q-mb-sm`},{default:m(()=>[T(`div`,Fi,[T(`div`,Ii,[T(`div`,Li,i(e.$t(`voice.temperature`)),1),h(Bt,{modelValue:yu.value,"onUpdate:modelValue":a[38]||=e=>yu.value=e,min:0,max:1,step:.05,dark:``,dense:``,color:`primary`,class:`col`},null,8,[`modelValue`]),T(`div`,Ri,i(yu.value.toFixed(2)),1)]),T(`div`,zi,i(e.$t(`voice.temperatureHint`)),1),h(N,{modelValue:bu.value,"onUpdate:modelValue":a[39]||=e=>bu.value=e,label:e.$t(`voice.initialPrompt`),type:`textarea`,dense:``,dark:``,outlined:``,rows:2,class:`settings-input`},null,8,[`modelValue`,`label`]),T(`div`,Bi,i(e.$t(`voice.initialPromptHint`)),1),h(P,{modelValue:xu.value,"onUpdate:modelValue":a[40]||=e=>xu.value=e,label:e.$t(`voice.translateToEnglish`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),T(`div`,Vi,i(e.$t(`voice.translateToEnglishHint`)),1),h(P,{modelValue:Su.value,"onUpdate:modelValue":a[41]||=e=>Su.value=e,label:e.$t(`voice.suppressNst`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),T(`div`,Hi,i(e.$t(`voice.suppressNstHint`)),1)])]),_:1},8,[`label`]),h(rt,{dense:``,dark:``,icon:`terminal`,label:e.$t(`voice.sectionBinaries`),class:`variables-panel rounded-borders`},{default:m(()=>[T(`div`,Ui,[h(N,{modelValue:_u.value,"onUpdate:modelValue":a[42]||=e=>_u.value=e,label:e.$t(`voice.commandPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`]),h(N,{modelValue:vu.value,"onUpdate:modelValue":a[43]||=e=>vu.value=e,label:e.$t(`voice.ffmpegPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])]),_:1},8,[`label`])])):v(``,!0),A.value===`prompts`?(l(),C(`div`,Wi,[T(`div`,Gi,[T(`div`,Ki,i(e.$t(`settings.prPromptTemplate`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`prPromptTemplate`,disable:q.value!==null&&q.value!==`prPromptTemplate`,onClick:a[44]||=e=>qd(`prPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,qi,i(e.$t(`settings.prPromptHint`)),1),h(N,{modelValue:Te.value,"onUpdate:modelValue":a[45]||=e=>Te.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),T(`div`,Ji,[h(rt,{dense:``,dark:``,icon:`code`,label:e.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:m(()=>[h(F,{dense:``,dark:``,class:`q-pa-sm`},{default:m(()=>[(l(!0),C(w,null,D(vd.value,e=>(l(),_(R,{key:e.name,dense:``},{default:m(()=>[h(z,null,{default:m(()=>[h(et,{class:`text-caption`,style:{"font-family":`monospace`}},{default:m(()=>[y(i(e.name),1)]),_:2},1024),h(et,{caption:``,class:`text-kobo-3`},{default:m(()=>[y(i(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),T(`div`,Yi,[T(`div`,Xi,i(e.$t(`settings.reviewPromptTemplate`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`reviewPromptTemplate`,disable:q.value!==null&&q.value!==`reviewPromptTemplate`,onClick:a[46]||=e=>qd(`reviewPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,Zi,i(e.$t(`settings.prPromptHint`)),1),h(N,{modelValue:M.value,"onUpdate:modelValue":a[47]||=e=>M.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),T(`div`,Qi,[T(`div`,$i,i(e.$t(`settings.ciFixPromptTemplate`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`ciFixPromptTemplate`,disable:q.value!==null&&q.value!==`ciFixPromptTemplate`,onClick:a[48]||=e=>qd(`ciFixPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,ea,i(e.$t(`settings.ciFixPromptHint`)),1),h(N,{modelValue:De.value,"onUpdate:modelValue":a[49]||=e=>De.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),T(`div`,ta,[T(`div`,na,i(e.$t(`settings.finalizationPromptTemplate`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`finalizationPrompt`,disable:q.value!==null&&q.value!==`finalizationPrompt`,onClick:a[50]||=e=>qd(`finalizationPrompt`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,ra,i(e.$t(`settings.finalizationPromptHint`)),1),h(N,{modelValue:Fe.value,"onUpdate:modelValue":a[51]||=e=>Fe.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.finalizationPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),T(`div`,ia,[T(`div`,aa,i(e.$t(`settings.gitConventions`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`gitConventions`,disable:q.value!==null&&q.value!==`gitConventions`,onClick:a[52]||=e=>qd(`gitConventions`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,oa,i(e.$t(`settings.gitConventionsHint`)),1),h(N,{modelValue:Ie.value,"onUpdate:modelValue":a[53]||=e=>Ie.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`general`?(l(),C(`div`,sa,[T(`div`,ca,i(e.$t(`settings.editorCommand`)),1),T(`div`,la,i(e.$t(`settings.editorCommandHint`)),1),h(N,{modelValue:Re.value,"onUpdate:modelValue":a[54]||=e=>Re.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`general`?(l(),C(`div`,ua,[T(`div`,da,i(e.$t(`settings.fileManagerCommand`)),1),T(`div`,fa,i(e.$t(`settings.fileManagerCommandHint`)),1),h(N,{modelValue:Ve.value,"onUpdate:modelValue":a[55]||=e=>Ve.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.fileManagerCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`general`?(l(),C(`div`,pa,[T(`div`,ma,i(e.$t(`settings.terminalCommand`)),1),T(`div`,ha,i(e.$t(`settings.terminalCommandHint`)),1),h(N,{modelValue:Ge.value,"onUpdate:modelValue":a[56]||=e=>Ge.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.terminalCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`notion`?(l(),C(`div`,ga,[h(P,{modelValue:J.value,"onUpdate:modelValue":a[57]||=e=>J.value=e,label:e.$t(`settings.integrationEnabled`),dark:``,dense:``,color:`primary`},null,8,[`modelValue`,`label`])])):v(``,!0),A.value===`notion`?(l(),C(`div`,{key:17,"data-tour":`settings-card-notion`,class:n([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!J.value}])},[T(`div`,_a,i(e.$t(`settings.mcpSelection`)),1),T(`div`,va,i(e.$t(`settings.mcpSelectionHint`)),1),T(`div`,ya,[T(`div`,ba,i(e.$t(`settings.notionMcp`)),1),h(L,{modelValue:Ol.value,"onUpdate:modelValue":a[58]||=e=>Ol.value=e,options:yd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),h(k,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`health_and_safety`,label:e.$t(`settings.testIntegration`),loading:fn.value===`notion`,disable:!J.value||fn.value!==null,onClick:a[59]||=e=>pn(`notion`)},null,8,[`label`,`loading`,`disable`]),K.value.notion?(l(),C(`div`,{key:0,class:n([`text-caption q-mt-sm`,K.value.notion.ok?`text-positive`:`text-negative`])},i(K.value.notion.detail)+` (`+i(K.value.notion.durationMs)+` ms) `,3)):v(``,!0)],2)):v(``,!0),A.value===`sentry`?(l(),C(`div`,xa,[h(P,{modelValue:Ml.value,"onUpdate:modelValue":a[60]||=e=>Ml.value=e,label:e.$t(`settings.integrationEnabled`),dark:``,dense:``,color:`primary`},null,8,[`modelValue`,`label`])])):v(``,!0),A.value===`sentry`?(l(),C(`div`,{key:19,class:n([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!Ml.value}])},[T(`div`,Sa,i(e.$t(`settings.mcpSelection`)),1),T(`div`,Ca,i(e.$t(`settings.mcpSelectionHint`)),1),T(`div`,wa,[T(`div`,Ta,i(e.$t(`settings.sentryMcp`)),1),h(L,{modelValue:kl.value,"onUpdate:modelValue":a[61]||=e=>kl.value=e,options:yd.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),h(k,{flat:``,dense:``,"no-caps":``,color:`primary`,icon:`health_and_safety`,label:e.$t(`settings.testIntegration`),loading:fn.value===`sentry`,disable:!Ml.value||fn.value!==null,class:`q-mt-sm`,onClick:a[62]||=e=>pn(`sentry`)},null,8,[`label`,`loading`,`disable`]),K.value.sentry?(l(),C(`div`,{key:0,class:n([`text-caption q-mt-sm`,K.value.sentry.ok?`text-positive`:`text-negative`])},i(K.value.sentry.detail)+` (`+i(K.value.sentry.durationMs)+` ms) `,3)):v(``,!0)],2)):v(``,!0),A.value===`forge`?(l(),C(`div`,Ea,[T(`div`,Da,i(e.$t(`settings.bitbucketCommunity`)),1),T(`div`,Oa,i(e.$t(`settings.bitbucketCommunityHint`)),1),h(N,{modelValue:jl.value,"onUpdate:modelValue":a[63]||=e=>jl.value=e,label:e.$t(`settings.bitbucketUsername`),autocomplete:`username`,dark:``,dense:``,outlined:``,class:`q-mb-sm`},null,8,[`modelValue`,`label`]),h(N,{modelValue:Al.value,"onUpdate:modelValue":a[64]||=e=>Al.value=e,label:e.$t(`settings.bitbucketToken`),type:`password`,autocomplete:`off`,dark:``,dense:``,outlined:``},null,8,[`modelValue`,`label`])])):v(``,!0),A.value===`notion`?(l(),C(`div`,{key:21,class:n([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!J.value}])},[T(`div`,ka,i(e.$t(`settings.notionStatus`)),1),T(`div`,Aa,i(e.$t(`settings.notionStatusHint`)),1),T(`div`,ja,[T(`div`,Ma,i(e.$t(`settings.notionStatusProperty`)),1),h(N,{modelValue:Qt.value,"onUpdate:modelValue":a[65]||=e=>Qt.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),T(`div`,Na,[T(`div`,Pa,i(e.$t(`settings.notionInProgressStatus`)),1),h(N,{modelValue:$t.value,"onUpdate:modelValue":a[66]||=e=>$t.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),T(`div`,Fa,[T(`div`,Ia,i(t(E)(`settings.notionInitialPrompt`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`notionInitialPromptTemplate`,disable:q.value!==null&&q.value!==`notionInitialPromptTemplate`,onClick:a[67]||=e=>qd(`notionInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,La,i(t(E)(`settings.notionInitialPrompt.help`,{variables:`{ticket_id}, {notion_url}, {notion_file_path}`})),1),h(N,{modelValue:xn.value,"onUpdate:modelValue":a[68]||=e=>xn.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])],2)):v(``,!0),A.value===`notion`?(l(),C(`div`,{key:22,class:n([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!J.value}])},[T(`div`,Ra,i(e.$t(`settings.notionAssignee`)),1),T(`div`,za,i(e.$t(`settings.notionAssigneeHint`)),1),T(`div`,Ba,[T(`div`,Va,i(e.$t(`settings.notionAssigneeProperty`)),1),h(N,{modelValue:en.value,"onUpdate:modelValue":a[69]||=e=>en.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionAssigneePropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),T(`div`,Ha,[T(`div`,Ua,[T(`div`,Wa,i(e.$t(`settings.notionUserId`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`kobo-2`,loading:_n.value,label:e.$t(`settings.notionUsersRefresh`),onClick:a[70]||=e=>bn(!0)},null,8,[`loading`,`label`])]),mn.value.length>0?(l(),_(L,{key:0,modelValue:tn.value,"onUpdate:modelValue":a[71]||=e=>tn.value=e,options:yn.value,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,hint:e.$t(`settings.notionUserIdHint`),class:`settings-input`},{option:m(e=>[h(R,r(f(e.itemProps)),{default:m(()=>[h(z,{avatar:``},{default:m(()=>[h(Ue,{size:`24px`},{default:m(()=>[e.opt.avatarUrl?(l(),C(`img`,{key:0,src:e.opt.avatarUrl,alt:e.opt.label},null,8,Ga)):(l(),_(O,{key:1,name:`person`,size:`20px`}))]),_:2},1024)]),_:2},1024),h(z,null,{default:m(()=>[h(et,null,{default:m(()=>[y(i(e.opt.name),1)]),_:2},1024),h(et,{caption:``},{default:m(()=>[y(i(e.opt.email),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`hint`])):_n.value?(l(),C(`div`,Ka,i(e.$t(`settings.notionUsersLoading`)),1)):(l(),C(w,{key:2},[vn.value?(l(),C(`div`,qa,i(e.$t(`settings.notionUsersLoadFailed`,{error:vn.value})),1)):v(``,!0),h(N,{modelValue:tn.value,"onUpdate:modelValue":a[72]||=e=>tn.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionUserIdPlaceholder`),hint:vn.value?e.$t(`settings.notionUsersManualFallback`):e.$t(`settings.notionUserIdHint`),class:`settings-input`},null,8,[`modelValue`,`placeholder`,`hint`])],64))])],2)):v(``,!0),A.value===`sentry`?(l(),C(`div`,{key:23,class:n([`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`,{"opacity-50":!Ml.value}])},[T(`div`,Ja,i(t(E)(`settings.sentryIntegration`)),1),T(`div`,Ya,[T(`div`,Xa,i(t(E)(`settings.sentryInitialPrompt`)),1),h(V),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`kobo-2`,icon:`restart_alt`,label:t(E)(`settings.resetToDefault`),loading:q.value===`sentryInitialPromptTemplate`,disable:q.value!==null&&q.value!==`sentryInitialPromptTemplate`,onClick:a[73]||=e=>qd(`sentryInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),T(`div`,Za,i(t(E)(`settings.sentryInitialPrompt.help`,{variables:`{issue_id}, {sentry_url}, {sentry_file_path}`})),1),h(N,{modelValue:Sn.value,"onUpdate:modelValue":a[74]||=e=>Sn.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])],2)):v(``,!0),A.value===`general`?(l(),C(`div`,Qa,[T(`div`,$a,i(e.$t(`settings.tagsTitle`)),1),T(`div`,eo,i(e.$t(`settings.tagsHint`)),1),h(L,{modelValue:Nl.value,"onUpdate:modelValue":a[75]||=e=>Nl.value=e,label:e.$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`])])):v(``,!0),A.value===`general`?(l(),C(`div`,to,[T(`div`,no,i(e.$t(`settings.branchPrefixesTitle`)),1),T(`div`,ro,i(e.$t(`settings.branchPrefixesHint`)),1),Y.value.length>0?(l(),_(F,{key:0,bordered:``,separator:``,class:`rounded-borders q-mb-sm`},{default:m(()=>[(l(!0),C(w,null,D(Y.value,(t,n)=>(l(),_(R,{key:t},{default:m(()=>[h(z,null,{default:m(()=>[h(et,{class:`cursor-pointer`},{default:m(()=>[y(i(t)+`/ `,1),h(Vt,{"model-value":t,"auto-save":``,onSave:e=>eu(n,e)},{default:m(e=>[h(N,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,dense:``,dark:``,autofocus:``,onKeyup:ae(e.set,[`enter`])},null,8,[`modelValue`,`onUpdate:modelValue`,`onKeyup`])]),_:1},8,[`model-value`,`onSave`]),h(H,null,{default:m(()=>[y(i(e.$t(`settings.branchPrefixesEditHint`)),1)]),_:1})]),_:2},1024)]),_:2},1024),h(z,{side:``},{default:m(()=>[T(`div`,io,[h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_up`,color:`kobo-3`,disable:n===0,title:e.$t(`settings.branchPrefixesMoveUp`),onClick:e=>tu(n,-1)},null,8,[`disable`,`title`,`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_down`,color:`kobo-3`,disable:n===Y.value.length-1,title:e.$t(`settings.branchPrefixesMoveDown`),onClick:e=>tu(n,1)},null,8,[`disable`,`title`,`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`kobo-3`,title:e.$t(`common.delete`),onClick:e=>$l(n)},null,8,[`title`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):(l(),C(`div`,ao,i(e.$t(`settings.branchPrefixesEmpty`)),1)),T(`div`,oo,[h(N,{modelValue:Pl.value,"onUpdate:modelValue":a[76]||=e=>Pl.value=e,label:e.$t(`settings.branchPrefixesAddLabel`),dense:``,dark:``,outlined:``,class:`col`,onKeyup:ae(Ql,[`enter`])},null,8,[`modelValue`,`label`]),h(k,{flat:``,label:e.$t(`common.add`),icon:`add`,color:`primary`,disable:Zl(Pl.value).length===0,onClick:Ql},null,8,[`label`,`disable`])])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,so,[T(`div`,co,i(e.$t(`settings.setupScript`)),1),T(`div`,lo,i(e.$t(`settings.setupScriptHint`)),1),h(N,{modelValue:Fl.value,"onUpdate:modelValue":a[77]||=e=>Fl.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,uo,[T(`div`,fo,i(e.$t(`settings.cleanupScript`)),1),T(`div`,po,i(e.$t(`settings.cleanupScriptHint`)),1),h(N,{modelValue:Il.value,"onUpdate:modelValue":a[78]||=e=>Il.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),T(`div`,mo,i(e.$t(`settings.cleanupScriptMode`)),1),h(Le,{modelValue:Ll.value,"onUpdate:modelValue":a[79]||=e=>Ll.value=e,options:[{label:e.$t(`settings.cleanupScriptMode.idle`),value:`idle`},{label:e.$t(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}],type:`radio`,color:`primary`,dense:``},null,8,[`modelValue`,`options`]),h(qe,{modelValue:Rl.value,"onUpdate:modelValue":a[80]||=e=>Rl.value=e,label:e.$t(`settings.cleanupScriptOnlyOnChanges`),dark:``,dense:``,color:`primary`,class:`q-mt-sm`},null,8,[`modelValue`,`label`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,ho,[T(`div`,go,i(e.$t(`settings.archiveScript`)),1),T(`div`,_o,i(e.$t(`settings.archiveScriptHint`)),1),h(N,{modelValue:zl.value,"onUpdate:modelValue":a[81]||=e=>zl.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,vo,[T(`div`,yo,i(e.$t(`settings.hook.sessionEndedTitle`)),1),T(`div`,bo,i(e.$t(`settings.hook.sessionEndedHint`)),1),h(N,{modelValue:Bl.value,"onUpdate:modelValue":a[82]||=e=>Bl.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.sessionEndedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,xo,[T(`div`,So,i(e.$t(`settings.hook.prMergedTitle`)),1),T(`div`,Co,i(e.$t(`settings.hook.prMergedHint`)),1),h(N,{modelValue:Vl.value,"onUpdate:modelValue":a[83]||=e=>Vl.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.prMergedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,wo,[T(`div`,To,i(e.$t(`settings.hook.autoLoopDisabledTitle`)),1),T(`div`,Eo,i(e.$t(`settings.hook.autoLoopDisabledHint`)),1),h(N,{modelValue:Hl.value,"onUpdate:modelValue":a[84]||=e=>Hl.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.autoLoopDisabledPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`scripts`?(l(),C(`div`,Do,[T(`div`,Oo,[T(`div`,ko,i(e.$t(`settings.changeSourceBranchScript`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:e.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:a[85]||=e=>Eu(`global`)},null,8,[`label`])]),T(`div`,Ao,i(e.$t(`settings.changeSourceBranchScript.help`)),1),T(`pre`,jo,i(e.$t(`settings.changeSourceBranchScript.envHelp`)),1),h(N,{modelValue:Ul.value,"onUpdate:modelValue":a[86]||=e=>Ul.value=e,type:`textarea`,dark:``,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:e.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),A.value===`worktrees`?(l(),C(`div`,Mo,[T(`div`,No,i(e.$t(`settings.worktreesTitle`)),1),T(`div`,Po,i(e.$t(`settings.worktreesHint`)),1),h(N,{ref_key:`globalWorktreesPathInput`,ref:Yl,modelValue:Jl.value,"onUpdate:modelValue":a[87]||=e=>Jl.value=e,label:e.$t(`settings.worktreesPathLabel`),dense:``,dark:``,outlined:``,placeholder:t(Oe),rules:Ou,"lazy-rules":``,class:`settings-input`},null,8,[`modelValue`,`label`,`placeholder`]),h(P,{modelValue:Xl.value,"onUpdate:modelValue":a[88]||=e=>Xl.value=e,label:e.$t(`settings.worktreesPrefixByProject`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption q-mt-sm`},null,8,[`modelValue`,`label`]),T(`div`,Fo,i(e.$t(`settings.worktreesPrefixByProjectHint`)),1),h(He,{dark:``,class:`q-my-md`}),T(`div`,Io,[h(P,{modelValue:Ze.value,"onUpdate:modelValue":a[89]||=e=>Ze.value=e,label:e.$t(`settings.autoPurgeOnPrMerged`),dark:``,dense:``,color:`primary`,class:`text-kobo-2 text-caption`},null,8,[`modelValue`,`label`]),T(`div`,Lo,i(e.$t(`settings.autoPurgeOnPrMergedHint`)),1)]),h(N,{modelValue:I.value,"onUpdate:modelValue":a[90]||=e=>I.value=e,modelModifiers:{number:!0},label:e.$t(`settings.autoLoopMaxRetries`),hint:e.$t(`settings.autoLoopMaxRetriesHint`),type:`number`,min:`1`,max:`20`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`]),h(N,{modelValue:$e.value,"onUpdate:modelValue":a[91]||=e=>$e.value=e,modelModifiers:{number:!0},label:e.$t(`settings.awaitingUserReminder`),hint:e.$t(`settings.awaitingUserReminderHint`),type:`number`,min:`0`,max:`1440`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`]),h(He,{dark:``,class:`q-my-md`}),T(`div`,Ro,[T(`div`,zo,i(e.$t(`settings.retentionTitle`)),1),T(`div`,Bo,i(e.$t(`settings.retentionWarning`)),1),T(`div`,Vo,i(e.$t(`settings.retentionHint`)),1),h(N,{modelValue:B.value,"onUpdate:modelValue":a[92]||=e=>B.value=e,modelModifiers:{number:!0},label:e.$t(`settings.retentionDaysLabel`),hint:e.$t(`settings.retentionDaysHint`),type:`number`,min:`0`,max:`3650`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`,`hint`]),h(N,{modelValue:ft.value,"onUpdate:modelValue":a[93]||=e=>ft.value=e,modelModifiers:{number:!0},label:e.$t(`settings.retentionKeepLabel`),hint:e.$t(`settings.retentionKeepHint`),type:`number`,min:`0`,max:`1000000`,dense:``,dark:``,outlined:``,class:`settings-input q-mt-md`},null,8,[`modelValue`,`label`,`hint`]),B.value===0?(l(),C(`div`,Ho,i(e.$t(`settings.retentionDisabledHint`)),1)):v(``,!0)]),h(rt,{dense:``,dark:``,icon:`help_outline`,label:e.$t(`settings.purgeDocsTitle`),class:`purge-docs q-mt-md rounded-borders`},{default:m(()=>[T(`div`,Uo,[T(`div`,Wo,i(e.$t(`settings.purgeDocsRestoreTitle`)),1),T(`div`,Go,i(e.$t(`settings.purgeDocsRestoreIntro`)),1),T(`pre`,Ko,i(e.$t(`settings.purgeDocsRestoreCommands`)),1),T(`div`,qo,i(e.$t(`settings.purgeDocsRestoreFootnote`)),1),T(`div`,Jo,i(e.$t(`settings.purgeDocsPermissionsTitle`)),1),T(`div`,Yo,i(e.$t(`settings.purgeDocsPermissionsIntro`)),1),T(`ul`,Xo,[T(`li`,null,i(e.$t(`settings.purgeDocsPermissionsDocker`)),1),T(`li`,null,i(e.$t(`settings.purgeDocsPermissionsAcl`)),1)]),T(`pre`,Zo,i(e.$t(`settings.purgeDocsPermissionsAclCommand`)),1),T(`div`,Qo,i(e.$t(`settings.purgeDocsPermissionsFootnote`)),1),T(`div`,$o,i(e.$t(`settings.purgeDocsPermissionsRecoverTitle`)),1),T(`div`,es,i(e.$t(`settings.purgeDocsPermissionsRecoverIntro`)),1),T(`div`,ts,i(e.$t(`settings.purgeDocsPermissionsRecoverAclIntro`)),1),T(`pre`,ns,i(e.$t(`settings.purgeDocsPermissionsRecoverAclCommand`)),1),T(`div`,rs,i(e.$t(`settings.purgeDocsPermissionsRecoverChownIntro`)),1),T(`pre`,is,i(e.$t(`settings.purgeDocsPermissionsRecoverChownCommand`)),1),T(`div`,as,i(e.$t(`settings.purgeDocsPermissionsRecoverFootnote`)),1)])]),_:1},8,[`label`])])):v(``,!0),A.value===`general`?(l(),C(`div`,os,[T(`div`,ss,i(e.$t(`settings.network.title`)),1),T(`div`,cs,i(e.$t(`settings.network.hint`)),1),h(P,{"model-value":U.value.enabled,label:e.$t(`settings.network.enable`),dark:``,color:`primary`,"onUpdate:modelValue":jt},null,8,[`model-value`,`label`]),wt.value?(l(),_(vt,{key:0,class:`bg-amber-1 text-amber-9 q-mt-sm`,dense:``,rounded:``},{default:m(()=>[y(i(e.$t(`settings.network.restartRequired`)),1)]),_:1})):v(``,!0),U.value.enabled?(l(),C(`div`,ls,[h(P,{"model-value":U.value.behindProxy,label:e.$t(`settings.network.behindProxy`),dark:``,color:`primary`,"onUpdate:modelValue":Nt},null,8,[`model-value`,`label`]),T(`div`,us,i(e.$t(`settings.network.behindProxyHint`)),1)])):v(``,!0),U.value.enabled&&U.value.token?(l(),C(w,{key:2},[T(`div`,ds,[T(`div`,fs,i(e.$t(`settings.network.token`)),1),h(N,{"model-value":U.value.token,readonly:``,dense:``,dark:``,outlined:``},{append:m(()=>[h(k,{flat:``,dense:``,icon:`content_copy`,title:e.$t(`settings.network.copy`),onClick:Ft},null,8,[`title`])]),_:1},8,[`model-value`]),h(k,{class:`q-mt-sm`,label:e.$t(`settings.network.regenerate`),color:`primary`,outline:``,dense:``,onClick:Pt},null,8,[`label`])]),T(`div`,ps,[T(`div`,ms,i(e.$t(`settings.network.urls`)),1),Dt.value.length===0?(l(),C(`div`,hs,i(e.$t(`settings.network.noUrls`)),1)):v(``,!0),(l(!0),C(w,null,D(Dt.value,e=>(l(),C(`div`,{key:e,class:`text-body2`},i(e),1))),128))]),Tt.value?(l(),C(`div`,gs,[T(`div`,_s,i(e.$t(`settings.network.scan`)),1),T(`img`,{src:Tt.value,alt:e.$t(`settings.network.scan`),width:`200`,height:`200`},null,8,vs)])):v(``,!0)],64)):v(``,!0),h(cn,{token:U.value.token,"network-enabled":U.value.enabled,"behind-proxy":U.value.behindProxy},null,8,[`token`,`network-enabled`,`behind-proxy`])])):v(``,!0),A.value===`export`?(l(),C(`div`,ys,[T(`div`,bs,i(e.$t(`settings.shareTitle`)),1),T(`div`,xs,i(e.$t(`settings.shareHint`)),1),T(`div`,Ss,[h(k,{label:e.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`kobo-2`,onClick:Wd},null,8,[`label`]),h(k,{label:e.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`kobo-2`,onClick:Gd},null,8,[`label`]),T(`input`,{ref_key:`importFileInput`,ref:Ud,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:Kd},null,544)])])):v(``,!0)],512),[[re,_e.value]]),A.value===`projects`?(l(),C(`div`,Cs,[T(`div`,ws,[T(`div`,Ts,[T(`div`,Es,[T(`div`,Ds,[T(`div`,Os,i(e.$t(`settings.configuredProjects`)),1)]),h(He,{dark:``}),h(F,{dark:``,dense:``,class:`q-py-xs`},{default:m(()=>[(l(!0),C(w,null,D(t(u).projects,(e,t)=>(l(),_(R,{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=>cf(t)},{default:m(()=>[h(z,null,{default:m(()=>[h(et,{class:`text-body2 text-kobo-1`},{default:m(()=>[y(i(lf(e)),1)]),_:2},1024),h(et,{caption:``,class:`text-kobo-3 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:m(()=>[y(i(e.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),t(u).projects.length===0&&!t(u).loading?(l(),C(`div`,ks,i(e.$t(`settings.noProjects`)),1)):v(``,!0),h(He,{dark:``}),T(`div`,As,[h(k,{"data-tour":`settings-card-projects`,label:e.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`primary`,onClick:sf},null,8,[`label`])])])]),T(`div`,js,[T(`div`,Ms,[$.value||Z.value?(l(),C(w,{key:0},[T(`div`,Ns,[T(`div`,Ps,i(Z.value?e.$t(`settings.newProject`):e.$t(`settings.editProject`)),1),h(V),Z.value?v(``,!0):(l(),_(k,{key:0,label:e.$t(`common.delete`),icon:`delete_outline`,"no-caps":``,flat:``,dense:``,size:`sm`,color:`red-5`,loading:Wu.value,onClick:of},null,8,[`label`,`loading`]))]),h(He,{dark:``,class:`q-mb-md`}),Z.value&&t(u).projects.length>0?(l(),C(`div`,Fs,[T(`div`,Is,i(e.$t(`settings.copyFrom`)),1),h(L,{"model-value":ju.value,options:Nu.value,"option-value":`value`,"option-label":`label`,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.copyFromPlaceholder`),class:`settings-input`,"onUpdate:modelValue":Iu},null,8,[`model-value`,`options`,`placeholder`]),T(`div`,Ls,i(e.$t(`settings.copyFromHint`)),1)])):v(``,!0),T(`div`,Rs,[T(`div`,zs,i(e.$t(`settings.projectGroup.identity`)),1),T(`div`,Bs,[T(`div`,Vs,i(e.$t(`settings.projectPath`)),1),h(N,{modelValue:Q.value.path,"onUpdate:modelValue":a[95]||=e=>Q.value.path=e,dense:``,dark:``,outlined:``,readonly:!Z.value,placeholder:e.$t(`settings.projectPathPlaceholder`),class:n([`settings-input`,{"readonly-input":!Z.value}])},b({_:2},[Z.value?{name:`append`,fn:m(()=>[h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`folder_open`,color:`kobo-2`,onClick:a[94]||=e=>Gl.value=!0},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`folderPicker.title`)),1)]),_:1})]),_:1})]),key:`0`}:void 0]),1032,[`modelValue`,`readonly`,`placeholder`,`class`])]),T(`div`,Hs,[T(`div`,Us,i(e.$t(`settings.displayName`)),1),h(N,{modelValue:Q.value.displayName,"onUpdate:modelValue":a[96]||=e=>Q.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Ws,i(e.$t(`settings.projectColor`)),1),T(`div`,Gs,[(l(!0),C(w,null,D(t(yt),e=>(l(),_(pt,{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)),h(k,{flat:``,dense:``,"no-caps":``,size:`xs`,label:e.$t(`settings.projectColorClear`),color:`kobo-2`,disable:!Q.value.color,onClick:a[97]||=e=>Q.value.color=null},null,8,[`label`,`disable`])]),T(`div`,Ks,i(Q.value.color??e.$t(`settings.projectColorDefault`)),1)])]),T(`div`,qs,[T(`div`,Js,i(e.$t(`settings.projectGroup.defaults`)),1),T(`div`,Ys,[T(`div`,Xs,i(e.$t(`settings.defaultSourceBranch`)),1),h(L,{modelValue:Q.value.defaultSourceBranch,"onUpdate:modelValue":a[98]||=e=>Q.value.defaultSourceBranch=e,options:uf.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:Hu.value,class:`settings-input`,placeholder:`main`,onFilter:df},{"no-option":m(()=>[h(R,null,{default:m(()=>[h(z,{class:`text-kobo-3 text-caption`},{default:m(()=>[y(i(Q.value.path.trim()?e.$t(`createPage.noBranches`):e.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),T(`div`,Zs,[T(`div`,Qs,i(e.$t(`settings.defaultModel.project`)),1),h(L,{modelValue:Q.value.defaultModel,"onUpdate:modelValue":a[99]||=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`])]),T(`div`,null,[T(`div`,$s,i(e.$t(`settings.forge`)),1),h(L,{modelValue:Q.value.forge,"onUpdate:modelValue":a[100]||=e=>Q.value.forge=e,options:hd.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])]),T(`div`,ec,[T(`div`,tc,i(e.$t(`settings.projectGroup.prompts`)),1),T(`div`,nc,[T(`div`,rc,i(e.$t(`settings.prPromptTemplate.project`)),1),T(`div`,ic,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.prPromptTemplate,"onUpdate:modelValue":a[101]||=e=>Q.value.prPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,ac,[T(`div`,oc,i(e.$t(`settings.reviewPromptTemplate.project`)),1),T(`div`,sc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.reviewPromptTemplate,"onUpdate:modelValue":a[102]||=e=>Q.value.reviewPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,cc,[T(`div`,lc,i(e.$t(`settings.ciFixPromptTemplate.project`)),1),T(`div`,uc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.ciFixPromptTemplate,"onUpdate:modelValue":a[103]||=e=>Q.value.ciFixPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),J.value?(l(),C(`div`,dc,[T(`div`,fc,i(t(E)(`settings.notionInitialPrompt.project`)),1),T(`div`,pc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.notionInitialPromptTemplate,"onUpdate:modelValue":a[104]||=e=>Q.value.notionInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),Ml.value?(l(),C(`div`,mc,[T(`div`,hc,i(t(E)(`settings.sentryInitialPrompt.project`)),1),T(`div`,gc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.sentryInitialPromptTemplate,"onUpdate:modelValue":a[105]||=e=>Q.value.sentryInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),T(`div`,_c,[T(`div`,vc,i(e.$t(`settings.gitConventions.project`)),1),T(`div`,yc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.gitConventions,"onUpdate:modelValue":a[106]||=e=>Q.value.gitConventions=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`140px`},placeholder:e.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,bc,i(e.$t(`settings.taskPromptTemplate`)),1),h(N,{modelValue:Q.value.taskPromptTemplate,"onUpdate:modelValue":a[107]||=e=>Q.value.taskPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.taskPromptTemplatePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`]),T(`div`,xc,i(e.$t(`settings.taskPromptTemplateHint`)),1)])]),T(`div`,Sc,[T(`div`,Cc,i(e.$t(`settings.projectGroup.scripts`)),1),T(`div`,wc,[T(`div`,Tc,i(e.$t(`settings.setupScript`)),1),T(`div`,Ec,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.setupScript,"onUpdate:modelValue":a[108]||=e=>Q.value.setupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),T(`div`,Dc,i(e.$t(`settings.setupScriptHint`)),1)]),T(`div`,Oc,[T(`div`,kc,i(e.$t(`settings.cleanupScript`)),1),T(`div`,Ac,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.cleanupScript,"onUpdate:modelValue":a[109]||=e=>Q.value.cleanupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),T(`div`,jc,i(e.$t(`settings.cleanupScriptMode`)),1),h(L,{modelValue:Q.value.cleanupScriptMode,"onUpdate:modelValue":a[110]||=e=>Q.value.cleanupScriptMode=e,options:ql.value,"emit-value":``,"map-options":``,dense:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),T(`div`,null,[T(`div`,Mc,i(e.$t(`settings.archiveScript`)),1),T(`div`,Nc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.archiveScript,"onUpdate:modelValue":a[111]||=e=>Q.value.archiveScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Pc,i(e.$t(`settings.hook.sessionEndedTitle`)),1),T(`div`,Fc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.sessionEndedScript,"onUpdate:modelValue":a[112]||=e=>Q.value.sessionEndedScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.sessionEndedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Ic,i(e.$t(`settings.hook.prMergedTitle`)),1),T(`div`,Lc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.prMergedScript,"onUpdate:modelValue":a[113]||=e=>Q.value.prMergedScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.prMergedPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Rc,i(e.$t(`settings.hook.autoLoopDisabledTitle`)),1),T(`div`,zc,i(t(E)(`settings.initialPrompt.inheritHint`)),1),h(N,{modelValue:Q.value.autoLoopDisabledScript,"onUpdate:modelValue":a[114]||=e=>Q.value.autoLoopDisabledScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.hook.autoLoopDisabledPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Bc,[T(`div`,Vc,i(e.$t(`settings.changeSourceBranchScript`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:e.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:a[115]||=e=>Eu(`project`)},null,8,[`label`])]),T(`div`,Hc,i(e.$t(`settings.changeSourceBranchScript.help`)),1),T(`pre`,Uc,i(e.$t(`settings.changeSourceBranchScript.envHelp`)),1),h(N,{modelValue:Q.value.changeSourceBranchScript,"onUpdate:modelValue":a[116]||=e=>Q.value.changeSourceBranchScript=e,type:`textarea`,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:e.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),T(`div`,Wc,[T(`div`,Gc,i(e.$t(`settings.devServer`)),1),T(`div`,Kc,[T(`div`,qc,i(e.$t(`settings.devServerStart`)),1),h(N,{modelValue:Q.value.devServer.startCommand,"onUpdate:modelValue":a[117]||=e=>Q.value.devServer.startCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:e.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),T(`div`,null,[T(`div`,Jc,i(e.$t(`settings.devServerStop`)),1),h(N,{modelValue:Q.value.devServer.stopCommand,"onUpdate:modelValue":a[118]||=e=>Q.value.devServer.stopCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:e.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),T(`div`,Yc,[T(`div`,Xc,i(e.$t(`settings.e2e.title`)),1),T(`div`,Zc,i(e.$t(`settings.e2e.helpText`)),1),h(L,{modelValue:Q.value.e2e.framework,"onUpdate:modelValue":a[119]||=e=>Q.value.e2e.framework=e,options:[{label:e.$t(`settings.e2e.frameworkNone`),value:``},{label:`Cypress`,value:`cypress`},{label:`Playwright`,value:`playwright`},{label:`Jest`,value:`jest`},{label:`Vitest`,value:`vitest`},{label:e.$t(`settings.e2e.frameworkOther`),value:`other`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:e.$t(`settings.e2e.framework`)},null,8,[`modelValue`,`options`,`label`]),Q.value.e2e.framework?(l(),C(w,{key:0},[h(L,{modelValue:Q.value.e2e.skill,"onUpdate:modelValue":a[120]||=e=>Q.value.e2e.skill=e,options:Ru.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:e.$t(`settings.e2e.skill`),placeholder:e.$t(`settings.e2e.skillPlaceholder`),onFilter:Bu},null,8,[`modelValue`,`options`,`label`,`placeholder`]),h(N,{modelValue:Q.value.e2e.prompt,"onUpdate:modelValue":a[121]||=e=>Q.value.e2e.prompt=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea`,label:e.$t(`settings.e2e.prompt`),placeholder:e.$t(`settings.e2e.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])],64)):v(``,!0)]),T(`div`,Qc,[T(`div`,$c,i(e.$t(`settings.finalization.title`)),1),T(`div`,el,i(e.$t(`settings.finalization.helpText`)),1),h(N,{modelValue:Q.value.finalization.prompt,"onUpdate:modelValue":a[122]||=e=>Q.value.finalization.prompt=e,type:`textarea`,autogrow:``,rows:`4`,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea q-mb-sm`,label:e.$t(`settings.finalization.prompt`),placeholder:e.$t(`settings.finalization.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])])],64)):(l(),C(`div`,tl,[h(O,{name:`folder_open`,size:`48px`,color:`kobo-3`,class:`q-mb-md`}),T(`div`,nl,i(e.$t(`settings.selectProject`)),1)]))])])])])):v(``,!0),A.value===`templates`?(l(),C(`div`,rl,[T(`div`,il,[T(`div`,al,[T(`div`,ol,i(e.$t(`templates.title`)),1),T(`div`,sl,[h(k,{flat:``,color:`kobo-2`,icon:`restart_alt`,label:e.$t(`templates.reloadDefaults`),dense:``,"no-caps":``,loading:Qu.value,onClick:id},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`templates.reloadDefaultsHint`)),1)]),_:1})]),_:1},8,[`label`,`loading`]),h(k,{color:`primary`,icon:`add`,label:e.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:td},null,8,[`label`])])]),h(He,{dark:``,class:`q-mb-md`}),$u.value.length===0?(l(),C(`div`,cl,i(e.$t(`templates.empty`)),1)):(l(),C(`div`,ll,[(l(!0),C(w,null,D($u.value,n=>(l(),_(Ne,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:m(()=>[T(`div`,ul,[T(`div`,dl,[T(`div`,fl,` /`+i(n.slug),1),T(`div`,pl,i(n.description),1)]),T(`div`,ml,[t(g).isDefault(n.slug)?(l(),_(k,{key:0,flat:``,dense:``,round:``,size:`sm`,icon:`settings_backup_restore`,color:`kobo-2`,onClick:e=>ld(n)},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`templates.resetToDefault`)),1)]),_:1})]),_:1},8,[`onClick`])):v(``,!0),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`kobo-2`,onClick:e=>nd(n)},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>ad(n)},{default:m(()=>[h(H,null,{default:m(()=>[y(i(e.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),T(`div`,hl,i(e.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])])):v(``,!0),A.value===`workspaceTemplates`?(l(),C(`div`,gl,[T(`div`,_l,[T(`div`,vl,i(e.$t(`workspaceTemplates.title`)),1),T(`div`,yl,i(e.$t(`workspaceTemplates.hint`)),1),t(x).templates.length===0?(l(),C(`div`,bl,i(e.$t(`workspaceTemplates.empty`)),1)):(l(),_(F,{key:1,dark:``,separator:``},{default:m(()=>[(l(!0),C(w,null,D(t(x).templates,t=>(l(),_(rt,{key:t.id,dense:``,"header-class":`text-kobo-1`},{header:m(()=>[h(z,null,{default:m(()=>[h(et,null,{default:m(()=>[y(i(t.name),1)]),_:2},1024),h(et,{caption:``,class:`text-kobo-3`},{default:m(()=>[y(i(t.preset.projectPath||e.$t(`workspaceTemplates.anyProject`))+` · `+i(t.preset.engine??`-`)+` · `+i(t.preset.model??`-`)+` · `+i(od(t.updatedAt)),1)]),_:2},1024)]),_:2},1024),h(z,{side:``},{default:m(()=>[T(`div`,xl,[h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,title:e.$t(`workspaceTemplates.rename`),onClick:oe(e=>sd(t.id,t.name),[`stop`])},null,8,[`title`,`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`kobo-danger`,title:e.$t(`common.delete`),onClick:oe(e=>cd(t.id,t.name),[`stop`])},null,8,[`title`,`onClick`])])]),_:2},1024)]),default:m(()=>[h(Ne,{dark:``,flat:``,class:`settings-subcard q-pa-md`},{default:m(()=>[T(`pre`,Sl,i(JSON.stringify(t.preset,null,2)),1)]),_:2},1024)]),_:2},1024))),128))]),_:1}))])])):v(``,!0)])]),h(ne,{name:`save-bar`},{default:m(()=>[Id.value?(l(),C(`div`,{key:0,class:n([`settings-savebar`,{"settings-savebar--full":t(ie)}])},[T(`span`,Cl,i(e.$t(`settings.unsavedChanges`)),1),h(k,{dense:``,"no-caps":``,unelevated:``,class:`settings-savebar__action`,loading:Ld.value,label:e.$t(`common.save`),onClick:Rd},null,8,[`loading`,`label`])],2)):v(``,!0)]),_:1})]),h(ge,{modelValue:Gu.value,"onUpdate:modelValue":a[126]||=e=>Gu.value=e,persistent:``},{default:m(()=>[h(Ne,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:m(()=>[h(je,null,{default:m(()=>[T(`div`,wl,i(Ku.value===null?e.$t(`templates.newTemplate`):e.$t(`templates.editTemplate`)),1)]),_:1}),h(je,{class:`q-gutter-md`},{default:m(()=>[h(N,{modelValue:qu.value,"onUpdate:modelValue":a[123]||=e=>qu.value=e,label:e.$t(`templates.slug`),hint:e.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:Ku.value!==null,rules:[t=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(t)||e.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),h(N,{modelValue:Ju.value,"onUpdate:modelValue":a[124]||=e=>Ju.value=e,label:e.$t(`templates.description`),hint:e.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),h(N,{modelValue:Yu.value,"onUpdate:modelValue":a[125]||=e=>Yu.value=e,label:e.$t(`templates.content`),hint:e.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),h(rt,{dense:``,"dense-toggle":``,label:e.$t(`templates.availableVars`),"header-class":`text-kobo-3 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:m(()=>[T(`div`,Tl,[(l(),C(w,null,D(ed,e=>T(`div`,{key:e,class:`text-kobo-2 q-mb-xs`},i(e),1)),64))])]),_:1},8,[`label`]),Xu.value?(l(),C(`div`,El,i(Xu.value),1)):v(``,!0)]),_:1}),h(ze,{align:`right`},{default:m(()=>[p(h(k,{flat:``,label:e.$t(`common.cancel`)},null,8,[`label`]),[[mt]]),h(k,{flat:``,color:`primary`,label:Ku.value===null?e.$t(`templates.create`):e.$t(`templates.save`),loading:Zu.value,onClick:rd},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),h(Gt,{modelValue:Gl.value,"onUpdate:modelValue":a[127]||=e=>Gl.value=e,"initial-path":Q.value.path,onSelect:Kl},null,8,[`modelValue`,`initial-path`])]),_:1}))}}),[[`__scopeId`,`data-v-173a9cce`]]);export{Ol as default,At as n,kt as t};