sparkecoder 0.1.130 → 0.1.132

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 (216) hide show
  1. package/README.md +3 -3
  2. package/dist/agent/index.d.ts +3 -3
  3. package/dist/agent/index.js +1480 -638
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/cli.js +2281 -808
  6. package/dist/cli.js.map +1 -1
  7. package/dist/db/index.d.ts +2 -2
  8. package/dist/db/index.js.map +1 -1
  9. package/dist/{index-Bcz0aCAR.d.ts → index-BM99kjgq.d.ts} +177 -103
  10. package/dist/index.d.ts +5 -5
  11. package/dist/index.js +2215 -780
  12. package/dist/index.js.map +1 -1
  13. package/dist/{schema-BWbWmfDQ.d.ts → schema-Dz-wABVY.d.ts} +27 -4
  14. package/dist/{search-DOzC4ojH.d.ts → search-CVVfuBPZ.d.ts} +4 -4
  15. package/dist/server/index.js +2215 -780
  16. package/dist/server/index.js.map +1 -1
  17. package/dist/skills/default/build-context-and-solve-issue.md +74 -0
  18. package/dist/skills/default/doublecheck.md +95 -0
  19. package/dist/tools/index.d.ts +3 -3
  20. package/dist/tools/index.js +11 -2
  21. package/dist/tools/index.js.map +1 -1
  22. package/package.json +1 -1
  23. package/src/skills/default/build-context-and-solve-issue.md +74 -0
  24. package/src/skills/default/doublecheck.md +95 -0
  25. package/web/.next/BUILD_ID +1 -1
  26. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  27. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  28. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  29. package/web/.next/standalone/web/.next/server/app/(main)/agents/page/next-font-manifest.json +1 -1
  30. package/web/.next/standalone/web/.next/server/app/(main)/agents/page_client-reference-manifest.js +1 -1
  31. package/web/.next/standalone/web/.next/server/app/(main)/page/next-font-manifest.json +1 -1
  32. package/web/.next/standalone/web/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
  33. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page/next-font-manifest.json +1 -1
  34. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page_client-reference-manifest.js +1 -1
  35. package/web/.next/standalone/web/.next/server/app/(main)/settings/page/next-font-manifest.json +1 -1
  36. package/web/.next/standalone/web/.next/server/app/(main)/settings/page_client-reference-manifest.js +1 -1
  37. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  38. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  39. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  40. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  41. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  43. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  44. package/web/.next/standalone/web/.next/server/app/_not-found/page/next-font-manifest.json +1 -1
  45. package/web/.next/standalone/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  46. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  47. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +3 -3
  48. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  49. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  50. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  51. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  52. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  53. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  54. package/web/.next/standalone/web/.next/server/app/agents.html +1 -1
  55. package/web/.next/standalone/web/.next/server/app/agents.rsc +6 -6
  56. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +2 -2
  57. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
  58. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +2 -2
  59. package/web/.next/standalone/web/.next/server/app/agents.segments/_full.segment.rsc +6 -6
  60. package/web/.next/standalone/web/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  61. package/web/.next/standalone/web/.next/server/app/agents.segments/_index.segment.rsc +3 -3
  62. package/web/.next/standalone/web/.next/server/app/agents.segments/_tree.segment.rsc +3 -3
  63. package/web/.next/standalone/web/.next/server/app/api/config/route.js.nft.json +1 -1
  64. package/web/.next/standalone/web/.next/server/app/api/health/route.js.nft.json +1 -1
  65. package/web/.next/standalone/web/.next/server/app/docs/installation/page/next-font-manifest.json +1 -1
  66. package/web/.next/standalone/web/.next/server/app/docs/installation/page_client-reference-manifest.js +1 -1
  67. package/web/.next/standalone/web/.next/server/app/docs/installation.html +4 -4
  68. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +6 -6
  69. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +6 -6
  70. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  71. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +3 -3
  72. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +2 -2
  73. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +20 -21
  74. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  75. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +2 -2
  76. package/web/.next/standalone/web/.next/server/app/docs/page/next-font-manifest.json +1 -1
  77. package/web/.next/standalone/web/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  78. package/web/.next/standalone/web/.next/server/app/docs/skills/page/next-font-manifest.json +1 -1
  79. package/web/.next/standalone/web/.next/server/app/docs/skills/page_client-reference-manifest.js +1 -1
  80. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  81. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +4 -4
  82. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +4 -4
  83. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  84. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +3 -3
  85. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +2 -2
  86. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  87. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  88. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +2 -2
  89. package/web/.next/standalone/web/.next/server/app/docs/tools/page/next-font-manifest.json +1 -1
  90. package/web/.next/standalone/web/.next/server/app/docs/tools/page_client-reference-manifest.js +1 -1
  91. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  92. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +4 -4
  93. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +4 -4
  94. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  95. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +3 -3
  96. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +2 -2
  97. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +2 -2
  98. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  99. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +2 -2
  100. package/web/.next/standalone/web/.next/server/app/docs.html +3 -3
  101. package/web/.next/standalone/web/.next/server/app/docs.rsc +5 -5
  102. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +5 -5
  103. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  104. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +3 -3
  105. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  106. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +3 -3
  107. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +2 -2
  108. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  109. package/web/.next/standalone/web/.next/server/app/index.rsc +6 -6
  110. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +2 -2
  111. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +2 -2
  112. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +6 -6
  113. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  114. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +3 -3
  115. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +3 -3
  116. package/web/.next/standalone/web/.next/server/app/settings.html +1 -1
  117. package/web/.next/standalone/web/.next/server/app/settings.rsc +6 -6
  118. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings/__PAGE__.segment.rsc +2 -2
  119. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings.segment.rsc +1 -1
  120. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p.segment.rsc +2 -2
  121. package/web/.next/standalone/web/.next/server/app/settings.segments/_full.segment.rsc +6 -6
  122. package/web/.next/standalone/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  123. package/web/.next/standalone/web/.next/server/app/settings.segments/_index.segment.rsc +3 -3
  124. package/web/.next/standalone/web/.next/server/app/settings.segments/_tree.segment.rsc +3 -3
  125. package/web/.next/standalone/web/.next/server/chunks/[root-of-the-server]__36edac7c._.js +1 -1
  126. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__397fadd4._.js +1 -1
  127. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__70cecda8._.js +1 -1
  128. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__be5e2967._.js +1 -1
  129. package/web/.next/standalone/web/.next/server/chunks/ssr/web_src_app_(main)_layout_tsx_453f6492._.js +1 -1
  130. package/web/.next/standalone/web/.next/server/chunks/ssr/web_src_app_(main)_page_tsx_5ac4794b._.js +1 -1
  131. package/web/.next/standalone/web/.next/server/chunks/ssr/web_src_app_(main)_settings_page_tsx_eb320e07._.js +2 -2
  132. package/web/.next/standalone/web/.next/server/next-font-manifest.js +1 -1
  133. package/web/.next/standalone/web/.next/server/next-font-manifest.json +9 -9
  134. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  135. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  136. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  137. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  138. package/web/.next/standalone/web/.next/static/chunks/185f69f6478ba713.js +1 -0
  139. package/web/.next/standalone/web/.next/static/chunks/20ca4e35e9bb3e94.js +3 -0
  140. package/web/.next/standalone/web/.next/static/chunks/{a7d5d0791c8c6223.css → 34d933785a17edf3.css} +1 -1
  141. package/web/.next/standalone/web/.next/static/chunks/7549a5b7c7f6786e.js +1 -0
  142. package/web/.next/standalone/web/.next/static/{static/chunks/c5dd884b71007965.js → chunks/a839c83078c56476.js} +1 -1
  143. package/web/.next/standalone/web/.next/static/media/4fa387ec64143e14-s.3b336396.woff2 +0 -0
  144. package/web/.next/standalone/web/.next/static/media/5ce348bf30bf5439-s.56c1f21e.woff2 +0 -0
  145. package/web/.next/standalone/web/.next/static/media/6306c77e7c8268e4-s.e3369375.woff2 +0 -0
  146. package/web/.next/standalone/web/.next/static/media/797e433ab948586e-s.p.29207c2f.woff2 +0 -0
  147. package/web/.next/standalone/web/.next/static/media/7d817b4c03b0c5f1-s.a40b9a8b.woff2 +0 -0
  148. package/web/.next/standalone/web/.next/static/media/bbc41e54d2fcbd21-s.fe42ddf4.woff2 +0 -0
  149. package/web/.next/standalone/web/.next/static/static/chunks/185f69f6478ba713.js +1 -0
  150. package/web/.next/standalone/web/.next/static/static/chunks/20ca4e35e9bb3e94.js +3 -0
  151. package/web/.next/standalone/web/.next/static/static/chunks/{a7d5d0791c8c6223.css → 34d933785a17edf3.css} +1 -1
  152. package/web/.next/standalone/web/.next/static/static/chunks/7549a5b7c7f6786e.js +1 -0
  153. package/web/.next/{static/chunks/c5dd884b71007965.js → standalone/web/.next/static/static/chunks/a839c83078c56476.js} +1 -1
  154. package/web/.next/standalone/web/.next/static/static/media/4fa387ec64143e14-s.3b336396.woff2 +0 -0
  155. package/web/.next/standalone/web/.next/static/static/media/5ce348bf30bf5439-s.56c1f21e.woff2 +0 -0
  156. package/web/.next/standalone/web/.next/static/static/media/6306c77e7c8268e4-s.e3369375.woff2 +0 -0
  157. package/web/.next/standalone/web/.next/static/static/media/797e433ab948586e-s.p.29207c2f.woff2 +0 -0
  158. package/web/.next/standalone/web/.next/static/static/media/7d817b4c03b0c5f1-s.a40b9a8b.woff2 +0 -0
  159. package/web/.next/standalone/web/.next/static/static/media/bbc41e54d2fcbd21-s.fe42ddf4.woff2 +0 -0
  160. package/web/.next/standalone/web/package-lock.json +21 -21
  161. package/web/.next/standalone/web/runtime-config.json +2 -1
  162. package/web/.next/standalone/web/src/app/(main)/page.tsx +2 -2
  163. package/web/.next/standalone/web/src/app/(main)/settings/page.tsx +111 -11
  164. package/web/.next/standalone/web/src/app/__sfapi/[...path]/route.ts +96 -0
  165. package/web/.next/standalone/web/src/app/api/config/route.ts +5 -12
  166. package/web/.next/standalone/web/src/app/docs/installation/page.mdx +2 -2
  167. package/web/.next/standalone/web/src/app/docs/page.mdx +1 -1
  168. package/web/.next/standalone/web/src/components/sessions-sidebar.tsx +1 -1
  169. package/web/.next/standalone/web/src/lib/config.ts +26 -16
  170. package/web/.next/static/chunks/185f69f6478ba713.js +1 -0
  171. package/web/.next/static/chunks/20ca4e35e9bb3e94.js +3 -0
  172. package/web/.next/static/chunks/{a7d5d0791c8c6223.css → 34d933785a17edf3.css} +1 -1
  173. package/web/.next/static/chunks/7549a5b7c7f6786e.js +1 -0
  174. package/web/.next/{standalone/web/.next/static/chunks/c5dd884b71007965.js → static/chunks/a839c83078c56476.js} +1 -1
  175. package/web/.next/static/media/4fa387ec64143e14-s.3b336396.woff2 +0 -0
  176. package/web/.next/static/media/5ce348bf30bf5439-s.56c1f21e.woff2 +0 -0
  177. package/web/.next/static/media/6306c77e7c8268e4-s.e3369375.woff2 +0 -0
  178. package/web/.next/static/media/797e433ab948586e-s.p.29207c2f.woff2 +0 -0
  179. package/web/.next/static/media/7d817b4c03b0c5f1-s.a40b9a8b.woff2 +0 -0
  180. package/web/.next/static/media/bbc41e54d2fcbd21-s.fe42ddf4.woff2 +0 -0
  181. package/web/.next/standalone/web/.next/static/chunks/9b88f148788e4504.js +0 -3
  182. package/web/.next/standalone/web/.next/static/chunks/b203b9aa975135d3.js +0 -1
  183. package/web/.next/standalone/web/.next/static/chunks/ea89ca7892d8c557.js +0 -1
  184. package/web/.next/standalone/web/.next/static/media/4fa387ec64143e14-s.c36e1862.woff2 +0 -0
  185. package/web/.next/standalone/web/.next/static/media/5ce348bf30bf5439-s.ebceb24d.woff2 +0 -0
  186. package/web/.next/standalone/web/.next/static/media/6306c77e7c8268e4-s.ff4a2084.woff2 +0 -0
  187. package/web/.next/standalone/web/.next/static/media/797e433ab948586e-s.p.479bea2b.woff2 +0 -0
  188. package/web/.next/standalone/web/.next/static/media/7d817b4c03b0c5f1-s.f377b9c4.woff2 +0 -0
  189. package/web/.next/standalone/web/.next/static/media/bbc41e54d2fcbd21-s.d1207556.woff2 +0 -0
  190. package/web/.next/standalone/web/.next/static/static/chunks/9b88f148788e4504.js +0 -3
  191. package/web/.next/standalone/web/.next/static/static/chunks/b203b9aa975135d3.js +0 -1
  192. package/web/.next/standalone/web/.next/static/static/chunks/ea89ca7892d8c557.js +0 -1
  193. package/web/.next/standalone/web/.next/static/static/media/4fa387ec64143e14-s.c36e1862.woff2 +0 -0
  194. package/web/.next/standalone/web/.next/static/static/media/5ce348bf30bf5439-s.ebceb24d.woff2 +0 -0
  195. package/web/.next/standalone/web/.next/static/static/media/6306c77e7c8268e4-s.ff4a2084.woff2 +0 -0
  196. package/web/.next/standalone/web/.next/static/static/media/797e433ab948586e-s.p.479bea2b.woff2 +0 -0
  197. package/web/.next/standalone/web/.next/static/static/media/7d817b4c03b0c5f1-s.f377b9c4.woff2 +0 -0
  198. package/web/.next/standalone/web/.next/static/static/media/bbc41e54d2fcbd21-s.d1207556.woff2 +0 -0
  199. package/web/.next/static/chunks/9b88f148788e4504.js +0 -3
  200. package/web/.next/static/chunks/b203b9aa975135d3.js +0 -1
  201. package/web/.next/static/chunks/ea89ca7892d8c557.js +0 -1
  202. package/web/.next/static/media/4fa387ec64143e14-s.c36e1862.woff2 +0 -0
  203. package/web/.next/static/media/5ce348bf30bf5439-s.ebceb24d.woff2 +0 -0
  204. package/web/.next/static/media/6306c77e7c8268e4-s.ff4a2084.woff2 +0 -0
  205. package/web/.next/static/media/797e433ab948586e-s.p.479bea2b.woff2 +0 -0
  206. package/web/.next/static/media/7d817b4c03b0c5f1-s.f377b9c4.woff2 +0 -0
  207. package/web/.next/static/media/bbc41e54d2fcbd21-s.d1207556.woff2 +0 -0
  208. /package/web/.next/standalone/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_buildManifest.js +0 -0
  209. /package/web/.next/standalone/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_clientMiddlewareManifest.json +0 -0
  210. /package/web/.next/standalone/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_ssgManifest.js +0 -0
  211. /package/web/.next/standalone/web/.next/static/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_buildManifest.js +0 -0
  212. /package/web/.next/standalone/web/.next/static/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_clientMiddlewareManifest.json +0 -0
  213. /package/web/.next/standalone/web/.next/static/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_ssgManifest.js +0 -0
  214. /package/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_buildManifest.js +0 -0
  215. /package/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_clientMiddlewareManifest.json +0 -0
  216. /package/web/.next/static/{2mUQ8I-TCRE5uOBFhIWag → WaAcu3X3K00MDvfn1ik7H}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,138134,e=>{"use strict";var s=e.i(414294),t=e.i(529757),a=e.i(430878),i=e.i(353913),r=e.i(504561),l=e.i(292623),n=e.i(996720),d=e.i(667249),c=e.i(904781),o=e.i(461957),x=e.i(816187),m=e.i(292511);let h=(0,m.default)("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);var u=e.i(220563),p=e.i(846193),j=e.i(719583),g=e.i(707387),f=e.i(991234),N=e.i(775377);let v=(0,m.default)("volume-2",[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]]);var b=e.i(79092),y=e.i(372379),k=e.i(266514);let S=(0,m.default)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]),T=(0,m.default)("sliders-vertical",[["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M12 21v-9",key:"17s77i"}],["path",{d:"M12 8V3",key:"13r4qs"}],["path",{d:"M17 16h4",key:"h1uq16"}],["path",{d:"M19 12V3",key:"o1uvq1"}],["path",{d:"M19 21v-5",key:"qua636"}],["path",{d:"M3 14h4",key:"bcjad9"}],["path",{d:"M5 10V3",key:"cb8scm"}],["path",{d:"M5 21v-7",key:"1w1uti"}]]);var C=e.i(928574),w=e.i(666904),z=e.i(836191),M=e.i(77982),P=e.i(634066),L=e.i(865259),A=e.i(553880),D=e.i(87614),B=e.i(524741),I=e.i(455706),$=e.i(743053),F=e.i(739963),E=e.i(555552),q=e.i(300739),O=e.i(335130);function V(){let e,m,V,K,R,U=(0,i.useRouter)(),W=(0,i.usePathname)(),{state:H,toggleSidebar:J}=(0,t.useSidebar)(),{sessions:G,isLoading:X}=(0,q.useSessions)(),[Y,_]=(0,a.useState)(!1),[Q,Z]=(0,a.useState)(!1),[ee,es]=(0,a.useState)(!1),[et,ea]=(0,a.useState)(null),[ei,er]=(0,a.useState)(null),el=(0,a.useRef)(null),[en,ed]=(0,a.useState)(""),[ec,eo]=(0,a.useState)(""),[ex,em]=(0,a.useState)({}),[eh,eu]=(0,a.useState)(!1),[ep,ej]=(0,a.useState)(""),eg={type:"object",properties:{},required:[]},[ef,eN]=(0,a.useState)(eg),[ev,eb]=(0,a.useState)(""),[ey,ek]=(0,a.useState)(""),[eS,eT]=(0,a.useState)(""),[eC,ew]=(0,a.useState)(""),[ez,eM]=(0,a.useState)("50"),[eP,eL]=(0,a.useState)(!1),[eA,eD]=(0,a.useState)([]),[eB,eI]=(0,a.useState)(null),[e$,eF]=(0,a.useState)(""),[eE,eq]=(0,a.useState)(!1),[eO,eV]=(0,a.useState)(!1),{enabled:eK,setEnabled:eR}=(0,O.useNotificationSound)(),eU=W.startsWith("/session/")?W.split("/session/")[1]:null,eW="/session",eH=G.some(e=>e.isStreaming),eJ=async()=>{let e=await (0,F.getConfig)();ea(e),eo(e.defaultModel),em(e.defaultToolApprovals)},eG=async()=>{try{let e=await (0,B.getApiKeys)();eD(e.providers)}catch(e){console.error("Failed to load API keys:",e)}};(0,a.useEffect)(()=>{eJ(),eG()},[]),(0,a.useEffect)(()=>{ee&&eG()},[ee]);let eX=async e=>{if(e$.trim()){eV(!0);try{await (0,B.setApiKey)(e,e$),await eG(),eI(null),eF(""),eq(!1)}catch(e){console.error("Failed to save API key:",e)}finally{eV(!1)}}},eY=()=>{eI(null),eF(""),eq(!1)};(0,a.useEffect)(()=>{el.current&&(eH?el.current.play().catch(()=>{}):(el.current.pause(),el.current.currentTime=0))},[eH]);let e_=async()=>{if(!Y){_(!0);try{let e=await (0,B.createSession)({name:`Session ${G.length+1}`,model:et?.defaultModel||"anthropic/claude-opus-4.7",toolApprovals:ex});(0,q.mutateSessions)(),U.push(`${eW}/${e.id}`)}catch(e){console.error("Failed to create session:",e)}finally{_(!1)}}},eQ=async()=>{_(!0);try{let e=await (0,B.createSession)({name:en||`Session ${G.length+1}`,model:ec,toolApprovals:ex});(0,q.mutateSessions)(),eZ(),Z(!1),U.push(`${eW}/${e.id}`)}catch(e){console.error("Failed to create session:",e)}finally{_(!1)}},eZ=()=>{ed(""),et&&(eo(et.defaultModel),em(et.defaultToolApprovals))},e0=()=>{ej(""),eN(eg),eb(""),ek(""),eT(""),ew(et?.defaultModel||""),eM("50")},e1=async()=>{if(ep.trim()){if(eb(""),!ef||"object"!=typeof ef)return void eb("Schema must be a JSON object");eL(!0);try{let e=await (0,B.createTask)({prompt:ep,outputSchema:ef,webhookUrl:ey||void 0,model:eC||et?.defaultModel,name:eS||void 0,maxIterations:parseInt(ez)||50});(0,q.mutateSessions)(),eu(!1),e0(),U.push(`${eW}/${e.taskId}`)}catch(e){console.error("Failed to create task:",e)}finally{eL(!1)}}},e5=async(e,s)=>{e.preventDefault(),e.stopPropagation();try{await (0,B.deleteSession)(s),(0,q.mutateSessions)(),eU===s&&U.push("/")}catch(e){console.error("Failed to delete session:",e)}},e2=e=>{em(s=>({...s,[e]:!s[e]}))},e4="collapsed"===H;return(0,s.jsxs)(t.Sidebar,{collapsible:"icon",className:"border-r border-border/50",children:[(0,s.jsxs)(t.SidebarHeader,{className:(0,E.cn)(e4?"p-2 space-y-2":"p-3 space-y-3"),children:[!e4&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsxs)("div",{className:"relative shrink-0 overflow-hidden rounded-xl size-10 shadow-md ring-1 ring-white/10",children:[(0,s.jsx)(l.default,{src:"/sparke-coder.png",alt:"Sparke",width:40,height:40,className:"absolute inset-0 size-full object-cover",priority:!0}),(0,s.jsx)("video",{ref:el,src:"/sparkecode.mp4",muted:!0,loop:!0,playsInline:!0,className:(0,E.cn)("absolute inset-0 size-full object-cover transition-opacity duration-300",eH?"opacity-100":"opacity-0")})]}),(0,s.jsxs)("div",{className:"flex flex-1 items-center justify-between min-w-0",children:[(0,s.jsx)("h1",{className:"text-lg font-bold text-foreground",children:"SparkECoder"}),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{size:"icon",variant:"ghost",className:"size-7 hover:bg-accent transition-colors",onClick:J,children:(0,s.jsx)(h,{className:"size-4"})})}),(0,s.jsxs)(D.TooltipContent,{side:"bottom",children:["Collapse ",(0,s.jsx)("kbd",{className:"ml-1 text-[10px] opacity-60",children:"⌘B"})]})]})})]})]}),(e=G.find(e=>"orchestrator"===e.role),V=(m=G.filter(e=>"worker"===e.role)).filter(e=>"needs_attention"===e.agentStatus).length,K=m.filter(e=>"running"===e.agentStatus).length,(0,s.jsxs)("div",{className:"flex flex-col gap-1 w-full",children:[(0,s.jsxs)(r.default,{href:e?`/session/${e.id}`:"#",className:(0,E.cn)("flex items-center gap-2 px-2 py-1.5 rounded-md text-sm transition-colors",W.startsWith("/session/")&&e&&W.includes(e.id)?"bg-accent text-foreground":"hover:bg-accent/60 text-foreground/80"),children:[(0,s.jsx)(k.Bot,{className:"size-4 text-primary shrink-0"}),(0,s.jsx)("span",{className:"flex-1 truncate",children:"Orchestrator"}),e?.isStreaming&&(0,s.jsx)("span",{className:"size-1.5 rounded-full bg-emerald-500 animate-pulse"})]}),(0,s.jsxs)(r.default,{href:"/agents",className:(0,E.cn)("flex items-center gap-2 px-2 py-1.5 rounded-md text-sm transition-colors","/agents"===W?"bg-accent text-foreground":"hover:bg-accent/60 text-foreground/80"),children:[(0,s.jsx)(S,{className:"size-4 text-muted-foreground shrink-0"}),(0,s.jsx)("span",{className:"flex-1 truncate",children:"Agents"}),(0,s.jsx)("span",{className:"text-[10px] text-muted-foreground tabular-nums",children:m.length}),V>0&&(0,s.jsxs)("span",{className:"text-[10px] px-1 rounded bg-amber-500/20 text-amber-600 dark:text-amber-300 tabular-nums",children:[V,"!"]}),K>0&&0===V&&(0,s.jsx)("span",{className:"size-1.5 rounded-full bg-emerald-500 animate-pulse"})]}),(0,s.jsxs)(r.default,{href:"/settings",className:(0,E.cn)("flex items-center gap-2 px-2 py-1.5 rounded-md text-sm transition-colors","/settings"===W?"bg-accent text-foreground":"hover:bg-accent/60 text-foreground/80"),children:[(0,s.jsx)(T,{className:"size-4 text-muted-foreground shrink-0"}),(0,s.jsx)("span",{className:"flex-1 truncate",children:"Settings"})]})]})),(0,s.jsxs)("div",{className:"flex gap-2 w-full",children:[(0,s.jsxs)(w.Button,{onClick:e_,disabled:Y,className:"flex-1 justify-center gap-2 h-9",children:[Y?(0,s.jsx)(o.Loader2,{className:"size-4 animate-spin"}):(0,s.jsx)(n.Plus,{className:"size-4"}),"New Agent"]}),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{variant:"outline",onClick:()=>{et||eJ(),eu(!0)},className:"h-9 px-2.5",children:(0,s.jsx)(b.ListChecks,{className:"size-4"})})}),(0,s.jsx)(D.TooltipContent,{side:"bottom",children:"New Task"})]})})]})]}),e4&&(0,s.jsxs)("div",{className:"flex flex-col items-center gap-2 w-full",children:[(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{size:"icon",variant:"ghost",onClick:J,className:"size-8 mx-auto",children:(0,s.jsx)(u.PanelLeft,{className:"size-4"})})}),(0,s.jsxs)(D.TooltipContent,{side:"right",children:["Expand ",(0,s.jsx)("kbd",{className:"ml-1 text-[10px] opacity-60",children:"⌘B"})]})]})}),(0,s.jsxs)("div",{className:"relative overflow-hidden rounded-xl size-8 shadow-md ring-1 ring-white/10 mx-auto",children:[(0,s.jsx)(l.default,{src:"/sparke-coder.png",alt:"SparkECoder",width:32,height:32,className:"absolute inset-0 size-full object-cover",priority:!0}),(0,s.jsx)("video",{ref:el,src:"/sparkecode.mp4",muted:!0,loop:!0,playsInline:!0,className:(0,E.cn)("absolute inset-0 size-full object-cover transition-opacity duration-300",eH?"opacity-100":"opacity-0")})]}),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{size:"icon",onClick:e_,disabled:Y,className:"size-8 mx-auto",children:Y?(0,s.jsx)(o.Loader2,{className:"size-4 animate-spin"}):(0,s.jsx)(n.Plus,{className:"size-4"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"New Agent"})]})}),(R=G.find(e=>"orchestrator"===e.role),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(r.default,{href:R?`/session/${R.id}`:"#",className:"size-8 mx-auto inline-flex items-center justify-center rounded-md hover:bg-accent",children:(0,s.jsx)(k.Bot,{className:"size-4 text-primary"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"Orchestrator"})]})})),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(r.default,{href:"/agents",className:"size-8 mx-auto inline-flex items-center justify-center rounded-md hover:bg-accent",children:(0,s.jsx)(S,{className:"size-4"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"Agents board"})]})}),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(r.default,{href:"/settings",className:"size-8 mx-auto inline-flex items-center justify-center rounded-md hover:bg-accent",children:(0,s.jsx)(T,{className:"size-4"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"Settings"})]})}),(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{size:"icon",variant:"outline",onClick:()=>{et||eJ(),eu(!0)},className:"size-8 mx-auto",children:(0,s.jsx)(b.ListChecks,{className:"size-4"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"New Task"})]})})]})]}),(0,s.jsx)(z.Dialog,{open:Q,onOpenChange:e=>{Z(e),e&&eZ()},children:(0,s.jsxs)(z.DialogContent,{className:"sm:max-w-md",children:[(0,s.jsx)(z.DialogHeader,{children:(0,s.jsxs)(z.DialogTitle,{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"size-8 rounded-lg bg-primary flex items-center justify-center",children:(0,s.jsx)(x.Settings,{className:"size-4 text-primary-foreground"})}),"New Agent"]})}),(0,s.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{htmlFor:"name",className:"text-sm font-medium",children:"Session Name"}),(0,s.jsx)(M.Input,{id:"name",placeholder:"My Coding Project (optional)",value:en,onChange:e=>ed(e.target.value),className:"transition-all focus:ring-2 focus:ring-primary/20"})]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{className:"text-sm font-medium",children:"Model"}),(0,s.jsxs)(A.Select,{value:ec,onValueChange:eo,children:[(0,s.jsx)(A.SelectTrigger,{className:"transition-all hover:border-primary/50",children:(0,s.jsx)(A.SelectValue,{placeholder:"Select a model"})}),(0,s.jsx)(A.SelectContent,{children:et?.availableModels.map(e=>(0,s.jsx)(A.SelectItem,{value:e.id,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{children:e.name}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:e.provider})]})},e.id))})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(P.Label,{className:"flex items-center gap-2 text-sm font-medium",children:"Tool Approvals"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground -mt-0.5",children:"Toggle on to require approval before tool executes"}),(0,s.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:et?.availableTools.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:[(0,s.jsxs)("div",{className:"space-y-0",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.name}),e.dangerous&&(0,s.jsx)("span",{className:"text-[10px] bg-amber-500/20 text-amber-600 dark:text-amber-400 px-1.5 py-0.5 rounded font-medium",children:"risky"})]}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground",children:e.description})]}),(0,s.jsx)(L.Switch,{checked:ex[e.id]??!1,onCheckedChange:()=>e2(e.id)})]},e.id))})]}),(0,s.jsxs)(w.Button,{onClick:eQ,disabled:Y,className:"w-full",children:[Y?(0,s.jsx)(o.Loader2,{className:"size-4 animate-spin mr-2"}):(0,s.jsx)(n.Plus,{className:"size-4 mr-2"}),"Create Session"]})]})]})}),(0,s.jsx)(z.Dialog,{open:eh,onOpenChange:e=>{eu(e),e&&e0()},children:(0,s.jsxs)(z.DialogContent,{className:"sm:max-w-lg",children:[(0,s.jsx)(z.DialogHeader,{children:(0,s.jsxs)(z.DialogTitle,{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"size-8 rounded-lg bg-blue-600 flex items-center justify-center",children:(0,s.jsx)(b.ListChecks,{className:"size-4 text-white"})}),"New Task"]})}),(0,s.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{htmlFor:"task-prompt",className:"text-sm font-medium",children:"What should the agent do?"}),(0,s.jsx)(I.Textarea,{id:"task-prompt",placeholder:"e.g. Refactor the auth module to use JWT tokens...",value:ep,onChange:e=>ej(e.target.value),rows:3,autoFocus:!0})]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{className:"text-sm font-medium",children:"Expected output shape"}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground -mt-0.5",children:"Define the JSON structure the agent must return"}),(0,s.jsx)("div",{className:(0,E.cn)("rounded-md border bg-muted/30 overflow-hidden transition-colors",ev&&"border-red-500"),children:(0,s.jsx)($.VisualJson,{value:ef,onChange:e=>{eN(e),eb("")},children:(0,s.jsx)($.TreeView,{className:"h-44 text-sm"})})}),ev&&(0,s.jsx)("p",{className:"text-xs text-red-500 mt-1",children:ev})]}),(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-3",children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{className:"text-xs text-muted-foreground",children:"Model"}),(0,s.jsxs)(A.Select,{value:eC,onValueChange:ew,children:[(0,s.jsx)(A.SelectTrigger,{className:"h-9",children:(0,s.jsx)(A.SelectValue,{placeholder:"Select a model"})}),(0,s.jsx)(A.SelectContent,{children:et?.availableModels.map(e=>(0,s.jsx)(A.SelectItem,{value:e.id,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{children:e.name}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:e.provider})]})},e.id))})]})]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{htmlFor:"task-name",className:"text-xs text-muted-foreground",children:"Name"}),(0,s.jsx)(M.Input,{id:"task-name",placeholder:"Optional",value:eS,onChange:e=>eT(e.target.value),className:"h-9"})]})]}),(0,s.jsxs)("details",{className:"group",children:[(0,s.jsxs)("summary",{className:"flex items-center gap-1.5 text-xs text-muted-foreground cursor-pointer select-none hover:text-foreground transition-colors",children:[(0,s.jsx)(y.ChevronDown,{className:"size-3 transition-transform group-open:rotate-180"}),"Advanced"]}),(0,s.jsxs)("div",{className:"grid grid-cols-2 gap-3 pt-3",children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{htmlFor:"task-webhook",className:"text-xs text-muted-foreground",children:"Webhook URL"}),(0,s.jsx)(M.Input,{id:"task-webhook",placeholder:"https://...",value:ey,onChange:e=>ek(e.target.value),className:"h-9"})]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{htmlFor:"task-iterations",className:"text-xs text-muted-foreground",children:"Max iterations"}),(0,s.jsx)(M.Input,{id:"task-iterations",type:"number",min:1,max:500,value:ez,onChange:e=>eM(e.target.value),className:"h-9"})]})]})]}),(0,s.jsx)(w.Button,{onClick:e1,disabled:eP||!ep.trim(),className:"w-full",children:eP?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(o.Loader2,{className:"size-4 animate-spin mr-2"}),"Creating..."]}):"Start Task"})]})]})}),(0,s.jsx)(t.SidebarContent,{className:"px-2",children:(0,s.jsx)(t.SidebarGroup,{className:"p-0",children:(0,s.jsx)(t.SidebarGroupContent,{children:(0,s.jsx)(t.SidebarMenu,{className:"gap-1",children:X?(0,s.jsx)("div",{className:"flex justify-center py-8",children:(0,s.jsx)(o.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}):0===G.filter(e=>"orchestrator"!==e.role).length?!e4&&(0,s.jsxs)("div",{className:"text-center py-8 px-4",children:[(0,s.jsxs)("div",{className:"relative overflow-hidden rounded-xl size-12 mx-auto mb-3 shadow-md ring-1 ring-white/10",children:[(0,s.jsx)(l.default,{src:"/sparke-coder.png",alt:"SparkECoder",width:48,height:48,className:"absolute inset-0 size-full object-cover"}),eH&&(0,s.jsx)("video",{src:"/sparkecode.mp4",autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"absolute inset-0 size-full object-cover"})]}),(0,s.jsx)("p",{className:"text-sm text-foreground",children:"No sessions yet"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Click New Agent above"})]}):G.filter(e=>"orchestrator"!==e.role).map(e=>{let a,i,l,n,o=e.id===eU,x=ei===e.id,m=!0===e.isStreaming,h=!e4&&(x||o);return(0,s.jsx)(t.SidebarMenuItem,{onMouseEnter:()=>er(e.id),onMouseLeave:()=>er(null),children:e4?(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(r.default,{href:`${eW}/${e.id}`,className:(0,E.cn)("flex items-center justify-center size-8 rounded-lg transition-colors mx-auto",o?"bg-accent":"hover:bg-accent/60",m&&!o&&"bg-emerald-500/10"),children:m?(0,s.jsx)("span",{className:"size-2 rounded-full bg-emerald-500 animate-pulse"}):(0,s.jsx)(d.MessageSquare,{className:(0,E.cn)("size-4",o?"text-primary":"text-muted-foreground")})})}),(0,s.jsxs)(D.TooltipContent,{side:"right",children:[e.name||"Untitled",m&&" (Running)"]})]})}):(0,s.jsx)(t.SidebarMenuButton,{asChild:!0,isActive:o,className:(0,E.cn)("h-9 transition-all duration-150","hover:bg-accent/60",o&&"bg-accent",m&&!o&&"bg-emerald-500/5"),children:(0,s.jsxs)(r.default,{href:`${eW}/${e.id}`,className:"flex items-center gap-2.5 px-2",children:[m?(0,s.jsx)("span",{className:"size-2 rounded-full bg-emerald-500 animate-pulse shrink-0"}):(0,s.jsx)(d.MessageSquare,{className:(0,E.cn)("size-4 shrink-0",o?"text-primary":"text-muted-foreground")}),(0,s.jsx)("span",{className:(0,E.cn)("truncate flex-1 text-sm",m&&"text-emerald-600 dark:text-emerald-400"),children:e.name||"Untitled"}),e.config?.task?.enabled&&(0,s.jsxs)(C.Badge,{variant:"outline",className:(0,E.cn)("shrink-0 text-[10px] px-1.5 py-0 h-4 font-medium gap-1","completed"===e.config.task.status&&"border-emerald-500/30 bg-emerald-500/10 text-emerald-600 dark:text-emerald-400","failed"===e.config.task.status&&"border-red-500/30 bg-red-500/10 text-red-600 dark:text-red-400","running"===e.config.task.status&&"border-blue-500/30 bg-blue-500/10 text-blue-600 dark:text-blue-400"),children:[(0,s.jsx)(b.ListChecks,{className:"size-2.5"}),"Task"]}),h?(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)(w.Button,{size:"icon",variant:"ghost",className:"size-6 shrink-0 hover:bg-destructive/10 hover:text-destructive transition-colors",onClick:s=>e5(s,e.id),children:(0,s.jsx)(c.Trash2,{className:"size-3.5"})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:"Delete session"})]})}):m&&!e.config?.task?.enabled?(0,s.jsx)("span",{className:"inline-flex items-center gap-1 text-[10px] text-emerald-600 dark:text-emerald-400 shrink-0 font-medium",children:"Active"}):"waiting"===e.status?(0,s.jsx)("span",{className:"text-[10px] text-amber-600 dark:text-amber-400 shrink-0 font-medium",children:"Waiting"}):"error"===e.status?(0,s.jsx)("span",{className:"text-[10px] text-red-600 dark:text-red-400 shrink-0 font-medium",children:"Error"}):(0,s.jsx)("span",{className:"text-[11px] text-muted-foreground shrink-0 tabular-nums",children:(a=new Date(e.createdAt),n=Math.floor((l=Math.floor((i=Math.floor(Math.floor((new Date().getTime()-a.getTime())/1e3)/60))/60))/24),i<1?"now":i<60?`${i}m`:l<24?`${l}h`:n<7?`${n}d`:`${Math.floor(n/7)}w`)})]})})},e.id)})})})})}),(0,s.jsx)(t.SidebarFooter,{className:(0,E.cn)("border-t border-border/50",e4?"p-2":"p-3"),children:(0,s.jsx)("div",{className:"flex items-center justify-between",children:e4?(0,s.jsx)("div",{className:"flex flex-col items-center gap-2 w-full",children:(0,s.jsx)(D.TooltipProvider,{children:(0,s.jsxs)(D.Tooltip,{children:[(0,s.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,s.jsx)("div",{className:"flex items-center justify-center",children:(0,s.jsx)("span",{className:(0,E.cn)("size-2 rounded-full",et?.serverConnected?"bg-emerald-500 animate-pulse":"bg-red-500")})})}),(0,s.jsx)(D.TooltipContent,{side:"right",children:et?.serverConnected?"Connected":"Disconnected"})]})})}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[et?.serverConnected?(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-emerald-600 dark:text-emerald-400",children:[(0,s.jsx)("span",{className:"size-1.5 rounded-full bg-current animate-pulse"}),(0,s.jsx)("span",{children:"Connected"})]}):(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-red-500",children:[(0,s.jsx)("span",{className:"size-1.5 rounded-full bg-current"}),(0,s.jsx)("span",{children:"Disconnected"})]}),(0,s.jsx)("span",{className:"text-muted-foreground",children:"·"}),(0,s.jsx)("span",{className:"text-muted-foreground",children:G.length})]}),(0,s.jsx)(z.Dialog,{open:!1,onOpenChange:es,children:(0,s.jsxs)(z.DialogContent,{className:"sm:max-w-md",children:[(0,s.jsx)(z.DialogHeader,{children:(0,s.jsxs)(z.DialogTitle,{className:"flex items-center gap-2",children:[(0,s.jsx)("div",{className:"size-8 rounded-lg bg-muted flex items-center justify-center",children:(0,s.jsx)(x.Settings,{className:"size-4"})}),"Settings"]})}),(0,s.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsx)(P.Label,{className:"text-sm font-medium",children:"Default Model"}),(0,s.jsxs)(A.Select,{value:ec,onValueChange:eo,children:[(0,s.jsx)(A.SelectTrigger,{className:"transition-all hover:border-primary/50",children:(0,s.jsx)(A.SelectValue,{placeholder:"Select a model"})}),(0,s.jsx)(A.SelectContent,{children:et?.availableModels.map(e=>(0,s.jsx)(A.SelectItem,{value:e.id,children:(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{children:e.name}),(0,s.jsx)("span",{className:"text-xs text-muted-foreground",children:e.provider})]})},e.id))})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(P.Label,{className:"flex items-center gap-2 text-sm font-medium",children:"Tool Approvals"}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground -mt-0.5",children:"Toggle on to require approval before tool executes"}),(0,s.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:et?.availableTools.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:[(0,s.jsxs)("div",{className:"space-y-0",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.name}),e.dangerous&&(0,s.jsx)("span",{className:"text-[10px] bg-amber-500/20 text-amber-600 dark:text-amber-400 px-1.5 py-0.5 rounded font-medium",children:"risky"})]}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground",children:e.description})]}),(0,s.jsx)(L.Switch,{checked:ex[e.id]??!1,onCheckedChange:()=>e2(e.id)})]},e.id))})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)(P.Label,{className:"flex items-center gap-2 text-sm font-medium",children:[(0,s.jsx)(p.Key,{className:"size-4"}),"API Keys"]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground -mt-0.5",children:"Configure API keys for different providers. Keys are stored securely on your machine."}),(0,s.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:eA.map(e=>(0,s.jsx)("div",{className:"py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:eB===e.provider?(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsx)("span",{className:"text-sm font-medium capitalize",children:e.provider}),(0,s.jsx)("span",{className:"text-[10px] text-muted-foreground font-mono",children:e.envVar})]}),(0,s.jsxs)("div",{className:"flex gap-2",children:[(0,s.jsxs)("div",{className:"relative flex-1",children:[(0,s.jsx)(M.Input,{type:eE?"text":"password",value:e$,onChange:e=>eF(e.target.value),placeholder:"Paste your API key...",className:"pr-8 text-sm font-mono",autoFocus:!0}),(0,s.jsx)(w.Button,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-2 hover:bg-transparent",onClick:()=>eq(!eE),children:eE?(0,s.jsx)(N.EyeOff,{className:"size-4"}):(0,s.jsx)(f.Eye,{className:"size-4"})})]}),(0,s.jsx)(w.Button,{size:"icon",variant:"ghost",className:"shrink-0",onClick:()=>eX(e.provider),disabled:eO||!e$.trim(),children:eO?(0,s.jsx)(o.Loader2,{className:"size-4 animate-spin"}):(0,s.jsx)(j.Check,{className:"size-4 text-green-500"})}),(0,s.jsx)(w.Button,{size:"icon",variant:"ghost",className:"shrink-0",onClick:eY,children:(0,s.jsx)(g.X,{className:"size-4 text-muted-foreground"})})]})]}):(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{className:"space-y-0",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium capitalize",children:e.provider}),e.configured&&(0,s.jsx)("span",{className:(0,E.cn)("text-[10px] px-1.5 py-0.5 rounded font-medium","env"===e.source?"bg-blue-500/20 text-blue-600 dark:text-blue-400":"bg-green-500/20 text-green-600 dark:text-green-400"),children:"env"===e.source?"from env":"saved"})]}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground font-mono",children:e.configured?e.maskedKey:"Not configured"})]}),(0,s.jsx)(w.Button,{size:"sm",variant:"ghost",className:"h-7 text-xs",onClick:()=>eI(e.provider),children:e.configured?"Update":"Add"})]})},e.provider))})]}),(0,s.jsxs)("div",{className:"space-y-1.5",children:[(0,s.jsxs)(P.Label,{className:"flex items-center gap-2 text-sm font-medium",children:[(0,s.jsx)(v,{className:"size-4"}),"Notification Sound"]}),(0,s.jsxs)("div",{className:"flex items-center justify-between rounded-lg border p-2.5 bg-muted/30",children:[(0,s.jsxs)("div",{className:"space-y-0",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:"Play sound when done"}),(0,s.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Ding when the assistant finishes responding"})]}),(0,s.jsx)(L.Switch,{checked:eK,onCheckedChange:eR})]})]}),(0,s.jsx)("p",{className:"text-xs text-muted-foreground",children:"These settings apply to new sessions. You can also change the model per-session in the chat header."})]})]})})]})})})]})}function K({children:e}){return(0,s.jsxs)(t.SidebarProvider,{defaultOpen:!0,children:[(0,s.jsx)(V,{}),(0,s.jsx)(t.SidebarInset,{className:"h-screen flex flex-col bg-background min-w-0",children:(0,s.jsx)("div",{className:"flex-1 overflow-hidden min-w-0",children:e})})]})}e.s(["default",()=>K],138134)}]);