@loicngr/kobo 1.7.2 → 1.7.4

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 (75) hide show
  1. package/dist/mcp-server/kobo-tasks-handlers.js +8 -1
  2. package/dist/server/routes/health.js +12 -6
  3. package/dist/server/routes/settings.js +16 -0
  4. package/dist/server/routes/workspaces.js +207 -4
  5. package/dist/server/services/agent/orchestrator.js +3 -0
  6. package/dist/server/services/auto-loop-service.js +7 -1
  7. package/dist/server/services/initial-prompt-template-service.js +48 -0
  8. package/dist/server/services/review-template-service.js +58 -0
  9. package/dist/server/services/settings-service.js +70 -3
  10. package/dist/server/services/wakeup-service.js +9 -1
  11. package/dist/server/services/worktree-service.js +2 -2
  12. package/dist/server/utils/git-ops.js +130 -9
  13. package/dist/server/utils/project-slug.js +52 -0
  14. package/dist/server/utils/worktree-paths.js +12 -10
  15. package/package.json +1 -1
  16. package/src/client/dist/spa/assets/ActivityFeed-ClJLeAXJ.js +7 -0
  17. package/src/client/dist/spa/assets/{ActivityFeed-LXnbg3ff.css → ActivityFeed-DVBfmJWJ.css} +1 -1
  18. package/src/client/dist/spa/assets/{ClosePopup-BP025_cK.js → ClosePopup-D_UAdwkA.js} +1 -1
  19. package/src/client/dist/spa/assets/CreatePage-BOkt0Psl.js +2 -0
  20. package/src/client/dist/spa/assets/CreatePage-DssmsAsV.css +1 -0
  21. package/src/client/dist/spa/assets/DiffViewer-Dls1jFCN.js +7 -0
  22. package/src/client/dist/spa/assets/{DiffViewer-D1Sdu307.css → DiffViewer-wFfQ9tcY.css} +1 -1
  23. package/src/client/dist/spa/assets/{HealthPage-CkHv5qMK.js → HealthPage-CMxH3SBS.js} +1 -1
  24. package/src/client/dist/spa/assets/{MainLayout-l91ohFQA.js → MainLayout-DHNIerYJ.js} +17 -17
  25. package/src/client/dist/spa/assets/MainLayout-DKurmqtk.css +1 -0
  26. package/src/client/dist/spa/assets/{QExpansionItem-BaQJkGb-.js → QExpansionItem-CH1ipL9n.js} +1 -1
  27. package/src/client/dist/spa/assets/{QMenu-DgWZe7Uh.js → QMenu-B4xMxMGd.js} +1 -1
  28. package/src/client/dist/spa/assets/{QTabPanels-CjpZTIJg.js → QTabPanels-D2ks0UIA.js} +1 -1
  29. package/src/client/dist/spa/assets/{QTooltip-D_hSPb7r.js → QTooltip-fDNzBEfN.js} +1 -1
  30. package/src/client/dist/spa/assets/{SearchPage-B1WhFCUf.js → SearchPage-BEnZ-CLq.js} +1 -1
  31. package/src/client/dist/spa/assets/SettingsPage-CMyeQ9_u.css +1 -0
  32. package/src/client/dist/spa/assets/SettingsPage-DeCbWvPb.js +1 -0
  33. package/src/client/dist/spa/assets/{TouchPan-1PETKHN0.js → TouchPan-DoE24Io3.js} +1 -1
  34. package/src/client/dist/spa/assets/{WorkspacePage-D3MBshNH.js → WorkspacePage-DFAFT5OW.js} +3 -3
  35. package/src/client/dist/spa/assets/{WorkspacePage-d_B0-LNG.css → WorkspacePage-eymEd4kx.css} +1 -1
  36. package/src/client/dist/spa/assets/{build-path-tree-w3SEPAbh.js → build-path-tree-B1Lvvqto.js} +1 -1
  37. package/src/client/dist/spa/assets/{cssMode-B6CD4qMI.js → cssMode-AlflsawW.js} +1 -1
  38. package/src/client/dist/spa/assets/{editor.api-wizjkvCK.js → editor.api-DtvjQlUm.js} +1 -1
  39. package/src/client/dist/spa/assets/{editor.main-Bn6fpPLF.js → editor.main-Ccy_gjVD.js} +3 -3
  40. package/src/client/dist/spa/assets/{expand-template-Cu5GSLCM.js → expand-template-AQsvbQ8_.js} +1 -1
  41. package/src/client/dist/spa/assets/{freemarker2-DW-DFUis.js → freemarker2-DdQktlXK.js} +1 -1
  42. package/src/client/dist/spa/assets/{handlebars-CSSQFRHS.js → handlebars-CE3ee2NH.js} +1 -1
  43. package/src/client/dist/spa/assets/{html-Ba5lfQna.js → html-CCKX8Xv9.js} +1 -1
  44. package/src/client/dist/spa/assets/{htmlMode-ocrlHn5h.js → htmlMode-Dh8jDJum.js} +1 -1
  45. package/src/client/dist/spa/assets/i18n-BOsrrRj4.js +1 -0
  46. package/src/client/dist/spa/assets/index-_ZaIBxd6.js +2 -0
  47. package/src/client/dist/spa/assets/{javascript-DL3j24x3.js → javascript-DhmZNdUp.js} +1 -1
  48. package/src/client/dist/spa/assets/{jsonMode-CtFp2BJe.js → jsonMode-B0xAtnNK.js} +1 -1
  49. package/src/client/dist/spa/assets/{liquid-B_GGNnlJ.js → liquid-ByL0HpZ0.js} +1 -1
  50. package/src/client/dist/spa/assets/{mdx-BXe8MrIz.js → mdx-DX4pehAZ.js} +1 -1
  51. package/src/client/dist/spa/assets/{models-BMOYJtwv.js → models-ClWoqWeC.js} +1 -1
  52. package/src/client/dist/spa/assets/{monaco.contribution-DSSRKV2r.js → monaco.contribution-Fegh8Y1Y.js} +2 -2
  53. package/src/client/dist/spa/assets/{notifications-CG-oL2m2.js → notifications-OnPq4FrH.js} +1 -1
  54. package/src/client/dist/spa/assets/purify.es-BWZjBa9F.js +60 -0
  55. package/src/client/dist/spa/assets/{python-DPtBXcrE.js → python-COS2MM8n.js} +1 -1
  56. package/src/client/dist/spa/assets/{razor-y1p5VjhT.js → razor-Cc3xCJU7.js} +1 -1
  57. package/src/client/dist/spa/assets/render-chat-markdown-DcGIpMoe.js +1 -0
  58. package/src/client/dist/spa/assets/{tsMode-CV2CQlAd.js → tsMode-eQIJjERk.js} +1 -1
  59. package/src/client/dist/spa/assets/{typescript-DsjWQLAN.js → typescript-DwIlacVU.js} +1 -1
  60. package/src/client/dist/spa/assets/{use-panel-D2MjPZiL.js → use-panel-D-8nAQns.js} +1 -1
  61. package/src/client/dist/spa/assets/{xml-AQhpP8em.js → xml-DP-09Aih.js} +1 -1
  62. package/src/client/dist/spa/assets/{yaml-zZFlU7RD.js → yaml-BhrtimeA.js} +1 -1
  63. package/src/client/dist/spa/index.html +2 -2
  64. package/src/mcp-server/kobo-tasks-handlers.ts +10 -1
  65. package/src/client/dist/spa/assets/ActivityFeed-B85xav_e.js +0 -7
  66. package/src/client/dist/spa/assets/CreatePage-BE3xfQsC.css +0 -1
  67. package/src/client/dist/spa/assets/CreatePage-DyR33jFM.js +0 -2
  68. package/src/client/dist/spa/assets/DiffViewer-CqhpTkym.js +0 -7
  69. package/src/client/dist/spa/assets/MainLayout-B07zv82Z.css +0 -1
  70. package/src/client/dist/spa/assets/QScrollArea-usfgatuS.js +0 -1
  71. package/src/client/dist/spa/assets/SettingsPage-B7S5fXGG.js +0 -1
  72. package/src/client/dist/spa/assets/SettingsPage-kHd651y8.css +0 -1
  73. package/src/client/dist/spa/assets/i18n-CqK8B0Nz.js +0 -1
  74. package/src/client/dist/spa/assets/index-DE3PxEjy.js +0 -2
  75. package/src/client/dist/spa/assets/marked.esm-D4t0_2pc.js +0 -60
@@ -1 +0,0 @@
1
- .create-page[data-v-56d6cf98]{background-color:#1a1a2e;min-height:100%;padding:48px 24px}.create-inner[data-v-56d6cf98]{width:100%;max-width:700px}.create-title[data-v-56d6cf98]{font-size:24px;line-height:1.3}.create-card[data-v-56d6cf98]{background:#224;border:1px solid #444;overflow:hidden}.card-top-bar[data-v-56d6cf98]{background:#1e1e3a;min-height:36px}.card-name-wrap[data-v-56d6cf98]{background:#224;padding:8px 16px 4px}.card-name-wrap[data-v-56d6cf98] .q-field__control{height:32px;min-height:32px;padding:0}.card-name-wrap[data-v-56d6cf98] input{color:#e0e0e0;font-size:15px;font-weight:500}.card-name-wrap[data-v-56d6cf98] input::placeholder{color:#555}.card-textarea-wrap[data-v-56d6cf98]{background:#224;position:relative}.create-slash-popup[data-v-56d6cf98]{z-index:9999;position:absolute;top:calc(100% + 4px);left:12px;right:12px}.repo-select[data-v-56d6cf98]{min-width:160px;max-width:260px}.repo-select[data-v-56d6cf98] .q-field__prepend{align-items:center;height:auto;padding-top:0}.create-textarea[data-v-56d6cf98]{color:#d0d0d0;width:100%;padding:12px 16px 4px}.create-textarea[data-v-56d6cf98] .q-field__control{padding:0}.create-textarea[data-v-56d6cf98] textarea{color:#d0d0d0;resize:none;min-height:100px;font-size:14px;line-height:1.6}.create-textarea[data-v-56d6cf98] textarea::placeholder{color:#666}.notion-toggle-btn[data-v-56d6cf98]{background:#333;padding:2px 10px}.notion-url-wrap[data-v-56d6cf98]{background:#1e1e3a;padding:8px 0 0}.notion-url-input[data-v-56d6cf98]{padding:0 12px}.notion-url-input[data-v-56d6cf98] .q-field__control{height:36px;min-height:36px;padding:0}.notion-url-input[data-v-56d6cf98] input{color:#d0d0d0;font-size:13px}.notion-url-input[data-v-56d6cf98] input::placeholder{color:#555;font-size:12px}.notion-error[data-v-56d6cf98],.notion-valid[data-v-56d6cf98]{padding-bottom:6px}.notion-peek-choice[data-v-56d6cf98]{padding-top:4px}.peek-card[data-v-56d6cf98]{cursor:pointer;text-align:left;color:#e0e0e0;font-family:inherit;font-size:inherit;background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:background .15s,border-color .15s,transform .1s;display:flex;position:relative}.peek-card[data-v-56d6cf98]:hover{background:#ffffff0f;border-color:#6c63ff66}.peek-card[data-v-56d6cf98]:active{transform:scale(.99)}.peek-card--active[data-v-56d6cf98]{background:#6c63ff1f;border-color:#6c63ffd9;box-shadow:0 0 0 1px #6c63ff66}.peek-card--active .peek-card-icon[data-v-56d6cf98]{color:#8a82ff}.peek-card--active .peek-card-title[data-v-56d6cf98]{color:#fff}.peek-card-icon[data-v-56d6cf98]{color:#999;flex-shrink:0}.peek-card-text[data-v-56d6cf98]{flex:1;min-width:0;line-height:1.25}.peek-card-title[data-v-56d6cf98]{color:#d0d0d0;font-size:12px;font-weight:600}.peek-card-desc[data-v-56d6cf98]{color:#888;margin-top:2px;font-size:10.5px}.peek-card-check[data-v-56d6cf98]{flex-shrink:0}.sentry-toggle-btn[data-v-56d6cf98]{background:#333;padding:2px 10px}.sentry-url-wrap[data-v-56d6cf98]{background:#1e1e3a;padding:8px 0 0}.sentry-url-input[data-v-56d6cf98]{padding:0 12px}.sentry-url-input[data-v-56d6cf98] .q-field__control{height:36px;min-height:36px;padding:0}.sentry-url-input[data-v-56d6cf98] input{color:#d0d0d0;font-size:13px}.sentry-url-input[data-v-56d6cf98] input::placeholder{color:#555;font-size:12px}.sentry-error[data-v-56d6cf98],.sentry-valid[data-v-56d6cf98]{padding-bottom:6px}.slide-enter-active[data-v-56d6cf98],.slide-leave-active[data-v-56d6cf98]{transition:all .2s;overflow:hidden}.slide-enter-from[data-v-56d6cf98],.slide-leave-to[data-v-56d6cf98]{opacity:0;max-height:0}.slide-enter-to[data-v-56d6cf98],.slide-leave-from[data-v-56d6cf98]{opacity:1;max-height:120px}.card-bottom-bar[data-v-56d6cf98]{background:#1e1e3a}.skip-setup-btn[data-v-56d6cf98]{min-height:28px;padding:2px 10px;font-size:11px}.skip-setup-btn[data-v-56d6cf98] .q-btn__content{gap:4px}.skip-setup-btn[data-v-56d6cf98] .q-icon{font-size:14px}.bottom-row-git .bottom-select-label[data-v-56d6cf98]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bottom-row-git .bottom-select.repo-select[data-v-56d6cf98] input{color:#bbb;padding:0 4px;font-size:11px}.bottom-row-git .bottom-select.repo-select[data-v-56d6cf98] input::placeholder{color:#666;font-style:italic}.bottom-select[data-v-56d6cf98]{background:#333;height:28px;padding:0 6px}.bottom-select[data-v-56d6cf98] .q-field__control{height:28px;min-height:28px;padding:0}.bottom-select[data-v-56d6cf98] .q-field__native{min-height:unset;padding:0}.bottom-select-label[data-v-56d6cf98]{color:#bbb;gap:2px;font-size:11px}.bottom-sep[data-v-56d6cf98]{color:#555;padding:0 2px;font-size:12px;line-height:1}.repo-path-wrap[data-v-56d6cf98]{background:#333;border-radius:6px;height:28px;padding:0 8px}.repo-input[data-v-56d6cf98]{min-width:140px}.repo-input[data-v-56d6cf98] .q-field__control{height:28px;min-height:28px;padding:0}.repo-input[data-v-56d6cf98] input{color:#bbb;font-size:11px}.repo-input[data-v-56d6cf98] input::placeholder{color:#666;font-size:11px}.branch-select[data-v-56d6cf98]{min-width:80px}.create-btn[data-v-56d6cf98]{color:#fff;background:#4f46e5;min-width:220px;height:32px;padding:0 32px;font-size:13px}.create-btn[data-v-56d6cf98] .q-btn__content{height:32px}.create-hint[data-v-56d6cf98]{line-height:1.5}.fade-enter-active[data-v-56d6cf98],.fade-leave-active[data-v-56d6cf98]{transition:opacity .2s}.fade-enter-from[data-v-56d6cf98],.fade-leave-to[data-v-56d6cf98]{opacity:0}.manual-hint[data-v-56d6cf98]{background:#1e1e3a;line-height:1.4}.manual-expansion[data-v-56d6cf98]{background:#1e1e3a;border:1px solid #333;border-radius:4px;margin-top:6px;overflow:hidden}.manual-expansion[data-v-56d6cf98] .manual-expansion-header{min-height:32px;padding:4px 10px;font-size:12px}.manual-expansion[data-v-56d6cf98] .q-expansion-item__content,.manual-section-body[data-v-56d6cf98]{background:#1a1a2e}.manual-input[data-v-56d6cf98] .q-field__control{height:26px;min-height:26px;padding:0}.manual-input[data-v-56d6cf98] input{color:#e0e0e0;font-size:12px}.manual-input[data-v-56d6cf98] input::placeholder{color:#555}.manual-item[data-v-56d6cf98]{border-top:1px solid #ffffff0a}.manual-item[data-v-56d6cf98]:first-child{border-top:none}
@@ -1,2 +0,0 @@
1
- import{E as e,F as t,H as n,L as r,M as ee,N as te,Q as i,T as ne,U as a,_t as re,bt as o,d as s,f as c,g as l,h as u,l as d,p as f,r as ie,rt as p,u as m,v as ae,vt as oe,x as se}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{H as ce,R as le,U as ue,t as h}from"./QIcon-BJuyqdsT.js";import{r as g}from"./use-id-CuaR1RiE.js";import{s as de}from"./notifications-CG-oL2m2.js";import{t as _}from"./QBtn-a6jxWjmW.js";import{n as fe}from"./vue-i18n-BcfTCFFS.js";import{t as v}from"./QInput-Cm5-AGQ4.js";import{a as pe,h as me,l as he,s as ge}from"./index-DE3PxEjy.js";import{n as y,t as b}from"./QItemSection-5YpFpPDm.js";import{t as x}from"./QItemLabel-DrTxqTqV.js";import{t as S}from"./QTooltip-D_hSPb7r.js";import{t as _e}from"./QExpansionItem-BaQJkGb-.js";import{t as ve}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as ye}from"./QSpace-CLtL3aPy.js";import{t as be}from"./use-quasar-Sdcq6zzV.js";import{n as C,t as xe}from"./models-BMOYJtwv.js";import{t as Se}from"./QPage-ChUKoaKe.js";import{i as Ce,n as we,r as Te,t as Ee}from"./expand-template-Cu5GSLCM.js";var De={class:`create-inner`},Oe={class:`create-title text-center text-weight-bold q-mb-lg text-grey-3`},ke={class:`create-card rounded-borders`},Ae={class:`card-top-bar row items-center q-px-md q-py-xs`},je={class:`model-badge cursor-default row items-center q-gutter-xs`},Me={class:`text-indigo-3 text-weight-medium text-caption`},Ne={key:0,class:`notion-url-wrap`},Pe={key:0,class:`notion-error text-caption q-px-md q-pb-xs text-red-5`},Fe={key:1,class:`notion-valid text-caption q-px-md q-pb-xs text-green-4`},Ie={key:2,class:`notion-peek-choice q-px-md q-pb-sm`},Le={class:`text-caption text-grey-4 q-mb-sm`},Re={class:`row q-gutter-sm`},ze={class:`peek-card-text`},Be={class:`peek-card-title`},Ve={class:`peek-card-desc`},He={class:`peek-card-text`},Ue={class:`peek-card-title`},We={class:`peek-card-desc`},Ge={key:0,class:`sentry-url-wrap`},Ke={key:0,class:`sentry-error text-caption q-px-md q-pb-xs text-red-5`},qe={key:1,class:`sentry-valid text-caption q-px-md q-pb-xs text-red-4`},Je={class:`card-name-wrap`},Ye={class:`card-textarea-wrap`},Xe={class:`manual-hint q-px-md q-py-sm text-caption text-grey-6`},Ze={class:`q-pa-sm manual-section-body`},Qe={class:`row items-center q-gutter-sm q-mb-sm`},$e={class:`col text-caption text-grey-4`},et={class:`q-pa-sm manual-section-body`},tt={class:`row items-center q-gutter-sm q-mb-sm`},nt={class:`col text-caption text-grey-4`},rt={class:`card-bottom-bar`},it={class:`row q-col-gutter-xs q-px-xs`},at={key:0,class:`col-12 col-sm-6 col-md-3`},ot={class:`bottom-select-label row items-center no-wrap`},st={class:`col-12 col-sm-6 col-md-3`},ct={class:`bottom-select-label row items-center no-wrap`},lt={class:`col-12 col-sm-6 col-md-3`},ut={class:`bottom-select-label row items-center no-wrap`},dt={class:`col-12 col-md-3`},ft={class:`bottom-select-label row items-center no-wrap`},pt={class:`row q-col-gutter-xs q-pa-xs col-12 items-center justify-center`},mt={class:`col-12 col-md-auto`},ht={class:`col-12 col-md-auto`},gt={class:`col-12 col-md-auto`},_t={class:`row q-col-gutter-xs q-px-xs bottom-row-git`},vt={class:`col-12 col-md-4`},yt={key:0,class:`col-12 col-md-4`},bt={class:`bottom-select-label row items-center no-wrap`},xt={key:1,class:`col-12 col-md-4`},St={class:`bottom-select-label row items-center no-wrap`},Ct={class:`col-12 col-md-4`},wt={class:`bottom-select-label row items-center no-wrap`},Tt={class:`row justify-center q-px-sm q-py-sm`},Et={class:`create-hint text-center text-body2 q-mt-md text-grey-8`},w=ve(ae({__name:`CreatePage`,setup(ae){let ve=pe(),w=be(),Dt=he(),T=de(),{t:E}=fe(),Ot=i([]),D=i(``),O=i(``),kt=i(null),k=i(``),A=i(!1),j=i(`claude-opus-4-7`),At=i(`auto`),M=i(``),N=i(null),jt=i(`feature`),P=i(!1),Mt=i([]),F=i(`claude-code`),Nt=d(()=>Mt.value.find(e=>e.id===F.value)),Pt=d(()=>Mt.value.map(e=>({value:e.id,label:e.displayName}))),Ft=[{label:`feature/`,value:`feature`},{label:`fix/`,value:`fix`},{label:`hotfix/`,value:`hotfix`},{label:`chore/`,value:`chore`},{label:`refactor/`,value:`refactor`},{label:`docs/`,value:`docs`},{label:`test/`,value:`test`}],It=[`plan`,`bypass`,`strict`,`interactive`];function Lt(e){let t=e?T.getProjectByPath(e):void 0,n=t?.agentPermissionMode;if(typeof n==`string`&&It.includes(n))return n;let r=T.global.defaultPermissionMode;return It.includes(r)?r:r===`plan`?`plan`:t?.dangerouslySkipPermissions??T.global.dangerouslySkipPermissions??!0?`bypass`:`interactive`}let I=i(Lt(``)),Rt=d(()=>{switch(I.value){case`plan`:return`visibility`;case`bypass`:return`flash_on`;case`strict`:return`lock`;case`interactive`:return`security`}}),zt=d(()=>(Nt.value?.capabilities.permissionModes??It).map(e=>({value:e,label:E(`agentPermissionMode.${e}`),disabled:e===`plan`&&q.value}))),L=i([]),Bt=i([]),Vt=i(!1),Ht=i(!1);function Ut(e,t){t(()=>{Bt.value=e?L.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):L.value})}let Wt=me();function Gt(){return kt.value?.nativeEl??null}let{showSkills:Kt,selectedSkillIndex:R,groupedDropdown:qt,flatDropdown:z,fetchSkills:Jt,detectSlashFragment:Yt,replaceFragmentWith:Xt,closeDropdown:Zt}=Te(O,Gt,{excludeKoboCommands:!0});Jt(),n(O,async()=>{await e(),await Yt()});function Qt(e){if(e.type===`template`){let t=Wt.templates.find(t=>t.slug===e.name);if(!t)return;Xt(we(t.content,Ee({workspace:null,gitStats:null,sessionName:null}))),Zt();return}Xt(`/${e.name} `),Zt()}function $t(e){!Kt.value||z.value.length===0||(e.key===`ArrowDown`?(e.preventDefault(),R.value=(R.value+1)%z.value.length):e.key===`ArrowUp`?(e.preventDefault(),R.value=(R.value-1+z.value.length)%z.value.length):e.key===`Enter`&&!e.shiftKey&&!e.ctrlKey&&!e.metaKey?(e.preventDefault(),Qt(z.value[R.value])):e.key===`Escape`&&(e.preventDefault(),Zt()))}let en=d(()=>xe.map(e=>({label:E(e.i18nLabelKey),value:e.value,description:E(e.i18nDescriptionKey)})));function B(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}let tn=d(()=>[{label:B(E(`reasoning.auto`)),value:`auto`,description:E(`reasoning.autoDescription`)},{label:B(E(`reasoning.low`)),value:`low`,description:E(`reasoning.lowDescription`)},{label:B(E(`reasoning.medium`)),value:`medium`,description:E(`reasoning.mediumDescription`)},{label:B(E(`reasoning.high`)),value:`high`,description:E(`reasoning.highDescription`)},{label:B(E(`reasoning.xhigh`)),value:`xhigh`,description:E(`reasoning.xhighDescription`)},{label:B(E(`reasoning.max`)),value:`max`,description:E(`reasoning.maxDescription`)}]),V=d(()=>k.value.trim().startsWith(`https://www.notion.so/`)),nn=d(()=>/[?&]p=[0-9a-f]{32}(?:[&#]|$)/i.test(k.value)),H=i(`panel`);function rn(){let e=k.value.trim();return H.value===`parent`&&nn.value?e.replace(/([?&])p=[0-9a-f]{32}(?=[&#]|$)/i,`$1`).replace(/([?&])pm=[a-z]+(?=[&#]|$)/i,`$1`).replace(/[?&]+$/,``).replace(/\?&/,`?`):e}let U=i([]),W=i([]),G=i(``),an=i(``),on=d(()=>!A.value||!V.value);function sn(){let e=G.value.trim();e&&(U.value.push(e),G.value=``)}function cn(e){U.value.splice(e,1)}function ln(){let e=an.value.trim();e&&(W.value.push(e),an.value=``)}function un(e){W.value.splice(e,1)}function dn(){A.value=!A.value,A.value||(k.value=``)}let K=i(!1),q=i(!1);n(()=>q.value,e=>{e&&I.value!==`bypass`&&(I.value=`bypass`,w.notify({type:`info`,message:E(`agentPermissionMode.autoLoopLocked`),timeout:4e3}))});let J=i(``),Y=d(()=>/\/issues\/\d+/.test(J.value.trim()));function fn(){K.value=!K.value,K.value||(J.value=``)}let X=i(!1),Z=i(null),Q=i([]),pn=i(!1);async function mn(){if(!M.value.trim()){Q.value=[];return}pn.value=!0;try{Q.value=await Dt.fetchOrphanWorktrees(M.value.trim())}catch{Q.value=[]}finally{pn.value=!1}}function hn(){X.value=!X.value,X.value?(A.value=!1,k.value=``,K.value=!1,J.value=``,P.value=!0,mn()):Z.value=null}n(M,()=>{Z.value=null,X.value&&mn()}),n(Z,e=>{if(!e)return;let t=Q.value.find(t=>t.path===e);t&&(N.value=t.suggestedSourceBranch),P.value=!0});async function gn(e){if(!e.trim()){L.value=[],N.value=null;return}Vt.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();L.value=n.local??n.branches??[],L.value.length>0&&!N.value&&(N.value=L.value[0]??null)}catch{L.value=[],N.value=null}finally{Vt.value=!1}}function _n(e){let t=T.getProjectByPath(e);t&&(t.defaultSourceBranch&&(N.value=t.defaultSourceBranch),t.defaultModel?j.value=t.defaultModel:T.global.defaultModel&&(j.value=T.global.defaultModel)),I.value=Lt(e)}let $=null;n(M,e=>{$&&clearTimeout($),$=setTimeout(()=>{N.value=null,gn(e),_n(e)},500)});function vn(e,t){t(()=>{Ot.value=T.projectPaths.filter(t=>t.toLowerCase().includes(e.toLowerCase()))})}ee(async()=>{await T.fetchSettings(),I.value=Lt(M.value);try{let e=await fetch(`/api/engines`);e.ok&&(Mt.value=await e.json())}catch{}}),te(()=>{$&&clearTimeout($)});function yn(e){return e.normalize(`NFD`).replace(/[\u0300-\u036f]/g,``).toLowerCase().replace(/[^a-z0-9\s-]/g,``).trim().replace(/\s+/g,`-`).replace(/-+/g,`-`).substring(0,50)}function bn(){return D.value.trim()?D.value.trim().substring(0,80):!A.value&&!K.value&&O.value.trim()&&(O.value.trim().split(`
2
- `)[0]??``).substring(0,80)||`workspace`}function xn(e){let t=(e.split(`/`).pop()??``).split(`-`);t.length>1&&/^[0-9a-f]{12,}$/i.test(t[t.length-1])&&t.pop();let n=t.join(`-`).toLowerCase(),r=n.match(/tk-(\d+)/);if(r){let e=`TK-${r[1]}`,t=n.replace(/tk-\d+/i,``).replace(/-+/g,`-`).replace(/^-|-$/g,``).substring(0,40);return t?`${e}--${t}`:e}return n.substring(0,50)||`task-${Date.now()}`}function Sn(){return A.value&&!V.value?E(`createPage.validationNotionUrl`):K.value&&!Y.value?E(`createPage.sentryValidation`):!A.value&&!K.value&&!O.value.trim()?E(`createPage.validationDescription`):!A.value&&!K.value&&(!bn()||bn()===`workspace`)&&!D.value.trim()&&!O.value.trim()?E(`createPage.validationName`):M.value.trim()?N.value?null:E(`createPage.validationBranch`):E(`createPage.validationPath`)}async function Cn(){let e=Sn();if(e){w.notify({type:`negative`,message:e,position:`top`});return}if(X.value&&!Z.value){w.notify({type:`negative`,message:E(`createPage.pickWorktreeRequired`),position:`top`});return}Ht.value=!0;try{let e=bn(),t;t=A.value&&V.value?xn(rn()):e===`workspace`?`task-${Date.now()}`:yn(e);let n=`${jt.value}/${t}`,r={name:e,projectPath:M.value.trim(),sourceBranch:N.value,...X.value&&Z.value?{worktreePath:Z.value,skipSetupScript:!0}:{workingBranch:n},engine:F.value,model:j.value,reasoningEffort:At.value,...A.value&&V.value?{notionUrl:rn()}:{},...K.value&&Y.value?{sentryUrl:J.value.trim()}:{},...on.value&&U.value.length>0?{tasks:U.value}:{},...on.value&&W.value.length>0?{acceptanceCriteria:W.value}:{},...P.value&&!X.value?{skipSetupScript:!0}:{},...O.value.trim()?{description:O.value.trim()}:{},...q.value?{autoLoop:!0}:{},agentPermissionMode:q.value&&I.value===`plan`?`bypass`:I.value},ee=await Dt.createWorkspace(r);ge().subscribe(ee.id),Dt.selectWorkspace(ee.id),ve.push({name:`workspace`,params:{id:ee.id}})}catch{w.notify({type:`negative`,message:E(`createPage.errorCreating`),position:`top`})}finally{Ht.value=!1}}return(e,n)=>(t(),s(Se,{class:`create-page flex flex-center column`},{default:a(()=>[m(`div`,De,[m(`div`,Oe,o(e.$t(`createPage.title`)),1),m(`div`,ke,[m(`div`,Ae,[m(`span`,je,[l(h,{name:`auto_awesome`,size:`14px`,color:`indigo-4`}),m(`span`,Me,o(Nt.value?.displayName??e.$t(`createPage.claudeCode`)),1)]),l(ye),l(_,{flat:``,dense:``,"no-caps":``,size:`sm`,color:A.value?`green-4`:`grey-5`,class:`notion-toggle-btn text-caption rounded-borders`,disable:X.value,onClick:dn},{default:a(()=>[l(h,{name:`description`,size:`14px`,class:`q-mr-xs`}),u(` `+o(A.value?e.$t(`createPage.notionEnabled`):e.$t(`createPage.importNotion`)),1)]),_:1},8,[`color`,`disable`]),l(_,{flat:``,dense:``,"no-caps":``,size:`sm`,color:K.value?`red-4`:`grey-5`,class:`sentry-toggle-btn text-caption rounded-borders q-ml-sm`,disable:X.value,onClick:fn},{default:a(()=>[l(h,{name:`bug_report`,size:`14px`,class:`q-mr-xs`}),u(` `+o(K.value?e.$t(`createPage.sentryEnabled`):e.$t(`createPage.importSentry`)),1)]),_:1},8,[`color`,`disable`])]),l(g,{color:`grey-9`}),l(le,{name:`slide`},{default:a(()=>[A.value?(t(),f(`div`,Ne,[l(v,{modelValue:k.value,"onUpdate:modelValue":n[0]||=e=>k.value=e,borderless:``,dense:``,placeholder:e.$t(`createPage.notionPlaceholder`),class:`notion-url-input`,"input-class":`notion-url-input-inner`},{prepend:a(()=>[l(h,{name:`link`,size:`16px`,color:V.value?`green-4`:`grey-6`},null,8,[`color`])]),_:1},8,[`modelValue`,`placeholder`]),k.value.trim()&&!V.value?(t(),f(`div`,Pe,o(e.$t(`createPage.notionValidation`)),1)):c(``,!0),V.value?(t(),f(`div`,Fe,o(e.$t(`createPage.notionAutoExtract`)),1)):c(``,!0),V.value&&nn.value?(t(),f(`div`,Ie,[m(`div`,Le,[l(h,{name:`info`,size:`14px`,color:`indigo-4`,class:`q-mr-xs`}),u(` `+o(e.$t(`createPage.notionPanelChoiceLabel`)),1)]),m(`div`,Re,[m(`button`,{type:`button`,class:re([`peek-card col`,{"peek-card--active":H.value===`panel`}]),onClick:n[1]||=e=>H.value=`panel`},[l(h,{name:`article`,size:`22px`,class:`peek-card-icon`}),m(`div`,ze,[m(`div`,Be,o(e.$t(`createPage.notionPanelOption`)),1),m(`div`,Ve,o(e.$t(`createPage.notionPanelOptionDesc`)),1)]),H.value===`panel`?(t(),s(h,{key:0,name:`check_circle`,size:`18px`,color:`indigo-4`,class:`peek-card-check`})):c(``,!0)],2),m(`button`,{type:`button`,class:re([`peek-card col`,{"peek-card--active":H.value===`parent`}]),onClick:n[2]||=e=>H.value=`parent`},[l(h,{name:`folder_open`,size:`22px`,class:`peek-card-icon`}),m(`div`,He,[m(`div`,Ue,o(e.$t(`createPage.notionParentOption`)),1),m(`div`,We,o(e.$t(`createPage.notionParentOptionDesc`)),1)]),H.value===`parent`?(t(),s(h,{key:0,name:`check_circle`,size:`18px`,color:`indigo-4`,class:`peek-card-check`})):c(``,!0)],2)])])):c(``,!0)])):c(``,!0)]),_:1}),A.value?(t(),s(g,{key:0,color:`grey-9`})):c(``,!0),l(le,{name:`slide`},{default:a(()=>[K.value?(t(),f(`div`,Ge,[l(v,{modelValue:J.value,"onUpdate:modelValue":n[3]||=e=>J.value=e,borderless:``,dense:``,placeholder:e.$t(`createPage.sentryPlaceholder`),class:`sentry-url-input`,"input-class":`sentry-url-input-inner`},{prepend:a(()=>[l(h,{name:`link`,size:`16px`,color:Y.value?`red-4`:`grey-6`},null,8,[`color`])]),_:1},8,[`modelValue`,`placeholder`]),J.value.trim()&&!Y.value?(t(),f(`div`,Ke,o(e.$t(`createPage.sentryValidation`)),1)):c(``,!0),Y.value?(t(),f(`div`,qe,o(e.$t(`createPage.sentryAutoExtract`)),1)):c(``,!0)])):c(``,!0)]),_:1}),K.value?(t(),s(g,{key:1,color:`grey-9`})):c(``,!0),m(`div`,Je,[l(v,{modelValue:D.value,"onUpdate:modelValue":n[4]||=e=>D.value=e,borderless:``,dense:``,placeholder:A.value&&V.value?e.$t(`createPage.workspaceName`):e.$t(`createPage.workspaceNamePlaceholder`),class:`name-input`,"input-class":`name-input-inner`},null,8,[`modelValue`,`placeholder`])]),l(g,{color:`grey-9`}),m(`div`,Ye,[l(v,{ref_key:`descriptionRef`,ref:kt,modelValue:O.value,"onUpdate:modelValue":n[5]||=e=>O.value=e,type:`textarea`,borderless:``,autogrow:``,rows:3,placeholder:A.value?e.$t(`createPage.instructions`):e.$t(`createPage.instructionsPlaceholder`),class:`create-textarea`,"input-class":`create-textarea-input`,onKeydown:[$t,ce(ue(Cn,[`ctrl`]),[`enter`]),ce(ue(Cn,[`meta`]),[`enter`])]},null,8,[`modelValue`,`placeholder`,`onKeydown`]),p(Kt)&&p(z).length>0?(t(),s(Ce,{key:0,class:`create-slash-popup`,"grouped-dropdown":p(qt),"flat-dropdown":p(z),"selected-index":p(R),onSelect:Qt},null,8,[`grouped-dropdown`,`flat-dropdown`,`selected-index`])):c(``,!0)]),l(g,{color:`grey-9`}),on.value?(t(),f(ie,{key:2},[m(`div`,Xe,o(e.$t(`createPage.manualHint`)),1),l(_e,{dark:``,dense:``,label:e.$t(`createPage.tasks`,{count:U.value.length}),"header-class":`text-grey-4 manual-expansion-header`,class:`manual-expansion q-mx-sm`},{default:a(()=>[m(`div`,Ze,[m(`div`,Qe,[l(v,{modelValue:G.value,"onUpdate:modelValue":n[6]||=e=>G.value=e,dark:``,dense:``,borderless:``,placeholder:e.$t(`createPage.addTask`),class:`col manual-input`,"input-class":`manual-input-inner`,onKeydown:ce(ue(sn,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`]),l(_,{flat:``,dense:``,round:``,icon:`add`,color:`indigo-4`,disable:!G.value.trim(),onClick:sn},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`tooltip.addTask`)),1)]),_:1})]),_:1},8,[`disable`])]),(t(!0),f(ie,null,r(U.value,(n,r)=>(t(),f(`div`,{key:`task-${r}`,class:`row items-center q-py-xs manual-item`},[m(`span`,$e,o(n),1),l(_,{flat:``,dense:``,round:``,icon:`close`,size:`xs`,color:`grey-6`,onClick:e=>cn(r)},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`tooltip.removeTask`)),1)]),_:1})]),_:1},8,[`onClick`])]))),128))])]),_:1},8,[`label`]),l(_e,{dark:``,dense:``,label:e.$t(`createPage.acceptanceCriteria`,{count:W.value.length}),"header-class":`text-grey-4 manual-expansion-header`,class:`manual-expansion q-mx-sm q-mb-sm`},{default:a(()=>[m(`div`,et,[m(`div`,tt,[l(v,{modelValue:an.value,"onUpdate:modelValue":n[7]||=e=>an.value=e,dark:``,dense:``,borderless:``,placeholder:e.$t(`createPage.addCriterion`),class:`col manual-input`,"input-class":`manual-input-inner`,onKeydown:ce(ue(ln,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`]),l(_,{flat:``,dense:``,round:``,icon:`add`,color:`indigo-4`,disable:!an.value.trim(),onClick:ln},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`tooltip.addCriterion`)),1)]),_:1})]),_:1},8,[`disable`])]),(t(!0),f(ie,null,r(W.value,(n,r)=>(t(),f(`div`,{key:`crit-${r}`,class:`row items-center q-py-xs manual-item`},[m(`span`,nt,o(n),1),l(_,{flat:``,dense:``,round:``,icon:`close`,size:`xs`,color:`grey-6`,onClick:e=>un(r)},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`tooltip.removeCriterion`)),1)]),_:1})]),_:1},8,[`onClick`])]))),128))])]),_:1},8,[`label`]),l(g,{color:`grey-9`})],64)):c(``,!0),m(`div`,rt,[m(`div`,it,[Pt.value.length>0?(t(),f(`div`,at,[l(C,{modelValue:F.value,"onUpdate:modelValue":n[8]||=e=>F.value=e,options:Pt.value,dense:``,borderless:``,class:`bottom-select rounded-borders`,"hide-dropdown-icon":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`},{selected:a(()=>[m(`span`,ot,[l(h,{name:`hub`,size:`12px`,color:`grey-5`,class:`q-mr-xs`}),u(` `+o(Pt.value.find(e=>e.value===F.value)?.label??F.value)+` `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`engine.select`)),1)]),_:1})]),_:1},8,[`modelValue`,`options`])])):c(``,!0),m(`div`,st,[l(C,{modelValue:j.value,"onUpdate:modelValue":n[9]||=e=>j.value=e,options:en.value,dense:``,borderless:``,class:`bottom-select rounded-borders model-select`,"hide-dropdown-icon":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`},{selected:a(()=>[m(`span`,ct,[u(o(en.value.find(e=>e.value===j.value)?.label??j.value)+` `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),option:a(({opt:e,itemProps:t})=>[l(y,ne(t,{class:`model-option`}),{default:a(()=>[l(b,null,{default:a(()=>[l(x,{class:`text-white`},{default:a(()=>[u(o(e.label),1)]),_:2},1024),l(x,{caption:``,class:`text-grey-5`},{default:a(()=>[u(o(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`])]),m(`div`,lt,[l(C,{modelValue:At.value,"onUpdate:modelValue":n[10]||=e=>At.value=e,options:tn.value,dense:``,borderless:``,class:`bottom-select rounded-borders`,"hide-dropdown-icon":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`},{selected:a(()=>[m(`span`,ut,[l(h,{name:`psychology`,size:`12px`,color:`grey-5`,class:`q-mr-xs`}),u(` `+o(tn.value.find(e=>e.value===At.value)?.label??At.value)+` `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),option:a(({opt:e,itemProps:t})=>[l(y,oe(se(t)),{default:a(()=>[l(b,null,{default:a(()=>[l(x,{class:`text-white`},{default:a(()=>[u(o(e.label),1)]),_:2},1024),l(x,{caption:``,class:`text-grey-5`},{default:a(()=>[u(o(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`])]),m(`div`,dt,[l(C,{modelValue:I.value,"onUpdate:modelValue":n[11]||=e=>I.value=e,options:zt.value,disable:q.value,dense:``,borderless:``,class:`bottom-select rounded-borders`,"hide-dropdown-icon":``,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,"option-disable":e=>e.disabled===!0},{selected:a(()=>[m(`span`,ft,[l(h,{name:Rt.value,size:`12px`,color:`amber-6`,class:`q-mr-xs`},null,8,[`name`]),u(` `+o(zt.value.find(e=>e.value===I.value)?.label??I.value)+` `,1),q.value?c(``,!0):(t(),s(h,{key:0,name:`expand_more`,size:`12px`,color:`grey-5`}))])]),default:a(()=>[l(S,null,{default:a(()=>[u(o(q.value?e.$t(`agentPermissionMode.autoLoopLocked`):e.$t(`agentPermissionMode.tooltip`)),1)]),_:1})]),_:1},8,[`modelValue`,`options`,`disable`,`option-disable`])])]),m(`div`,pt,[m(`div`,mt,[l(_,{flat:``,dense:``,size:`sm`,"no-caps":``,icon:q.value?`autorenew`:`sync_disabled`,color:q.value?`amber-4`:`grey-5`,label:e.$t(`autoLoop.startInMode`),class:`skip-setup-btn`,onClick:n[12]||=e=>q.value=!q.value},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`autoLoop.startInMode`)),1)]),_:1})]),_:1},8,[`icon`,`color`,`label`])]),m(`div`,ht,[l(_,{flat:``,dense:``,size:`sm`,"no-caps":``,icon:P.value?`play_disabled`:`play_circle`,color:P.value?`orange-4`:`grey-5`,label:e.$t(`createPage.skipSetupScript`),class:`skip-setup-btn`,onClick:n[13]||=e=>P.value=!P.value},{default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`createPage.skipSetupScript`)),1)]),_:1})]),_:1},8,[`icon`,`color`,`label`])]),m(`div`,gt,[l(_,{flat:``,dense:``,size:`sm`,"no-caps":``,icon:`folder_open`,color:X.value?`cyan-4`:`grey-5`,label:X.value?e.$t(`createPage.attachWorktreeEnabled`):e.$t(`createPage.attachWorktreeToggle`),class:`skip-setup-btn`,onClick:hn},null,8,[`color`,`label`])])]),m(`div`,_t,[m(`div`,vt,[l(C,{modelValue:M.value,"onUpdate:modelValue":n[14]||=e=>M.value=e,options:Ot.value,dense:``,borderless:``,"use-input":``,"fill-input":``,"hide-selected":``,"input-debounce":`0`,"new-value-mode":`add`,class:`bottom-select rounded-borders repo-select`,"hide-dropdown-icon":``,"input-class":M.value?``:`repo-input-empty`,placeholder:e.$t(`createPage.projectPath`),behavior:p(T).projectPaths.length>0?`menu`:`dialog`,onFilter:vn,onInputValue:n[15]||=e=>{M.value=e}},{prepend:a(()=>[l(h,{name:`folder`,size:`14px`,color:`grey-5`})]),"no-option":a(()=>[l(y,null,{default:a(()=>[l(b,{class:`text-grey-6 text-caption`},{default:a(()=>[u(o(e.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`input-class`,`placeholder`,`behavior`])]),X.value?c(``,!0):(t(),f(`div`,yt,[l(C,{modelValue:jt.value,"onUpdate:modelValue":n[16]||=e=>jt.value=e,options:Ft,"emit-value":``,"map-options":``,dense:``,borderless:``,class:`bottom-select rounded-borders branch-type-select`,"hide-dropdown-icon":``},{selected:a(()=>[m(`span`,bt,[l(h,{name:`account_tree`,size:`12px`,color:`grey-5`,class:`q-mr-xs`}),u(` `+o(jt.value)+`/ `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),default:a(()=>[l(S,null,{default:a(()=>[u(o(e.$t(`createPage.branchType`)),1)]),_:1})]),_:1},8,[`modelValue`])])),X.value?(t(),f(`div`,xt,[l(C,{modelValue:Z.value,"onUpdate:modelValue":n[17]||=e=>Z.value=e,options:Q.value,"option-label":`branch`,"option-value":`path`,"emit-value":``,"map-options":``,"use-input":``,dense:``,borderless:``,class:`bottom-select rounded-borders worktree-select`,"hide-dropdown-icon":``,loading:pn.value,disable:!M.value.trim()||pn.value},{selected:a(()=>[m(`span`,St,[l(h,{name:`folder_open`,size:`12px`,color:`cyan-5`,class:`q-mr-xs`}),u(` `+o(Z.value?Q.value.find(e=>e.path===Z.value)?.branch??Z.value:e.$t(`createPage.worktreePickerLabel`))+` `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),option:a(e=>[l(y,oe(se(e.itemProps)),{default:a(()=>[l(b,null,{default:a(()=>[l(x,null,{default:a(()=>[u(o(e.opt.branch),1)]),_:2},1024),l(x,{caption:``},{default:a(()=>[u(o(e.opt.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),"no-option":a(()=>[l(y,null,{default:a(()=>[l(b,{class:`text-grey-6 text-caption`},{default:a(()=>[u(o(M.value.trim()?e.$t(`createPage.noOrphanWorktrees`):e.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])])):c(``,!0),m(`div`,Ct,[l(C,{modelValue:N.value,"onUpdate:modelValue":n[18]||=e=>N.value=e,options:Bt.value,dense:``,borderless:``,class:`bottom-select rounded-borders branch-select`,"hide-dropdown-icon":``,"use-input":``,"input-debounce":`0`,loading:Vt.value,disable:!M.value.trim()||Vt.value,onFilter:Ut},{selected:a(()=>[m(`span`,wt,[l(h,{name:`call_split`,size:`12px`,color:`grey-5`,class:`q-mr-xs`}),u(` `+o(N.value??e.$t(`createPage.branch`))+` `,1),l(h,{name:`expand_more`,size:`12px`,color:`grey-5`})])]),"no-option":a(()=>[l(y,null,{default:a(()=>[l(b,{class:`text-grey-6 text-caption`},{default:a(()=>[u(o(M.value.trim()?e.$t(`createPage.noBranches`):e.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])])])]),m(`div`,Tt,[l(_,{label:e.$t(`createPage.create`),"no-caps":``,unelevated:``,class:`create-btn text-weight-bold rounded-borders`,loading:Ht.value,disable:Ht.value||X.value&&!Z.value,onClick:Cn},null,8,[`label`,`loading`,`disable`])])]),m(`div`,Et,o(A.value?e.$t(`createPage.notionExtractHint`):e.$t(`createPage.notionImportHint`)),1)])]),_:1}))}}),[[`__scopeId`,`data-v-56d6cf98`]]);export{w as default};
@@ -1,7 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/editor.main-Bn6fpPLF.js","assets/index-DE3PxEjy.js","assets/vue-i18n-BcfTCFFS.js","assets/runtime-core.esm-bundler-C3IgBgY5.js","assets/QIcon-BJuyqdsT.js","assets/use-id-CuaR1RiE.js","assets/QBtn-a6jxWjmW.js","assets/QCheckbox-D5jfsxLV.js","assets/use-checkbox-D7zmRxGI.js","assets/QInput-Cm5-AGQ4.js","assets/QRadio-B3aKjCVu.js","assets/QToggle-1-N9qWq4.js","assets/notifications-CG-oL2m2.js","assets/index-eX_lKHSg.css","assets/editor.api-wizjkvCK.js","assets/editor-COGk2gAX.css","assets/monaco.contribution-DSSRKV2r.js","assets/editor-CS3NEPi9.css"])))=>i.map(i=>d[i]);
2
- import{F as e,H as t,L as n,M as r,N as i,Q as a,S as o,U as s,W as c,_t as l,bt as u,d,f,g as p,h as m,l as h,p as g,r as _,rt as v,u as y,v as b,yt as x}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{P as S,a as C,t as w}from"./QIcon-BJuyqdsT.js";import{r as ee}from"./use-id-CuaR1RiE.js";import{n as T,t as E}from"./QBtn-a6jxWjmW.js";import{n as te}from"./vue-i18n-BcfTCFFS.js";import{i as D,o as O,t as k}from"./QInput-Cm5-AGQ4.js";import{l as ne,r as re,s as ie}from"./index-DE3PxEjy.js";import{t as ae}from"./QSpinnerDots-CszPQQ9J.js";import{n as oe,t as se}from"./QItemSection-5YpFpPDm.js";import{t as A}from"./QTooltip-D_hSPb7r.js";import{t as ce}from"./QScrollArea-usfgatuS.js";import{n as j,t as M}from"./marked.esm-D4t0_2pc.js";import{t as N}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as P}from"./QBadge-DWH42dbo.js";import{t as le}from"./QSpace-CLtL3aPy.js";import{i as F,n as ue,r as de,t as fe}from"./build-path-tree-w3SEPAbh.js";import{t as pe}from"./QList-D0FtnQJI.js";import{t as me}from"./QMenu-DgWZe7Uh.js";import{t as he}from"./ClosePopup-BP025_cK.js";import{t as ge}from"./use-quasar-Sdcq6zzV.js";var I=S({name:`QBtnToggle`,props:{...O,modelValue:{required:!0},options:{type:Array,required:!0,validator:e=>e.every(e=>(`label`in e||`icon`in e||`slot`in e)&&`value`in e)},color:String,textColor:String,toggleColor:{type:String,default:`primary`},toggleTextColor:String,outline:Boolean,flat:Boolean,unelevated:Boolean,rounded:Boolean,push:Boolean,glossy:Boolean,size:String,padding:String,noCaps:Boolean,noWrap:Boolean,dense:Boolean,readonly:Boolean,disable:Boolean,stack:Boolean,stretch:Boolean,spread:Boolean,clearable:Boolean,ripple:{type:[Boolean,Object],default:!0}},emits:[`update:modelValue`,`clear`,`click`],setup(e,{slots:t,emit:n}){let r=h(()=>e.options.find(t=>t.value===e.modelValue)!==void 0),i=D(h(()=>({type:`hidden`,name:e.name,value:e.modelValue}))),a=h(()=>T(e)),s=h(()=>({rounded:e.rounded,dense:e.dense,...a.value})),c=h(()=>e.options.map((t,n)=>{let{attrs:r,value:i,slot:a,...o}=t;return{slot:a,props:{key:n,"aria-pressed":i===e.modelValue?`true`:`false`,...r,...o,...s.value,disable:e.disable===!0||o.disable===!0,color:i===e.modelValue?u(o,`toggleColor`):u(o,`color`),textColor:i===e.modelValue?u(o,`toggleTextColor`):u(o,`textColor`),noCaps:u(o,`noCaps`)===!0,noWrap:u(o,`noWrap`)===!0,size:u(o,`size`),padding:u(o,`padding`),ripple:u(o,`ripple`),stack:u(o,`stack`)===!0,stretch:u(o,`stretch`)===!0,onClick(e){l(i,t,e)}}}}));function l(t,r,i){e.readonly!==!0&&(e.modelValue===t?e.clearable===!0&&(n(`update:modelValue`,null,null),n(`clear`)):n(`update:modelValue`,t,r),n(`click`,i))}function u(t,n){return t[n]===void 0?e[n]:t[n]}function d(){let n=c.value.map(e=>o(E,e.props,e.slot===void 0?void 0:t[e.slot]));return e.name!==void 0&&e.disable!==!0&&r.value===!0&&i(n,`push`),C(t.default,n)}return()=>o(F,{class:`q-btn-toggle`,...a.value,rounded:e.rounded,stretch:e.stretch,glossy:e.glossy,spread:e.spread},d)}});function L(e){if(!e.filePath||e.filePath.startsWith(`/`))throw Error(`Invalid filePath: must be non-empty POSIX path relative to workspace root`);return{id:crypto.randomUUID(),filePath:e.filePath,line:e.line,content:e.content,createdAt:new Date().toISOString()}}function R(e){let t=e.split(`
3
- `);return t.length===1?e:t.map((e,t)=>t===0?e:` ${e}`).join(`
4
- `)}function z(e){let{comments:t,globalMessage:n}=e;if(t.length===0)return`## Code review\n\n${n}`;let r=new Map;for(let e of t){let t=r.get(e.filePath)??[];t.push(e),r.set(e.filePath,t)}for(let e of r.values())e.sort((e,t)=>e.line-t.line||e.createdAt.localeCompare(t.createdAt));let i=Array.from(r.keys()).sort(),a=i.map(e=>`### \`${e}\`\n\n${r.get(e).map(e=>`- **L${e.line}** : ${R(e.content)}`).join(`
5
- `)}`),o=i.length,s=`_${t.length} comment${t.length===1?``:`s`} across ${o} file${o===1?``:`s`}. Address them and ping me back when done._`;return`## Code review — please address the following${n?`\n\n${n}`:``}\n\n${a.join(`
6
-
7
- `)}\n\n---\n${s}`}var B=300;function V(e){return`kobo:review-draft:${e}`}function _e(e){let t=localStorage.getItem(V(e));if(!t)return{comments:[],globalMessage:``};try{let e=JSON.parse(t);return{comments:Array.isArray(e.comments)?e.comments:[],globalMessage:typeof e.globalMessage==`string`?e.globalMessage:``}}catch{return{comments:[],globalMessage:``}}}function ve(e,t){let n=a(_e(e)),r=null;function i(){r!==null&&clearTimeout(r),r=setTimeout(()=>{r=null;try{localStorage.setItem(V(e),JSON.stringify(n.value))}catch(e){console.warn(`[review-draft] persist failed:`,e)}},B)}function o(){if(r!==null){clearTimeout(r),r=null;try{localStorage.setItem(V(e),JSON.stringify(n.value))}catch(e){console.warn(`[review-draft] flush failed:`,e)}}}function s(e){let t=L(e);return n.value.comments.push(t),i(),t}function c(e,t){let r=n.value.comments.find(t=>t.id===e);r&&(r.content=t,i())}function l(e){n.value.comments=n.value.comments.filter(t=>t.id!==e),i()}function u(e){n.value.globalMessage=e,i()}function d(){n.value={comments:[],globalMessage:``},r!==null&&(clearTimeout(r),r=null),localStorage.removeItem(V(e))}async function f(r){if(n.value.comments.length===0&&n.value.globalMessage.trim()===``)return{ok:!1,error:`Draft is empty`};o();let i=z(n.value);try{await t.sendChatMessage(e,i,r)}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}return d(),{ok:!0}}return{draft:n,addComment:s,updateComment:c,deleteComment:l,setGlobalMessage:u,clearDraft:d,flush:o,submit:f}}var ye={class:`review-comment-block`},H={class:`comment-actions q-mt-xs`},be=[`innerHTML`],U={class:`comment-footer`},xe={class:`comment-time text-caption text-grey-7`},Se={class:`comment-actions q-mt-xs`},Ce=N(b({__name:`ReviewCommentBlock`,props:{comments:{},startInAddMode:{type:Boolean}},emits:[`add`,`update`,`delete`,`dismissEmpty`],setup(t,{emit:r}){let i=t,o=r,{t:c}=te(),h=ge(),v=a(null),b=a(``),x=a(i.startInAddMode===!0),S=a(``);function C(e){let t=M.parse(e,{async:!1,breaks:!0,gfm:!0});return j.sanitize(t)}function w(e){let t=Date.now()-new Date(e).getTime(),n=Math.floor(t/6e4);if(n<1)return c(`common.justNow`);if(n<60)return c(`common.minutesAgo`,{count:n});let r=Math.floor(n/60);return r<24?c(`common.hoursAgo`,{count:r}):c(`common.daysAgo`,{count:Math.floor(r/24)})}function ee(e){v.value=e.id,b.value=e.content}function T(){v.value=null,b.value=``}function D(e){let t=b.value.trim();t&&(o(`update`,e,t),v.value=null,b.value=``)}function O(e){h.dialog({title:c(`diff.deleteComment`),message:c(`diff.deleteCommentConfirm`),cancel:!0,persistent:!0,ok:{label:c(`diff.deleteComment`),color:`negative`,flat:!1,unelevated:!0}}).onOk(()=>{o(`delete`,e)})}function ne(){x.value=!1,S.value=``,i.comments.length===0&&o(`dismissEmpty`)}function re(){let e=S.value.trim();e&&(o(`add`,e),x.value=!1,S.value=``)}return(r,i)=>(e(),g(`div`,ye,[(e(!0),g(_,null,n(t.comments,(t,n)=>(e(),g(`div`,{key:t.id,class:l([`comment-thread-item`,{"with-separator":n>0}])},[v.value===t.id?(e(),g(_,{key:0},[p(k,{modelValue:b.value,"onUpdate:modelValue":i[0]||=e=>b.value=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,autofocus:``,class:`comment-textarea`,placeholder:r.$t(`diff.commentPlaceholder`)},null,8,[`modelValue`,`placeholder`]),y(`div`,H,[p(E,{flat:``,dense:``,size:`sm`,label:r.$t(`common.cancel`),onClick:T},null,8,[`label`]),p(E,{unelevated:``,dense:``,size:`sm`,color:`primary`,label:r.$t(`common.save`),onClick:e=>D(t.id)},null,8,[`label`,`onClick`])])],64)):(e(),g(_,{key:1},[y(`div`,{class:`comment-content`,innerHTML:C(t.content)},null,8,be),y(`div`,U,[y(`span`,xe,u(w(t.createdAt)),1),p(E,{flat:``,dense:``,round:``,size:`xs`,icon:`edit`,color:`grey-5`,onClick:e=>ee(t)},{default:s(()=>[p(A,null,{default:s(()=>[m(u(r.$t(`diff.editComment`)),1)]),_:1})]),_:1},8,[`onClick`]),p(E,{flat:``,dense:``,round:``,size:`xs`,icon:`delete`,color:`grey-5`,onClick:e=>O(t.id)},{default:s(()=>[p(A,null,{default:s(()=>[m(u(r.$t(`diff.deleteComment`)),1)]),_:1})]),_:1},8,[`onClick`])])],64))],2))),128)),x.value?(e(),g(_,{key:0},[p(k,{modelValue:S.value,"onUpdate:modelValue":i[1]||=e=>S.value=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,autofocus:``,class:`comment-textarea q-mt-sm`,placeholder:r.$t(`diff.commentPlaceholder`)},null,8,[`modelValue`,`placeholder`]),y(`div`,Se,[p(E,{flat:``,dense:``,size:`sm`,label:r.$t(`common.cancel`),onClick:ne},null,8,[`label`]),p(E,{unelevated:``,dense:``,size:`sm`,color:`primary`,disable:!S.value.trim(),label:r.$t(`diff.addComment`),onClick:re},null,8,[`disable`,`label`])])],64)):t.comments.length>0?(e(),d(E,{key:1,flat:``,dense:``,size:`sm`,icon:`reply`,label:r.$t(`diff.replyComment`),class:`reply-btn q-mt-xs`,onClick:i[2]||=e=>x.value=!0},null,8,[`label`])):f(``,!0)]))}}),[[`__scopeId`,`data-v-01847acf`]]),W={class:`review-draft-panel q-pa-sm`},we={class:`text-caption text-uppercase text-weight-bold text-grey-6 q-mb-sm`,style:{"letter-spacing":`0.05em`}},G={key:0,class:`text-caption text-grey-7 q-pa-sm`},Te=[`onClick`],K={style:{"font-family":`'Roboto Mono', monospace`,"font-size":`11px`}},Ee=[`onClick`],De={class:`text-grey-6 q-mr-xs`,style:{"font-family":`monospace`}},Oe={class:`text-grey-3 ellipsis`},ke={class:`global-message-box q-mt-sm`},Ae=N(b({__name:`ReviewDraftPanel`,props:{comments:{},globalMessage:{},submitting:{type:Boolean}},emits:[`updateGlobal`,`jumpToFile`,`jumpToComment`,`submit`],setup(t,{emit:r}){let i=t,a=r,o=h(()=>i.comments.length),c=h(()=>{let e=new Map;for(let t of i.comments){let n=e.get(t.filePath)??[];n.push(t),e.set(t.filePath,n)}for(let t of e.values())t.sort((e,t)=>e.line-t.line||e.createdAt.localeCompare(t.createdAt));return Array.from(e.entries()).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>({filePath:e,comments:t}))});function l(e){let t=e.replace(/\n+/g,` `).trim();return t.length>80?`${t.slice(0,77)}…`:t}return(r,i)=>(e(),g(`div`,W,[y(`div`,we,u(r.$t(`diff.reviewDraft`)),1),p(ce,{class:`comments-scroll`,style:{height:`calc(100% - 220px)`}},{default:s(()=>[c.value.length===0?(e(),g(`div`,G,u(r.$t(`diff.reviewEmpty`)),1)):f(``,!0),(e(!0),g(_,null,n(c.value,t=>(e(),g(`div`,{key:t.filePath,class:`file-group q-mb-sm`},[y(`div`,{class:`file-group-header text-grey-3 cursor-pointer ellipsis`,onClick:e=>a(`jumpToFile`,t.filePath)},[p(w,{name:`description`,size:`14px`,color:`indigo-4`,class:`q-mr-xs`}),y(`span`,K,u(t.filePath),1),p(P,{label:String(t.comments.length),color:`indigo-8`,"text-color":`white`,class:`q-ml-xs`},null,8,[`label`])],8,Te),(e(!0),g(_,null,n(t.comments,t=>(e(),g(`div`,{key:t.id,class:`draft-line cursor-pointer`,onClick:e=>a(`jumpToComment`,t.filePath,t.line)},[y(`span`,De,`L`+u(t.line),1),y(`span`,Oe,u(l(t.content)),1)],8,Ee))),128))]))),128))]),_:1}),y(`div`,ke,[p(k,{"model-value":t.globalMessage,type:`textarea`,autogrow:``,rows:`3`,dense:``,dark:``,outlined:``,placeholder:r.$t(`diff.reviewGlobalPlaceholder`),class:`global-textarea`,"onUpdate:modelValue":i[0]||=e=>a(`updateGlobal`,String(e))},null,8,[`model-value`,`placeholder`]),p(E,{unelevated:``,"no-caps":``,color:`primary`,class:`full-width q-mt-sm`,disable:o.value===0&&!t.globalMessage.trim(),loading:t.submitting,onClick:i[1]||=e=>a(`submit`)},{default:s(()=>[m(u(r.$t(`diff.submitReview`,{n:o.value})),1)]),_:1},8,[`disable`,`loading`])])]))}}),[[`__scopeId`,`data-v-e21064fb`]]),je={class:`diff-viewer column full-height`},Me={class:`diff-header row items-center q-px-md q-py-sm no-wrap`},Ne={class:`text-body1 text-weight-medium text-grey-3`},Pe={key:0,class:`text-caption text-grey-6 q-ml-md`,style:{"font-size":`11px`}},Fe={class:`text-grey-7`},Ie={class:`text-green-4`},Le={class:`text-grey-7`},Re={key:1,class:`text-caption text-grey-5 q-ml-md ellipsis`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,"max-width":`400px`}},ze={class:`row col no-wrap`,style:{"min-height":`0`}},Be={key:0,class:`review-draft-panel-wrapper`,style:{width:`300px`,minWidth:`240px`,flexShrink:0,borderRight:`1px solid #2a2a4a`}},Ve={key:1,class:`text-caption text-grey-8 q-pa-sm`},He={class:`text-grey-4`,style:{"font-family":`'Roboto Mono', monospace`,"font-size":`11px`}},Ue={class:`text-grey-3 ellipsis`,style:{"font-family":`'Roboto Mono', monospace`,"font-size":`11px`}},We={class:`col column`,style:{"min-width":`0`,position:`relative`}},Ge={key:0,class:`col column items-center justify-center`},Ke={key:1,class:`col column items-center justify-center text-grey-8 text-caption`},qe=`kobo:diff:hideUnchanged`,Je=`kobo:diff:includeUntracked`,Ye=`kobo:diff:mode`,Xe=`kobo:diffViewerFileListWidth`,Ze=180,Qe=600,q=N(b({__name:`DiffViewer`,props:{workspaceId:{},initialReviewMode:{type:Boolean}},emits:[`close`,`sendToChat`],setup(o,{emit:l}){let b=o,S=l,{t:C}=te(),T=ge(),D=a([]),O=a(``),k=a(``),j=a(null),M=a(!1),N=a(!1),F=a(null),L=a(`side`),R=a(localStorage.getItem(qe)!==`0`),z=a(localStorage.getItem(Je)===`1`),B=a(`branch`),V=a(b.initialReviewMode||localStorage.getItem(Ye)===`review`?`review`:`inspect`);t(V,e=>{localStorage.setItem(Ye,e),e===`review`?ye():_e()});function _e(){nt();for(let e of Z)e.dispose();Z=[],Y&&Y.getModifiedEditor().getDomNode()?.classList.remove(`review-mode-active`)}function ye(){Y&&(ut(),j.value&&ot(j.value))}let H=ie(),be=ne(),U=ve(b.workspaceId,{sendChatMessage:async(e,t,n)=>{if(!H.isConnected())throw Error(`WebSocket not connected — cannot send the review`);H.sendChatMessage(e,t,n)}}),xe=h(()=>U.draft.value.comments),Se=h(()=>U.draft.value.globalMessage),W=a(!1);async function we(){W.value=!0;try{let e=await U.submit(be.selectedSessionId??void 0);e.ok?(T.notify({type:`positive`,message:C(`diff.reviewSubmitted`),position:`top`}),S(`close`)):T.notify({type:`negative`,message:C(`diff.reviewSubmitFailed`,{error:e.error??``}),position:`top`})}finally{W.value=!1}}let G=h(()=>{let e=new Map;if(V.value!==`review`)return e;for(let t of U.draft.value.comments)e.set(t.filePath,(e.get(t.filePath)??0)+1);return e});function Te(e){if(V.value!==`review`||!e)return 0;let t=0;for(let n of U.draft.value.comments)n.filePath.startsWith(`${e}/`)&&t++;return t}function K(e){return e.nodeKey.startsWith(`dir:`)?e.nodeKey.slice(4):``}function Ee(e){j.value=e}async function De(e=3e3){let t=Date.now();for(;N.value;){if(Date.now()-t>e)return;await new Promise(e=>setTimeout(e,30))}}async function Oe(e,t){j.value!==e&&(j.value=e,await De()),Y?.getModifiedEditor().revealLineInCenter(t)}let ke=parseInt(localStorage.getItem(Xe)??`280`,10),q=a(Math.min(Qe,Math.max(Ze,ke)));function $e(e){e.preventDefault();let t=e.target.closest(`.diff-viewer`);if(!t)return;let n=t.getBoundingClientRect().left,r=e=>{q.value=Math.min(Qe,Math.max(Ze,e.clientX-n))},i=()=>{localStorage.setItem(Xe,String(q.value)),document.removeEventListener(`mousemove`,r),document.removeEventListener(`mouseup`,i),document.body.style.cursor=``,document.body.style.userSelect=``};document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`,document.addEventListener(`mousemove`,r),document.addEventListener(`mouseup`,i)}let J=null,Y=null,X=[],Z=[],Q=a([]),et=a(null);function tt(){if(!Y)return;let e=Y.getModifiedEditor();for(let t of Q.value)t.topPx=e.getTopForLineNumber(t.line+1)-e.getScrollTop()-t.heightPx}function nt(){if(!Y){Q.value=[];return}Y.getModifiedEditor().changeViewZones(e=>{for(let t of Q.value)try{e.removeZone(t.zoneId)}catch{}}),Q.value=[]}function rt(e,t,n){if(!Y)return;let r=Y.getModifiedEditor(),i=r.getModel()?.getLineCount()??0;if(e<1||e>i)return;let a=document.createElement(`div`);a.style.pointerEvents=`none`;let o=t.length>0?t.length*4+1:0,s=Math.max(6,o+(n?6:0)),c=``;r.changeViewZones(t=>{c=t.addZone({afterLineNumber:e,heightInLines:s,domNode:a})});let l=s*18,u=r.getTopForLineNumber(e+1)-r.getScrollTop()-l;Q.value.push({zoneId:c,placeholderNode:a,line:e,comments:t,transient:n,topPx:u,heightPx:l})}function it(e){if(!Y)return;let t=Y.getModifiedEditor(),n=Q.value.filter(t=>t.line===e);n.length!==0&&(t.changeViewZones(e=>{for(let t of n)try{e.removeZone(t.zoneId)}catch{}}),Q.value=Q.value.filter(t=>t.line!==e))}function at(e,t){it(t);let n=U.draft.value.comments.filter(n=>n.filePath===e&&n.line===t);n.length!==0&&(n.sort((e,t)=>e.createdAt.localeCompare(t.createdAt)),rt(t,n,!1))}function ot(e){if(!Y||V.value!==`review`)return;let t=U.draft.value.comments.filter(t=>t.filePath===e),n=new Map;for(let e of t){let t=n.get(e.line)??[];t.push(e),n.set(e.line,t)}for(let e of n.values())e.sort((e,t)=>e.createdAt.localeCompare(t.createdAt));for(let[e,t]of n)rt(e,t,!1)}function st(e,t,n){U.addComment({filePath:e,line:t,content:n}),at(e,t)}function ct(e,t,n,r){U.updateComment(n,r),at(e,t)}function lt(e,t,n){U.deleteComment(n),at(e,t)}function ut(){if(!Y||V.value!==`review`||!J)return;let e=Y.getModifiedEditor(),t=e.getDomNode();t&&t.classList.add(`review-mode-active`),Z.push(e.onMouseDown(e=>{if(e.target.type!==3)return;let t=e.target.position?.lineNumber??0;t<1||!j.value||dt(j.value,t)}),e.onDidScrollChange(()=>tt()),e.onDidLayoutChange(()=>tt()))}function dt(e,t){it(t),rt(t,U.draft.value.comments.filter(n=>n.filePath===e&&n.line===t).sort((e,t)=>e.createdAt.localeCompare(t.createdAt)),!0)}function ft(){nt();for(let e of Z)e.dispose();if(Z=[],!Y)return;Y.getModifiedEditor().getDomNode()?.classList.remove(`review-mode-active`);for(let e of X)e.dispose();X=[];let e=Y.getModel();Y.dispose(),Y=null,e?.original?.dispose(),e?.modified?.dispose()}let pt=h(()=>fe(D.value)),mt=h(()=>j.value?`file:${j.value}`:``);async function $(){M.value=!0;try{let e=new URLSearchParams({mode:B.value});B.value===`branch`&&z.value&&e.set(`includeUntracked`,`1`);let t=await fetch(`/api/workspaces/${b.workspaceId}/diff?${e}`,{cache:`no-store`});if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();D.value=n.files,O.value=n.sourceBranch??``,k.value=n.workingBranch??``}catch(e){console.error(`Failed to load diff files:`,e)}finally{M.value=!1}}async function ht(e){if(F.value){N.value=!0;try{J||(self.MonacoEnvironment={getWorker(e,t){return t===`json`?new Worker(new URL(`/assets/json.worker-C9p7xCYk.js`,``+import.meta.url),{type:`module`}):t===`css`||t===`scss`||t===`less`?new Worker(new URL(`/assets/css.worker-D1piIYC4.js`,``+import.meta.url),{type:`module`}):t===`html`||t===`handlebars`||t===`razor`?new Worker(new URL(`/assets/html.worker-C4q4XMPn.js`,``+import.meta.url),{type:`module`}):t===`typescript`||t===`javascript`?new Worker(new URL(`/assets/ts.worker-Cj3zTgVE.js`,``+import.meta.url),{type:`module`}):new Worker(new URL(`/assets/editor.worker-CJ9iTmkr.js`,``+import.meta.url),{type:`module`})}},J=await re(()=>import(`./editor.main-Bn6fpPLF.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17])),J.editor.defineTheme(`kobo-dark`,{base:`vs-dark`,inherit:!0,rules:[],colors:{"editor.background":`#1a1a2e`,"diffEditor.insertedTextBackground":`#22c55e20`,"diffEditor.removedTextBackground":`#ef444420`}}));let t=await fetch(`/api/workspaces/${b.workspaceId}/diff-file?path=${encodeURIComponent(e)}&mode=${B.value}`,{cache:`no-store`});if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json(),r={ts:`typescript`,tsx:`typescript`,js:`javascript`,jsx:`javascript`,vue:`html`,html:`html`,css:`css`,scss:`scss`,json:`json`,md:`markdown`,yaml:`yaml`,yml:`yaml`,sh:`shell`,sql:`sql`,py:`python`,rs:`rust`,go:`go`}[e.split(`.`).pop()??``]??`plaintext`;ft();let i=J.editor.createModel(n.original??``,r),a=J.editor.createModel(n.modified??``,r);Y=J.editor.createDiffEditor(F.value,{theme:`kobo-dark`,readOnly:!0,renderSideBySide:L.value===`side`,automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:12,lineHeight:18,hideUnchangedRegions:{enabled:R.value,contextLineCount:3,minimumLineCount:3,revealLineCount:20}}),Y.setModel({original:i,modified:a}),yt(),V.value===`review`&&(ut(),ot(e))}catch(e){console.error(`Failed to load file diff:`,e)}finally{N.value=!1}}}function gt(e,t){let n=t===`untracked`;T.dialog({title:C(n?`diff.deleteUntracked`:`diff.rollbackToRemote`),message:C(n?`diff.deleteUntrackedConfirm`:`diff.rollbackConfirm`,{path:e}),cancel:!0,persistent:!0,color:n?`red`:`orange`,ok:{label:C(n?`diff.deleteUntrackedConfirmOk`:`diff.rollbackConfirmOk`),color:n?`red-7`:`orange-7`,flat:!1,unelevated:!0}}).onOk(()=>{_t(e)})}async function _t(e){try{let t=await fetch(`/api/workspaces/${b.workspaceId}/rollback-file`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({path:e})});if(!t.ok){let e=await t.json().catch(()=>({}));T.notify({type:`negative`,message:e.error||C(`diff.rollbackFailed`),position:`top`});return}let n=await t.json().catch(()=>({})),r=C(`diff.rollbackDoneRemote`);n.target===`head`?r=C(`diff.rollbackDoneHead`):n.target===`deleted`&&(r=C(`diff.rollbackDoneDeleted`)),T.notify({type:`positive`,message:r,position:`top`}),await $(),j.value===e&&(D.value.some(t=>t.path===e)?await ht(e):j.value=null)}catch(e){console.error(`rollbackFile failed:`,e),T.notify({type:`negative`,message:C(`diff.rollbackFailed`),position:`top`})}}let vt=a(!1);function yt(){if(!Y)return;for(let e of X)e.dispose();X=[];let e=Y.getModifiedEditor(),t=Y.getOriginalEditor();for(let n of[e,t]){let e=n.onDidChangeCursorSelection(()=>{let e=n.getSelection();vt.value=!!(e&&!e.isEmpty())});X.push(e)}}function bt(){if(!(!Y||!j.value))for(let e of[Y.getModifiedEditor(),Y.getOriginalEditor()]){let t=e.getSelection();if(t&&!t.isEmpty()){let n=e.getModel();if(!n)continue;let r=n.getValueInRange(t),i=e===Y.getModifiedEditor()?`modified`:`original`;S(`sendToChat`,`\`\`\`\n// ${j.value} (${i}) L${t.startLineNumber}-L${t.endLineNumber}\n${r}\n\`\`\``);return}}}t(j,e=>{e?ht(e):ft()}),t(L,()=>{Y&&Y.updateOptions({renderSideBySide:L.value===`side`})}),t(R,e=>{localStorage.setItem(qe,e?`1`:`0`),Y&&Y.updateOptions({hideUnchangedRegions:{enabled:e,contextLineCount:3,minimumLineCount:3,revealLineCount:20}})}),t(B,async()=>{let e=j.value;await $(),e&&D.value.some(t=>t.path===e)?ht(e):j.value=null}),t(z,async e=>{localStorage.setItem(Je,e?`1`:`0`),await $(),j.value&&!D.value.some(e=>e.path===j.value)&&(j.value=null)});function xt(e){switch(e){case`added`:return`#4ade80`;case`untracked`:return`#86efac`;case`deleted`:return`#f87171`;case`renamed`:return`#60a5fa`;default:return`#f59e0b`}}return r($),i(()=>{U.flush(),ft()}),(t,r)=>(e(),g(`div`,je,[y(`div`,Me,[p(w,{name:`difference`,size:`18px`,color:`indigo-4`,class:`q-mr-xs`}),y(`span`,Ne,u(t.$t(`diff.title`)),1),p(P,{label:`${D.value.length}`,color:`grey-8`,"text-color":`grey-4`,class:`q-ml-sm`,style:{"font-size":`10px`}},null,8,[`label`]),O.value?(e(),g(`span`,Pe,[B.value===`branch`?(e(),g(_,{key:0},[y(`span`,Fe,u(O.value),1),p(w,{name:`arrow_forward`,size:`11px`,color:`grey-8`,class:`q-mx-xs`}),y(`span`,Ie,u(k.value),1)],64)):(e(),g(_,{key:1},[y(`span`,Le,`origin/`+u(k.value),1),p(w,{name:`arrow_forward`,size:`11px`,color:`grey-8`,class:`q-mx-xs`}),r[7]||=y(`span`,{class:`text-green-4`},`HEAD`,-1)],64))])):f(``,!0),j.value?(e(),g(`span`,Re,u(j.value),1)):f(``,!0),p(le),p(I,{modelValue:B.value,"onUpdate:modelValue":r[0]||=e=>B.value=e,dense:``,"no-caps":``,size:`sm`,"toggle-color":`indigo-8`,color:`grey-9`,"text-color":`grey-5`,options:[{label:t.$t(`diff.scopeBranch`),value:`branch`},{label:t.$t(`diff.scopeUnpushed`),value:`unpushed`}],class:`q-mr-sm`},null,8,[`modelValue`,`options`]),p(I,{modelValue:V.value,"onUpdate:modelValue":r[1]||=e=>V.value=e,dense:``,"no-caps":``,size:`sm`,"toggle-color":`indigo-8`,color:`grey-9`,"text-color":`grey-5`,options:[{label:t.$t(`diff.modeInspect`),value:`inspect`},{label:t.$t(`diff.modeReview`),value:`review`}],class:`q-mr-sm`},null,8,[`modelValue`,`options`]),p(I,{modelValue:L.value,"onUpdate:modelValue":r[2]||=e=>L.value=e,dense:``,"no-caps":``,size:`sm`,"toggle-color":`indigo-8`,color:`grey-9`,"text-color":`grey-5`,options:[{label:t.$t(`diff.side`),value:`side`},{label:t.$t(`diff.inline`),value:`inline`}],class:`q-mr-sm`},null,8,[`modelValue`,`options`]),p(E,{icon:R.value?`unfold_less`:`unfold_more`,dense:``,flat:``,size:`sm`,color:R.value?`indigo-4`:`grey-5`,class:`q-mr-sm`,onClick:r[3]||=e=>R.value=!R.value},{default:s(()=>[p(A,{anchor:`bottom middle`,self:`top middle`,delay:400},{default:s(()=>[m(u(R.value?t.$t(`diff.showUnchanged`):t.$t(`diff.hideUnchanged`)),1)]),_:1})]),_:1},8,[`icon`,`color`]),B.value===`branch`?(e(),d(E,{key:2,icon:`visibility`,dense:``,flat:``,size:`sm`,color:z.value?`indigo-4`:`grey-5`,class:`q-mr-sm`,onClick:r[4]||=e=>z.value=!z.value},{default:s(()=>[p(A,{anchor:`bottom middle`,self:`top middle`,delay:400},{default:s(()=>[m(u(z.value?t.$t(`diff.hideUntracked`):t.$t(`diff.showUntracked`)),1)]),_:1})]),_:1},8,[`color`])):f(``,!0),p(E,{flat:``,round:``,dense:``,icon:`close`,color:`grey-5`,size:`sm`,disable:W.value,onClick:r[5]||=e=>S(`close`)},{default:s(()=>[p(A,null,{default:s(()=>[m(u(t.$t(`tooltip.closeDiffViewer`)),1)]),_:1})]),_:1},8,[`disable`])]),p(ee,{dark:``}),y(`div`,ze,[V.value===`review`?(e(),g(`div`,Be,[p(Ae,{comments:xe.value,"global-message":Se.value,submitting:W.value,onUpdateGlobal:v(U).setGlobalMessage,onJumpToFile:Ee,onJumpToComment:Oe,onSubmit:we},null,8,[`comments`,`global-message`,`submitting`,`onUpdateGlobal`])])):f(``,!0),y(`div`,{class:`diff-file-list-wrapper`,style:x({width:`${q.value}px`,minWidth:`${Ze}px`})},[p(ce,{class:`diff-file-list q-pa-xs`,style:{width:`100%`,height:`100%`,"border-right":`1px solid #2a2a4a`}},{default:s(()=>[M.value?(e(),d(ae,{key:0,size:`24px`,color:`grey-6`,class:`q-ma-md`})):D.value.length===0?(e(),g(`div`,Ve,u(t.$t(`diff.noChanges`)),1)):(e(),d(de,{key:2,nodes:pt.value,"node-key":`nodeKey`,"label-key":`label`,"children-key":`children`,dark:``,dense:``,"default-expand-all":``,"no-selection-unset":``,selected:mt.value,class:`diff-tree`,"onUpdate:selected":r[6]||=e=>{typeof e!=`string`||!e.startsWith(`file:`)||(j.value=e.slice(5))}},{"default-header":s(({node:n})=>[n.isFolder?(e(),g(_,{key:0},[p(w,{name:`folder`,size:`14px`,color:`indigo-4`,class:`q-mr-xs`}),y(`span`,He,u(n.label),1),p(P,{label:n.children?v(ue)(n.children):0,color:`grey-9`,"text-color":`grey-5`,class:`q-ml-xs`,style:{"font-size":`9px`}},null,8,[`label`]),V.value===`review`&&Te(K(n))>0?(e(),d(P,{key:0,label:String(Te(K(n))),color:`grey-7`,"text-color":`grey-3`,class:`q-ml-xs`,style:{"font-size":`9px`}},null,8,[`label`])):f(``,!0)],64)):(e(),g(_,{key:1},[p(w,{name:`description`,size:`14px`,style:x({color:xt(n.file.status)}),class:`q-mr-xs`},{default:s(()=>[p(A,null,{default:s(()=>[m(u(n.file.status),1)]),_:2},1024)]),_:2},1032,[`style`]),y(`span`,Ue,u(n.label),1),V.value===`review`&&(G.value.get(n.file.path)??0)>0?(e(),d(P,{key:0,label:String(G.value.get(n.file.path)),color:`indigo-8`,"text-color":`white`,class:`q-ml-xs`,style:{"font-size":`9px`}},null,8,[`label`])):f(``,!0),p(me,{"touch-position":``,"context-menu":``},{default:s(()=>[p(pe,{dense:``,dark:``,style:{"min-width":`220px`}},{default:s(()=>[c((e(),d(oe,{clickable:``,onClick:e=>gt(n.file.path,n.file.status)},{default:s(()=>[p(se,{avatar:``},{default:s(()=>[p(w,{name:n.file.status===`untracked`?`delete`:`restore`,size:`16px`,color:n.file.status===`untracked`?`red-5`:`orange-5`},null,8,[`name`,`color`])]),_:2},1024),p(se,null,{default:s(()=>[m(u(n.file.status===`untracked`?t.$t(`diff.deleteUntracked`):t.$t(`diff.rollbackToRemote`)),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[he]])]),_:2},1024)]),_:2},1024)],64))]),_:1},8,[`nodes`,`selected`]))]),_:1}),y(`div`,{class:`diff-file-list-resize-handle`,onMousedown:$e},null,32)],4),y(`div`,We,[N.value?(e(),g(`div`,Ge,[p(ae,{size:`32px`,color:`indigo-4`})])):j.value?f(``,!0):(e(),g(`div`,Ke,u(t.$t(`diff.selectFile`)),1)),y(`div`,{ref_key:`editorWrapperRef`,ref:et,class:`col`,style:{"min-height":`0`,position:`relative`,overflow:`hidden`}},[y(`div`,{ref_key:`editorContainer`,ref:F,style:{position:`absolute`,inset:`0`}},null,512),(e(!0),g(_,null,n(Q.value,t=>(e(),g(`div`,{key:t.zoneId,class:`review-zone-overlay`,style:x({top:`${t.topPx}px`,height:`${t.heightPx}px`})},[p(Ce,{comments:t.comments,"start-in-add-mode":t.transient,onAdd:e=>st(j.value??``,t.line,e),onUpdate:(e,n)=>ct(j.value??``,t.line,e,n),onDelete:e=>lt(j.value??``,t.line,e),onDismissEmpty:e=>it(t.line)},null,8,[`comments`,`start-in-add-mode`,`onAdd`,`onUpdate`,`onDelete`,`onDismissEmpty`])],4))),128))],512),vt.value?(e(),d(E,{key:2,"no-caps":``,dense:``,size:`sm`,color:`primary`,icon:`chat`,label:t.$t(`diff.addToChat`),class:`send-to-chat-btn`,onClick:bt},null,8,[`label`])):f(``,!0)])])]))}}),[[`__scopeId`,`data-v-80c48ad6`]]);export{q as default};
@@ -1 +0,0 @@
1
- .acceptance-item[data-v-20a94a3d]{padding:2px 0}.acceptance-item[data-v-20a94a3d]:hover{background-color:#ffffff08}.acceptance-item:hover .criterion-delete-btn[data-v-20a94a3d]{opacity:1}.criterion-delete-btn[data-v-20a94a3d]{opacity:0;transition:opacity .15s}.acceptance-title[data-v-20a94a3d]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-20a94a3d]{opacity:.7;text-decoration:line-through}.criterion-input[data-v-20a94a3d] .q-field__control{height:22px;min-height:22px;padding:0}.criterion-input[data-v-20a94a3d] input{color:#e0e0e0;font-size:12px}.criterion-input[data-v-20a94a3d] input::placeholder{color:#555}.criterion-add-row[data-v-20a94a3d],.todo-item[data-v-6a3613f7]{padding:2px 0}.todo-title[data-v-6a3613f7]{word-break:break-word;line-height:1.4}.text-strike[data-v-6a3613f7]{opacity:.7;text-decoration:line-through}.documents-tree[data-v-89e5de13] .q-tree__node--selected>.q-tree__node-header{background:#7986cb26}.documents-tree[data-v-89e5de13] .q-tree__node-header{padding:2px 4px}.document-content[data-v-89e5de13]{color:#d0d0d0;overflow-wrap:break-word;font-size:12px;line-height:1.6}.document-content[data-v-89e5de13] h1{color:#e0e0e0;margin:16px 0 8px;font-size:16px}.document-content[data-v-89e5de13] h2{color:#e0e0e0;margin:14px 0 6px;font-size:14px}.document-content[data-v-89e5de13] h3{color:#e0e0e0;margin:12px 0 4px;font-size:13px}.document-content[data-v-89e5de13] code{background:#1a1a2e;border-radius:3px;padding:1px 4px;font-family:Roboto Mono,monospace;font-size:11px}.document-content[data-v-89e5de13] pre{background:#1a1a2e;border-radius:6px;padding:8px 12px;font-size:11px;overflow-x:auto}.document-content[data-v-89e5de13] pre code{background:0 0;padding:0}.document-content[data-v-89e5de13] ul,.document-content[data-v-89e5de13] ol{padding-left:20px}.document-content[data-v-89e5de13] li{margin-bottom:2px}.document-content[data-v-89e5de13] input[type=checkbox]{pointer-events:none;margin-right:6px}.document-content[data-v-89e5de13] table{border-collapse:collapse;width:100%;margin:8px 0;font-size:11px}.document-content[data-v-89e5de13] th,.document-content[data-v-89e5de13] td{text-align:left;border:1px solid #2a2a4a;padding:4px 8px}.document-content[data-v-89e5de13] th{color:#e0e0e0;background:#1a1a2e}.document-content[data-v-89e5de13] blockquote{color:#a0a0b0;border-left:3px solid #4a4a6a;margin:8px 0;padding:4px 12px}.document-content[data-v-89e5de13] a{color:#818cf8}.document-content[data-v-89e5de13] hr{border:none;border-top:1px solid #2a2a4a;margin:12px 0}.git-btn[data-v-240dee46]{padding:2px 8px;font-size:11px}.git-sync-btn[data-v-240dee46]{padding:2px 0}.git-sync-btn[data-v-240dee46] .q-btn__content{padding:0 8px}.git-sync-btn[data-v-240dee46] .q-btn-dropdown__arrow-container{border-left:1px solid #ffffff1f;padding:0 4px}.git-sync-btn[data-v-240dee46] .q-btn-dropdown--split{gap:0}.commit-toggle[data-v-240dee46]:hover{background-color:#ffffff08;border-radius:3px}.commit-list[data-v-240dee46]{border-left:2px solid #ffffff0a;max-height:260px;margin-left:7px;padding-left:6px;overflow-y:auto}.commit-item[data-v-240dee46]{border-radius:3px;padding:3px 4px;font-size:11px;line-height:1.3;transition:background-color .1s}.commit-item[data-v-240dee46]:hover{background-color:#818cf814}.commit-item-icon[data-v-240dee46]{flex-shrink:0}.commit-sha[data-v-240dee46]{flex-shrink:0;font-family:Roboto Mono,monospace;font-size:10.5px}.commit-subject[data-v-240dee46]{min-width:0;font-size:11px}.git-branch-code{color:#c7d2fe;white-space:nowrap;background-color:#818cf824;border-radius:3px;padding:1px 5px;font-family:Roboto Mono,monospace;font-size:11px}.subagents-panel[data-v-dd805632]{overflow-y:auto}.subagent-item[data-v-dd805632]{background:#1e1e3a;border:1px solid #2a2a4a}.task-item[data-v-4bc9713a]{padding:2px 0}.task-item[data-v-4bc9713a]:hover{background-color:#ffffff08}.task-item:hover .task-delete-btn[data-v-4bc9713a]{opacity:1}.task-delete-btn[data-v-4bc9713a]{opacity:0;transition:opacity .15s}.task-title[data-v-4bc9713a]{word-break:break-word;cursor:text;line-height:1.4}.text-strike[data-v-4bc9713a]{opacity:.7;text-decoration:line-through}.task-input[data-v-4bc9713a] .q-field__control{height:22px;min-height:22px;padding:0}.task-input[data-v-4bc9713a] input{color:#e0e0e0;font-size:12px}.task-input[data-v-4bc9713a] input::placeholder{color:#555}.task-add-row[data-v-4bc9713a]{padding:2px 0}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.xterm .xterm-accessibility-tree:not(.debug) ::-moz-selection{color:#0000}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:-moz-fit-content;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}.log-content[data-v-d988f9ab]{max-height:60vh;overflow-y:auto}.log-text[data-v-d988f9ab]{color:#ccc;white-space:pre-wrap;word-break:break-all;background:#0d0d1a;margin:0;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px}.dd-panel[data-v-9d25d6ee],.tools-panel[data-v-96e87c5e]{min-height:48px}.auto-loop-spin[data-v-5bfef979]{animation:2s linear infinite auto-loop-spin-5bfef979}@keyframes auto-loop-spin-5bfef979{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workspace-list[data-v-45541376]{background-color:#16162a;overflow-x:hidden}.wl-search[data-v-45541376]{background-color:#224;padding:0 8px}.wl-search[data-v-45541376] .q-field__control{height:32px}.wl-search[data-v-45541376] input{color:#ccc;font-size:12px}.wl-group-header[data-v-45541376]:hover{background-color:#ffffff08}.wl-project-group+.wl-project-group[data-v-45541376]{margin-top:6px}.wl-project-label[data-v-45541376]{align-items:center;padding-bottom:2px;font-size:11px;display:flex}.wl-item[data-v-45541376]{background-color:#224;margin-bottom:4px;transition:background-color .15s,box-shadow .15s;position:relative}.wl-item[data-v-45541376]:last-child{margin-bottom:0}.wl-item[data-v-45541376]:hover{background-color:#2a2a4a}.wl-item--selected[data-v-45541376]{background-color:#393969;outline:1.5px solid #6c63fff2;box-shadow:0 0 0 1px #6c63ff4d,0 2px 8px #6c63ff40}.wl-item--selected[data-v-45541376]:hover{background-color:#41417a}.wl-item--selected .wl-item-name[data-v-45541376]{color:#fff!important;opacity:1!important}.wl-item-action[data-v-45541376]{position:absolute;top:4px;right:4px}.wl-item--archived .wl-item-action[data-v-45541376]{opacity:0;transition:opacity .15s}.wl-item--archived:hover .wl-item-action[data-v-45541376]{opacity:1}.wl-item-unarchive[data-v-45541376]{right:28px}.wl-item-delete[data-v-45541376]{right:4px}.wl-item--archived[data-v-45541376]{opacity:.6;background-color:#1a1a30}.wl-item--archived[data-v-45541376]:hover{opacity:.85}.wl-item--archived.wl-item--selected[data-v-45541376]{opacity:1}.dd-dot[data-v-45541376]{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dd-dot--running[data-v-45541376]{background-color:#22c55e;box-shadow:0 0 4px #22c55e80}.bg-dark[data-v-e27e1c92]{background-color:#16162a!important;border-color:#2a2a4a!important}.resize-handle[data-v-e27e1c92]{cursor:col-resize;z-index:10;width:4px;height:100%;transition:background-color .15s;position:absolute;top:0;right:-2px}.resize-handle[data-v-e27e1c92]:hover,.resize-handle[data-v-e27e1c92]:active{background-color:#6c63ff80}.resize-handle--right[data-v-e27e1c92]{left:-2px;right:auto}.vertical-resize-handle[data-v-e27e1c92]{cursor:row-resize;background-color:#2a2a4a;height:4px;transition:background-color .15s}.vertical-resize-handle[data-v-e27e1c92]:hover,.vertical-resize-handle[data-v-e27e1c92]:active{background-color:#6c63ff80}
@@ -1 +0,0 @@
1
- import{D as e,H as t,Q as n,S as r,W as i,j as a,k as o,l as s,y as c}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{P as l,a as u,n as d,r as f}from"./QIcon-BJuyqdsT.js";import{u as p}from"./use-id-CuaR1RiE.js";import{b as m,y as h}from"./notifications-CG-oL2m2.js";import{d as g}from"./QTooltip-D_hSPb7r.js";import{n as _,t as v}from"./TouchPan-1PETKHN0.js";import{r as y}from"./marked.esm-D4t0_2pc.js";var b=l({props:[`store`,`barStyle`,`verticalBarStyle`,`horizontalBarStyle`],setup(e){return()=>[r(`div`,{class:e.store.scroll.vertical.barClass.value,style:[e.barStyle,e.verticalBarStyle],"aria-hidden":`true`,onMousedown:e.store.onVerticalMousedown}),r(`div`,{class:e.store.scroll.horizontal.barClass.value,style:[e.barStyle,e.horizontalBarStyle],"aria-hidden":`true`,onMousedown:e.store.onHorizontalMousedown}),i(r(`div`,{ref:e.store.scroll.vertical.ref,class:e.store.scroll.vertical.thumbClass.value,style:e.store.scroll.vertical.style.value,"aria-hidden":`true`}),e.store.thumbVertDir),i(r(`div`,{ref:e.store.scroll.horizontal.ref,class:e.store.scroll.horizontal.thumbClass.value,style:e.store.scroll.horizontal.style.value,"aria-hidden":`true`}),e.store.thumbHorizDir)]}}),x=[`vertical`,`horizontal`],S={vertical:{offset:`offsetY`,scroll:`scrollTop`,dir:`down`,dist:`y`},horizontal:{offset:`offsetX`,scroll:`scrollLeft`,dir:`right`,dist:`x`}},C={prevent:!0,mouse:!0,mouseAllDir:!0},w=e=>e>=250?50:Math.ceil(e/5),T=l({name:`QScrollArea`,props:{...f,thumbStyle:Object,verticalThumbStyle:Object,horizontalThumbStyle:Object,barStyle:[Array,String,Object],verticalBarStyle:[Array,String,Object],horizontalBarStyle:[Array,String,Object],verticalOffset:{type:Array,default:[0,0]},horizontalOffset:{type:Array,default:[0,0]},contentStyle:[Array,String,Object],contentActiveStyle:[Array,String,Object],delay:{type:[String,Number],default:1e3},visible:{type:Boolean,default:null},tabindex:[String,Number],onScroll:Function},setup(i,{slots:l,emit:f}){let T=n(!1),E=n(!1),D=n(!1),O={vertical:n(0),horizontal:n(0)},k={vertical:{ref:n(null),position:n(0),size:n(0)},horizontal:{ref:n(null),position:n(0),size:n(0)}},{proxy:A}=c(),j=d(i,A.$q),M=null,N,P=n(null),F=s(()=>`q-scrollarea`+(j.value===!0?` q-scrollarea--dark`:``));Object.assign(O,{verticalInner:s(()=>O.vertical.value-i.verticalOffset[0]-i.verticalOffset[1]),horizontalInner:s(()=>O.horizontal.value-i.horizontalOffset[0]-i.horizontalOffset[1])}),k.vertical.percentage=s(()=>{let e=k.vertical.size.value-O.vertical.value;if(e<=0)return 0;let t=g(k.vertical.position.value/e,0,1);return Math.round(t*1e4)/1e4}),k.vertical.thumbHidden=s(()=>(i.visible===null?D.value:i.visible)!==!0&&T.value===!1&&E.value===!1||k.vertical.size.value<=O.vertical.value+1),k.vertical.thumbStart=s(()=>i.verticalOffset[0]+k.vertical.percentage.value*(O.verticalInner.value-k.vertical.thumbSize.value)),k.vertical.thumbSize=s(()=>Math.round(g(O.verticalInner.value*O.verticalInner.value/k.vertical.size.value,w(O.verticalInner.value),O.verticalInner.value))),k.vertical.style=s(()=>({...i.thumbStyle,...i.verticalThumbStyle,top:`${k.vertical.thumbStart.value}px`,height:`${k.vertical.thumbSize.value}px`,right:`${i.horizontalOffset[1]}px`})),k.vertical.thumbClass=s(()=>`q-scrollarea__thumb q-scrollarea__thumb--v absolute-right`+(k.vertical.thumbHidden.value===!0?` q-scrollarea__thumb--invisible`:``)),k.vertical.barClass=s(()=>`q-scrollarea__bar q-scrollarea__bar--v absolute-right`+(k.vertical.thumbHidden.value===!0?` q-scrollarea__bar--invisible`:``)),k.horizontal.percentage=s(()=>{let e=k.horizontal.size.value-O.horizontal.value;if(e<=0)return 0;let t=g(Math.abs(k.horizontal.position.value)/e,0,1);return Math.round(t*1e4)/1e4}),k.horizontal.thumbHidden=s(()=>(i.visible===null?D.value:i.visible)!==!0&&T.value===!1&&E.value===!1||k.horizontal.size.value<=O.horizontal.value+1),k.horizontal.thumbStart=s(()=>i.horizontalOffset[0]+k.horizontal.percentage.value*(O.horizontalInner.value-k.horizontal.thumbSize.value)),k.horizontal.thumbSize=s(()=>Math.round(g(O.horizontalInner.value*O.horizontalInner.value/k.horizontal.size.value,w(O.horizontalInner.value),O.horizontalInner.value))),k.horizontal.style=s(()=>({...i.thumbStyle,...i.horizontalThumbStyle,[A.$q.lang.rtl===!0?`right`:`left`]:`${k.horizontal.thumbStart.value}px`,width:`${k.horizontal.thumbSize.value}px`,bottom:`${i.verticalOffset[1]}px`})),k.horizontal.thumbClass=s(()=>`q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom`+(k.horizontal.thumbHidden.value===!0?` q-scrollarea__thumb--invisible`:``)),k.horizontal.barClass=s(()=>`q-scrollarea__bar q-scrollarea__bar--h absolute-bottom`+(k.horizontal.thumbHidden.value===!0?` q-scrollarea__bar--invisible`:``));let I=s(()=>k.vertical.thumbHidden.value===!0&&k.horizontal.thumbHidden.value===!0?i.contentStyle:i.contentActiveStyle);function L(){let e={};return x.forEach(t=>{let n=k[t];Object.assign(e,{[t+`Position`]:n.position.value,[t+`Percentage`]:n.percentage.value,[t+`Size`]:n.size.value,[t+`ContainerSize`]:O[t].value,[t+`ContainerInnerSize`]:O[t+`Inner`].value})}),e}let R=p(()=>{let e=L();e.ref=A,f(`scroll`,e)},0);function z(e,t,n){if(x.includes(e)===!1){console.error(`[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)`);return}(e===`vertical`?m:h)(P.value,t,n)}function B({height:e,width:t}){let n=!1;O.vertical.value!==e&&(O.vertical.value=e,n=!0),O.horizontal.value!==t&&(O.horizontal.value=t,n=!0),n===!0&&G()}function V({position:e}){let t=!1;k.vertical.position.value!==e.top&&(k.vertical.position.value=e.top,t=!0),k.horizontal.position.value!==e.left&&(k.horizontal.position.value=e.left,t=!0),t===!0&&G()}function H({height:e,width:t}){k.horizontal.size.value!==t&&(k.horizontal.size.value=t,G()),k.vertical.size.value!==e&&(k.vertical.size.value=e,G())}function U(e,t){let n=k[t];if(e.isFirst===!0){if(n.thumbHidden.value===!0)return;N=n.position.value,E.value=!0}else if(E.value!==!0)return;e.isFinal===!0&&(E.value=!1);let r=S[t],i=(n.size.value-O[t].value)/(O[t+`Inner`].value-n.thumbSize.value),a=e.distance[r.dist];K(N+(e.direction===r.dir?1:-1)*a*i,t)}function W(e,t){let n=k[t];if(n.thumbHidden.value!==!0){let r=t===`vertical`?i.verticalOffset[0]:i.horizontalOffset[0],a=e[S[t].offset]-r,o=n.thumbStart.value-r;(a<o||a>o+n.thumbSize.value)&&K(g((a-n.thumbSize.value/2)/(O[t+`Inner`].value-n.thumbSize.value),0,1)*Math.max(0,n.size.value-O[t].value),t),n.ref.value!==null&&n.ref.value.dispatchEvent(new MouseEvent(e.type,e))}}function G(){T.value=!0,M!==null&&clearTimeout(M),M=setTimeout(()=>{M=null,T.value=!1},i.delay),i.onScroll!==void 0&&R()}function K(e,t){P.value[S[t].scroll]=e}let q=null;function J(){q!==null&&clearTimeout(q),q=setTimeout(()=>{q=null,D.value=!0},A.$q.platform.is.ios?50:0)}function Y(){q!==null&&(clearTimeout(q),q=null),D.value=!1}let X=null;t(()=>A.$q.lang.rtl,e=>{P.value!==null&&h(P.value,Math.abs(k.horizontal.position.value)*(e===!0?-1:1))}),a(()=>{X={top:k.vertical.position.value,left:k.horizontal.position.value}}),e(()=>{if(X===null)return;let e=P.value;e!==null&&(h(e,X.left),m(e,X.top))}),o(R.cancel),Object.assign(A,{getScrollTarget:()=>P.value,getScroll:L,getScrollPosition:()=>({top:k.vertical.position.value,left:k.horizontal.position.value}),getScrollPercentage:()=>({top:k.vertical.percentage.value,left:k.horizontal.percentage.value}),setScrollPosition:z,setScrollPercentage(e,t,n){z(e,t*(k[e].size.value-O[e].value)*(e===`horizontal`&&A.$q.lang.rtl===!0?-1:1),n)}});let Z={scroll:k,thumbVertDir:[[v,e=>{U(e,`vertical`)},void 0,{vertical:!0,...C}]],thumbHorizDir:[[v,e=>{U(e,`horizontal`)},void 0,{horizontal:!0,...C}]],onVerticalMousedown(e){W(e,`vertical`)},onHorizontalMousedown(e){W(e,`horizontal`)}};return()=>r(`div`,{class:F.value,onMouseenter:J,onMouseleave:Y},[r(`div`,{ref:P,class:`q-scrollarea__container scroll relative-position fit hide-scrollbar`,tabindex:i.tabindex===void 0?void 0:i.tabindex},[r(`div`,{class:`q-scrollarea__content absolute`,style:I.value},u(l.default,[r(_,{debounce:0,onResize:H})])),r(y,{axis:`both`,onScroll:V})]),r(_,{debounce:0,onResize:B}),r(b,{store:Z,barStyle:i.barStyle,verticalBarStyle:i.verticalBarStyle,horizontalBarStyle:i.horizontalBarStyle})])}});export{T as t};
@@ -1 +0,0 @@
1
- import{F as e,H as t,L as n,M as r,N as i,Q as a,S as o,U as s,W as c,_t as l,bt as u,d,f,g as p,h as m,k as h,l as g,p as _,r as v,rt as y,u as b,v as x,y as S}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{N as C,P as w,i as ee,k as T,n as E,r as D,t as te}from"./QIcon-BJuyqdsT.js";import{r as O}from"./use-id-CuaR1RiE.js";import{I as ne,L as k,a as re,c as ie,i as A,n as ae,o as oe,s as se}from"./notifications-CG-oL2m2.js";import{t as j}from"./QBtn-a6jxWjmW.js";import{n as ce}from"./vue-i18n-BcfTCFFS.js";import{i as M,o as N,r as P,t as F}from"./QInput-Cm5-AGQ4.js";import{t as le}from"./QToggle-1-N9qWq4.js";import{b as ue,g as de,h as fe,n as pe,y as me}from"./index-DE3PxEjy.js";import{n as he,t as ge}from"./QItemSection-5YpFpPDm.js";import{t as I}from"./QItemLabel-DrTxqTqV.js";import{d as L,t as _e}from"./QTooltip-D_hSPb7r.js";import{t as ve}from"./QExpansionItem-BaQJkGb-.js";import{t as R}from"./TouchPan-1PETKHN0.js";import{t as z}from"./_plugin-vue_export-helper-Cj6tcsj6.js";import{t as ye}from"./QSpace-CLtL3aPy.js";import{t as B}from"./QList-D0FtnQJI.js";import{t as be}from"./ClosePopup-BP025_cK.js";import{t as xe}from"./use-quasar-Sdcq6zzV.js";import{i as V,n as H,r as Se,t as Ce}from"./QTabPanels-CjpZTIJg.js";import{n as U,t as we}from"./models-BMOYJtwv.js";import{t as Te}from"./QPage-ChUKoaKe.js";var W=`q-slider__marker-labels`,Ee=e=>({value:e}),De=({marker:e})=>o(`div`,{key:e.value,style:e.style,class:e.classes},e.label),G=[34,37,40,33,39,38],Oe={...D,...N,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`}},ke=[`pan`,`update:modelValue`,`change`];function Ae({updateValue:e,updatePosition:t,getDragging:n,formAttrs:r}){let{props:i,emit:s,slots:c,proxy:{$q:l}}=S(),u=E(i,l),d=M(r),f=a(!1),p=a(!1),m=a(!1),_=a(!1),v=g(()=>i.vertical===!0?`--v`:`--h`),y=g(()=>`-`+(i.switchLabelSide===!0?`switched`:`standard`)),b=g(()=>i.vertical===!0?i.reverse===!0:i.reverse!==(l.lang.rtl===!0)),x=g(()=>isNaN(i.innerMin)===!0||i.innerMin<i.min?i.min:i.innerMin),C=g(()=>isNaN(i.innerMax)===!0||i.innerMax>i.max?i.max:i.innerMax),w=g(()=>i.disable!==!0&&i.readonly!==!0&&x.value<C.value),D=g(()=>{if(i.step===0)return e=>e;let e=(String(i.step).trim().split(`.`)[1]||``).length;return t=>parseFloat(t.toFixed(e))}),te=g(()=>i.step===0?1:i.step),O=g(()=>w.value===!0?i.tabindex||0:-1),re=g(()=>i.max-i.min),ie=g(()=>C.value-x.value),A=g(()=>B(x.value)),ae=g(()=>B(C.value)),oe=g(()=>i.vertical===!0?b.value===!0?`bottom`:`top`:b.value===!0?`right`:`left`),se=g(()=>i.vertical===!0?`height`:`width`),j=g(()=>i.vertical===!0?`width`:`height`),ce=g(()=>i.vertical===!0?`vertical`:`horizontal`),N=g(()=>{let e={role:`slider`,"aria-valuemin":x.value,"aria-valuemax":C.value,"aria-orientation":ce.value,"data-step":i.step};return i.disable===!0?e[`aria-disabled`]=`true`:i.readonly===!0&&(e[`aria-readonly`]=`true`),e}),P=g(()=>`q-slider q-slider${v.value} q-slider--${f.value===!0?``:`in`}active inline no-wrap `+(i.vertical===!0?`row`:`column`)+(i.disable===!0?` disabled`:` q-slider--enabled`+(w.value===!0?` q-slider--editable`:``))+(m.value===`both`?` q-slider--focus`:``)+(i.label||i.labelAlways===!0?` q-slider--label`:``)+(i.labelAlways===!0?` q-slider--label-always`:``)+(u.value===!0?` q-slider--dark`:``)+(i.dense===!0?` q-slider--dense q-slider--dense`+v.value:``));function F(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 ue=g(()=>{let e=i.selectionColor||i.color;return`q-slider__selection absolute`+(e===void 0?``:` text-${e}`)}),de=g(()=>le(`markers`)+` absolute overflow-hidden`),fe=g(()=>le(`track-container`)),pe=g(()=>F(`pin`)),me=g(()=>F(`label`)),he=g(()=>F(`text-container`)),ge=g(()=>F(`marker-labels-container`)+(i.markerLabelsClass===void 0?``:` ${i.markerLabelsClass}`)),I=g(()=>`q-slider__track relative-position no-outline`+(i.trackColor===void 0?``:` bg-${i.trackColor}`)),_e=g(()=>{let e={[j.value]:i.trackSize};return i.trackImg!==void 0&&(e.backgroundImage=`url(${i.trackImg}) !important`),e}),ve=g(()=>`q-slider__inner absolute`+(i.innerTrackColor===void 0?``:` bg-${i.innerTrackColor}`)),z=g(()=>{let e=ae.value-A.value,t={[oe.value]:`${100*A.value}%`,[se.value]:e===0?`2px`:`${100*e}%`};return i.innerTrackImg!==void 0&&(t.backgroundImage=`url(${i.innerTrackImg}) !important`),t});function ye(e){let{min:t,max:n,step:r}=i,a=t+e*(n-t);if(r>0){let e=(a-x.value)%r;a+=(Math.abs(e)>=r/2?(e<0?-1:1)*r:0)-e}return a=D.value(a),L(a,x.value,C.value)}function B(e){return re.value===0?0:(e-i.min)/re.value}function be(e,t){let n=T(e),r=i.vertical===!0?L((n.top-t.top)/t.height,0,1):L((n.left-t.left)/t.width,0,1);return L(b.value===!0?1-r:r,A.value,ae.value)}let xe=g(()=>ne(i.markers)===!0?i.markers:te.value),V=g(()=>{let e=[],t=xe.value,n=i.max,r=i.min;do e.push(r),r+=t;while(r<n);return e.push(n),e}),H=g(()=>{let e=` ${W}${v.value}-`;return`q-slider__marker-labels${e}${i.switchMarkerLabelsSide===!0?`switched`:`standard`}${e}${b.value===!0?`rtl`:`ltr`}`}),Se=g(()=>i.markerLabels===!1?null:we(i.markerLabels).map((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:H.value+(e.classes===void 0?``:` `+e.classes),style:{...Te(e.value),...e.style||{}}}))),Ce=g(()=>({markerList:Se.value,markerMap:Oe.value,classes:H.value,getStyle:Te})),U=g(()=>{let e=ie.value===0?`2px`:100*xe.value/ie.value;return{...z.value,backgroundSize:i.vertical===!0?`2px ${e}%`:`${e}% 2px`}});function we(e){if(e===!1)return null;if(e===!0)return V.value.map(Ee);if(typeof e==`function`)return V.value.map(t=>{let n=e(t);return k(n)===!0?{...n,value:t}:{value:t,label:n}});let t=({value:e})=>e>=i.min&&e<=i.max;return Array.isArray(e)===!0?e.map(e=>k(e)===!0?e:{value:e}).filter(t):Object.keys(e).map(t=>{let n=e[t],r=Number(t);return k(n)===!0?{...n,value:r}:{value:r,label:n}}).filter(t)}function Te(e){return{[oe.value]:`${100*(e-i.min)/re.value}%`}}let Oe=g(()=>{if(i.markerLabels===!1)return null;let e={};return Se.value.forEach(t=>{e[t.value]=t}),e});function ke(){if(c[`marker-label-group`]!==void 0)return c[`marker-label-group`](Ce.value);let e=c[`marker-label`]||De;return Se.value.map(t=>e({marker:t,...Ce.value}))}let Ae=g(()=>[[R,K,void 0,{[ce.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function K(r){r.isFinal===!0?(_.value!==void 0&&(t(r.evt),r.touch===!0&&e(!0),_.value=void 0,s(`pan`,`end`)),f.value=!1,m.value=!1):r.isFirst===!0?(_.value=n(r.evt),t(r.evt),e(),f.value=!0,s(`pan`,`start`)):(t(r.evt),e())}function je(){m.value=!1}function Me(r){t(r,n(r)),e(),p.value=!0,f.value=!0,document.addEventListener(`mouseup`,Ne,!0)}function Ne(){p.value=!1,f.value=!1,e(!0),je(),document.removeEventListener(`mouseup`,Ne,!0)}function Pe(r){t(r,n(r)),e(!0)}function Fe(t){G.includes(t.keyCode)&&e(!0)}function Ie(e){if(i.vertical===!0)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 Le(e){let t=g(()=>p.value===!1&&(m.value===e.focusValue||m.value===`both`)?` q-slider--focus`:``),n=g(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${b.value===!0?`rtl`:`ltr`} absolute non-selectable`+t.value+(e.thumbColor.value===void 0?``:` text-${e.thumbColor.value}`)),r=g(()=>({width:i.thumbSize,height:i.thumbSize,[oe.value]:`${100*e.ratio.value}%`,zIndex:m.value===e.focusValue?2:void 0})),a=g(()=>e.labelColor.value===void 0?``:` text-${e.labelColor.value}`),s=g(()=>Ie(e.ratio.value)),c=g(()=>`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===!0||i.labelAlways===!0)&&(t.push(o(`div`,{class:pe.value+` absolute fit no-pointer-events`+a.value},[o(`div`,{class:me.value,style:{minWidth:i.thumbSize}},[o(`div`,{class:he.value,style:s.value},[o(`span`,{class:c.value},e.label.value)])])])),i.name!==void 0&&i.disable!==!0&&d(t,`push`)),o(`div`,{class:n.value,style:r.value,...e.getNodeData()},t)}}function Re(e,t,n,r){let a=[];i.innerTrackColor!==`transparent`&&a.push(o(`div`,{key:`inner`,class:ve.value,style:z.value})),i.selectionColor!==`transparent`&&a.push(o(`div`,{key:`selection`,class:ue.value,style:e.value})),i.markers!==!1&&a.push(o(`div`,{key:`marker`,class:de.value,style:U.value})),r(a);let s=[ee(`div`,{key:`trackC`,class:fe.value,tabindex:t.value,...n.value},[o(`div`,{class:I.value,style:_e.value},a)],`slide`,w.value,()=>Ae.value)];return i.markerLabels!==!1&&s[i.switchMarkerLabelsSide===!0?`unshift`:`push`](o(`div`,{key:`markerL`,class:ge.value},ke())),s}return h(()=>{document.removeEventListener(`mouseup`,Ne,!0)}),{state:{active:f,focus:m,preventFocus:p,dragging:_,editable:w,classes:P,tabindex:O,attributes:N,roundValueFn:D,keyStep:te,trackLen:re,innerMin:x,innerMinRatio:A,innerMax:C,innerMaxRatio:ae,positionProp:oe,sizeProp:se,isReversed:b},methods:{onActivate:Me,onMobileClick:Pe,onBlur:je,onKeyup:Fe,getContent:Re,getThumbRenderFn:Le,convertRatioToModel:ye,convertModelToRatio:B,getDraggingRatio:be}}}var K=()=>({}),je=w({name:`QSlider`,props:{...Oe,modelValue:{required:!0,default:null,validator:e=>typeof e==`number`||e===null},labelValue:[String,Number]},emits:ke,setup(e,{emit:n}){let{proxy:{$q:r}}=S(),{state:i,methods:s}=Ae({updateValue:v,updatePosition:b,getDragging:y,formAttrs:P(e)}),c=a(null),l=a(0),u=a(0);function d(){u.value=e.modelValue===null?i.innerMin.value:L(e.modelValue,i.innerMin.value,i.innerMax.value)}t(()=>`${e.modelValue}|${i.innerMin.value}|${i.innerMax.value}`,d),d();let f=g(()=>s.convertModelToRatio(u.value)),p=g(()=>i.active.value===!0?l.value:f.value),m=g(()=>{let t={[i.positionProp.value]:`${100*i.innerMinRatio.value}%`,[i.sizeProp.value]:`${100*(p.value-i.innerMinRatio.value)}%`};return e.selectionImg!==void 0&&(t.backgroundImage=`url(${e.selectionImg}) !important`),t}),h=s.getThumbRenderFn({focusValue:!0,getNodeData:K,ratio:p,label:g(()=>e.labelValue===void 0?u.value:e.labelValue),thumbColor:g(()=>e.thumbColor||e.color),labelColor:g(()=>e.labelColor),labelTextColor:g(()=>e.labelTextColor)}),_=g(()=>i.editable.value===!0?r.platform.is.mobile===!0?{onClick:s.onMobileClick}:{onMousedown:s.onActivate,onFocus:x,onBlur:s.onBlur,onKeydown:w,onKeyup:s.onKeyup}:{});function v(t){u.value!==e.modelValue&&n(`update:modelValue`,u.value),t===!0&&n(`change`,u.value)}function y(){return c.value.getBoundingClientRect()}function b(t,n=i.dragging.value){let r=s.getDraggingRatio(t,n);u.value=s.convertRatioToModel(r),l.value=e.snap!==!0||e.step===0?r:s.convertModelToRatio(u.value)}function x(){i.focus.value=!0}function w(t){if(G.includes(t.keyCode)===!1)return;C(t);let n=([34,33].includes(t.keyCode)?10:1)*i.keyStep.value,r=([34,37,40].includes(t.keyCode)?-1:1)*(i.isReversed.value===!0?-1:1)*(e.vertical===!0?-1:1)*n;u.value=L(i.roundValueFn.value(u.value+r),i.innerMin.value,i.innerMax.value),v()}return()=>{let t=s.getContent(m,i.tabindex,_,e=>{e.push(h())});return o(`div`,{ref:c,class:i.classes.value+(e.modelValue===null?` q-slider--no-value`:``),...i.attributes.value,"aria-valuenow":e.modelValue},t)}}}),Me={class:`settings-inner`},Ne={class:`settings-header row items-center q-mb-lg`},Pe={class:`text-h5 text-weight-medium text-grey-3`},Fe={class:`settings-card rounded-borders q-pa-lg`},Ie={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Le={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Re={class:`text-subtitle2 q-mb-sm`},ze={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Be={class:`text-subtitle2 q-mb-sm`},Ve={class:`text-subtitle2 q-mb-sm q-mt-md`},He={class:`text-caption text-grey-7 q-mb-sm`},Ue={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},We={class:`text-subtitle2 q-mb-sm`},Ge={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Ke={class:`text-subtitle2 q-mb-sm`},qe={class:`column q-gutter-xs`},Je={class:`row items-center q-gutter-sm q-mt-sm`},Ye={class:`row items-center q-gutter-sm q-mt-sm`},Xe={class:`text-grey-5 text-caption`,style:{"min-width":`80px`}},Ze={class:`text-grey-5 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Qe={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},$e={class:`text-subtitle2 q-mb-sm`},et={class:`text-caption text-grey-7 q-mb-sm`},tt={class:`q-mb-sm`},nt={class:`text-subtitle2 q-mb-sm q-mt-md`},rt={class:`text-caption text-grey-7 q-mb-sm`},it={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},at={class:`text-subtitle2 q-mb-sm`},ot={class:`text-caption text-grey-7 q-mb-sm`},st={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},ct={class:`text-subtitle2 q-mb-sm`},lt={class:`text-caption text-grey-7 q-mb-sm`},ut={class:`q-mb-sm`},dt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ft={class:`q-mb-sm`},pt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},mt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},ht={class:`text-subtitle2 q-mb-sm`},gt={class:`text-caption text-grey-7 q-mb-sm`},_t={class:`q-mb-sm`},vt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},yt={class:`q-mb-sm`},bt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},xt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},St={class:`text-subtitle2 q-mb-sm`},Ct={class:`text-caption text-grey-7 q-mb-sm`},wt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Tt={class:`text-subtitle2 q-mb-sm`},Et={class:`text-caption text-grey-7 q-mb-sm`},Dt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Ot={class:`text-subtitle2 q-mb-sm`},kt={class:`text-caption text-grey-7 q-mb-sm`},At={class:`row q-gutter-sm`},jt={class:`row justify-end`},Mt={class:`row q-gutter-md`,style:{"min-height":`500px`}},Nt={class:`project-list-col`},Pt={class:`settings-card rounded-borders`,style:{height:`100%`}},Ft={class:`q-pa-sm`},It={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-grey-6`,style:{"letter-spacing":`0.05em`}},Lt={key:0,class:`q-pa-md text-center text-caption text-grey-8`},Rt={class:`q-pa-sm`},zt={class:`project-form-col`},Bt={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},Vt={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Ht={class:`q-mb-md`},Ut={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Wt={class:`q-mb-md`},Gt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Kt={class:`q-mb-md`},qt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Jt={class:`q-mb-md`},Yt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Xt={class:`q-mb-md`},Zt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Qt={class:`q-mb-md`},$t={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},en={class:`text-caption text-grey-7 q-mt-xs`},tn={class:`q-mb-lg`},nn={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},rn={class:`text-caption text-grey-7 q-mt-xs`},an={class:`q-mb-lg`},on={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},sn={class:`q-mb-md`},cn={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ln={class:`field-label-sub text-caption q-mb-xs text-grey-7`},un={class:`q-mb-lg`},dn={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},fn={class:`text-caption text-grey-7 q-mb-sm`},pn={class:`q-mb-lg`},mn={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},hn={class:`text-caption text-grey-7 q-mb-sm`},gn={class:`row items-center q-gutter-sm`},_n={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},vn={class:`text-body2 text-grey-8`},yn={class:`settings-card rounded-borders q-pa-lg`},bn={class:`row items-center justify-between q-mb-md`},xn={class:`text-subtitle1 text-weight-medium text-grey-3`},Sn={key:0,class:`text-grey-6 q-py-lg text-center`},Cn={key:1,class:`column q-gutter-sm`},wn={class:`row items-start justify-between no-wrap`},Tn={class:`col`},En={class:`text-body1 text-weight-medium`,style:{"font-family":`'Roboto Mono', monospace`}},Dn={class:`text-caption text-grey-5 q-mt-xs`},On={class:`row no-wrap q-gutter-xs`},kn={class:`text-caption text-grey-7 q-mt-lg`,style:{"font-family":`'Roboto Mono', monospace`}},An={class:`text-subtitle1`},jn={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,columns:`2`,"column-gap":`24px`}},Mn={key:0,class:`text-negative text-caption`},q=z(x({__name:`SettingsPage`,setup(o){let h=xe(),x=se(),S=fe(),{t:C,locale:w}=ce(),ee=a(`global`),T=a(`auto`),E=a(``),D=a(``),ne=a(``),k=a(!0),M=a(!0),N=a(A),P=a(1),L=a(``),R=a(``),z=a(`bypass`),W=a(``),Ee=a(``),De=a([]),G=a(ie),Oe=a(null),ke=[e=>e.trim().length>0||C(`settings.worktreesPathRequired`)],Ae=a(!1),K=a(-1),q=a(!1),J=a({path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}}),Nn=a([]),Pn=a([]);async function Fn(){try{let e=await fetch(`/api/skills`);e.ok&&(Nn.value=await e.json())}catch{}}function In(e,t){t(()=>{let t=e.trim().toLowerCase();Pn.value=t?Nn.value.filter(e=>e.toLowerCase().includes(t)):Nn.value.slice()})}let Y=a([]),Ln=a(!1),Rn=a(!1),zn=a(!1),Bn=a(!1),X=a(null),Vn=a(``),Hn=a(``),Z=a(``),Q=a(``),Un=a(!1),Wn=g(()=>[...S.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),Gn=[`{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 Kn(){X.value=null,Vn.value=``,Hn.value=``,Z.value=``,Q.value=``,Bn.value=!0}function qn(e){X.value=e.slug,Vn.value=e.slug,Hn.value=e.description,Z.value=e.content,Q.value=``,Bn.value=!0}async function Jn(){Q.value=``;let e=Vn.value.trim(),t=Hn.value.trim();if(X.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Q.value=C(`templates.slugInvalid`);return}if(!t){Q.value=C(`templates.descriptionRequired`);return}if(!Z.value.trim()){Q.value=C(`templates.contentRequired`);return}Un.value=!0;try{X.value===null?await S.createTemplate({slug:e,description:t,content:Z.value}):await S.updateTemplate(X.value,{description:t,content:Z.value}),Bn.value=!1}catch(e){Q.value=e instanceof Error?e.message:C(`templates.createFailed`)}finally{Un.value=!1}}async function Yn(e){h.dialog({title:C(`templates.deleteTemplate`),message:`${C(`templates.deleteConfirm`,{slug:e.slug})}\n\n${C(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:C(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:C(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await S.deleteTemplate(e.slug)}catch(e){h.notify({type:`negative`,message:e instanceof Error?e.message:C(`templates.deleteFailed`),position:`top`})}})}let Xn=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function Zn(e){w.value=e,localStorage.setItem(`kobo:locale`,e)}let Qn=g(()=>[...we.map(e=>({label:C(e.i18nLabelKey),value:e.value}))]),$n=g(()=>[{label:C(`settings.useGlobal`),value:``},...Qn.value]),er=g(()=>[{name:`{{pr_number}}`,description:C(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:C(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:C(`settings.var.branchName`)},{name:`{{source_branch}}`,description:C(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:C(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:C(`settings.var.projectName`)},{name:`{{notion_url}}`,description:C(`settings.var.notionUrl`)},{name:`{{commits}}`,description:C(`settings.var.commits`)},{name:`{{diff_stats}}`,description:C(`settings.var.diffStats`)},{name:`{{tasks}}`,description:C(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:C(`settings.var.acceptanceCriteria`)}]),tr=g(()=>[{label:C(`settings.mcpAutoSelect`),value:``},...x.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),nr=g(()=>re.map(e=>({label:C(e.labelKey),value:e.id})));function rr(){ae(N.value,P.value)}let ir=g(()=>K.value<0||K.value>=x.projects.length?null:x.projects[K.value]??null);function ar(){T.value=x.global.defaultModel,E.value=x.global.prPromptTemplate,D.value=x.global.gitConventions,ne.value=x.global.editorCommand??``,k.value=x.global.browserNotifications??!0,M.value=x.global.audioNotifications??!0,N.value=oe(x.global.audioNotificationSound);let e=x.global.audioNotificationVolume;P.value=typeof e==`number`&&Number.isFinite(e)?Math.max(0,Math.min(1,e)):1,L.value=x.global.notionStatusProperty??``,R.value=x.global.notionInProgressStatus??``;{let e=x.global.defaultPermissionMode;z.value=e===`plan`||e===`bypass`||e===`strict`||e===`interactive`?e:`bypass`}W.value=x.global.notionMcpKey??``,Ee.value=x.global.sentryMcpKey??``,De.value=Array.isArray(x.global.tags)?[...x.global.tags]:[],G.value=x.global.worktreesPath??`.worktrees`}function or(e){if(!e){J.value={path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}},Y.value=[];return}J.value={path:e.path,displayName:e.displayName,defaultSourceBranch:e.defaultSourceBranch,defaultModel:e.defaultModel,prPromptTemplate:e.prPromptTemplate,gitConventions:e.gitConventions??``,setupScript:e.setupScript??``,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??``}},e.path&&sr(e.path)}async function sr(e){if(!e.trim()){Y.value=[];return}Ln.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();Y.value=n.local??n.branches??[]}catch{Y.value=[]}finally{Ln.value=!1}}let $=null;t(()=>J.value.path,e=>{$&&clearTimeout($),$=setTimeout(()=>{sr(e)},500)}),t(K,()=>{q.value=!1,or(ir.value)});let cr=a(null);async function lr(){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),h.notify({type:`positive`,message:C(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){h.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function ur(){cr.value?.click()}async function dr(e){let t=e.target,n=t.files?.[0];if(n)try{h.dialog({title:C(`settings.importConfirmTitle`),message:C(`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 x.fetchSettings(),ar(),h.notify({type:`positive`,message:C(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){h.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function fr(){if(await Oe.value?.validate()!==!1){Ae.value=!0;try{await x.updateGlobal({defaultModel:T.value,prPromptTemplate:E.value,gitConventions:D.value,editorCommand:ne.value,browserNotifications:k.value,audioNotifications:M.value,audioNotificationSound:N.value,audioNotificationVolume:P.value,notionStatusProperty:L.value,notionInProgressStatus:R.value,defaultPermissionMode:z.value,notionMcpKey:W.value,sentryMcpKey:Ee.value,tags:De.value,worktreesPath:G.value}),h.notify({type:`positive`,message:C(`settings.saved`),position:`top`})}catch{h.notify({type:`negative`,message:C(`settings.saveError`),position:`top`})}finally{Ae.value=!1}}}async function pr(){if(!J.value.path.trim()){h.notify({type:`negative`,message:C(`settings.projectPathRequired`),position:`top`});return}Rn.value=!0;try{await x.upsertProject(J.value.path.trim(),{displayName:J.value.displayName,defaultSourceBranch:J.value.defaultSourceBranch,defaultModel:J.value.defaultModel,prPromptTemplate:J.value.prPromptTemplate,gitConventions:J.value.gitConventions,setupScript:J.value.setupScript,devServer:J.value.devServer,e2e:J.value.e2e,finalization:J.value.finalization}),q.value=!1;let e=x.projects.findIndex(e=>e.path===J.value.path.trim());e>=0&&(K.value=e),h.notify({type:`positive`,message:C(`settings.projectSaved`),position:`top`})}catch{h.notify({type:`negative`,message:C(`settings.projectSaveError`),position:`top`})}finally{Rn.value=!1}}async function mr(){if(ir.value){zn.value=!0;try{await x.deleteProject(ir.value.path),K.value=-1,q.value=!1,or(null),h.notify({type:`positive`,message:C(`settings.projectDeleted`),position:`top`})}catch{h.notify({type:`negative`,message:C(`settings.projectDeleteError`),position:`top`})}finally{zn.value=!1}}}function hr(){K.value=-1,q.value=!0,or(null)}function gr(e){q.value=!1,K.value=e}function _r(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let vr=a([]);function yr(e,t){t(()=>{vr.value=e?Y.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):Y.value})}return r(async()=>{await Promise.all([x.fetchSettings(),x.fetchActiveMcpServers(),Fn()]),ar()}),i(()=>{$&&clearTimeout($)}),(t,r)=>(e(),d(Te,{class:`settings-page`},{default:s(()=>[b(`div`,Me,[b(`div`,Ne,[p(te,{name:`settings`,size:`24px`,color:`indigo-4`,class:`q-mr-sm`}),b(`span`,Pe,u(t.$t(`settings.title`)),1)]),p(Se,{modelValue:ee.value,"onUpdate:modelValue":r[0]||=e=>ee.value=e,dense:``,"active-color":`indigo-4`,"indicator-color":`indigo-4`,class:`settings-tabs q-mb-lg`,align:`left`,"narrow-indicator":``},{default:s(()=>[p(V,{name:`global`,label:t.$t(`settings.global`)},null,8,[`label`]),p(V,{name:`projects`,label:t.$t(`settings.projects`)},null,8,[`label`]),p(V,{name:`templates`,label:t.$t(`templates.title`)},null,8,[`label`])]),_:1},8,[`modelValue`]),p(Ce,{modelValue:ee.value,"onUpdate:modelValue":r[30]||=e=>ee.value=e,animated:``,class:`settings-panels`},{default:s(()=>[p(H,{name:`global`,class:`q-pa-none`},{default:s(()=>[b(`div`,Fe,[b(`div`,Ie,u(t.$t(`settings.globalSettings`)),1),p(O,{dark:``,class:`q-mb-md`}),b(`div`,Le,[b(`div`,Re,u(t.$t(`settings.language`)),1),p(U,{"model-value":y(w),options:Xn,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":Zn},null,8,[`model-value`])]),b(`div`,ze,[b(`div`,Be,u(t.$t(`settings.defaultModel`)),1),p(U,{modelValue:T.value,"onUpdate:modelValue":r[1]||=e=>T.value=e,options:Qn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),b(`div`,Ve,u(t.$t(`settings.defaultPermissionMode`)),1),b(`div`,He,u(t.$t(`settings.defaultPermissionModeHint`)),1),p(U,{modelValue:z.value,"onUpdate:modelValue":r[2]||=e=>z.value=e,options:[{label:t.$t(`agentPermissionMode.plan`),value:`plan`},{label:t.$t(`agentPermissionMode.bypass`),value:`bypass`},{label:t.$t(`agentPermissionMode.strict`),value:`strict`},{label:t.$t(`agentPermissionMode.interactive`),value:`interactive`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),b(`div`,Ue,[b(`div`,We,u(t.$t(`settings.activityFeed`)),1),p(le,{"model-value":y(x).showVerboseSystemMessages,label:t.$t(`settings.verboseMessages`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`,"onUpdate:modelValue":r[3]||=e=>y(x).toggleVerboseSystemMessages()},null,8,[`model-value`,`label`])]),b(`div`,Ge,[b(`div`,Ke,u(t.$t(`settings.notifications`)),1),b(`div`,qe,[p(le,{modelValue:k.value,"onUpdate:modelValue":r[4]||=e=>k.value=e,label:t.$t(`settings.browserNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),p(le,{modelValue:M.value,"onUpdate:modelValue":r[5]||=e=>M.value=e,label:t.$t(`settings.audioNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),b(`div`,Je,[p(U,{modelValue:N.value,"onUpdate:modelValue":r[6]||=e=>N.value=e,options:nr.value,label:t.$t(`settings.notificationSound`),disable:!M.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`indigo-4`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),p(j,{flat:``,dense:``,color:`indigo-4`,icon:`play_arrow`,label:t.$t(`settings.notificationSoundPreview`),disable:!M.value,onClick:rr},null,8,[`label`,`disable`])]),b(`div`,Ye,[b(`div`,Xe,u(t.$t(`settings.notificationVolume`)),1),p(je,{modelValue:P.value,"onUpdate:modelValue":r[7]||=e=>P.value=e,min:0,max:1,step:.05,disable:!M.value,dark:``,dense:``,color:`indigo-4`,class:`col`},null,8,[`modelValue`,`disable`]),b(`div`,Ze,u(Math.round(P.value*100))+`% `,1)])]),b(`div`,Qe,[b(`div`,$e,u(t.$t(`settings.prPromptTemplate`)),1),b(`div`,et,u(t.$t(`settings.prPromptHint`)),1),p(F,{modelValue:E.value,"onUpdate:modelValue":r[8]||=e=>E.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),b(`div`,tt,[p(ve,{dense:``,dark:``,icon:`code`,label:t.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:s(()=>[p(B,{dense:``,dark:``,class:`q-pa-sm`},{default:s(()=>[(e(!0),_(v,null,n(er.value,t=>(e(),d(he,{key:t.name,dense:``},{default:s(()=>[p(ge,null,{default:s(()=>[p(I,{class:`text-caption`,style:{"font-family":`monospace`}},{default:s(()=>[m(u(t.name),1)]),_:2},1024),p(I,{caption:``,class:`text-grey-7`},{default:s(()=>[m(u(t.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),b(`div`,nt,u(t.$t(`settings.gitConventions`)),1),b(`div`,rt,u(t.$t(`settings.gitConventionsHint`)),1),p(F,{modelValue:D.value,"onUpdate:modelValue":r[9]||=e=>D.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),b(`div`,it,[b(`div`,at,u(t.$t(`settings.editorCommand`)),1),b(`div`,ot,u(t.$t(`settings.editorCommandHint`)),1),p(F,{modelValue:ne.value,"onUpdate:modelValue":r[10]||=e=>ne.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),b(`div`,st,[b(`div`,ct,u(t.$t(`settings.mcpSelection`)),1),b(`div`,lt,u(t.$t(`settings.mcpSelectionHint`)),1),b(`div`,ut,[b(`div`,dt,u(t.$t(`settings.notionMcp`)),1),p(U,{modelValue:W.value,"onUpdate:modelValue":r[11]||=e=>W.value=e,options:tr.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),b(`div`,ft,[b(`div`,pt,u(t.$t(`settings.sentryMcp`)),1),p(U,{modelValue:Ee.value,"onUpdate:modelValue":r[12]||=e=>Ee.value=e,options:tr.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])]),b(`div`,mt,[b(`div`,ht,u(t.$t(`settings.notionStatus`)),1),b(`div`,gt,u(t.$t(`settings.notionStatusHint`)),1),b(`div`,_t,[b(`div`,vt,u(t.$t(`settings.notionStatusProperty`)),1),p(F,{modelValue:L.value,"onUpdate:modelValue":r[13]||=e=>L.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),b(`div`,yt,[b(`div`,bt,u(t.$t(`settings.notionInProgressStatus`)),1),p(F,{modelValue:R.value,"onUpdate:modelValue":r[14]||=e=>R.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])]),b(`div`,xt,[b(`div`,St,u(t.$t(`settings.tagsTitle`)),1),b(`div`,Ct,u(t.$t(`settings.tagsHint`)),1),p(U,{modelValue:De.value,"onUpdate:modelValue":r[15]||=e=>De.value=e,label:t.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])]),b(`div`,wt,[b(`div`,Tt,u(t.$t(`settings.worktreesTitle`)),1),b(`div`,Et,u(t.$t(`settings.worktreesHint`)),1),p(F,{ref_key:`globalWorktreesPathInput`,ref:Oe,modelValue:G.value,"onUpdate:modelValue":r[16]||=e=>G.value=e,label:t.$t(`settings.worktreesPathLabel`),dense:``,dark:``,outlined:``,placeholder:y(ie),rules:ke,"lazy-rules":``,class:`settings-input`},null,8,[`modelValue`,`label`,`placeholder`])]),b(`div`,Dt,[b(`div`,Ot,u(t.$t(`settings.shareTitle`)),1),b(`div`,kt,u(t.$t(`settings.shareHint`)),1),b(`div`,At,[p(j,{label:t.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`grey-4`,onClick:lr},null,8,[`label`]),p(j,{label:t.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`grey-4`,onClick:ur},null,8,[`label`]),b(`input`,{ref_key:`importFileInput`,ref:cr,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:dr},null,544)])]),b(`div`,jt,[p(j,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:Ae.value,onClick:fr},null,8,[`label`,`loading`])])])]),_:1}),p(H,{name:`projects`,class:`q-pa-none`},{default:s(()=>[b(`div`,Mt,[b(`div`,Nt,[b(`div`,Pt,[b(`div`,Ft,[b(`div`,It,u(t.$t(`settings.configuredProjects`)),1)]),p(O,{dark:``}),p(B,{dark:``,dense:``,class:`q-py-xs`},{default:s(()=>[(e(!0),_(v,null,n(y(x).projects,(t,n)=>(e(),d(he,{key:t.path,clickable:``,active:K.value===n&&!q.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>gr(n)},{default:s(()=>[p(ge,null,{default:s(()=>[p(I,{class:`text-body2 text-grey-3`},{default:s(()=>[m(u(_r(t)),1)]),_:2},1024),p(I,{caption:``,class:`text-grey-7 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:s(()=>[m(u(t.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),y(x).projects.length===0&&!y(x).loading?(e(),_(`div`,Lt,u(t.$t(`settings.noProjects`)),1)):f(``,!0),p(O,{dark:``}),b(`div`,Rt,[p(j,{label:t.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`indigo-4`,onClick:hr},null,8,[`label`])])])]),b(`div`,zt,[b(`div`,Bt,[ir.value||q.value?(e(),_(v,{key:0},[b(`div`,Vt,u(q.value?t.$t(`settings.newProject`):t.$t(`settings.editProject`)),1),p(O,{dark:``,class:`q-mb-md`}),b(`div`,Ht,[b(`div`,Ut,u(t.$t(`settings.projectPath`)),1),p(F,{modelValue:J.value.path,"onUpdate:modelValue":r[17]||=e=>J.value.path=e,dense:``,dark:``,outlined:``,readonly:!q.value,placeholder:t.$t(`settings.projectPathPlaceholder`),class:l([`settings-input`,{"readonly-input":!q.value}])},null,8,[`modelValue`,`readonly`,`placeholder`,`class`])]),b(`div`,Wt,[b(`div`,Gt,u(t.$t(`settings.displayName`)),1),p(F,{modelValue:J.value.displayName,"onUpdate:modelValue":r[18]||=e=>J.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),b(`div`,Kt,[b(`div`,qt,u(t.$t(`settings.defaultSourceBranch`)),1),p(U,{modelValue:J.value.defaultSourceBranch,"onUpdate:modelValue":r[19]||=e=>J.value.defaultSourceBranch=e,options:vr.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:Ln.value,class:`settings-input`,placeholder:`main`,onFilter:yr},{"no-option":s(()=>[p(he,null,{default:s(()=>[p(ge,{class:`text-grey-6 text-caption`},{default:s(()=>[m(u(J.value.path.trim()?t.$t(`createPage.noBranches`):t.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),b(`div`,Jt,[b(`div`,Yt,u(t.$t(`settings.defaultModel.project`)),1),p(U,{modelValue:J.value.defaultModel,"onUpdate:modelValue":r[20]||=e=>J.value.defaultModel=e,options:$n.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),b(`div`,Xt,[b(`div`,Zt,u(t.$t(`settings.prPromptTemplate.project`)),1),p(F,{modelValue:J.value.prPromptTemplate,"onUpdate:modelValue":r[21]||=e=>J.value.prPromptTemplate=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:4,placeholder:t.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),b(`div`,Qt,[b(`div`,$t,u(t.$t(`settings.gitConventions.project`)),1),p(F,{modelValue:J.value.gitConventions,"onUpdate:modelValue":r[22]||=e=>J.value.gitConventions=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:6,placeholder:t.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),b(`div`,en,u(t.$t(`settings.gitConventionsEmpty`)),1)]),b(`div`,tn,[b(`div`,nn,u(t.$t(`settings.setupScript`)),1),p(F,{modelValue:J.value.setupScript,"onUpdate:modelValue":r[23]||=e=>J.value.setupScript=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:5,placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),b(`div`,rn,u(t.$t(`settings.setupScriptHint`)),1)]),b(`div`,an,[b(`div`,on,u(t.$t(`settings.devServer`)),1),b(`div`,sn,[b(`div`,cn,u(t.$t(`settings.devServerStart`)),1),p(F,{modelValue:J.value.devServer.startCommand,"onUpdate:modelValue":r[24]||=e=>J.value.devServer.startCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),b(`div`,null,[b(`div`,ln,u(t.$t(`settings.devServerStop`)),1),p(F,{modelValue:J.value.devServer.stopCommand,"onUpdate:modelValue":r[25]||=e=>J.value.devServer.stopCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),b(`div`,un,[b(`div`,dn,u(t.$t(`settings.e2e.title`)),1),b(`div`,fn,u(t.$t(`settings.e2e.helpText`)),1),p(U,{modelValue:J.value.e2e.framework,"onUpdate:modelValue":r[26]||=e=>J.value.e2e.framework=e,options:[{label:t.$t(`settings.e2e.frameworkNone`),value:``},{label:`Cypress`,value:`cypress`},{label:`Playwright`,value:`playwright`},{label:`Jest`,value:`jest`},{label:`Vitest`,value:`vitest`},{label:t.$t(`settings.e2e.frameworkOther`),value:`other`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:t.$t(`settings.e2e.framework`)},null,8,[`modelValue`,`options`,`label`]),J.value.e2e.framework?(e(),_(v,{key:0},[p(U,{modelValue:J.value.e2e.skill,"onUpdate:modelValue":r[27]||=e=>J.value.e2e.skill=e,options:Pn.value,"use-input":``,"fill-input":``,"hide-selected":``,"hide-dropdown-icon":``,"input-debounce":`200`,"new-value-mode":`add-unique`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:t.$t(`settings.e2e.skill`),placeholder:t.$t(`settings.e2e.skillPlaceholder`),onFilter:In},null,8,[`modelValue`,`options`,`label`,`placeholder`]),p(F,{modelValue:J.value.e2e.prompt,"onUpdate:modelValue":r[28]||=e=>J.value.e2e.prompt=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea`,label:t.$t(`settings.e2e.prompt`),placeholder:t.$t(`settings.e2e.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])],64)):f(``,!0)]),b(`div`,pn,[b(`div`,mn,u(t.$t(`settings.finalization.title`)),1),b(`div`,hn,u(t.$t(`settings.finalization.helpText`)),1),p(F,{modelValue:J.value.finalization.prompt,"onUpdate:modelValue":r[29]||=e=>J.value.finalization.prompt=e,type:`textarea`,autogrow:``,rows:`4`,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea q-mb-sm`,label:t.$t(`settings.finalization.prompt`),placeholder:t.$t(`settings.finalization.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])]),b(`div`,gn,[q.value?f(``,!0):(e(),d(j,{key:0,label:t.$t(`common.delete`),"no-caps":``,flat:``,color:`red-5`,loading:zn.value,onClick:mr},null,8,[`label`,`loading`])),p(ye),p(j,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:Rn.value,onClick:pr},null,8,[`label`,`loading`])])],64)):(e(),_(`div`,_n,[p(te,{name:`folder_open`,size:`48px`,color:`grey-7`,class:`q-mb-md`}),b(`div`,vn,u(t.$t(`settings.selectProject`)),1)]))])])])]),_:1}),p(H,{name:`templates`,class:`q-pa-none`},{default:s(()=>[b(`div`,yn,[b(`div`,bn,[b(`div`,xn,u(t.$t(`templates.title`)),1),p(j,{color:`primary`,icon:`add`,label:t.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:Kn},null,8,[`label`])]),p(O,{dark:``,class:`q-mb-md`}),Wn.value.length===0?(e(),_(`div`,Sn,u(t.$t(`templates.empty`)),1)):(e(),_(`div`,Cn,[(e(!0),_(v,null,n(Wn.value,n=>(e(),d(me,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:s(()=>[b(`div`,wn,[b(`div`,Tn,[b(`div`,En,` /`+u(n.slug),1),b(`div`,Dn,u(n.description),1)]),b(`div`,On,[p(j,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`grey-5`,onClick:e=>qn(n)},{default:s(()=>[p(_e,null,{default:s(()=>[m(u(t.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),p(j,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>Yn(n)},{default:s(()=>[p(_e,null,{default:s(()=>[m(u(t.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),b(`div`,kn,u(t.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])]),_:1})]),_:1},8,[`modelValue`])]),p(de,{modelValue:Bn.value,"onUpdate:modelValue":r[34]||=e=>Bn.value=e,persistent:``},{default:s(()=>[p(me,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:s(()=>[p(ue,null,{default:s(()=>[b(`div`,An,u(X.value===null?t.$t(`templates.newTemplate`):t.$t(`templates.editTemplate`)),1)]),_:1}),p(ue,{class:`q-gutter-md`},{default:s(()=>[p(F,{modelValue:Vn.value,"onUpdate:modelValue":r[31]||=e=>Vn.value=e,label:t.$t(`templates.slug`),hint:t.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:X.value!==null,rules:[e=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)||t.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),p(F,{modelValue:Hn.value,"onUpdate:modelValue":r[32]||=e=>Hn.value=e,label:t.$t(`templates.description`),hint:t.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),p(F,{modelValue:Z.value,"onUpdate:modelValue":r[33]||=e=>Z.value=e,label:t.$t(`templates.content`),hint:t.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),p(ve,{dense:``,"dense-toggle":``,label:t.$t(`templates.availableVars`),"header-class":`text-grey-6 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:s(()=>[b(`div`,jn,[(e(),_(v,null,n(Gn,e=>b(`div`,{key:e,class:`text-grey-5 q-mb-xs`},u(e),1)),64))])]),_:1},8,[`label`]),Q.value?(e(),_(`div`,Mn,u(Q.value),1)):f(``,!0)]),_:1}),p(pe,{align:`right`},{default:s(()=>[c(p(j,{flat:``,label:t.$t(`common.cancel`)},null,8,[`label`]),[[be]]),p(j,{flat:``,color:`primary`,label:X.value===null?t.$t(`templates.create`):t.$t(`templates.save`),loading:Un.value,onClick:Jn},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-3a052566`]]);export{q as default};
@@ -1 +0,0 @@
1
- .settings-page[data-v-3a052566]{background-color:#1a1a2e;min-height:100%;padding:32px 24px}.settings-inner[data-v-3a052566]{width:100%;max-width:900px;margin:0 auto}.settings-header[data-v-3a052566]{min-height:48px}.settings-tabs[data-v-3a052566] .q-tab{color:#888;text-transform:none;font-weight:500}.settings-tabs[data-v-3a052566] .q-tab--active{color:#6c63ff}.settings-panels[data-v-3a052566]{background:0 0}.settings-card[data-v-3a052566]{background:#224;border:1px solid #2a2a4a}.template-card[data-v-3a052566]{background:#1a1a2e;border:1px solid #2a2a4a}.settings-input[data-v-3a052566] .q-field__control{background:#1a1a2e;border-color:#2a2a4a}.settings-input[data-v-3a052566] .q-field__native,.settings-input[data-v-3a052566] input,.settings-input[data-v-3a052566] textarea{color:#e0e0e0}.settings-input[data-v-3a052566] .q-field__label{color:#888}.mono-textarea[data-v-3a052566] textarea{font-family:JetBrains Mono,Fira Code,monospace;font-size:13px}.readonly-input[data-v-3a052566] .q-field__control{background:#16162a}.readonly-input[data-v-3a052566] input{color:#888}.project-list-col[data-v-3a052566]{flex-shrink:0;width:30%;min-width:200px;max-width:280px;overflow:hidden}.project-form-col[data-v-3a052566]{flex:1;min-width:0}.project-item[data-v-3a052566]:hover{background-color:#ffffff08}.project-item--active[data-v-3a052566]{border-left:3px solid #6c63ff;background-color:#2a2a4a!important}
@@ -1 +0,0 @@
1
- import{m as e,o as t}from"./index-DE3PxEjy.js";var n=t(({app:t})=>{t.use(e)});export{n as default};