@loicngr/kobo 1.7.0 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -4
- package/dist/mcp-server/kobo-tasks-handlers.js +2 -1
- package/dist/server/routes/health.js +2 -2
- package/dist/server/routes/settings.js +2 -1
- package/dist/server/routes/workspaces.js +5 -11
- package/dist/server/services/agent/engines/claude-code/engine.js +6 -0
- package/dist/server/services/agent/engines/claude-code/resolve-binary.js +50 -0
- package/dist/server/services/agent/orchestrator.js +14 -5
- package/dist/server/services/auto-loop-service.js +2 -2
- package/dist/server/services/dev-server-service.js +2 -2
- package/dist/server/services/pr-watcher-service.js +63 -13
- package/dist/server/services/settings-service.js +62 -1
- package/dist/server/services/wakeup-service.js +2 -2
- package/dist/server/services/workspace-service.js +23 -1
- package/dist/server/services/worktree-service.js +17 -7
- package/dist/server/utils/git-ops.js +12 -4
- package/dist/server/utils/worktree-paths.js +134 -0
- package/dist/shared/consts.js +1 -0
- package/package.json +1 -1
- package/src/client/dist/spa/assets/ActivityFeed-B85xav_e.js +7 -0
- package/src/client/dist/spa/assets/ClosePopup-BP025_cK.js +1 -0
- package/src/client/dist/spa/assets/{CreatePage-U6TtJzNe.js → CreatePage-DyR33jFM.js} +2 -2
- package/src/client/dist/spa/assets/{DiffViewer-Di85TBIi.js → DiffViewer-CqhpTkym.js} +3 -3
- package/src/client/dist/spa/assets/{HealthPage-B7aWFxAZ.js → HealthPage-CkHv5qMK.js} +1 -1
- package/src/client/dist/spa/assets/{MainLayout-Dba6SdpU.css → MainLayout-B07zv82Z.css} +1 -1
- package/src/client/dist/spa/assets/{MainLayout-BHBrz4c9.js → MainLayout-l91ohFQA.js} +4 -4
- package/src/client/dist/spa/assets/{QBadge-fsQ2AokU.js → QBadge-DWH42dbo.js} +1 -1
- package/src/client/dist/spa/assets/{QBtn-DHwAb18J.js → QBtn-a6jxWjmW.js} +1 -1
- package/src/client/dist/spa/assets/{QCheckbox-CcY7ZSk9.js → QCheckbox-D5jfsxLV.js} +1 -1
- package/src/client/dist/spa/assets/{QChip-BhT0W2Dg.js → QChip-ByxK0Tuf.js} +1 -1
- package/src/client/dist/spa/assets/QExpansionItem-BaQJkGb-.js +1 -0
- package/src/client/dist/spa/assets/{QIcon-B0-pH3Qs.js → QIcon-BJuyqdsT.js} +1 -1
- package/src/client/dist/spa/assets/QInput-Cm5-AGQ4.js +1 -0
- package/src/client/dist/spa/assets/{QItemLabel-DWwenW2S.js → QItemLabel-DrTxqTqV.js} +1 -1
- package/src/client/dist/spa/assets/{QItemSection-KFAnxzMK.js → QItemSection-5YpFpPDm.js} +1 -1
- package/src/client/dist/spa/assets/{QList-NmIE6Rd9.js → QList-D0FtnQJI.js} +1 -1
- package/src/client/dist/spa/assets/QMenu-DgWZe7Uh.js +1 -0
- package/src/client/dist/spa/assets/QPage-ChUKoaKe.js +1 -0
- package/src/client/dist/spa/assets/{QRadio-DaZhdLCg.js → QRadio-B3aKjCVu.js} +1 -1
- package/src/client/dist/spa/assets/QScrollArea-usfgatuS.js +1 -0
- package/src/client/dist/spa/assets/{QSpace-COlmM_4F.js → QSpace-CLtL3aPy.js} +1 -1
- package/src/client/dist/spa/assets/{QSpinnerDots-DwtnRN2r.js → QSpinnerDots-CszPQQ9J.js} +1 -1
- package/src/client/dist/spa/assets/QTabPanels-CjpZTIJg.js +1 -0
- package/src/client/dist/spa/assets/{QToggle-CGpiJLDJ.js → QToggle-1-N9qWq4.js} +1 -1
- package/src/client/dist/spa/assets/QTooltip-D_hSPb7r.js +1 -0
- package/src/client/dist/spa/assets/{SearchPage-CVm-sqxH.js → SearchPage-B1WhFCUf.js} +1 -1
- package/src/client/dist/spa/assets/SettingsPage-B7S5fXGG.js +1 -0
- package/src/client/dist/spa/assets/SettingsPage-kHd651y8.css +1 -0
- package/src/client/dist/spa/assets/TouchPan-1PETKHN0.js +1 -0
- package/src/client/dist/spa/assets/WorkspacePage-D3MBshNH.js +4 -0
- package/src/client/dist/spa/assets/{WorkspacePage-DQxGe62K.css → WorkspacePage-d_B0-LNG.css} +1 -1
- package/src/client/dist/spa/assets/{build-path-tree-CdY1A6aP.js → build-path-tree-w3SEPAbh.js} +1 -1
- package/src/client/dist/spa/assets/{cssMode-BVNBMOxh.js → cssMode-B6CD4qMI.js} +1 -1
- package/src/client/dist/spa/assets/{documents-D6A3wRry.js → documents-kx0vLfSG.js} +1 -1
- package/src/client/dist/spa/assets/{editor.api-D6Vfp5yv.js → editor.api-wizjkvCK.js} +1 -1
- package/src/client/dist/spa/assets/{editor.main-CTCYF6V4.js → editor.main-Bn6fpPLF.js} +3 -3
- package/src/client/dist/spa/assets/expand-template-Cu5GSLCM.js +1 -0
- package/src/client/dist/spa/assets/{formatters-ejxELb0M.js → formatters-BD0_hovB.js} +1 -1
- package/src/client/dist/spa/assets/{freemarker2-nmzwPmzi.js → freemarker2-DW-DFUis.js} +1 -1
- package/src/client/dist/spa/assets/{handlebars-CI9lR7Ef.js → handlebars-CSSQFRHS.js} +1 -1
- package/src/client/dist/spa/assets/{html-BQ21REnv.js → html-Ba5lfQna.js} +1 -1
- package/src/client/dist/spa/assets/{htmlMode-io5J5Qr1.js → htmlMode-ocrlHn5h.js} +1 -1
- package/src/client/dist/spa/assets/i18n-CqK8B0Nz.js +1 -0
- package/src/client/dist/spa/assets/index-DE3PxEjy.js +2 -0
- package/src/client/dist/spa/assets/{javascript--u9PDBCv.js → javascript-DL3j24x3.js} +1 -1
- package/src/client/dist/spa/assets/{jsonMode-DBG5llk4.js → jsonMode-CtFp2BJe.js} +1 -1
- package/src/client/dist/spa/assets/{liquid-DxAS4nYF.js → liquid-B_GGNnlJ.js} +1 -1
- package/src/client/dist/spa/assets/marked.esm-D4t0_2pc.js +60 -0
- package/src/client/dist/spa/assets/{mdx-BNXTiODW.js → mdx-BXe8MrIz.js} +1 -1
- package/src/client/dist/spa/assets/models-BMOYJtwv.js +1 -0
- package/src/client/dist/spa/assets/{monaco.contribution-CT3LAK0J.js → monaco.contribution-DSSRKV2r.js} +2 -2
- package/src/client/dist/spa/assets/notifications-CG-oL2m2.js +1 -0
- package/src/client/dist/spa/assets/{python-DztNww13.js → python-DPtBXcrE.js} +1 -1
- package/src/client/dist/spa/assets/{razor-Cyr82NZF.js → razor-y1p5VjhT.js} +1 -1
- package/src/client/dist/spa/assets/{tsMode-CbQVgsIP.js → tsMode-CV2CQlAd.js} +1 -1
- package/src/client/dist/spa/assets/{typescript-UHOe4d1S.js → typescript-DsjWQLAN.js} +1 -1
- package/src/client/dist/spa/assets/use-checkbox-D7zmRxGI.js +1 -0
- package/src/client/dist/spa/assets/{use-id-CDuXkR0Z.js → use-id-CuaR1RiE.js} +1 -1
- package/src/client/dist/spa/assets/use-panel-D2MjPZiL.js +1 -0
- package/src/client/dist/spa/assets/{xml-DC88eFpV.js → xml-AQhpP8em.js} +1 -1
- package/src/client/dist/spa/assets/{yaml-DSTsIRJr.js → yaml-zZFlU7RD.js} +1 -1
- package/src/client/dist/spa/index.html +11 -13
- package/src/client/dist/spa/sounds/ca_va_peter.mp3 +0 -0
- package/src/client/dist/spa/sounds/dry-fart.mp3 +0 -0
- package/src/client/dist/spa/sounds/faaah.mp3 +0 -0
- package/src/client/dist/spa/sounds/for-shure.mp3 +0 -0
- package/src/client/dist/spa/sounds/travail_termine.mp3 +0 -0
- package/src/mcp-server/kobo-tasks-handlers.ts +2 -1
- package/src/client/dist/spa/assets/ActivityFeed-CIJPN8TH.js +0 -7
- package/src/client/dist/spa/assets/ClosePopup-DzB3mDtj.js +0 -1
- package/src/client/dist/spa/assets/QExpansionItem-VS4b4eY6.js +0 -1
- package/src/client/dist/spa/assets/QInput-D4WJro4e.js +0 -1
- package/src/client/dist/spa/assets/QMenu-CchbRXbp.js +0 -1
- package/src/client/dist/spa/assets/QPage-Cu7zkfc6.js +0 -1
- package/src/client/dist/spa/assets/QResizeObserver-Cf79V-VZ.js +0 -1
- package/src/client/dist/spa/assets/QScrollArea-DrVTDLU0.js +0 -1
- package/src/client/dist/spa/assets/QTabPanels-HXz-evuj.js +0 -1
- package/src/client/dist/spa/assets/QTooltip-DjJYMTkN.js +0 -1
- package/src/client/dist/spa/assets/SettingsPage-ayDKGo9H.js +0 -1
- package/src/client/dist/spa/assets/SettingsPage-wTBCvK6t.css +0 -1
- package/src/client/dist/spa/assets/WorkspacePage-xaVy8s5i.js +0 -4
- package/src/client/dist/spa/assets/expand-template-vHV2iwXf.js +0 -1
- package/src/client/dist/spa/assets/i18n-Do8Kn8n0.js +0 -1
- package/src/client/dist/spa/assets/index-C_e7KOYh.js +0 -2
- package/src/client/dist/spa/assets/is-BbsvEMaT.js +0 -1
- package/src/client/dist/spa/assets/marked.esm-DuOsJx63.js +0 -60
- package/src/client/dist/spa/assets/models-DNYEhFF7.js +0 -1
- package/src/client/dist/spa/assets/settings-Dbx1_ksA.js +0 -1
- package/src/client/dist/spa/assets/symbols-BVRrMH2r.js +0 -1
- package/src/client/dist/spa/assets/use-checkbox-DzHmcu7s.js +0 -1
- package/src/client/dist/spa/assets/use-panel-Br8QNRMk.js +0 -1
- /package/src/client/dist/spa/assets/{_plugin-vue_export-helper-B8bB5DBd.js → _plugin-vue_export-helper-Cj6tcsj6.js} +0 -0
- /package/src/client/dist/spa/assets/{abap-DzK-OTGh.js → abap-DiwvWnMr.js} +0 -0
- /package/src/client/dist/spa/assets/{apex-Bj60_dRt.js → apex-CmtZjKlf.js} +0 -0
- /package/src/client/dist/spa/assets/{azcli-B6NwaBAZ.js → azcli-DL2My_i-.js} +0 -0
- /package/src/client/dist/spa/assets/{bat-bf7wXV68.js → bat-B-nC98wG.js} +0 -0
- /package/src/client/dist/spa/assets/{bicep-C_bg8UgA.js → bicep-Ju5MwOgh.js} +0 -0
- /package/src/client/dist/spa/assets/{cameligo-CTWw4D4B.js → cameligo-8Eu1TyBr.js} +0 -0
- /package/src/client/dist/spa/assets/{clojure-CgdPoH0r.js → clojure-u-RpMkH3.js} +0 -0
- /package/src/client/dist/spa/assets/{coffee-gHQfdA5M.js → coffee-CdA7bbTe.js} +0 -0
- /package/src/client/dist/spa/assets/{cpp-BM4Jj4aW.js → cpp-CzNFP8ks.js} +0 -0
- /package/src/client/dist/spa/assets/{csharp-D8-bh4Cd.js → csharp-j1LThmcE.js} +0 -0
- /package/src/client/dist/spa/assets/{csp-CXBxRx0n.js → csp-CLRC61y6.js} +0 -0
- /package/src/client/dist/spa/assets/{css-DKjIxrmY.js → css-r6rC_7P2.js} +0 -0
- /package/src/client/dist/spa/assets/{cypher-C5e5inIh.js → cypher-CW08XVUh.js} +0 -0
- /package/src/client/dist/spa/assets/{dart-BhRHHm4x.js → dart-Cs9aL5T_.js} +0 -0
- /package/src/client/dist/spa/assets/{dockerfile-DW5REF8E.js → dockerfile-BWM0M184.js} +0 -0
- /package/src/client/dist/spa/assets/{ecl-Bw4Hg3n_.js → ecl-MJJuer5P.js} +0 -0
- /package/src/client/dist/spa/assets/{elixir-DHmoBvpZ.js → elixir-D2AIuXqn.js} +0 -0
- /package/src/client/dist/spa/assets/{flow9-BsFExz3v.js → flow9-B2H24giC.js} +0 -0
- /package/src/client/dist/spa/assets/{fsharp-BaeLhgfq.js → fsharp-CMk2OIJN.js} +0 -0
- /package/src/client/dist/spa/assets/{go-Bd-NFKIC.js → go-BrMkuJg0.js} +0 -0
- /package/src/client/dist/spa/assets/{graphql-DZVerJfy.js → graphql-PSR1UKGv.js} +0 -0
- /package/src/client/dist/spa/assets/{hcl-CAVzrZfH.js → hcl-DAQrbDOW.js} +0 -0
- /package/src/client/dist/spa/assets/{ini-CyXdX58t.js → ini-0TG5BxW0.js} +0 -0
- /package/src/client/dist/spa/assets/{java-B5pNgvhy.js → java-rgorz17v.js} +0 -0
- /package/src/client/dist/spa/assets/{julia-XRhmV3AN.js → julia-C8VMdHm8.js} +0 -0
- /package/src/client/dist/spa/assets/{kobo-commands-DiUm1Y34.js → kobo-commands-w8VepGvD.js} +0 -0
- /package/src/client/dist/spa/assets/{kotlin-DOd3J5vr.js → kotlin-CllWo3gX.js} +0 -0
- /package/src/client/dist/spa/assets/{less-veZSnyw6.js → less-Cgca25AP.js} +0 -0
- /package/src/client/dist/spa/assets/{lexon-QWGkuK0H.js → lexon-D0GHdBaw.js} +0 -0
- /package/src/client/dist/spa/assets/{lua-CYGpjuO5.js → lua-DmRsNG-P.js} +0 -0
- /package/src/client/dist/spa/assets/{m3-yNnrZkdc.js → m3-BgL5dNKT.js} +0 -0
- /package/src/client/dist/spa/assets/{markdown-BCSWEPSX.js → markdown-BuJfycGS.js} +0 -0
- /package/src/client/dist/spa/assets/{mips-OpYmcC30.js → mips-C9m_93PR.js} +0 -0
- /package/src/client/dist/spa/assets/{msdax-2oxoTO9Z.js → msdax-CpFHC9OI.js} +0 -0
- /package/src/client/dist/spa/assets/{mysql-5KlC-K_9.js → mysql-qFvltsqN.js} +0 -0
- /package/src/client/dist/spa/assets/{objective-c-CcDCgtLx.js → objective-c-Bnmr858J.js} +0 -0
- /package/src/client/dist/spa/assets/{pascal-BZGsbaEV.js → pascal-WP0_D5AO.js} +0 -0
- /package/src/client/dist/spa/assets/{pascaligo-DtD5qU3G.js → pascaligo-Blom4Rij.js} +0 -0
- /package/src/client/dist/spa/assets/{perl-C1jNNS3E.js → perl-B-vk8g64.js} +0 -0
- /package/src/client/dist/spa/assets/{pgsql-CT0fhiZa.js → pgsql-Cgvz6v67.js} +0 -0
- /package/src/client/dist/spa/assets/{php-D6DrXoPM.js → php-8a3Lrw9m.js} +0 -0
- /package/src/client/dist/spa/assets/{pla-b3-HN2pF.js → pla-DuFqEZ8V.js} +0 -0
- /package/src/client/dist/spa/assets/{postiats-Bin2ApVS.js → postiats-DkLtSgkp.js} +0 -0
- /package/src/client/dist/spa/assets/{powerquery-7ASnn-ZG.js → powerquery-BJ1aNepW.js} +0 -0
- /package/src/client/dist/spa/assets/{powershell-t4p7sU1H.js → powershell-rE98k687.js} +0 -0
- /package/src/client/dist/spa/assets/{protobuf-BUGeWa_j.js → protobuf-CUheFacr.js} +0 -0
- /package/src/client/dist/spa/assets/{pug-BuKcgC9s.js → pug-LDcAMD8w.js} +0 -0
- /package/src/client/dist/spa/assets/{qsharp-DSMtI_O7.js → qsharp-DUKSQoR1.js} +0 -0
- /package/src/client/dist/spa/assets/{r-DMlFgn7A.js → r-D-QApv87.js} +0 -0
- /package/src/client/dist/spa/assets/{redis-cXItkC5u.js → redis-SXdDyWR9.js} +0 -0
- /package/src/client/dist/spa/assets/{redshift-BZVbW7HE.js → redshift-Y6lsCryn.js} +0 -0
- /package/src/client/dist/spa/assets/{restructuredtext-BzjxwS8h.js → restructuredtext-edObr9a8.js} +0 -0
- /package/src/client/dist/spa/assets/{ruby-C5nyLV4l.js → ruby-CNnUfF-8.js} +0 -0
- /package/src/client/dist/spa/assets/{rust-BcmMsHdf.js → rust-IHUZWzBr.js} +0 -0
- /package/src/client/dist/spa/assets/{sb-Dnb1iy6B.js → sb-DrUvY44N.js} +0 -0
- /package/src/client/dist/spa/assets/{scala-anMIFYpA.js → scala-B4hbXGLM.js} +0 -0
- /package/src/client/dist/spa/assets/{scheme-BItQTe08.js → scheme-BGrd12j3.js} +0 -0
- /package/src/client/dist/spa/assets/{scss-BOv51BJ5.js → scss-x5G1ES4U.js} +0 -0
- /package/src/client/dist/spa/assets/{shell-BsRYRTNN.js → shell-DOehe2Y8.js} +0 -0
- /package/src/client/dist/spa/assets/{solidity-BtuLgGDx.js → solidity-BeRvcwWV.js} +0 -0
- /package/src/client/dist/spa/assets/{sophia-B0Vkc5MF.js → sophia-DZbkUNjy.js} +0 -0
- /package/src/client/dist/spa/assets/{sparql-B7lvkZQM.js → sparql-B7_oi5-h.js} +0 -0
- /package/src/client/dist/spa/assets/{sql-DvP5MpA3.js → sql-CTlsFWVE.js} +0 -0
- /package/src/client/dist/spa/assets/{st-GVUeyB3U.js → st-DJVEJdPE.js} +0 -0
- /package/src/client/dist/spa/assets/{swift-DSPIoCjm.js → swift-CwhT3fYa.js} +0 -0
- /package/src/client/dist/spa/assets/{systemverilog-Icj2-k23.js → systemverilog-BQN63pkN.js} +0 -0
- /package/src/client/dist/spa/assets/{tcl-Cd8KQcm-.js → tcl-DqwfpskA.js} +0 -0
- /package/src/client/dist/spa/assets/{touch-Co9pfjUU.js → touch-HRdTUO2o.js} +0 -0
- /package/src/client/dist/spa/assets/{twig-CBHmt8z3.js → twig-BiyenUgc.js} +0 -0
- /package/src/client/dist/spa/assets/{typespec-Ckc037mq.js → typespec-CWOJribt.js} +0 -0
- /package/src/client/dist/spa/assets/{use-quasar-Cc4smfg5.js → use-quasar-Sdcq6zzV.js} +0 -0
- /package/src/client/dist/spa/assets/{vb-B97GW9Wb.js → vb-Cq5F87m3.js} +0 -0
- /package/src/client/dist/spa/assets/{vue-i18n-eUDnMrPl.js → vue-i18n-BcfTCFFS.js} +0 -0
- /package/src/client/dist/spa/assets/{wgsl-DIKmb3YH.js → wgsl-BAvW2lVr.js} +0 -0
- /package/src/client/dist/spa/{notification.mp3 → sounds/hey.mp3} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{E as e,H as t,M as n,Q as r,S as i,k as a,l as o,y as s}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{D as c,M as l,O as u,_ as d,m as f,s as p,v as m,w as h,x as g}from"./QIcon-B0-pH3Qs.js";import{d as _,f as v}from"./use-id-CDuXkR0Z.js";import{C as y,D as b,E as x,S,T as C,c as w,d as T,m as ee,s as te,v as E,w as D,x as ne}from"./settings-Dbx1_ksA.js";var O=u({name:`QSlideTransition`,props:{appear:Boolean,duration:{type:Number,default:300}},emits:[`show`,`hide`],setup(e,{slots:t,emit:n}){let r=!1,o,s,c=null,u=null,d,f;function p(){o?.(),o=null,r=!1,c!==null&&(clearTimeout(c),c=null),u!==null&&(clearTimeout(u),u=null),s?.removeEventListener(`transitionend`,d),d=null}function m(t,n,i){n!==void 0&&(t.style.height=`${n}px`),t.style.transition=`height ${e.duration}ms cubic-bezier(.25, .8, .50, 1)`,r=!0,o=i}function h(e,t){e.style.overflowY=null,e.style.height=null,e.style.transition=null,p(),t!==f&&n(t)}function g(t,n){let i=0;s=t,r===!0?(p(),i=t.offsetHeight===t.scrollHeight?0:void 0):(f=`hide`,t.style.overflowY=`hidden`),m(t,i,n),c=setTimeout(()=>{c=null,t.style.height=`${t.scrollHeight}px`,d=e=>{u=null,(Object(e)!==e||e.target===t)&&h(t,`show`)},t.addEventListener(`transitionend`,d),u=setTimeout(d,e.duration*1.1)},100)}function _(t,n){let i;s=t,r===!0?p():(f=`show`,t.style.overflowY=`hidden`,i=t.scrollHeight),m(t,i,n),c=setTimeout(()=>{c=null,t.style.height=0,d=e=>{u=null,(Object(e)!==e||e.target===t)&&h(t,`hide`)},t.addEventListener(`transitionend`,d),u=setTimeout(d,e.duration*1.1)},100)}return a(()=>{r===!0&&p()}),()=>i(l,{css:!1,appear:e.appear,onEnter:g,onLeave:_},t.default)}});function k(){if(window.getSelection!==void 0){let e=window.getSelection();e.empty===void 0?e.removeAllRanges!==void 0&&(e.removeAllRanges(),_.is.mobile!==!0&&e.addRange(document.createRange())):e.empty()}else document.selection!==void 0&&document.selection.empty()}function A(e,t,n){return n<=t?t:Math.min(n,Math.max(t,e))}function j(e,t,n){if(n<=t)return t;let r=n-t+1,i=t+(e-t)%r;return i<t&&(i=r+i),i===0?0:i}var M={target:{type:[Boolean,String,Element],default:!0},noParentEvent:Boolean},N={...M,contextMenu:Boolean};function P({showing:i,avoidEmit:o,configureAnchorEl:c}){let{props:l,proxy:u,emit:p}=s(),g=r(null),_=null;function v(e){return g.value===null?!1:e===void 0||e.touches===void 0||e.touches.length<=1}let y={};c===void 0&&(Object.assign(y,{hide(e){u.hide(e)},toggle(e){u.toggle(e),e.qAnchorHandled=!0},toggleKey(e){f(e,13)===!0&&y.toggle(e)},contextClick(t){u.hide(t),h(t),e(()=>{u.show(t),t.qAnchorHandled=!0})},prevent:h,mobileTouch(e){if(y.mobileCleanup(e),v(e)!==!0)return;u.hide(e),g.value.classList.add(`non-selectable`);let t=e.target;d(y,`anchor`,[[t,`touchmove`,`mobileCleanup`,`passive`],[t,`touchend`,`mobileCleanup`,`passive`],[t,`touchcancel`,`mobileCleanup`,`passive`],[g.value,`contextmenu`,`prevent`,`notPassive`]]),_=setTimeout(()=>{_=null,u.show(e),e.qAnchorHandled=!0},300)},mobileCleanup(e){g.value.classList.remove(`non-selectable`),_!==null&&(clearTimeout(_),_=null),i.value===!0&&e!==void 0&&k()}}),c=function(e=l.contextMenu){if(l.noParentEvent===!0||g.value===null)return;let t;t=e===!0?u.$q.platform.is.mobile===!0?[[g.value,`touchstart`,`mobileTouch`,`passive`]]:[[g.value,`mousedown`,`hide`,`passive`],[g.value,`contextmenu`,`contextClick`,`notPassive`]]:[[g.value,`click`,`toggle`,`passive`],[g.value,`keyup`,`toggleKey`,`passive`]],d(y,`anchor`,t)});function b(){m(y,`anchor`)}function x(e){for(g.value=e;g.value.classList.contains(`q-anchor--skip`);)g.value=g.value.parentNode;c()}function S(){if(l.target===!1||l.target===``||u.$el.parentNode===null)g.value=null;else if(l.target===!0)x(u.$el.parentNode);else{let e=l.target;if(typeof l.target==`string`)try{e=document.querySelector(l.target)}catch{e=void 0}e==null?(g.value=null,console.error(`Anchor: target "${l.target}" not found`)):(g.value=e.$el||e,c())}}return t(()=>l.contextMenu,e=>{g.value!==null&&(b(),c(e))}),t(()=>l.target,()=>{g.value!==null&&b(),S()}),t(()=>l.noParentEvent,e=>{g.value!==null&&(e===!0?b():c())}),n(()=>{S(),o!==!0&&l.modelValue===!0&&g.value===null&&p(`update:modelValue`,!1)}),a(()=>{_!==null&&clearTimeout(_),b()}),{anchorEl:g,canShow:v,anchorEvents:y}}function F(e,n){let i=r(null),o;function s(e,t){let n=`${t===void 0?`remove`:`add`}EventListener`,r=t===void 0?o:t;e!==window&&e[n](`scroll`,r,g.passive),window[n](`scroll`,r,g.passive),o=t}function c(){i.value!==null&&(s(i.value),i.value=null)}return a(t(()=>e.noParentEvent,()=>{i.value!==null&&(c(),n())})),{localScrollTarget:i,unconfigureScrollTarget:c,changeScrollEvent:s}}var I=null,{notPassiveCapture:L}=g,R=[];function z(e){I!==null&&(clearTimeout(I),I=null);let t=e.target;if(t===void 0||t.nodeType===8||t.classList.contains(`no-pointer-events`)===!0)return;let n=E.length-1;for(;n>=0;){let e=E[n].$;if(e.type.name===`QTooltip`){n--;continue}if(e.type.name!==`QDialog`)break;if(e.props.seamless!==!0)return;n--}for(let n=R.length-1;n>=0;n--){let r=R[n];if((r.anchorEl.value===null||r.anchorEl.value.contains(t)===!1)&&(t===document.body||r.innerRef.value!==null&&r.innerRef.value.contains(t)===!1))e.qClickOutside=!0,r.onClickOutside(e);else return}}function B(e){R.push(e),R.length===1&&(document.addEventListener(`mousedown`,z,L),document.addEventListener(`touchstart`,z,L))}function V(e){let t=R.findIndex(t=>t===e);t!==-1&&(R.splice(t,1),R.length===0&&(I!==null&&(clearTimeout(I),I=null),document.removeEventListener(`mousedown`,z,L),document.removeEventListener(`touchstart`,z,L)))}var H,U;function W(e){let t=e.split(` `);return t.length===2?[`top`,`center`,`bottom`].includes(t[0])===!0?[`left`,`middle`,`right`,`start`,`end`].includes(t[1])===!0?!0:(console.error(`Anchor/Self position must end with one of left/middle/right/start/end`),!1):(console.error(`Anchor/Self position must start with one of top/center/bottom`),!1):!1}function G(e){return e?!(e.length!==2||typeof e[0]!=`number`||typeof e[1]!=`number`):!0}var K={"start#ltr":`left`,"start#rtl":`right`,"end#ltr":`right`,"end#rtl":`left`};[`left`,`middle`,`right`].forEach(e=>{K[`${e}#ltr`]=e,K[`${e}#rtl`]=e});function q(e,t){let n=e.split(` `);return{vertical:n[0],horizontal:K[`${n[1]}#${t===!0?`rtl`:`ltr`}`]}}function J(e,t){let{top:n,left:r,right:i,bottom:a,width:o,height:s}=e.getBoundingClientRect();return t!==void 0&&(n-=t[1],r-=t[0],a+=t[1],i+=t[0],o+=t[0],s+=t[1]),{top:n,bottom:a,height:s,left:r,right:i,width:o,middle:r+(i-r)/2,center:n+(a-n)/2}}function Y(e,t,n){let{top:r,left:i}=e.getBoundingClientRect();return r+=t.top,i+=t.left,n!==void 0&&(r+=n[1],i+=n[0]),{top:r,bottom:r+1,height:1,left:i,right:i+1,width:1,middle:i,center:r}}function X(e,t){return{top:0,center:t/2,bottom:t,left:0,middle:e/2,right:e}}function Z(e,t,n,r){return{top:e[n.vertical]-t[r.vertical],left:e[n.horizontal]-t[r.horizontal]}}function Q(e,t=0){if(e.targetEl===null||e.anchorEl===null||t>5)return;if(e.targetEl.offsetHeight===0||e.targetEl.offsetWidth===0){setTimeout(()=>{Q(e,t+1)},10);return}let{targetEl:n,offset:r,anchorEl:i,anchorOrigin:a,selfOrigin:o,absoluteOffset:s,fit:c,cover:l,maxHeight:u,maxWidth:d}=e;if(v.is.ios===!0&&window.visualViewport!==void 0){let e=document.body.style,{offsetLeft:t,offsetTop:n}=window.visualViewport;t!==H&&(e.setProperty(`--q-pe-left`,t+`px`),H=t),n!==U&&(e.setProperty(`--q-pe-top`,n+`px`),U=n)}let{scrollLeft:f,scrollTop:p}=n,m=s===void 0?J(i,l===!0?[0,0]:r):Y(i,s,r);Object.assign(n.style,{top:0,left:0,minWidth:null,minHeight:null,maxWidth:d,maxHeight:u,visibility:`visible`});let{offsetWidth:h,offsetHeight:g}=n,{elWidth:_,elHeight:y}=c===!0||l===!0?{elWidth:Math.max(m.width,h),elHeight:l===!0?Math.max(m.height,g):g}:{elWidth:h,elHeight:g},b={maxWidth:d,maxHeight:u};(c===!0||l===!0)&&(b.minWidth=m.width+`px`,l===!0&&(b.minHeight=m.height+`px`)),Object.assign(n.style,b);let x=X(_,y),S=Z(m,x,a,o);if(s===void 0||r===void 0)$(S,m,x,a,o);else{let{top:e,left:t}=S;$(S,m,x,a,o);let n=!1;if(S.top!==e){n=!0;let e=2*r[1];m.center=m.top-=e,m.bottom-=e+2}if(S.left!==t){n=!0;let e=2*r[0];m.middle=m.left-=e,m.right-=e+2}n===!0&&(S=Z(m,x,a,o),$(S,m,x,a,o))}b={top:S.top+`px`,left:S.left+`px`},S.maxHeight!==void 0&&(b.maxHeight=S.maxHeight+`px`,m.height>S.maxHeight&&(b.minHeight=b.maxHeight)),S.maxWidth!==void 0&&(b.maxWidth=S.maxWidth+`px`,m.width>S.maxWidth&&(b.minWidth=b.maxWidth)),Object.assign(n.style,b),n.scrollTop!==p&&(n.scrollTop=p),n.scrollLeft!==f&&(n.scrollLeft=f)}function $(e,t,n,r,i){let a=n.bottom,o=n.right,s=w(),c=window.innerHeight-s,l=document.body.clientWidth;if(e.top<0||e.top+a>c)if(i.vertical===`center`)e.top=t[r.vertical]>c/2?Math.max(0,c-a):0,e.maxHeight=Math.min(a,c);else if(t[r.vertical]>c/2){let n=Math.min(c,r.vertical===`center`?t.center:r.vertical===i.vertical?t.bottom:t.top);e.maxHeight=Math.min(a,n),e.top=Math.max(0,n-a)}else e.top=Math.max(0,r.vertical===`center`?t.center:r.vertical===i.vertical?t.top:t.bottom),e.maxHeight=Math.min(a,c-e.top);if(e.left<0||e.left+o>l)if(e.maxWidth=Math.min(o,l),i.horizontal===`middle`)e.left=t[r.horizontal]>l/2?Math.max(0,l-o):0;else if(t[r.horizontal]>l/2){let n=Math.min(l,r.horizontal===`middle`?t.middle:r.horizontal===i.horizontal?t.right:t.left);e.maxWidth=Math.min(o,n),e.left=Math.max(0,n-e.maxWidth)}else e.left=Math.max(0,r.horizontal===`middle`?t.middle:r.horizontal===i.horizontal?t.left:t.right),e.maxWidth=Math.min(o,l-e.left)}var re=u({name:`QTooltip`,inheritAttrs:!1,props:{...M,...C,...S,maxHeight:{type:String,default:null},maxWidth:{type:String,default:null},transitionShow:{...S.transitionShow,default:`jump-down`},transitionHide:{...S.transitionHide,default:`jump-up`},anchor:{type:String,default:`bottom middle`,validator:W},self:{type:String,default:`top middle`,validator:W},offset:{type:Array,default:()=>[14,14],validator:G},scrollTarget:T,delay:{type:Number,default:0},hideDelay:{type:Number,default:0},persistent:Boolean},emits:[...D],setup(e,{slots:n,emit:u,attrs:f}){let h,g,_=s(),{proxy:{$q:v}}=_,S=r(null),C=r(!1),w=o(()=>q(e.anchor,v.lang.rtl)),T=o(()=>q(e.self,v.lang.rtl)),E=o(()=>e.persistent!==!0),{registerTick:D,removeTick:O}=x(),{registerTimeout:A}=b(),{transitionProps:j,transitionStyle:M}=ne(e),{localScrollTarget:N,changeScrollEvent:I,unconfigureScrollTarget:L}=F(e,oe),{anchorEl:R,canShow:z,anchorEvents:H}=P({showing:C,configureAnchorEl:ae}),{show:U,hide:W}=y({showing:C,canShow:z,handleShow:Y,handleHide:X,hideOnRouteChange:E,processOnMount:!0});Object.assign(H,{delayShow:re,delayHide:ie});let{showPortal:G,hidePortal:K,renderPortal:J}=ee(_,S,ce,`tooltip`);if(v.platform.is.mobile===!0){let n={anchorEl:R,innerRef:S,onClickOutside(e){return W(e),e.target.classList.contains(`q-dialog__backdrop`)&&c(e),!0}};t(o(()=>e.modelValue===null&&e.persistent!==!0&&C.value===!0),e=>{(e===!0?B:V)(n)}),a(()=>{V(n)})}function Y(n){G(),D(()=>{g=new MutationObserver(()=>$()),g.observe(S.value,{attributes:!1,childList:!0,characterData:!0,subtree:!0}),$(),oe()}),h===void 0&&(h=t(()=>v.screen.width+`|`+v.screen.height+`|`+e.self+`|`+e.anchor+`|`+v.lang.rtl,$)),A(()=>{G(!0),u(`show`,n)},e.transitionDuration)}function X(t){O(),K(),Z(),A(()=>{K(!0),u(`hide`,t)},e.transitionDuration)}function Z(){g!==void 0&&(g.disconnect(),g=void 0),h!==void 0&&(h(),h=void 0),L(),m(H,`tooltipTemp`)}function $(){Q({targetEl:S.value,offset:e.offset,anchorEl:R.value,anchorOrigin:w.value,selfOrigin:T.value,maxHeight:e.maxHeight,maxWidth:e.maxWidth})}function re(t){if(v.platform.is.mobile===!0){k(),document.body.classList.add(`non-selectable`);let e=R.value;d(H,`tooltipTemp`,[`touchmove`,`touchcancel`,`touchend`,`click`].map(t=>[e,t,`delayHide`,`passiveCapture`]))}A(()=>{U(t)},e.delay)}function ie(t){v.platform.is.mobile===!0&&(m(H,`tooltipTemp`),k(),setTimeout(()=>{document.body.classList.remove(`non-selectable`)},10)),A(()=>{W(t)},e.hideDelay)}function ae(){e.noParentEvent===!0||R.value===null||d(H,`anchor`,v.platform.is.mobile===!0?[[R.value,`touchstart`,`delayShow`,`passive`]]:[[R.value,`mouseenter`,`delayShow`,`passive`],[R.value,`mouseleave`,`delayHide`,`passive`]])}function oe(){if(R.value!==null||e.scrollTarget!==void 0){N.value=te(R.value,e.scrollTarget);let t=e.noParentEvent===!0?$:W;I(N.value,t)}}function se(){return C.value===!0?i(`div`,{...f,ref:S,class:[`q-tooltip q-tooltip--style q-position-engine no-pointer-events`,f.class],style:[f.style,M.value],role:`tooltip`},p(n.default)):null}function ce(){return i(l,j.value,se)}return a(Z),Object.assign(_.proxy,{updatePosition:$}),J}});export{W as a,F as c,A as d,j as f,G as i,P as l,O as m,q as n,B as o,k as p,Q as r,V as s,re as t,N as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{F as e,H as t,L as n,M as r,N as i,Q as a,U as o,W as ee,_t as te,bt as s,d as c,f as l,g as u,h as d,l as f,p,r as m,rt as h,u as g,v as ne}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{t as re}from"./QIcon-B0-pH3Qs.js";import{r as _}from"./use-id-CDuXkR0Z.js";import{t as ie}from"./settings-Dbx1_ksA.js";import{t as v}from"./QBtn-DHwAb18J.js";import{n as ae}from"./vue-i18n-eUDnMrPl.js";import{t as y}from"./QInput-D4WJro4e.js";import{t as b}from"./QToggle-CGpiJLDJ.js";import{b as oe,g as se,h as ce,n as le,y as ue}from"./index-C_e7KOYh.js";import{n as x,t as de}from"./QItemSection-KFAnxzMK.js";import{t as S}from"./QItemLabel-DWwenW2S.js";import{t as fe}from"./QTooltip-DjJYMTkN.js";import{t as pe}from"./QExpansionItem-VS4b4eY6.js";import{t as C}from"./_plugin-vue_export-helper-B8bB5DBd.js";import{t as me}from"./QSpace-COlmM_4F.js";import{t as he}from"./QList-NmIE6Rd9.js";import{t as ge}from"./ClosePopup-DzB3mDtj.js";import{t as _e}from"./use-quasar-Cc4smfg5.js";import{i as ve,n as ye,r as be,t as xe}from"./QTabPanels-HXz-evuj.js";import{n as w,t as Se}from"./models-DNYEhFF7.js";import{t as Ce}from"./QPage-Cu7zkfc6.js";var we={class:`settings-inner`},Te={class:`settings-header row items-center q-mb-lg`},Ee={class:`text-h5 text-weight-medium text-grey-3`},De={class:`settings-card rounded-borders q-pa-lg`},Oe={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},ke={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Ae={class:`text-subtitle2 q-mb-sm`},je={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Me={class:`text-subtitle2 q-mb-sm`},Ne={class:`text-subtitle2 q-mb-sm q-mt-md`},Pe={class:`text-caption text-grey-7 q-mb-sm`},Fe={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Ie={class:`text-subtitle2 q-mb-sm`},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-caption text-grey-7 q-mb-sm`},He={class:`q-mb-sm`},Ue={class:`text-subtitle2 q-mb-sm q-mt-md`},We={class:`text-caption text-grey-7 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:`text-caption text-grey-7 q-mb-sm`},Je={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},Ye={class:`text-subtitle2 q-mb-sm`},Xe={class:`text-caption text-grey-7 q-mb-sm`},Ze={class:`q-mb-sm`},Qe={class:`field-label-sub text-caption q-mb-xs text-grey-7`},$e={class:`q-mb-sm`},et={class:`field-label-sub text-caption q-mb-xs text-grey-7`},tt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},nt={class:`text-subtitle2 q-mb-sm`},rt={class:`text-caption text-grey-7 q-mb-sm`},it={class:`q-mb-sm`},at={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ot={class:`q-mb-sm`},st={class:`field-label-sub text-caption q-mb-xs text-grey-7`},ct={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},lt={class:`text-subtitle2 q-mb-sm`},ut={class:`text-caption text-grey-7 q-mb-sm`},dt={class:`settings-card q-pa-md rounded-borders q-pb-sm q-mb-sm`},ft={class:`text-subtitle2 q-mb-sm`},pt={class:`text-caption text-grey-7 q-mb-sm`},mt={class:`row q-gutter-sm`},ht={class:`row justify-end`},gt={class:`row q-gutter-md`,style:{"min-height":`500px`}},_t={class:`project-list-col`},vt={class:`settings-card rounded-borders`,style:{height:`100%`}},yt={class:`q-pa-sm`},bt={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-grey-6`,style:{"letter-spacing":`0.05em`}},xt={key:0,class:`q-pa-md text-center text-caption text-grey-8`},St={class:`q-pa-sm`},Ct={class:`project-form-col`},wt={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},Tt={class:`text-subtitle1 text-weight-medium q-mb-md text-grey-3`},Et={class:`q-mb-md`},Dt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ot={class:`q-mb-md`},kt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},At={class:`q-mb-md`},jt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Mt={class:`q-mb-md`},Nt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Pt={class:`q-mb-md`},Ft={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},It={class:`q-mb-md`},Lt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Rt={class:`text-caption text-grey-7 q-mt-xs`},zt={class:`q-mb-lg`},Bt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Vt={class:`text-caption text-grey-7 q-mt-xs`},Ht={class:`q-mb-lg`},Ut={class:`field-label text-body2 text-weight-medium q-mb-sm text-grey-6`},Wt={class:`q-mb-md`},Gt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},Kt={class:`field-label-sub text-caption q-mb-xs text-grey-7`},qt={class:`q-mb-lg`},Jt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Yt={class:`text-caption text-grey-7 q-mb-sm`},Xt={class:`q-mb-lg`},Zt={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Qt={class:`text-caption text-grey-7 q-mb-sm`},$t={class:`row items-center q-gutter-sm`},en={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},tn={class:`text-body2 text-grey-8`},nn={class:`settings-card rounded-borders q-pa-lg`},rn={class:`row items-center justify-between q-mb-md`},an={class:`text-subtitle1 text-weight-medium text-grey-3`},on={key:0,class:`text-grey-6 q-py-lg text-center`},sn={key:1,class:`column q-gutter-sm`},cn={class:`row items-start justify-between no-wrap`},ln={class:`col`},un={class:`text-body1 text-weight-medium`,style:{"font-family":`'Roboto Mono', monospace`}},dn={class:`text-caption text-grey-5 q-mt-xs`},fn={class:`row no-wrap q-gutter-xs`},pn={class:`text-caption text-grey-7 q-mt-lg`,style:{"font-family":`'Roboto Mono', monospace`}},mn={class:`text-subtitle1`},hn={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,columns:`2`,"column-gap":`24px`}},gn={key:0,class:`text-negative text-caption`},T=C(ne({__name:`SettingsPage`,setup(ne){let C=_e(),T=ie(),E=ce(),{t:D,locale:_n}=ae(),O=a(`global`),k=a(`auto`),A=a(``),j=a(``),M=a(``),N=a(!0),P=a(!0),F=a(``),I=a(``),L=a(`bypass`),R=a(``),z=a(``),B=a([]),vn=a(!1),V=a(-1),H=a(!1),U=a({path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}}),W=a([]),yn=a([]);async function bn(){try{let e=await fetch(`/api/skills`);e.ok&&(W.value=await e.json())}catch{}}function xn(e,t){t(()=>{let t=e.trim().toLowerCase();yn.value=t?W.value.filter(e=>e.toLowerCase().includes(t)):W.value.slice()})}let G=a([]),Sn=a(!1),Cn=a(!1),wn=a(!1),K=a(!1),q=a(null),J=a(``),Y=a(``),X=a(``),Z=a(``),Tn=a(!1),En=f(()=>[...E.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),Dn=[`{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 On(){q.value=null,J.value=``,Y.value=``,X.value=``,Z.value=``,K.value=!0}function kn(e){q.value=e.slug,J.value=e.slug,Y.value=e.description,X.value=e.content,Z.value=``,K.value=!0}async function An(){Z.value=``;let e=J.value.trim(),t=Y.value.trim();if(q.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Z.value=D(`templates.slugInvalid`);return}if(!t){Z.value=D(`templates.descriptionRequired`);return}if(!X.value.trim()){Z.value=D(`templates.contentRequired`);return}Tn.value=!0;try{q.value===null?await E.createTemplate({slug:e,description:t,content:X.value}):await E.updateTemplate(q.value,{description:t,content:X.value}),K.value=!1}catch(e){Z.value=e instanceof Error?e.message:D(`templates.createFailed`)}finally{Tn.value=!1}}async function jn(e){C.dialog({title:D(`templates.deleteTemplate`),message:`${D(`templates.deleteConfirm`,{slug:e.slug})}\n\n${D(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:D(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:D(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await E.deleteTemplate(e.slug)}catch(e){C.notify({type:`negative`,message:e instanceof Error?e.message:D(`templates.deleteFailed`),position:`top`})}})}let Mn=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function Nn(e){_n.value=e,localStorage.setItem(`kobo:locale`,e)}let Pn=f(()=>[...Se.map(e=>({label:D(e.i18nLabelKey),value:e.value}))]),Fn=f(()=>[{label:D(`settings.useGlobal`),value:``},...Pn.value]),In=f(()=>[{name:`{{pr_number}}`,description:D(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:D(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:D(`settings.var.branchName`)},{name:`{{source_branch}}`,description:D(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:D(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:D(`settings.var.projectName`)},{name:`{{notion_url}}`,description:D(`settings.var.notionUrl`)},{name:`{{commits}}`,description:D(`settings.var.commits`)},{name:`{{diff_stats}}`,description:D(`settings.var.diffStats`)},{name:`{{tasks}}`,description:D(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:D(`settings.var.acceptanceCriteria`)}]),Ln=f(()=>[{label:D(`settings.mcpAutoSelect`),value:``},...T.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),Q=f(()=>V.value<0||V.value>=T.projects.length?null:T.projects[V.value]??null);function Rn(){k.value=T.global.defaultModel,A.value=T.global.prPromptTemplate,j.value=T.global.gitConventions,M.value=T.global.editorCommand??``,N.value=T.global.browserNotifications??!0,P.value=T.global.audioNotifications??!0,F.value=T.global.notionStatusProperty??``,I.value=T.global.notionInProgressStatus??``;{let e=T.global.defaultPermissionMode;L.value=e===`plan`||e===`bypass`||e===`strict`||e===`interactive`?e:`bypass`}R.value=T.global.notionMcpKey??``,z.value=T.global.sentryMcpKey??``,B.value=Array.isArray(T.global.tags)?[...T.global.tags]:[]}function zn(e){if(!e){U.value={path:``,displayName:``,defaultSourceBranch:``,defaultModel:``,prPromptTemplate:``,gitConventions:``,setupScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}},G.value=[];return}U.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&&Bn(e.path)}async function Bn(e){if(!e.trim()){G.value=[];return}Sn.value=!0;try{let t=await fetch(`/api/git/branches?path=${encodeURIComponent(e.trim())}`);if(!t.ok)throw Error(`HTTP ${t.status}`);let n=await t.json();G.value=n.local??n.branches??[]}catch{G.value=[]}finally{Sn.value=!1}}let $=null;t(()=>U.value.path,e=>{$&&clearTimeout($),$=setTimeout(()=>{Bn(e)},500)}),t(V,()=>{H.value=!1,zn(Q.value)});let Vn=a(null);async function Hn(){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),C.notify({type:`positive`,message:D(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){C.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function Un(){Vn.value?.click()}async function Wn(e){let t=e.target,n=t.files?.[0];if(n)try{C.dialog({title:D(`settings.importConfirmTitle`),message:D(`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 T.fetchSettings(),Rn(),C.notify({type:`positive`,message:D(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){C.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function Gn(){vn.value=!0;try{await T.updateGlobal({defaultModel:k.value,prPromptTemplate:A.value,gitConventions:j.value,editorCommand:M.value,browserNotifications:N.value,audioNotifications:P.value,notionStatusProperty:F.value,notionInProgressStatus:I.value,defaultPermissionMode:L.value,notionMcpKey:R.value,sentryMcpKey:z.value,tags:B.value}),C.notify({type:`positive`,message:D(`settings.saved`),position:`top`})}catch{C.notify({type:`negative`,message:D(`settings.saveError`),position:`top`})}finally{vn.value=!1}}async function Kn(){if(!U.value.path.trim()){C.notify({type:`negative`,message:D(`settings.projectPathRequired`),position:`top`});return}Cn.value=!0;try{await T.upsertProject(U.value.path.trim(),{displayName:U.value.displayName,defaultSourceBranch:U.value.defaultSourceBranch,defaultModel:U.value.defaultModel,prPromptTemplate:U.value.prPromptTemplate,gitConventions:U.value.gitConventions,setupScript:U.value.setupScript,devServer:U.value.devServer,e2e:U.value.e2e,finalization:U.value.finalization}),H.value=!1;let e=T.projects.findIndex(e=>e.path===U.value.path.trim());e>=0&&(V.value=e),C.notify({type:`positive`,message:D(`settings.projectSaved`),position:`top`})}catch{C.notify({type:`negative`,message:D(`settings.projectSaveError`),position:`top`})}finally{Cn.value=!1}}async function qn(){if(Q.value){wn.value=!0;try{await T.deleteProject(Q.value.path),V.value=-1,H.value=!1,zn(null),C.notify({type:`positive`,message:D(`settings.projectDeleted`),position:`top`})}catch{C.notify({type:`negative`,message:D(`settings.projectDeleteError`),position:`top`})}finally{wn.value=!1}}}function Jn(){V.value=-1,H.value=!0,zn(null)}function Yn(e){H.value=!1,V.value=e}function Xn(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let Zn=a([]);function Qn(e,t){t(()=>{Zn.value=e?G.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):G.value})}return r(async()=>{await Promise.all([T.fetchSettings(),T.fetchActiveMcpServers(),bn()]),Rn()}),i(()=>{$&&clearTimeout($)}),(t,r)=>(e(),c(Ce,{class:`settings-page`},{default:o(()=>[g(`div`,we,[g(`div`,Te,[u(re,{name:`settings`,size:`24px`,color:`indigo-4`,class:`q-mr-sm`}),g(`span`,Ee,s(t.$t(`settings.title`)),1)]),u(be,{modelValue:O.value,"onUpdate:modelValue":r[0]||=e=>O.value=e,dense:``,"active-color":`indigo-4`,"indicator-color":`indigo-4`,class:`settings-tabs q-mb-lg`,align:`left`,"narrow-indicator":``},{default:o(()=>[u(ve,{name:`global`,label:t.$t(`settings.global`)},null,8,[`label`]),u(ve,{name:`projects`,label:t.$t(`settings.projects`)},null,8,[`label`]),u(ve,{name:`templates`,label:t.$t(`templates.title`)},null,8,[`label`])]),_:1},8,[`modelValue`]),u(xe,{modelValue:O.value,"onUpdate:modelValue":r[27]||=e=>O.value=e,animated:``,class:`settings-panels`},{default:o(()=>[u(ye,{name:`global`,class:`q-pa-none`},{default:o(()=>[g(`div`,De,[g(`div`,Oe,s(t.$t(`settings.globalSettings`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,ke,[g(`div`,Ae,s(t.$t(`settings.language`)),1),u(w,{"model-value":h(_n),options:Mn,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":Nn},null,8,[`model-value`])]),g(`div`,je,[g(`div`,Me,s(t.$t(`settings.defaultModel`)),1),u(w,{modelValue:k.value,"onUpdate:modelValue":r[1]||=e=>k.value=e,options:Pn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),g(`div`,Ne,s(t.$t(`settings.defaultPermissionMode`)),1),g(`div`,Pe,s(t.$t(`settings.defaultPermissionModeHint`)),1),u(w,{modelValue:L.value,"onUpdate:modelValue":r[2]||=e=>L.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`])]),g(`div`,Fe,[g(`div`,Ie,s(t.$t(`settings.activityFeed`)),1),u(b,{"model-value":h(T).showVerboseSystemMessages,label:t.$t(`settings.verboseMessages`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`,"onUpdate:modelValue":r[3]||=e=>h(T).toggleVerboseSystemMessages()},null,8,[`model-value`,`label`])]),g(`div`,Le,[g(`div`,Re,s(t.$t(`settings.notifications`)),1),u(b,{modelValue:N.value,"onUpdate:modelValue":r[4]||=e=>N.value=e,label:t.$t(`settings.browserNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption q-mb-xs`},null,8,[`modelValue`,`label`]),u(b,{modelValue:P.value,"onUpdate:modelValue":r[5]||=e=>P.value=e,label:t.$t(`settings.audioNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),g(`div`,ze,[g(`div`,Be,s(t.$t(`settings.prPromptTemplate`)),1),g(`div`,Ve,s(t.$t(`settings.prPromptHint`)),1),u(y,{modelValue:A.value,"onUpdate:modelValue":r[6]||=e=>A.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`]),g(`div`,He,[u(pe,{dense:``,dark:``,icon:`code`,label:t.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:o(()=>[u(he,{dense:``,dark:``,class:`q-pa-sm`},{default:o(()=>[(e(!0),p(m,null,n(In.value,t=>(e(),c(x,{key:t.name,dense:``},{default:o(()=>[u(de,null,{default:o(()=>[u(S,{class:`text-caption`,style:{"font-family":`monospace`}},{default:o(()=>[d(s(t.name),1)]),_:2},1024),u(S,{caption:``,class:`text-grey-7`},{default:o(()=>[d(s(t.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),g(`div`,Ue,s(t.$t(`settings.gitConventions`)),1),g(`div`,We,s(t.$t(`settings.gitConventionsHint`)),1),u(y,{modelValue:j.value,"onUpdate:modelValue":r[7]||=e=>j.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:t.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,Ge,[g(`div`,Ke,s(t.$t(`settings.editorCommand`)),1),g(`div`,qe,s(t.$t(`settings.editorCommandHint`)),1),u(y,{modelValue:M.value,"onUpdate:modelValue":r[8]||=e=>M.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,Je,[g(`div`,Ye,s(t.$t(`settings.mcpSelection`)),1),g(`div`,Xe,s(t.$t(`settings.mcpSelectionHint`)),1),g(`div`,Ze,[g(`div`,Qe,s(t.$t(`settings.notionMcp`)),1),u(w,{modelValue:R.value,"onUpdate:modelValue":r[9]||=e=>R.value=e,options:Ln.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,$e,[g(`div`,et,s(t.$t(`settings.sentryMcp`)),1),u(w,{modelValue:z.value,"onUpdate:modelValue":r[10]||=e=>z.value=e,options:Ln.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])]),g(`div`,tt,[g(`div`,nt,s(t.$t(`settings.notionStatus`)),1),g(`div`,rt,s(t.$t(`settings.notionStatusHint`)),1),g(`div`,it,[g(`div`,at,s(t.$t(`settings.notionStatusProperty`)),1),u(y,{modelValue:F.value,"onUpdate:modelValue":r[11]||=e=>F.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,ot,[g(`div`,st,s(t.$t(`settings.notionInProgressStatus`)),1),u(y,{modelValue:I.value,"onUpdate:modelValue":r[12]||=e=>I.value=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])])]),g(`div`,ct,[g(`div`,lt,s(t.$t(`settings.tagsTitle`)),1),g(`div`,ut,s(t.$t(`settings.tagsHint`)),1),u(w,{modelValue:B.value,"onUpdate:modelValue":r[13]||=e=>B.value=e,label:t.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])]),g(`div`,dt,[g(`div`,ft,s(t.$t(`settings.shareTitle`)),1),g(`div`,pt,s(t.$t(`settings.shareHint`)),1),g(`div`,mt,[u(v,{label:t.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`grey-4`,onClick:Hn},null,8,[`label`]),u(v,{label:t.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`grey-4`,onClick:Un},null,8,[`label`]),g(`input`,{ref_key:`importFileInput`,ref:Vn,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:Wn},null,544)])]),g(`div`,ht,[u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:vn.value,onClick:Gn},null,8,[`label`,`loading`])])])]),_:1}),u(ye,{name:`projects`,class:`q-pa-none`},{default:o(()=>[g(`div`,gt,[g(`div`,_t,[g(`div`,vt,[g(`div`,yt,[g(`div`,bt,s(t.$t(`settings.configuredProjects`)),1)]),u(_,{dark:``}),u(he,{dark:``,dense:``,class:`q-py-xs`},{default:o(()=>[(e(!0),p(m,null,n(h(T).projects,(t,n)=>(e(),c(x,{key:t.path,clickable:``,active:V.value===n&&!H.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>Yn(n)},{default:o(()=>[u(de,null,{default:o(()=>[u(S,{class:`text-body2 text-grey-3`},{default:o(()=>[d(s(Xn(t)),1)]),_:2},1024),u(S,{caption:``,class:`text-grey-7 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:o(()=>[d(s(t.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),h(T).projects.length===0&&!h(T).loading?(e(),p(`div`,xt,s(t.$t(`settings.noProjects`)),1)):l(``,!0),u(_,{dark:``}),g(`div`,St,[u(v,{label:t.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`indigo-4`,onClick:Jn},null,8,[`label`])])])]),g(`div`,Ct,[g(`div`,wt,[Q.value||H.value?(e(),p(m,{key:0},[g(`div`,Tt,s(H.value?t.$t(`settings.newProject`):t.$t(`settings.editProject`)),1),u(_,{dark:``,class:`q-mb-md`}),g(`div`,Et,[g(`div`,Dt,s(t.$t(`settings.projectPath`)),1),u(y,{modelValue:U.value.path,"onUpdate:modelValue":r[14]||=e=>U.value.path=e,dense:``,dark:``,outlined:``,readonly:!H.value,placeholder:t.$t(`settings.projectPathPlaceholder`),class:te([`settings-input`,{"readonly-input":!H.value}])},null,8,[`modelValue`,`readonly`,`placeholder`,`class`])]),g(`div`,Ot,[g(`div`,kt,s(t.$t(`settings.displayName`)),1),u(y,{modelValue:U.value.displayName,"onUpdate:modelValue":r[15]||=e=>U.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:t.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),g(`div`,At,[g(`div`,jt,s(t.$t(`settings.defaultSourceBranch`)),1),u(w,{modelValue:U.value.defaultSourceBranch,"onUpdate:modelValue":r[16]||=e=>U.value.defaultSourceBranch=e,options:Zn.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:Sn.value,class:`settings-input`,placeholder:`main`,onFilter:Qn},{"no-option":o(()=>[u(x,null,{default:o(()=>[u(de,{class:`text-grey-6 text-caption`},{default:o(()=>[d(s(U.value.path.trim()?t.$t(`createPage.noBranches`):t.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),g(`div`,Mt,[g(`div`,Nt,s(t.$t(`settings.defaultModel.project`)),1),u(w,{modelValue:U.value.defaultModel,"onUpdate:modelValue":r[17]||=e=>U.value.defaultModel=e,options:Fn.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),g(`div`,Pt,[g(`div`,Ft,s(t.$t(`settings.prPromptTemplate.project`)),1),u(y,{modelValue:U.value.prPromptTemplate,"onUpdate:modelValue":r[18]||=e=>U.value.prPromptTemplate=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:4,placeholder:t.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,It,[g(`div`,Lt,s(t.$t(`settings.gitConventions.project`)),1),u(y,{modelValue:U.value.gitConventions,"onUpdate:modelValue":r[19]||=e=>U.value.gitConventions=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:6,placeholder:t.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Rt,s(t.$t(`settings.gitConventionsEmpty`)),1)]),g(`div`,zt,[g(`div`,Bt,s(t.$t(`settings.setupScript`)),1),u(y,{modelValue:U.value.setupScript,"onUpdate:modelValue":r[20]||=e=>U.value.setupScript=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:5,placeholder:t.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),g(`div`,Vt,s(t.$t(`settings.setupScriptHint`)),1)]),g(`div`,Ht,[g(`div`,Ut,s(t.$t(`settings.devServer`)),1),g(`div`,Wt,[g(`div`,Gt,s(t.$t(`settings.devServerStart`)),1),u(y,{modelValue:U.value.devServer.startCommand,"onUpdate:modelValue":r[21]||=e=>U.value.devServer.startCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),g(`div`,null,[g(`div`,Kt,s(t.$t(`settings.devServerStop`)),1),u(y,{modelValue:U.value.devServer.stopCommand,"onUpdate:modelValue":r[22]||=e=>U.value.devServer.stopCommand=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:3,placeholder:t.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),g(`div`,qt,[g(`div`,Jt,s(t.$t(`settings.e2e.title`)),1),g(`div`,Yt,s(t.$t(`settings.e2e.helpText`)),1),u(w,{modelValue:U.value.e2e.framework,"onUpdate:modelValue":r[23]||=e=>U.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`]),U.value.e2e.framework?(e(),p(m,{key:0},[u(w,{modelValue:U.value.e2e.skill,"onUpdate:modelValue":r[24]||=e=>U.value.e2e.skill=e,options:yn.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:xn},null,8,[`modelValue`,`options`,`label`,`placeholder`]),u(y,{modelValue:U.value.e2e.prompt,"onUpdate:modelValue":r[25]||=e=>U.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)):l(``,!0)]),g(`div`,Xt,[g(`div`,Zt,s(t.$t(`settings.finalization.title`)),1),g(`div`,Qt,s(t.$t(`settings.finalization.helpText`)),1),u(y,{modelValue:U.value.finalization.prompt,"onUpdate:modelValue":r[26]||=e=>U.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`])]),g(`div`,$t,[H.value?l(``,!0):(e(),c(v,{key:0,label:t.$t(`common.delete`),"no-caps":``,flat:``,color:`red-5`,loading:wn.value,onClick:qn},null,8,[`label`,`loading`])),u(me),u(v,{label:t.$t(`common.save`),"no-caps":``,unelevated:``,color:`primary`,loading:Cn.value,onClick:Kn},null,8,[`label`,`loading`])])],64)):(e(),p(`div`,en,[u(re,{name:`folder_open`,size:`48px`,color:`grey-7`,class:`q-mb-md`}),g(`div`,tn,s(t.$t(`settings.selectProject`)),1)]))])])])]),_:1}),u(ye,{name:`templates`,class:`q-pa-none`},{default:o(()=>[g(`div`,nn,[g(`div`,rn,[g(`div`,an,s(t.$t(`templates.title`)),1),u(v,{color:`primary`,icon:`add`,label:t.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:On},null,8,[`label`])]),u(_,{dark:``,class:`q-mb-md`}),En.value.length===0?(e(),p(`div`,on,s(t.$t(`templates.empty`)),1)):(e(),p(`div`,sn,[(e(!0),p(m,null,n(En.value,n=>(e(),c(ue,{key:n.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:o(()=>[g(`div`,cn,[g(`div`,ln,[g(`div`,un,` /`+s(n.slug),1),g(`div`,dn,s(n.description),1)]),g(`div`,fn,[u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`grey-5`,onClick:e=>kn(n)},{default:o(()=>[u(fe,null,{default:o(()=>[d(s(t.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),u(v,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>jn(n)},{default:o(()=>[u(fe,null,{default:o(()=>[d(s(t.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),g(`div`,pn,s(t.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])]),_:1})]),_:1},8,[`modelValue`])]),u(se,{modelValue:K.value,"onUpdate:modelValue":r[31]||=e=>K.value=e,persistent:``},{default:o(()=>[u(ue,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:o(()=>[u(oe,null,{default:o(()=>[g(`div`,mn,s(q.value===null?t.$t(`templates.newTemplate`):t.$t(`templates.editTemplate`)),1)]),_:1}),u(oe,{class:`q-gutter-md`},{default:o(()=>[u(y,{modelValue:J.value,"onUpdate:modelValue":r[28]||=e=>J.value=e,label:t.$t(`templates.slug`),hint:t.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:q.value!==null,rules:[e=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)||t.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),u(y,{modelValue:Y.value,"onUpdate:modelValue":r[29]||=e=>Y.value=e,label:t.$t(`templates.description`),hint:t.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(y,{modelValue:X.value,"onUpdate:modelValue":r[30]||=e=>X.value=e,label:t.$t(`templates.content`),hint:t.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),u(pe,{dense:``,"dense-toggle":``,label:t.$t(`templates.availableVars`),"header-class":`text-grey-6 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:o(()=>[g(`div`,hn,[(e(),p(m,null,n(Dn,e=>g(`div`,{key:e,class:`text-grey-5 q-mb-xs`},s(e),1)),64))])]),_:1},8,[`label`]),Z.value?(e(),p(`div`,gn,s(Z.value),1)):l(``,!0)]),_:1}),u(le,{align:`right`},{default:o(()=>[ee(u(v,{flat:``,label:t.$t(`common.cancel`)},null,8,[`label`]),[[ge]]),u(v,{flat:``,color:`primary`,label:q.value===null?t.$t(`templates.create`):t.$t(`templates.save`),loading:Tn.value,onClick:An},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-e4a0c3d5`]]);export{T as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.settings-page[data-v-e4a0c3d5]{background-color:#1a1a2e;min-height:100%;padding:32px 24px}.settings-inner[data-v-e4a0c3d5]{width:100%;max-width:900px;margin:0 auto}.settings-header[data-v-e4a0c3d5]{min-height:48px}.settings-tabs[data-v-e4a0c3d5] .q-tab{color:#888;text-transform:none;font-weight:500}.settings-tabs[data-v-e4a0c3d5] .q-tab--active{color:#6c63ff}.settings-panels[data-v-e4a0c3d5]{background:0 0}.settings-card[data-v-e4a0c3d5]{background:#224;border:1px solid #2a2a4a}.template-card[data-v-e4a0c3d5]{background:#1a1a2e;border:1px solid #2a2a4a}.settings-input[data-v-e4a0c3d5] .q-field__control{background:#1a1a2e;border-color:#2a2a4a}.settings-input[data-v-e4a0c3d5] .q-field__native,.settings-input[data-v-e4a0c3d5] input,.settings-input[data-v-e4a0c3d5] textarea{color:#e0e0e0}.settings-input[data-v-e4a0c3d5] .q-field__label{color:#888}.mono-textarea[data-v-e4a0c3d5] textarea{font-family:JetBrains Mono,Fira Code,monospace;font-size:13px}.readonly-input[data-v-e4a0c3d5] .q-field__control{background:#16162a}.readonly-input[data-v-e4a0c3d5] input{color:#888}.project-list-col[data-v-e4a0c3d5]{flex-shrink:0;width:30%;min-width:200px;max-width:280px;overflow:hidden}.project-form-col[data-v-e4a0c3d5]{flex:1;min-width:0}.project-item[data-v-e4a0c3d5]:hover{background-color:#ffffff08}.project-item--active[data-v-e4a0c3d5]{border-left:3px solid #6c63ff;background-color:#2a2a4a!important}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ActivityFeed-CIJPN8TH.js","assets/index-C_e7KOYh.js","assets/vue-i18n-eUDnMrPl.js","assets/runtime-core.esm-bundler-C3IgBgY5.js","assets/QIcon-B0-pH3Qs.js","assets/use-id-CDuXkR0Z.js","assets/QBtn-DHwAb18J.js","assets/QCheckbox-CcY7ZSk9.js","assets/use-checkbox-DzHmcu7s.js","assets/QInput-D4WJro4e.js","assets/symbols-BVRrMH2r.js","assets/QRadio-DaZhdLCg.js","assets/QToggle-CGpiJLDJ.js","assets/settings-Dbx1_ksA.js","assets/is-BbsvEMaT.js","assets/index-eX_lKHSg.css","assets/_plugin-vue_export-helper-B8bB5DBd.js","assets/marked.esm-DuOsJx63.js","assets/QTooltip-DjJYMTkN.js","assets/touch-Co9pfjUU.js","assets/QExpansionItem-VS4b4eY6.js","assets/QItemSection-KFAnxzMK.js","assets/QItemLabel-DWwenW2S.js","assets/QScrollArea-DrVTDLU0.js","assets/QResizeObserver-Cf79V-VZ.js","assets/QSpinnerDots-DwtnRN2r.js","assets/documents-D6A3wRry.js","assets/ActivityFeed-LXnbg3ff.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{E as e,F as t,H as n,I as r,L as i,M as a,Q as o,S as s,T as c,U as l,W as u,_ as d,_t as f,a as p,bt as m,d as h,f as g,g as _,h as v,i as y,k as b,l as x,p as S,r as C,rt as w,u as T,v as E,w as D,y as O}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{I as k,L as ee,O as A,a as te,i as ne,n as j,r as re,s as M,t as N}from"./QIcon-B0-pH3Qs.js";import{r as ie}from"./use-id-CDuXkR0Z.js";import{a as ae,t as P}from"./symbols-BVRrMH2r.js";import{n as F,t as I}from"./QRadio-DaZhdLCg.js";import{c as L,t as R}from"./QBtn-DHwAb18J.js";import{n as z}from"./vue-i18n-eUDnMrPl.js";import{t as oe}from"./QInput-D4WJro4e.js";import{t as se}from"./QCheckbox-CcY7ZSk9.js";import{a as ce,b as le,d as B,g as ue,h as V,i as de,l as H,n as fe,p as U,r as pe,s as me,y as he}from"./index-C_e7KOYh.js";import{t as ge}from"./QSpinnerDots-DwtnRN2r.js";import{n as _e,t as ve}from"./QItemSection-KFAnxzMK.js";import{t as ye}from"./QItemLabel-DWwenW2S.js";import{m as W,t as G}from"./QTooltip-DjJYMTkN.js";import{t as K}from"./_plugin-vue_export-helper-B8bB5DBd.js";import{t as be}from"./QBadge-fsQ2AokU.js";import{t as q}from"./QSpace-COlmM_4F.js";import{t as xe}from"./QMenu-CchbRXbp.js";import{t as Se}from"./ClosePopup-DzB3mDtj.js";import{t as Ce}from"./use-quasar-Cc4smfg5.js";import{t as J}from"./QChip-BhT0W2Dg.js";import{a as we,i as Y,n as X,r as Te,t as Z}from"./use-panel-Br8QNRMk.js";import{t as Ee}from"./kobo-commands-DiUm1Y34.js";import{t as Q}from"./formatters-ejxELb0M.js";import{n as $,t as De}from"./models-DNYEhFF7.js";import{t as Oe}from"./QPage-Cu7zkfc6.js";import{i as ke,n as Ae,r as je,t as Me}from"./expand-template-vHV2iwXf.js";var Ne={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},Pe={key:0,class:`q-ml-xs`},Fe=E({__name:`AgentBusyBanner`,setup(e){let{t:n}=z(),r=H(),i=D(`openDrawerTab`),a=x(()=>r.currentSubagents.filter(e=>e.status===`running`).length),o=x(()=>{let e=r.selectedWorkspace;return e?B(e.status):!1});function s(){i?.(`subagents`)}return(e,r)=>o.value?(t(),S(`div`,Ne,[_(ge,{size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),T(`span`,null,m(w(n)(`agentBusy.banner`)),1),a.value>0?(t(),S(`span`,Pe,` — `+m(w(n)(`agentBusy.subagentsRunning`,{n:a.value},a.value)),1)):g(``,!0),a.value>0?(t(),S(C,{key:1},[_(q),T(`span`,{class:`text-indigo-4 cursor-pointer`,style:{"text-decoration":`underline`},onClick:s},m(w(n)(`agentBusy.viewSubagents`)),1)],64)):g(``,!0)])):g(``,!0)}}),Ie=A({name:`QBanner`,props:{...re,inlineActions:Boolean,dense:Boolean,rounded:Boolean},setup(e,{slots:t}){let{proxy:{$q:n}}=O(),r=j(e,n),i=x(()=>`q-banner row items-center`+(e.dense===!0?` q-banner--dense`:``)+(r.value===!0?` q-banner--dark q-dark`:``)+(e.rounded===!0?` rounded-borders`:``)),a=x(()=>`q-banner__actions row items-center justify-end col-${e.inlineActions===!0?`auto`:`all`}`);return()=>{let n=[s(`div`,{class:`q-banner__avatar col-auto row items-center self-start`},M(t.avatar)),s(`div`,{class:`q-banner__content col text-body2`},M(t.default))],r=M(t.action);return r!==void 0&&n.push(s(`div`,{class:a.value},r)),s(`div`,{class:i.value+(e.inlineActions===!1&&r!==void 0?` q-banner--top-padding`:``),role:`alert`},n)}}}),Le={class:`text-subtitle2`},Re={class:`text-caption`},ze=E({__name:`AgentErrorBanner`,props:{workspaceId:{}},setup(e){let n=e,{t:r}=z(),i=U();async function a(){let e=c.value;if(e){i.removeByEventId(n.workspaceId,e);try{await fetch(`/api/workspaces/${n.workspaceId}/events/${e}`,{method:`DELETE`})}catch(e){console.warn(`[agent-error-banner] failed to persist dismiss:`,e)}}}function o(e){let t=e.replace(/\u001b\[\d+m/g,``).trim();return/^warning:/i.test(t)}let s=x(()=>{let e=i.eventsFor(n.workspaceId);for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(n.kind!==`error`||n.category===`quota`)&&!(n.category===`other`&&o(n.message)))return n}return null}),c=x(()=>{let e=i.eventsFor(n.workspaceId),t=i.eventIdsFor(n.workspaceId);for(let n=e.length-1;n>=0;n--){let r=e[n];if(!(r.kind!==`error`||r.category===`quota`)&&!(r.category===`other`&&o(r.message)))return t[n]??null}return null}),u=s;return(e,n)=>w(u)?(t(),h(Ie,{key:0,class:`bg-negative text-white q-ma-sm`},{avatar:l(()=>[_(N,{name:`error_outline`})]),action:l(()=>[_(R,{flat:``,dense:``,round:``,icon:`close`,"aria-label":w(r)(`common.close`),onClick:a},{default:l(()=>[_(G,null,{default:l(()=>[v(m(w(r)(`common.close`)),1)]),_:1})]),_:1},8,[`aria-label`])]),default:l(()=>[T(`div`,Le,m(w(r)(`agent.error.${w(u).category}`)),1),T(`div`,Re,m(w(u).message),1)]),_:1})):g(``,!0)}}),Be=A({name:`StepHeader`,props:{stepper:{},step:{},goToPanel:Function},setup(e,{attrs:t}){let{proxy:{$q:n}}=O(),r=o(null),i=x(()=>e.stepper.modelValue===e.step.name),a=x(()=>{let t=e.step.disable;return t===!0||t===``}),c=x(()=>{let t=e.step.error;return t===!0||t===``}),l=x(()=>{let t=e.step.done;return a.value===!1&&(t===!0||t===``)}),d=x(()=>{let t=e.step.headerNav,n=t===!0||t===``||t===void 0;return a.value===!1&&e.stepper.headerNav&&n}),f=x(()=>e.step.prefix&&(i.value===!1||e.stepper.activeIcon===`none`)&&(c.value===!1||e.stepper.errorIcon===`none`)&&(l.value===!1||e.stepper.doneIcon===`none`)),p=x(()=>{let t=e.step.icon||e.stepper.inactiveIcon;if(i.value===!0){let r=e.step.activeIcon||e.stepper.activeIcon;return r===`none`?t:r||n.iconSet.stepper.active}if(c.value===!0){let r=e.step.errorIcon||e.stepper.errorIcon;return r===`none`?t:r||n.iconSet.stepper.error}if(a.value===!1&&l.value===!0){let r=e.step.doneIcon||e.stepper.doneIcon;return r===`none`?t:r||n.iconSet.stepper.done}return t}),m=x(()=>{let t=c.value===!0?e.step.errorColor||e.stepper.errorColor:void 0;if(i.value===!0){let n=e.step.activeColor||e.stepper.activeColor||e.step.color;return n===void 0?t:n}return t===void 0?a.value===!1&&l.value===!0?e.step.doneColor||e.stepper.doneColor||e.step.color||e.stepper.inactiveColor:e.step.color||e.stepper.inactiveColor:t}),h=x(()=>`q-stepper__tab col-grow flex items-center no-wrap relative-position`+(m.value===void 0?``:` text-${m.value}`)+(c.value===!0?` q-stepper__tab--error q-stepper__tab--error-with-`+(f.value===!0?`prefix`:`icon`):``)+(i.value===!0?` q-stepper__tab--active`:``)+(l.value===!0?` q-stepper__tab--done`:``)+(d.value===!0?` q-stepper__tab--navigation q-focusable q-hoverable`:``)+(a.value===!0?` q-stepper__tab--disabled`:``)),g=x(()=>e.stepper.headerNav===!0?d.value:!1);function _(){r.value?.focus(),i.value===!1&&e.goToPanel(e.step.name)}function v(t){t.keyCode===13&&i.value===!1&&e.goToPanel(e.step.name)}return()=>{let n={class:h.value};d.value===!0&&(n.onClick=_,n.onKeyup=v,Object.assign(n,a.value===!0?{tabindex:-1,"aria-disabled":`true`}:{tabindex:t.tabindex||0}));let i=[s(`div`,{class:`q-focus-helper`,tabindex:-1,ref:r}),s(`div`,{class:`q-stepper__dot row flex-center q-stepper__line relative-position`},[s(`span`,{class:`row flex-center`},[f.value===!0?e.step.prefix:s(N,{name:p.value})])])];if(e.step.title!==void 0&&e.step.title!==null){let t=[s(`div`,{class:`q-stepper__title`},e.step.title)];e.step.caption!==void 0&&e.step.caption!==null&&t.push(s(`div`,{class:`q-stepper__caption`},e.step.caption)),i.push(s(`div`,{class:`q-stepper__label q-stepper__line relative-position`},t))}return u(s(`div`,n,i),[[L,g.value]])}}});function Ve(e){return s(`div`,{class:`q-stepper__step-content`},[s(`div`,{class:`q-stepper__step-inner`},M(e.default))])}var He={setup(e,{slots:t}){return()=>Ve(t)}},Ue=A({name:`QStep`,props:{...X,icon:String,color:String,title:{type:String,required:!0},caption:String,prefix:[String,Number],doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String,headerNav:{type:Boolean,default:!0},done:Boolean,error:Boolean,onScroll:[Function,Array]},setup(e,{slots:t,emit:n}){let{proxy:{$q:r}}=O(),i=D(ae,P);if(i===P)return console.error(`QStep needs to be a child of QStepper`),P;let{getCache:a}=we(),c=o(null),l=x(()=>i.value.modelValue===e.name),u=x(()=>r.platform.is.ios!==!0&&r.platform.is.chrome===!0||l.value!==!0||i.value.vertical!==!0?{}:{onScroll(t){let{target:r}=t;r.scrollTop>0&&(r.scrollTop=0),e.onScroll!==void 0&&n(`scroll`,t)}}),d=x(()=>typeof e.name==`string`||typeof e.name==`number`?e.name:String(e.name));function f(){let e=i.value.vertical;return e===!0&&i.value.keepAlive===!0?s(y,i.value.keepAliveProps.value,l.value===!0?[s(i.value.needsUniqueKeepAliveWrapper.value===!0?a(d.value,()=>({...He,name:d.value})):He,{key:d.value},t.default)]:void 0):e!==!0||l.value===!0?Ve(t):void 0}return()=>s(`div`,{ref:c,class:`q-stepper__step`,role:`tabpanel`,...u.value},i.value.vertical===!0?[s(Be,{stepper:i.value,step:e,goToPanel:i.value.goToPanel}),i.value.animated===!0?s(W,f):f()]:[f()])}}),We=A({name:`QStepperNavigation`,setup(e,{slots:t}){return()=>s(`div`,{class:`q-stepper__nav`},M(t.default))}}),Ge=/(-\w)/g;function Ke(e){let t={};for(let n in e){let r=n.replace(Ge,e=>e[1].toUpperCase());t[r]=e[n]}return t}var qe=A({name:`QStepper`,props:{...re,...Y,flat:Boolean,bordered:Boolean,alternativeLabels:Boolean,headerNav:Boolean,contracted:Boolean,headerClass:String,inactiveColor:String,inactiveIcon:String,doneIcon:String,doneColor:String,activeIcon:String,activeColor:String,errorIcon:String,errorColor:String},emits:Te,setup(e,{slots:t}){let n=j(e,O().proxy.$q),{updatePanelsList:i,isValidPanelName:a,updatePanelIndex:o,getPanelContent:c,getPanels:l,panelDirectives:u,goToPanel:d,keepAliveProps:f,needsUniqueKeepAliveWrapper:p}=Z();r(ae,x(()=>({goToPanel:d,keepAliveProps:f,needsUniqueKeepAliveWrapper:p,...e})));let m=x(()=>`q-stepper q-stepper--${e.vertical===!0?`vertical`:`horizontal`}`+(e.flat===!0?` q-stepper--flat`:``)+(e.bordered===!0?` q-stepper--bordered`:``)+(n.value===!0?` q-stepper--dark q-dark`:``)),h=x(()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${e.alternativeLabels===!0?`alternative`:`standard`}-labels`+(e.flat===!1||e.bordered===!0?` q-stepper__header--border`:``)+(e.contracted===!0?` q-stepper__header--contracted`:``)+(e.headerClass===void 0?``:` ${e.headerClass}`));function g(){let n=M(t.message,[]);if(e.vertical===!0){a(e.modelValue)&&o();let r=s(`div`,{class:`q-stepper__content`},M(t.default));return n===void 0?[r]:n.concat(r)}return[s(`div`,{class:h.value},l().map(t=>{let n=Ke(t.props);return s(Be,{key:n.name,stepper:e,step:n,goToPanel:d})})),n,ne(`div`,{class:`q-stepper__content q-panel-parent`},c(),`cont`,e.swipeable,()=>u.value)]}return()=>(i(t),s(`div`,{class:m.value},te(t.navigation,g())))}}),Je={key:0,class:`ask-user-question-panel q-pa-sm bg-dark text-grey-3`},Ye={class:`row items-center q-mb-xs`},Xe={class:`text-caption text-uppercase text-weight-bold text-amber-4`,style:{"letter-spacing":`0.05em`}},Ze={key:0,class:`text-caption text-grey-6`},Qe={class:`text-body2 text-grey-2 q-mb-sm`},$e={key:0,class:`text-caption text-grey-6 q-mb-xs`},et={class:`aukq-options column q-gutter-xs`},tt={class:`text-grey-3`},nt={key:0,class:`text-grey-6 q-ml-xs`},rt={class:`text-grey-3`},it={key:0,class:`text-grey-6 q-ml-xs`},at={class:`row items-center q-gutter-sm`},ot={key:3,class:`text-negative text-caption`},st=K(E({__name:`AskUserQuestionPanel`,props:{workspaceId:{}},setup(e){let r=e,{t:a}=z(),s=H(),c=x(()=>{let e=s.peekPending(r.workspaceId);if(!(!e||e.kind!==`question`))return e}),u=x(()=>c.value?c.value.input?.questions??[]:[]),d=x(()=>u.value[E.value]),f=o({}),p=o({}),y=o(!1),b=o(null),E=o(0);n(u,e=>{f.value=Object.fromEntries(e.map(e=>[e.question,[]])),p.value=Object.fromEntries(e.map(e=>[e.question,``])),b.value=null,E.value=0,y.value=!1},{immediate:!0});function D(e,t){return e.header?e.header:`Q${t+1}`}function O(e){return ee(e)?`check`:`help_outline`}function k(e){let t=u.value[e];return t?t.multiSelect?(f.value[t.question]??[]).length>0:!!p.value[t.question]:!1}function ee(e){return k(e)&&e<E.value}let A=x(()=>E.value===u.value.length-1),te=x(()=>u.value.every((e,t)=>k(t)));function ne(){E.value<u.value.length-1&&(E.value+=1)}function j(){E.value>0&&--E.value}async function re(){if(!y.value){y.value=!0,b.value=null;try{let e={};for(let t of u.value)t.multiSelect?e[t.question]=(f.value[t.question]??[]).join(`, `):e[t.question]=p.value[t.question]??``;await s.submitDeferredAnswer(r.workspaceId,e,c.value?.toolCallId)}catch(e){b.value=e instanceof Error?e.message:String(e)}finally{y.value=!1}}}async function M(){if(!y.value){y.value=!0,b.value=null;try{await s.cancelDeferredAnswer(r.workspaceId,`User cancelled the question via the UI`,c.value?.toolCallId)}catch(e){b.value=e instanceof Error?e.message:String(e)}finally{y.value=!1}}}return(e,n)=>c.value?(t(),S(`div`,Je,[T(`div`,Ye,[_(N,{name:`question_answer`,size:`16px`,color:`amber-4`,class:`q-mr-sm`}),T(`div`,Xe,m(w(a)(`askUserQuestion.title`)),1),_(q),u.value.length>1?(t(),S(`span`,Ze,m(E.value+1)+` / `+m(u.value.length),1)):g(``,!0)]),d.value?(t(),h(qe,{key:0,ref:`stepperRef`,modelValue:E.value,"onUpdate:modelValue":n[0]||=e=>E.value=e,flat:``,dark:``,animated:``,"header-nav":``,class:`aukq-stepper bg-transparent`,color:`amber-5`,"active-color":`amber-4`,"done-color":`amber-5`},{navigation:l(()=>[_(We,null,{default:l(()=>[T(`div`,at,[E.value>0?(t(),h(R,{key:0,flat:``,dense:``,color:`grey-4`,label:w(a)(`askUserQuestion.previous`),disable:y.value,onClick:j},null,8,[`label`,`disable`])):g(``,!0),A.value?(t(),h(R,{key:2,label:w(a)(`askUserQuestion.submit`),color:`indigo-5`,dense:``,unelevated:``,loading:y.value,disable:!te.value||y.value,onClick:re},null,8,[`label`,`loading`,`disable`])):(t(),h(R,{key:1,label:w(a)(`askUserQuestion.next`),color:`indigo-5`,dense:``,unelevated:``,disable:!k(E.value)||y.value,onClick:ne},null,8,[`label`,`disable`])),_(R,{label:w(a)(`askUserQuestion.cancel`),flat:``,dense:``,color:`grey-4`,disable:y.value,onClick:M},{default:l(()=>[_(G,null,{default:l(()=>[v(m(w(a)(`askUserQuestion.cancelTooltip`)),1)]),_:1})]),_:1},8,[`label`,`disable`]),_(q),b.value?(t(),S(`span`,ot,m(b.value),1)):g(``,!0)])]),_:1})]),default:l(()=>[(t(!0),S(C,null,i(u.value,(e,n)=>(t(),h(Ue,{key:n,name:n,title:D(e,n),icon:O(n),"active-icon":`edit`,done:ee(n),"header-nav":ee(n)||n===E.value},{default:l(()=>[T(`div`,Qe,m(e.question),1),e.multiSelect?(t(),S(`div`,$e,m(w(a)(`askUserQuestion.multiSelectHint`)),1)):g(``,!0),T(`div`,et,[e.multiSelect?(t(!0),S(C,{key:0},i(e.options,n=>(t(),h(se,{key:n.label,modelValue:f.value[e.question],"onUpdate:modelValue":t=>f.value[e.question]=t,val:n.label,dark:``,dense:``,color:`indigo-4`,disable:y.value},{default:l(()=>[T(`span`,tt,m(n.label),1),n.description?(t(),S(`span`,nt,`— `+m(n.description),1)):g(``,!0)]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`val`,`disable`]))),128)):(t(!0),S(C,{key:1},i(e.options,n=>(t(),h(I,{key:n.label,modelValue:p.value[e.question],"onUpdate:modelValue":t=>p.value[e.question]=t,val:n.label,dark:``,dense:``,color:`indigo-4`,disable:y.value},{default:l(()=>[T(`span`,rt,m(n.label),1),n.description?(t(),S(`span`,it,`— `+m(n.description),1)):g(``,!0)]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`val`,`disable`]))),128))])]),_:2},1032,[`name`,`title`,`icon`,`done`,`header-nav`]))),128))]),_:1},8,[`modelValue`])):g(``,!0)])):g(``,!0)}}),[[`__scopeId`,`data-v-dad21b10`]]),ct=E({__name:`AutoLoopChip`,setup(e){let{t:n}=z(),r=H(),i=x(()=>r.selectedWorkspace),a=x(()=>i.value?r.autoLoopStates[i.value.id]??null:null),o=x(()=>!!a.value?.auto_loop),s=x(()=>!!a.value?.auto_loop_ready),c=x(()=>r.tasks.filter(e=>e.status===`done`).length),u=x(()=>r.tasks.length);return(e,r)=>o.value&&!s.value?(t(),h(J,{key:0,dense:``,square:``,size:`sm`,color:`indigo-4`,"text-color":`white`,icon:`hourglass_top`,class:`q-ml-sm`},{default:l(()=>[v(m(w(n)(`autoLoop.preparing`))+` `,1),_(G,null,{default:l(()=>[v(m(w(n)(`autoLoop.preparingTooltip`)),1)]),_:1})]),_:1})):o.value?(t(),h(J,{key:1,dense:``,square:``,size:`sm`,color:`amber-9`,"text-color":`white`,icon:`autorenew`,class:`q-ml-sm`},{default:l(()=>[v(m(w(n)(`autoLoop.progress`,{done:c.value,total:u.value})),1)]),_:1})):g(``,!0)}});function lt(e,t){return e===`five_hour`?t(`rateLimitType.fiveHour`):e===`seven_day`?t(`rateLimitType.sevenDay`):e}function ut(e,t){try{let n=new Date(e);return Number.isNaN(n.getTime())?e:n.toLocaleTimeString(t?.locale,{hour:`2-digit`,minute:`2-digit`,hour12:!1,timeZone:t?.timeZone})}catch{return e}}function dt(e,t,n){return e.id===`text-detected`&&e.resetAt?n(`stats.resetsAt`,{value:ut(e.resetAt)}):!e.label||e.label.trim().length===0?n(`stats.usageBucket`,{n:t+1}):lt(e.label,n)}function ft(e){return e<50?`positive`:e<75?`warning`:e<90?`orange`:`negative`}var pt={class:`quota-footer`},mt={key:0,class:`text-grey-7`},ht={class:`text-negative text-weight-medium`},gt={class:`text-weight-medium q-mb-sm`},_t={class:`text-caption q-mb-sm`},vt={class:`text-orange text-weight-medium`},yt={class:`text-weight-medium q-mb-sm`},bt={class:`text-caption text-orange q-mb-sm`},xt={class:`text-grey-8`},St={class:`text-weight-medium q-mb-sm`},Ct={class:`row items-center justify-between q-mb-xs`},wt={key:0,class:`text-caption q-mt-xs`},Tt={class:`text-caption q-mt-sm`},Et={class:`row q-gutter-sm q-mt-sm`},Dt=K(E({__name:`QuotaFooter`,setup(e){let n=H(),{t:r}=z(),a=x(()=>n.currentProviderUsage),s=o(!1),c=x(()=>{let e=a.value;if(!e)return``;try{return new Date(e.fetchedAt).toLocaleTimeString()}catch{return e.fetchedAt}});function u(e,t){let n=a.value?.buckets[t];return n?dt({id:n.id,label:e,usedPct:n.usedPct,resetAt:n.resetsAt},t,r):r(`stats.usageBucket`,{n:t+1})}async function d(){if(!s.value){s.value=!0;try{await n.requestUsageRefresh(`claude-code`)}finally{s.value=!1}}}return(e,n)=>(t(),S(`span`,pt,[a.value?a.value.status===`unauthenticated`?(t(),S(C,{key:1},[_(N,{name:`warning`,color:`negative`,size:`14px`,class:`q-mr-xs`}),T(`span`,ht,m(e.$t(`quotaFooter.popover.unauthenticated`)),1),_(xe,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:l(()=>[T(`div`,gt,m(e.$t(`quotaFooter.popover.title`)),1),T(`div`,_t,m(e.$t(`quotaFooter.popover.unauthenticatedHint`)),1),_(R,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:s.value,disable:s.value,onClick:d},null,8,[`label`,`loading`,`disable`])]),_:1})],64)):a.value.status===`error`?(t(),S(C,{key:2},[_(N,{name:`error_outline`,color:`orange`,size:`14px`,class:`q-mr-xs`}),T(`span`,vt,m(e.$t(`quotaFooter.popover.error`)),1),_(xe,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:l(()=>[T(`div`,yt,m(e.$t(`quotaFooter.popover.title`)),1),T(`div`,bt,m(a.value.errorMessage),1),_(R,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:s.value,disable:s.value,onClick:d},null,8,[`label`,`loading`,`disable`])]),_:1})],64)):(t(),S(C,{key:3},[(t(!0),S(C,null,i(a.value.buckets,(e,n)=>(t(),S(`span`,{key:e.id,class:`quota-bucket-compact`},[T(`span`,xt,m(u(e.label,n)),1),_(F,{value:Math.max(0,Math.min(1,e.usedPct/100)),color:w(ft)(e.usedPct),"track-color":`grey-9`,class:`quota-bar`},null,8,[`value`,`color`]),T(`span`,{class:f([`bucket-pct`,`text-${w(ft)(e.usedPct)}`])},m(e.usedPct.toFixed(0))+`%`,3)]))),128)),_(xe,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:l(()=>[T(`div`,St,m(e.$t(`quotaFooter.popover.title`)),1),(t(!0),S(C,null,i(a.value.buckets,(n,r)=>(t(),S(`div`,{key:n.id,class:`q-mb-sm`},[T(`div`,Ct,[T(`span`,null,m(u(n.label,r)),1),T(`span`,{class:f(`text-${w(ft)(n.usedPct)}`)},m(n.usedPct.toFixed(0))+`%`,3)]),_(F,{value:Math.max(0,Math.min(1,n.usedPct/100)),color:w(ft)(n.usedPct),"track-color":`grey-9`,class:`full-bar`},null,8,[`value`,`color`]),n.resetsAt?(t(),S(`div`,wt,m(e.$t(`quotaFooter.popover.resetsIn`,{value:w(ut)(n.resetsAt)})),1)):g(``,!0)]))),128)),T(`div`,Tt,m(e.$t(`quotaFooter.lastUpdated`,{time:c.value})),1),T(`div`,Et,[_(R,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:s.value,disable:s.value,onClick:d},null,8,[`label`,`loading`,`disable`])])]),_:1})],64)):(t(),S(`span`,mt,m(e.$t(`quotaFooter.empty`)),1))]))}}),[[`__scopeId`,`data-v-2edf9322`]]),Ot={key:0,class:`row items-center q-gutter-xs q-mb-xs q-px-xs`,style:{"flex-wrap":`wrap`}},kt={class:`text-caption image-tag-label`},At={key:2,class:`queue-banner row items-center q-pa-xs q-px-sm text-caption text-amber-6`},jt={key:3,class:`autoloop-banner row items-center no-wrap q-pa-xs q-px-sm text-caption text-indigo-3`},Mt={class:`col`},Nt={key:4,class:`awaiting-user-banner row items-center q-pa-xs q-px-sm text-caption text-amber-5`},Pt={class:`row items-center q-gutter-sm`},Ft={class:`chat-hint row items-center text-caption text-grey-8`},It=K(E({__name:`ChatInput`,props:{workspaceId:{}},setup(r){let a=r,{t:s}=z(),c=Ce(),u=H(),d=me(),p=V(),y=o(``),b=o(!1),E=x(()=>B(u.selectedWorkspace?.status));async function D(){if(a.workspaceId){b.value=!0;try{await u.interruptAgent(a.workspaceId),c.notify({type:`info`,message:s(`workspacePage.interrupted`),position:`top`,timeout:3e3})}catch(e){let t=e instanceof Error?e.message:s(`workspacePage.interruptFailed`);c.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{b.value=!1}}}let O=x(()=>B(u.selectedWorkspace?.status)),k=x(()=>!!u.queuedMessages[a.workspaceId]),ee=o(null);function A(){let e=ee.value;return e?e.getNativeElement?.()??null:null}let{showSkills:te,skillFilter:ne,selectedSkillIndex:j,groupedDropdown:re,flatDropdown:M,fetchSkills:ie,detectSlashFragment:ae,replaceFragmentWith:P,closeDropdown:F}=je(y,()=>A()),I=o([]),L=o(null),se=o(!1),ce=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`];function le(t){let n=A(),r=n?.selectionStart??y.value.length,i=y.value.slice(0,r),a=y.value.slice(r);y.value=i+t+a,e(()=>{if(n){let e=r+t.length;n.focus(),n.setSelectionRange(e,e)}})}function ue(){let e=`[image: ${s(`chatInput.uploading`)}]`,t=new Set(I.value.map(e=>e.placeholder));if(!t.has(e))return e;let n=2;for(;t.has(`[image: ${s(`chatInput.uploading`)} ${n}]`);)n++;return`[image: ${s(`chatInput.uploading`)} ${n}]`}async function de(e){if(!ce.includes(e.type))return;let t=crypto.randomUUID(),n=e.name||`pasted-image.png`,r=ue(),i={tempId:t,originalName:n,placeholder:r,status:`uploading`};I.value.push(i),le(r);try{let n=new FormData;n.append(`image`,e);let r=await fetch(`/api/workspaces/${a.workspaceId}/images`,{method:`POST`,body:n});if(!r.ok){let e=await r.json();throw Error(e.error||`Upload failed`)}let i=await r.json(),o=I.value.find(e=>e.tempId===t);if(o){o.uid=i.uid,o.path=i.path,o.status=`ready`;let e=`[image: ${i.path}]`;e!==o.placeholder&&(y.value=y.value.split(o.placeholder).join(e),o.placeholder=e)}}catch{let e=I.value.find(e=>e.tempId===t);e&&(e.status=`error`)}}function fe(e,t){fetch(`/api/workspaces/${e}/images/${t}`,{method:`DELETE`}).catch(()=>{})}function U(e){let t=I.value.find(t=>t.tempId===e);if(t){I.value=I.value.filter(t=>t.tempId!==e);{let e=t.placeholder.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);y.value=y.value.replace(RegExp(`${e}\\s?`,`g`),``)}t.uid&&fe(a.workspaceId,t.uid)}}function pe(e){if(e.clipboardData){for(let t of Array.from(e.clipboardData.items))if(t.type.startsWith(`image/`)){let e=t.getAsFile();e&&de(e)}}}function he(e){if(e.preventDefault(),se.value=!1,e.dataTransfer)for(let t of Array.from(e.dataTransfer.files))ce.includes(t.type)&&de(t)}function _e(e){e.preventDefault(),se.value=!0}function ve(){se.value=!1}function ye(e){let t=e.target;if(t.files){for(let e of Array.from(t.files))de(e);t.value=``}}let W=x(()=>I.value.some(e=>e.status===`uploading`)),K=x(()=>u.sessions.find(e=>e.id===u.selectedSessionId)??null);ie(),n(()=>u.chatDraft,e=>{e&&(y.value=y.value?`${y.value}\n${e}`:e,u.chatDraft=``)});let be=!1;function xe(){be=!0,u.cancelQueuedMessage(a.workspaceId)}n(k,(e,t)=>{t&&!e&&!be&&(y.value=``),be=!1}),n(()=>a.workspaceId,e=>{let t=u.queuedMessages[e];y.value=t?t.content:``}),n(y,async()=>{await e(),await ae();let t=[];for(let e of I.value)y.value.includes(e.placeholder)||t.push(e.tempId);for(let e of t)U(e)});function Se(e){if(!e)return;if(e.type===`template`){let t=p.templates.find(t=>t.slug===e.name);if(!t)return;let n=u.workspaces.find(e=>e.id===a.workspaceId)??null,r=u.gitStatsCache[a.workspaceId]??null,i=u.sessions.find(e=>e.id===u.selectedSessionId)??null,o=null;if(i)if(i.name)o=i.name;else{let e=u.sessions.findIndex(e=>e.id===i.id);o=s(`workspacePage.session`,{n:u.sessions.length-e})}let c;if(r?.prUrl){let e=r.prUrl.match(/\/pull\/(\d+)/);e&&(c=parseInt(e[1],10))}let l=Me({workspace:n?{name:n.name,workingBranch:n.workingBranch,sourceBranch:n.sourceBranch,projectPath:n.projectPath}:null,gitStats:r?{commitCount:r.commitCount,unpushedCount:r.unpushedCount,filesChanged:r.filesChanged,insertions:r.insertions,deletions:r.deletions,prNumber:c,prUrl:r.prUrl,prState:r.prState}:null,sessionName:o});P(Ae(t.content,l)),F();return}let t=`/${e.name}`;if(e.type===`kobo`&&Ee[t]){y.value=t,F(),Ne();return}P(`${t} `),F()}let J=x(()=>{let e=a.workspaceId;if(!e)return!1;let t=u.autoLoopStates[e];return t?.auto_loop===!0&&t?.auto_loop_ready===!0}),we=x(()=>u.selectedWorkspace?.status===`awaiting-user`),Y=x(()=>!a.workspaceId||J.value||we.value),X=o(!1);async function Te(){if(!(!a.workspaceId||X.value)){X.value=!0;try{await u.disableAutoLoop(a.workspaceId)}finally{X.value=!1}}}let Z=o(JSON.parse(localStorage.getItem(`kobo:chatHistory`)??`[]`)),Q=o(-1),$=o(``);function De(e){e&&Z.value[0]!==e&&(Z.value.unshift(e),Z.value.length>50&&Z.value.pop(),localStorage.setItem(`kobo:chatHistory`,JSON.stringify(Z.value)))}function Oe(){Q.value=-1,$.value=``}async function Ne(){let e=y.value.trim();if(!e&&I.value.length===0||Y.value||W.value)return;let t=K.value,n=Ee[e];if(n){d.sendChatMessage(a.workspaceId,n.prompt,u.selectedSessionId??void 0),u.markRead(a.workspaceId),u.addActivityItem(a.workspaceId,{id:`user-${Date.now()}`,type:`text`,content:n.prompt,timestamp:new Date().toISOString(),sessionId:u.selectedSessionId??void 0,meta:{sender:`user`,pending:!0}}),De(e),Oe(),y.value=``;return}if(O.value){u.queueMessage(a.workspaceId,e,u.selectedSessionId??void 0);return}u.cancelQueuedMessage(a.workspaceId);let r=e,i=I.value.filter(e=>e.status===`ready`&&e.path&&!r.includes(`[image: ${e.path}]`)).map(e=>`[image: ${e.path}]`).join(` `);i&&(r=`${r} ${i}`.trim());let o=u.selectedSessionId??void 0;if((t?.status===`completed`||t?.status===`error`)&&!t.engineSessionId){c.notify({type:`warning`,message:s(`workspacePage.sessionEndedNotice`),position:`top`,timeout:5e3});return}let l=`user-${Date.now()}`;u.markRead(a.workspaceId),u.addActivityItem(a.workspaceId,{id:l,type:`text`,content:r,timestamp:new Date().toISOString(),sessionId:o,meta:{sender:`user`,pending:!0}});let f=e;De(e),Oe(),y.value=``,I.value=[];let p=(e,t)=>{console.error(`[ChatInput] ${t} failed:`,e),u.removeActivityItem(a.workspaceId,l),y.value=f;let n=e instanceof Error?e.message:null;c.notify({type:`negative`,message:n??s(`workspacePage.startFailed`),position:`top`,timeout:6e3})};if(t?.status===`idle`)try{await u.startWorkspace(a.workspaceId,r,t.id),await u.fetchSessions(a.workspaceId)}catch(e){p(e,`startWorkspace`)}else if(t?.status===`completed`||t?.status===`error`)try{await u.startWorkspace(a.workspaceId,r,t.id,!0),await u.fetchSessions(a.workspaceId)}catch(e){p(e,`resume session`)}else d.sendChatMessage(a.workspaceId,r,u.selectedSessionId??void 0)}function Pe(e){if(te.value&&M.value.length>0){if(e.key===`ArrowDown`){e.preventDefault(),j.value=Math.min(j.value+1,M.value.length-1);return}if(e.key===`ArrowUp`){e.preventDefault(),j.value=Math.max(j.value-1,0);return}if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey){e.preventDefault(),Se(M.value[j.value]);return}if(e.key===`Escape`){e.preventDefault(),F();return}}if(e.key===`ArrowUp`&&Z.value.length>0){let t=e.target;if(!(!t||t.selectionStart<=(y.value.indexOf(`
|
|
3
|
-
`)===-1?y.value.length:y.value.indexOf(`
|
|
4
|
-
`)))&&Q.value===-1)return;e.preventDefault(),Q.value===-1&&($.value=y.value),Q.value<Z.value.length-1&&(Q.value++,y.value=Z.value[Q.value]);return}if(e.key===`ArrowDown`&&Q.value>=0){e.preventDefault(),Q.value--,y.value=Q.value>=0?Z.value[Q.value]:$.value;return}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Ne())}return(e,n)=>(t(),S(`div`,{class:f([`chat-input-container column q-pa-sm`,{"chat-input-dragging":se.value}]),onDragover:_e,onDragleave:ve,onDrop:he},[I.value.length>0?(t(),S(`div`,Ot,[(t(!0),S(C,null,i(I.value,n=>(t(),S(`div`,{key:n.tempId,class:f([`image-tag row items-center q-px-sm q-py-xs rounded-borders`,{"image-tag--uploading":n.status===`uploading`,"image-tag--ready":n.status===`ready`,"image-tag--error":n.status===`error`}])},[n.status===`uploading`?(t(),h(ge,{key:0,size:`14px`,color:`grey-6`,class:`q-mr-xs`})):n.status===`ready`?(t(),h(N,{key:1,name:`image`,size:`14px`,color:`green-6`,class:`q-mr-xs`})):(t(),h(N,{key:2,name:`error`,size:`14px`,color:`red-6`,class:`q-mr-xs`})),T(`span`,kt,m(n.status===`uploading`?e.$t(`chatInput.uploading`):n.path||n.originalName),1),_(R,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,class:`q-ml-xs image-tag-close`,onClick:e=>U(n.tempId)},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`tooltip.removeImage`)),1)]),_:1})]),_:1},8,[`onClick`])],2))),128))])):g(``,!0),w(te)&&w(M).length>0?(t(),h(ke,{key:1,class:`chat-slash-popup`,"grouped-dropdown":w(re),"flat-dropdown":w(M),"selected-index":w(j),onSelect:Se},null,8,[`grouped-dropdown`,`flat-dropdown`,`selected-index`])):g(``,!0),k.value?(t(),S(`div`,At,[_(N,{name:`schedule`,size:`14px`,color:`amber-6`,class:`q-mr-sm`}),T(`span`,null,m(e.$t(`chatInput.queueBanner`)),1)])):g(``,!0),J.value?(t(),S(`div`,jt,[_(N,{name:`all_inclusive`,size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),T(`span`,Mt,m(e.$t(`chatInput.autoLoopBanner`)),1),_(R,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`stop_circle`,color:`orange-4`,label:e.$t(`chatInput.autoLoopStop`),loading:X.value,disable:X.value,onClick:Te},null,8,[`label`,`loading`,`disable`])])):g(``,!0),we.value&&!J.value?(t(),S(`div`,Nt,[_(N,{name:`question_answer`,size:`14px`,color:`amber-5`,class:`q-mr-sm`}),T(`span`,null,m(e.$t(`chatInput.awaitingUserBanner`)),1)])):g(``,!0),T(`div`,Pt,[_(oe,{ref_key:`chatInputRef`,ref:ee,modelValue:y.value,"onUpdate:modelValue":n[0]||=e=>y.value=e,dense:``,dark:``,borderless:``,autogrow:``,readonly:k.value,placeholder:e.$t(`chatInput.placeholder`),class:`chat-input col rounded-borders`,disable:Y.value,onKeydown:Pe,onPaste:pe},null,8,[`modelValue`,`readonly`,`placeholder`,`disable`]),T(`input`,{ref_key:`fileInputRef`,ref:L,type:`file`,accept:`image/png,image/jpeg,image/gif,image/webp`,multiple:``,style:{display:`none`},onChange:ye},null,544),_(R,{flat:``,dense:``,icon:`attach_file`,color:`grey-6`,disable:Y.value,onClick:n[1]||=e=>L.value?.click()},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`chatInput.attachImage`)),1)]),_:1})]),_:1},8,[`disable`]),k.value?(t(),h(R,{key:0,flat:``,dense:``,icon:`cancel`,color:`orange`,onClick:xe},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`chatInput.cancelQueue`)),1)]),_:1})]),_:1})):(t(),h(R,{key:1,flat:``,dense:``,icon:`send`,color:`primary`,disable:Y.value||!y.value.trim()&&I.value.length===0||W.value,onClick:Ne},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`tooltip.sendMessage`)),1)]),_:1})]),_:1},8,[`disable`]))]),T(`div`,Ft,[T(`div`,null,[n[2]||=T(`kbd`,null,`Enter`,-1),v(` `+m(e.$t(`common.send`))+` `,1),n[3]||=T(`span`,{class:`q-mx-xs`},`·`,-1),n[4]||=v(),n[5]||=T(`kbd`,null,`Shift+Enter`,-1),v(` `+m(e.$t(`common.newLine`))+` `,1),n[6]||=T(`span`,{class:`q-mx-xs`},`·`,-1),n[7]||=v(),n[8]||=T(`kbd`,null,`↑↓`,-1),v(` `+m(e.$t(`common.history`)),1)]),_(q),_(Dt,{class:`q-mr-md`}),E.value?(t(),h(R,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`orange-4`,icon:`pause`,label:e.$t(`workspacePage.interrupt`),loading:b.value,disable:b.value,onClick:D},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`workspacePage.interruptTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])):g(``,!0)])],34))}}),[[`__scopeId`,`data-v-84c366ba`]]),Lt={key:0,class:`permission-request-panel q-pa-sm bg-dark text-grey-3`},Rt={class:`row items-center q-mb-sm`},zt={class:`text-caption text-uppercase text-weight-bold text-amber-4`,style:{"letter-spacing":`0.05em`}},Bt={class:`text-body2 text-grey-2 q-mb-xs`},Vt={class:`text-weight-medium`},Ht={class:`q-ml-xs`},Ut={class:`text-caption text-grey-6 q-mb-xs`},Wt={class:`permission-input-pre`},Gt={class:`row items-center q-gutter-sm q-mt-sm`},Kt={key:0,class:`text-negative text-caption`},qt=K(E({__name:`PermissionRequestPanel`,props:{workspaceId:{}},setup(e){let r=e,{t:i}=z(),a=H(),s=x(()=>{let e=a.peekPending(r.workspaceId);if(!(!e||e.kind!==`permission`))return e}),c=x(()=>{if(!s.value)return``;try{return JSON.stringify(s.value.toolInput,null,2)}catch{return String(s.value.toolInput)}}),l=o(!1),u=o(null);n(()=>s.value?.toolCallId??null,()=>{l.value=!1,u.value=null});async function d(e){if(s.value&&!l.value){l.value=!0,u.value=null;try{await a.submitDeferredPermission(r.workspaceId,s.value.toolCallId,e,e===`deny`?i(`permissionRequest.denied`):void 0)}catch(e){u.value=e instanceof Error?e.message:String(e)}finally{l.value=!1}}}return(e,n)=>s.value?(t(),S(`div`,Lt,[T(`div`,Rt,[_(N,{name:`security`,size:`16px`,color:`amber-4`,class:`q-mr-sm`}),T(`div`,zt,m(w(i)(`permissionRequest.title`)),1)]),T(`div`,Bt,[T(`span`,Vt,m(w(i)(`permissionRequest.tool`))+`:`,1),T(`code`,Ht,m(s.value.toolName),1)]),T(`div`,Ut,m(w(i)(`permissionRequest.input`)),1),T(`pre`,Wt,m(c.value),1),T(`div`,Gt,[_(R,{label:w(i)(`permissionRequest.allow`),color:`indigo-5`,dense:``,unelevated:``,loading:l.value,disable:l.value,onClick:n[0]||=e=>d(`allow`)},null,8,[`label`,`loading`,`disable`]),_(R,{label:w(i)(`permissionRequest.deny`),flat:``,dense:``,color:`grey-4`,disable:l.value,onClick:n[1]||=e=>d(`deny`)},null,8,[`label`,`disable`]),_(q),u.value?(t(),S(`span`,Kt,m(u.value),1)):g(``,!0)])])):g(``,!0)}}),[[`__scopeId`,`data-v-12227c33`]]),Jt={class:`text-subtitle2`},Yt={class:`text-caption`},Xt=E({__name:`StaleSessionBanner`,props:{workspaceId:{}},setup(e){let n=e,r=H(),i=x(()=>{if(!r.selectedSessionId||r.sessions.length<2)return!1;let e=r.sessions[0];if(!e||e.id===r.selectedSessionId)return!1;let t=r.workspaces.find(e=>e.id===n.workspaceId);return!t||!B(t.status)?!1:r.autoLoopStates[n.workspaceId]?.auto_loop===!0});function a(){let e=r.sessions[0];e&&r.selectSession(e.id)}return(e,n)=>i.value?(t(),h(Ie,{key:0,class:`bg-indigo-9 text-white q-ma-sm`,rounded:``},{avatar:l(()=>[_(N,{name:`loop`})]),action:l(()=>[_(R,{flat:``,dense:``,"no-caps":``,label:e.$t(`staleSessionBanner.switchToCurrent`),onClick:a},null,8,[`label`])]),default:l(()=>[T(`div`,Jt,m(e.$t(`staleSessionBanner.title`)),1),T(`div`,Yt,m(e.$t(`staleSessionBanner.message`)),1)]),_:1})):g(``,!0)}}),Zt={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},Qt=E({__name:`WakeupBanner`,setup(e){let{t:n}=z(),r=H(),i=o(Date.now()),s=null;a(()=>{s=setInterval(()=>{i.value=Date.now()},1e3)}),b(()=>{s&&clearInterval(s)});let c=x(()=>{let e=r.selectedWorkspace;return e?r.pendingWakeups[e.id]??null:null}),u=x(()=>r.selectedWorkspace?!!c.value:!1),d=x(()=>{if(!c.value)return 0;let e=Math.ceil((new Date(c.value.targetAt).getTime()-i.value)/1e3);return Math.max(0,e)}),f=x(()=>d.value===0?n(`wakeup.firing`):n(`wakeup.scheduledIn`,{n:d.value}));function p(){let e=r.selectedWorkspace;e&&r.cancelPendingWakeup(e.id)}return(e,r)=>u.value?(t(),S(`div`,Zt,[_(N,{name:`schedule`,size:`14px`,color:`amber-4`,class:`q-mr-sm`}),T(`span`,null,[v(m(f.value)+` `,1),c.value?.reason?(t(),h(G,{key:0,anchor:`top middle`,self:`bottom middle`,offset:[0,6]},{default:l(()=>[v(m(w(n)(`wakeup.reason`,{reason:c.value.reason})),1)]),_:1})):g(``,!0)]),_(q),_(R,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,color:`grey-5`,"aria-label":w(n)(`wakeup.cancel`),onClick:p},{default:l(()=>[_(G,null,{default:l(()=>[v(m(w(n)(`wakeup.cancel`)),1)]),_:1})]),_:1},8,[`aria-label`])])):g(``,!0)}}),$t={class:`wp-header row items-center q-px-md q-py-sm no-wrap`},en={class:`text-body1 text-weight-medium text-grey-3 ellipsis`,style:{"max-width":`480px`}},tn={class:`row items-center no-wrap text-caption text-grey-5`},nn={class:`row items-center no-wrap text-caption text-grey-5`},rn={class:`row items-center no-wrap text-caption text-grey-5`},an={key:1,class:`text-body2 text-grey-8`},on={class:`col column items-center justify-center`},sn={class:`text-grey-6 text-caption q-mt-sm`},cn={class:`text-subtitle1`},ln=K(E({__name:`WorkspacePage`,setup(e){let r=d(()=>Promise.all([pe(()=>import(`./ActivityFeed-CIJPN8TH.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27])),new Promise(e=>setTimeout(e,500))]).then(([e])=>e)),i=Ce(),s=H(),{t:y}=z(),{timeAgo:b}=Q();function E(e){return e===`awaiting-user`?y(`workspaceStatus.awaitingUser`):e}o(!1);let D=o(!1),O=new Set,A=o(new Set),te=x(()=>B(s.selectedWorkspace?.status));n(te,e=>{e||(A.value=new Set)}),n(()=>s.selectedWorkspaceId,e=>{A.value=new Set,e&&s.fetchPendingWakeup(e)},{immediate:!0});function ne(e){if(!te.value)return;let t=new Set(A.value);t.add(e),A.value=t}function j(e){O.add(e),e.finally(()=>{O.delete(e)})}o(!1);async function re(){if(s.selectedWorkspaceId){D.value=!0;try{await s.stopWorkspace(s.selectedWorkspaceId)}catch(e){let t=e instanceof Error?e.message:y(`workspacePage.stopFailed`);i.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{D.value=!1}}}let M=x(()=>[...De.map(e=>({label:y(e.i18nLabelKey),value:e.value}))]),ae=x(()=>[{label:L(y(`reasoning.auto`)),value:`auto`},{label:L(y(`reasoning.low`)),value:`low`},{label:L(y(`reasoning.medium`)),value:`medium`},{label:L(y(`reasoning.high`)),value:`high`},{label:L(y(`reasoning.xhigh`)),value:`xhigh`},{label:L(y(`reasoning.max`)),value:`max`}]),P=x(()=>{let e=s.selectedWorkspace,t=e?s.autoLoopStates[e.id]?.auto_loop??e.autoLoop:!1;return[{label:y(`agentPermissionMode.plan`),value:`plan`,disable:t},{label:y(`agentPermissionMode.bypass`),value:`bypass`,disable:!1},{label:y(`agentPermissionMode.strict`),value:`strict`,disable:!1},{label:y(`agentPermissionMode.interactive`),value:`interactive`,disable:!1}]}),F=x({get:()=>s.selectedWorkspace?.model??`auto`,set:e=>{s.selectedWorkspaceId&&(ne(`model`),j(s.updateModel(s.selectedWorkspaceId,e)))}}),I=x({get:()=>s.selectedWorkspace?.reasoningEffort??`auto`,set:e=>{s.selectedWorkspaceId&&(ne(`reasoningEffort`),j(s.updateReasoningEffort(s.selectedWorkspaceId,e)))}});function L(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}function se(e){return ae.value.find(t=>t.value===e)?.label??e}let V=x({get:()=>s.selectedWorkspace?.agentPermissionMode??`bypass`,set:e=>{s.selectedWorkspaceId&&(ne(`agentPermissionMode`),j(s.updateAgentPermissionMode(s.selectedWorkspaceId,e)))}}),U=de(),me=ce(),W=x(()=>s.selectedWorkspaceId),K=x(()=>s.selectedWorkspace),xe=x(()=>s.sessions),J=x({get:()=>s.selectedSessionId,set:e=>{if(e===`__new__`){Ae();return}if(!e)return;s.selectSession(e);let t={...U.query};t.session=e,me.replace({query:t})}}),we=x(()=>[...s.sessions.map((e,t)=>({label:e.name??y(`workspacePage.session`,{n:s.sessions.length-t}),value:e.id,caption:b(e.startedAt),isSession:!0})),{label:y(`workspacePage.newSession`),value:`__new__`,caption:``,isSession:!1}]),Y=o(!1),X=o(null),Te=o(``),Z=o(!1);function Ee(e,t){let n=s.sessions.find(t=>t.id===e);n&&(X.value={id:e},Te.value=n.name??t,Y.value=!0)}async function ke(){if(!(!X.value||!s.selectedWorkspaceId))try{await s.renameSession(s.selectedWorkspaceId,X.value.id,Te.value.trim())}catch(e){console.error(`[WorkspacePage] renameSession failed:`,e),i.notify({type:`negative`,message:y(`workspacePage.renameFailed`),position:`top`})}finally{Y.value=!1}}async function Ae(){if(s.selectedWorkspaceId){Z.value=!0;try{await s.createSession(s.selectedWorkspaceId)}catch(e){console.error(`[WorkspacePage] createSession failed:`,e);let t=e instanceof Error?e.message:null;i.notify({type:`negative`,message:t??y(`workspacePage.createSessionFailed`),position:`top`,timeout:6e3})}finally{Z.value=!1}}}return a(()=>{let e=U.params.id;e&&(s.selectWorkspace(e),s.fetchPendingWakeup(e));let t=U.query.session;t&&s.selectSession(t)}),n(()=>U.params.id,e=>{e&&e!==s.selectedWorkspaceId&&s.selectWorkspace(e)}),(e,n)=>(t(),h(Oe,{class:`column no-wrap`,style:{height:`100vh`}},{default:l(()=>[T(`div`,$t,[K.value?(t(),S(C,{key:0},[T(`span`,en,[v(m(K.value.name)+` `,1),_(G,null,{default:l(()=>[v(m(K.value.name),1)]),_:1})]),_(be,{label:E(K.value.status),color:[`error`,`quota`].includes(K.value.status)?`red-9`:K.value.status===`awaiting-user`?`amber-9`:w(B)(K.value.status)?`green-9`:`grey-8`,class:`q-ml-sm`,style:{"font-size":`10px`}},null,8,[`label`,`color`]),_(ct),xe.value.length>0?(t(),h($,{key:0,modelValue:J.value,"onUpdate:modelValue":n[0]||=e=>J.value=e,options:we.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,loading:Z.value,disable:Z.value,class:`q-ml-sm`,style:{"min-width":`160px`,"max-width":`220px`,"font-size":`11px`}},{option:l(e=>[e.opt.isSession?g(``,!0):(t(),h(ie,{key:0,spaced:``})),_(_e,c(e.itemProps,{clickable:``,dense:``,class:`row items-center no-wrap`}),{default:l(()=>[_(ve,null,{default:l(()=>[_(ye,{class:f(e.opt.isSession?``:`text-grey-5`)},{default:l(()=>[v(m(e.opt.label),1)]),_:2},1032,[`class`]),e.opt.caption?(t(),h(ye,{key:0,caption:``},{default:l(()=>[v(m(e.opt.caption),1)]),_:2},1024)):g(``,!0)]),_:2},1024),e.opt.isSession?(t(),h(ve,{key:0,side:``},{default:l(()=>[_(R,{icon:`more_vert`,flat:``,dense:``,round:``,size:`xs`,color:`grey-6`,onClick:ee(t=>Ee(e.opt.value,e.opt.label),[`stop`])},null,8,[`onClick`])]),_:2},1024)):g(``,!0)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])):g(``,!0),_(q),_($,{modelValue:V.value,"onUpdate:modelValue":n[1]||=e=>V.value=e,options:P.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-xs`,style:{"min-width":`80px`,"max-width":`140px`,"font-size":`11px`}},{selected:l(()=>[T(`span`,tn,[_(N,{name:V.value===`plan`?`visibility`:V.value===`strict`?`lock`:V.value===`interactive`?`security`:`flash_on`,size:`12px`,color:`amber-6`,class:`q-mr-xs`},null,8,[`name`]),v(` `+m(P.value.find(e=>e.value===V.value)?.label??V.value)+` `,1),A.value.has(`agentPermissionMode`)?(t(),h(N,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):g(``,!0)])]),_:1},8,[`modelValue`,`options`]),_($,{modelValue:F.value,"onUpdate:modelValue":n[2]||=e=>F.value=e,options:M.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm model-select`,style:{"min-width":`100px`,"max-width":`160px`,"font-size":`11px`}},{selected:l(()=>[T(`span`,nn,[_(N,{name:`auto_awesome`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),v(` `+m(M.value.find(e=>e.value===F.value)?.label??F.value)+` `,1),A.value.has(`model`)?(t(),h(N,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):g(``,!0)])]),_:1},8,[`modelValue`,`options`]),_($,{modelValue:I.value,"onUpdate:modelValue":n[3]||=e=>I.value=e,options:ae.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,class:`q-mr-sm`,style:{"min-width":`90px`,"max-width":`140px`,"font-size":`11px`}},{selected:l(()=>[T(`span`,rn,[_(N,{name:`psychology`,size:`12px`,color:`amber-6`,class:`q-mr-xs`}),v(` `+m(se(I.value))+` `,1),A.value.has(`reasoningEffort`)?(t(),h(N,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:l(()=>[_(G,null,{default:l(()=>[v(m(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):g(``,!0)])]),_:1},8,[`modelValue`,`options`]),w(B)(K.value.status)?(t(),h(R,{key:1,dense:``,"no-caps":``,size:`sm`,color:`negative`,icon:`stop`,label:e.$t(`common.stop`),class:`q-mr-xs`,loading:D.value,disable:D.value,onClick:re},null,8,[`label`,`loading`,`disable`])):g(``,!0)],64)):(t(),S(`span`,an,m(e.$t(`workspacePage.selectWorkspace`)),1))]),_(ie,{dark:``}),W.value?(t(),h(ze,{key:0,"workspace-id":W.value},null,8,[`workspace-id`])):g(``,!0),W.value?(t(),h(Xt,{key:1,"workspace-id":W.value},null,8,[`workspace-id`])):g(``,!0),W.value?(t(),h(p,{key:2},{fallback:l(()=>[T(`div`,on,[_(ge,{size:`40px`,color:`indigo-4`}),T(`div`,sn,m(e.$t(`common.loading`)),1)])]),default:l(()=>[_(w(r),{class:`col`,style:{"min-height":`0`},"workspace-id":W.value},null,8,[`workspace-id`])]),_:1})):g(``,!0),_(Fe),_(Qt),W.value?(t(),h(st,{key:3,"workspace-id":W.value},null,8,[`workspace-id`])):g(``,!0),W.value?(t(),h(qt,{key:4,"workspace-id":W.value},null,8,[`workspace-id`])):g(``,!0),W.value?(t(),h(It,{key:5,"workspace-id":W.value},null,8,[`workspace-id`])):g(``,!0),_(ue,{modelValue:Y.value,"onUpdate:modelValue":n[5]||=e=>Y.value=e,persistent:``},{default:l(()=>[_(he,{dark:``,style:{"min-width":`320px`}},{default:l(()=>[_(le,null,{default:l(()=>[T(`div`,cn,m(w(y)(`workspacePage.renameSessionTitle`)),1)]),_:1}),_(le,null,{default:l(()=>[_(oe,{modelValue:Te.value,"onUpdate:modelValue":n[4]||=e=>Te.value=e,label:w(y)(`workspacePage.sessionNameLabel`),dark:``,dense:``,autofocus:``,onKeyup:k(ke,[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),_(fe,{align:`right`},{default:l(()=>[u(_(R,{flat:``,label:w(y)(`common.cancel`)},null,8,[`label`]),[[Se]]),_(R,{flat:``,color:`primary`,label:w(y)(`workspacePage.renameSession`),disable:!Te.value.trim(),onClick:ke},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-7e842ed7`]]);export{ln as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{F as e,H as t,L as n,Q as r,_t as i,bt as a,f as o,g as s,l as c,p as l,r as u,rt as d,u as f,v as p}from"./runtime-core.esm-bundler-C3IgBgY5.js";import{L as m,t as h}from"./QIcon-B0-pH3Qs.js";import{n as g}from"./vue-i18n-eUDnMrPl.js";import{h as _}from"./index-C_e7KOYh.js";import{t as v}from"./_plugin-vue_export-helper-B8bB5DBd.js";import{t as y}from"./kobo-commands-DiUm1Y34.js";var b={class:`slash-suggestions rounded-borders`},x={class:`slash-section-header`},S=[`onMousedown`],C={class:`slash-name text-caption`},w={class:`slash-section-header`},T=[`onMousedown`],E={class:`slash-name text-caption`},D={key:0,class:`slash-description text-caption text-grey-7 q-ml-xs`},O={class:`slash-section-header`},k=[`onMousedown`],A={class:`slash-name text-caption`},j={key:0,class:`slash-description text-caption text-grey-7 q-ml-xs`},M=v(p({__name:`SlashSuggestionsPopup`,props:{groupedDropdown:{},flatDropdown:{},selectedIndex:{}},emits:[`select`],setup(t,{emit:r}){let{t:c}=g(),p=r;function _(e){let t=y[`/${e}`];if(!t)return``;let n=t.descriptionKey,r=c(n);return r===n?``:r}return(r,g)=>(e(),l(`div`,b,[t.groupedDropdown.skills.length>0?(e(),l(u,{key:0},[f(`div`,x,a(d(c)(`chatInput.dropdownSkills`)),1),(e(!0),l(u,null,n(t.groupedDropdown.skills,n=>(e(),l(`div`,{key:`skill-${n.name}`,class:i([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":t.flatDropdown.indexOf(n)===t.selectedIndex}]),onMousedown:m(e=>p(`select`,n),[`prevent`])},[s(h,{name:`bolt`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),f(`span`,C,a(n.name),1)],42,S))),128))],64)):o(``,!0),t.groupedDropdown.kobo.length>0?(e(),l(u,{key:1},[f(`div`,w,a(d(c)(`chatInput.dropdownKobo`)),1),(e(!0),l(u,null,n(t.groupedDropdown.kobo,n=>(e(),l(`div`,{key:`kobo-${n.name}`,class:i([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":t.flatDropdown.indexOf(n)===t.selectedIndex}]),onMousedown:m(e=>p(`select`,n),[`prevent`])},[s(h,{name:`terminal`,size:`12px`,color:`teal-4`,class:`q-mr-xs`}),f(`span`,E,`/`+a(n.name),1),_(n.name)?(e(),l(`span`,D,`— `+a(_(n.name)),1)):o(``,!0)],42,T))),128))],64)):o(``,!0),t.groupedDropdown.templates.length>0?(e(),l(u,{key:2},[f(`div`,O,a(d(c)(`chatInput.dropdownTemplates`)),1),(e(!0),l(u,null,n(t.groupedDropdown.templates,n=>(e(),l(`div`,{key:`tpl-${n.name}`,class:i([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":t.flatDropdown.indexOf(n)===t.selectedIndex}]),onMousedown:m(e=>p(`select`,n),[`prevent`])},[s(h,{name:`description`,size:`12px`,color:`amber-4`,class:`q-mr-xs`}),f(`span`,A,`/`+a(n.name),1),n.description?(e(),l(`span`,j,`— `+a(n.description),1)):o(``,!0)],42,k))),128))],64)):o(``,!0)]))}}),[[`__scopeId`,`data-v-cc4747a4`]]);function N(e,n,i={}){let a=_(),o=r([]),s=r(!1),l=r(``),u=r(0),d=0;async function f(){let e=Date.now();if(!(e-d<5e3&&o.value.length>0)){d=e;try{let e=await fetch(`/api/skills`);e.ok&&(o.value=await e.json())}catch{}}}function p(){let t=n();if(!t)return null;let r=t.selectionStart??e.value.length,i=e.value.slice(0,r).match(/\/([\w:.-]*)$/);return i?i[1]:null}async function m(){let e=p();e===null?s.value=!1:(await f(),l.value=e,s.value=!0,u.value=0)}function h(){s.value=!1}function g(t){let r=n();if(!r){e.value=t;return}let i=r.selectionStart??e.value.length,a=e.value.slice(0,i),o=e.value.slice(i),s=a.match(/\/[\w:.-]*$/);if(!s){e.value=t;return}let c=s.index??i;e.value=e.value.slice(0,c)+t+o}let v=c(()=>{let e=l.value.toLowerCase(),t=t=>e===``?!0:t.toLowerCase().includes(e);return{skills:o.value.filter(e=>t(e)).map(e=>({type:`skill`,name:e})),kobo:i.excludeKoboCommands?[]:Object.keys(y).map(e=>e.replace(/^\//,``)).filter(e=>t(e)).map(e=>({type:`kobo`,name:e})),templates:a.templates.filter(e=>t(e.slug)).map(e=>({type:`template`,name:e.slug,description:e.description}))}}),b=c(()=>[...v.value.skills,...v.value.kobo,...v.value.templates]);return t(()=>b.value.length,e=>{if(e===0){u.value=0;return}u.value>=e&&(u.value=e-1)}),{skills:o,showSkills:s,skillFilter:l,selectedSkillIndex:u,groupedDropdown:v,flatDropdown:b,fetchSkills:f,detectSlashFragment:m,replaceFragmentWith:g,closeDropdown:h}}function P(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>{let r=t[n];return r==null?e:String(r)})}function F(e){let t={};return e.workspace&&(t.workspace_name=e.workspace.name,t.working_branch=e.workspace.workingBranch,t.source_branch=e.workspace.sourceBranch,t.project_path=e.workspace.projectPath,t.worktree_path=`${e.workspace.projectPath}/.worktrees/${e.workspace.workingBranch}`),e.gitStats&&(t.commit_count=e.gitStats.commitCount,t.unpushed_count=e.gitStats.unpushedCount,t.files_changed=e.gitStats.filesChanged,t.insertions=e.gitStats.insertions,t.deletions=e.gitStats.deletions,e.gitStats.prNumber!=null&&(t.pr_number=e.gitStats.prNumber),e.gitStats.prUrl&&(t.pr_url=e.gitStats.prUrl),e.gitStats.prState&&(t.pr_state=e.gitStats.prState)),e.sessionName&&(t.session_name=e.sessionName),t}export{M as i,P as n,N as r,F as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{m as e,o as t}from"./index-C_e7KOYh.js";var n=t(({app:t})=>{t.use(e)});export{n as default};
|