@lovelybunch/api 1.0.71-alpha.0 → 1.0.71-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/dist/lib/auth/auth-manager.d.ts.map +1 -0
  2. package/dist/lib/auth/auth-manager.js.map +1 -0
  3. package/dist/lib/gait-path.d.ts.map +1 -0
  4. package/dist/lib/gait-path.js.map +1 -0
  5. package/dist/lib/git-settings.d.ts.map +1 -0
  6. package/dist/lib/git-settings.js.map +1 -0
  7. package/dist/lib/git.d.ts.map +1 -0
  8. package/dist/lib/git.js.map +1 -0
  9. package/dist/lib/jobs/global-job-scheduler.d.ts.map +1 -0
  10. package/dist/lib/jobs/global-job-scheduler.js.map +1 -0
  11. package/dist/lib/jobs/job-runner.d.ts.map +1 -0
  12. package/dist/lib/jobs/job-runner.js.map +1 -0
  13. package/dist/lib/jobs/job-scheduler.d.ts.map +1 -0
  14. package/dist/lib/jobs/job-scheduler.js.map +1 -0
  15. package/dist/lib/jobs/job-store.d.ts.map +1 -0
  16. package/dist/lib/jobs/job-store.js.map +1 -0
  17. package/dist/lib/project-paths.d.ts.map +1 -0
  18. package/dist/lib/project-paths.js.map +1 -0
  19. package/dist/lib/storage/file-storage.d.ts.map +1 -0
  20. package/dist/lib/storage/file-storage.js.map +1 -0
  21. package/dist/lib/symlinks/symlink-manager.d.ts.map +1 -0
  22. package/dist/lib/symlinks/symlink-manager.js.map +1 -0
  23. package/dist/lib/symlinks/types.d.ts.map +1 -0
  24. package/dist/lib/symlinks/types.js.map +1 -0
  25. package/dist/lib/terminal/context-helper.d.ts.map +1 -0
  26. package/dist/lib/terminal/context-helper.js.map +1 -0
  27. package/dist/lib/terminal/global-manager.d.ts.map +1 -0
  28. package/dist/lib/terminal/global-manager.js.map +1 -0
  29. package/dist/lib/terminal/shell-utils.d.ts.map +1 -0
  30. package/dist/lib/terminal/shell-utils.js.map +1 -0
  31. package/dist/lib/terminal/terminal-manager.d.ts.map +1 -0
  32. package/dist/lib/terminal/terminal-manager.js.map +1 -0
  33. package/dist/lib/user-preferences.d.ts.map +1 -0
  34. package/dist/lib/user-preferences.js.map +1 -0
  35. package/dist/middleware/auth.d.ts.map +1 -0
  36. package/dist/middleware/auth.js.map +1 -0
  37. package/dist/routes/api/v1/agents/[id]/index.d.ts.map +1 -0
  38. package/dist/routes/api/v1/agents/[id]/index.js.map +1 -0
  39. package/dist/routes/api/v1/agents/[id]/route.d.ts.map +1 -0
  40. package/dist/routes/api/v1/agents/[id]/route.js.map +1 -0
  41. package/dist/routes/api/v1/agents/index.d.ts.map +1 -0
  42. package/dist/routes/api/v1/agents/index.js.map +1 -0
  43. package/dist/routes/api/v1/agents/route.d.ts.map +1 -0
  44. package/dist/routes/api/v1/agents/route.js.map +1 -0
  45. package/dist/routes/api/v1/ai/index.d.ts.map +1 -0
  46. package/dist/routes/api/v1/ai/index.js.map +1 -0
  47. package/dist/routes/api/v1/ai/route.d.ts.map +1 -0
  48. package/dist/routes/api/v1/ai/route.js +6 -1
  49. package/dist/routes/api/v1/ai/route.js.map +1 -0
  50. package/dist/routes/api/v1/ai/tools.js +6 -1
  51. package/dist/routes/api/v1/api-keys/index.d.ts.map +1 -0
  52. package/dist/routes/api/v1/api-keys/index.js.map +1 -0
  53. package/dist/routes/api/v1/api-keys/route.d.ts.map +1 -0
  54. package/dist/routes/api/v1/api-keys/route.js.map +1 -0
  55. package/dist/routes/api/v1/auth/index.d.ts.map +1 -0
  56. package/dist/routes/api/v1/auth/index.js.map +1 -0
  57. package/dist/routes/api/v1/auth/route.d.ts.map +1 -0
  58. package/dist/routes/api/v1/auth/route.js.map +1 -0
  59. package/dist/routes/api/v1/auth-settings/index.d.ts.map +1 -0
  60. package/dist/routes/api/v1/auth-settings/index.js.map +1 -0
  61. package/dist/routes/api/v1/auth-settings/route.d.ts.map +1 -0
  62. package/dist/routes/api/v1/auth-settings/route.js.map +1 -0
  63. package/dist/routes/api/v1/chats/[id]/index.d.ts.map +1 -0
  64. package/dist/routes/api/v1/chats/[id]/index.js.map +1 -0
  65. package/dist/routes/api/v1/chats/[id]/route.d.ts.map +1 -0
  66. package/dist/routes/api/v1/chats/[id]/route.js.map +1 -0
  67. package/dist/routes/api/v1/chats/index.d.ts.map +1 -0
  68. package/dist/routes/api/v1/chats/index.js.map +1 -0
  69. package/dist/routes/api/v1/chats/route.d.ts.map +1 -0
  70. package/dist/routes/api/v1/chats/route.js.map +1 -0
  71. package/dist/routes/api/v1/config/index.d.ts.map +1 -0
  72. package/dist/routes/api/v1/config/index.js.map +1 -0
  73. package/dist/routes/api/v1/config/route.d.ts.map +1 -0
  74. package/dist/routes/api/v1/config/route.js.map +1 -0
  75. package/dist/routes/api/v1/context/architecture/route.d.ts.map +1 -0
  76. package/dist/routes/api/v1/context/architecture/route.js.map +1 -0
  77. package/dist/routes/api/v1/context/index.d.ts.map +1 -0
  78. package/dist/routes/api/v1/context/index.js.map +1 -0
  79. package/dist/routes/api/v1/context/knowledge/[filename]/index.d.ts.map +1 -0
  80. package/dist/routes/api/v1/context/knowledge/[filename]/index.js.map +1 -0
  81. package/dist/routes/api/v1/context/knowledge/[filename]/route.d.ts.map +1 -0
  82. package/dist/routes/api/v1/context/knowledge/[filename]/route.js +5 -2
  83. package/dist/routes/api/v1/context/knowledge/[filename]/route.js.map +1 -0
  84. package/dist/routes/api/v1/context/knowledge/index.d.ts.map +1 -0
  85. package/dist/routes/api/v1/context/knowledge/index.js.map +1 -0
  86. package/dist/routes/api/v1/context/knowledge/route.d.ts.map +1 -0
  87. package/dist/routes/api/v1/context/knowledge/route.js +5 -2
  88. package/dist/routes/api/v1/context/knowledge/route.js.map +1 -0
  89. package/dist/routes/api/v1/context/project/route.d.ts.map +1 -0
  90. package/dist/routes/api/v1/context/project/route.js.map +1 -0
  91. package/dist/routes/api/v1/events/status/route.d.ts +1 -1
  92. package/dist/routes/api/v1/git/index.d.ts.map +1 -0
  93. package/dist/routes/api/v1/git/index.js.map +1 -0
  94. package/dist/routes/api/v1/jobs/[id]/route.d.ts.map +1 -0
  95. package/dist/routes/api/v1/jobs/[id]/route.js.map +1 -0
  96. package/dist/routes/api/v1/jobs/[id]/run/route.d.ts +2 -2
  97. package/dist/routes/api/v1/jobs/[id]/run/route.d.ts.map +1 -0
  98. package/dist/routes/api/v1/jobs/[id]/run/route.js.map +1 -0
  99. package/dist/routes/api/v1/jobs/index.d.ts.map +1 -0
  100. package/dist/routes/api/v1/jobs/index.js.map +1 -0
  101. package/dist/routes/api/v1/jobs/route.d.ts.map +1 -0
  102. package/dist/routes/api/v1/jobs/route.js.map +1 -0
  103. package/dist/routes/api/v1/jobs/status/route.d.ts +1 -1
  104. package/dist/routes/api/v1/jobs/status/route.d.ts.map +1 -0
  105. package/dist/routes/api/v1/jobs/status/route.js.map +1 -0
  106. package/dist/routes/api/v1/mcp/index.d.ts.map +1 -0
  107. package/dist/routes/api/v1/mcp/index.js +6 -1
  108. package/dist/routes/api/v1/mcp/index.js.map +1 -0
  109. package/dist/routes/api/v1/mcp/route.d.ts.map +1 -0
  110. package/dist/routes/api/v1/mcp/route.js.map +1 -0
  111. package/dist/routes/api/v1/proposals/[id]/route.d.ts +8 -8
  112. package/dist/routes/api/v1/proposals/[id]/route.d.ts.map +1 -0
  113. package/dist/routes/api/v1/proposals/[id]/route.js.map +1 -0
  114. package/dist/routes/api/v1/proposals/index.d.ts.map +1 -0
  115. package/dist/routes/api/v1/proposals/index.js.map +1 -0
  116. package/dist/routes/api/v1/proposals/route.d.ts.map +1 -0
  117. package/dist/routes/api/v1/proposals/route.js.map +1 -0
  118. package/dist/routes/api/v1/resources/[id]/index.d.ts.map +1 -0
  119. package/dist/routes/api/v1/resources/[id]/index.js.map +1 -0
  120. package/dist/routes/api/v1/resources/[id]/route.js.map +1 -0
  121. package/dist/routes/api/v1/resources/[id]/thumbnail/index.d.ts.map +1 -0
  122. package/dist/routes/api/v1/resources/[id]/thumbnail/index.js.map +1 -0
  123. package/dist/routes/api/v1/resources/[id]/thumbnail/route.js.map +1 -0
  124. package/dist/routes/api/v1/resources/index.d.ts.map +1 -0
  125. package/dist/routes/api/v1/resources/index.js.map +1 -0
  126. package/dist/routes/api/v1/resources/route.d.ts.map +1 -0
  127. package/dist/routes/api/v1/resources/route.js.map +1 -0
  128. package/dist/routes/api/v1/symlinks/index.d.ts.map +1 -0
  129. package/dist/routes/api/v1/symlinks/index.js.map +1 -0
  130. package/dist/routes/api/v1/symlinks/route.d.ts.map +1 -0
  131. package/dist/routes/api/v1/symlinks/route.js.map +1 -0
  132. package/dist/routes/api/v1/terminal/[proposalId]/create/index.d.ts.map +1 -0
  133. package/dist/routes/api/v1/terminal/[proposalId]/create/index.js.map +1 -0
  134. package/dist/routes/api/v1/terminal/[proposalId]/create/route.d.ts.map +1 -0
  135. package/dist/routes/api/v1/terminal/[proposalId]/create/route.js.map +1 -0
  136. package/dist/routes/api/v1/terminal/[proposalId]/destroy/index.d.ts.map +1 -0
  137. package/dist/routes/api/v1/terminal/[proposalId]/destroy/index.js.map +1 -0
  138. package/dist/routes/api/v1/terminal/[proposalId]/destroy/route.d.ts.map +1 -0
  139. package/dist/routes/api/v1/terminal/[proposalId]/destroy/route.js.map +1 -0
  140. package/dist/routes/api/v1/terminal/[proposalId]/resize/index.d.ts.map +1 -0
  141. package/dist/routes/api/v1/terminal/[proposalId]/resize/index.js.map +1 -0
  142. package/dist/routes/api/v1/terminal/[proposalId]/resize/route.d.ts.map +1 -0
  143. package/dist/routes/api/v1/terminal/[proposalId]/resize/route.js.map +1 -0
  144. package/dist/routes/api/v1/terminal/sessions/index.d.ts.map +1 -0
  145. package/dist/routes/api/v1/terminal/sessions/index.js.map +1 -0
  146. package/dist/routes/api/v1/terminal/sessions/route.d.ts.map +1 -0
  147. package/dist/routes/api/v1/terminal/sessions/route.js.map +1 -0
  148. package/dist/routes/api/v1/user/index.d.ts.map +1 -0
  149. package/dist/routes/api/v1/user/index.js.map +1 -0
  150. package/dist/routes/api/v1/user/settings/index.d.ts.map +1 -0
  151. package/dist/routes/api/v1/user/settings/index.js.map +1 -0
  152. package/dist/routes/api/v1/user/settings/route.d.ts.map +1 -0
  153. package/dist/routes/api/v1/user/settings/route.js.map +1 -0
  154. package/dist/server-with-static.d.ts.map +1 -0
  155. package/dist/server-with-static.js.map +1 -0
  156. package/dist/server.d.ts.map +1 -0
  157. package/dist/server.js.map +1 -0
  158. package/package.json +4 -4
  159. package/static/assets/AgentDetailPage-DwWIjGx1.js +1 -0
  160. package/static/assets/AgentEditPage-BvVPfYR3.js +1 -0
  161. package/static/assets/AgentsPage-D-Uy87Gh.js +3 -0
  162. package/static/assets/AgentsSettingsPage-CDuAvFxu.js +6 -0
  163. package/static/assets/ApiKeysSettingsPage-Jug0kB7Z.js +7 -0
  164. package/static/assets/ArchitectureEditPage-BmAgJAMV.js +21 -0
  165. package/static/assets/ArchitecturePage-ZjbdnDA7.js +1 -0
  166. package/static/assets/AuthSettingsPage-_pXoewOB.js +11 -0
  167. package/static/assets/CallbackPage-CaAOpz4z.js +1 -0
  168. package/static/assets/CodePage-DEbgr8C1.js +2 -0
  169. package/static/assets/CollapsibleSection-msxUBh1L.js +1 -0
  170. package/static/assets/DashboardPage-BXu-fikP.js +11 -0
  171. package/static/assets/GitPage-B7qFcP-K.js +16 -0
  172. package/static/assets/GitSettingsPage-D7GjdOnE.js +6 -0
  173. package/static/assets/IdentityPage-BR48gNhN.js +11 -0
  174. package/static/assets/ImplementationStepsEditor-BdHMNVVd.js +6 -0
  175. package/static/assets/IntegrationsSettingsPage-B1OHGlDC.js +1 -0
  176. package/static/assets/KnowledgeDetailPage-DBOQQs3R.js +1 -0
  177. package/static/assets/KnowledgeEditPage-DHJxLPwi.js +1 -0
  178. package/static/assets/KnowledgePage-CuuDTMa_.js +8 -0
  179. package/static/assets/LoginPage-IIU6NAG9.js +1 -0
  180. package/static/assets/McpSettingsPage-iz5gLGWt.js +1 -0
  181. package/static/assets/NewAgentPage-DolltGy5.js +1 -0
  182. package/static/assets/NewKnowledgePage-_jbUZqBU.js +9 -0
  183. package/static/assets/NewProposalPage-bFnfuuoA.js +90 -0
  184. package/static/assets/ProjectEditPage-DTTjPnGj.js +11 -0
  185. package/static/assets/ProjectPage-DhwrnEq2.js +1 -0
  186. package/static/assets/PromptsSettingsPage-DLOVysbE.js +1 -0
  187. package/static/assets/ProposalDetailPage-KvjXUaaf.js +1 -0
  188. package/static/assets/ProposalEditPage-BmzkHL9a.js +1 -0
  189. package/static/assets/ProposalsPage-DwQr1ycd.js +17 -0
  190. package/static/assets/ResourcesPage-B8Hm_j47.js +66 -0
  191. package/static/assets/RulesSettingsPage-CsGXFTFY.js +16 -0
  192. package/static/assets/SchedulePage-CY8GdQlp.js +4 -0
  193. package/static/assets/TagInput-CbH9zq5n.js +1 -0
  194. package/static/assets/TerminalPage-DsjOLnyY.js +1 -0
  195. package/static/assets/TerminalSessionPage-DQ065WYU.js +13 -0
  196. package/static/assets/UserPreferencesPage-55VTrzfQ.js +1 -0
  197. package/static/assets/UserSettingsPage-BZwb93B4.js +1 -0
  198. package/static/assets/UtilitiesPage-BmEW7eJ_.js +1 -0
  199. package/static/assets/alert-CNSGDe1U.js +1 -0
  200. package/static/assets/arrow-down-D1dapxzl.js +6 -0
  201. package/static/assets/arrow-left-CEZFPQje.js +6 -0
  202. package/static/assets/arrow-up-D-lB4Ah6.js +6 -0
  203. package/static/assets/badge-DO6e5hC1.js +1 -0
  204. package/static/assets/browser-modal-BTxVvZIA.js +6 -0
  205. package/static/assets/calendar-DWaFMSXH.js +6 -0
  206. package/static/assets/card-Cnz8b7Ou.js +1 -0
  207. package/static/assets/chevron-left-CNgc28Tc.js +6 -0
  208. package/static/assets/circle-alert-Dick-jNf.js +6 -0
  209. package/static/assets/circle-check-DDk43rYV.js +6 -0
  210. package/static/assets/circle-check-big-B70gdce7.js +6 -0
  211. package/static/assets/circle-play-TJEfmKde.js +6 -0
  212. package/static/assets/circle-x-BfR2YcXx.js +6 -0
  213. package/static/assets/clipboard-B9ndUJKl.js +1 -0
  214. package/static/assets/clipboard-BTZru8wn.js +11 -0
  215. package/static/assets/clock-DQXbrDkQ.js +6 -0
  216. package/static/assets/download-CW_rWwud.js +6 -0
  217. package/static/assets/droid-CmYuCN_q.js +4 -0
  218. package/static/assets/eye-Bv6mO2ld.js +6 -0
  219. package/static/assets/folder-git-2-Cv5NbBZZ.js +6 -0
  220. package/static/assets/index-BSBM4i_g.js +458 -0
  221. package/static/assets/index-CKwmN6yL.css +2 -0
  222. package/static/assets/label-vEgNxdb2.js +1 -0
  223. package/static/assets/markdown-editor-DUEthZ0y.css +1 -0
  224. package/static/assets/markdown-editor-O6tGYa1a.js +62 -0
  225. package/static/assets/pause-6aQLhmG9.js +6 -0
  226. package/static/assets/play-DsDsjO2V.js +6 -0
  227. package/static/assets/plus-BfBtnncn.js +6 -0
  228. package/static/assets/radio-group-D_RD_9vY.js +1 -0
  229. package/static/assets/refresh-cw-DvFNtws1.js +6 -0
  230. package/static/assets/search-kcgmZUqQ.js +6 -0
  231. package/static/assets/switch-Bjq8cgQn.js +1 -0
  232. package/static/assets/tabs-DDbBXbPg.js +1 -0
  233. package/static/assets/tag-Czz-3rNY.js +6 -0
  234. package/static/assets/terminal-preview-B7iP2vUT.js +11 -0
  235. package/static/assets/use-terminal-CN3pheMp.js +1 -0
  236. package/static/assets/xterm-DTxiCjtJ.js +9 -0
  237. package/static/assets/xterm-qxJ8_QYu.css +32 -0
  238. package/static/assets/zap-BMkP_c9R.js +6 -0
  239. package/static/index.html +2 -2
  240. package/static/assets/index-B2wygg2W.css +0 -33
  241. package/static/assets/index-CYlVRUG2.js +0 -969
@@ -0,0 +1,6 @@
1
+ import{c as e}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const t=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],o=e("pause",t);export{o as P};
@@ -0,0 +1,6 @@
1
+ import{c as a}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const o=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],e=a("play",o);export{e as P};
@@ -0,0 +1,6 @@
1
+ import{c as e}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const o=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],c=e("plus",o);export{c as P};
@@ -0,0 +1 @@
1
+ import{r as n,a_ as E,a$ as K,b0 as T,j as a,b1 as N,b2 as U,b3 as x,b4 as w,b5 as V,b6 as g,b7 as $,b8 as z,b9 as H,f as I,ba as W}from"./index-BSBM4i_g.js";var C="Radio",[X,_]=N(C),[Y,J]=X(C),j=n.forwardRef((r,t)=>{const{__scopeRadio:e,name:d,checked:o=!1,required:s,disabled:i,value:p="on",onCheck:f,form:R,...v}=r,[l,m]=n.useState(null),c=w(t,y=>m(y)),u=n.useRef(!1),b=l?R||!!l.closest("form"):!0;return a.jsxs(Y,{scope:e,checked:o,disabled:i,children:[a.jsx(x.button,{type:"button",role:"radio","aria-checked":o,"data-state":S(o),"data-disabled":i?"":void 0,disabled:i,value:p,...v,ref:c,onClick:g(r.onClick,y=>{o||f?.(),b&&(u.current=y.isPropagationStopped(),u.current||y.stopPropagation())})}),b&&a.jsx(P,{control:l,bubbles:!u.current,name:d,value:p,checked:o,required:s,disabled:i,form:R,style:{transform:"translateX(-100%)"}})]})});j.displayName=C;var k="RadioIndicator",G=n.forwardRef((r,t)=>{const{__scopeRadio:e,forceMount:d,...o}=r,s=J(k,e);return a.jsx($,{present:d||s.checked,children:a.jsx(x.span,{"data-state":S(s.checked),"data-disabled":s.disabled?"":void 0,...o,ref:t})})});G.displayName=k;var Q="RadioBubbleInput",P=n.forwardRef(({__scopeRadio:r,control:t,checked:e,bubbles:d=!0,...o},s)=>{const i=n.useRef(null),p=w(i,s),f=z(e),R=H(t);return n.useEffect(()=>{const v=i.current;if(!v)return;const l=window.HTMLInputElement.prototype,c=Object.getOwnPropertyDescriptor(l,"checked").set;if(f!==e&&c){const u=new Event("click",{bubbles:d});c.call(v,e),v.dispatchEvent(u)}},[f,e,d]),a.jsx(x.input,{type:"radio","aria-hidden":!0,defaultChecked:e,...o,tabIndex:-1,ref:p,style:{...o.style,...R,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});P.displayName=Q;function S(r){return r?"checked":"unchecked"}var Z=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],h="RadioGroup",[ee,de]=N(h,[E,_]),A=E(),D=_(),[oe,re]=ee(h),M=n.forwardRef((r,t)=>{const{__scopeRadioGroup:e,name:d,defaultValue:o,value:s,required:i=!1,disabled:p=!1,orientation:f,dir:R,loop:v=!0,onValueChange:l,...m}=r,c=A(e),u=K(R),[b,y]=T({prop:s,defaultProp:o??null,onChange:l,caller:h});return a.jsx(oe,{scope:e,name:d,required:i,disabled:p,value:b,onValueChange:y,children:a.jsx(U,{asChild:!0,...c,orientation:f,dir:u,loop:v,children:a.jsx(x.div,{role:"radiogroup","aria-required":i,"aria-orientation":f,"data-disabled":p?"":void 0,dir:u,...m,ref:t})})})});M.displayName=h;var O="RadioGroupItem",F=n.forwardRef((r,t)=>{const{__scopeRadioGroup:e,disabled:d,...o}=r,s=re(O,e),i=s.disabled||d,p=A(e),f=D(e),R=n.useRef(null),v=w(t,R),l=s.value===o.value,m=n.useRef(!1);return n.useEffect(()=>{const c=b=>{Z.includes(b.key)&&(m.current=!0)},u=()=>m.current=!1;return document.addEventListener("keydown",c),document.addEventListener("keyup",u),()=>{document.removeEventListener("keydown",c),document.removeEventListener("keyup",u)}},[]),a.jsx(V,{asChild:!0,...p,focusable:!i,active:l,children:a.jsx(j,{disabled:i,required:s.required,checked:l,...f,...o,name:s.name,ref:v,onCheck:()=>s.onValueChange(o.value),onKeyDown:g(c=>{c.key==="Enter"&&c.preventDefault()}),onFocus:g(o.onFocus,()=>{m.current&&R.current?.click()})})})});F.displayName=O;var ae="RadioGroupIndicator",L=n.forwardRef((r,t)=>{const{__scopeRadioGroup:e,...d}=r,o=D(e);return a.jsx(G,{...o,...d,ref:t})});L.displayName=ae;var q=M,B=F,te=L;const se=n.forwardRef(({className:r,...t},e)=>a.jsx(q,{className:I("grid gap-2",r),...t,ref:e}));se.displayName=q.displayName;const ne=n.forwardRef(({className:r,...t},e)=>a.jsx(B,{ref:e,className:I("aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",r),...t,children:a.jsx(te,{className:"flex items-center justify-center",children:a.jsx(W,{className:"h-2.5 w-2.5 fill-current text-current"})})}));ne.displayName=B.displayName;export{se as R,ne as a};
@@ -0,0 +1,6 @@
1
+ import{c as e}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const c=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],a=e("refresh-cw",c);export{a as R};
@@ -0,0 +1,6 @@
1
+ import{c}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const e=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],o=c("search",e);export{o as S};
@@ -0,0 +1 @@
1
+ import{r as c,j as e,f as i}from"./index-BSBM4i_g.js";const d=c.forwardRef(({className:s,onCheckedChange:r,onChange:t,...o},n)=>{const l=a=>{t?.(a),r?.(a.target.checked)};return e.jsxs("label",{className:i("relative inline-flex cursor-pointer",s),children:[e.jsx("input",{type:"checkbox",className:"sr-only peer",onChange:l,ref:n,...o}),e.jsx("div",{className:"block bg-gray-300 w-9 h-5 rounded-full transition-colors duration-200 ease-in-out peer-checked:bg-blue-600"}),e.jsx("div",{className:"absolute left-0 top-0 bg-white w-4 h-4 rounded-full mt-0.5 ml-0.5 transition-transform duration-200 ease-in-out transform peer-checked:translate-x-4 shadow"})]})});d.displayName="Switch";export{d as S};
@@ -0,0 +1 @@
1
+ import{r as l,a$ as F,b0 as $,j as c,b1 as D,bc as V,b3 as g,a_ as y,b2 as k,b5 as G,b6 as m,b7 as L,f as T}from"./index-BSBM4i_g.js";var p="Tabs",[K,Q]=D(p,[y]),h=y(),[B,x]=K(p),N=l.forwardRef((e,a)=>{const{__scopeTabs:t,value:o,onValueChange:r,defaultValue:d,orientation:n="horizontal",dir:u,activationMode:f="automatic",...v}=e,i=F(u),[s,b]=$({prop:o,onChange:r,defaultProp:d??"",caller:p});return c.jsx(B,{scope:t,baseId:V(),value:s,onValueChange:b,orientation:n,dir:i,activationMode:f,children:c.jsx(g.div,{dir:i,"data-orientation":n,...v,ref:a})})});N.displayName=p;var C="TabsList",I=l.forwardRef((e,a)=>{const{__scopeTabs:t,loop:o=!0,...r}=e,d=x(C,t),n=h(t);return c.jsx(k,{asChild:!0,...n,orientation:d.orientation,dir:d.dir,loop:o,children:c.jsx(g.div,{role:"tablist","aria-orientation":d.orientation,...r,ref:a})})});I.displayName=C;var R="TabsTrigger",j=l.forwardRef((e,a)=>{const{__scopeTabs:t,value:o,disabled:r=!1,...d}=e,n=x(R,t),u=h(t),f=A(n.baseId,o),v=E(n.baseId,o),i=o===n.value;return c.jsx(G,{asChild:!0,...u,focusable:!r,active:i,children:c.jsx(g.button,{type:"button",role:"tab","aria-selected":i,"aria-controls":v,"data-state":i?"active":"inactive","data-disabled":r?"":void 0,disabled:r,id:f,...d,ref:a,onMouseDown:m(e.onMouseDown,s=>{!r&&s.button===0&&s.ctrlKey===!1?n.onValueChange(o):s.preventDefault()}),onKeyDown:m(e.onKeyDown,s=>{[" ","Enter"].includes(s.key)&&n.onValueChange(o)}),onFocus:m(e.onFocus,()=>{const s=n.activationMode!=="manual";!i&&!r&&s&&n.onValueChange(o)})})})});j.displayName=R;var w="TabsContent",_=l.forwardRef((e,a)=>{const{__scopeTabs:t,value:o,forceMount:r,children:d,...n}=e,u=x(w,t),f=A(u.baseId,o),v=E(u.baseId,o),i=o===u.value,s=l.useRef(i);return l.useEffect(()=>{const b=requestAnimationFrame(()=>s.current=!1);return()=>cancelAnimationFrame(b)},[]),c.jsx(L,{present:r||i,children:({present:b})=>c.jsx(g.div,{"data-state":i?"active":"inactive","data-orientation":u.orientation,role:"tabpanel","aria-labelledby":f,hidden:!b,id:v,tabIndex:0,...n,ref:a,style:{...e.style,animationDuration:s.current?"0s":void 0},children:b&&d})})});_.displayName=w;function A(e,a){return`${e}-trigger-${a}`}function E(e,a){return`${e}-content-${a}`}var q=N,S=I,M=j,P=_;const U=q,z=l.forwardRef(({className:e,...a},t)=>c.jsx(S,{ref:t,className:T("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...a}));z.displayName=S.displayName;const H=l.forwardRef(({className:e,...a},t)=>c.jsx(M,{ref:t,className:T("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...a}));H.displayName=M.displayName;const O=l.forwardRef(({className:e,...a},t)=>c.jsx(P,{ref:t,className:T("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...a}));O.displayName=P.displayName;export{U as T,z as a,H as b,O as c};
@@ -0,0 +1,6 @@
1
+ import{c}from"./index-BSBM4i_g.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const a=[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]],e=c("tag",a);export{e as T};
@@ -0,0 +1,11 @@
1
+ import{c as p,r as e,ab as S,j as u}from"./index-BSBM4i_g.js";import{x as F,a as N}from"./xterm-DTxiCjtJ.js";/**
2
+ * @license lucide-react v0.542.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const C=[["path",{d:"m7 6 5 5 5-5",key:"1lc07p"}],["path",{d:"m7 13 5 5 5-5",key:"1d48rs"}]],B=p("chevrons-down",C);/**
7
+ * @license lucide-react v0.542.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const M=[["path",{d:"m17 11-5-5-5 5",key:"e8nh98"}],["path",{d:"m17 18-5-5-5 5",key:"2avn1x"}]],L=p("chevrons-up",M);function $({sessionId:l,className:v,heightPx:f=160,maxScrollback:h=200}){const m=e.useRef(null),y=e.useRef(null),w=e.useRef(null),x=e.useRef(null),[R,k]=e.useState(!0),o=e.useRef([]),c=e.useRef(null);return e.useEffect(()=>{const i=m.current;if(!i||!l)return;const t=new F.Terminal({disableStdin:!0,cursorBlink:!1,convertEol:!0,scrollback:Math.max(50,Math.min(h,1e3)),fontSize:12,fontFamily:'Monaco, Menlo, "Ubuntu Mono", monospace',theme:{background:"#1e1e1e",foreground:"#d4d4d4",black:"#000000",red:"#cd3131",green:"#0dbc79",yellow:"#e5e510",blue:"#2472c8",magenta:"#bc3fbc",cyan:"#11a8cd",white:"#e5e5e5",brightBlack:"#666666",brightRed:"#f14c4c",brightGreen:"#23d18b",brightYellow:"#f5f543",brightBlue:"#3b8eea",brightMagenta:"#d670d6",brightCyan:"#29b8db",brightWhite:"#e5e5e5"}}),d=new N.FitAddon;t.loadAddon(d),t.open(i),i.style.height=`${f}px`,y.current=t,w.current=d;const a=()=>{try{const n=i.getBoundingClientRect();n.width>8&&n.height>8&&d.fit()}catch{}};a();const b=new ResizeObserver(()=>a());b.observe(i);const g=()=>{document.visibilityState==="visible"&&setTimeout(a,50)};document.addEventListener("visibilitychange",g);const s=new WebSocket(`${S}/ws/terminal-preview/${l}`);x.current=s,s.onopen=()=>k(!1);const E=()=>{c.current=null;const n=o.current;if(n.length){o.current=[];try{t.write(n.join(""))}catch{}}},j=()=>{c.current===null&&(c.current=requestAnimationFrame(E))};return s.onmessage=n=>{let r;try{r=JSON.parse(n.data)}catch{return}if(r?.type==="snapshot"){if(t.reset(),o.current=[],r.data)try{t.write(r.data)}catch{}a()}else r?.type==="data"&&r.data&&(o.current.push(String(r.data)),j())},s.onclose=()=>{},s.onerror=()=>{},()=>{b.disconnect(),document.removeEventListener("visibilitychange",g);try{s.close()}catch{}c.current!==null&&cancelAnimationFrame(c.current),c.current=null,o.current=[],t.dispose()}},[l,f,h]),u.jsxs("div",{className:`relative w-full ${v||""}`.trim(),children:[R&&u.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-gray-50/60 z-10",children:u.jsx("div",{className:"text-xs text-muted-foreground",children:"Loading preview…"})}),u.jsx("div",{ref:m,className:"border border-muted rounded overflow-hidden"})]})}export{L as C,$ as T,B as a};
@@ -0,0 +1 @@
1
+ import{r as i,ag as b,A as f}from"./index-BSBM4i_g.js";function j(){const[y,u]=i.useState([]),[g,c]=i.useState(!1),[m,o]=i.useState(null),{refresh:p}=b(),d=i.useCallback(async(s,n,r)=>{try{c(!0),o(null);const e=await fetch(`${f}/api/v1/terminal/${s}/create`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({enableLogging:n||!1,startupCommand:r})});if(!e.ok){const a=await e.json();throw new Error(a.error||"Failed to create terminal session")}const t=await e.json();return await p(),t.sessionId}catch(e){const t=e instanceof Error?e.message:"Unknown error";return o(t),null}finally{c(!1)}},[p]),S=i.useCallback(async s=>{try{c(!0),o(null);let n;if(s.startsWith("session-")){const e=s.split("-");n=`${e[0]}-${e[1]}`}else{const e=s.split("-");n=`${e[0]}-${e[1]}`}const r=await fetch(`${f}/api/v1/terminal/${n}/destroy`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:s})});if(!r.ok){const e=await r.json();throw new Error(e.error||"Failed to destroy terminal session")}return u(e=>e.filter(t=>t.id!==s)),await p(),!0}catch(n){const r=n instanceof Error?n.message:"Unknown error";return o(r),!1}finally{c(!1)}},[p]),$=i.useCallback(async(s,n,r)=>{try{o(null);let e;if(s.startsWith("session-")){const a=s.split("-");e=`${a[0]}-${a[1]}`}else{const a=s.split("-");e=`${a[0]}-${a[1]}`}const t=await fetch(`${f}/api/v1/terminal/${e}/resize`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:s,cols:n,rows:r})});if(!t.ok){const a=await t.json();throw new Error(a.error||"Failed to resize terminal session")}return!0}catch(e){const t=e instanceof Error?e.message:"Unknown error";return o(t),!1}},[]),k=i.useCallback(async(s,n,r)=>{try{c(!0),o(null);const e=new URLSearchParams;s&&e.set("proposalId",s),n&&(e.set("withPreview","true"),r&&Number.isFinite(r)&&e.set("lines",String(r)));const t=`${f}/api/v1/terminal/sessions${e.toString()?`?${e.toString()}`:""}`,a=await fetch(t);if(!a.ok){const l=await a.json();throw new Error(l.error||"Failed to fetch terminal sessions")}const w=await a.json();u(w.sessions)}catch(e){const t=e instanceof Error?e.message:"Unknown error";o(t)}finally{c(!1)}},[]),E=i.useCallback(async(s,n=8)=>{try{o(null);const r=new URLSearchParams;r.set("sessionId",s),r.set("withPreview","true"),r.set("lines",String(n)),r.set("colorize","true");const e=`${f}/api/v1/terminal/sessions?${r.toString()}`,t=await fetch(e);if(!t.ok){const l=await t.json().catch(()=>({}));throw new Error(l.error||"Failed to fetch preview")}const a=await t.json(),w=Array.isArray(a?.sessions)&&a.sessions[0]?.preview?a.sessions[0].preview:[];return u(l=>l.map(h=>h.id===s?{...h,preview:w}:h)),w}catch(r){const e=r instanceof Error?r.message:"Unknown error";return o(e),[]}},[]);return{sessions:y,loading:g,error:m,createSession:d,destroySession:S,resizeSession:$,refreshSessions:k,fetchPreview:E}}export{j as u};