@loicngr/kobo 1.8.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/AGENTS.md +53 -52
  2. package/CHANGELOG.md +6 -1
  3. package/README.md +59 -37
  4. package/dist/server/index.js +39 -1
  5. package/dist/server/middleware/network-auth-middleware.js +27 -0
  6. package/dist/server/routes/changelog.js +1 -1
  7. package/dist/server/routes/settings.js +49 -0
  8. package/dist/server/routes/workspaces.js +17 -0
  9. package/dist/server/services/agent/orchestrator.js +4 -0
  10. package/dist/server/services/network-access-service.js +67 -0
  11. package/dist/server/services/settings-service.js +50 -1
  12. package/dist/server/services/templates-service.js +80 -11
  13. package/dist/server/services/worktree-purge-service.js +2 -2
  14. package/dist/server/services/worktree-service.js +64 -2
  15. package/package.json +7 -7
  16. package/src/client/dist/spa/assets/ActivityFeed-qE7kgNNI.js +8 -0
  17. package/src/client/dist/spa/assets/ChangelogPage-P-cSkc52.js +1 -0
  18. package/src/client/dist/spa/assets/ClosePopup-BWi4AXm0.js +1 -0
  19. package/src/client/dist/spa/assets/CreatePage-CdeIZxPs.js +2 -0
  20. package/src/client/dist/spa/assets/DiffViewer-aEMR55x8.js +8 -0
  21. package/src/client/dist/spa/assets/HealthPage-Oq6n1qu0.js +1 -0
  22. package/src/client/dist/spa/assets/{MainLayout-KmjhECRT.css → MainLayout-DXz5Vnxf.css} +1 -1
  23. package/src/client/dist/spa/assets/MainLayout-y1VMkOwI.js +37 -0
  24. package/src/client/dist/spa/assets/{QBadge-CIC5n8w7.js → QBadge-DoPfOZ_x.js} +1 -1
  25. package/src/client/dist/spa/assets/{QBanner-BxBEdhfp.js → QBanner-C5hABcB2.js} +1 -1
  26. package/src/client/dist/spa/assets/QChip-xeL4Nxy_.js +1 -0
  27. package/src/client/dist/spa/assets/QExpansionItem-QIQTvw7U.js +1 -0
  28. package/src/client/dist/spa/assets/{QIcon-C6C3QeM4.js → QIcon-CfOEsLsF.js} +1 -1
  29. package/src/client/dist/spa/assets/QInput-7G0OXYP-.js +1 -0
  30. package/src/client/dist/spa/assets/{QList-DRW_oyZ4.js → QList-kGlJAb-p.js} +1 -1
  31. package/src/client/dist/spa/assets/{QPage-C6xc9fOe.js → QPage-B-ixPPKx.js} +1 -1
  32. package/src/client/dist/spa/assets/QScrollArea-cWkysQ9Q.js +1 -0
  33. package/src/client/dist/spa/assets/QSelect-PP69fnCX.js +36 -0
  34. package/src/client/dist/spa/assets/{use-id-By86THzm.js → QSeparator-Vt0kN1I8.js} +1 -1
  35. package/src/client/dist/spa/assets/QSpace-e68xsYE1.js +1 -0
  36. package/src/client/dist/spa/assets/{QSpinnerDots-atHe_AUn.js → QSpinnerDots-BOryc_9y.js} +1 -1
  37. package/src/client/dist/spa/assets/QTooltip-Brh5sChu.js +1 -0
  38. package/src/client/dist/spa/assets/SearchPage-BcXygFyE.js +1 -0
  39. package/src/client/dist/spa/assets/SettingsPage-Co97HPUU.js +16 -0
  40. package/src/client/dist/spa/assets/SettingsPage-DfYhuzv0.css +1 -0
  41. package/src/client/dist/spa/assets/TouchPan-BfqX_pZK.js +1 -0
  42. package/src/client/dist/spa/assets/{WorkspacePage-36QGRRCt.css → WorkspacePage-Bo6aKwl_.css} +1 -1
  43. package/src/client/dist/spa/assets/WorkspacePage-e-ktRS-M.js +4 -0
  44. package/src/client/dist/spa/assets/build-path-tree-D7rqJH7g.js +1 -0
  45. package/src/client/dist/spa/assets/chunk-QTnfLwEv.js +1 -0
  46. package/src/client/dist/spa/assets/{css.worker-BtW9exzf.js → css.worker-CBlhdqTa.js} +31 -31
  47. package/src/client/dist/spa/assets/{cssMode-DfDzxSXu.js → cssMode-DwJTukMi.js} +1 -1
  48. package/src/client/dist/spa/assets/documents-eaoEREpp.js +1 -0
  49. package/src/client/dist/spa/assets/{editor.api2-Byu6kw7p.js → editor.api2-CCQ74UFa.js} +163 -163
  50. package/src/client/dist/spa/assets/{editor.main-VujCgCtA.js → editor.main-sdLzVGjZ.js} +2 -2
  51. package/src/client/dist/spa/assets/editor.worker-Cu3tR8iJ.js +26 -0
  52. package/src/client/dist/spa/assets/expand-template-DTSWVfFm.js +1 -0
  53. package/src/client/dist/spa/assets/formatters-DnqeH9c3.js +1 -0
  54. package/src/client/dist/spa/assets/{freemarker2-Ce85qzU_.js → freemarker2-DnJdVbFY.js} +1 -1
  55. package/src/client/dist/spa/assets/{handlebars-BLTKFzzh.js → handlebars-CQ9FsB3q.js} +1 -1
  56. package/src/client/dist/spa/assets/{html-Brx-Keq8.js → html-DbwSidb2.js} +1 -1
  57. package/src/client/dist/spa/assets/{html.worker-Dg1SpGQ4.js → html.worker-BKBrNna1.js} +24 -24
  58. package/src/client/dist/spa/assets/{htmlMode-Cn-qtgzd.js → htmlMode-TsbX8xv5.js} +1 -1
  59. package/src/client/dist/spa/assets/i18n-CrwtYRcs.js +1 -0
  60. package/src/client/dist/spa/assets/index-UPQqj74q.js +84 -0
  61. package/src/client/dist/spa/assets/{javascript-ywvG3uUF.js → javascript-CdAxNn6v.js} +1 -1
  62. package/src/client/dist/spa/assets/json.worker-BaLYt9Ss.js +58 -0
  63. package/src/client/dist/spa/assets/{jsonMode-DjYQF9SH.js → jsonMode-DsX17jzq.js} +1 -1
  64. package/src/client/dist/spa/assets/kobo-commands-Cu30N0Ht.js +9 -0
  65. package/src/client/dist/spa/assets/layout-DOF1L6Vf.js +1 -0
  66. package/src/client/dist/spa/assets/{liquid-CZjmNn4a.js → liquid-Bc7-UBG5.js} +1 -1
  67. package/src/client/dist/spa/assets/{lspLanguageFeatures-DJiFF8Wc.js → lspLanguageFeatures-yZgUujPG.js} +1 -1
  68. package/src/client/dist/spa/assets/{mdx-DPvLr_Xj.js → mdx-BvDiub4z.js} +1 -1
  69. package/src/client/dist/spa/assets/{monaco.contribution-rZ1avSXN.js → monaco.contribution-CFTqxJMP.js} +2 -2
  70. package/src/client/dist/spa/assets/network-auth-DtdN0iy_.js +1 -0
  71. package/src/client/dist/spa/assets/{permissionModes-CJN6Olox.js → permissionModes-CUZkcBev.js} +1 -1
  72. package/src/client/dist/spa/assets/{python-agZmzvad.js → python-DZZeQhwZ.js} +1 -1
  73. package/src/client/dist/spa/assets/{razor-D-6K3O2-.js → razor-RaxEa4MG.js} +1 -1
  74. package/src/client/dist/spa/assets/render-chat-markdown-D1XyjSW1.js +66 -0
  75. package/src/client/dist/spa/assets/{ts.worker-DI5g4t5j.js → ts.worker-PmaSgaZk.js} +185 -170
  76. package/src/client/dist/spa/assets/{tsMode-BxYiDnB8.js → tsMode-C6gZAb22.js} +1 -1
  77. package/src/client/dist/spa/assets/{typescript-Cv7_rzaO.js → typescript-BCAqEI1V.js} +1 -1
  78. package/src/client/dist/spa/assets/{use-checkbox-BnkSQgTJ.js → use-checkbox-DE50asz4.js} +1 -1
  79. package/src/client/dist/spa/assets/{use-onboarding-Dy-3eSVP.js → use-onboarding-gBmXW7wm.js} +2 -2
  80. package/src/client/dist/spa/assets/use-quasar-Dyujo9Ue.js +1 -0
  81. package/src/client/dist/spa/assets/{vue.runtime.esm-bundler-BAtKyT0Y.js → vue.runtime.esm-bundler-JZnIeD9D.js} +2 -2
  82. package/src/client/dist/spa/assets/{workers-JYdpxrSy.js → workers-okv2EabB.js} +1 -1
  83. package/src/client/dist/spa/assets/{xml-CshFLvoE.js → xml-iWTTgx9j.js} +1 -1
  84. package/src/client/dist/spa/assets/{yaml-DL8TzVD_.js → yaml-am8-T4BQ.js} +1 -1
  85. package/src/client/dist/spa/index.html +7 -13
  86. package/src/client/dist/spa/assets/ActivityFeed-Y1RkIPW1.js +0 -8
  87. package/src/client/dist/spa/assets/ChangelogPage-DcPmypaS.js +0 -1
  88. package/src/client/dist/spa/assets/ClosePopup-DD10nToj.js +0 -1
  89. package/src/client/dist/spa/assets/CreatePage-DO_pMGS3.js +0 -2
  90. package/src/client/dist/spa/assets/DiffViewer-DRvbmHwK.js +0 -8
  91. package/src/client/dist/spa/assets/HealthPage-BvOR0B7B.js +0 -1
  92. package/src/client/dist/spa/assets/MainLayout-M5TW3GL1.js +0 -37
  93. package/src/client/dist/spa/assets/QBtn-DwemGTZv.js +0 -1
  94. package/src/client/dist/spa/assets/QCheckbox-o3UHW596.js +0 -1
  95. package/src/client/dist/spa/assets/QChip-BpS8c1sW.js +0 -1
  96. package/src/client/dist/spa/assets/QExpansionItem-C9vmJqEO.js +0 -1
  97. package/src/client/dist/spa/assets/QInput-CLZtb8E0.js +0 -1
  98. package/src/client/dist/spa/assets/QItemLabel-BYSjzk-t.js +0 -1
  99. package/src/client/dist/spa/assets/QItemSection-O9WBXftL.js +0 -1
  100. package/src/client/dist/spa/assets/QMenu-D_9kEp2i.js +0 -1
  101. package/src/client/dist/spa/assets/QRadio-B_TurTzx.js +0 -1
  102. package/src/client/dist/spa/assets/QScrollArea-B5jf9S4y.js +0 -1
  103. package/src/client/dist/spa/assets/QScrollObserver-Cxj52Zfg.js +0 -1
  104. package/src/client/dist/spa/assets/QSelect-DgGpVy88.js +0 -36
  105. package/src/client/dist/spa/assets/QSpace-CrVsndpV.js +0 -1
  106. package/src/client/dist/spa/assets/QToggle-Dwr3hSLw.js +0 -1
  107. package/src/client/dist/spa/assets/QTooltip-CyRLTG6i.js +0 -1
  108. package/src/client/dist/spa/assets/SearchPage-Qc2SXUjf.js +0 -1
  109. package/src/client/dist/spa/assets/SettingsPage-B7H6sD7r.css +0 -1
  110. package/src/client/dist/spa/assets/SettingsPage-G4xXwNwc.js +0 -9
  111. package/src/client/dist/spa/assets/TouchPan-BmfIMD00.js +0 -1
  112. package/src/client/dist/spa/assets/WorkspacePage-DeGm-XQp.js +0 -4
  113. package/src/client/dist/spa/assets/build-path-tree-D4_LR3mz.js +0 -1
  114. package/src/client/dist/spa/assets/chunk-DtRyYLXJ.js +0 -1
  115. package/src/client/dist/spa/assets/documents-N8PwB_Gh.js +0 -1
  116. package/src/client/dist/spa/assets/editor.worker-DWlYVeeX.js +0 -26
  117. package/src/client/dist/spa/assets/engineFeatures-6A3KLQRO.js +0 -1
  118. package/src/client/dist/spa/assets/expand-template-CRHCd-I8.js +0 -1
  119. package/src/client/dist/spa/assets/formatters-wq5wP2If.js +0 -1
  120. package/src/client/dist/spa/assets/i18n-Cl6Gt8Eh.js +0 -1
  121. package/src/client/dist/spa/assets/index-CyseQlfR.js +0 -82
  122. package/src/client/dist/spa/assets/json.worker-CCzEOxDx.js +0 -58
  123. package/src/client/dist/spa/assets/kobo-commands-BSkMs22T.js +0 -9
  124. package/src/client/dist/spa/assets/notifications-C4MxuXC7.js +0 -1
  125. package/src/client/dist/spa/assets/render-chat-markdown-8LO2n7Of.js +0 -66
  126. package/src/client/dist/spa/assets/touch-yfnu5R3D.js +0 -1
  127. package/src/client/dist/spa/assets/use-quasar-DcJRs0ay.js +0 -1
  128. package/src/client/dist/spa/assets/vue-i18n-C5Tx4bGk.js +0 -3
  129. /package/src/client/dist/spa/assets/{_plugin-vue_export-helper-BzmG9fMN.js → _plugin-vue_export-helper-BDNMzG2s.js} +0 -0
  130. /package/src/client/dist/spa/assets/{abap-DiwvWnMr.js → abap-08VXUWAP.js} +0 -0
  131. /package/src/client/dist/spa/assets/{apex-CmtZjKlf.js → apex-BWPQTe0t.js} +0 -0
  132. /package/src/client/dist/spa/assets/{azcli-DL2My_i-.js → azcli-Bc_sGQ0U.js} +0 -0
  133. /package/src/client/dist/spa/assets/{bat-B-nC98wG.js → bat-i0X4ZdIN.js} +0 -0
  134. /package/src/client/dist/spa/assets/{bicep-Ju5MwOgh.js → bicep-B5-_aFwp.js} +0 -0
  135. /package/src/client/dist/spa/assets/{cameligo-8Eu1TyBr.js → cameligo-DMUM7wLl.js} +0 -0
  136. /package/src/client/dist/spa/assets/{clojure-u-RpMkH3.js → clojure-Cm7r79vr.js} +0 -0
  137. /package/src/client/dist/spa/assets/{coffee-CdA7bbTe.js → coffee-Ba7i2nA0.js} +0 -0
  138. /package/src/client/dist/spa/assets/{cpp-CzNFP8ks.js → cpp-C7h46wYY.js} +0 -0
  139. /package/src/client/dist/spa/assets/{csharp-j1LThmcE.js → csharp-BKxtCVv1.js} +0 -0
  140. /package/src/client/dist/spa/assets/{csp-CLRC61y6.js → csp-bTuwJoIa.js} +0 -0
  141. /package/src/client/dist/spa/assets/{css-r6rC_7P2.js → css-DIMkf-bt.js} +0 -0
  142. /package/src/client/dist/spa/assets/{cypher-CW08XVUh.js → cypher-CVaqCwHa.js} +0 -0
  143. /package/src/client/dist/spa/assets/{dart-Cs9aL5T_.js → dart-onAF5SnQ.js} +0 -0
  144. /package/src/client/dist/spa/assets/{dockerfile-BWM0M184.js → dockerfile-DZFCIeNp.js} +0 -0
  145. /package/src/client/dist/spa/assets/{ecl-MJJuer5P.js → ecl-D05T4iGw.js} +0 -0
  146. /package/src/client/dist/spa/assets/{elixir-D2AIuXqn.js → elixir-6RTg0lbw.js} +0 -0
  147. /package/src/client/dist/spa/assets/{flow9-B2H24giC.js → flow9-C5_-GSwl.js} +0 -0
  148. /package/src/client/dist/spa/assets/{fsharp-CFNadkg7.js → fsharp-C8Ef5oNN.js} +0 -0
  149. /package/src/client/dist/spa/assets/{go-dSur1iB2.js → go-C-y9NEjX.js} +0 -0
  150. /package/src/client/dist/spa/assets/{graphql-qyhAo11d.js → graphql-fmXr3nnJ.js} +0 -0
  151. /package/src/client/dist/spa/assets/{hcl-DFzjMyzm.js → hcl-CpzslTdj.js} +0 -0
  152. /package/src/client/dist/spa/assets/{ini-TdzA8TIl.js → ini-sBoK_t0W.js} +0 -0
  153. /package/src/client/dist/spa/assets/{java-CSGA9pkE.js → java-BEtHBSE6.js} +0 -0
  154. /package/src/client/dist/spa/assets/{julia-9izz5OsY.js → julia-Bri6UV-V.js} +0 -0
  155. /package/src/client/dist/spa/assets/{kotlin-DIUPrqKg.js → kotlin-BOotOW0E.js} +0 -0
  156. /package/src/client/dist/spa/assets/{less-B8d93iCg.js → less-B9JPFI3C.js} +0 -0
  157. /package/src/client/dist/spa/assets/{lexon-DWtEIyu7.js → lexon-CfSJPG6W.js} +0 -0
  158. /package/src/client/dist/spa/assets/{lua-Ciq0OGgt.js → lua-CsQS60Ue.js} +0 -0
  159. /package/src/client/dist/spa/assets/{m3-Cki6JWj_.js → m3-D-oSqn_W.js} +0 -0
  160. /package/src/client/dist/spa/assets/{markdown-Cu47xwU0.js → markdown-Cimd5fb3.js} +0 -0
  161. /package/src/client/dist/spa/assets/{mips-BM8ui995.js → mips-CIPQ_RoX.js} +0 -0
  162. /package/src/client/dist/spa/assets/{msdax-DqLio0_c.js → msdax-DauUninz.js} +0 -0
  163. /package/src/client/dist/spa/assets/{mysql-v1wbjJOq.js → mysql-SOo6toE5.js} +0 -0
  164. /package/src/client/dist/spa/assets/{objective-c-CQl3PGSB.js → objective-c-FvmIjYaQ.js} +0 -0
  165. /package/src/client/dist/spa/assets/{pascal-D4iW0ZtD.js → pascal-DrH0SRf2.js} +0 -0
  166. /package/src/client/dist/spa/assets/{pascaligo-BdC9CZdj.js → pascaligo-D-ptJ9y-.js} +0 -0
  167. /package/src/client/dist/spa/assets/{perl-BL10m4XD.js → perl-oz_6vUea.js} +0 -0
  168. /package/src/client/dist/spa/assets/{pgsql-Be_oqVo3.js → pgsql-DTj74zXo.js} +0 -0
  169. /package/src/client/dist/spa/assets/{php-BtvXSFRI.js → php-nr791fC2.js} +0 -0
  170. /package/src/client/dist/spa/assets/{pla-B2vUy15C.js → pla-CopQ2nXW.js} +0 -0
  171. /package/src/client/dist/spa/assets/{postiats-CbmTTfXr.js → postiats-43DmfD33.js} +0 -0
  172. /package/src/client/dist/spa/assets/{powerquery-DszLhJGx.js → powerquery-D3hlyOfw.js} +0 -0
  173. /package/src/client/dist/spa/assets/{powershell-B0dYktF6.js → powershell-DmHpPYUd.js} +0 -0
  174. /package/src/client/dist/spa/assets/{protobuf-CZvaj1VX.js → protobuf-C531GsRP.js} +0 -0
  175. /package/src/client/dist/spa/assets/{pug-CPDx1B3S.js → pug-Z5eAx3Zn.js} +0 -0
  176. /package/src/client/dist/spa/assets/{qsharp-CDP9TFLl.js → qsharp-DkqhCAOL.js} +0 -0
  177. /package/src/client/dist/spa/assets/{r-8DbbFX2l.js → r-BwWrilGY.js} +0 -0
  178. /package/src/client/dist/spa/assets/{redis-DRWj9MtJ.js → redis-ClamHrr6.js} +0 -0
  179. /package/src/client/dist/spa/assets/{redshift-C6cElE_5.js → redshift-DT7zqm-g.js} +0 -0
  180. /package/src/client/dist/spa/assets/{restructuredtext-W9pS9n3m.js → restructuredtext-BYgofb2h.js} +0 -0
  181. /package/src/client/dist/spa/assets/{ruby-BKnzWnk-.js → ruby-DezsRK8O.js} +0 -0
  182. /package/src/client/dist/spa/assets/{rust-YPCclWwe.js → rust-DdL9SqIa.js} +0 -0
  183. /package/src/client/dist/spa/assets/{sb-BgM4DTFb.js → sb-CcwsVR0C.js} +0 -0
  184. /package/src/client/dist/spa/assets/{scala-fz1OPLMl.js → scala-DHpiXF5c.js} +0 -0
  185. /package/src/client/dist/spa/assets/{scheme-8Uz1RIbu.js → scheme-BeGwcela.js} +0 -0
  186. /package/src/client/dist/spa/assets/{scss-Djo3IYXr.js → scss-gp-XZpBa.js} +0 -0
  187. /package/src/client/dist/spa/assets/{shell-CINF5Tx_.js → shell-CC2rA5mh.js} +0 -0
  188. /package/src/client/dist/spa/assets/{solidity-GgiNEuUm.js → solidity-BEEn4gHE.js} +0 -0
  189. /package/src/client/dist/spa/assets/{sophia-Culj97P9.js → sophia-CRfGWb83.js} +0 -0
  190. /package/src/client/dist/spa/assets/{sparql-C2ZlpxOY.js → sparql-D_Lu-MrJ.js} +0 -0
  191. /package/src/client/dist/spa/assets/{sql-BEf5Pg7Y.js → sql-NEE52Syq.js} +0 -0
  192. /package/src/client/dist/spa/assets/{st-CT6UUoeH.js → st-DbInun42.js} +0 -0
  193. /package/src/client/dist/spa/assets/{swift-B5g0xTG3.js → swift-Bxkupp3x.js} +0 -0
  194. /package/src/client/dist/spa/assets/{systemverilog-CEgQz9DR.js → systemverilog-Bz4Y3fRF.js} +0 -0
  195. /package/src/client/dist/spa/assets/{tcl-D0qL2L0I.js → tcl-DISqw1ZD.js} +0 -0
  196. /package/src/client/dist/spa/assets/{twig-BFUAVf1E.js → twig-De2hgUGE.js} +0 -0
  197. /package/src/client/dist/spa/assets/{typespec-CjVVcNKm.js → typespec-B8J7ngcE.js} +0 -0
  198. /package/src/client/dist/spa/assets/{vb-CZJr-DQz.js → vb-DV3o63ZY.js} +0 -0
  199. /package/src/client/dist/spa/assets/{wgsl-ivoXUo2e.js → wgsl-DpFanUEy.js} +0 -0
@@ -1 +0,0 @@
1
- import{$ as e,C as t,R as n,S as r,T as i,U as a,W as o,b as s,ct as c,g as l,h as u,it as d,l as f,n as p,p as m,y as h}from"./vue.runtime.esm-bundler-BAtKyT0Y.js";import{C as g,E as _,F as v,N as y,O as b,j as x,k as S,s as C,w}from"./QIcon-C6C3QeM4.js";import{f as T}from"./use-id-By86THzm.js";import{F as E}from"./notifications-C4MxuXC7.js";import{f as D}from"./QBtn-DwemGTZv.js";import{n as O}from"./vue-i18n-C5Tx4bGk.js";import{c as k}from"./index-CyseQlfR.js";import{p as A,t as j}from"./QTooltip-CyRLTG6i.js";import{n as M,t as N}from"./touch-yfnu5R3D.js";import{t as P}from"./QChip-BpS8c1sW.js";function F(e){let t=[.06,6,50];return typeof e==`string`&&e.length!==0&&e.split(`:`).forEach((e,n)=>{let r=Number.parseFloat(e);r&&(t[n]=r)}),t}function I(){document.body.classList.remove(`no-pointer-events--children`)}var L=v({name:`touch-swipe`,beforeMount(e,{value:t,arg:n,modifiers:r}){if(!r.mouse&&!T.has.touch)return;let i=r.mouseCapture||r.mousecapture?`Capture`:``,a={handler:t,sensitivity:F(n),direction:N(r),noop:b,mouseStart(e){M(e,a)&&_(e)&&(g(a,`temp`,[[document,`mousemove`,`move`,`notPassive${i}`],[document,`mouseup`,`end`,`notPassiveCapture`]]),a.start(e,!0))},touchStart(e){if(M(e,a)){let t=e.target;g(a,`temp`,[[t,`touchmove`,`move`,`notPassiveCapture`],[t,`touchcancel`,`end`,`notPassiveCapture`],[t,`touchend`,`end`,`notPassiveCapture`]]),a.start(e)}},start(t,n){T.is.firefox&&x(e,!0);let r=S(t);a.event={x:r.left,y:r.top,time:Date.now(),mouse:n===!0,dir:!1}},move(e){if(a.event===void 0)return;if(a.event.dir!==!1){y(e);return}let t=Date.now()-a.event.time;if(t===0)return;let n=S(e),r=n.left-a.event.x,i=Math.abs(r),o=n.top-a.event.y,s=Math.abs(o);if(!a.event.mouse){if(i<a.sensitivity[1]&&s<a.sensitivity[1]){a.end(e);return}}else if(window.getSelection().toString()!==``){a.end(e);return}else if(i<a.sensitivity[2]&&s<a.sensitivity[2])return;let c=i/t,l=s/t;a.direction.vertical&&i<s&&i<100&&l>a.sensitivity[0]&&(a.event.dir=o<0?`up`:`down`),a.direction.horizontal&&i>s&&s<100&&c>a.sensitivity[0]&&(a.event.dir=r<0?`left`:`right`),a.direction.up&&i<s&&o<0&&i<100&&l>a.sensitivity[0]&&(a.event.dir=`up`),a.direction.down&&i<s&&o>0&&i<100&&l>a.sensitivity[0]&&(a.event.dir=`down`),a.direction.left&&i>s&&r<0&&s<100&&c>a.sensitivity[0]&&(a.event.dir=`left`),a.direction.right&&i>s&&r>0&&s<100&&c>a.sensitivity[0]&&(a.event.dir=`right`),a.event.dir===!1?a.end(e):(y(e),a.event.mouse&&(document.body.classList.add(`no-pointer-events--children`),document.body.classList.add(`non-selectable`),A(),a.styleCleanup=e=>{a.styleCleanup=void 0,document.body.classList.remove(`non-selectable`),e===!0?setTimeout(I,50):I()}),a.handler({evt:e,touch:a.event.mouse!==!0,mouse:a.event.mouse,direction:a.event.dir,duration:t,distance:{x:i,y:s}}))},end(t){a.event!==void 0&&(w(a,`temp`),T.is.firefox&&x(e,!1),a.styleCleanup?.(!0),t!==void 0&&a.event.dir!==!1&&y(t),a.event=void 0)}};e.__qtouchswipe=a,r.mouse&&g(a,`main`,[[e,`mousedown`,`mouseStart`,`passive${r.mouseCapture||r.mousecapture?`Capture`:``}`]]),T.has.touch&&g(a,`main`,[[e,`touchstart`,`touchStart`,`passive${r.capture?`Capture`:``}`],[e,`touchmove`,`noop`,`notPassiveCapture`]])},updated(e,t){let n=e.__qtouchswipe;n!==void 0&&(t.oldValue!==t.value&&(typeof t.value!=`function`&&n.end(),n.handler=t.value),n.direction=N(t.modifiers))},beforeUnmount(e){let t=e.__qtouchswipe;t!==void 0&&(w(t,`main`),w(t,`temp`),T.is.firefox&&x(e,!1),t.styleCleanup?.(),delete e.__qtouchswipe)}});function R(){let e=Object.create(null);return{getCache:(t,n)=>e[t]===void 0?e[t]=typeof n==`function`?n():n:e[t],setCache(t,n){e[t]=n},hasCache(t){return Object.hasOwn(e,t)},clearCache(t){t===void 0?e=Object.create(null):delete e[t]}}}var z={name:{required:!0},disable:Boolean},B={setup(e,{slots:t}){return()=>i(`div`,{class:`q-panel scroll`,role:`tabpanel`},C(t.default))}},V={modelValue:{required:!0},animated:Boolean,infinite:Boolean,swipeable:Boolean,vertical:Boolean,transitionPrev:String,transitionNext:String,transitionDuration:{type:[String,Number],default:300},keepAlive:Boolean,keepAliveInclude:[String,Array,RegExp],keepAliveExclude:[String,Array,RegExp],keepAliveMax:Number},H=[`update:modelValue`,`beforeTransition`,`transition`];function U(e){return e!=null&&e!==``}function W(){let{props:n,emit:r,proxy:o}=t(),{getCache:s}=R(),{registerTimeout:c}=E(),l,u,d=e(null),h={value:null};function g(e){let t=n.vertical?`up`:`left`;N((o.$q.lang.rtl?-1:1)*(e.direction===t?1:-1))}let _=m(()=>[[L,g,void 0,{horizontal:!n.vertical,vertical:n.vertical,mouse:!0}]]),v=m(()=>n.transitionPrev||`slide-${n.vertical?`down`:`right`}`),y=m(()=>n.transitionNext||`slide-${n.vertical?`up`:`left`}`),b=m(()=>`--q-transition-duration: ${n.transitionDuration}ms`),x=m(()=>typeof n.modelValue==`string`||typeof n.modelValue==`number`?n.modelValue:String(n.modelValue)),S=m(()=>({include:n.keepAliveInclude,exclude:n.keepAliveExclude,max:n.keepAliveMax})),w=m(()=>n.keepAliveInclude!==void 0||n.keepAliveExclude!==void 0);a(()=>n.modelValue,(e,t)=>{let i=U(e)?A(e):-1;u||M(i===-1?0:i<A(t)?-1:1),h.value!==i&&(h.value=i,r(`beforeTransition`,e,t),c(()=>{r(`transition`,e,t)},n.transitionDuration))});function T(){N(1)}function O(){N(-1)}function k(e){r(`update:modelValue`,e)}function A(e){return l.findIndex(t=>t.props.name===e&&t.props.disable!==``&&t.props.disable!==!0)}function j(){return l.filter(e=>e.props.disable!==``&&e.props.disable!==!0)}function M(e){let t=e!==0&&n.animated&&h.value!==-1?`q-transition--`+(e===-1?v.value:y.value):null;d.value!==t&&(d.value=t)}function N(e,t=h.value){let i=t+e;for(;i!==-1&&i<l.length;){let t=l[i];if(t!==void 0&&t.props.disable!==``&&t.props.disable!==!0){M(e),u=!0,r(`update:modelValue`,t.props.name),setTimeout(()=>{u=!1});return}i+=e}n.infinite&&l.length!==0&&t!==-1&&t!==l.length&&N(e,e===-1?l.length:-1)}function P(){let e=A(n.modelValue);return h.value!==e&&(h.value=e),!0}function F(){let e=U(n.modelValue)&&P()&&l[h.value];return n.keepAlive?[i(f,S.value,[i(w.value?s(x.value,()=>({...B,name:x.value})):B,{key:x.value,style:b.value},()=>e)])]:[i(`div`,{class:`q-panel scroll`,style:b.value,key:x.value,role:`tabpanel`},[e])]}function I(){if(l.length!==0)return n.animated?[i(p,{name:d.value},F)]:F()}function z(e){return l=D(C(e.default,[])).filter(e=>e.props!==null&&e.props.slot===void 0&&U(e.props.name)),l.length}function V(){return l}return Object.assign(o,{next:T,previous:O,goTo:k}),{panelIndex:h,panelDirectives:_,updatePanelsList:z,updatePanelIndex:P,getPanelContent:I,getEnabledPanels:j,getPanels:V,isValidPanelName:U,keepAliveProps:S,needsUniqueKeepAliveWrapper:w,goToPanelByOffset:N,goToPanel:k,nextPanel:T,previousPanel:O}}var G=r({__name:`AutoLoopChip`,props:{workspace:{default:null}},setup(e){let t=e,{t:r}=O(),i=k(),a=m(()=>t.workspace??i.selectedWorkspace),f=m(()=>a.value?.id??null),p=m(()=>f.value?i.autoLoopStates[f.value]??null:null),g=m(()=>!!p.value?.auto_loop),_=m(()=>!!p.value?.auto_loop_ready),v=m(()=>f.value!==null&&i.selectedWorkspaceId===f.value),y=m(()=>v.value?i.tasks.filter(e=>e.status===`done`).length:p.value?.tasks_done??0),b=m(()=>v.value?i.tasks.length:p.value?.tasks_total??0);return(e,t)=>g.value&&!_.value?(n(),u(P,{key:0,dense:``,square:``,size:`sm`,color:`indigo-4`,"text-color":`white`,icon:`hourglass_top`,class:`q-ml-sm`},{default:o(()=>[h(c(d(r)(`autoLoop.preparing`))+` `,1),s(j,null,{default:o(()=>[h(c(d(r)(`autoLoop.preparingTooltip`)),1)]),_:1})]),_:1})):g.value?(n(),u(P,{key:1,dense:``,square:``,size:`sm`,color:`amber-9`,"text-color":`white`,icon:`autorenew`,class:`q-ml-sm`},{default:o(()=>[h(c(d(r)(`autoLoop.progress`,{done:y.value,total:b.value})),1)]),_:1})):l(``,!0)}}),K={"claude-code":!0,codex:!0};function q(e){return e?K[e]??!0:!0}var J={"claude-code":!0,codex:!0};function Y(e){return e?J[e]??!0:!0}export{z as a,R as c,W as i,q as n,H as o,G as r,V as s,Y as t};
@@ -1 +0,0 @@
1
- import{$ as e,B as t,R as n,S as r,U as i,_ as a,at as o,b as s,c,ct as l,g as u,it as d,m as f,p,s as m}from"./vue.runtime.esm-bundler-BAtKyT0Y.js";import{t as h}from"./QIcon-C6C3QeM4.js";import"./notifications-C4MxuXC7.js";import{n as g}from"./vue-i18n-C5Tx4bGk.js";import{g as _}from"./index-CyseQlfR.js";import{t as v}from"./_plugin-vue_export-helper-BzmG9fMN.js";import{t as y}from"./kobo-commands-BSkMs22T.js";var b={class:`slash-suggestions rounded-borders`},x={class:`slash-section-header`},S=[`onMousedown`],C={class:`slash-name text-caption`},w={class:`slash-section-header`},T=[`onMousedown`],E={class:`slash-name text-caption`},D={key:0,class:`slash-description text-caption text-grey-7 q-ml-xs`},O={class:`slash-section-header`},k=[`onMousedown`],A={class:`slash-name text-caption`},j={key:0,class:`slash-description text-caption text-grey-7 q-ml-xs`},M=v(r({__name:`SlashSuggestionsPopup`,props:{groupedDropdown:{},flatDropdown:{},selectedIndex:{}},emits:[`select`],setup(e,{emit:r}){let{t:i}=g(),p=r;function _(e){let t=y[`/${e}`];if(!t)return``;let n=t.descriptionKey,r=i(n);return r===n?``:r}return(r,g)=>(n(),a(`div`,b,[e.groupedDropdown.skills.length>0?(n(),a(c,{key:0},[f(`div`,x,l(d(i)(`chatInput.dropdownSkills`)),1),(n(!0),a(c,null,t(e.groupedDropdown.skills,t=>(n(),a(`div`,{key:`skill-${t.name}`,class:o([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":e.flatDropdown.indexOf(t)===e.selectedIndex}]),onMousedown:m(e=>p(`select`,t),[`prevent`])},[s(h,{name:`bolt`,size:`12px`,color:`indigo-4`,class:`q-mr-xs`}),f(`span`,C,l(t.name),1)],42,S))),128))],64)):u(``,!0),e.groupedDropdown.kobo.length>0?(n(),a(c,{key:1},[f(`div`,w,l(d(i)(`chatInput.dropdownKobo`)),1),(n(!0),a(c,null,t(e.groupedDropdown.kobo,t=>(n(),a(`div`,{key:`kobo-${t.name}`,class:o([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":e.flatDropdown.indexOf(t)===e.selectedIndex}]),onMousedown:m(e=>p(`select`,t),[`prevent`])},[s(h,{name:`terminal`,size:`12px`,color:`teal-4`,class:`q-mr-xs`}),f(`span`,E,`/`+l(t.name),1),_(t.name)?(n(),a(`span`,D,`— `+l(_(t.name)),1)):u(``,!0)],42,T))),128))],64)):u(``,!0),e.groupedDropdown.templates.length>0?(n(),a(c,{key:2},[f(`div`,O,l(d(i)(`chatInput.dropdownTemplates`)),1),(n(!0),a(c,null,t(e.groupedDropdown.templates,t=>(n(),a(`div`,{key:`tpl-${t.name}`,class:o([`slash-item row items-center q-px-sm q-py-xs cursor-pointer`,{"slash-item--active":e.flatDropdown.indexOf(t)===e.selectedIndex}]),onMousedown:m(e=>p(`select`,t),[`prevent`])},[s(h,{name:`description`,size:`12px`,color:`amber-4`,class:`q-mr-xs`}),f(`span`,A,`/`+l(t.name),1),t.description?(n(),a(`span`,j,`— `+l(t.description),1)):u(``,!0)],42,k))),128))],64)):u(``,!0)]))}}),[[`__scopeId`,`data-v-cc4747a4`]]);function N(t,n,r={}){let a=_(),o=e([]),s=e(!1),c=e(``),l=e(0),u=0;async function d(){let e=Date.now();if(!(e-u<5e3&&o.value.length>0)){u=e;try{let e=await fetch(`/api/skills`);e.ok&&(o.value=await e.json())}catch{}}}function f(){let e=n();if(!e)return null;let r=e.selectionStart??t.value.length,i=t.value.slice(0,r).match(/\/([\w:.-]*)$/);return i?i[1]:null}async function m(){let e=f();e===null?s.value=!1:(await d(),c.value=e,s.value=!0,l.value=0)}function h(){s.value=!1}function g(e){let r=n();if(!r){t.value=e;return}let i=r.selectionStart??t.value.length,a=t.value.slice(0,i),o=t.value.slice(i),s=a.match(/\/[\w:.-]*$/);if(!s){t.value=e;return}let c=s.index??i;t.value=t.value.slice(0,c)+e+o}let v=p(()=>{let e=c.value.toLowerCase(),t=t=>e===``?!0:t.toLowerCase().includes(e);return{skills:o.value.filter(e=>t(e)).map(e=>({type:`skill`,name:e})),kobo:r.excludeKoboCommands?[]:Object.keys(y).map(e=>e.replace(/^\//,``)).filter(e=>t(e)).map(e=>({type:`kobo`,name:e})),templates:a.templates.filter(e=>t(e.slug)).map(e=>({type:`template`,name:e.slug,description:e.description}))}}),b=p(()=>[...v.value.skills,...v.value.kobo,...v.value.templates]);return i(()=>b.value.length,e=>{if(e===0){l.value=0;return}l.value>=e&&(l.value=e-1)}),{skills:o,showSkills:s,skillFilter:c,selectedSkillIndex:l,groupedDropdown:v,flatDropdown:b,fetchSkills:d,detectSlashFragment:m,replaceFragmentWith:g,closeDropdown:h}}function P(e){return{value:e,i18nLabelKey:`reasoning.${e}`,i18nDescriptionKey:`reasoning.${e}Description`}}var F=[P(`auto`),P(`low`),P(`medium`),P(`high`),P(`xhigh`),P(`max`)],I=[P(`auto`),P(`minimal`),P(`low`),P(`medium`),P(`high`),P(`xhigh`)],L={"claude-code":F,codex:I};function R(e,t){return e.replace(/\{(\w+)\}/g,(e,n)=>{let r=t[n];return r==null?e:String(r)})}function z(e){let t={};return e.workspace&&(t.workspace_name=e.workspace.name,t.working_branch=e.workspace.workingBranch,t.source_branch=e.workspace.sourceBranch,t.project_path=e.workspace.projectPath,t.worktree_path=e.workspace.worktreePath??`${e.workspace.projectPath}/.worktrees/${e.workspace.workingBranch}`),e.gitStats&&(t.commit_count=e.gitStats.commitCount,t.unpushed_count=e.gitStats.unpushedCount,t.files_changed=e.gitStats.filesChanged,t.insertions=e.gitStats.insertions,t.deletions=e.gitStats.deletions,e.gitStats.prNumber!=null&&(t.pr_number=e.gitStats.prNumber),e.gitStats.prUrl&&(t.pr_url=e.gitStats.prUrl),e.gitStats.prState&&(t.pr_state=e.gitStats.prState)),e.sessionName&&(t.session_name=e.sessionName),t}export{M as a,N as i,R as n,L as r,z as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./vue-i18n-C5Tx4bGk.js";function t(){let{t}=e();function n(e){let n=typeof e==`string`?new Date(e).getTime():e.getTime(),r=Date.now()-n,i=Math.floor(r/6e4);if(i<1)return t(`common.justNow`);if(i<60)return t(`common.minutesAgo`,{count:i});let a=Math.floor(i/60);return a<24?t(`common.hoursAgo`,{count:a}):t(`common.daysAgo`,{count:Math.floor(a/24)})}return{timeAgo:n}}export{t};
@@ -1 +0,0 @@
1
- import{a as e,h as t}from"./index-CyseQlfR.js";var n=e(({app:e})=>{e.use(t)});export{n as default};