@loicngr/kobo 1.7.31 → 1.7.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/dist/mcp-server/kobo-tasks-server.js +1 -1
- package/dist/server/routes/settings.js +2 -1
- package/dist/server/routes/workspaces.js +30 -2
- package/dist/server/services/agent/engines/claude-code/event-mapper.js +8 -0
- package/dist/server/services/agent/engines/claude-code/options-builder.js +11 -1
- package/dist/server/services/agent/engines/types.js +1 -0
- package/dist/server/services/agent/event-router.js +7 -1
- package/dist/server/services/auto-loop-service.js +2 -1
- package/dist/server/services/settings-service.js +28 -1
- package/dist/server/services/workspace-service.js +15 -0
- package/package.json +13 -13
- package/src/client/dist/spa/assets/ActivityFeed-COdkQaiZ.js +8 -0
- package/src/client/dist/spa/assets/{ActivityFeed-yUMQhnW4.css → ActivityFeed-HbMZOClq.css} +1 -1
- package/src/client/dist/spa/assets/ChangelogPage-BXD8H3j-.js +1 -0
- package/src/client/dist/spa/assets/ClosePopup-DD10nToj.js +1 -0
- package/src/client/dist/spa/assets/CreatePage-DX4TjLqr.js +2 -0
- package/src/client/dist/spa/assets/DiffViewer-BUjVXGyZ.js +8 -0
- package/src/client/dist/spa/assets/HealthPage-DM7fvP4v.js +1 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuYjalmUiAw-BCOjigVR.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuZtalmUiAw-Ocp2tNig.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuaabVmUiAw-6jEn9xEl.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWub2bVmUiAw-CCs8I9zJ.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbFmUiAw-BLaboPi0.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmUiAw-DHuK6FBl.woff +0 -0
- package/src/client/dist/spa/assets/MainLayout-CbUZOTwz.js +37 -0
- package/src/client/dist/spa/assets/{MainLayout-DTW0ySzA.css → MainLayout-DtTxmFXf.css} +1 -1
- package/src/client/dist/spa/assets/QBadge-CIC5n8w7.js +1 -0
- package/src/client/dist/spa/assets/QBanner-BxBEdhfp.js +1 -0
- package/src/client/dist/spa/assets/QBtn-DwemGTZv.js +1 -0
- package/src/client/dist/spa/assets/QCheckbox-o3UHW596.js +1 -0
- package/src/client/dist/spa/assets/QChip-BpS8c1sW.js +1 -0
- package/src/client/dist/spa/assets/QExpansionItem-C9vmJqEO.js +1 -0
- package/src/client/dist/spa/assets/QIcon-C6C3QeM4.js +1 -0
- package/src/client/dist/spa/assets/QInput-CLZtb8E0.js +1 -0
- package/src/client/dist/spa/assets/QItemLabel-BYSjzk-t.js +1 -0
- package/src/client/dist/spa/assets/QItemSection-O9WBXftL.js +1 -0
- package/src/client/dist/spa/assets/QList-DRW_oyZ4.js +1 -0
- package/src/client/dist/spa/assets/QMenu-D_9kEp2i.js +1 -0
- package/src/client/dist/spa/assets/QPage-C6xc9fOe.js +1 -0
- package/src/client/dist/spa/assets/QRadio-B_TurTzx.js +1 -0
- package/src/client/dist/spa/assets/QScrollArea-B5jf9S4y.js +1 -0
- package/src/client/dist/spa/assets/QScrollObserver-Cxj52Zfg.js +1 -0
- package/src/client/dist/spa/assets/QSelect-DERXhq6x.js +36 -0
- package/src/client/dist/spa/assets/QSpace-CrVsndpV.js +1 -0
- package/src/client/dist/spa/assets/QSpinnerDots-atHe_AUn.js +1 -0
- package/src/client/dist/spa/assets/QToggle-Dwr3hSLw.js +1 -0
- package/src/client/dist/spa/assets/QTooltip-CyRLTG6i.js +1 -0
- package/src/client/dist/spa/assets/SearchPage-OaTRqd2Q.js +1 -0
- package/src/client/dist/spa/assets/SettingsPage-B7H6sD7r.css +1 -0
- package/src/client/dist/spa/assets/SettingsPage-BBk3MB8w.js +9 -0
- package/src/client/dist/spa/assets/TouchPan-BmfIMD00.js +1 -0
- package/src/client/dist/spa/assets/WorkspacePage-k_qzLoLC.js +4 -0
- package/src/client/dist/spa/assets/build-path-tree-D4_LR3mz.js +1 -0
- package/src/client/dist/spa/assets/chunk-DtRyYLXJ.js +1 -0
- package/src/client/dist/spa/assets/codicon-ngg6Pgfi.ttf +0 -0
- package/src/client/dist/spa/assets/{css.worker-D1piIYC4.js → css.worker-BtW9exzf.js} +32 -45
- package/src/client/dist/spa/assets/cssMode-CdNIff6x.js +1 -0
- package/src/client/dist/spa/assets/documents-N8PwB_Gh.js +1 -0
- package/src/client/dist/spa/assets/editor-BFebQ78e.css +1 -0
- package/src/client/dist/spa/assets/editor.api2-CEAFHkwY.js +872 -0
- package/src/client/dist/spa/assets/editor.main-DuQa2C4S.js +6 -0
- package/src/client/dist/spa/assets/editor.worker-DWlYVeeX.js +26 -0
- package/src/client/dist/spa/assets/engineFeatures-DChekJQO.js +1 -0
- package/src/client/dist/spa/assets/expand-template-BXNt_oWH.js +1 -0
- package/src/client/dist/spa/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa-Dr0goTwe.woff +0 -0
- package/src/client/dist/spa/assets/{formatters-BKR66G3t.js → formatters-wq5wP2If.js} +1 -1
- package/src/client/dist/spa/assets/freemarker2-DXz2Sr_a.js +3 -0
- package/src/client/dist/spa/assets/handlebars-B6DHJ8jd.js +1 -0
- package/src/client/dist/spa/assets/html-_UvZHIUo.js +1 -0
- package/src/client/dist/spa/assets/{html.worker-C4q4XMPn.js → html.worker-Dg1SpGQ4.js} +22 -29
- package/src/client/dist/spa/assets/htmlMode-DZ0ixGc6.js +1 -0
- package/src/client/dist/spa/assets/i18n-DXMuiAyu.js +1 -0
- package/src/client/dist/spa/assets/{index-ClabzOPc.css → index-C3dgH7TE.css} +1 -1
- package/src/client/dist/spa/assets/index-CNin8jPU.js +82 -0
- package/src/client/dist/spa/assets/{javascript-CTXs71Pa.js → javascript-C6Gf4Ys2.js} +1 -1
- package/src/client/dist/spa/assets/json.worker-CCzEOxDx.js +58 -0
- package/src/client/dist/spa/assets/jsonMode-aE8EPidy.js +7 -0
- package/src/client/dist/spa/assets/{kobo-commands-DLc7j2_p.js → kobo-commands-Ip0ObeCE.js} +1 -1
- package/src/client/dist/spa/assets/{kotlin-CllWo3gX.js → kotlin-DIUPrqKg.js} +1 -1
- package/src/client/dist/spa/assets/liquid-CSp27lUC.js +1 -0
- package/src/client/dist/spa/assets/lspLanguageFeatures-UxO-LpRp.js +4 -0
- package/src/client/dist/spa/assets/mdx-BSCEgQSy.js +1 -0
- package/src/client/dist/spa/assets/monaco.contribution-DqqsS1kc.js +2 -0
- package/src/client/dist/spa/assets/notifications-C4MxuXC7.js +1 -0
- package/src/client/dist/spa/assets/python-CA5lSk1U.js +1 -0
- package/src/client/dist/spa/assets/razor-BznM4hXD.js +1 -0
- package/src/client/dist/spa/assets/render-chat-markdown-BJsZCnSw.js +66 -0
- package/src/client/dist/spa/assets/touch-yfnu5R3D.js +1 -0
- package/src/client/dist/spa/assets/ts.worker-DI5g4t5j.js +67719 -0
- package/src/client/dist/spa/assets/tsMode-NbGeOvoN.js +11 -0
- package/src/client/dist/spa/assets/typescript-kHDph5jb.js +1 -0
- package/src/client/dist/spa/assets/use-checkbox-BnkSQgTJ.js +1 -0
- package/src/client/dist/spa/assets/use-id-By86THzm.js +1 -0
- package/src/client/dist/spa/assets/{use-onboarding-CzGgvyS9.js → use-onboarding-C4tGLHsr.js} +1 -1
- package/src/client/dist/spa/assets/use-quasar-DcJRs0ay.js +1 -0
- package/src/client/dist/spa/assets/vue-i18n-C5Tx4bGk.js +3 -0
- package/src/client/dist/spa/assets/vue.runtime.esm-bundler-BAtKyT0Y.js +3 -0
- package/src/client/dist/spa/assets/workers-DFjmWZva.js +1 -0
- package/src/client/dist/spa/assets/xml-BXzZhhmL.js +1 -0
- package/src/client/dist/spa/assets/yaml-DQNlz7_W.js +1 -0
- package/src/client/dist/spa/index.html +14 -13
- package/src/mcp-server/kobo-tasks-server.ts +1 -1
- package/src/client/dist/spa/assets/ActivityFeed-DFMce5VW.js +0 -8
- package/src/client/dist/spa/assets/ChangelogPage-BZEr6iNh.js +0 -1
- package/src/client/dist/spa/assets/ClosePopup-CY16K9Yi.js +0 -1
- package/src/client/dist/spa/assets/CreatePage-geIEPibR.js +0 -2
- package/src/client/dist/spa/assets/DiffViewer-C8yPZaCf.js +0 -8
- package/src/client/dist/spa/assets/HealthPage-DAk5EKO_.js +0 -1
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuYjalmUiAw-k1h7X_-h.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuZtalmUiAw-B7du-70m.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuaabVmUiAw-CoAZ_DKt.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWub2bVmUiAw-D0406B4n.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbFmUiAw-CnAg2DeQ.woff +0 -0
- package/src/client/dist/spa/assets/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbVmUiAw-BG9VWE5v.woff +0 -0
- package/src/client/dist/spa/assets/MainLayout-CNNcKilU.js +0 -37
- package/src/client/dist/spa/assets/QBadge-DNQSqPg-.js +0 -1
- package/src/client/dist/spa/assets/QBanner-C_TvxtXi.js +0 -1
- package/src/client/dist/spa/assets/QBtn-CoU-UC_j.js +0 -1
- package/src/client/dist/spa/assets/QCheckbox-Cq2STfHp.js +0 -1
- package/src/client/dist/spa/assets/QChip-5bnjPnRz.js +0 -1
- package/src/client/dist/spa/assets/QExpansionItem-_8j8FyQg.js +0 -1
- package/src/client/dist/spa/assets/QIcon-BmEX2rXO.js +0 -1
- package/src/client/dist/spa/assets/QInput-D0t39uK_.js +0 -1
- package/src/client/dist/spa/assets/QItemLabel-Btqw0P7M.js +0 -1
- package/src/client/dist/spa/assets/QItemSection-DRg-QuAD.js +0 -1
- package/src/client/dist/spa/assets/QList-Ch5K5W7r.js +0 -1
- package/src/client/dist/spa/assets/QMenu-BXssnk-g.js +0 -1
- package/src/client/dist/spa/assets/QPage-3-ah4oor.js +0 -1
- package/src/client/dist/spa/assets/QRadio-M9mC5jZy.js +0 -1
- package/src/client/dist/spa/assets/QScrollArea-_Mvx2t8o.js +0 -1
- package/src/client/dist/spa/assets/QScrollObserver-C6P7wS4h.js +0 -1
- package/src/client/dist/spa/assets/QSelect-4UzZxoyw.js +0 -36
- package/src/client/dist/spa/assets/QSpace-Crcx82On.js +0 -1
- package/src/client/dist/spa/assets/QSpinnerDots-DspFKwCZ.js +0 -1
- package/src/client/dist/spa/assets/QToggle-DBzTAIbK.js +0 -1
- package/src/client/dist/spa/assets/QTooltip-DyIRS1GH.js +0 -1
- package/src/client/dist/spa/assets/SearchPage-K04ns4hU.js +0 -1
- package/src/client/dist/spa/assets/SettingsPage-D0WcKagG.js +0 -9
- package/src/client/dist/spa/assets/SettingsPage-D1Ap5wB7.css +0 -1
- package/src/client/dist/spa/assets/TouchPan-DZZEI8eo.js +0 -1
- package/src/client/dist/spa/assets/WorkspacePage-DNO_bRMJ.js +0 -4
- package/src/client/dist/spa/assets/build-path-tree-BUfhgOSH.js +0 -1
- package/src/client/dist/spa/assets/codicon-CgENjH2v.ttf +0 -0
- package/src/client/dist/spa/assets/cssMode-0MvCYrRV.js +0 -4
- package/src/client/dist/spa/assets/documents-CX2-4fhr.js +0 -1
- package/src/client/dist/spa/assets/editor-COGk2gAX.css +0 -1
- package/src/client/dist/spa/assets/editor-CS3NEPi9.css +0 -1
- package/src/client/dist/spa/assets/editor.api-DYWJPPWs.js +0 -818
- package/src/client/dist/spa/assets/editor.main-B8in8NwN.js +0 -53
- package/src/client/dist/spa/assets/editor.worker-CJ9iTmkr.js +0 -26
- package/src/client/dist/spa/assets/engineFeatures-BdTa0rX6.js +0 -1
- package/src/client/dist/spa/assets/expand-template-CP-8YIJC.js +0 -1
- package/src/client/dist/spa/assets/flUhRq6tzZclQEJ-Vdg-IuiaDsNa-OUIwM9U8.woff +0 -0
- package/src/client/dist/spa/assets/freemarker2-Dx4cVLM0.js +0 -3
- package/src/client/dist/spa/assets/handlebars-CwM3UEBZ.js +0 -1
- package/src/client/dist/spa/assets/html-2JtDgifC.js +0 -1
- package/src/client/dist/spa/assets/htmlMode-B8N8GxKE.js +0 -4
- package/src/client/dist/spa/assets/i18n-C80g9cfR.js +0 -1
- package/src/client/dist/spa/assets/index-BTVVGg4f.js +0 -82
- package/src/client/dist/spa/assets/json.worker-C9p7xCYk.js +0 -65
- package/src/client/dist/spa/assets/jsonMode-Cnw0tYit.js +0 -10
- package/src/client/dist/spa/assets/liquid-B1BeK8RP.js +0 -1
- package/src/client/dist/spa/assets/mdx-DLwxZ3wR.js +0 -1
- package/src/client/dist/spa/assets/monaco.contribution-B3kpNNij.js +0 -2
- package/src/client/dist/spa/assets/notifications-BtVr85fZ.js +0 -1
- package/src/client/dist/spa/assets/python-C5L3E7X0.js +0 -1
- package/src/client/dist/spa/assets/razor-DCXiAjxH.js +0 -1
- package/src/client/dist/spa/assets/render-chat-markdown-DDQr5Zs5.js +0 -60
- package/src/client/dist/spa/assets/runtime-core.esm-bundler-D_RRiKBh.js +0 -1
- package/src/client/dist/spa/assets/touch-2Qa-HSDZ.js +0 -1
- package/src/client/dist/spa/assets/ts.worker-Cj3zTgVE.js +0 -51353
- package/src/client/dist/spa/assets/tsMode-Bu5FUVgw.js +0 -11
- package/src/client/dist/spa/assets/typescript-B-pS9HtR.js +0 -1
- package/src/client/dist/spa/assets/use-checkbox-DnSuDqo2.js +0 -1
- package/src/client/dist/spa/assets/use-id-BCnfiBjU.js +0 -1
- package/src/client/dist/spa/assets/use-quasar-sypIWZgU.js +0 -1
- package/src/client/dist/spa/assets/vue-i18n-Cq-KgjJC.js +0 -3
- package/src/client/dist/spa/assets/xml-Dgpxgles.js +0 -1
- package/src/client/dist/spa/assets/yaml-D219wUJe.js +0 -1
- /package/src/client/dist/spa/assets/{_plugin-vue_export-helper-r4mAJOHR.js → _plugin-vue_export-helper-BzmG9fMN.js} +0 -0
- /package/src/client/dist/spa/assets/{fsharp-CMk2OIJN.js → fsharp-CFNadkg7.js} +0 -0
- /package/src/client/dist/spa/assets/{go-BrMkuJg0.js → go-dSur1iB2.js} +0 -0
- /package/src/client/dist/spa/assets/{graphql-PSR1UKGv.js → graphql-qyhAo11d.js} +0 -0
- /package/src/client/dist/spa/assets/{hcl-DAQrbDOW.js → hcl-DFzjMyzm.js} +0 -0
- /package/src/client/dist/spa/assets/{ini-0TG5BxW0.js → ini-TdzA8TIl.js} +0 -0
- /package/src/client/dist/spa/assets/{java-rgorz17v.js → java-CSGA9pkE.js} +0 -0
- /package/src/client/dist/spa/assets/{julia-C8VMdHm8.js → julia-9izz5OsY.js} +0 -0
- /package/src/client/dist/spa/assets/{less-Cgca25AP.js → less-B8d93iCg.js} +0 -0
- /package/src/client/dist/spa/assets/{lexon-D0GHdBaw.js → lexon-DWtEIyu7.js} +0 -0
- /package/src/client/dist/spa/assets/{lua-DmRsNG-P.js → lua-Ciq0OGgt.js} +0 -0
- /package/src/client/dist/spa/assets/{m3-BgL5dNKT.js → m3-Cki6JWj_.js} +0 -0
- /package/src/client/dist/spa/assets/{markdown-BuJfycGS.js → markdown-Cu47xwU0.js} +0 -0
- /package/src/client/dist/spa/assets/{mips-C9m_93PR.js → mips-BM8ui995.js} +0 -0
- /package/src/client/dist/spa/assets/{msdax-CpFHC9OI.js → msdax-DqLio0_c.js} +0 -0
- /package/src/client/dist/spa/assets/{mysql-qFvltsqN.js → mysql-v1wbjJOq.js} +0 -0
- /package/src/client/dist/spa/assets/{objective-c-Bnmr858J.js → objective-c-CQl3PGSB.js} +0 -0
- /package/src/client/dist/spa/assets/{pascal-WP0_D5AO.js → pascal-D4iW0ZtD.js} +0 -0
- /package/src/client/dist/spa/assets/{pascaligo-Blom4Rij.js → pascaligo-BdC9CZdj.js} +0 -0
- /package/src/client/dist/spa/assets/{perl-B-vk8g64.js → perl-BL10m4XD.js} +0 -0
- /package/src/client/dist/spa/assets/{permissionModes-r9UZvpVs.js → permissionModes-CJN6Olox.js} +0 -0
- /package/src/client/dist/spa/assets/{pgsql-Cgvz6v67.js → pgsql-Be_oqVo3.js} +0 -0
- /package/src/client/dist/spa/assets/{php-8a3Lrw9m.js → php-BtvXSFRI.js} +0 -0
- /package/src/client/dist/spa/assets/{pla-DuFqEZ8V.js → pla-B2vUy15C.js} +0 -0
- /package/src/client/dist/spa/assets/{postiats-DkLtSgkp.js → postiats-CbmTTfXr.js} +0 -0
- /package/src/client/dist/spa/assets/{powerquery-BJ1aNepW.js → powerquery-DszLhJGx.js} +0 -0
- /package/src/client/dist/spa/assets/{powershell-rE98k687.js → powershell-B0dYktF6.js} +0 -0
- /package/src/client/dist/spa/assets/{protobuf-CUheFacr.js → protobuf-CZvaj1VX.js} +0 -0
- /package/src/client/dist/spa/assets/{pug-LDcAMD8w.js → pug-CPDx1B3S.js} +0 -0
- /package/src/client/dist/spa/assets/{qsharp-DUKSQoR1.js → qsharp-CDP9TFLl.js} +0 -0
- /package/src/client/dist/spa/assets/{r-D-QApv87.js → r-8DbbFX2l.js} +0 -0
- /package/src/client/dist/spa/assets/{redis-SXdDyWR9.js → redis-DRWj9MtJ.js} +0 -0
- /package/src/client/dist/spa/assets/{redshift-Y6lsCryn.js → redshift-C6cElE_5.js} +0 -0
- /package/src/client/dist/spa/assets/{restructuredtext-edObr9a8.js → restructuredtext-W9pS9n3m.js} +0 -0
- /package/src/client/dist/spa/assets/{ruby-CNnUfF-8.js → ruby-BKnzWnk-.js} +0 -0
- /package/src/client/dist/spa/assets/{rust-IHUZWzBr.js → rust-YPCclWwe.js} +0 -0
- /package/src/client/dist/spa/assets/{sb-DrUvY44N.js → sb-BgM4DTFb.js} +0 -0
- /package/src/client/dist/spa/assets/{scala-B4hbXGLM.js → scala-fz1OPLMl.js} +0 -0
- /package/src/client/dist/spa/assets/{scheme-BGrd12j3.js → scheme-8Uz1RIbu.js} +0 -0
- /package/src/client/dist/spa/assets/{scss-x5G1ES4U.js → scss-Djo3IYXr.js} +0 -0
- /package/src/client/dist/spa/assets/{shell-DOehe2Y8.js → shell-CINF5Tx_.js} +0 -0
- /package/src/client/dist/spa/assets/{solidity-BeRvcwWV.js → solidity-GgiNEuUm.js} +0 -0
- /package/src/client/dist/spa/assets/{sophia-DZbkUNjy.js → sophia-Culj97P9.js} +0 -0
- /package/src/client/dist/spa/assets/{sparql-B7_oi5-h.js → sparql-C2ZlpxOY.js} +0 -0
- /package/src/client/dist/spa/assets/{sql-CTlsFWVE.js → sql-BEf5Pg7Y.js} +0 -0
- /package/src/client/dist/spa/assets/{st-DJVEJdPE.js → st-CT6UUoeH.js} +0 -0
- /package/src/client/dist/spa/assets/{swift-CwhT3fYa.js → swift-B5g0xTG3.js} +0 -0
- /package/src/client/dist/spa/assets/{systemverilog-BQN63pkN.js → systemverilog-CEgQz9DR.js} +0 -0
- /package/src/client/dist/spa/assets/{tcl-DqwfpskA.js → tcl-D0qL2L0I.js} +0 -0
- /package/src/client/dist/spa/assets/{twig-BiyenUgc.js → twig-BFUAVf1E.js} +0 -0
- /package/src/client/dist/spa/assets/{typespec-CWOJribt.js → typespec-CjVVcNKm.js} +0 -0
- /package/src/client/dist/spa/assets/{vb-Cq5F87m3.js → vb-CZJr-DQz.js} +0 -0
- /package/src/client/dist/spa/assets/{wgsl-BAvW2lVr.js → wgsl-ivoXUo2e.js} +0 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{$ as e,B as t,C as n,F as r,G as i,I as a,M as o,R as s,S as c,T as l,U as u,W as d,_ as f,a as p,at as m,b as h,c as g,ct as _,g as v,h as y,it as b,k as x,m as S,n as ee,o as te,ot as ne,p as C,v as re,w as ie,y as w}from"./vue.runtime.esm-bundler-BAtKyT0Y.js";import{L as ae,N as oe,P as T,i as se,k as ce,l as le,n as ue,r as de,t as E}from"./QIcon-C6C3QeM4.js";import{r as fe}from"./use-id-By86THzm.js";import{B as pe,V as D,a as me,c as he,i as ge,l as _e,n as ve,o as ye,s as be,z as O}from"./notifications-C4MxuXC7.js";import{n as xe,r as Se}from"./QRadio-B_TurTzx.js";import{c as Ce,t as k}from"./QBtn-DwemGTZv.js";import{n as we}from"./vue-i18n-C5Tx4bGk.js";import{i as Te,o as A,r as Ee,t as j}from"./QInput-CLZtb8E0.js";import{t as De}from"./QCheckbox-o3UHW596.js";import{t as M}from"./QToggle-Dwr3hSLw.js";import{_ as Oe,b as ke,g as Ae,t as je,x as Me}from"./index-CNin8jPU.js";import{n as N,t as P}from"./QItemSection-O9WBXftL.js";import{t as F}from"./QItemLabel-BYSjzk-t.js";import{d as I,t as Ne}from"./QTooltip-CyRLTG6i.js";import{t as Pe}from"./QExpansionItem-C9vmJqEO.js";import{t as Fe}from"./TouchPan-BmfIMD00.js";import{t as Ie}from"./_plugin-vue_export-helper-BzmG9fMN.js";import{t as L}from"./QSpace-CrVsndpV.js";import{t as Le}from"./QChip-BpS8c1sW.js";import{t as R}from"./QList-DRW_oyZ4.js";import{t as Re}from"./QMenu-D_9kEp2i.js";import{t as ze}from"./ClosePopup-DD10nToj.js";import{t as Be}from"./use-quasar-DcJRs0ay.js";import{a as Ve,i as He,n as Ue,o as We,r as Ge,t as z}from"./QSelect-DERXhq6x.js";import{n as Ke,t as qe}from"./use-onboarding-C4tGLHsr.js";import{t as Je}from"./QPage-C6xc9fOe.js";import{n as Ye,r as Xe,t as Ze}from"./permissionModes-CJN6Olox.js";import{t as B}from"./QBanner-BxBEdhfp.js";var Qe=`q-slider__marker-labels`,V=e=>({value:e}),$e=({marker:e})=>l(`div`,{key:e.value,style:e.style,class:e.classes},e.label),et=[34,37,40,33,39,38],tt={...de,...A,min:{type:Number,default:0},max:{type:Number,default:100},innerMin:Number,innerMax:Number,step:{type:Number,default:1,validator:e=>e>=0},snap:Boolean,vertical:Boolean,reverse:Boolean,color:String,markerLabelsClass:String,label:Boolean,labelColor:String,labelTextColor:String,labelAlways:Boolean,switchLabelSide:Boolean,markers:[Boolean,Number],markerLabels:[Boolean,Array,Object,Function],switchMarkerLabelsSide:Boolean,trackImg:String,trackColor:String,innerTrackImg:String,innerTrackColor:String,selectionColor:String,selectionImg:String,thumbSize:{type:String,default:`20px`},trackSize:{type:String,default:`4px`},disable:Boolean,readonly:Boolean,dense:Boolean,tabindex:[String,Number],thumbColor:String,thumbPath:{type:String,default:`M 4, 10 a 6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0`}},H=[`pan`,`update:modelValue`,`change`];function nt({updateValue:t,updatePosition:r,getDragging:i,formAttrs:a}){let{props:s,emit:c,slots:u,proxy:{$q:d}}=n(),f=ue(s,d),p=Te(a),m=e(!1),h=e(!1),g=e(!1),_=e(!1),v=C(()=>s.vertical?`--v`:`--h`),y=C(()=>`-`+(s.switchLabelSide?`switched`:`standard`)),b=C(()=>s.vertical?s.reverse:s.reverse!==(d.lang.rtl===!0)),x=C(()=>!Number.isFinite(s.innerMin)||s.innerMin<s.min?s.min:s.innerMin),S=C(()=>!Number.isFinite(s.innerMax)||s.innerMax>s.max?s.max:s.innerMax),ee=C(()=>!s.disable&&!s.readonly&&x.value<S.value),te=C(()=>{if(s.step===0)return e=>e;let e=(String(s.step).trim().split(`.`)[1]||``).length;return t=>Number.parseFloat(t.toFixed(e))}),ne=C(()=>s.step===0?1:s.step),re=C(()=>ee.value?s.tabindex||0:-1),ie=C(()=>s.max-s.min),w=C(()=>S.value-x.value),ae=C(()=>j(x.value)),oe=C(()=>j(S.value)),T=C(()=>s.vertical?b.value?`bottom`:`top`:b.value?`right`:`left`),le=C(()=>s.vertical?`height`:`width`),de=C(()=>s.vertical?`width`:`height`),E=C(()=>s.vertical?`vertical`:`horizontal`),fe=C(()=>{let e={role:`slider`,"aria-valuemin":x.value,"aria-valuemax":S.value,"aria-orientation":E.value,"data-step":s.step};return s.disable?e[`aria-disabled`]=`true`:s.readonly&&(e[`aria-readonly`]=`true`),e}),me=C(()=>`q-slider q-slider${v.value} q-slider--${m.value?``:`in`}active inline no-wrap `+(s.vertical?`row`:`column`)+(s.disable?` disabled`:` q-slider--enabled`+(ee.value?` q-slider--editable`:``))+(g.value===`both`?` q-slider--focus`:``)+(s.label||s.labelAlways?` q-slider--label`:``)+(s.labelAlways?` q-slider--label-always`:``)+(f.value?` q-slider--dark`:``)+(s.dense?` q-slider--dense q-slider--dense`+v.value:``));function he(e){let t=`q-slider__`+e;return`${t} ${t}${v.value} ${t}${v.value}${y.value}`}function ge(e){let t=`q-slider__`+e;return`${t} ${t}${v.value}`}let _e=C(()=>{let e=s.selectionColor||s.color;return`q-slider__selection absolute`+(e===void 0?``:` text-${e}`)}),ve=C(()=>ge(`markers`)+` absolute overflow-hidden`),ye=C(()=>ge(`track-container`)),be=C(()=>he(`pin`)),O=C(()=>he(`label`)),xe=C(()=>he(`text-container`)),Se=C(()=>he(`marker-labels-container`)+(s.markerLabelsClass===void 0?``:` ${s.markerLabelsClass}`)),Ce=C(()=>`q-slider__track relative-position no-outline`+(s.trackColor===void 0?``:` bg-${s.trackColor}`)),k=C(()=>{let e={[de.value]:s.trackSize};return s.trackImg!==void 0&&(e.backgroundImage=`url(${s.trackImg}) !important`),e}),we=C(()=>`q-slider__inner absolute`+(s.innerTrackColor===void 0?``:` bg-${s.innerTrackColor}`)),A=C(()=>{let e=oe.value-ae.value,t={[T.value]:`${100*ae.value}%`,[le.value]:e===0?`2px`:`${100*e}%`};return s.innerTrackImg!==void 0&&(t.backgroundImage=`url(${s.innerTrackImg}) !important`),t});function Ee(e){let{min:t,max:n,step:r}=s,i=t+e*(n-t);if(r>0){let e=(i-x.value)%r;i+=(Math.abs(e)>=r/2?(e<0?-1:1)*r:0)-e}return i=te.value(i),I(i,x.value,S.value)}function j(e){return ie.value===0?0:(e-s.min)/ie.value}function De(e,t){let n=ce(e),r=s.vertical?I((n.top-t.top)/t.height,0,1):I((n.left-t.left)/t.width,0,1);return I(b.value?1-r:r,ae.value,oe.value)}let M=C(()=>pe(s.markers)?s.markers:ne.value),Oe=C(()=>{let e=[],t=M.value,n=s.max,r=s.min;do e.push(r),r+=t;while(r<n);return e.push(n),e}),ke=C(()=>{let e=` ${Qe}${v.value}-`;return`q-slider__marker-labels${e}${s.switchMarkerLabelsSide?`switched`:`standard`}${e}${b.value?`rtl`:`ltr`}`}),Ae=C(()=>s.markerLabels===!1?null:N(s.markerLabels).map((e,t)=>({index:t,value:e.value,label:e.label||e.value,classes:ke.value+(e.classes===void 0?``:` `+e.classes),style:{...P(e.value),...e.style}}))),je=C(()=>({markerList:Ae.value,markerMap:F.value,classes:ke.value,getStyle:P})),Me=C(()=>{let e=w.value===0?`2px`:100*M.value/w.value;return{...A.value,backgroundSize:s.vertical?`2px ${e}%`:`${e}% 2px`}});function N(e){if(e===!1)return null;if(e===!0)return Oe.value.map(V);if(typeof e==`function`)return Oe.value.map(t=>{let n=e(t);return D(n)?{...n,value:t}:{value:t,label:n}});let t=({value:e})=>e>=s.min&&e<=s.max;return Array.isArray(e)?e.map(e=>D(e)?e:{value:e}).filter(t):Object.keys(e).map(t=>{let n=e[t],r=Number(t);return D(n)?{...n,value:r}:{value:r,label:n}}).filter(t)}function P(e){return{[T.value]:`${100*(e-s.min)/ie.value}%`}}let F=C(()=>{if(s.markerLabels===!1)return null;let e={};return Ae.value.forEach(t=>{e[t.value]=t}),e});function Ne(){if(u[`marker-label-group`]!==void 0)return u[`marker-label-group`](je.value);let e=u[`marker-label`]||$e;return Ae.value.map(t=>e({marker:t,...je.value}))}let Pe=C(()=>[[Fe,Ie,void 0,{[E.value]:!0,prevent:!0,stop:!0,mouse:!0,mouseAllDir:!0}]]);function Ie(e){e.isFinal?(_.value!==void 0&&(r(e.evt),e.touch&&t(!0),_.value=void 0,c(`pan`,`end`)),m.value=!1,g.value=!1):e.isFirst?(_.value=i(e.evt),r(e.evt),t(),m.value=!0,c(`pan`,`start`)):(r(e.evt),t())}function L(){g.value=!1}function Le(e){r(e,i(e)),t(),h.value=!0,m.value=!0,document.addEventListener(`mouseup`,R,!0)}function R(){h.value=!1,m.value=!1,t(!0),L(),document.removeEventListener(`mouseup`,R,!0)}function Re(e){r(e,i(e)),t(!0)}function ze(e){et.includes(e.keyCode)&&t(!0)}function Be(e){if(s.vertical)return null;let t=d.lang.rtl===s.reverse?e:1-e;return{transform:`translateX(calc(${2*t-1} * ${s.thumbSize} / 2 + ${50-100*t}%))`}}function Ve(e){let t=C(()=>!h.value&&(g.value===e.focusValue||g.value===`both`)?` q-slider--focus`:``),n=C(()=>`q-slider__thumb q-slider__thumb${v.value} q-slider__thumb${v.value}-${b.value?`rtl`:`ltr`} absolute non-selectable`+t.value+(e.thumbColor.value===void 0?``:` text-${e.thumbColor.value}`)),r=C(()=>({width:s.thumbSize,height:s.thumbSize,[T.value]:`${100*e.ratio.value}%`,zIndex:g.value===e.focusValue?2:void 0})),i=C(()=>e.labelColor.value===void 0?``:` text-${e.labelColor.value}`),a=C(()=>Be(e.ratio.value)),o=C(()=>`q-slider__text`+(e.labelTextColor.value===void 0?``:` text-${e.labelTextColor.value}`));return()=>{let t=[l(`svg`,{class:`q-slider__thumb-shape absolute-full`,viewBox:`0 0 20 20`,"aria-hidden":`true`},[l(`path`,{d:s.thumbPath})]),l(`div`,{class:`q-slider__focus-ring fit`})];return(s.label||s.labelAlways)&&(t.push(l(`div`,{class:be.value+` absolute fit no-pointer-events`+i.value},[l(`div`,{class:O.value,style:{minWidth:s.thumbSize}},[l(`div`,{class:xe.value,style:a.value},[l(`span`,{class:o.value},e.label.value)])])])),s.name!==void 0&&!s.disable&&p(t,`push`)),l(`div`,{class:n.value,style:r.value,...e.getNodeData()},t)}}function He(e,t,n,r){let i=[];s.innerTrackColor!==`transparent`&&i.push(l(`div`,{key:`inner`,class:we.value,style:A.value})),s.selectionColor!==`transparent`&&i.push(l(`div`,{key:`selection`,class:_e.value,style:e.value})),s.markers!==!1&&i.push(l(`div`,{key:`marker`,class:ve.value,style:Me.value})),r(i);let a=[se(`div`,{key:`trackC`,class:ye.value,tabindex:t.value,...n.value},[l(`div`,{class:Ce.value,style:k.value},i)],`slide`,ee.value,()=>Pe.value)];return s.markerLabels!==!1&&a[s.switchMarkerLabelsSide?`unshift`:`push`](l(`div`,{key:`markerL`,class:Se.value},Ne())),a}return o(()=>{document.removeEventListener(`mouseup`,R,!0)}),{state:{active:m,focus:g,preventFocus:h,dragging:_,editable:ee,classes:me,tabindex:re,attributes:fe,roundValueFn:te,keyStep:ne,trackLen:ie,innerMin:x,innerMinRatio:ae,innerMax:S,innerMaxRatio:oe,positionProp:T,sizeProp:le,isReversed:b},methods:{onActivate:Le,onMobileClick:Re,onBlur:L,onKeyup:ze,getContent:He,getThumbRenderFn:Ve,convertRatioToModel:Ee,convertModelToRatio:j,getDraggingRatio:De}}}var rt=()=>({}),it=T({name:`QSlider`,props:{...tt,modelValue:{required:!0,default:null,validator:e=>typeof e==`number`||e===null},labelValue:[String,Number]},emits:H,setup(t,{emit:r}){let{proxy:{$q:i}}=n(),{state:a,methods:o}=nt({updateValue:v,updatePosition:b,getDragging:y,formAttrs:Ee(t)}),s=e(null),c=e(0),d=e(0);function f(){d.value=t.modelValue===null?a.innerMin.value:I(t.modelValue,a.innerMin.value,a.innerMax.value)}u(()=>`${t.modelValue}|${a.innerMin.value}|${a.innerMax.value}`,f,{immediate:!0});let p=C(()=>o.convertModelToRatio(d.value)),m=C(()=>a.active.value?c.value:p.value),h=C(()=>{let e={[a.positionProp.value]:`${100*a.innerMinRatio.value}%`,[a.sizeProp.value]:`${100*(m.value-a.innerMinRatio.value)}%`};return t.selectionImg!==void 0&&(e.backgroundImage=`url(${t.selectionImg}) !important`),e}),g=o.getThumbRenderFn({focusValue:!0,getNodeData:rt,ratio:m,label:C(()=>t.labelValue===void 0?d.value:t.labelValue),thumbColor:C(()=>t.thumbColor||t.color),labelColor:C(()=>t.labelColor),labelTextColor:C(()=>t.labelTextColor)}),_=C(()=>a.editable.value?i.platform.is.mobile?{onClick:o.onMobileClick}:{onMousedown:o.onActivate,onFocus:x,onBlur:o.onBlur,onKeydown:S,onKeyup:o.onKeyup}:{});function v(e){d.value!==t.modelValue&&r(`update:modelValue`,d.value),e&&r(`change`,d.value)}function y(){return s.value.getBoundingClientRect()}function b(e,n=a.dragging.value){let r=o.getDraggingRatio(e,n);d.value=o.convertRatioToModel(r),c.value=!t.snap||t.step===0?r:o.convertModelToRatio(d.value)}function x(){a.focus.value=!0}function S(e){if(!et.includes(e.keyCode))return;oe(e);let n=([34,33].includes(e.keyCode)?10:1)*a.keyStep.value,r=([34,37,40].includes(e.keyCode)?-1:1)*(a.isReversed.value?-1:1)*(t.vertical?-1:1)*n;d.value=I(a.roundValueFn.value(d.value+r),a.innerMin.value,a.innerMax.value),v()}return()=>{let e=o.getContent(h,a.tabindex,_,e=>{e.push(g())});return l(`div`,{ref:s,class:a.classes.value+(t.modelValue===null?` q-slider--no-value`:``),...a.attributes.value,"aria-valuenow":t.modelValue},e)}}});function U(e,t=new WeakMap){if(Object(e)!==e)return e;if(t.has(e))return t.get(e);let n=e instanceof Date?new Date(e):e instanceof RegExp?new RegExp(e.source,e.flags):e instanceof Set?new Set:e instanceof Map?new Map:typeof e.constructor==`function`?e.prototype!==void 0&&typeof e.prototype.constructor==`function`?e:new e.constructor:Object.create(null);if(typeof e.constructor==`function`&&typeof e.valueOf==`function`){let n=e.valueOf();if(Object(n)!==n){let r=new e.constructor(n);return t.set(e,r),r}}return t.set(e,n),e instanceof Set?e.forEach(e=>{n.add(U(e,t))}):e instanceof Map&&e.forEach((e,r)=>{n.set(r,U(e,t))}),Object.assign(n,...Object.keys(e).map(n=>({[n]:U(e[n],t)})))}var at=T({name:`QPopupEdit`,props:{modelValue:{required:!0},title:String,buttons:Boolean,labelSet:String,labelCancel:String,color:{type:String,default:`primary`},validate:{type:Function,default:()=>!0},autoSave:Boolean,cover:{type:Boolean,default:!0},disable:Boolean},emits:[`update:modelValue`,`save`,`cancel`,`beforeShow`,`show`,`beforeHide`,`hide`],setup(t,{slots:r,emit:i}){let{proxy:a}=n(),{$q:o}=a,s=e(null),c=e(``),u=e(``),d=!1,f=C(()=>ae({initialValue:c.value,validate:t.validate,set:p,cancel:m,updatePosition:h},`value`,()=>u.value,e=>{u.value=e}));function p(){t.validate(u.value)&&(g()&&(i(`save`,u.value,c.value),i(`update:modelValue`,u.value)),_())}function m(){g()&&i(`cancel`,u.value,c.value),_()}function h(){x(()=>{s.value.updatePosition()})}function g(){return!O(u.value,c.value)}function _(){d=!0,s.value.hide()}function v(){d=!1,c.value=U(t.modelValue),u.value=U(t.modelValue),i(`beforeShow`)}function y(){i(`show`)}function b(){!d&&g()&&(t.autoSave&&t.validate(u.value)?(i(`save`,u.value,c.value),i(`update:modelValue`,u.value)):i(`cancel`,u.value,c.value)),i(`beforeHide`)}function S(){i(`hide`)}function ee(){let e=r.default===void 0?[]:[r.default(f.value)].flat();return t.title&&e.unshift(l(`div`,{class:`q-dialog__title q-mt-sm q-mb-sm`},t.title)),t.buttons&&e.push(l(`div`,{class:`q-popup-edit__buttons row justify-center no-wrap`},[l(k,{flat:!0,color:t.color,label:t.labelCancel||o.lang.label.cancel,onClick:m}),l(k,{flat:!0,color:t.color,label:t.labelSet||o.lang.label.set,onClick:p})])),e}return Object.assign(a,{set:p,cancel:m,show(e){s.value?.show(e)},hide(e){s.value?.hide(e)},updatePosition:h}),()=>{if(!t.disable)return l(Re,{ref:s,class:`q-popup-edit`,cover:t.cover,onBeforeShow:v,onShow:y,onBeforeHide:b,onHide:S,onEscapeKey:m},ee)}}}),ot={class:`text-h6`},st=[`title`],ct={key:1,class:`row justify-center q-mt-sm`},lt=c({__name:`FolderPickerDialog`,props:{modelValue:{type:Boolean},initialPath:{}},emits:[`update:modelValue`,`select`],setup(n,{emit:r}){let a=n,o=r,c=e(``),l=e(null),p=e([]),m=e(!1),b=e(``);async function x(e){m.value=!0,b.value=``;try{let t=e?`?path=${encodeURIComponent(e)}`:``,n=await fetch(`/api/fs/list-dirs${t}`),r=await n.json();if(!n.ok){b.value=r?.error??`HTTP ${n.status}`;return}c.value=r.path??``,l.value=r.parent??null,p.value=Array.isArray(r.entries)?r.entries:[]}catch(e){b.value=e instanceof Error?e.message:String(e)}finally{m.value=!1}}function ee(){c.value&&(o(`select`,c.value),o(`update:modelValue`,!1))}return u(()=>a.modelValue,e=>{e&&x(a.initialPath||void 0)}),(e,r)=>(s(),y(Oe,{"model-value":n.modelValue,"onUpdate:modelValue":r[1]||=t=>e.$emit(`update:modelValue`,t)},{default:d(()=>[h(ke,{class:`text-grey-3`,style:{"min-width":`480px`,"max-width":`90vw`,background:`#1e1e3a`}},{default:d(()=>[h(Me,{class:`row items-center q-pb-none`},{default:d(()=>[S(`div`,ot,_(e.$t(`folderPicker.title`)),1),h(L),i(h(k,{flat:``,dense:``,round:``,icon:`close`,color:`grey-5`},null,512),[[ze]])]),_:1}),h(Me,null,{default:d(()=>[S(`div`,{class:`text-caption text-grey-6 ellipsis q-mb-sm`,style:{"font-family":`monospace`},title:c.value},_(c.value||`…`),9,st),b.value?(s(),y(B,{key:0,dense:``,class:`bg-red-9 text-white q-mb-sm rounded-borders`},{default:d(()=>[w(_(b.value),1)]),_:1})):v(``,!0),h(R,{bordered:``,separator:``,class:`rounded-borders`,style:{"max-height":`320px`,"overflow-y":`auto`}},{default:d(()=>[l.value?i((s(),y(N,{key:0,clickable:``,onClick:r[0]||=e=>x(l.value)},{default:d(()=>[h(P,{avatar:``},{default:d(()=>[h(E,{name:`arrow_upward`,color:`grey-5`})]),_:1}),h(P,null,{default:d(()=>[w(_(e.$t(`folderPicker.parent`)),1)]),_:1})]),_:1})),[[Ce]]):v(``,!0),(s(!0),f(g,null,t(p.value,e=>i((s(),y(N,{key:e.path,clickable:``,onClick:t=>x(e.path)},{default:d(()=>[h(P,{avatar:``},{default:d(()=>[h(E,{name:`folder`,color:`amber-6`})]),_:1}),h(P,null,{default:d(()=>[w(_(e.name),1)]),_:2},1024)]),_:2},1032,[`onClick`])),[[Ce]])),128)),!m.value&&p.value.length===0?(s(),y(N,{key:1},{default:d(()=>[h(P,{class:`text-grey-7`},{default:d(()=>[w(_(e.$t(`folderPicker.empty`)),1)]),_:1})]),_:1})):v(``,!0)]),_:1}),m.value?(s(),f(`div`,ct,[h(le,{size:`20px`,color:`grey-5`})])):v(``,!0)]),_:1}),h(xe,{align:`right`},{default:d(()=>[i(h(k,{flat:``,label:e.$t(`common.cancel`),color:`grey-5`},null,8,[`label`]),[[ze]]),h(k,{flat:``,label:e.$t(`folderPicker.select`),color:`primary`,disable:!c.value||m.value,onClick:ee},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`model-value`]))}}),ut={class:`settings-layout`},dt={class:`settings-nav`},ft={class:`settings-nav__title`},pt={class:`settings-content`},mt={class:`settings-content__header`},ht={class:`settings-content__title`},gt={class:`settings-panels`},_t={class:`settings-global-wrap`},vt={"data-tour":`settings-card-general`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},yt={class:`text-subtitle2 q-mb-sm`},bt={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},xt={class:`text-subtitle2 q-mb-sm`},St={class:`text-caption text-grey-7 q-mt-xs`},Ct={"data-tour":`settings-card-skills`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},wt={class:`text-subtitle2 q-mb-sm`},Tt={class:`text-caption text-grey-6 q-mt-xs`},Et={key:0,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Dt={class:`text-subtitle2 q-mb-sm`},Ot={class:`text-caption text-grey-6 q-mb-xs q-mt-sm`},kt={class:`text-caption text-grey-6 q-mt-md q-mb-xs`},At={class:`text-caption text-grey-6 q-mt-md q-mb-xs`},jt={class:`text-caption text-grey-6 q-mt-md q-mb-xs`},Mt={class:`text-caption text-grey-6 q-mt-md q-mb-xs`},Nt={"data-tour":`settings-card-agents`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Pt={class:`text-subtitle2 q-mb-sm`},Ft={class:`text-subtitle2 q-mb-sm q-mt-md`},It={class:`text-subtitle2 q-mb-sm q-mt-md`},Lt={class:`text-caption text-grey-7 q-mb-sm`},Rt={class:`text-subtitle2 q-mb-sm q-mt-md`},zt={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Bt={class:`text-subtitle2 q-mb-sm`},Vt={"data-tour":`settings-card-notifications`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ht={class:`text-subtitle2 q-mb-sm`},Ut={class:`column q-gutter-xs`},Wt={class:`row items-center q-gutter-sm q-mt-sm`},Gt={class:`row items-center q-gutter-sm q-mt-sm`},Kt={class:`text-grey-5 text-caption`,style:{"min-width":`80px`}},qt={class:`text-grey-5 text-caption`,style:{"min-width":`40px`,"text-align":`right`}},Jt={"data-tour":`settings-card-voice`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Yt={class:`row items-center q-mb-sm`},Xt={class:`text-subtitle2`},Zt={class:`column q-gutter-xs`},Qt={class:`row items-center q-gutter-sm`},$t={class:`row items-center q-gutter-sm`},en={class:`q-pa-sm text-caption text-grey-5`},tn={class:`q-mb-sm`},nn={class:`q-mb-sm`},rn={href:`https://github.com/ggml-org/whisper.cpp`,target:`_blank`,rel:`noopener noreferrer`,class:`text-indigo-4`},an={class:`q-mb-xs text-grey-4`},on={class:`q-mb-sm`},sn={class:`q-mb-xs text-grey-4`},cn={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ln={class:`text-subtitle2 q-mb-sm`},un={class:`row q-col-gutter-sm`},dn={class:`col-12 col-sm-6`},fn={class:`col-12 col-sm-6`},pn={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},mn={class:`text-subtitle2 q-mb-sm`},hn={key:0,class:`voice-models-dir row items-center q-gutter-sm q-mb-md`},gn={class:`text-caption text-grey-5 ellipsis-2-lines`,style:{flex:`1`,"min-width":`0`,"word-break":`break-all`}},_n={class:`column q-gutter-sm`},vn={class:`row items-center q-gutter-sm`},yn={class:`text-body2 text-grey-3`,style:{"font-family":`var(--kobo-font-mono, monospace)`}},bn={class:`text-caption text-grey-6`},xn={key:0,class:`q-mt-sm`},Sn={class:`row items-center q-mt-xs`},Cn={class:`text-caption text-grey-6`},wn={class:`text-caption text-indigo-4`},Tn={key:1,class:`text-caption text-grey-7 q-mt-xs ellipsis`,style:{"font-family":`var(--kobo-font-mono, monospace)`,"word-break":`break-all`}},En={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Dn={class:`text-subtitle2 q-mb-sm`},On={class:`q-pa-sm column q-gutter-sm`},kn={class:`row items-center q-gutter-sm`},An={class:`text-caption text-grey-5`},jn={class:`text-caption text-grey-5`,style:{"min-width":`40px`,"text-align":`right`}},Mn={class:`text-caption text-grey-7`},Nn={class:`text-caption text-grey-7`},Pn={class:`text-caption text-grey-7`},Fn={class:`text-caption text-grey-7`},In={class:`q-pa-sm column q-gutter-sm`},Ln={key:1,"data-tour":`settings-card-prompts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Rn={class:`row items-center q-mb-sm`},zn={class:`text-subtitle2`},Bn={class:`text-caption text-grey-7 q-mb-sm`},Vn={class:`q-mb-sm`},Hn={class:`row items-center q-mb-sm q-mt-md`},Un={class:`text-subtitle2`},Wn={class:`text-caption text-grey-7 q-mb-sm`},Gn={class:`row items-center q-mb-sm q-mt-md`},Kn={class:`text-subtitle2`},qn={class:`text-caption text-grey-7 q-mb-sm`},Jn={class:`row items-center q-mb-sm q-mt-md`},Yn={class:`text-subtitle2`},Xn={class:`text-caption text-grey-7 q-mb-sm`},Zn={class:`row items-center q-mb-sm q-mt-md`},Qn={class:`text-subtitle2`},$n={class:`text-caption text-grey-7 q-mb-sm`},er={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},tr={class:`text-subtitle2 q-mb-sm`},nr={class:`text-caption text-grey-7 q-mb-sm`},rr={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ir={class:`text-subtitle2 q-mb-sm`},ar={class:`text-caption text-grey-7 q-mb-sm`},or={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},sr={class:`text-subtitle2 q-mb-sm`},cr={class:`text-caption text-grey-7 q-mb-sm`},lr={"data-tour":`settings-card-notion`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ur={class:`text-subtitle2 q-mb-sm`},dr={class:`text-caption text-grey-7 q-mb-sm`},fr={class:`q-mb-sm`},pr={class:`field-label-sub text-caption q-mb-xs text-grey-7`},mr={class:`q-mb-sm`},hr={class:`field-label-sub text-caption q-mb-xs text-grey-7`},gr={key:2,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},_r={class:`text-subtitle2 q-mb-sm`},vr={class:`text-caption text-grey-7 q-mb-sm`},yr={class:`q-mb-sm`},br={class:`field-label-sub text-caption q-mb-xs text-grey-7`},xr={class:`q-mb-sm`},Sr={class:`field-label-sub text-caption q-mb-xs text-grey-7`},Cr={class:`row items-center q-mb-sm`},wr={class:`text-subtitle2`},Tr={class:`text-caption text-grey-7 q-mb-xs`},Er={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Dr={class:`text-subtitle2 q-mb-sm`},Or={class:`text-caption text-grey-7 q-mb-sm`},kr={class:`q-mb-sm`},Ar={class:`field-label-sub text-caption q-mb-xs text-grey-7`},jr={class:`q-mb-sm`},Mr={class:`row items-center q-mb-xs`},Nr={class:`field-label-sub text-caption text-grey-7 col`},Pr=[`src`,`alt`],Fr={key:1,class:`text-caption text-grey-7 q-py-sm`},Ir={key:0,class:`text-caption text-orange-5 q-mb-xs`},Lr={key:3,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Rr={class:`text-subtitle2 q-mb-sm`},zr={class:`row items-center q-mb-sm`},Br={class:`text-subtitle2`},Vr={class:`text-caption text-grey-7 q-mb-xs`},Hr={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ur={class:`text-subtitle2 q-mb-sm`},Wr={class:`text-caption text-grey-7 q-mb-sm`},Gr={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Kr={class:`text-subtitle2 q-mb-sm`},qr={class:`text-caption text-grey-7 q-mb-sm`},Jr={class:`row items-center no-wrap`},Yr={key:1,class:`text-caption text-grey-7 q-mb-sm`},Xr={class:`row items-center q-gutter-sm`},Zr={"data-tour":`settings-card-scripts`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Qr={class:`text-subtitle2 q-mb-sm`},$r={class:`text-caption text-grey-7 q-mb-sm`},ei={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ti={class:`text-subtitle2 q-mb-sm`},ni={class:`text-caption text-grey-7 q-mb-sm`},ri={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ii={class:`text-subtitle2 q-mb-sm`},ai={class:`text-caption text-grey-7 q-mb-sm`},oi={class:`text-caption text-grey-6 q-mt-md q-mb-xs`},si={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ci={class:`text-subtitle2 q-mb-sm`},li={class:`text-caption text-grey-7 q-mb-sm`},ui={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},di={class:`row items-center justify-between q-mb-sm`},fi={class:`text-subtitle2`},pi={class:`text-caption text-grey-7 q-mb-xs`},mi={class:`text-caption text-grey-6 mono-guide q-mb-sm`},hi={"data-tour":`settings-card-worktrees`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},gi={class:`text-subtitle2 q-mb-sm`},_i={class:`text-caption text-grey-7 q-mb-sm`},vi={class:`text-caption text-grey-7 q-mt-xs`},yi={"data-tour":`settings-card-worktrees-purge`},bi={class:`text-caption text-grey-7 q-mt-xs`},xi={class:`q-pa-sm text-caption text-grey-5`,style:{"line-height":`1.55`}},Si={class:`text-weight-medium text-grey-3 q-mb-xs`},Ci={class:`q-mb-xs`},wi={class:`purge-docs-code`},Ti={class:`text-grey-7 q-mb-md`},Ei={class:`text-weight-medium text-grey-3 q-mb-xs`},Di={class:`q-mb-xs`},Oi={class:`q-pl-md q-my-xs`},ki={class:`purge-docs-code`},Ai={class:`text-grey-7 q-mb-md`},ji={class:`text-weight-medium text-grey-3 q-mb-xs`},Mi={class:`q-mb-xs`},Ni={class:`q-mb-xs text-grey-6`},Pi={class:`purge-docs-code`},Fi={class:`q-mb-xs text-grey-6`},Ii={class:`purge-docs-code`},Li={class:`text-grey-7`},Ri={"data-tour":`settings-card-export`,class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},zi={class:`text-subtitle2 q-mb-sm`},Bi={class:`text-caption text-grey-7 q-mb-sm`},Vi={class:`row q-gutter-sm`},Hi={class:`row justify-end settings-sticky-actions`},Ui={class:`q-pa-none`},Wi={class:`row q-gutter-md`,style:{"min-height":`500px`}},Gi={class:`project-list-col`},Ki={class:`settings-card rounded-borders`,style:{height:`100%`}},qi={class:`q-pa-sm`},Ji={class:`text-caption text-uppercase text-weight-bold q-px-sm q-py-xs text-grey-6`,style:{"letter-spacing":`0.05em`}},Yi={key:0,class:`q-pa-md text-center text-caption text-grey-8`},Xi={class:`q-pa-sm`},Zi={class:`project-form-col`},Qi={class:`settings-card rounded-borders q-pa-lg`,style:{height:`100%`}},$i={class:`row items-center q-mb-md`},ea={class:`text-subtitle1 text-weight-medium text-grey-3`},ta={key:0,class:`q-mb-md`},na={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ra={class:`text-caption text-grey-7 q-mt-xs`},ia={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},aa={class:`text-subtitle2 q-mb-md`},oa={class:`q-mb-md`},sa={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ca={class:`q-mb-md`},la={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ua={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},da={class:`row items-center q-gutter-xs`},fa={class:`text-caption text-grey-6 q-mt-xs`},pa={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ma={class:`text-subtitle2 q-mb-md`},ha={class:`q-mb-md`},ga={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},_a={class:`q-mb-md`},va={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ya={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},ba={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},xa={class:`text-subtitle2 q-mb-md`},Sa={class:`q-mb-md`},Ca={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},wa={class:`text-caption text-grey-7 q-mb-xs`},Ta={class:`q-mb-md`},Ea={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Da={class:`text-caption text-grey-7 q-mb-xs`},Oa={class:`q-mb-md`},ka={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Aa={class:`text-caption text-grey-7 q-mb-xs`},ja={class:`q-mb-md`},Ma={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Na={class:`text-caption text-grey-7 q-mb-xs`},Pa={class:`q-mb-md`},Fa={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ia={class:`text-caption text-grey-7 q-mb-xs`},La={class:`q-mb-md`},Ra={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},za={class:`text-caption text-grey-7 q-mb-xs`},Ba={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Va={class:`text-caption text-grey-7 q-mt-xs`},Ha={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},Ua={class:`text-subtitle2 q-mb-md`},Wa={class:`q-mb-md`},Ga={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Ka={class:`text-caption text-grey-7 q-mb-xs`},qa={class:`text-caption text-grey-7 q-mt-xs`},Ja={class:`q-mb-md`},Ya={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},Xa={class:`text-caption text-grey-7 q-mb-xs`},Za={class:`field-label-sub text-caption q-mt-sm q-mb-xs text-grey-7`},Qa={class:`field-label text-body2 text-weight-medium q-mb-xs text-grey-6`},$a={class:`text-caption text-grey-7 q-mb-xs`},eo={class:`row items-center justify-between q-mb-xs`},to={class:`field-label text-body2 text-weight-medium text-grey-6`},no={class:`text-caption text-grey-7 q-mb-xs`},ro={class:`text-caption text-grey-6 mono-guide q-mb-sm`},io={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},ao={class:`text-subtitle2 q-mb-md`},oo={class:`q-mb-md`},so={class:`field-label-sub text-caption q-mb-xs text-grey-7`},co={class:`field-label-sub text-caption q-mb-xs text-grey-7`},lo={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},uo={class:`text-subtitle2 q-mb-xs`},fo={class:`text-caption text-grey-7 q-mb-sm`},po={class:`settings-subcard q-pa-md rounded-borders q-pb-sm q-mb-md`},mo={class:`text-subtitle2 q-mb-xs`},ho={class:`text-caption text-grey-7 q-mb-sm`},go={class:`row items-center q-gutter-sm settings-sticky-actions`},_o={key:1,class:`column items-center justify-center`,style:{height:`100%`,"min-height":`300px`}},vo={class:`text-body2 text-grey-8`},yo={class:`q-pa-none`},bo={"data-tour":`settings-card-templates`,class:`settings-card rounded-borders q-pa-lg`},xo={class:`row items-center justify-between q-mb-md`},So={class:`text-subtitle1 text-weight-medium text-grey-3`},Co={class:`row q-gutter-sm items-center`},wo={key:0,class:`text-grey-6 q-py-lg text-center`},To={key:1,class:`column q-gutter-sm`},Eo={class:`row items-start justify-between no-wrap`},Do={class:`col`},Oo={class:`text-body1 text-weight-medium`,style:{"font-family":`'Roboto Mono', monospace`}},ko={class:`text-caption text-grey-5 q-mt-xs`},Ao={class:`row no-wrap q-gutter-xs`},jo={class:`text-caption text-grey-7 q-mt-lg`,style:{"font-family":`'Roboto Mono', monospace`}},Mo={key:0,class:`settings-savebar`},No={class:`settings-savebar__label`},Po={class:`text-subtitle1`},Fo={class:`q-pl-md q-pt-xs`,style:{"font-size":`11px`,"font-family":`'Roboto Mono', monospace`,columns:`2`,"column-gap":`24px`}},Io={key:0,class:`text-negative text-caption`},Lo=Ie(c({__name:`SettingsPage`,setup(n){let o=Be(),c=be(),l=Ae(),{t:x,locale:ae}=we(),{startTour:oe}=qe(),T=e(`general`),se=C(()=>[{value:`general`,icon:`tune`,label:x(`settings.nav.general`)},{value:`agents`,icon:`smart_toy`,label:x(`settings.nav.agents`)},{value:`skills`,icon:`extension`,label:x(`settings.nav.skills`)},{value:`prompts`,icon:`text_snippet`,label:x(`settings.nav.prompts`)},{value:`scripts`,icon:`terminal`,label:x(`settings.nav.scripts`)},{value:`notion`,icon:`integration_instructions`,label:x(`settings.nav.notion`)},{value:`sentry`,icon:`bug_report`,label:x(`settings.nav.sentry`)},{value:`voice`,icon:`mic`,label:x(`settings.nav.voice`)},{value:`notifications`,icon:`notifications`,label:x(`settings.nav.notifications`)},{value:`worktrees`,icon:`account_tree`,label:x(`settings.nav.worktrees`)},{value:`projects`,icon:`folder`,label:x(`settings.projects`)},{value:`templates`,icon:`description`,label:x(`templates.title`)},{value:`export`,icon:`import_export`,label:x(`settings.nav.export`)}]),ce=C(()=>se.value.find(e=>e.value===T.value)?.label??``),le=C(()=>[`general`,`agents`,`skills`,`prompts`,`scripts`,`notion`,`sentry`,`voice`,`notifications`,`worktrees`,`export`].includes(T.value)),ue=e(`auto`),de=e(`auto`),pe=e(``),D=e(``),O=e(``),Te=e(``),A=e(``),Ee=e(``),I=e(``),Fe=e(``),Ie=e(!1),Re=e(!0),B=e(!0),Qe=e(ge),V=e(1),$e=e(``),et=e(``),tt=e(``),H=e(``),nt=e([]),rt=e(!1),U=e(``),ot=C(()=>nt.value.map(e=>({label:`${e.name} — ${e.email}`,value:e.id,name:e.name,email:e.email,avatarUrl:e.avatarUrl})));async function st(e=!1){if(!rt.value&&!(!e&&nt.value.length>0)){rt.value=!0,U.value=``;try{let e=await fetch(`/api/notion/users`),t=await e.json().catch(()=>({}));if(!e.ok)throw Error(t.error??`HTTP ${e.status}`);nt.value=Array.isArray(t.users)?t.users:[]}catch(e){U.value=e instanceof Error?e.message:String(e),nt.value=[]}finally{rt.value=!1}}}let ct=e(``),Lo=e(``),W=e(null),Ro=e(`bypass`),zo=e(`bypass`),Bo=e(``),Vo=e(``),Ho=e([]),G=e([]),Uo=e(``),Wo=e(``),Go=e(``),Ko=e(`no-tasks`),qo=e(!1),Jo=e(``),Yo=e(``),Xo=e(``),Zo=e(!1);function Qo(e){X.value.path=e}let $o=C(()=>[{label:x(`settings.cleanupScriptMode.inherit`),value:``},{label:x(`settings.cleanupScriptMode.idle`),value:`idle`},{label:x(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}]),es=e(he),ts=e(null),ns=e(!0);function rs(e){let t=e.trim().replace(/^\/+|\/+$/g,``);return t.length===0||t.length>50||!/^[A-Za-z0-9._/-]+$/.test(t)||t.includes(`..`)?``:t}function is(){let e=rs(Uo.value);!e||G.value.includes(e)||(G.value.push(e),Uo.value=``)}function as(e){G.value.splice(e,1)}function os(e,t){let n=rs(t);if(!n)return;let r=G.value.indexOf(n);r!==-1&&r!==e||(G.value[e]=n)}function ss(e,t){let n=e+t;if(n<0||n>=G.value.length)return;let r=G.value;[r[e],r[n]]=[r[n],r[e]]}let cs=e(!1),K=e(`superpowers`),ls=C(()=>{switch(K.value){case`gstack`:return`settings.skillSuite.gstackHint`;case`superpowers+gstack`:return`settings.skillSuite.superpowersGstackHint`;case`custom`:return`settings.skillSuite.customHint`;default:return`settings.skillSuite.superpowersHint`}}),us=e(``),ds=e(``),fs=e(``),ps=e(``),ms=e(``),hs=e(!1),gs=e(`alt`),_s=e(`auto`),q=e(null),vs=e(``),ys=e(``),bs=e(0),xs=e(``),Ss=e(!1),Cs=e(!0),ws=e(null),Ts=e(!1);function Es(){o.dialog({title:x(`settings.skillSuite.reloadDefaults`),message:x(`settings.skillSuite.reloadDefaultsConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{us.value=We,ds.value=Ge,fs.value=Ue,ps.value=Ve,ms.value=He})}function Ds(e){let t=e===`global`?Yo.value:X.value.changeSourceBranchScript,n=()=>{e===`global`?Yo.value=Xo.value:X.value.changeSourceBranchScript=Xo.value};if(!t.trim()||t===Xo.value){n();return}o.dialog({title:x(`settings.changeSourceBranchScript.replaceConfirmTitle`),message:x(`settings.changeSourceBranchScript.replaceConfirm`),cancel:!0,persistent:!0,dark:!0}).onOk(n)}function Os(e){return!e||e===`tiny`||e===`base`?.1:.2}let ks=[e=>e.trim().length>0||x(`settings.worktreesPathRequired`)],As=e(!1),J=e(-1),Y=e(!1),X=e({path:``,displayName:``,color:null,defaultSourceBranch:``,defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,ciFixPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}}),js=[`defaultModel`,`forge`,`prPromptTemplate`,`reviewPromptTemplate`,`ciFixPromptTemplate`,`notionInitialPromptTemplate`,`sentryInitialPromptTemplate`,`gitConventions`,`setupScript`,`taskPromptTemplate`,`cleanupScript`,`cleanupScriptMode`,`archiveScript`,`changeSourceBranchScript`,`devServer`,`e2e`,`finalization`],Ms=e(null),Ns=e(null),Ps=C(()=>c.projects.map(e=>({value:e.path,label:Zc(e)||e.path})));function Fs(e){let t=c.projects.find(t=>t.path===e);t&&(X.value.defaultModel=t.defaultModel??``,X.value.forge=t.forge??`auto`,X.value.prPromptTemplate=t.prPromptTemplate??``,X.value.reviewPromptTemplate=t.reviewPromptTemplate??``,X.value.ciFixPromptTemplate=t.ciFixPromptTemplate??``,X.value.notionInitialPromptTemplate=t.notionInitialPromptTemplate??``,X.value.sentryInitialPromptTemplate=t.sentryInitialPromptTemplate??``,X.value.gitConventions=t.gitConventions??``,X.value.setupScript=t.setupScript??``,X.value.devServer={startCommand:t.devServer?.startCommand??``,stopCommand:t.devServer?.stopCommand??``},X.value.e2e={framework:t.e2e?.framework??``,skill:t.e2e?.skill??``,prompt:t.e2e?.prompt??``},X.value.finalization={prompt:t.finalization?.prompt??``})}function Is(){let e={defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}};return js.every(t=>JSON.stringify(X.value[t])===JSON.stringify(e[t]))}function Ls(e){if(e===null){Ms.value=null,Ns.value=null;return}if(Ns.value===null&&Is()){Fs(e),Ms.value=e,Ns.value=e;return}let t=c.projects.find(t=>t.path===e),n=t&&Zc(t)||e;o.dialog({title:x(`settings.copyFromConfirmTitle`),message:x(`settings.copyFromConfirm`,{project:n}),cancel:!0,persistent:!0,dark:!0}).onOk(()=>{Fs(e),Ms.value=e,Ns.value=e}).onCancel(()=>{Ms.value=Ns.value})}let Rs=e([]),zs=e([]);async function Bs(){try{let e=await fetch(`/api/skills`);e.ok&&(Rs.value=await e.json())}catch{}}function Vs(e,t){t(()=>{let t=e.trim().toLowerCase();zs.value=t?Rs.value.filter(e=>e.toLowerCase().includes(t)):Rs.value.slice()})}let Hs=e([]),Us=e(!1),Ws=e(!1),Gs=e(!1),Ks=e(!1),Z=e(null),qs=e(``),Js=e(``),Ys=e(``),Q=e(``),Xs=e(!1),Zs=e(!1),Qs=C(()=>[...l.templates].sort((e,t)=>e.slug.localeCompare(t.slug))),$s=[`{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 ec(){Z.value=null,qs.value=``,Js.value=``,Ys.value=``,Q.value=``,Ks.value=!0}function tc(e){Z.value=e.slug,qs.value=e.slug,Js.value=e.description,Ys.value=e.content,Q.value=``,Ks.value=!0}async function nc(){Q.value=``;let e=qs.value.trim(),t=Js.value.trim();if(Z.value===null&&!/^[a-z0-9][a-z0-9-]{0,63}$/.test(e)){Q.value=x(`templates.slugInvalid`);return}if(!t){Q.value=x(`templates.descriptionRequired`);return}if(!Ys.value.trim()){Q.value=x(`templates.contentRequired`);return}Xs.value=!0;try{Z.value===null?await l.createTemplate({slug:e,description:t,content:Ys.value}):await l.updateTemplate(Z.value,{description:t,content:Ys.value}),Ks.value=!1}catch(e){Q.value=e instanceof Error?e.message:x(`templates.createFailed`)}finally{Xs.value=!1}}function rc(){o.dialog({title:x(`templates.reloadDefaults`),message:x(`templates.reloadDefaultsConfirmMessage`),dark:!0,cancel:{flat:!0,label:x(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:x(`templates.reloadDefaults`),color:`primary`}}).onOk(async()=>{Zs.value=!0;try{let e=await l.reloadDefaults();o.notify({type:`positive`,message:x(`templates.reloadDefaultsSuccess`,{added:e.added.length,kept:e.kept.length}),position:`top`,timeout:4e3})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:x(`templates.reloadDefaultsFailed`),position:`top`})}finally{Zs.value=!1}})}async function ic(e){o.dialog({title:x(`templates.deleteTemplate`),message:`${x(`templates.deleteConfirm`,{slug:e.slug})}\n\n${x(`templates.deleteConfirmMessage`)}`,dark:!0,cancel:{flat:!0,label:x(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:x(`templates.deleteTemplate`),color:`red-5`}}).onOk(async()=>{try{await l.deleteTemplate(e.slug)}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:x(`templates.deleteFailed`),position:`top`})}})}function ac(e){o.dialog({title:x(`templates.resetConfirmTitle`),message:x(`templates.resetConfirmMessage`,{slug:e.slug}),dark:!0,cancel:{flat:!0,label:x(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:x(`templates.resetToDefault`),color:`primary`}}).onOk(async()=>{try{await l.resetToDefault(e.slug),o.notify({type:`positive`,message:x(`templates.resetSuccess`,{slug:e.slug}),position:`top`})}catch(e){o.notify({type:`negative`,message:e instanceof Error?e.message:x(`templates.resetFailed`),position:`top`})}})}let oc=[{label:`English`,value:`en`},{label:`Français`,value:`fr`},{label:`Deutsch`,value:`de`},{label:`Español`,value:`es`},{label:`Italiano`,value:`it`}];function sc(e){ae.value=e,localStorage.setItem(`kobo:locale`,e)}let cc=C(()=>[...Xe.map(e=>({label:x(e.i18nLabelKey),value:e.value}))]),lc=C(()=>[...Ye.map(e=>({label:x(e.i18nLabelKey),value:e.value}))]),uc=C(()=>[{label:x(`settings.useGlobal`),value:``},...cc.value]),dc=C(()=>[{label:x(`settings.forge.auto`),value:`auto`},{label:x(`settings.forge.github`),value:`github`},{label:x(`settings.forge.gitlab`),value:`gitlab`},{label:x(`settings.forge.none`),value:`none`}]),fc=C(()=>Ze[`claude-code`].map(e=>({label:x(`agentPermissionMode.${e}`),value:e}))),pc=C(()=>Ze.codex.map(e=>({label:x(`agentPermissionMode.${e}`),value:e}))),mc=C(()=>[{name:`{{pr_number}}`,description:x(`settings.var.prNumber`)},{name:`{{pr_url}}`,description:x(`settings.var.prUrl`)},{name:`{{branch_name}}`,description:x(`settings.var.branchName`)},{name:`{{source_branch}}`,description:x(`settings.var.sourceBranch`)},{name:`{{workspace_name}}`,description:x(`settings.var.workspaceName`)},{name:`{{project_name}}`,description:x(`settings.var.projectName`)},{name:`{{notion_url}}`,description:x(`settings.var.notionUrl`)},{name:`{{commits}}`,description:x(`settings.var.commits`)},{name:`{{diff_stats}}`,description:x(`settings.var.diffStats`)},{name:`{{tasks}}`,description:x(`settings.var.tasks`)},{name:`{{acceptance_criteria}}`,description:x(`settings.var.acceptanceCriteria`)}]),hc=C(()=>[{label:x(`settings.mcpAutoSelect`),value:``},...c.activeMcpServers.map(e=>({label:e.key,value:e.key}))]),gc=C(()=>me.map(e=>({label:x(e.labelKey),value:e.id}))),_c=C(()=>[{label:x(`voice.noneModel`),value:null}].concat(c.voiceModels.map(e=>({label:e.installed?`${e.name}`:`${e.name} (${x(`voice.notInstalled`)})`,value:e.name})))),vc=[{label:`auto`,value:`auto`},{label:`ar`,value:`ar`},{label:`de`,value:`de`},{label:`en`,value:`en`},{label:`es`,value:`es`},{label:`fr`,value:`fr`},{label:`hi`,value:`hi`},{label:`it`,value:`it`},{label:`ja`,value:`ja`},{label:`ko`,value:`ko`},{label:`nl`,value:`nl`},{label:`pl`,value:`pl`},{label:`pt`,value:`pt`},{label:`ru`,value:`ru`},{label:`tr`,value:`tr`},{label:`uk`,value:`uk`},{label:`vi`,value:`vi`},{label:`zh`,value:`zh`}];function yc(){ve(Qe.value,V.value)}let $=C(()=>J.value<0||J.value>=c.projects.length?null:c.projects[J.value]??null),bc=e(``),xc=e(``);function Sc(){return JSON.stringify({claudeModel:ue.value,codexModel:de.value,prPrompt:pe.value,reviewPrompt:D.value,ciFixPrompt:O.value,finalizationPrompt:Te.value,gitConventions:A.value,editorCommand:Ee.value,fileManagerCommand:I.value,terminalCommand:Fe.value,autoPurgeOnPrMerged:Ie.value,browserNotifications:Re.value,audioNotifications:B.value,audioNotificationSound:Qe.value,audioNotificationVolume:V.value,notionStatusProperty:$e.value,notionStatus:et.value,notionAssigneeProperty:tt.value,notionUserId:H.value,notionInitialPrompt:ct.value,sentryInitialPrompt:Lo.value,claudePermissionMode:Ro.value,codexPermissionMode:zo.value,notionMcpKey:Bo.value,sentryMcpKey:Vo.value,tags:Ho.value,branchPrefixes:G.value,setupScript:Wo.value,cleanupScript:Go.value,cleanupScriptMode:Ko.value,cleanupScriptOnlyOnChanges:qo.value,archiveScript:Jo.value,changeSourceBranchScript:Yo.value,worktreesPath:es.value,worktreesPrefixByProject:ns.value,flattenWorkspaceList:cs.value,skillSuite:K.value,customReviewTemplate:us.value,customAutoLoopReviewGate:ds.value,customAutoLoopGroomingIntro:fs.value,customQaPromptTemplate:ps.value,customBrainstormingInstruction:ms.value,voiceEnabled:hs.value,voicePttKey:gs.value,voiceLanguage:_s.value,voiceModel:q.value,voiceCommandPath:vs.value,voiceFfmpegPath:ys.value,voiceTemperature:bs.value,voicePrompt:xs.value,voiceTranslateToEnglish:Ss.value,voiceSuppressNst:Cs.value})}function Cc(){return JSON.stringify(X.value)}let wc=C(()=>Sc()!==bc.value),Tc=C(()=>Cc()!==xc.value),Ec=C(()=>T.value===`projects`?Tc.value&&($.value!==null||Y.value):T.value===`templates`?!1:wc.value),Dc=C(()=>T.value===`projects`?Ws.value:Xs.value);function Oc(){T.value===`projects`?qc():Rc()}function kc(){Ts.value=!0;let e=c.global.defaultModelByEngine??{};ue.value=e[`claude-code`]??`auto`,de.value=e.codex??`auto`,pe.value=c.global.prPromptTemplate,D.value=c.global.reviewPromptTemplate??``,O.value=c.global.ciFixPromptTemplate??``,Te.value=c.global.finalizationPrompt??``,A.value=c.global.gitConventions,Ee.value=c.global.editorCommand??``,I.value=c.global.fileManagerCommand??``,Fe.value=c.global.terminalCommand??``,Ie.value=c.global.autoPurgeOnPrMerged??!1,Re.value=c.global.browserNotifications??!0,B.value=c.global.audioNotifications??!0,Qe.value=ye(c.global.audioNotificationSound);let t=c.global.audioNotificationVolume;V.value=typeof t==`number`&&Number.isFinite(t)?Math.max(0,Math.min(1,t)):1,$e.value=c.global.notionStatusProperty??``,et.value=c.global.notionInProgressStatus??``,tt.value=c.global.notionAssigneeProperty??``,H.value=c.global.notionUserId??``,ct.value=c.global.notionInitialPromptTemplate??``,Lo.value=c.global.sentryInitialPromptTemplate??``;{let e=c.global.defaultPermissionModeByEngine??{},t=e=>e===`plan`||e===`bypass`||e===`strict`||e===`interactive`,n=e[`claude-code`];Ro.value=t(n)?n:`bypass`;let r=e.codex;zo.value=t(r)?r:`bypass`}Bo.value=c.global.notionMcpKey??``,Vo.value=c.global.sentryMcpKey??``,Ho.value=Array.isArray(c.global.tags)?[...c.global.tags]:[],G.value=Array.isArray(c.global.branchPrefixes)?[...c.global.branchPrefixes]:[],Wo.value=c.global.setupScript??``,Go.value=c.global.cleanupScript??``,Ko.value=c.global.cleanupScriptMode===`idle`?`idle`:`no-tasks`,qo.value=c.global.cleanupScriptOnlyOnChanges??!1,Jo.value=c.global.archiveScript??``,Yo.value=c.global.changeSourceBranchScript??``,es.value=c.global.worktreesPath??`.worktrees`,ns.value=c.global.worktreesPrefixByProject??!1,cs.value=c.global.flattenWorkspaceList??!1,K.value=c.global.skillSuite??`superpowers`,us.value=c.global.customReviewTemplate??``,ds.value=c.global.customAutoLoopReviewGate??``,fs.value=c.global.customAutoLoopGroomingIntro??``,ps.value=c.global.customQaPromptTemplate??``,ms.value=c.global.customBrainstormingInstruction??``,hs.value=c.global.voiceEnabled??!1,gs.value=c.global.voicePttKey===`ctrl+space`?`ctrl+space`:`alt`,_s.value=c.global.voiceLanguage??`auto`,q.value=c.global.voiceModel??null,vs.value=c.global.voiceCommandPath??``,ys.value=c.global.voiceFfmpegPath??``,bs.value=typeof c.global.voiceTemperature==`number`?c.global.voiceTemperature:0,xs.value=c.global.voicePrompt??``,Ss.value=c.global.voiceTranslateToEnglish??!1,Cs.value=c.global.voiceSuppressNonSpeechTokens??!0,Ts.value=!1,bc.value=Sc()}u(()=>q.value,(e,t)=>{Ts.value||e!==t&&(bs.value=Os(e))});function Ac(e){if(!e){X.value={path:``,displayName:``,color:null,defaultSourceBranch:``,defaultModel:``,forge:`auto`,prPromptTemplate:``,reviewPromptTemplate:``,ciFixPromptTemplate:``,notionInitialPromptTemplate:``,sentryInitialPromptTemplate:``,gitConventions:``,setupScript:``,taskPromptTemplate:``,cleanupScript:``,cleanupScriptMode:``,archiveScript:``,changeSourceBranchScript:``,devServer:{startCommand:``,stopCommand:``},e2e:{framework:``,skill:``,prompt:``},finalization:{prompt:``}},Hs.value=[],xc.value=Cc();return}X.value={path:e.path,displayName:e.displayName,color:e.color??null,defaultSourceBranch:e.defaultSourceBranch,defaultModel:e.defaultModel,forge:e.forge??`auto`,prPromptTemplate:e.prPromptTemplate,reviewPromptTemplate:e.reviewPromptTemplate??``,ciFixPromptTemplate:e.ciFixPromptTemplate??``,notionInitialPromptTemplate:e.notionInitialPromptTemplate??``,sentryInitialPromptTemplate:e.sentryInitialPromptTemplate??``,gitConventions:e.gitConventions??``,setupScript:e.setupScript??``,taskPromptTemplate:e.taskPromptTemplate??``,cleanupScript:e.cleanupScript??``,cleanupScriptMode:e.cleanupScriptMode??``,archiveScript:e.archiveScript??``,changeSourceBranchScript:e.changeSourceBranchScript??``,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??``}},xc.value=Cc(),e.path&&jc(e.path)}async function jc(e){if(!e.trim()){Hs.value=[];return}Us.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();Hs.value=n.local??n.branches??[]}catch{Hs.value=[]}finally{Us.value=!1}}let Mc=null;u(()=>X.value.path,e=>{Mc&&clearTimeout(Mc),Mc=setTimeout(()=>{jc(e)},500)}),u(J,()=>{Y.value=!1,Ac($.value)});let Nc=e(null);async function Pc(){try{let e=await fetch(`/api/settings/export`);if(!e.ok)throw Error(`HTTP ${e.status}`);let t=await e.json(),n=new Blob([JSON.stringify(t,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`kobo-config-${new Date().toISOString().replace(/[:.]/g,`-`)}.json`,i.click(),URL.revokeObjectURL(r),o.notify({type:`positive`,message:x(`settings.exportSuccess`),position:`top`,timeout:3e3})}catch(e){o.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}}function Fc(){Nc.value?.click()}async function Ic(e){let t=e.target,n=t.files?.[0];if(n)try{o.dialog({title:x(`settings.importConfirmTitle`),message:x(`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 c.fetchSettings(),kc(),o.notify({type:`positive`,message:x(`settings.importSuccess`),position:`top`,timeout:3e3})}catch(e){o.notify({type:`negative`,message:String(e),position:`top`,timeout:5e3})}})}finally{t.value=``}}async function Lc(e){if(W.value===null){W.value=e;try{let t=await c.fetchGlobalDefaults(),n={prPromptTemplate:pe,reviewPromptTemplate:D,ciFixPromptTemplate:O,finalizationPrompt:Te,gitConventions:A,notionInitialPromptTemplate:ct,sentryInitialPromptTemplate:Lo};n[e].value=t[e]}catch(e){console.error(`[SettingsPage] resetFieldToDefault failed:`,e),o.notify({type:`negative`,message:x(`settings.resetFailed`),position:`top`})}finally{W.value=null}}}async function Rc(){if(await ts.value?.validate()!==!1){As.value=!0;try{await c.updateGlobal({defaultModelByEngine:{"claude-code":ue.value,codex:de.value},prPromptTemplate:pe.value,reviewPromptTemplate:D.value,ciFixPromptTemplate:O.value,finalizationPrompt:Te.value,gitConventions:A.value,editorCommand:Ee.value,fileManagerCommand:I.value,terminalCommand:Fe.value,autoPurgeOnPrMerged:Ie.value,browserNotifications:Re.value,audioNotifications:B.value,audioNotificationSound:Qe.value,audioNotificationVolume:V.value,notionStatusProperty:$e.value,notionInProgressStatus:et.value,notionAssigneeProperty:tt.value,notionUserId:H.value,notionInitialPromptTemplate:ct.value,sentryInitialPromptTemplate:Lo.value,defaultPermissionModeByEngine:{"claude-code":Ro.value,codex:zo.value},notionMcpKey:Bo.value,sentryMcpKey:Vo.value,tags:Ho.value,branchPrefixes:G.value,setupScript:Wo.value,cleanupScript:Go.value,cleanupScriptMode:Ko.value,cleanupScriptOnlyOnChanges:qo.value,archiveScript:Jo.value,changeSourceBranchScript:Yo.value,worktreesPath:es.value,worktreesPrefixByProject:ns.value,flattenWorkspaceList:cs.value,skillSuite:K.value,customReviewTemplate:us.value,customAutoLoopReviewGate:ds.value,customAutoLoopGroomingIntro:fs.value,customQaPromptTemplate:ps.value,customBrainstormingInstruction:ms.value,voiceEnabled:hs.value,voicePttKey:gs.value,voiceLanguage:_s.value,voiceModel:q.value,voiceCommandPath:vs.value.trim(),voiceFfmpegPath:ys.value.trim(),voiceTemperature:bs.value,voicePrompt:xs.value,voiceTranslateToEnglish:Ss.value,voiceSuppressNonSpeechTokens:Cs.value}),bc.value=Sc(),o.notify({type:`positive`,message:x(`settings.saved`),position:`top`})}catch{o.notify({type:`negative`,message:x(`settings.saveError`),position:`top`})}finally{As.value=!1}}}async function zc(e){ws.value=e,Wc();try{await c.downloadVoiceModel(e)}catch{o.notify({type:`negative`,message:x(`voice.downloadFailed`),position:`top`})}finally{ws.value=null,Gc()}}async function Bc(e){ws.value=e;try{await c.deleteVoiceModel(e),q.value===e&&(q.value=null)}catch{o.notify({type:`negative`,message:x(`voice.deleteFailed`),position:`top`})}finally{ws.value=null}}async function Vc(e){try{await c.cancelVoiceModelDownload(e)}catch{o.notify({type:`negative`,message:x(`voice.cancelFailed`),position:`top`})}}function Hc(e){if(e==null||!Number.isFinite(e)||e<0)return`—`;if(e<1024)return`${e} B`;let t=[`KB`,`MB`,`GB`,`TB`],n=e/1024,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r++;return`${n<10?n.toFixed(1):Math.round(n)} ${t[r]}`}let Uc=null;function Wc(){Uc||=setInterval(()=>{c.fetchVoiceModels().catch(()=>{})},800)}function Gc(){Uc&&=(clearInterval(Uc),null)}async function Kc(e){try{await navigator.clipboard.writeText(e),o.notify({type:`positive`,message:x(`common.copied`),position:`top`,timeout:1200})}catch{o.notify({type:`negative`,message:x(`common.copyFailed`),position:`top`})}}async function qc(){if(!X.value.path.trim()){o.notify({type:`negative`,message:x(`settings.projectPathRequired`),position:`top`});return}Ws.value=!0;try{await c.upsertProject(X.value.path.trim(),{displayName:X.value.displayName,color:X.value.color,defaultSourceBranch:X.value.defaultSourceBranch,defaultModel:X.value.defaultModel,forge:X.value.forge,prPromptTemplate:X.value.prPromptTemplate,reviewPromptTemplate:X.value.reviewPromptTemplate,ciFixPromptTemplate:X.value.ciFixPromptTemplate,notionInitialPromptTemplate:X.value.notionInitialPromptTemplate,sentryInitialPromptTemplate:X.value.sentryInitialPromptTemplate,gitConventions:X.value.gitConventions,setupScript:X.value.setupScript,taskPromptTemplate:X.value.taskPromptTemplate,cleanupScript:X.value.cleanupScript,cleanupScriptMode:X.value.cleanupScriptMode,archiveScript:X.value.archiveScript,changeSourceBranchScript:X.value.changeSourceBranchScript,devServer:X.value.devServer,e2e:X.value.e2e,finalization:X.value.finalization}),Y.value=!1;let e=c.projects.findIndex(e=>e.path===X.value.path.trim());e>=0&&(J.value=e),xc.value=Cc(),o.notify({type:`positive`,message:x(`settings.projectSaved`),position:`top`})}catch{o.notify({type:`negative`,message:x(`settings.projectSaveError`),position:`top`})}finally{Ws.value=!1}}function Jc(){if(!$.value)return;let e=$.value.displayName||$.value.path;o.dialog({title:x(`settings.deleteProjectConfirmTitle`),message:x(`settings.deleteProjectConfirmMessage`,{name:e}),dark:!0,cancel:{flat:!0,label:x(`common.cancel`),color:`grey-5`},ok:{flat:!0,label:x(`common.delete`),color:`red-5`}}).onOk(async()=>{if($.value){Gs.value=!0;try{await c.deleteProject($.value.path),J.value=-1,Y.value=!1,Ac(null),o.notify({type:`positive`,message:x(`settings.projectDeleted`),position:`top`})}catch{o.notify({type:`negative`,message:x(`settings.projectDeleteError`),position:`top`})}finally{Gs.value=!1}}})}function Yc(){J.value=-1,Y.value=!0,Ac(null),Ms.value=null,Ns.value=null}function Xc(e){Y.value=!1,J.value=e,Ms.value=null,Ns.value=null}function Zc(e){if(e.displayName)return e.displayName;let t=e.path.split(`/`);return t[t.length-1]??e.path}let Qc=e([]);function $c(e,t){t(()=>{Qc.value=e?Hs.value.filter(t=>t.toLowerCase().includes(e.toLowerCase())):Hs.value})}return r(async()=>{await Promise.all([c.fetchSettings(),c.fetchActiveMcpServers(),Bs()]);try{Xo.value=(await c.fetchGlobalDefaults()).changeSourceBranchScript??``}catch(e){console.error(`[SettingsPage] fetchGlobalDefaults failed:`,e)}await c.fetchVoiceModels(),await c.fetchVoiceRuntime(),kc(),st().catch(()=>{})}),a(()=>{Mc&&clearTimeout(Mc),Gc()}),(e,n)=>(s(),y(Je,{class:`settings-page`},{default:d(()=>[S(`div`,ut,[S(`aside`,dt,[S(`div`,ft,_(e.$t(`settings.title`)),1),h(R,{dense:``,class:`settings-nav__list`},{default:d(()=>[(s(!0),f(g,null,t(se.value,e=>i((s(),y(N,{key:e.value,clickable:``,"data-tour":`settings-nav-${e.value}`,class:m([`settings-nav__item`,{"settings-nav__item--active":T.value===e.value}]),onClick:t=>T.value=e.value},{default:d(()=>[h(P,{avatar:``,class:`settings-nav__icon`},{default:d(()=>[h(E,{name:e.icon,size:`16px`},null,8,[`name`])]),_:2},1024),h(P,{class:`settings-nav__label`},{default:d(()=>[w(_(e.label),1)]),_:2},1024)]),_:2},1032,[`data-tour`,`class`,`onClick`])),[[Ce,!1]])),128))]),_:1})]),S(`main`,pt,[S(`header`,mt,[S(`h2`,ht,_(ce.value),1)]),S(`div`,gt,[i(S(`div`,_t,[i(S(`div`,vt,[S(`div`,yt,_(e.$t(`settings.language`)),1),h(z,{"model-value":b(ae),options:oc,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`,"onUpdate:modelValue":sc},null,8,[`model-value`])],512),[[p,T.value===`general`]]),i(S(`div`,bt,[S(`div`,xt,_(e.$t(`settings.workspaceListSection`)),1),h(M,{modelValue:cs.value,"onUpdate:modelValue":n[0]||=e=>cs.value=e,label:e.$t(`settings.flattenWorkspaceList`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),S(`div`,St,_(e.$t(`settings.flattenWorkspaceListHint`)),1)],512),[[p,T.value===`general`]]),i(S(`div`,Ct,[S(`div`,wt,_(e.$t(`settings.skillSuite.section`)),1),h(je,{modelValue:K.value,"onUpdate:modelValue":n[1]||=e=>K.value=e,options:[{label:e.$t(`settings.skillSuite.superpowers`),value:`superpowers`},{label:e.$t(`settings.skillSuite.gstack`),value:`gstack`},{label:e.$t(`settings.skillSuite.superpowersGstack`),value:`superpowers+gstack`},{label:e.$t(`settings.skillSuite.custom`),value:`custom`}],type:`radio`,color:`indigo-4`,dense:``,dark:``,inline:``},null,8,[`modelValue`,`options`]),S(`div`,Tt,_(e.$t(ls.value)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:e.$t(`settings.skillSuite.reloadDefaults`),disable:K.value!==`custom`,class:`q-mt-sm`,onClick:Es},null,8,[`label`,`disable`])],512),[[p,T.value===`skills`]]),T.value===`skills`&&K.value===`custom`?(s(),f(`div`,Et,[S(`div`,Dt,_(e.$t(`settings.skillSuite.customPrompts`)),1),S(`div`,Ot,_(e.$t(`settings.skillSuite.reviewTemplate`)),1),h(j,{modelValue:us.value,"onUpdate:modelValue":n[2]||=e=>us.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),S(`div`,kt,_(e.$t(`settings.skillSuite.autoLoopReviewGate`)),1),h(j,{modelValue:ds.value,"onUpdate:modelValue":n[3]||=e=>ds.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),S(`div`,At,_(e.$t(`settings.skillSuite.autoLoopGroomingIntro`)),1),h(j,{modelValue:fs.value,"onUpdate:modelValue":n[4]||=e=>fs.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),S(`div`,jt,_(e.$t(`settings.skillSuite.qaTemplate`)),1),h(j,{modelValue:ps.value,"onUpdate:modelValue":n[5]||=e=>ps.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`]),S(`div`,Mt,_(e.$t(`settings.skillSuite.brainstormingInstruction`)),1),h(j,{modelValue:ms.value,"onUpdate:modelValue":n[6]||=e=>ms.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),i(S(`div`,Nt,[S(`div`,Pt,_(e.$t(`settings.defaultModelClaude`)),1),h(z,{modelValue:ue.value,"onUpdate:modelValue":n[7]||=e=>ue.value=e,options:cc.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),S(`div`,Ft,_(e.$t(`settings.defaultModelCodex`)),1),h(z,{modelValue:de.value,"onUpdate:modelValue":n[8]||=e=>de.value=e,options:lc.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),S(`div`,It,_(e.$t(`settings.defaultPermissionModeClaude`)),1),S(`div`,Lt,_(e.$t(`settings.defaultPermissionModeHint`)),1),h(z,{modelValue:Ro.value,"onUpdate:modelValue":n[9]||=e=>Ro.value=e,options:fc.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`options`]),S(`div`,Rt,_(e.$t(`settings.defaultPermissionModeCodex`)),1),h(z,{modelValue:zo.value,"onUpdate:modelValue":n[10]||=e=>zo.value=e,options:pc.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])],512),[[p,T.value===`agents`]]),i(S(`div`,zt,[S(`div`,Bt,_(e.$t(`settings.activityFeed`)),1),h(M,{"model-value":b(c).showVerboseSystemMessages,label:e.$t(`settings.verboseMessages`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`,"onUpdate:modelValue":n[11]||=e=>b(c).toggleVerboseSystemMessages()},null,8,[`model-value`,`label`])],512),[[p,T.value===`general`]]),i(S(`div`,Vt,[S(`div`,Ht,_(e.$t(`settings.notifications`)),1),S(`div`,Ut,[h(M,{modelValue:Re.value,"onUpdate:modelValue":n[12]||=e=>Re.value=e,label:e.$t(`settings.browserNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),h(M,{modelValue:B.value,"onUpdate:modelValue":n[13]||=e=>B.value=e,label:e.$t(`settings.audioNotifications`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`])]),S(`div`,Wt,[h(z,{modelValue:Qe.value,"onUpdate:modelValue":n[14]||=e=>Qe.value=e,options:gc.value,label:e.$t(`settings.notificationSound`),disable:!B.value,dark:``,dense:``,outlined:``,"emit-value":``,"map-options":``,color:`indigo-4`,class:`col`},null,8,[`modelValue`,`options`,`label`,`disable`]),h(k,{flat:``,dense:``,color:`indigo-4`,icon:`play_arrow`,label:e.$t(`settings.notificationSoundPreview`),disable:!B.value,onClick:yc},null,8,[`label`,`disable`])]),S(`div`,Gt,[S(`div`,Kt,_(e.$t(`settings.notificationVolume`)),1),h(it,{modelValue:V.value,"onUpdate:modelValue":n[15]||=e=>V.value=e,min:0,max:1,step:.05,disable:!B.value,dark:``,dense:``,color:`indigo-4`,class:`col`},null,8,[`modelValue`,`disable`]),S(`div`,qt,_(Math.round(V.value*100))+`% `,1)])],512),[[p,T.value===`notifications`]]),i(S(`div`,Jt,[S(`div`,Yt,[S(`div`,Xt,_(e.$t(`voice.sectionRuntime`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`grey-5`,label:b(x)(`common.refresh`),onClick:n[16]||=e=>b(c).fetchVoiceRuntime()},null,8,[`label`])]),S(`div`,Zt,[S(`div`,Qt,[h(E,{name:b(c).voiceRuntime?.available?`check_circle`:`cancel`,color:b(c).voiceRuntime?.available?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),S(`span`,{class:m([`text-caption`,b(c).voiceRuntime?.available?`text-green-5`:`text-red-5`])},_(b(c).voiceRuntime?.available?b(x)(`voice.runtimeReady`,{command:b(c).voiceRuntime?.command??`whisper-cli`}):b(x)(`voice.runtimeMissing`,{command:b(c).voiceRuntime?.command??`whisper-cli`})),3)]),S(`div`,$t,[h(E,{name:b(c).voiceRuntime?.ffmpegAvailable?`check_circle`:`cancel`,color:b(c).voiceRuntime?.ffmpegAvailable?`green-5`:`red-5`,size:`xs`},null,8,[`name`,`color`]),S(`span`,{class:m([`text-caption`,b(c).voiceRuntime?.ffmpegAvailable?`text-green-5`:`text-red-5`])},_(b(c).voiceRuntime?.ffmpegAvailable?b(x)(`voice.ffmpegReady`):b(x)(`voice.ffmpegMissing`)),3)])]),h(Pe,{dense:``,dark:``,icon:`help_outline`,label:e.$t(`voice.installGuideTitle`),class:`variables-panel rounded-borders q-mt-sm`},{default:d(()=>[S(`div`,en,[S(`div`,tn,_(e.$t(`voice.installGuideIntro`)),1),S(`div`,nn,[S(`a`,rn,_(e.$t(`voice.installLink`)),1)]),S(`div`,an,_(e.$t(`voice.installGuideUbuntuTitle`)),1),n[96]||=S(`pre`,{class:`mono-guide q-mb-sm`},`sudo apt update
|
|
2
|
+
sudo apt install -y cmake build-essential ffmpeg
|
|
3
|
+
git clone https://github.com/ggml-org/whisper.cpp.git
|
|
4
|
+
cd whisper.cpp
|
|
5
|
+
cmake -B build
|
|
6
|
+
cmake --build build -j`,-1),S(`div`,on,_(e.$t(`voice.installGuideBinaryPathHint`)),1),S(`div`,sn,_(e.$t(`voice.installGuideWindowsTitle`)),1),n[97]||=S(`pre`,{class:`mono-guide q-mb-sm`},`# Install CMake + Visual Studio Build Tools (C/C++)
|
|
7
|
+
# Install ffmpeg (choco/scoop)
|
|
8
|
+
where whisper-cli
|
|
9
|
+
where ffmpeg`,-1),S(`div`,null,_(e.$t(`voice.installGuideSettingsHint`)),1)])]),_:1},8,[`label`])],512),[[p,T.value===`voice`]]),i(S(`div`,cn,[S(`div`,ln,_(e.$t(`voice.sectionActivation`)),1),h(M,{modelValue:hs.value,"onUpdate:modelValue":n[17]||=e=>hs.value=e,label:e.$t(`voice.enabled`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption q-mb-sm`},null,8,[`modelValue`,`label`]),S(`div`,un,[S(`div`,dn,[h(z,{modelValue:gs.value,"onUpdate:modelValue":n[18]||=e=>gs.value=e,label:e.$t(`voice.pttKey`),options:[{label:e.$t(`voice.pttAlt`),value:`alt`},{label:e.$t(`voice.pttCtrlSpace`),value:`ctrl+space`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`,`options`])]),S(`div`,fn,[h(z,{modelValue:_s.value,"onUpdate:modelValue":n[19]||=e=>_s.value=e,label:e.$t(`voice.language`),options:vc,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])])],512),[[p,T.value===`voice`]]),i(S(`div`,pn,[S(`div`,mn,_(e.$t(`voice.sectionModels`)),1),h(z,{modelValue:q.value,"onUpdate:modelValue":n[20]||=e=>q.value=e,label:e.$t(`voice.model`),options:_c.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-md`},null,8,[`modelValue`,`label`,`options`]),b(c).voiceModelsDir?(s(),f(`div`,hn,[h(E,{name:`folder`,color:`grey-5`,size:`xs`}),S(`span`,gn,_(b(c).voiceModelsDir),1),h(k,{flat:``,dense:``,round:``,size:`xs`,icon:`content_copy`,color:`grey-5`,title:b(x)(`common.copy`),onClick:n[21]||=e=>Kc(b(c).voiceModelsDir)},null,8,[`title`])])):v(``,!0),S(`div`,_n,[(s(!0),f(g,null,t(b(c).voiceModels,t=>(s(),f(`div`,{key:t.name,class:m([`voice-model-row q-pa-sm rounded-borders`,{"voice-model-row--active":t.download}])},[S(`div`,vn,[h(E,{name:t.download?`downloading`:t.installed?`check_circle`:`circle`,color:t.download?`indigo-4`:t.installed?`green-5`:`grey-7`,size:`xs`},null,8,[`name`,`color`]),S(`span`,yn,_(t.name),1),S(`span`,bn,_(Hc(t.installedSizeBytes??t.sizeBytes)),1),h(L),t.download?(s(),y(k,{key:0,flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`close`,label:e.$t(`common.cancel`),onClick:e=>Vc(t.name)},null,8,[`label`,`onClick`])):(s(),y(k,{key:1,flat:``,dense:``,"no-caps":``,size:`sm`,color:t.installed?`red-5`:`indigo-4`,icon:t.installed?`delete_outline`:`download`,label:t.installed?e.$t(`voice.delete`):e.$t(`voice.download`),loading:ws.value===t.name,onClick:e=>t.installed?Bc(t.name):zc(t.name)},null,8,[`color`,`icon`,`label`,`loading`,`onClick`]))]),t.download?(s(),f(`div`,xn,[h(Se,{value:t.download.total>0?Math.min(1,t.download.downloaded/t.download.total):0,indeterminate:!t.download.total,color:`indigo-4`,"track-color":`grey-9`,size:`6px`,rounded:``},null,8,[`value`,`indeterminate`]),S(`div`,Sn,[S(`span`,Cn,_(Hc(t.download.downloaded))+` / `+_(Hc(t.download.total)),1),h(L),S(`span`,wn,_(t.download.total>0?`${Math.floor(t.download.downloaded/t.download.total*100)}%`:`—`),1)])])):t.installed?(s(),f(`div`,Tn,_(t.fileName),1)):v(``,!0)],2))),128))])],512),[[p,T.value===`voice`]]),i(S(`div`,En,[S(`div`,Dn,_(e.$t(`voice.sectionAdvanced`)),1),h(Pe,{dense:``,dark:``,icon:`tune`,label:e.$t(`voice.sectionBehavior`),class:`variables-panel rounded-borders q-mb-sm`},{default:d(()=>[S(`div`,On,[S(`div`,kn,[S(`div`,An,_(e.$t(`voice.temperature`)),1),h(it,{modelValue:bs.value,"onUpdate:modelValue":n[22]||=e=>bs.value=e,min:0,max:1,step:.05,dark:``,dense:``,color:`indigo-4`,class:`col`},null,8,[`modelValue`]),S(`div`,jn,_(bs.value.toFixed(2)),1)]),S(`div`,Mn,_(e.$t(`voice.temperatureHint`)),1),h(j,{modelValue:xs.value,"onUpdate:modelValue":n[23]||=e=>xs.value=e,label:e.$t(`voice.initialPrompt`),type:`textarea`,dense:``,dark:``,outlined:``,rows:2,class:`settings-input`},null,8,[`modelValue`,`label`]),S(`div`,Nn,_(e.$t(`voice.initialPromptHint`)),1),h(M,{modelValue:Ss.value,"onUpdate:modelValue":n[24]||=e=>Ss.value=e,label:e.$t(`voice.translateToEnglish`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),S(`div`,Pn,_(e.$t(`voice.translateToEnglishHint`)),1),h(M,{modelValue:Cs.value,"onUpdate:modelValue":n[25]||=e=>Cs.value=e,label:e.$t(`voice.suppressNst`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),S(`div`,Fn,_(e.$t(`voice.suppressNstHint`)),1)])]),_:1},8,[`label`]),h(Pe,{dense:``,dark:``,icon:`terminal`,label:e.$t(`voice.sectionBinaries`),class:`variables-panel rounded-borders`},{default:d(()=>[S(`div`,In,[h(j,{modelValue:vs.value,"onUpdate:modelValue":n[26]||=e=>vs.value=e,label:e.$t(`voice.commandPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`]),h(j,{modelValue:ys.value,"onUpdate:modelValue":n[27]||=e=>ys.value=e,label:e.$t(`voice.ffmpegPath`),dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`label`])])]),_:1},8,[`label`])],512),[[p,T.value===`voice`]]),T.value===`prompts`?(s(),f(`div`,Ln,[S(`div`,Rn,[S(`div`,zn,_(e.$t(`settings.prPromptTemplate`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`prPromptTemplate`,disable:W.value!==null&&W.value!==`prPromptTemplate`,onClick:n[28]||=e=>Lc(`prPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,Bn,_(e.$t(`settings.prPromptHint`)),1),h(j,{modelValue:pe.value,"onUpdate:modelValue":n[29]||=e=>pe.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.prPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),S(`div`,Vn,[h(Pe,{dense:``,dark:``,icon:`code`,label:e.$t(`settings.availableVariables`),class:`variables-panel rounded-borders`},{default:d(()=>[h(R,{dense:``,dark:``,class:`q-pa-sm`},{default:d(()=>[(s(!0),f(g,null,t(mc.value,e=>(s(),y(N,{key:e.name,dense:``},{default:d(()=>[h(P,null,{default:d(()=>[h(F,{class:`text-caption`,style:{"font-family":`monospace`}},{default:d(()=>[w(_(e.name),1)]),_:2},1024),h(F,{caption:``,class:`text-grey-7`},{default:d(()=>[w(_(e.description),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1},8,[`label`])]),S(`div`,Hn,[S(`div`,Un,_(e.$t(`settings.reviewPromptTemplate`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`reviewPromptTemplate`,disable:W.value!==null&&W.value!==`reviewPromptTemplate`,onClick:n[30]||=e=>Lc(`reviewPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,Wn,_(e.$t(`settings.prPromptHint`)),1),h(j,{modelValue:D.value,"onUpdate:modelValue":n[31]||=e=>D.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),S(`div`,Gn,[S(`div`,Kn,_(e.$t(`settings.ciFixPromptTemplate`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`ciFixPromptTemplate`,disable:W.value!==null&&W.value!==`ciFixPromptTemplate`,onClick:n[32]||=e=>Lc(`ciFixPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,qn,_(e.$t(`settings.ciFixPromptHint`)),1),h(j,{modelValue:O.value,"onUpdate:modelValue":n[33]||=e=>O.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),S(`div`,Jn,[S(`div`,Yn,_(e.$t(`settings.finalizationPromptTemplate`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`finalizationPrompt`,disable:W.value!==null&&W.value!==`finalizationPrompt`,onClick:n[34]||=e=>Lc(`finalizationPrompt`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,Xn,_(e.$t(`settings.finalizationPromptHint`)),1),h(j,{modelValue:Te.value,"onUpdate:modelValue":n[35]||=e=>Te.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.finalizationPromptPlaceholder`),class:`settings-input mono-textarea q-mb-md`},null,8,[`modelValue`,`placeholder`]),S(`div`,Zn,[S(`div`,Qn,_(e.$t(`settings.gitConventions`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`gitConventions`,disable:W.value!==null&&W.value!==`gitConventions`,onClick:n[36]||=e=>Lc(`gitConventions`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,$n,_(e.$t(`settings.gitConventionsHint`)),1),h(j,{modelValue:A.value,"onUpdate:modelValue":n[37]||=e=>A.value=e,type:`textarea`,dense:``,dark:``,outlined:``,rows:8,placeholder:e.$t(`settings.gitConventionsPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])):v(``,!0),i(S(`div`,er,[S(`div`,tr,_(e.$t(`settings.editorCommand`)),1),S(`div`,nr,_(e.$t(`settings.editorCommandHint`)),1),h(j,{modelValue:Ee.value,"onUpdate:modelValue":n[38]||=e=>Ee.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.editorCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`general`]]),i(S(`div`,rr,[S(`div`,ir,_(e.$t(`settings.fileManagerCommand`)),1),S(`div`,ar,_(e.$t(`settings.fileManagerCommandHint`)),1),h(j,{modelValue:I.value,"onUpdate:modelValue":n[39]||=e=>I.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.fileManagerCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`general`]]),i(S(`div`,or,[S(`div`,sr,_(e.$t(`settings.terminalCommand`)),1),S(`div`,cr,_(e.$t(`settings.terminalCommandHint`)),1),h(j,{modelValue:Fe.value,"onUpdate:modelValue":n[40]||=e=>Fe.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.terminalCommandPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`general`]]),i(S(`div`,lr,[S(`div`,ur,_(e.$t(`settings.mcpSelection`)),1),S(`div`,dr,_(e.$t(`settings.mcpSelectionHint`)),1),S(`div`,fr,[S(`div`,pr,_(e.$t(`settings.notionMcp`)),1),h(z,{modelValue:Bo.value,"onUpdate:modelValue":n[41]||=e=>Bo.value=e,options:hc.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),S(`div`,mr,[S(`div`,hr,_(e.$t(`settings.sentryMcp`)),1),h(z,{modelValue:Vo.value,"onUpdate:modelValue":n[42]||=e=>Vo.value=e,options:hc.value,"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])],512),[[p,T.value===`notion`||T.value===`sentry`]]),T.value===`notion`?(s(),f(`div`,gr,[S(`div`,_r,_(e.$t(`settings.notionStatus`)),1),S(`div`,vr,_(e.$t(`settings.notionStatusHint`)),1),S(`div`,yr,[S(`div`,br,_(e.$t(`settings.notionStatusProperty`)),1),h(j,{modelValue:$e.value,"onUpdate:modelValue":n[43]||=e=>$e.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionStatusPropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),S(`div`,xr,[S(`div`,Sr,_(e.$t(`settings.notionInProgressStatus`)),1),h(j,{modelValue:et.value,"onUpdate:modelValue":n[44]||=e=>et.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionInProgressStatusPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),S(`div`,Cr,[S(`div`,wr,_(b(x)(`settings.notionInitialPrompt`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`notionInitialPromptTemplate`,disable:W.value!==null&&W.value!==`notionInitialPromptTemplate`,onClick:n[45]||=e=>Lc(`notionInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,Tr,_(b(x)(`settings.notionInitialPrompt.help`,{variables:`{ticket_id}, {notion_url}, {notion_file_path}`})),1),h(j,{modelValue:ct.value,"onUpdate:modelValue":n[46]||=e=>ct.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),i(S(`div`,Er,[S(`div`,Dr,_(e.$t(`settings.notionAssignee`)),1),S(`div`,Or,_(e.$t(`settings.notionAssigneeHint`)),1),S(`div`,kr,[S(`div`,Ar,_(e.$t(`settings.notionAssigneeProperty`)),1),h(j,{modelValue:tt.value,"onUpdate:modelValue":n[47]||=e=>tt.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionAssigneePropertyPlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),S(`div`,jr,[S(`div`,Mr,[S(`div`,Nr,_(e.$t(`settings.notionUserId`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,color:`grey-5`,loading:rt.value,label:e.$t(`settings.notionUsersRefresh`),onClick:n[48]||=e=>st(!0)},null,8,[`loading`,`label`])]),nt.value.length>0?(s(),y(z,{key:0,modelValue:H.value,"onUpdate:modelValue":n[49]||=e=>H.value=e,options:ot.value,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,hint:e.$t(`settings.notionUserIdHint`),class:`settings-input`},{option:d(e=>[h(N,ne(ie(e.itemProps)),{default:d(()=>[h(P,{avatar:``},{default:d(()=>[h(_e,{size:`24px`},{default:d(()=>[e.opt.avatarUrl?(s(),f(`img`,{key:0,src:e.opt.avatarUrl,alt:e.opt.label},null,8,Pr)):(s(),y(E,{key:1,name:`person`,size:`20px`}))]),_:2},1024)]),_:2},1024),h(P,null,{default:d(()=>[h(F,null,{default:d(()=>[w(_(e.opt.name),1)]),_:2},1024),h(F,{caption:``},{default:d(()=>[w(_(e.opt.email),1)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`hint`])):rt.value?(s(),f(`div`,Fr,_(e.$t(`settings.notionUsersLoading`)),1)):(s(),f(g,{key:2},[U.value?(s(),f(`div`,Ir,_(e.$t(`settings.notionUsersLoadFailed`,{error:U.value})),1)):v(``,!0),h(j,{modelValue:H.value,"onUpdate:modelValue":n[50]||=e=>H.value=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.notionUserIdPlaceholder`),hint:U.value?e.$t(`settings.notionUsersManualFallback`):e.$t(`settings.notionUserIdHint`),class:`settings-input`},null,8,[`modelValue`,`placeholder`,`hint`])],64))])],512),[[p,T.value===`notion`]]),T.value===`sentry`?(s(),f(`div`,Lr,[S(`div`,Rr,_(b(x)(`settings.sentryIntegration`)),1),S(`div`,zr,[S(`div`,Br,_(b(x)(`settings.sentryInitialPrompt`)),1),h(L),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-5`,icon:`restart_alt`,label:b(x)(`settings.resetToDefault`),loading:W.value===`sentryInitialPromptTemplate`,disable:W.value!==null&&W.value!==`sentryInitialPromptTemplate`,onClick:n[51]||=e=>Lc(`sentryInitialPromptTemplate`)},null,8,[`label`,`loading`,`disable`])]),S(`div`,Vr,_(b(x)(`settings.sentryInitialPrompt.help`,{variables:`{issue_id}, {sentry_url}, {sentry_file_path}`})),1),h(j,{modelValue:Lo.value,"onUpdate:modelValue":n[52]||=e=>Lo.value=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])])):v(``,!0),i(S(`div`,Hr,[S(`div`,Ur,_(e.$t(`settings.tagsTitle`)),1),S(`div`,Wr,_(e.$t(`settings.tagsHint`)),1),h(z,{modelValue:Ho.value,"onUpdate:modelValue":n[53]||=e=>Ho.value=e,label:e.$t(`settings.tagsLabel`),dark:``,outlined:``,multiple:``,"use-input":``,"use-chips":``,"new-value-mode":`add-unique`,"hide-dropdown-icon":``,"input-debounce":`0`,class:`settings-input`},null,8,[`modelValue`,`label`])],512),[[p,T.value===`general`]]),i(S(`div`,Gr,[S(`div`,Kr,_(e.$t(`settings.branchPrefixesTitle`)),1),S(`div`,qr,_(e.$t(`settings.branchPrefixesHint`)),1),G.value.length>0?(s(),y(R,{key:0,bordered:``,separator:``,class:`rounded-borders q-mb-sm`},{default:d(()=>[(s(!0),f(g,null,t(G.value,(t,n)=>(s(),y(N,{key:t},{default:d(()=>[h(P,null,{default:d(()=>[h(F,{class:`cursor-pointer`},{default:d(()=>[w(_(t)+`/ `,1),h(at,{"model-value":t,"auto-save":``,onSave:e=>os(n,e)},{default:d(e=>[h(j,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,dense:``,dark:``,autofocus:``,onKeyup:te(e.set,[`enter`])},null,8,[`modelValue`,`onUpdate:modelValue`,`onKeyup`])]),_:1},8,[`model-value`,`onSave`]),h(Ne,null,{default:d(()=>[w(_(e.$t(`settings.branchPrefixesEditHint`)),1)]),_:1})]),_:2},1024)]),_:2},1024),h(P,{side:``},{default:d(()=>[S(`div`,Jr,[h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_up`,color:`grey-6`,disable:n===0,title:e.$t(`settings.branchPrefixesMoveUp`),onClick:e=>ss(n,-1)},null,8,[`disable`,`title`,`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`keyboard_arrow_down`,color:`grey-6`,disable:n===G.value.length-1,title:e.$t(`settings.branchPrefixesMoveDown`),onClick:e=>ss(n,1)},null,8,[`disable`,`title`,`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`grey-6`,title:e.$t(`common.delete`),onClick:e=>as(n)},null,8,[`title`,`onClick`])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):(s(),f(`div`,Yr,_(e.$t(`settings.branchPrefixesEmpty`)),1)),S(`div`,Xr,[h(j,{modelValue:Uo.value,"onUpdate:modelValue":n[54]||=e=>Uo.value=e,label:e.$t(`settings.branchPrefixesAddLabel`),dense:``,dark:``,outlined:``,class:`col`,onKeyup:te(is,[`enter`])},null,8,[`modelValue`,`label`]),h(k,{flat:``,label:e.$t(`common.add`),icon:`add`,color:`primary`,disable:rs(Uo.value).length===0,onClick:is},null,8,[`label`,`disable`])])],512),[[p,T.value===`general`]]),i(S(`div`,Zr,[S(`div`,Qr,_(e.$t(`settings.setupScript`)),1),S(`div`,$r,_(e.$t(`settings.setupScriptHint`)),1),h(j,{modelValue:Wo.value,"onUpdate:modelValue":n[55]||=e=>Wo.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`scripts`]]),i(S(`div`,ei,[S(`div`,ti,_(e.$t(`settings.onboardingTitle`)),1),S(`div`,ni,_(e.$t(`settings.onboardingHint`)),1),h(k,{flat:``,"no-caps":``,icon:`play_circle`,color:`indigo-4`,label:e.$t(`settings.onboardingReplay`),onClick:b(oe)},null,8,[`label`,`onClick`])],512),[[p,T.value===`general`]]),i(S(`div`,ri,[S(`div`,ii,_(e.$t(`settings.cleanupScript`)),1),S(`div`,ai,_(e.$t(`settings.cleanupScriptHint`)),1),h(j,{modelValue:Go.value,"onUpdate:modelValue":n[56]||=e=>Go.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),S(`div`,oi,_(e.$t(`settings.cleanupScriptMode`)),1),h(je,{modelValue:Ko.value,"onUpdate:modelValue":n[57]||=e=>Ko.value=e,options:[{label:e.$t(`settings.cleanupScriptMode.idle`),value:`idle`},{label:e.$t(`settings.cleanupScriptMode.noTasks`),value:`no-tasks`}],type:`radio`,color:`indigo-4`,dense:``},null,8,[`modelValue`,`options`]),h(De,{modelValue:qo.value,"onUpdate:modelValue":n[58]||=e=>qo.value=e,label:e.$t(`settings.cleanupScriptOnlyOnChanges`),dark:``,dense:``,color:`indigo-4`,class:`q-mt-sm`},null,8,[`modelValue`,`label`])],512),[[p,T.value===`scripts`]]),i(S(`div`,si,[S(`div`,ci,_(e.$t(`settings.archiveScript`)),1),S(`div`,li,_(e.$t(`settings.archiveScriptHint`)),1),h(j,{modelValue:Jo.value,"onUpdate:modelValue":n[59]||=e=>Jo.value=e,type:`textarea`,dark:``,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`scripts`]]),i(S(`div`,ui,[S(`div`,di,[S(`div`,fi,_(e.$t(`settings.changeSourceBranchScript`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:e.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:n[60]||=e=>Ds(`global`)},null,8,[`label`])]),S(`div`,pi,_(e.$t(`settings.changeSourceBranchScript.help`)),1),S(`pre`,mi,_(e.$t(`settings.changeSourceBranchScript.envHelp`)),1),h(j,{modelValue:Yo.value,"onUpdate:modelValue":n[61]||=e=>Yo.value=e,type:`textarea`,dark:``,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:e.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])],512),[[p,T.value===`scripts`]]),i(S(`div`,hi,[S(`div`,gi,_(e.$t(`settings.worktreesTitle`)),1),S(`div`,_i,_(e.$t(`settings.worktreesHint`)),1),h(j,{ref_key:`globalWorktreesPathInput`,ref:ts,modelValue:es.value,"onUpdate:modelValue":n[62]||=e=>es.value=e,label:e.$t(`settings.worktreesPathLabel`),dense:``,dark:``,outlined:``,placeholder:b(he),rules:ks,"lazy-rules":``,class:`settings-input`},null,8,[`modelValue`,`label`,`placeholder`]),h(M,{modelValue:ns.value,"onUpdate:modelValue":n[63]||=e=>ns.value=e,label:e.$t(`settings.worktreesPrefixByProject`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption q-mt-sm`},null,8,[`modelValue`,`label`]),S(`div`,vi,_(e.$t(`settings.worktreesPrefixByProjectHint`)),1),h(fe,{dark:``,class:`q-my-md`}),S(`div`,yi,[h(M,{modelValue:Ie.value,"onUpdate:modelValue":n[64]||=e=>Ie.value=e,label:e.$t(`settings.autoPurgeOnPrMerged`),dark:``,dense:``,color:`indigo-4`,class:`text-grey-5 text-caption`},null,8,[`modelValue`,`label`]),S(`div`,bi,_(e.$t(`settings.autoPurgeOnPrMergedHint`)),1)]),h(Pe,{dense:``,dark:``,icon:`help_outline`,label:e.$t(`settings.purgeDocsTitle`),class:`purge-docs q-mt-md rounded-borders`},{default:d(()=>[S(`div`,xi,[S(`div`,Si,_(e.$t(`settings.purgeDocsRestoreTitle`)),1),S(`div`,Ci,_(e.$t(`settings.purgeDocsRestoreIntro`)),1),S(`pre`,wi,_(e.$t(`settings.purgeDocsRestoreCommands`)),1),S(`div`,Ti,_(e.$t(`settings.purgeDocsRestoreFootnote`)),1),S(`div`,Ei,_(e.$t(`settings.purgeDocsPermissionsTitle`)),1),S(`div`,Di,_(e.$t(`settings.purgeDocsPermissionsIntro`)),1),S(`ul`,Oi,[S(`li`,null,_(e.$t(`settings.purgeDocsPermissionsDocker`)),1),S(`li`,null,_(e.$t(`settings.purgeDocsPermissionsAcl`)),1)]),S(`pre`,ki,_(e.$t(`settings.purgeDocsPermissionsAclCommand`)),1),S(`div`,Ai,_(e.$t(`settings.purgeDocsPermissionsFootnote`)),1),S(`div`,ji,_(e.$t(`settings.purgeDocsPermissionsRecoverTitle`)),1),S(`div`,Mi,_(e.$t(`settings.purgeDocsPermissionsRecoverIntro`)),1),S(`div`,Ni,_(e.$t(`settings.purgeDocsPermissionsRecoverAclIntro`)),1),S(`pre`,Pi,_(e.$t(`settings.purgeDocsPermissionsRecoverAclCommand`)),1),S(`div`,Fi,_(e.$t(`settings.purgeDocsPermissionsRecoverChownIntro`)),1),S(`pre`,Ii,_(e.$t(`settings.purgeDocsPermissionsRecoverChownCommand`)),1),S(`div`,Li,_(e.$t(`settings.purgeDocsPermissionsRecoverFootnote`)),1)])]),_:1},8,[`label`])],512),[[p,T.value===`worktrees`]]),i(S(`div`,Ri,[S(`div`,zi,_(e.$t(`settings.shareTitle`)),1),S(`div`,Bi,_(e.$t(`settings.shareHint`)),1),S(`div`,Vi,[h(k,{label:e.$t(`settings.exportConfig`),icon:`download`,"no-caps":``,outline:``,color:`grey-4`,onClick:Pc},null,8,[`label`]),h(k,{label:e.$t(`settings.importConfig`),icon:`upload`,"no-caps":``,outline:``,color:`grey-4`,onClick:Fc},null,8,[`label`]),S(`input`,{ref_key:`importFileInput`,ref:Nc,type:`file`,accept:`application/json,.json`,style:{display:`none`},onChange:Ic},null,544)])],512),[[p,T.value===`export`]]),S(`div`,Hi,[h(k,{label:e.$t(`common.save`),"no-caps":``,unelevated:``,size:`sm`,color:`primary`,loading:As.value,class:m({"save-btn--dirty":wc.value}),onClick:Rc},null,8,[`label`,`loading`,`class`])])],512),[[p,le.value]]),i(S(`div`,Ui,[S(`div`,Wi,[S(`div`,Gi,[S(`div`,Ki,[S(`div`,qi,[S(`div`,Ji,_(e.$t(`settings.configuredProjects`)),1)]),h(fe,{dark:``}),h(R,{dark:``,dense:``,class:`q-py-xs`},{default:d(()=>[(s(!0),f(g,null,t(b(c).projects,(e,t)=>(s(),y(N,{key:e.path,clickable:``,active:J.value===t&&!Y.value,"active-class":`project-item--active`,class:`project-item q-mx-xs rounded-borders`,style:{"min-height":`40px`},onClick:e=>Xc(t)},{default:d(()=>[h(P,null,{default:d(()=>[h(F,{class:`text-body2 text-grey-3`},{default:d(()=>[w(_(Zc(e)),1)]),_:2},1024),h(F,{caption:``,class:`text-grey-7 ellipsis`,style:{"font-size":`11px`,"font-family":`monospace`}},{default:d(()=>[w(_(e.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1032,[`active`,`onClick`]))),128))]),_:1}),b(c).projects.length===0&&!b(c).loading?(s(),f(`div`,Yi,_(e.$t(`settings.noProjects`)),1)):v(``,!0),h(fe,{dark:``}),S(`div`,Xi,[h(k,{"data-tour":`settings-card-projects`,label:e.$t(`settings.addProject`),icon:`add`,"no-caps":``,flat:``,dense:``,class:`full-width`,color:`indigo-4`,onClick:Yc},null,8,[`label`])])])]),S(`div`,Zi,[S(`div`,Qi,[$.value||Y.value?(s(),f(g,{key:0},[S(`div`,$i,[S(`div`,ea,_(Y.value?e.$t(`settings.newProject`):e.$t(`settings.editProject`)),1),h(L),Y.value?v(``,!0):(s(),y(k,{key:0,label:e.$t(`common.delete`),icon:`delete_outline`,"no-caps":``,flat:``,dense:``,size:`sm`,color:`red-5`,loading:Gs.value,onClick:Jc},null,8,[`label`,`loading`]))]),h(fe,{dark:``,class:`q-mb-md`}),Y.value&&b(c).projects.length>0?(s(),f(`div`,ta,[S(`div`,na,_(e.$t(`settings.copyFrom`)),1),h(z,{"model-value":Ms.value,options:Ps.value,"option-value":`value`,"option-label":`label`,"emit-value":``,"map-options":``,clearable:``,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.copyFromPlaceholder`),class:`settings-input`,"onUpdate:modelValue":Ls},null,8,[`model-value`,`options`,`placeholder`]),S(`div`,ra,_(e.$t(`settings.copyFromHint`)),1)])):v(``,!0),S(`div`,ia,[S(`div`,aa,_(e.$t(`settings.projectGroup.identity`)),1),S(`div`,oa,[S(`div`,sa,_(e.$t(`settings.projectPath`)),1),h(j,{modelValue:X.value.path,"onUpdate:modelValue":n[66]||=e=>X.value.path=e,dense:``,dark:``,outlined:``,readonly:!Y.value,placeholder:e.$t(`settings.projectPathPlaceholder`),class:m([`settings-input`,{"readonly-input":!Y.value}])},re({_:2},[Y.value?{name:`append`,fn:d(()=>[h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`folder_open`,color:`grey-5`,onClick:n[65]||=e=>Zo.value=!0},{default:d(()=>[h(Ne,null,{default:d(()=>[w(_(e.$t(`folderPicker.title`)),1)]),_:1})]),_:1})]),key:`0`}:void 0]),1032,[`modelValue`,`readonly`,`placeholder`,`class`])]),S(`div`,ca,[S(`div`,la,_(e.$t(`settings.displayName`)),1),h(j,{modelValue:X.value.displayName,"onUpdate:modelValue":n[67]||=e=>X.value.displayName=e,dense:``,dark:``,outlined:``,placeholder:e.$t(`settings.displayNamePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`])]),S(`div`,null,[S(`div`,ua,_(e.$t(`settings.projectColor`)),1),S(`div`,da,[(s(!0),f(g,null,t(b(Ke),e=>(s(),y(Le,{key:e,dense:``,clickable:``,color:e,icon:X.value.color===e?`check`:void 0,"text-color":`white`,onClick:t=>X.value.color=e},null,8,[`color`,`icon`,`onClick`]))),128)),h(k,{flat:``,dense:``,"no-caps":``,size:`xs`,label:e.$t(`settings.projectColorClear`),color:`grey-5`,disable:!X.value.color,onClick:n[68]||=e=>X.value.color=null},null,8,[`label`,`disable`])]),S(`div`,fa,_(X.value.color??e.$t(`settings.projectColorDefault`)),1)])]),S(`div`,pa,[S(`div`,ma,_(e.$t(`settings.projectGroup.defaults`)),1),S(`div`,ha,[S(`div`,ga,_(e.$t(`settings.defaultSourceBranch`)),1),h(z,{modelValue:X.value.defaultSourceBranch,"onUpdate:modelValue":n[69]||=e=>X.value.defaultSourceBranch=e,options:Qc.value,dense:``,dark:``,outlined:``,"use-input":``,"emit-value":``,loading:Us.value,class:`settings-input`,placeholder:`main`,onFilter:$c},{"no-option":d(()=>[h(N,null,{default:d(()=>[h(P,{class:`text-grey-6 text-caption`},{default:d(()=>[w(_(X.value.path.trim()?e.$t(`createPage.noBranches`):e.$t(`createPage.enterPath`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`,`options`,`loading`])]),S(`div`,_a,[S(`div`,va,_(e.$t(`settings.defaultModel.project`)),1),h(z,{modelValue:X.value.defaultModel,"onUpdate:modelValue":n[70]||=e=>X.value.defaultModel=e,options:uc.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),S(`div`,null,[S(`div`,ya,_(e.$t(`settings.forge`)),1),h(z,{modelValue:X.value.forge,"onUpdate:modelValue":n[71]||=e=>X.value.forge=e,options:dc.value,"emit-value":``,"map-options":``,"option-value":`value`,"option-label":`label`,dense:``,dark:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])])]),S(`div`,ba,[S(`div`,xa,_(e.$t(`settings.projectGroup.prompts`)),1),S(`div`,Sa,[S(`div`,Ca,_(e.$t(`settings.prPromptTemplate.project`)),1),S(`div`,wa,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.prPromptTemplate,"onUpdate:modelValue":n[72]||=e=>X.value.prPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.prPromptPlaceholder.project`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,Ta,[S(`div`,Ea,_(e.$t(`settings.reviewPromptTemplate.project`)),1),S(`div`,Da,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.reviewPromptTemplate,"onUpdate:modelValue":n[73]||=e=>X.value.reviewPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.reviewPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,Oa,[S(`div`,ka,_(e.$t(`settings.ciFixPromptTemplate.project`)),1),S(`div`,Aa,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.ciFixPromptTemplate,"onUpdate:modelValue":n[74]||=e=>X.value.ciFixPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.ciFixPromptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,ja,[S(`div`,Ma,_(b(x)(`settings.notionInitialPrompt.project`)),1),S(`div`,Na,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.notionInitialPromptTemplate,"onUpdate:modelValue":n[75]||=e=>X.value.notionInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])]),S(`div`,Pa,[S(`div`,Fa,_(b(x)(`settings.sentryInitialPrompt.project`)),1),S(`div`,Ia,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.sentryInitialPromptTemplate,"onUpdate:modelValue":n[76]||=e=>X.value.sentryInitialPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,class:`settings-input mono-textarea`},null,8,[`modelValue`])]),S(`div`,La,[S(`div`,Ra,_(e.$t(`settings.gitConventions.project`)),1),S(`div`,za,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.gitConventions,"onUpdate:modelValue":n[77]||=e=>X.value.gitConventions=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`140px`},placeholder:e.$t(`settings.gitConventionsEmpty`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,null,[S(`div`,Ba,_(e.$t(`settings.taskPromptTemplate`)),1),h(j,{modelValue:X.value.taskPromptTemplate,"onUpdate:modelValue":n[78]||=e=>X.value.taskPromptTemplate=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.taskPromptTemplatePlaceholder`),class:`settings-input`},null,8,[`modelValue`,`placeholder`]),S(`div`,Va,_(e.$t(`settings.taskPromptTemplateHint`)),1)])]),S(`div`,Ha,[S(`div`,Ua,_(e.$t(`settings.projectGroup.scripts`)),1),S(`div`,Wa,[S(`div`,Ga,_(e.$t(`settings.setupScript`)),1),S(`div`,Ka,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.setupScript,"onUpdate:modelValue":n[79]||=e=>X.value.setupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.setupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),S(`div`,qa,_(e.$t(`settings.setupScriptHint`)),1)]),S(`div`,Ja,[S(`div`,Ya,_(e.$t(`settings.cleanupScript`)),1),S(`div`,Xa,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.cleanupScript,"onUpdate:modelValue":n[80]||=e=>X.value.cleanupScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.cleanupScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`]),S(`div`,Za,_(e.$t(`settings.cleanupScriptMode`)),1),h(z,{modelValue:X.value.cleanupScriptMode,"onUpdate:modelValue":n[81]||=e=>X.value.cleanupScriptMode=e,options:$o.value,"emit-value":``,"map-options":``,dense:``,outlined:``,class:`settings-input`},null,8,[`modelValue`,`options`])]),S(`div`,null,[S(`div`,Qa,_(e.$t(`settings.archiveScript`)),1),S(`div`,$a,_(b(x)(`settings.initialPrompt.inheritHint`)),1),h(j,{modelValue:X.value.archiveScript,"onUpdate:modelValue":n[82]||=e=>X.value.archiveScript=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`100px`},placeholder:e.$t(`settings.archiveScriptPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,null,[S(`div`,eo,[S(`div`,to,_(e.$t(`settings.changeSourceBranchScript`)),1),h(k,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`primary`,icon:`restart_alt`,label:e.$t(`settings.changeSourceBranchScript.resetDefault`),onClick:n[83]||=e=>Ds(`project`)},null,8,[`label`])]),S(`div`,no,_(e.$t(`settings.changeSourceBranchScript.help`)),1),S(`pre`,ro,_(e.$t(`settings.changeSourceBranchScript.envHelp`)),1),h(j,{modelValue:X.value.changeSourceBranchScript,"onUpdate:modelValue":n[84]||=e=>X.value.changeSourceBranchScript=e,type:`textarea`,outlined:``,"input-style":{minHeight:`400px`,maxHeight:`600px`},placeholder:e.$t(`settings.changeSourceBranchScript.placeholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),S(`div`,io,[S(`div`,ao,_(e.$t(`settings.devServer`)),1),S(`div`,oo,[S(`div`,so,_(e.$t(`settings.devServerStart`)),1),h(j,{modelValue:X.value.devServer.startCommand,"onUpdate:modelValue":n[85]||=e=>X.value.devServer.startCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:e.$t(`settings.devServerStartPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])]),S(`div`,null,[S(`div`,co,_(e.$t(`settings.devServerStop`)),1),h(j,{modelValue:X.value.devServer.stopCommand,"onUpdate:modelValue":n[86]||=e=>X.value.devServer.stopCommand=e,type:`textarea`,outlined:``,autogrow:``,"input-style":{minHeight:`60px`},placeholder:e.$t(`settings.devServerStopPlaceholder`),class:`settings-input mono-textarea`},null,8,[`modelValue`,`placeholder`])])]),S(`div`,lo,[S(`div`,uo,_(e.$t(`settings.e2e.title`)),1),S(`div`,fo,_(e.$t(`settings.e2e.helpText`)),1),h(z,{modelValue:X.value.e2e.framework,"onUpdate:modelValue":n[87]||=e=>X.value.e2e.framework=e,options:[{label:e.$t(`settings.e2e.frameworkNone`),value:``},{label:`Cypress`,value:`cypress`},{label:`Playwright`,value:`playwright`},{label:`Jest`,value:`jest`},{label:`Vitest`,value:`vitest`},{label:e.$t(`settings.e2e.frameworkOther`),value:`other`}],"emit-value":``,"map-options":``,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:e.$t(`settings.e2e.framework`)},null,8,[`modelValue`,`options`,`label`]),X.value.e2e.framework?(s(),f(g,{key:0},[h(z,{modelValue:X.value.e2e.skill,"onUpdate:modelValue":n[88]||=e=>X.value.e2e.skill=e,options:zs.value,"use-input":``,"fill-input":``,"hide-selected":``,"hide-dropdown-icon":``,"input-debounce":`200`,"new-value-mode":`add-unique`,dense:``,dark:``,outlined:``,class:`settings-input q-mb-sm`,label:e.$t(`settings.e2e.skill`),placeholder:e.$t(`settings.e2e.skillPlaceholder`),onFilter:Vs},null,8,[`modelValue`,`options`,`label`,`placeholder`]),h(j,{modelValue:X.value.e2e.prompt,"onUpdate:modelValue":n[89]||=e=>X.value.e2e.prompt=e,type:`textarea`,autogrow:``,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea`,label:e.$t(`settings.e2e.prompt`),placeholder:e.$t(`settings.e2e.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])],64)):v(``,!0)]),S(`div`,po,[S(`div`,mo,_(e.$t(`settings.finalization.title`)),1),S(`div`,ho,_(e.$t(`settings.finalization.helpText`)),1),h(j,{modelValue:X.value.finalization.prompt,"onUpdate:modelValue":n[90]||=e=>X.value.finalization.prompt=e,type:`textarea`,autogrow:``,rows:`4`,dense:``,dark:``,outlined:``,class:`settings-input mono-textarea q-mb-sm`,label:e.$t(`settings.finalization.prompt`),placeholder:e.$t(`settings.finalization.promptPlaceholder`)},null,8,[`modelValue`,`label`,`placeholder`])]),S(`div`,go,[h(L),h(k,{label:e.$t(`common.save`),"no-caps":``,unelevated:``,size:`sm`,color:`primary`,loading:Ws.value,class:m({"save-btn--dirty":Tc.value}),onClick:qc},null,8,[`label`,`loading`,`class`])])],64)):(s(),f(`div`,_o,[h(E,{name:`folder_open`,size:`48px`,color:`grey-7`,class:`q-mb-md`}),S(`div`,vo,_(e.$t(`settings.selectProject`)),1)]))])])])],512),[[p,T.value===`projects`]]),i(S(`div`,yo,[S(`div`,bo,[S(`div`,xo,[S(`div`,So,_(e.$t(`templates.title`)),1),S(`div`,Co,[h(k,{flat:``,color:`grey-4`,icon:`restart_alt`,label:e.$t(`templates.reloadDefaults`),dense:``,"no-caps":``,loading:Zs.value,onClick:rc},{default:d(()=>[h(Ne,null,{default:d(()=>[w(_(e.$t(`templates.reloadDefaultsHint`)),1)]),_:1})]),_:1},8,[`label`,`loading`]),h(k,{color:`primary`,icon:`add`,label:e.$t(`templates.newTemplate`),dense:``,"no-caps":``,onClick:ec},null,8,[`label`])])]),h(fe,{dark:``,class:`q-mb-md`}),Qs.value.length===0?(s(),f(`div`,wo,_(e.$t(`templates.empty`)),1)):(s(),f(`div`,To,[(s(!0),f(g,null,t(Qs.value,t=>(s(),y(ke,{key:t.slug,dark:``,flat:``,bordered:``,class:`q-pa-md template-card`},{default:d(()=>[S(`div`,Eo,[S(`div`,Do,[S(`div`,Oo,` /`+_(t.slug),1),S(`div`,ko,_(t.description),1)]),S(`div`,Ao,[b(l).isDefault(t.slug)?(s(),y(k,{key:0,flat:``,dense:``,round:``,size:`sm`,icon:`settings_backup_restore`,color:`grey-5`,onClick:e=>ac(t)},{default:d(()=>[h(Ne,null,{default:d(()=>[w(_(e.$t(`templates.resetToDefault`)),1)]),_:1})]),_:1},8,[`onClick`])):v(``,!0),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`edit`,color:`grey-5`,onClick:e=>tc(t)},{default:d(()=>[h(Ne,null,{default:d(()=>[w(_(e.$t(`templates.editTemplate`)),1)]),_:1})]),_:1},8,[`onClick`]),h(k,{flat:``,dense:``,round:``,size:`sm`,icon:`delete`,color:`red-4`,onClick:e=>ic(t)},{default:d(()=>[h(Ne,null,{default:d(()=>[w(_(e.$t(`templates.deleteTemplate`)),1)]),_:1})]),_:1},8,[`onClick`])])])]),_:2},1024))),128))])),S(`div`,jo,_(e.$t(`templates.filePath`,{path:`~/.config/kobo/templates.json`})),1)])],512),[[p,T.value===`templates`]])])]),h(ee,{name:`save-bar`},{default:d(()=>[Ec.value?(s(),f(`div`,Mo,[S(`span`,No,_(e.$t(`settings.unsavedChanges`)),1),h(k,{dense:``,"no-caps":``,unelevated:``,class:`settings-savebar__action`,loading:Dc.value,label:e.$t(`common.save`),onClick:Oc},null,8,[`loading`,`label`])])):v(``,!0)]),_:1})]),h(Oe,{modelValue:Ks.value,"onUpdate:modelValue":n[94]||=e=>Ks.value=e,persistent:``},{default:d(()=>[h(ke,{dark:``,style:{"min-width":`560px`,"max-width":`800px`,width:`80vw`}},{default:d(()=>[h(Me,null,{default:d(()=>[S(`div`,Po,_(Z.value===null?e.$t(`templates.newTemplate`):e.$t(`templates.editTemplate`)),1)]),_:1}),h(Me,{class:`q-gutter-md`},{default:d(()=>[h(j,{modelValue:qs.value,"onUpdate:modelValue":n[91]||=e=>qs.value=e,label:e.$t(`templates.slug`),hint:e.$t(`templates.slugHint`),dark:``,dense:``,prefix:`/`,disable:Z.value!==null,rules:[t=>/^[a-z0-9][a-z0-9-]{0,63}$/.test(t)||e.$t(`templates.slugInvalid`)],"lazy-rules":``},null,8,[`modelValue`,`label`,`hint`,`disable`,`rules`]),h(j,{modelValue:Js.value,"onUpdate:modelValue":n[92]||=e=>Js.value=e,label:e.$t(`templates.description`),hint:e.$t(`templates.descriptionHint`),dark:``,dense:``,counter:``,maxlength:`120`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),h(j,{modelValue:Ys.value,"onUpdate:modelValue":n[93]||=e=>Ys.value=e,label:e.$t(`templates.content`),hint:e.$t(`templates.contentHint`),dark:``,dense:``,type:`textarea`,autogrow:``,counter:``,maxlength:`4096`,rules:[e=>e&&e.trim().length>0||``]},null,8,[`modelValue`,`label`,`hint`,`rules`]),h(Pe,{dense:``,"dense-toggle":``,label:e.$t(`templates.availableVars`),"header-class":`text-grey-6 text-caption q-pa-none`,style:{"font-size":`11px`}},{default:d(()=>[S(`div`,Fo,[(s(),f(g,null,t($s,e=>S(`div`,{key:e,class:`text-grey-5 q-mb-xs`},_(e),1)),64))])]),_:1},8,[`label`]),Q.value?(s(),f(`div`,Io,_(Q.value),1)):v(``,!0)]),_:1}),h(xe,{align:`right`},{default:d(()=>[i(h(k,{flat:``,label:e.$t(`common.cancel`)},null,8,[`label`]),[[ze]]),h(k,{flat:``,color:`primary`,label:Z.value===null?e.$t(`templates.create`):e.$t(`templates.save`),loading:Xs.value,onClick:nc},null,8,[`label`,`loading`])]),_:1})]),_:1})]),_:1},8,[`modelValue`]),h(lt,{modelValue:Zo.value,"onUpdate:modelValue":n[95]||=e=>Zo.value=e,"initial-path":X.value.path,onSelect:Qo},null,8,[`modelValue`,`initial-path`])]),_:1}))}}),[[`__scopeId`,`data-v-94c9d3db`]]);export{Lo as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{A as e,C as t,E as n,F as r,M as i,N as a,O as o,j as s,k as c,w as l}from"./QIcon-C6C3QeM4.js";import{f as u}from"./use-id-By86THzm.js";import{p as d}from"./QTooltip-CyRLTG6i.js";import{n as f,t as p}from"./touch-yfnu5R3D.js";function m(e,t,n){let r=c(e),i,a=r.left-t.event.x,o=r.top-t.event.y,s=Math.abs(a),l=Math.abs(o),u=t.direction;u.horizontal&&!u.vertical?i=a<0?`left`:`right`:!u.horizontal&&u.vertical?i=o<0?`up`:`down`:u.up&&o<0?(i=`up`,s>l&&(u.left&&a<0?i=`left`:u.right&&a>0&&(i=`right`))):u.down&&o>0?(i=`down`,s>l&&(u.left&&a<0?i=`left`:u.right&&a>0&&(i=`right`))):u.left&&a<0?(i=`left`,s<l&&(u.up&&o<0?i=`up`:u.down&&o>0&&(i=`down`))):u.right&&a>0&&(i=`right`,s<l&&(u.up&&o<0?i=`up`:u.down&&o>0&&(i=`down`)));let d=!1;if(i===void 0&&!n){if(t.event.isFirst||t.event.lastDir===void 0)return{};i=t.event.lastDir,d=!0,i===`left`||i===`right`?(r.left-=a,s=0,a=0):(r.top-=o,l=0,o=0)}return{synthetic:d,payload:{evt:e,touch:t.event.mouse!==!0,mouse:t.event.mouse===!0,position:r,direction:i,isFirst:t.event.isFirst,isFinal:n===!0,duration:Date.now()-t.event.time,distance:{x:s,y:l},offset:{x:a,y:o},delta:{x:r.left-t.event.lastX,y:r.top-t.event.lastY}}}}function h(){document.body.classList.remove(`no-pointer-events--children`)}var g=0,_=r({name:`touch-pan`,beforeMount(r,{value:_,modifiers:v}){if(!v.mouse&&!u.has.touch)return;function y(t,n){v.mouse&&n?a(t):(v.stop&&i(t),v.prevent&&e(t))}let b={uid:`qvtp_`+ g++,handler:_,modifiers:v,direction:p(v),noop:o,mouseStart(e){f(e,b)&&n(e)&&(t(b,`temp`,[[document,`mousemove`,`move`,`notPassiveCapture`],[document,`mouseup`,`end`,`passiveCapture`]]),b.start(e,!0))},touchStart(e){if(f(e,b)){let n=e.target;t(b,`temp`,[[n,`touchmove`,`move`,`notPassiveCapture`],[n,`touchcancel`,`end`,`passiveCapture`],[n,`touchend`,`end`,`passiveCapture`]]),b.start(e)}},start(t,n){if(u.is.firefox&&s(r,!0),b.lastEvt=t,n||v.stop){if(!b.direction.all&&(!n||!b.modifiers.mouseAllDir&&!b.modifiers.mousealldir)){let n=t.type.includes(`mouse`)?new MouseEvent(t.type,t):new TouchEvent(t.type,t);t.defaultPrevented&&e(n),t.cancelBubble&&i(n),Object.assign(n,{qKeyEvent:t.qKeyEvent,qClickOutside:t.qClickOutside,qAnchorHandled:t.qAnchorHandled,qClonedBy:t.qClonedBy===void 0?[b.uid]:t.qClonedBy.concat(b.uid)}),b.initialEvent={target:t.target,event:n}}i(t)}let{left:a,top:o}=c(t);b.event={x:a,y:o,time:Date.now(),mouse:n===!0,detected:!1,isFirst:!0,isFinal:!1,lastX:a,lastY:o}},move(e){if(b.event===void 0)return;let t=c(e),n=t.left-b.event.x,r=t.top-b.event.y;if(n===0&&r===0)return;b.lastEvt=e;let i=b.event.mouse===!0,a=()=>{y(e,i);let t;!v.preserveCursor&&!v.preservecursor&&(t=document.documentElement.style.cursor||``,document.documentElement.style.cursor=`grabbing`),i&&document.body.classList.add(`no-pointer-events--children`),document.body.classList.add(`non-selectable`),d(),b.styleCleanup=e=>{b.styleCleanup=void 0,t!==void 0&&(document.documentElement.style.cursor=t),document.body.classList.remove(`non-selectable`),i?e===void 0?h():setTimeout(()=>{h(),e()},50):e!==void 0&&e()}};if(b.event.detected){b.event.isFirst||y(e,b.event.mouse);let{payload:t,synthetic:n}=m(e,b,!1);t!==void 0&&(b.handler(t)===!1?b.end(e):(b.styleCleanup===void 0&&b.event.isFirst&&a(),b.event.lastX=t.position.left,b.event.lastY=t.position.top,b.event.lastDir=n?void 0:t.direction,b.event.isFirst=!1));return}if(b.direction.all||i&&(b.modifiers.mouseAllDir||b.modifiers.mousealldir)){a(),b.event.detected=!0,b.move(e);return}let o=Math.abs(n),s=Math.abs(r);o!==s&&(b.direction.horizontal&&o>s||b.direction.vertical&&o<s||b.direction.up&&o<s&&r<0||b.direction.down&&o<s&&r>0||b.direction.left&&o>s&&n<0||b.direction.right&&o>s&&n>0?(b.event.detected=!0,b.move(e)):b.end(e,!0))},end(e,t){if(b.event!==void 0){if(l(b,`temp`),u.is.firefox&&s(r,!1),t)b.styleCleanup?.(),!b.event.detected&&b.initialEvent!==void 0&&b.initialEvent.target.dispatchEvent(b.initialEvent.event);else if(b.event.detected){b.event.isFirst&&b.handler(m(e===void 0?b.lastEvt:e,b).payload);let{payload:t}=m(e===void 0?b.lastEvt:e,b,!0),n=()=>{b.handler(t)};b.styleCleanup===void 0?n():b.styleCleanup(n)}b.event=void 0,b.initialEvent=void 0,b.lastEvt=void 0}}};r.__qtouchpan=b,v.mouse&&t(b,`main`,[[r,`mousedown`,`mouseStart`,`passive${v.mouseCapture||v.mousecapture?`Capture`:``}`]]),u.has.touch&&t(b,`main`,[[r,`touchstart`,`touchStart`,`passive${v.capture?`Capture`:``}`],[r,`touchmove`,`noop`,`notPassiveCapture`]])},updated(e,t){let n=e.__qtouchpan;n!==void 0&&(t.oldValue!==t.value&&(typeof value!=`function`&&n.end(),n.handler=t.value),n.direction=p(t.modifiers))},beforeUnmount(e){let t=e.__qtouchpan;t!==void 0&&(t.event!==void 0&&t.end(),l(t,`main`),l(t,`temp`),u.is.firefox&&s(e,!1),t.styleCleanup?.(),delete e.__qtouchpan)}});export{_ as t};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ActivityFeed-COdkQaiZ.js","assets/index-CNin8jPU.js","assets/vue-i18n-C5Tx4bGk.js","assets/vue.runtime.esm-bundler-BAtKyT0Y.js","assets/chunk-DtRyYLXJ.js","assets/use-id-By86THzm.js","assets/QIcon-C6C3QeM4.js","assets/notifications-C4MxuXC7.js","assets/QBtn-DwemGTZv.js","assets/QRadio-B_TurTzx.js","assets/use-checkbox-BnkSQgTJ.js","assets/QInput-CLZtb8E0.js","assets/QCheckbox-o3UHW596.js","assets/QToggle-Dwr3hSLw.js","assets/index-C3dgH7TE.css","assets/_plugin-vue_export-helper-BzmG9fMN.js","assets/render-chat-markdown-BJsZCnSw.js","assets/QExpansionItem-C9vmJqEO.js","assets/QItemSection-O9WBXftL.js","assets/QItemLabel-BYSjzk-t.js","assets/QTooltip-CyRLTG6i.js","assets/QScrollArea-B5jf9S4y.js","assets/QScrollObserver-Cxj52Zfg.js","assets/TouchPan-BmfIMD00.js","assets/touch-yfnu5R3D.js","assets/QSpinnerDots-atHe_AUn.js","assets/documents-N8PwB_Gh.js","assets/ActivityFeed-HbMZOClq.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{$ as e,B as t,C as n,D as r,F as i,G as a,I as o,M as s,O as c,R as l,S as u,T as d,U as f,W as p,_ as m,a as h,at as g,b as _,c as v,ct as y,g as b,h as x,it as S,k as C,l as w,m as T,o as E,p as D,s as O,u as k,x as ee,y as A,z as te}from"./vue.runtime.esm-bundler-BAtKyT0Y.js";import{P as j,a as ne,i as M,m as N,n as P,r as re,s as ie,t as F,v as I}from"./QIcon-C6C3QeM4.js";import{r as ae}from"./use-id-By86THzm.js";import{s as oe}from"./notifications-C4MxuXC7.js";import{n as se,r as ce,t as le}from"./QRadio-B_TurTzx.js";import{c as ue,t as L}from"./QBtn-DwemGTZv.js";import{n as R}from"./vue-i18n-C5Tx4bGk.js";import{t as de}from"./QInput-CLZtb8E0.js";import{t as fe}from"./QCheckbox-o3UHW596.js";import{_ as pe,b as me,c as z,g as he,i as ge,m as B,n as _e,o as ve,r as ye,u as be,x as xe}from"./index-CNin8jPU.js";import{t as Se}from"./QSpinnerDots-atHe_AUn.js";import{n as Ce,t as we}from"./QItemSection-O9WBXftL.js";import{t as Te}from"./QItemLabel-BYSjzk-t.js";import{m as V,t as H}from"./QTooltip-CyRLTG6i.js";import{t as U}from"./_plugin-vue_export-helper-BzmG9fMN.js";import{t as Ee}from"./QBadge-CIC5n8w7.js";import{t as W}from"./QSpace-CrVsndpV.js";import{t as De}from"./QList-DRW_oyZ4.js";import{t as G}from"./QMenu-D_9kEp2i.js";import{t as K}from"./ClosePopup-DD10nToj.js";import{t as Oe}from"./use-quasar-DcJRs0ay.js";import{t as q}from"./QSelect-DERXhq6x.js";import{a as J,c as ke,i as Y,o as X,r as Ae,s as je,t as Me}from"./engineFeatures-DChekJQO.js";import{t as Ne}from"./kobo-commands-Ip0ObeCE.js";import{t as Pe}from"./formatters-wq5wP2If.js";import{t as Fe}from"./QPage-C6xc9fOe.js";import{a as Ie,i as Le,n as Re,r as ze,t as Be}from"./expand-template-BXNt_oWH.js";import{i as Ve,r as He,t as Ue}from"./permissionModes-CJN6Olox.js";import{t as We}from"./QBanner-BxBEdhfp.js";var Ge={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},Ke={key:0,class:`q-ml-xs`},qe=u({__name:`AgentBusyBanner`,setup(e){let{t}=R(),n=z(),i=r(`openDrawerTab`),a=D(()=>n.currentSubagents.filter(e=>e.status===`running`).length),o=D(()=>{let e=n.selectedWorkspace;return e?be(e.status):!1});function s(){i?.(`subagents`)}return(e,n)=>o.value?(l(),m(`div`,Ge,[_(Se,{size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),T(`span`,null,y(S(t)(`agentBusy.banner`)),1),a.value>0?(l(),m(`span`,Ke,` — `+y(S(t)(`agentBusy.subagentsRunning`,{n:a.value},a.value)),1)):b(``,!0),a.value>0?(l(),m(v,{key:1},[_(W),T(`span`,{class:`text-indigo-4 cursor-pointer`,style:{"text-decoration":`underline`},onClick:s},y(S(t)(`agentBusy.viewSubagents`)),1)],64)):b(``,!0)])):b(``,!0)}}),Je={class:`text-subtitle2`},Ye={class:`text-caption`},Xe=u({__name:`AgentErrorBanner`,props:{workspaceId:{}},setup(e){let t=e,{t:n}=R(),r=B();async function i(){let e=s.value;if(e){r.removeByEventId(t.workspaceId,e);try{await fetch(`/api/workspaces/${t.workspaceId}/events/${e}`,{method:`DELETE`})}catch(e){console.warn(`[agent-error-banner] failed to persist dismiss:`,e)}}}function a(e){let t=e.replace(/\u001b\[\d+m/g,``).trim();return/^warning:/i.test(t)}let o=D(()=>{let e=r.eventsFor(t.workspaceId);for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(n.kind!==`error`||n.category===`quota`)&&!(n.category===`other`&&a(n.message)))return n}return null}),s=D(()=>{let e=r.eventsFor(t.workspaceId),n=r.eventIdsFor(t.workspaceId);for(let t=e.length-1;t>=0;t--){let r=e[t];if(!(r.kind!==`error`||r.category===`quota`)&&!(r.category===`other`&&a(r.message)))return n[t]??null}return null}),c=o;return(e,t)=>S(c)?(l(),x(We,{key:0,class:`bg-negative text-white q-ma-sm`},{avatar:p(()=>[_(F,{name:`error_outline`})]),action:p(()=>[_(L,{flat:``,dense:``,round:``,icon:`close`,"aria-label":S(n)(`common.close`),onClick:i},{default:p(()=>[_(H,null,{default:p(()=>[A(y(S(n)(`common.close`)),1)]),_:1})]),_:1},8,[`aria-label`])]),default:p(()=>[T(`div`,Je,y(S(n)(`agent.error.${S(c).category}`)),1),T(`div`,Ye,y(S(c).message),1)]),_:1})):b(``,!0)}}),Ze=j({name:`StepHeader`,props:{stepper:{},step:{},goToPanel:Function},setup(t,{attrs:r}){let{proxy:{$q:i}}=n(),o=e(null),s=D(()=>t.stepper.modelValue===t.step.name),c=D(()=>{let e=t.step.disable;return e===!0||e===``}),l=D(()=>{let e=t.step.error;return e===!0||e===``}),u=D(()=>{let e=t.step.done;return!c.value&&(e===!0||e===``)}),f=D(()=>{let e=t.step.headerNav;return!c.value&&t.stepper.headerNav&&(e===!0||e===``||e===void 0)}),p=D(()=>t.step.prefix&&(!s.value||t.stepper.activeIcon===`none`)&&(!l.value||t.stepper.errorIcon===`none`)&&(!u.value||t.stepper.doneIcon===`none`)),m=D(()=>{let e=t.step.icon||t.stepper.inactiveIcon;if(s.value){let n=t.step.activeIcon||t.stepper.activeIcon;return n===`none`?e:n||i.iconSet.stepper.active}if(l.value){let n=t.step.errorIcon||t.stepper.errorIcon;return n===`none`?e:n||i.iconSet.stepper.error}if(!c.value&&u.value){let n=t.step.doneIcon||t.stepper.doneIcon;return n===`none`?e:n||i.iconSet.stepper.done}return e}),h=D(()=>{let e=l.value?t.step.errorColor||t.stepper.errorColor:void 0;if(s.value){let n=t.step.activeColor||t.stepper.activeColor||t.step.color;return n===void 0?e:n}return e===void 0?!c.value&&u.value?t.step.doneColor||t.stepper.doneColor||t.step.color||t.stepper.inactiveColor:t.step.color||t.stepper.inactiveColor:e}),g=D(()=>`q-stepper__tab col-grow flex items-center no-wrap relative-position`+(h.value===void 0?``:` text-${h.value}`)+(l.value?` q-stepper__tab--error q-stepper__tab--error-with-`+(p.value?`prefix`:`icon`):``)+(s.value?` q-stepper__tab--active`:``)+(u.value?` q-stepper__tab--done`:``)+(f.value?` q-stepper__tab--navigation q-focusable q-hoverable`:``)+(c.value?` q-stepper__tab--disabled`:``)),_=D(()=>t.stepper.headerNav&&f.value);function v(){o.value?.focus(),s.value||t.goToPanel(t.step.name)}function y(e){e.keyCode===13&&!s.value&&t.goToPanel(t.step.name)}return()=>{let e={class:g.value};f.value&&(e.onClick=v,e.onKeyup=y,Object.assign(e,c.value?{tabindex:-1,"aria-disabled":`true`}:{tabindex:r.tabindex||0}));let n=[d(`div`,{class:`q-focus-helper`,tabindex:-1,ref:o}),d(`div`,{class:`q-stepper__dot row flex-center q-stepper__line relative-position`},[d(`span`,{class:`row flex-center`},[p.value?t.step.prefix:d(F,{name:m.value})])])];if(t.step.title!==void 0&&t.step.title!==null){let e=[d(`div`,{class:`q-stepper__title`},t.step.title)];t.step.caption!==void 0&&t.step.caption!==null&&e.push(d(`div`,{class:`q-stepper__caption`},t.step.caption)),n.push(d(`div`,{class:`q-stepper__label q-stepper__line relative-position`},e))}return a(d(`div`,e,n),[[ue,_.value]])}}});function Qe(e){return d(`div`,{class:`q-stepper__step-content`},[d(`div`,{class:`q-stepper__step-inner`},ie(e.default))])}var $e={setup(e,{slots:t}){return()=>Qe(t)}},et=j({name:`QStep`,props:{...J,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(t,{slots:i,emit:a}){let{proxy:{$q:o}}=n(),s=r(I,N);if(s===N)return console.error(`QStep needs to be a child of QStepper`),N;let{getCache:c}=ke(),l=e(null),u=D(()=>s.value.modelValue===t.name),f=D(()=>!o.platform.is.ios&&o.platform.is.chrome||!u.value||!s.value.vertical?{}:{onScroll(e){let{target:n}=e;n.scrollTop>0&&(n.scrollTop=0),t.onScroll!==void 0&&a(`scroll`,e)}}),p=D(()=>typeof t.name==`string`||typeof t.name==`number`?t.name:String(t.name));function m(){let e=s.value.vertical;return e&&s.value.keepAlive?d(w,s.value.keepAliveProps.value,u.value?[d(s.value.needsUniqueKeepAliveWrapper.value?c(p.value,()=>({...$e,name:p.value})):$e,{key:p.value},i.default)]:void 0):!e||u.value?Qe(i):void 0}return()=>d(`div`,{ref:l,class:`q-stepper__step`,role:`tabpanel`,...f.value},s.value.vertical?[d(Ze,{stepper:s.value,step:t,goToPanel:s.value.goToPanel}),s.value.animated?d(V,m):m()]:[m()])}}),tt=j({name:`QStepperNavigation`,setup(e,{slots:t}){return()=>d(`div`,{class:`q-stepper__nav`},ie(t.default))}}),nt=/(-\w)/g;function rt(e){let t={};for(let n in e){let r=n.replace(nt,e=>e[1].toUpperCase());t[r]=e[n]}return t}var Z=j({name:`QStepper`,props:{...re,...je,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:X,setup(e,{slots:t}){let r=P(e,n().proxy.$q),{updatePanelsList:i,isValidPanelName:a,updatePanelIndex:o,getPanelContent:s,getPanels:c,panelDirectives:l,goToPanel:u,keepAliveProps:f,needsUniqueKeepAliveWrapper:p}=Y();te(I,D(()=>({goToPanel:u,keepAliveProps:f,needsUniqueKeepAliveWrapper:p,...e})));let m=D(()=>`q-stepper q-stepper--${e.vertical?`vertical`:`horizontal`}`+(e.flat?` q-stepper--flat`:``)+(e.bordered?` q-stepper--bordered`:``)+(r.value?` q-stepper--dark q-dark`:``)),h=D(()=>`q-stepper__header row items-stretch justify-between q-stepper__header--${e.alternativeLabels?`alternative`:`standard`}-labels`+(e.bordered||!e.flat?` q-stepper__header--border`:``)+(e.contracted?` q-stepper__header--contracted`:``)+(e.headerClass===void 0?``:` ${e.headerClass}`));function g(){let n=ie(t.message,[]);if(e.vertical){a(e.modelValue)&&o();let r=d(`div`,{class:`q-stepper__content`},ie(t.default));return n===void 0?[r]:n.concat(r)}return[d(`div`,{class:h.value},c().map(t=>{let n=rt(t.props);return d(Ze,{key:n.name,stepper:e,step:n,goToPanel:u})})),n,M(`div`,{class:`q-stepper__content q-panel-parent`},s(),`cont`,e.swipeable,()=>l.value)]}return()=>(i(t),d(`div`,{class:m.value},ne(t.navigation,g())))}}),Q=`__KOBO_OTHER__`,it=`Other — the user will provide a free-form clarification in their next message. Please wait for their input before proceeding.`;function at(e,t){if(t)return(Array.isArray(e)?e:[]).map(e=>e===`__KOBO_OTHER__`?it:e).join(`, `);let n=Array.isArray(e)?e[0]??``:e;return n===`__KOBO_OTHER__`?it:n}var ot={class:`text-grey-3`},st={key:0,class:`text-grey-6 q-ml-xs`},ct={key:1,class:`text-grey-6 q-ml-xs`},lt=u({__name:`AukqOptionLabel`,props:{label:{},description:{}},setup(e){let t=e,{t:n}=R(),r=D(()=>t.label===Q);return(t,i)=>(l(),m(v,null,[T(`span`,ot,y(r.value?S(n)(`askUserQuestion.otherOption`):e.label),1),r.value?(l(),m(`span`,st,`— `+y(S(n)(`askUserQuestion.otherOptionHint`)),1)):e.description?(l(),m(`span`,ct,`— `+y(e.description),1)):b(``,!0)],64))}}),$={class:`row items-center q-mb-xs`},ut={class:`text-caption text-uppercase text-weight-bold text-amber-4`,style:{"letter-spacing":`0.05em`}},dt={key:0,class:`text-caption text-grey-6 q-mr-sm`},ft={class:`text-body2 text-grey-2 q-mb-sm`},pt={key:0,class:`text-caption text-grey-6 q-mb-xs`},mt={class:`aukq-options column q-gutter-xs`},ht={class:`row items-center q-gutter-sm`},gt={key:3,class:`text-negative text-caption`},_t=U(u({__name:`AskUserQuestionPanel`,props:{workspaceId:{}},setup(n){let r=n,{t:i}=R(),o=z(),s=D(()=>{let e=o.peekPending(r.workspaceId);if(!(!e||e.kind!==`question`))return e}),c=D(()=>s.value?(s.value.input?.questions??[]).map(e=>({...e,options:[...e.options,{label:Q}]})):[]),u=D(()=>c.value[O.value]),d=e({}),C=e({}),w=e(!1),E=e(null),O=e(0),k=e(!1);f(c,e=>{d.value=Object.fromEntries(e.map(e=>[e.question,[]])),C.value=Object.fromEntries(e.map(e=>[e.question,``])),E.value=null,O.value=0,w.value=!1,k.value=!1},{immediate:!0});function ee(e,t){return e.header?e.header:`Q${t+1}`}function te(e){return ne(e)?`check`:`help_outline`}function j(e){let t=c.value[e];return t?t.multiSelect?(d.value[t.question]??[]).length>0:!!C.value[t.question]:!1}function ne(e){return j(e)&&e<O.value}let M=D(()=>O.value===c.value.length-1),N=D(()=>c.value.every((e,t)=>j(t)));function P(){O.value<c.value.length-1&&(O.value+=1)}function re(){O.value>0&&--O.value}async function ie(){if(!w.value){w.value=!0,E.value=null;try{let e={};for(let t of c.value)t.multiSelect?e[t.question]=at(d.value[t.question]??[],!0):e[t.question]=at(C.value[t.question]??``,!1);await o.submitDeferredAnswer(r.workspaceId,e,s.value?.toolCallId)}catch(e){E.value=e instanceof Error?e.message:String(e)}finally{w.value=!1}}}async function I(){if(!w.value){w.value=!0,E.value=null;try{await o.cancelDeferredAnswer(r.workspaceId,`User cancelled the question via the UI`,s.value?.toolCallId)}catch(e){E.value=e instanceof Error?e.message:String(e)}finally{w.value=!1}}}return(e,n)=>s.value?(l(),m(`div`,{key:0,class:g([`ask-user-question-panel q-pa-sm bg-dark text-grey-3`,{collapsed:k.value}])},[T(`div`,$,[_(F,{name:`question_answer`,size:`16px`,color:`amber-4`,class:`q-mr-sm`}),T(`div`,ut,y(S(i)(`askUserQuestion.title`)),1),_(W),c.value.length>1?(l(),m(`span`,dt,y(O.value+1)+` / `+y(c.value.length),1)):b(``,!0),_(L,{icon:k.value?`expand_more`:`expand_less`,flat:``,dense:``,size:`sm`,color:`grey-4`,"aria-label":S(i)(k.value?`askUserQuestion.expand`:`askUserQuestion.collapse`),onClick:n[0]||=e=>k.value=!k.value},{default:p(()=>[_(H,null,{default:p(()=>[A(y(S(i)(k.value?`askUserQuestion.expand`:`askUserQuestion.collapse`)),1)]),_:1})]),_:1},8,[`icon`,`aria-label`])]),u.value?a((l(),x(Z,{key:0,ref:`stepperRef`,modelValue:O.value,"onUpdate:modelValue":n[1]||=e=>O.value=e,flat:``,dark:``,animated:``,"header-nav":``,class:`aukq-stepper bg-transparent`,color:`amber-5`,"active-color":`amber-4`,"done-color":`amber-5`},{navigation:p(()=>[_(tt,null,{default:p(()=>[T(`div`,ht,[O.value>0?(l(),x(L,{key:0,flat:``,dense:``,color:`grey-4`,label:S(i)(`askUserQuestion.previous`),disable:w.value,onClick:re},null,8,[`label`,`disable`])):b(``,!0),M.value?(l(),x(L,{key:2,label:S(i)(`askUserQuestion.submit`),color:`indigo-5`,dense:``,unelevated:``,loading:w.value,disable:!N.value||w.value,onClick:ie},null,8,[`label`,`loading`,`disable`])):(l(),x(L,{key:1,label:S(i)(`askUserQuestion.next`),color:`indigo-5`,dense:``,unelevated:``,disable:!j(O.value)||w.value,onClick:P},null,8,[`label`,`disable`])),_(L,{label:S(i)(`askUserQuestion.cancel`),flat:``,dense:``,color:`grey-4`,disable:w.value,onClick:I},{default:p(()=>[_(H,null,{default:p(()=>[A(y(S(i)(`askUserQuestion.cancelTooltip`)),1)]),_:1})]),_:1},8,[`label`,`disable`]),_(W),E.value?(l(),m(`span`,gt,y(E.value),1)):b(``,!0)])]),_:1})]),default:p(()=>[(l(!0),m(v,null,t(c.value,(e,n)=>(l(),x(et,{key:n,name:n,title:ee(e,n),icon:te(n),"active-icon":`edit`,done:ne(n),"header-nav":ne(n)||n===O.value},{default:p(()=>[T(`div`,ft,y(e.question),1),e.multiSelect?(l(),m(`div`,pt,y(S(i)(`askUserQuestion.multiSelectHint`)),1)):b(``,!0),T(`div`,mt,[e.multiSelect?(l(!0),m(v,{key:0},t(e.options,t=>(l(),x(fe,{key:t.label,modelValue:d.value[e.question],"onUpdate:modelValue":t=>d.value[e.question]=t,val:t.label,dark:``,dense:``,color:`indigo-4`,disable:w.value},{default:p(()=>[_(lt,{label:t.label,description:t.description},null,8,[`label`,`description`])]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`val`,`disable`]))),128)):(l(!0),m(v,{key:1},t(e.options,t=>(l(),x(le,{key:t.label,modelValue:C.value[e.question],"onUpdate:modelValue":t=>C.value[e.question]=t,val:t.label,dark:``,dense:``,color:`indigo-4`,disable:w.value},{default:p(()=>[_(lt,{label:t.label,description:t.description},null,8,[`label`,`description`])]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`val`,`disable`]))),128))])]),_:2},1032,[`name`,`title`,`icon`,`done`,`header-nav`]))),128))]),_:1},8,[`modelValue`])),[[h,!k.value]]):b(``,!0)],2)):b(``,!0)}}),[[`__scopeId`,`data-v-27ac2145`]]);function vt(e,t){return e===`five_hour`?t(`rateLimitType.fiveHour`):e===`seven_day`?t(`rateLimitType.sevenDay`):e}function yt(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 bt(e,t,n){return e.id===`text-detected`&&e.resetAt?n(`stats.resetsAt`,{value:yt(e.resetAt)}):!e.label||e.label.trim().length===0?n(`stats.usageBucket`,{n:t+1}):vt(e.label,n)}function xt(e){return e<50?`positive`:e<75?`warning`:e<90?`orange`:`negative`}var St={class:`quota-footer`},Ct={key:0,class:`text-grey-7`},wt={class:`text-negative text-weight-medium`},Tt={class:`text-weight-medium q-mb-sm`},Et={class:`text-caption q-mb-sm`},Dt={class:`text-orange text-weight-medium`},Ot={class:`text-weight-medium q-mb-sm`},kt={class:`text-caption text-orange q-mb-sm`},At={class:`text-grey-8`},jt={class:`text-weight-medium q-mb-sm`},Mt={class:`row items-center justify-between q-mb-xs`},Nt={key:0,class:`text-caption q-mt-xs`},Pt={class:`text-caption q-mt-sm`},Ft={class:`row q-gutter-sm q-mt-sm`},It=U(u({__name:`QuotaFooter`,setup(n){let r=z(),{t:i}=R(),a=D(()=>r.currentProviderUsage),o=e(!1),s=D(()=>{let e=a.value;if(!e)return``;try{return new Date(e.fetchedAt).toLocaleTimeString()}catch{return e.fetchedAt}});function c(e,t){let n=a.value?.buckets[t];return n?bt({id:n.id,label:e,usedPct:n.usedPct,resetAt:n.resetsAt},t,i):i(`stats.usageBucket`,{n:t+1})}async function u(){if(!o.value){o.value=!0;try{await r.requestUsageRefresh(`claude-code`)}finally{o.value=!1}}}return(e,n)=>(l(),m(`span`,St,[a.value?a.value.status===`unauthenticated`?(l(),m(v,{key:1},[_(F,{name:`warning`,color:`negative`,size:`14px`,class:`q-mr-xs`}),T(`span`,wt,y(e.$t(`quotaFooter.popover.unauthenticated`)),1),_(G,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:p(()=>[T(`div`,Tt,y(e.$t(`quotaFooter.popover.title`)),1),T(`div`,Et,y(e.$t(`quotaFooter.popover.unauthenticatedHint`)),1),_(L,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:o.value,disable:o.value,onClick:u},null,8,[`label`,`loading`,`disable`])]),_:1})],64)):a.value.status===`error`?(l(),m(v,{key:2},[_(F,{name:`error_outline`,color:`orange`,size:`14px`,class:`q-mr-xs`}),T(`span`,Dt,y(e.$t(`quotaFooter.popover.error`)),1),_(G,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:p(()=>[T(`div`,Ot,y(e.$t(`quotaFooter.popover.title`)),1),T(`div`,kt,y(a.value.errorMessage),1),_(L,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:o.value,disable:o.value,onClick:u},null,8,[`label`,`loading`,`disable`])]),_:1})],64)):(l(),m(v,{key:3},[(l(!0),m(v,null,t(a.value.buckets,(e,t)=>(l(),m(`span`,{key:e.id,class:`quota-bucket-compact`},[T(`span`,At,y(c(e.label,t)),1),_(ce,{value:Math.max(0,Math.min(1,e.usedPct/100)),color:S(xt)(e.usedPct),"track-color":`grey-9`,class:`quota-bar`},null,8,[`value`,`color`]),T(`span`,{class:g([`bucket-pct`,`text-${S(xt)(e.usedPct)}`])},y(e.usedPct.toFixed(0))+`%`,3)]))),128)),_(G,{anchor:`top right`,self:`bottom right`,class:`q-pa-md quota-menu`},{default:p(()=>[T(`div`,jt,y(e.$t(`quotaFooter.popover.title`)),1),(l(!0),m(v,null,t(a.value.buckets,(t,n)=>(l(),m(`div`,{key:t.id,class:`q-mb-sm`},[T(`div`,Mt,[T(`span`,null,y(c(t.label,n)),1),T(`span`,{class:g(`text-${S(xt)(t.usedPct)}`)},y(t.usedPct.toFixed(0))+`%`,3)]),_(ce,{value:Math.max(0,Math.min(1,t.usedPct/100)),color:S(xt)(t.usedPct),"track-color":`grey-9`,class:`full-bar`},null,8,[`value`,`color`]),t.resetsAt?(l(),m(`div`,Nt,y(e.$t(`quotaFooter.popover.resetsIn`,{value:S(yt)(t.resetsAt)})),1)):b(``,!0)]))),128)),T(`div`,Pt,y(e.$t(`quotaFooter.lastUpdated`,{time:s.value})),1),T(`div`,Ft,[_(L,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`refresh`,label:e.$t(`quotaFooter.popover.refreshNow`),loading:o.value,disable:o.value,onClick:u},null,8,[`label`,`loading`,`disable`])])]),_:1})],64)):(l(),m(`span`,Ct,y(e.$t(`quotaFooter.empty`)),1))]))}}),[[`__scopeId`,`data-v-2edf9322`]]);function Lt(e,t){if(e===``)return 0;let n=e.toLowerCase(),r=t.toLowerCase(),i=0,a=0,o=-2;for(let e of n){let t=-1;for(let n=a;n<r.length;n++)if(r[n]===e){t=n;break}if(t===-1)return null;i+=t===o+1?5:1;let n=t>0?r[t-1]:``;(t===0||n===`/`||n===`-`||n===`_`||n===`.`)&&(i+=2),o=t,a=t+1}return i-t.length*.01}function Rt(e,t){return t.map(t=>({item:t,score:Lt(e,t)})).filter(e=>e.score!==null).sort((e,t)=>t.score-e.score).map(e=>e.item)}function zt(t,n,r){let i=e([]),a=e(!1),o=e(``),s=e(0),c=``,l=0;async function u(){let e=r();if(!e)return;let t=Date.now();if(!(e===c&&t-l<5e3&&i.value.length>0)){c=e,l=t;try{let t=await fetch(`/api/git/files?path=${encodeURIComponent(e)}`);if(t.ok){let e=await t.json();i.value=Array.isArray(e.files)?e.files:[]}}catch{}}}function d(){let e=n();if(!e)return null;let r=e.selectionStart??t.value.length,i=t.value.slice(0,r).match(/(?:^|\s)@([\w./-]*)$/);return i?i[1]:null}async function p(){let e=d();e===null?a.value=!1:(await u(),o.value=e,a.value=!0,s.value=0)}function m(){a.value=!1}function h(e){let r=n();if(!r)return;let i=r.selectionStart??t.value.length,a=t.value.slice(0,i),o=t.value.slice(i),s=a.match(/(?:^|\s)@[\w./-]*$/);if(!s)return;let c=s[0].startsWith(`@`)?``:s[0][0],l=(s.index??i)+c.length;t.value=`${t.value.slice(0,l)}${e} ${o}`,m()}let g=D(()=>Rt(o.value,i.value).slice(0,50));return f(()=>g.value.length,e=>{if(e===0){s.value=0;return}s.value>=e&&(s.value=e-1)}),{showFiles:a,fileMatches:g,selectedFileIndex:s,detectMentionFragment:p,replaceFragmentWith:h,closeDropdown:m}}var Bt={key:0,class:`row items-center q-gutter-xs q-mb-xs q-px-xs`,style:{"flex-wrap":`wrap`}},Vt={class:`text-caption image-tag-label`},Ht={key:2,class:`chat-slash-popup chat-file-popup`},Ut={key:3,class:`queue-banner row items-center q-pa-xs q-px-sm text-caption text-amber-6`},Wt={key:4,class:`autoloop-banner row items-center no-wrap q-pa-xs q-px-sm text-caption text-indigo-3`},Gt={class:`col`},Kt={key:5,class:`awaiting-user-banner row items-center q-pa-xs q-px-sm text-caption text-amber-5`},qt={class:`row items-center q-gutter-sm`},Jt={class:`chat-hint row items-center text-caption text-grey-8`},Yt={key:0,class:`row items-center text-caption text-amber-6 q-mr-sm`},Xt=6e4,Zt=200,Qt=U(u({__name:`ChatInput`,props:{workspaceId:{}},setup(n){let r=n,{t:s}=R(),c=Oe(),u=z(),d=oe(),h=ve(),w=he(),E=e(``),k=e(!1),ee=D(()=>be(u.selectedWorkspace?.status)),te=D(()=>Me(u.selectedWorkspace?.engine));async function j(){if(r.workspaceId){k.value=!0;try{await u.interruptAgent(r.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{k.value=!1}}}let ne=D(()=>be(u.selectedWorkspace?.status)),M=D(()=>!!u.queuedMessages[r.workspaceId]),N=e(null);function P(){let e=N.value;return e?e.getNativeElement?.()??null:null}let{showSkills:re,skillFilter:ie,selectedSkillIndex:I,groupedDropdown:ae,flatDropdown:se,fetchSkills:ce,detectSlashFragment:le,replaceFragmentWith:fe,closeDropdown:pe}=Le(E,()=>P()),{showFiles:me,fileMatches:ge,selectedFileIndex:B,detectMentionFragment:_e,replaceFragmentWith:ye,closeDropdown:xe}=zt(E,()=>P(),()=>u.workspaces.find(e=>e.id===r.workspaceId)?.worktreePath??null);function Te(e){e&&(ye(e),C(()=>P()?.focus()))}let V=e([]),U=e(null),Ee=e(!1),G=e(!1),K=e(!1),q=e(null),J=e(null),ke=e([]),Y=e(null),X=[`image/png`,`image/jpeg`,`image/gif`,`image/webp`];function Ae(e){let t=P(),n=t?.selectionStart??E.value.length,r=E.value.slice(0,n),i=E.value.slice(n);E.value=r+e+i,C(()=>{if(t){let r=n+e.length;t.focus(),t.setSelectionRange(r,r)}})}function je(){let e=`[image: ${s(`chatInput.uploading`)}]`,t=new Set(V.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 Pe(e){if(!X.includes(e.type))return;let t=crypto.randomUUID(),n=e.name||`pasted-image.png`,i=je(),a={tempId:t,originalName:n,placeholder:i,status:`uploading`};V.value.push(a),Ae(i);try{let n=new FormData;n.append(`image`,e);let i=await fetch(`/api/workspaces/${r.workspaceId}/images`,{method:`POST`,body:n});if(!i.ok){let e=await i.json();throw Error(e.error||`Upload failed`)}let a=await i.json(),o=V.value.find(e=>e.tempId===t);if(o){o.uid=a.uid,o.path=a.path,o.status=`ready`;let e=`[image: ${a.path}]`;e!==o.placeholder&&(E.value=E.value.split(o.placeholder).join(e),o.placeholder=e)}}catch{let e=V.value.find(e=>e.tempId===t);e&&(e.status=`error`)}}function Fe(e,t){fetch(`/api/workspaces/${e}/images/${t}`,{method:`DELETE`}).catch(()=>{})}function ze(e){let t=V.value.find(t=>t.tempId===e);if(t){V.value=V.value.filter(t=>t.tempId!==e);{let e=t.placeholder.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);E.value=E.value.replace(RegExp(`${e}\\s?`,`g`),``)}t.uid&&Fe(r.workspaceId,t.uid)}}function Ve(e){if(e.clipboardData){for(let t of Array.from(e.clipboardData.items))if(t.type.startsWith(`image/`)){let e=t.getAsFile();e&&Pe(e)}}}function He(e){if(e.preventDefault(),Ee.value=!1,e.dataTransfer)for(let t of Array.from(e.dataTransfer.files))X.includes(t.type)&&Pe(t)}function Ue(e){e.preventDefault(),Ee.value=!0}function We(){Ee.value=!1}function Ge(e){let t=e.target;if(t.files){for(let e of Array.from(t.files))Pe(e);t.value=``}}let Ke=D(()=>V.value.some(e=>e.status===`uploading`)),qe=D(()=>u.sessions.find(e=>e.id===u.selectedSessionId)??null);ce(),f(()=>u.chatDraft,e=>{e&&(E.value=E.value?`${E.value}\n${e}`:e,u.chatDraft=``)});let Je=!1;function Ye(){Je=!0,u.cancelQueuedMessage(r.workspaceId)}f(M,(e,t)=>{t&&!e&&!Je&&(E.value=``),Je=!1}),f(()=>r.workspaceId,e=>{let t=u.queuedMessages[e];E.value=t?t.content:``,G.value&&$()}),f(E,async()=>{await C(),await le(),await _e();let e=[];for(let t of V.value)E.value.includes(t.placeholder)||e.push(t.tempId);for(let t of e)ze(t)}),window.addEventListener(`keydown`,dt),window.addEventListener(`keyup`,ft),window.addEventListener(`blur`,pt),document.addEventListener(`visibilitychange`,mt),o(()=>{window.removeEventListener(`keydown`,dt),window.removeEventListener(`keyup`,ft),window.removeEventListener(`blur`,pt),document.removeEventListener(`visibilitychange`,mt),Y.value&&=(clearTimeout(Y.value),null),G.value&&$()});function Xe(e){if(!e)return;if(e.type===`template`){let t=w.templates.find(t=>t.slug===e.name);if(!t)return;let n=u.workspaces.find(e=>e.id===r.workspaceId)??null,i=u.gitStatsCache[r.workspaceId]??null,a=u.sessions.find(e=>e.id===u.selectedSessionId)??null,o=null;if(a)if(a.name)o=a.name;else{let e=u.sessions.findIndex(e=>e.id===a.id);o=s(`workspacePage.session`,{n:u.sessions.length-e})}let c;if(i?.prUrl){let e=i.prUrl.match(/\/pull\/(\d+)/);e&&(c=parseInt(e[1],10))}let l=Be({workspace:n?{name:n.name,workingBranch:n.workingBranch,sourceBranch:n.sourceBranch,projectPath:n.projectPath}:null,gitStats:i?{commitCount:i.commitCount,unpushedCount:i.unpushedCount,filesChanged:i.filesChanged,insertions:i.insertions,deletions:i.deletions,prNumber:c,prUrl:i.prUrl,prState:i.prState}:null,sessionName:o});fe(Re(t.content,l)),pe();return}let t=`/${e.name}`;if(e.type===`kobo`&&Ne[t]){E.value=t,pe(),ct();return}fe(`${t} `),pe()}let Ze=D(()=>{let e=r.workspaceId;if(!e)return!1;let t=u.autoLoopStates[e];return t?.auto_loop===!0&&t?.auto_loop_ready===!0}),Qe=D(()=>u.selectedWorkspace?.status===`awaiting-user`),$e=D(()=>!!u.selectedWorkspace?.archivedAt),et=D(()=>!r.workspaceId||Ze.value||Qe.value||$e.value),tt=D(()=>d.global.voiceEnabled&&!et.value),nt=e(!1);async function rt(){if(!(!r.workspaceId||nt.value)){nt.value=!0;try{await u.disableAutoLoop(r.workspaceId)}finally{nt.value=!1}}}let Z=e([]),Q=e(-1),it=e(``);async function at(){let e=r.workspaceId;try{let t=await fetch(`/api/workspaces/${e}/chat-history`);if(!t.ok)throw Error(`HTTP ${t.status}`);let{history:n}=await t.json();if(e!==r.workspaceId)return;Z.value=Array.isArray(n)?n:[]}catch(t){if(e!==r.workspaceId)return;console.error(`[ChatInput] loadHistory failed:`,t),Z.value=[]}e===r.workspaceId&&(Q.value=-1)}async function ot(e){if(!e||Z.value[0]===e)return;let t=r.workspaceId;Z.value.unshift(e),Z.value.length>Zt&&Z.value.pop();try{let n=await fetch(`/api/workspaces/${t}/chat-history`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({message:e})});if(!n.ok&&n.status!==204)throw Error(`HTTP ${n.status}`)}catch(e){console.error(`[ChatInput] pushToHistory failed:`,e)}}function st(){Q.value=-1,it.value=``}localStorage.removeItem(`kobo:chatHistory`),i(at),f(()=>r.workspaceId,at);async function ct(){let e=E.value.trim();if(!e&&V.value.length===0||et.value||Ke.value)return;let t=qe.value,n=Ne[e];if(n){h.sendChatMessage(r.workspaceId,n.prompt,u.selectedSessionId??void 0),u.markRead(r.workspaceId),u.addActivityItem(r.workspaceId,{id:`user-${Date.now()}`,type:`text`,content:n.prompt,timestamp:new Date().toISOString(),sessionId:u.selectedSessionId??void 0,meta:{sender:`user`,pending:!0}}),ot(e),st(),E.value=``;return}if(ne.value){u.queueMessage(r.workspaceId,e,u.selectedSessionId??void 0);return}u.cancelQueuedMessage(r.workspaceId);let i=e,a=V.value.filter(e=>e.status===`ready`&&e.path&&!i.includes(`[image: ${e.path}]`)).map(e=>`[image: ${e.path}]`).join(` `);a&&(i=`${i} ${a}`.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(r.workspaceId),u.addActivityItem(r.workspaceId,{id:l,type:`text`,content:i,timestamp:new Date().toISOString(),sessionId:o,meta:{sender:`user`,pending:!0}});let d=e;ot(e),st(),E.value=``,V.value=[];let f=(e,t)=>{console.error(`[ChatInput] ${t} failed:`,e),u.removeActivityItem(r.workspaceId,l),E.value=d;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(r.workspaceId,i,t.id),await u.fetchSessions(r.workspaceId)}catch(e){f(e,`startWorkspace`)}else if(t?.status===`completed`||t?.status===`error`)try{await u.startWorkspace(r.workspaceId,i,t.id,!0),await u.fetchSessions(r.workspaceId)}catch(e){f(e,`resume session`)}else h.sendChatMessage(r.workspaceId,i,u.selectedSessionId??void 0)}async function lt(){if(!(!tt.value||G.value||K.value)){if(!navigator.mediaDevices?.getUserMedia||typeof MediaRecorder>`u`){c.notify({type:`warning`,message:s(`voice.notSupported`),position:`top`,timeout:4e3});return}try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});J.value=e,ke.value=[];let t=MediaRecorder.isTypeSupported(`audio/webm`)?`audio/webm`:``,n=t?new MediaRecorder(e,{mimeType:t}):new MediaRecorder(e);n.ondataavailable=e=>{e.data&&e.data.size>0&&ke.value.push(e.data)},n.start(),q.value=n,G.value=!0,Y.value=setTimeout(()=>{$(),c.notify({type:`info`,message:s(`voice.maxDurationReached`),position:`top`,timeout:3500})},Xt)}catch{c.notify({type:`negative`,message:s(`voice.errorMicPermission`),position:`top`,timeout:5e3})}}}async function $(){if(!G.value)return;let e=q.value;if(!e)return;G.value=!1,K.value=!0,Y.value&&=(clearTimeout(Y.value),null);let t=await new Promise(t=>{e.onstop=()=>t(new Blob(ke.value,{type:`audio/webm`})),e.stop()});try{if(t.size===0)throw Error(`MIC_AUDIO_INVALID`);let e=new FormData;e.append(`audio`,t,`voice.webm`),e.append(`language`,d.global.voiceLanguage||`auto`);let n=await fetch(`/api/voice/workspaces/${encodeURIComponent(r.workspaceId)}/transcribe`,{method:`POST`,body:e});if(!n.ok){let e=await n.json().catch(()=>({}));throw Error(String(e.code??e.error??`HTTP_${n.status}`))}let i=await n.json();i.text?.trim()&&(E.value=E.value?`${E.value.trimEnd()} ${i.text.trim()}`:i.text.trim())}catch(e){let t=e instanceof Error?e.message:`TRANSCRIPTION_FAILED`;c.notify({type:`negative`,message:s({VOICE_DISABLED:`voice.errorDisabled`,MODEL_NOT_CONFIGURED:`voice.errorModelMissing`,MODEL_NOT_INSTALLED:`voice.errorModelNotInstalled`,VOICE_RUNTIME_MISSING:`voice.errorRuntimeMissing`,MIC_AUDIO_INVALID:`voice.errorAudioInvalid`,LANGUAGE_INVALID:`voice.errorLanguageInvalid`,TRANSCRIPTION_TIMEOUT:`voice.errorTranscription`}[t]??`voice.errorTranscription`),position:`top`,timeout:5e3})}finally{q.value=null,ke.value=[],J.value?.getTracks().forEach(e=>{e.stop()}),J.value=null,K.value=!1}}function ut(e){return tt.value?d.global.voicePttKey===`ctrl+space`?e.ctrlKey&&e.code===`Space`:e.key===`Alt`:!1}function dt(e){!ut(e)||e.repeat||(e.preventDefault(),lt())}function ft(e){ut(e)&&(e.preventDefault(),$())}function pt(){G.value&&$()}function mt(){document.visibilityState!==`visible`&&G.value&&$()}function ht(e){if(me.value&&ge.value.length>0){if(e.key===`ArrowDown`){e.preventDefault(),B.value=Math.min(B.value+1,ge.value.length-1);return}if(e.key===`ArrowUp`){e.preventDefault(),B.value=Math.max(B.value-1,0);return}if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey){e.preventDefault(),Te(ge.value[B.value]);return}if(e.key===`Escape`){e.preventDefault(),xe();return}}if(re.value&&se.value.length>0){if(e.key===`ArrowDown`){e.preventDefault(),I.value=Math.min(I.value+1,se.value.length-1);return}if(e.key===`ArrowUp`){e.preventDefault(),I.value=Math.max(I.value-1,0);return}if(e.key===`Tab`||e.key===`Enter`&&!e.shiftKey){e.preventDefault(),Xe(se.value[I.value]);return}if(e.key===`Escape`){e.preventDefault(),pe();return}}if(e.key===`ArrowUp`&&Z.value.length>0){let t=e.target;if(!(!t||t.selectionStart<=(E.value.indexOf(`
|
|
3
|
+
`)===-1?E.value.length:E.value.indexOf(`
|
|
4
|
+
`)))&&Q.value===-1)return;e.preventDefault(),Q.value===-1&&(it.value=E.value),Q.value<Z.value.length-1&&(Q.value++,E.value=Z.value[Q.value]);return}if(e.key===`ArrowDown`&&Q.value>=0){e.preventDefault(),Q.value--,E.value=Q.value>=0?Z.value[Q.value]:it.value;return}e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),ct())}return(e,n)=>(l(),m(`div`,{class:g([`chat-input-container column q-pa-sm`,{"chat-input-dragging":Ee.value}]),onDragover:Ue,onDragleave:We,onDrop:He},[V.value.length>0?(l(),m(`div`,Bt,[(l(!0),m(v,null,t(V.value,t=>(l(),m(`div`,{key:t.tempId,class:g([`image-tag row items-center q-px-sm q-py-xs rounded-borders`,{"image-tag--uploading":t.status===`uploading`,"image-tag--ready":t.status===`ready`,"image-tag--error":t.status===`error`}])},[t.status===`uploading`?(l(),x(Se,{key:0,size:`14px`,color:`grey-6`,class:`q-mr-xs`})):t.status===`ready`?(l(),x(F,{key:1,name:`image`,size:`14px`,color:`green-6`,class:`q-mr-xs`})):(l(),x(F,{key:2,name:`error`,size:`14px`,color:`red-6`,class:`q-mr-xs`})),T(`span`,Vt,y(t.status===`uploading`?e.$t(`chatInput.uploading`):t.path||t.originalName),1),_(L,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,class:`q-ml-xs image-tag-close`,onClick:e=>ze(t.tempId)},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`tooltip.removeImage`)),1)]),_:1})]),_:1},8,[`onClick`])],2))),128))])):b(``,!0),S(re)&&S(se).length>0?(l(),x(Ie,{key:1,class:`chat-slash-popup`,"grouped-dropdown":S(ae),"flat-dropdown":S(se),"selected-index":S(I),onSelect:Xe},null,8,[`grouped-dropdown`,`flat-dropdown`,`selected-index`])):b(``,!0),S(me)&&S(ge).length>0?(l(),m(`div`,Ht,[_(De,{dark:``,dense:``},{default:p(()=>[(l(!0),m(v,null,t(S(ge),(e,t)=>a((l(),x(Ce,{key:e,clickable:``,active:t===S(B),"active-class":`chat-file-item--active`,onClick:t=>Te(e)},{default:p(()=>[_(we,{avatar:``},{default:p(()=>[_(F,{name:`insert_drive_file`,size:`xs`,color:`grey-6`})]),_:1}),_(we,{class:`chat-file-path`},{default:p(()=>[A(y(e),1)]),_:2},1024)]),_:2},1032,[`active`,`onClick`])),[[ue]])),128))]),_:1})])):b(``,!0),M.value?(l(),m(`div`,Ut,[_(F,{name:`schedule`,size:`14px`,color:`amber-6`,class:`q-mr-sm`}),T(`span`,null,y(e.$t(`chatInput.queueBanner`)),1)])):b(``,!0),Ze.value?(l(),m(`div`,Wt,[_(F,{name:`all_inclusive`,size:`14px`,color:`indigo-4`,class:`q-mr-sm`}),T(`span`,Gt,y(e.$t(`chatInput.autoLoopBanner`)),1),_(L,{flat:``,dense:``,"no-caps":``,size:`sm`,icon:`stop_circle`,color:`orange-4`,label:e.$t(`chatInput.autoLoopStop`),loading:nt.value,disable:nt.value,onClick:rt},null,8,[`label`,`loading`,`disable`])])):b(``,!0),Qe.value&&!Ze.value?(l(),m(`div`,Kt,[_(F,{name:`question_answer`,size:`14px`,color:`amber-5`,class:`q-mr-sm`}),T(`span`,null,y(e.$t(`chatInput.awaitingUserBanner`)),1)])):b(``,!0),T(`div`,qt,[_(de,{ref_key:`chatInputRef`,ref:N,modelValue:E.value,"onUpdate:modelValue":n[0]||=e=>E.value=e,dense:``,dark:``,borderless:``,autogrow:``,readonly:M.value,placeholder:e.$t(`chatInput.placeholder`),"input-style":{maxHeight:`200px`,overflowY:`auto`},class:`chat-input col rounded-borders`,disable:et.value,onKeydown:ht,onPaste:Ve},null,8,[`modelValue`,`readonly`,`placeholder`,`disable`]),T(`input`,{ref_key:`fileInputRef`,ref:U,type:`file`,accept:`image/png,image/jpeg,image/gif,image/webp`,multiple:``,style:{display:`none`},onChange:Ge},null,544),_(L,{flat:``,dense:``,icon:`attach_file`,color:`grey-6`,disable:et.value,onClick:n[1]||=e=>U.value?.click()},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`chatInput.attachImage`)),1)]),_:1})]),_:1},8,[`disable`]),_(L,{flat:``,dense:``,icon:K.value?`hourglass_top`:G.value?`mic`:`mic_none`,color:G.value?`red-5`:K.value?`amber-6`:`grey-6`,disable:!tt.value||K.value,class:g({"voice-btn--recording":G.value}),onMousedown:O(lt,[`prevent`]),onMouseup:O($,[`prevent`]),onMouseleave:O($,[`prevent`]),onTouchstart:O(lt,[`prevent`]),onTouchend:O($,[`prevent`])},{default:p(()=>[_(H,null,{default:p(()=>[A(y(K.value?e.$t(`voice.transcribing`):G.value?e.$t(`voice.recording`):e.$t(`voice.holdToTalk`)),1)]),_:1})]),_:1},8,[`icon`,`color`,`disable`,`class`]),M.value?(l(),x(L,{key:0,flat:``,dense:``,icon:`cancel`,color:`orange`,onClick:Ye},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`chatInput.cancelQueue`)),1)]),_:1})]),_:1})):(l(),x(L,{key:1,flat:``,dense:``,icon:`send`,color:`primary`,disable:et.value||!E.value.trim()&&V.value.length===0||Ke.value,onClick:ct},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`tooltip.sendMessage`)),1)]),_:1})]),_:1},8,[`disable`]))]),T(`div`,Jt,[T(`div`,null,[n[2]||=T(`kbd`,null,`Enter`,-1),A(` `+y(e.$t(`common.send`))+` `,1),n[3]||=T(`span`,{class:`q-mx-xs`},`·`,-1),n[4]||=A(),n[5]||=T(`kbd`,null,`Shift+Enter`,-1),A(` `+y(e.$t(`common.newLine`))+` `,1),n[6]||=T(`span`,{class:`q-mx-xs`},`·`,-1),n[7]||=A(),n[8]||=T(`kbd`,null,`↑↓`,-1),A(` `+y(e.$t(`common.history`))+` `,1),n[9]||=T(`span`,{class:`q-mx-xs`},`·`,-1),n[10]||=A(),n[11]||=T(`kbd`,null,`@`,-1),A(` `+y(e.$t(`chatInput.fileSearchHint`)),1)]),_(W),K.value?(l(),m(`div`,Yt,[_(Se,{size:`14px`,color:`amber-6`,class:`q-mr-xs`}),T(`span`,null,y(e.$t(`voice.transcribing`)),1)])):b(``,!0),te.value?(l(),x(It,{key:1,class:`q-mr-md`})):b(``,!0),ee.value?(l(),x(L,{key:2,flat:``,dense:``,"no-caps":``,size:`sm`,color:`orange-4`,icon:`pause`,label:e.$t(`workspacePage.interrupt`),loading:k.value,disable:k.value,onClick:j},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`workspacePage.interruptTooltip`)),1)]),_:1})]),_:1},8,[`label`,`loading`,`disable`])):b(``,!0)])],34))}}),[[`__scopeId`,`data-v-a8b9f132`]]),$t={key:0,class:`permission-request-panel q-pa-sm bg-dark text-grey-3`},en={class:`row items-center q-mb-sm`},tn={class:`text-caption text-uppercase text-weight-bold text-amber-4`,style:{"letter-spacing":`0.05em`}},nn={class:`text-body2 text-grey-2 q-mb-xs`},rn={class:`text-weight-medium`},an={class:`q-ml-xs`},on={class:`text-caption text-grey-6 q-mb-xs`},sn={class:`permission-input-pre`},cn={class:`row items-center q-gutter-sm q-mt-sm`},ln={key:0,class:`text-negative text-caption`},un=U(u({__name:`PermissionRequestPanel`,props:{workspaceId:{}},setup(t){let n=t,{t:r}=R(),i=z(),a=D(()=>{let e=i.peekPending(n.workspaceId);if(!(!e||e.kind!==`permission`))return e}),o=D(()=>{if(!a.value)return``;try{return JSON.stringify(a.value.toolInput,null,2)}catch{return String(a.value.toolInput)}}),s=e(!1),c=e(null);f(()=>a.value?.toolCallId??null,()=>{s.value=!1,c.value=null});async function u(e){if(a.value&&!s.value){s.value=!0,c.value=null;try{await i.submitDeferredPermission(n.workspaceId,a.value.toolCallId,e,e===`deny`?r(`permissionRequest.denied`):void 0)}catch(e){c.value=e instanceof Error?e.message:String(e)}finally{s.value=!1}}}return(e,t)=>a.value?(l(),m(`div`,$t,[T(`div`,en,[_(F,{name:`security`,size:`16px`,color:`amber-4`,class:`q-mr-sm`}),T(`div`,tn,y(S(r)(`permissionRequest.title`)),1)]),T(`div`,nn,[T(`span`,rn,y(S(r)(`permissionRequest.tool`))+`:`,1),T(`code`,an,y(a.value.toolName),1)]),T(`div`,on,y(S(r)(`permissionRequest.input`)),1),T(`pre`,sn,y(o.value),1),T(`div`,cn,[_(L,{label:S(r)(`permissionRequest.allow`),color:`indigo-5`,dense:``,unelevated:``,loading:s.value,disable:s.value,onClick:t[0]||=e=>u(`allow`)},null,8,[`label`,`loading`,`disable`]),_(L,{label:S(r)(`permissionRequest.deny`),flat:``,dense:``,color:`grey-4`,disable:s.value,onClick:t[1]||=e=>u(`deny`)},null,8,[`label`,`disable`]),_(W),c.value?(l(),m(`span`,ln,y(c.value),1)):b(``,!0)])])):b(``,!0)}}),[[`__scopeId`,`data-v-12227c33`]]),dn={key:0,class:`quota-backoff-banner row items-center q-px-md q-py-sm`,style:{"background-color":`#b87333`,color:`#f0f0f0`}},fn={class:`text-body2`},pn=u({__name:`QuotaBackoffBanner`,props:{workspaceId:{}},setup(t){let n=t,{t:r}=R(),i=Oe(),a=z(),o=e(!1),s=D(()=>a.pendingQuotaBackoffs[n.workspaceId]),c=D(()=>a.workspaces.find(e=>e.id===n.workspaceId)),u=D(()=>a.autoLoopStates[n.workspaceId]),d=D(()=>c.value?.status===`quota`&&u.value?.auto_loop===!0&&s.value!==void 0),f=D(()=>{let e=s.value?.targetAt;return e?new Date(e).toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`}):``}),h=D(()=>{let e=s.value?.resetsAt;return e?new Date(e).toLocaleString():``});async function g(){if(!o.value){o.value=!0;try{await a.cancelQuotaBackoff(n.workspaceId),i.notify({type:`info`,message:r(`quotaBackoff.cancelled`),position:`top`,timeout:4e3})}catch(e){i.notify({type:`negative`,message:String(e),position:`top`,timeout:4e3})}finally{o.value=!1}}}return(e,t)=>d.value?(l(),m(`div`,dn,[_(F,{name:`hourglass_top`,size:`18px`,class:`q-mr-sm`}),T(`span`,fn,y(S(r)(`quotaBackoff.banner.title`,{time:f.value})),1),s.value?.resetsAt?(l(),x(H,{key:0},{default:p(()=>[A(y(S(r)(`quotaBackoff.banner.tooltip`,{resets_at:h.value})),1)]),_:1})):b(``,!0),_(W),_(L,{flat:``,dense:``,"no-caps":``,size:`sm`,color:`grey-3`,label:S(r)(`quotaBackoff.banner.cancel`),loading:o.value,onClick:g},null,8,[`label`,`loading`])])):b(``,!0)}}),mn={class:`text-subtitle2`},hn={class:`text-caption`},gn=u({__name:`StaleSessionBanner`,props:{workspaceId:{}},setup(e){let t=e,n=z(),r=D(()=>{if(!n.selectedSessionId||n.sessions.length<2)return!1;let e=n.sessions[0];if(!e||e.id===n.selectedSessionId)return!1;let r=n.workspaces.find(e=>e.id===t.workspaceId);return!r||!be(r.status)?!1:n.autoLoopStates[t.workspaceId]?.auto_loop===!0});function i(){let e=n.sessions[0];e&&n.selectSession(e.id)}return(e,t)=>r.value?(l(),x(We,{key:0,class:`bg-indigo-9 text-white q-ma-sm`,rounded:``},{avatar:p(()=>[_(F,{name:`loop`})]),action:p(()=>[_(L,{flat:``,dense:``,"no-caps":``,label:e.$t(`staleSessionBanner.switchToCurrent`),onClick:i},null,8,[`label`])]),default:p(()=>[T(`div`,mn,y(e.$t(`staleSessionBanner.title`)),1),T(`div`,hn,y(e.$t(`staleSessionBanner.message`)),1)]),_:1})):b(``,!0)}}),_n={key:0,class:`row items-center q-pa-xs q-px-sm bg-dark text-grey-5 text-caption`},vn=u({__name:`WakeupBanner`,setup(t){let{t:n}=R(),r=z(),a=e(Date.now()),o=null;i(()=>{o=setInterval(()=>{a.value=Date.now()},1e3)}),s(()=>{o&&clearInterval(o)});let c=D(()=>{let e=r.selectedWorkspace;return e?r.pendingWakeups[e.id]??null:null}),u=D(()=>r.selectedWorkspace?!!c.value:!1),d=D(()=>{if(!c.value)return 0;let e=Math.ceil((new Date(c.value.targetAt).getTime()-a.value)/1e3);return Math.max(0,e)}),f=D(()=>d.value===0?n(`wakeup.firing`):n(`wakeup.scheduledIn`,{n:d.value}));function h(){let e=r.selectedWorkspace;e&&r.cancelPendingWakeup(e.id)}return(e,t)=>u.value?(l(),m(`div`,_n,[_(F,{name:`schedule`,size:`14px`,color:`amber-4`,class:`q-mr-sm`}),T(`span`,null,[A(y(f.value)+` `,1),c.value?.reason?(l(),x(H,{key:0,anchor:`top middle`,self:`bottom middle`,offset:[0,6]},{default:p(()=>[A(y(S(n)(`wakeup.reason`,{reason:c.value.reason})),1)]),_:1})):b(``,!0)]),_(W),_(L,{flat:``,dense:``,round:``,size:`xs`,icon:`close`,color:`grey-5`,"aria-label":S(n)(`wakeup.cancel`),onClick:h},{default:p(()=>[_(H,null,{default:p(()=>[A(y(S(n)(`wakeup.cancel`)),1)]),_:1})]),_:1},8,[`aria-label`])])):b(``,!0)}}),yn={class:`wp-header row items-center q-px-md q-py-sm no-wrap`},bn={class:`text-body1 text-weight-medium text-grey-3 ellipsis`,style:{"max-width":`480px`}},xn={class:`row items-center no-wrap text-caption text-grey-5`},Sn={class:`row items-center no-wrap text-caption text-grey-5`},Cn={class:`row items-center no-wrap text-caption text-grey-5`},wn={key:1,class:`text-body2 text-grey-8`},Tn={key:0,class:`wp-subheader column q-px-md q-pb-sm`},En=[`title`],Dn={key:1,class:`wp-purged-banner row items-center q-px-md q-py-sm`},On={class:`text-caption text-grey-3`},kn={key:2,class:`wp-archived-banner row items-center q-px-md q-py-sm`},An={class:`text-caption text-grey-4`},jn={key:3,class:`wp-pending-prompt-banner row items-center q-px-md q-py-sm`},Mn={class:`text-caption text-grey-3`},Nn={class:`col column items-center justify-center`},Pn={class:`text-grey-6 text-caption q-mt-sm`},Fn={class:`text-subtitle1`},In=U(u({__name:`WorkspacePage`,setup(t){let n=ee(()=>Promise.all([_e(()=>import(`./ActivityFeed-COdkQaiZ.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)),r=Oe(),o=z(),{t:s}=R(),{timeAgo:u}=Pe();function d(e){return e===`awaiting-user`?s(`workspaceStatus.awaitingUser`):e}let h=e(!1),C=e(!1),w=new Set,te=D(()=>!!o.selectedWorkspace?.initialPrompt&&o.selectedWorkspace.initialPrompt.length>0&&!N.value&&!o.selectedWorkspace?.archivedAt),j=e(``);f(()=>o.selectedWorkspace?.description??``,e=>{j.value=e},{immediate:!0});async function ne(){if(!o.selectedWorkspace)return;let e=j.value.trim();if(e!==(o.selectedWorkspace.description??``)){if(e.length>200){r.notify({type:`negative`,message:s(`workspace.descriptionTooLong`),position:`top`});return}try{await o.updateWorkspaceDescription(o.selectedWorkspace.id,e.length>0?e:null)}catch(e){let t=e instanceof Error?e.message:s(`workspace.descriptionSaveFailed`);r.notify({type:`negative`,message:t,position:`top`})}}}let M=e(new Set),N=D(()=>be(o.selectedWorkspace?.status));f(N,e=>{e||(M.value=new Set)}),f(()=>o.selectedWorkspaceId,e=>{M.value=new Set,e&&o.fetchPendingWakeup(e)},{immediate:!0});function P(e){if(!N.value)return;let t=new Set(M.value);t.add(e),M.value=t}function re(e){w.add(e),e.finally(()=>{w.delete(e)})}async function ie(){w.size!==0&&await Promise.allSettled([...w])}async function I(){if(o.selectedWorkspaceId){h.value=!0;try{await ie(),await o.startWorkspace(o.selectedWorkspaceId)}catch(e){let t=e instanceof Error?e.message:s(`workspacePage.startFailed`);r.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{h.value=!1}}}e(!1);let oe=e(!1);async function ce(){if(!o.selectedWorkspaceId||oe.value)return;let e=o.selectedWorkspaceId;oe.value=!0;try{await o.unarchiveWorkspace(e),r.notify({type:`positive`,message:s(`workspacePage.unarchived`),position:`top`,timeout:3e3})}catch(e){let t=e instanceof Error?e.message:s(`workspacePage.unarchiveFailed`);r.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{oe.value=!1}}async function le(){if(o.selectedWorkspaceId){C.value=!0;try{await o.stopWorkspace(o.selectedWorkspaceId)}catch(e){let t=e instanceof Error?e.message:s(`workspacePage.stopFailed`);r.notify({type:`negative`,message:t,position:`top`,timeout:6e3})}finally{C.value=!1}}}let ue=D(()=>o.selectedWorkspace?.engine??`claude-code`),fe=D(()=>(Ve[ue.value]??He).map(e=>({label:s(e.i18nLabelKey),value:e.value}))),he=D(()=>(ze[ue.value]??ze[`claude-code`]).map(e=>({label:U(s(e.i18nLabelKey)),value:e.value}))),B=D(()=>{let e=o.selectedWorkspace,t=e?o.autoLoopStates[e.id]?.auto_loop??e.autoLoop:!1;return(Ue[ue.value]??Ue[`claude-code`]).map(e=>({label:s(`agentPermissionMode.${e}`),value:e,disable:e===`plan`&&t}))}),ve=D({get:()=>o.selectedWorkspace?.model??`auto`,set:e=>{o.selectedWorkspaceId&&(P(`model`),re(o.updateModel(o.selectedWorkspaceId,e)))}}),V=D({get:()=>o.selectedWorkspace?.reasoningEffort??`auto`,set:e=>{o.selectedWorkspaceId&&(P(`reasoningEffort`),re(o.updateReasoningEffort(o.selectedWorkspaceId,e)))}});function U(e){let t=e.indexOf(`:`);return t>=0?e.slice(t+1).trim():e}function De(e){return he.value.find(t=>t.value===e)?.label??e}let G=D({get:()=>o.selectedWorkspace?.agentPermissionMode??`bypass`,set:e=>{o.selectedWorkspaceId&&(P(`agentPermissionMode`),re(o.updateAgentPermissionMode(o.selectedWorkspaceId,e)))}}),J=ye(),ke=ge(),Y=D(()=>o.selectedWorkspaceId),X=D(()=>o.selectedWorkspace),je=D(()=>o.sessions),Me=D({get:()=>o.selectedSessionId,set:e=>{if(e===`__new__`){Ke();return}if(!e)return;o.selectSession(e);let t={...J.query};t.session=e,ke.replace({query:t})}}),Ne=D(()=>[...o.sessions.map((e,t)=>({label:e.name??s(`workspacePage.session`,{n:o.sessions.length-t}),value:e.id,caption:u(e.startedAt),isSession:!0})),{label:s(`workspacePage.newSession`),value:`__new__`,caption:``,isSession:!1}]),Ie=e(!1),Le=e(null),Re=e(``),Be=e(!1);function We(e,t){let n=o.sessions.find(t=>t.id===e);n&&(Le.value={id:e},Re.value=n.name??t,Ie.value=!0)}async function Ge(){if(!(!Le.value||!o.selectedWorkspaceId))try{await o.renameSession(o.selectedWorkspaceId,Le.value.id,Re.value.trim())}catch(e){console.error(`[WorkspacePage] renameSession failed:`,e),r.notify({type:`negative`,message:s(`workspacePage.renameFailed`),position:`top`})}finally{Ie.value=!1}}async function Ke(){if(o.selectedWorkspaceId){Be.value=!0;try{await o.createSession(o.selectedWorkspaceId)}catch(e){console.error(`[WorkspacePage] createSession failed:`,e);let t=e instanceof Error?e.message:null;r.notify({type:`negative`,message:t??s(`workspacePage.createSessionFailed`),position:`top`,timeout:6e3})}finally{Be.value=!1}}}return i(()=>{let e=J.params.id;e&&(o.selectWorkspace(e),o.fetchPendingWakeup(e));let t=J.query.session;t&&o.selectSession(t)}),f(()=>J.params.id,e=>{e&&e!==o.selectedWorkspaceId&&o.selectWorkspace(e)}),f(()=>o.selectedWorkspaceId,e=>{e===null&&J.params.id&&ke.push({name:`workspace`})}),(e,t)=>(l(),x(Fe,{class:`column no-wrap`,style:{height:`100vh`}},{default:p(()=>[T(`div`,yn,[X.value?(l(),m(v,{key:0},[T(`span`,bn,[A(y(X.value.name)+` `,1),_(H,null,{default:p(()=>[A(y(X.value.name),1)]),_:1})]),_(Ee,{label:d(X.value.status),color:[`error`,`quota`].includes(X.value.status)?`red-9`:X.value.status===`awaiting-user`?`amber-9`:S(be)(X.value.status)?`green-9`:`grey-8`,class:`q-ml-sm`,style:{"font-size":`10px`}},null,8,[`label`,`color`]),_(Ae),je.value.length>0?(l(),x(q,{key:0,modelValue:Me.value,"onUpdate:modelValue":t[0]||=e=>Me.value=e,options:Ne.value,"emit-value":``,"map-options":``,dense:``,dark:``,borderless:``,"options-dense":``,loading:Be.value,disable:Be.value,class:`q-ml-sm`,style:{"min-width":`160px`,"max-width":`220px`,"font-size":`11px`}},{option:p(e=>[e.opt.isSession?b(``,!0):(l(),x(ae,{key:0,spaced:``})),_(Ce,c(e.itemProps,{clickable:``,dense:``,class:`row items-center no-wrap`}),{default:p(()=>[_(we,null,{default:p(()=>[_(Te,{class:g(e.opt.isSession?``:`text-grey-5`)},{default:p(()=>[A(y(e.opt.label),1)]),_:2},1032,[`class`]),e.opt.caption?(l(),x(Te,{key:0,caption:``},{default:p(()=>[A(y(e.opt.caption),1)]),_:2},1024)):b(``,!0)]),_:2},1024),e.opt.isSession?(l(),x(we,{key:0,side:``},{default:p(()=>[_(L,{icon:`more_vert`,flat:``,dense:``,round:``,size:`xs`,color:`grey-6`,onClick:O(t=>We(e.opt.value,e.opt.label),[`stop`])},null,8,[`onClick`])]),_:2},1024)):b(``,!0)]),_:2},1040)]),_:1},8,[`modelValue`,`options`,`loading`,`disable`])):b(``,!0),_(W),_(q,{modelValue:G.value,"onUpdate:modelValue":t[1]||=e=>G.value=e,options:B.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:p(()=>[T(`span`,xn,[_(F,{name:G.value===`plan`?`visibility`:G.value===`strict`?`lock`:G.value===`interactive`?`security`:`flash_on`,size:`12px`,color:`amber-6`,class:`q-mr-xs`},null,8,[`name`]),A(` `+y(B.value.find(e=>e.value===G.value)?.label??G.value)+` `,1),M.value.has(`agentPermissionMode`)?(l(),x(F,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):b(``,!0)])]),_:1},8,[`modelValue`,`options`]),_(q,{modelValue:ve.value,"onUpdate:modelValue":t[2]||=e=>ve.value=e,options:fe.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:p(()=>[T(`span`,Sn,[_(F,{name:`auto_awesome`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),A(` `+y(fe.value.find(e=>e.value===ve.value)?.label??ve.value)+` `,1),M.value.has(`model`)?(l(),x(F,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):b(``,!0)])]),_:1},8,[`modelValue`,`options`]),_(q,{modelValue:V.value,"onUpdate:modelValue":t[3]||=e=>V.value=e,options:he.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:p(()=>[T(`span`,Cn,[_(F,{name:`psychology`,size:`12px`,color:`amber-6`,class:`q-mr-xs`}),A(` `+y(De(V.value))+` `,1),M.value.has(`reasoningEffort`)?(l(),x(F,{key:0,name:`schedule`,size:`11px`,color:`orange-6`,class:`q-ml-xs`},{default:p(()=>[_(H,null,{default:p(()=>[A(y(e.$t(`workspacePage.pendingNextRun`)),1)]),_:1})]),_:1})):b(``,!0)])]),_:1},8,[`modelValue`,`options`]),S(be)(X.value.status)&&!X.value.archivedAt?(l(),x(L,{key:1,dense:``,"no-caps":``,size:`sm`,color:`negative`,icon:`stop`,label:e.$t(`common.stop`),class:`q-mr-xs`,loading:C.value,disable:C.value,onClick:le},null,8,[`label`,`loading`,`disable`])):b(``,!0)],64)):(l(),m(`span`,wn,y(e.$t(`workspacePage.selectWorkspace`)),1))]),X.value?(l(),m(`div`,Tn,[_(de,{modelValue:j.value,"onUpdate:modelValue":t[4]||=e=>j.value=e,dense:``,dark:``,borderless:``,placeholder:S(s)(`workspace.descriptionPlaceholder`),maxlength:200,"input-class":`text-caption text-grey-5`,class:`workspace-description-input`,style:{width:`100%`,"max-width":`960px`},onBlur:ne,onKeydown:E(O(ne,[`prevent`]),[`enter`])},null,8,[`modelValue`,`placeholder`,`onKeydown`]),X.value?.agentDescription?(l(),m(`div`,{key:0,class:`text-caption text-grey-7 q-mt-xs ellipsis`,style:{"font-style":`italic`,"max-width":`960px`},title:S(s)(`workspace.agentDescriptionTooltip`)},y(X.value.agentDescription),9,En)):b(``,!0)])):b(``,!0),_(ae,{dark:``}),X.value?.worktreePurgedAt?(l(),m(`div`,Dn,[_(F,{name:`cleaning_services`,size:`16px`,color:`orange-5`,class:`q-mr-sm`}),T(`span`,On,y(e.$t(`workspacePage.worktreePurgedBanner`)),1),_(W),_(L,{flat:``,dense:``,size:`sm`,"no-caps":``,color:`grey-5`,icon:`info_outline`,label:e.$t(`common.details`)},{default:p(()=>[_(H,{"max-width":`320px`,anchor:`bottom right`,self:`top right`},{default:p(()=>[A(y(e.$t(`workspacePage.worktreePurgedTooltip`)),1)]),_:1})]),_:1},8,[`label`])])):X.value?.archivedAt?(l(),m(`div`,kn,[_(F,{name:`inventory_2`,size:`16px`,color:`grey-5`,class:`q-mr-sm`}),T(`span`,An,y(e.$t(`workspacePage.archivedBanner`)),1),_(W),_(L,{flat:``,dense:``,size:`sm`,"no-caps":``,color:`indigo-4`,icon:`unarchive`,label:e.$t(`common.unarchive`),loading:oe.value,disable:oe.value,onClick:ce},null,8,[`label`,`loading`,`disable`])])):b(``,!0),te.value?(l(),m(`div`,jn,[_(F,{name:`warning`,size:`16px`,color:`amber-5`,class:`q-mr-sm`}),T(`span`,Mn,y(e.$t(`workspacePage.pendingInitialPromptBanner`)),1),_(W),_(L,{unelevated:``,dense:``,size:`sm`,"no-caps":``,color:`indigo-5`,icon:`play_arrow`,label:e.$t(`common.start`),loading:h.value,disable:h.value,onClick:I},null,8,[`label`,`loading`,`disable`])])):b(``,!0),Y.value?(l(),x(Xe,{key:4,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),Y.value?(l(),x(gn,{key:5,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),Y.value?(l(),x(pn,{key:6,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),Y.value?(l(),x(k,{key:7},{fallback:p(()=>[T(`div`,Nn,[_(Se,{size:`40px`,color:`indigo-4`}),T(`div`,Pn,y(e.$t(`common.loading`)),1)])]),default:p(()=>[_(S(n),{class:`col`,style:{"min-height":`0`},"workspace-id":Y.value},null,8,[`workspace-id`])]),_:1})):b(``,!0),_(qe),_(vn),Y.value?(l(),x(_t,{key:8,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),Y.value?(l(),x(un,{key:9,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),Y.value?(l(),x(Qt,{key:10,"workspace-id":Y.value},null,8,[`workspace-id`])):b(``,!0),_(pe,{modelValue:Ie.value,"onUpdate:modelValue":t[6]||=e=>Ie.value=e,persistent:``},{default:p(()=>[_(me,{dark:``,style:{"min-width":`320px`}},{default:p(()=>[_(xe,null,{default:p(()=>[T(`div`,Fn,y(S(s)(`workspacePage.renameSessionTitle`)),1)]),_:1}),_(xe,null,{default:p(()=>[_(de,{modelValue:Re.value,"onUpdate:modelValue":t[5]||=e=>Re.value=e,label:S(s)(`workspacePage.sessionNameLabel`),dark:``,dense:``,autofocus:``,onKeyup:E(Ge,[`enter`])},null,8,[`modelValue`,`label`])]),_:1}),_(se,{align:`right`},{default:p(()=>[a(_(L,{flat:``,label:S(s)(`common.cancel`)},null,8,[`label`]),[[K]]),_(L,{flat:``,color:`primary`,label:S(s)(`workspacePage.renameSession`),disable:!Re.value.trim(),onClick:Ge},null,8,[`label`,`disable`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),_:1}))}}),[[`__scopeId`,`data-v-232678d2`]]);export{In as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$ as e,C as t,G as n,N as r,T as i,U as a,a as o,k as s,p as c}from"./vue.runtime.esm-bundler-BAtKyT0Y.js";import{L as l,N as u,P as d,S as f,l as p,n as m,r as h,s as g,t as _}from"./QIcon-C6C3QeM4.js";import{t as v}from"./QCheckbox-o3UHW596.js";import{m as y}from"./QTooltip-CyRLTG6i.js";var b=d({name:`QBtnGroup`,props:{unelevated:Boolean,outline:Boolean,flat:Boolean,rounded:Boolean,square:Boolean,push:Boolean,stretch:Boolean,glossy:Boolean,spread:Boolean},setup(e,{slots:t}){let n=c(()=>{let t=[`unelevated`,`outline`,`flat`,`rounded`,`square`,`push`,`stretch`,`glossy`].filter(t=>e[t]).map(e=>`q-btn-group--${e}`).join(` `);return`q-btn-group row no-wrap${t.length===0?``:` `+t}`+(e.spread?` q-btn-group--spread`:` inline`)});return()=>i(`div`,{class:n.value},g(t.default))}}),x=[`none`,`strict`,`leaf`,`leaf-filtered`];function S(e){if(e.icon!==void 0)return i(_,{class:`q-tree__icon q-mr-sm`,name:e.icon,color:e.iconColor});let t=e.img||e.avatar;if(t)return i(`img`,{class:`q-tree__${e.img?`img`:`avatar`} q-mr-sm`,src:t})}var C=d({name:`QTree`,props:{...h,nodes:{type:Array,required:!0},nodeKey:{type:String,required:!0},labelKey:{type:String,default:`label`},childrenKey:{type:String,default:`children`},dense:Boolean,color:String,controlColor:String,textColor:String,selectedColor:String,icon:String,tickStrategy:{type:String,default:`none`,validator:e=>x.includes(e)},ticked:Array,expanded:Array,selected:{},noSelectionUnset:Boolean,defaultExpandAll:Boolean,accordion:Boolean,filter:String,filterMethod:Function,duration:{},noConnectors:Boolean,noTransition:Boolean,noNodesLabel:String,noResultsLabel:String},emits:[`update:expanded`,`update:ticked`,`update:selected`,`lazyLoad`,`afterShow`,`afterHide`],setup(d,{slots:h,emit:g}){let{proxy:b}=t(),{$q:x}=b,C=m(d,x),w=e({}),T=e(d.ticked||[]),E=e(d.expanded||[]),D={};r(()=>{D={}});let O=c(()=>`q-tree q-tree--${d.dense?`dense`:`standard`}`+(d.noConnectors?` q-tree--no-connectors`:``)+(C.value?` q-tree--dark`:``)+(d.color===void 0?``:` text-${d.color}`)),k=c(()=>d.selected!==void 0),A=c(()=>d.icon||x.iconSet.tree.icon),j=c(()=>d.controlColor||d.color),M=c(()=>d.textColor===void 0?``:` text-${d.textColor}`),N=c(()=>{let e=d.selectedColor||d.color;return e?` text-${e}`:``}),P=c(()=>d.filterMethod===void 0?(e,t)=>{let n=t.toLowerCase();return e[d.labelKey]&&e[d.labelKey].toLowerCase().includes(n)}:d.filterMethod),F=c(()=>{let e={},t=(n,r)=>{let i=n.tickStrategy||(r?r.tickStrategy:d.tickStrategy),a=n[d.nodeKey],o=n[d.childrenKey]&&Array.isArray(n[d.childrenKey])&&n[d.childrenKey].length!==0,s=!n.disabled&&k.value&&n.selectable!==!1,c=!n.disabled&&n.expandable!==!1,l=i!==`none`,u=i===`strict`,f=i===`leaf-filtered`,p=i===`leaf`||i===`leaf-filtered`,m=!n.disabled&&n.tickable!==!1;p&&m===!0&&r&&r.tickable!==!0&&(m=!1);let h=n.lazy;h===!0&&w.value[a]!==void 0&&Array.isArray(n[d.childrenKey])&&(h=w.value[a]);let g={key:a,parent:r,isParent:o,lazy:h,disabled:n.disabled,link:!n.disabled&&(s||c&&(o||h===!0)),children:[],matchesFilter:d.filter?P.value(n,d.filter):!0,selected:a===d.selected&&s,selectable:s,expanded:o?E.value.includes(a):!1,expandable:c,noTick:n.noTick===!0||!u&&h&&h!==`loaded`,tickable:m,tickStrategy:i,hasTicking:l,strictTicking:u,leafFilteredTicking:f,leafTicking:p,ticked:u?T.value.includes(a):o?!1:T.value.includes(a)};if(e[a]=g,o&&(g.children=n[d.childrenKey].map(e=>t(e,g)),d.filter&&(g.matchesFilter===!0?g.noTick!==!0&&g.disabled!==!0&&g.tickable===!0&&f&&g.children.every(e=>e.matchesFilter!==!0||e.noTick===!0||e.tickable!==!0)&&(g.tickable=!1):g.matchesFilter=g.children.some(e=>e.matchesFilter)),g.matchesFilter===!0&&(g.noTick!==!0&&u!==!0&&g.children.every(e=>e.noTick)&&(g.noTick=!0),p))){if(g.ticked=!1,g.indeterminate=g.children.some(e=>e.indeterminate===!0),g.tickable=g.tickable===!0&&g.children.some(e=>e.tickable),g.indeterminate!==!0){let e=g.children.reduce((e,t)=>t.ticked===!0?e+1:e,0);e===g.children.length?g.ticked=!0:e>0&&(g.indeterminate=!0)}g.indeterminate===!0&&(g.indeterminateNextState=g.children.every(e=>e.tickable!==!0||e.ticked!==!0))}return g};return d.nodes.forEach(e=>t(e,null)),e});a(()=>d.ticked,e=>{T.value=e}),a(()=>d.expanded,e=>{E.value=e});function I(e){let t=(n,r)=>{if(n||!r)return n;if(Array.isArray(r))return r.reduce(t,n);if(r[d.nodeKey]===e)return r;if(r[d.childrenKey])return t(null,r[d.childrenKey])};return t(null,d.nodes)}function L(){return T.value.map(e=>I(e))}function R(){return E.value.map(e=>I(e))}function z(e){return e&&F.value[e]?F.value[e].expanded:!1}function B(){d.expanded===void 0?E.value=[]:g(`update:expanded`,[])}function V(){let e=[],t=n=>{n[d.childrenKey]&&n[d.childrenKey].length!==0&&n.expandable!==!1&&n.disabled!==!0&&(e.push(n[d.nodeKey]),n[d.childrenKey].forEach(t))};d.nodes.forEach(t),d.expanded===void 0?E.value=e:g(`update:expanded`,e)}function H(e,t,n=I(e),r=F.value[e]){if(r.lazy&&r.lazy!==`loaded`){if(r.lazy===`loading`)return;w.value[e]=`loading`,Array.isArray(n[d.childrenKey])||(n[d.childrenKey]=[]),g(`lazyLoad`,{node:n,key:e,done:t=>{w.value[e]=`loaded`,n[d.childrenKey]=Array.isArray(t)?t:[],s(()=>{F.value[e]?.isParent===!0&&U(e,!0)})},fail:()=>{delete w.value[e],n[d.childrenKey].length===0&&delete n[d.childrenKey]}})}else r.isParent===!0&&r.expandable===!0&&U(e,t)}function U(e,t){let n=E.value,r=d.expanded!==void 0;if(r&&(n=[...n]),t){if(d.accordion&&F.value[e]){let t=[];F.value[e].parent?F.value[e].parent.children.forEach(n=>{n.key!==e&&n.expandable===!0&&t.push(n.key)}):d.nodes.forEach(n=>{let r=n[d.nodeKey];r!==e&&t.push(r)}),t.length!==0&&(n=n.filter(e=>!t.includes(e)))}n=[...n,e].filter((e,t,n)=>n.indexOf(e)===t)}else n=n.filter(t=>t!==e);r?g(`update:expanded`,n):E.value=n}function W(e){return e&&F.value[e]?F.value[e].ticked:!1}function G(e,t){let n=T.value,r=d.ticked!==void 0;r&&(n=[...n]),n=t?[...n,...e].filter((e,t,n)=>n.indexOf(e)===t):n.filter(t=>!e.includes(t)),r&&g(`update:ticked`,n)}function K(e,t,n){let r={tree:b,node:e,key:n,color:d.color,dark:C.value};return l(r,`expanded`,()=>t.expanded,e=>{e!==t.expanded&&H(n,e)}),l(r,`ticked`,()=>t.ticked,e=>{e!==t.ticked&&G([n],e)}),r}function q(e){return(d.filter?e.filter(e=>F.value[e[d.nodeKey]].matchesFilter):e).map(e=>X(e))}function J(){g(`afterShow`)}function Y(){g(`afterHide`)}function X(e){let t=e[d.nodeKey],r=F.value[t],a=e.header&&h[`header-${e.header}`]||h[`default-header`],s=r.isParent===!0?q(e[d.childrenKey]):[],c=s.length!==0||r.lazy&&r.lazy!==`loaded`,l=e.body&&h[`body-${e.body}`]||h[`default-body`],m=a!==void 0||l!==void 0?K(e,r,t):null;return l!==void 0&&(l=i(`div`,{class:`q-tree__node-body relative-position`},[i(`div`,{class:M.value},[l(m)])])),i(`div`,{key:t,class:`q-tree__node relative-position q-tree__node--${c?`parent`:`child`}`},[i(`div`,{class:`q-tree__node-header relative-position row no-wrap items-center`+(r.link===!0?` q-tree__node--link q-hoverable q-focusable`:``)+(r.selected===!0?` q-tree__node--selected`:``)+(r.disabled===!0?` q-tree__node--disabled`:``),tabindex:r.link===!0?0:-1,ariaExpanded:s.length===0?null:r.expanded,role:`treeitem`,onClick:t=>{Q(e,r,t)},onKeypress(t){f(t)!==!0&&(t.keyCode===13?Q(e,r,t,!0):t.keyCode===32&&$(e,r,t,!0))}},[i(`div`,{class:`q-focus-helper`,tabindex:-1,ref:e=>{D[r.key]=e}}),r.lazy===`loading`?i(p,{class:`q-tree__spinner`,color:j.value}):c?i(_,{class:`q-tree__arrow`+(r.expanded===!0?` q-tree__arrow--rotate`:``),name:A.value,onClick(t){$(e,r,t)}}):null,r.hasTicking===!0&&r.noTick!==!0?i(v,{class:`q-tree__tickbox`,modelValue:r.indeterminate===!0?null:r.ticked,color:j.value,dark:C.value,dense:!0,keepColor:!0,disable:r.tickable!==!0,onKeydown:u,"onUpdate:modelValue":e=>{ee(r,e)}}):null,i(`div`,{class:`q-tree__node-header-content col row no-wrap items-center`+(r.selected===!0?N.value:M.value)},[a?a(m):[S(e),i(`div`,e[d.labelKey])]])]),c?d.noTransition?r.expanded===!0?i(`div`,{class:`q-tree__node-collapsible`+M.value,key:`${t}__q`},[l,i(`div`,{class:`q-tree__children`+(r.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]):null:i(y,{duration:d.duration,onShow:J,onHide:Y},()=>n(i(`div`,{class:`q-tree__node-collapsible`+M.value,key:`${t}__q`},[l,i(`div`,{class:`q-tree__children`+(r.disabled===!0?` q-tree__node--disabled`:``),role:`group`},s)]),[[o,r.expanded]])):l])}function Z(e){D[e]?.focus()}function Q(e,t,n,r){r!==!0&&t.selectable!==!1&&Z(t.key),k.value&&t.selectable?d.noSelectionUnset?t.key!==d.selected&&g(`update:selected`,t.key===void 0?null:t.key):g(`update:selected`,t.key===d.selected?null:t.key):$(e,t,n,r),typeof e.handler==`function`&&e.handler(e)}function $(e,t,n,r){n!==void 0&&u(n),r!==!0&&t.selectable!==!1&&Z(t.key),H(t.key,!t.expanded,e,t)}function ee(e,t){if(e.indeterminate===!0&&(t=e.indeterminateNextState),e.strictTicking)G([e.key],t);else if(e.leafTicking){let n=[],r=e=>{e.isParent?(t!==!0&&e.noTick!==!0&&e.tickable===!0&&n.push(e.key),e.leafTicking===!0&&e.children.forEach(r)):e.noTick!==!0&&e.tickable===!0&&(e.leafFilteredTicking!==!0||e.matchesFilter===!0)&&n.push(e.key)};r(e),G(n,t)}}return d.defaultExpandAll&&V(),Object.assign(b,{getNodeByKey:I,getTickedNodes:L,getExpandedNodes:R,isExpanded:z,collapseAll:B,expandAll:V,setExpanded:H,isTicked:W,setTicked:G}),()=>{let e=q(d.nodes);return i(`div`,{class:O.value,role:`tree`},e.length===0?d.filter?d.noResultsLabel||x.lang.tree.noResults:d.noNodesLabel||x.lang.tree.noNodes:e)}}});function w(e){let t=[];for(let n of e){let e=n.path.split(`/`).filter(e=>e.length>0);if(e.length===0)continue;let r=t,i=``;for(let t=0;t<e.length-1;t++){let n=e[t];i=i?`${i}/${n}`:n;let a=r.find(e=>e.isFolder&&e.label===n);a||(a={label:n,nodeKey:`dir:${i}`,isFolder:!0,children:[]},r.push(a)),r=a.children}r.push({label:e[e.length-1],nodeKey:`file:${n.path}`,file:n})}function n(e){e.sort((e,t)=>{let n=e.isFolder===!0;return n===(t.isFolder===!0)?e.label.localeCompare(t.label):n?-1:1});for(let t of e)t.children&&n(t.children)}return n(t),t}function T(e){let t=0;for(let n of e)n.file&&t++,n.children&&(t+=T(n.children));return t}export{b as i,T as n,C as r,w as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};export{t};
|
|
Binary file
|