sparkecoder 0.1.60 → 0.1.61

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 (171) hide show
  1. package/dist/agent/index.d.ts +4 -3
  2. package/dist/agent/index.js +588 -176
  3. package/dist/agent/index.js.map +1 -1
  4. package/dist/cli.js +818 -95
  5. package/dist/cli.js.map +1 -1
  6. package/dist/db/index.d.ts +3 -2
  7. package/dist/db/index.js.map +1 -1
  8. package/dist/{index-Csad1Nx4.d.ts → index-DuGtMaAJ.d.ts} +85 -4
  9. package/dist/index.d.ts +6 -5
  10. package/dist/index.js +1202 -665
  11. package/dist/index.js.map +1 -1
  12. package/dist/schema-C7Mm4Ykn.d.ts +1410 -0
  13. package/dist/{search-BETuS1vh.d.ts → search-C_IFImt1.d.ts} +3 -3
  14. package/dist/server/index.js +605 -68
  15. package/dist/server/index.js.map +1 -1
  16. package/dist/tools/index.d.ts +38 -3
  17. package/dist/tools/index.js +230 -2
  18. package/dist/tools/index.js.map +1 -1
  19. package/package.json +5 -3
  20. package/web/.next/BUILD_ID +1 -1
  21. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  22. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  23. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  24. package/web/.next/standalone/web/.next/server/app/(main)/page.js.nft.json +1 -1
  25. package/web/.next/standalone/web/.next/server/app/(main)/page_client-reference-manifest.js +1 -1
  26. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page.js.nft.json +1 -1
  27. package/web/.next/standalone/web/.next/server/app/(main)/session/[id]/page_client-reference-manifest.js +1 -1
  28. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  29. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  30. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  31. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  32. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  33. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  34. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  35. package/web/.next/standalone/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  36. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  37. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +2 -2
  38. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  39. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  40. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  41. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  43. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  44. package/web/.next/standalone/web/.next/server/app/api/config/route.js.nft.json +1 -1
  45. package/web/.next/standalone/web/.next/server/app/api/health/route.js.nft.json +1 -1
  46. package/web/.next/standalone/web/.next/server/app/docs/installation/page_client-reference-manifest.js +1 -1
  47. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  48. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +2 -2
  49. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +2 -2
  50. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  51. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +2 -2
  52. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +2 -2
  53. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  54. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  55. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  56. package/web/.next/standalone/web/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  57. package/web/.next/standalone/web/.next/server/app/docs/skills/page_client-reference-manifest.js +1 -1
  58. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  59. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +2 -2
  60. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +2 -2
  61. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  62. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +2 -2
  63. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +2 -2
  64. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  65. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  66. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  67. package/web/.next/standalone/web/.next/server/app/docs/tools/page_client-reference-manifest.js +1 -1
  68. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  69. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +2 -2
  70. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +2 -2
  71. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  72. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +2 -2
  73. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +2 -2
  74. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  75. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  76. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  77. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  78. package/web/.next/standalone/web/.next/server/app/docs.rsc +2 -2
  79. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +2 -2
  80. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  81. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +2 -2
  82. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  83. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  84. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  85. package/web/.next/standalone/web/.next/server/app/embed/[id]/page.js.nft.json +1 -1
  86. package/web/.next/standalone/web/.next/server/app/embed/[id]/page_client-reference-manifest.js +1 -1
  87. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  88. package/web/.next/standalone/web/.next/server/app/index.rsc +4 -4
  89. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +2 -2
  90. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +2 -2
  91. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +4 -4
  92. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  93. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +2 -2
  94. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  95. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_19289e11._.js → 2374f_03d22c16._.js} +1 -1
  96. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_b4b86c1f._.js → 2374f_0d0b1fb9._.js} +1 -1
  97. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_4858a1ea._.js → 2374f_3f7d6d28._.js} +1 -1
  98. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_51385fed._.js → 2374f_6166d14d._.js} +1 -1
  99. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_40e35a02._.js → 2374f_67b9525f._.js} +1 -1
  100. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_fb95e3c9._.js → 2374f_6b436efc._.js} +1 -1
  101. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_2f0d9f6f._.js → 2374f_784d851c._.js} +1 -1
  102. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_35475cbe._.js → 2374f_976b2ded._.js} +1 -1
  103. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_7db22cde._.js → 2374f_98eba491._.js} +1 -1
  104. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_90b8e4fb._.js → 2374f_99b7b533._.js} +1 -1
  105. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_4666c827._.js → 2374f_a1a36483._.js} +1 -1
  106. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_076f03ec._.js → 2374f_b98835eb._.js} +1 -1
  107. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_b17fce11._.js → 2374f_e19eaecc._.js} +1 -1
  108. package/web/.next/standalone/web/.next/server/chunks/ssr/{2374f_d8b9ce38._.js → 2374f_e3aec189._.js} +1 -1
  109. package/web/.next/standalone/web/.next/server/chunks/ssr/{[root-of-the-server]__7775f784._.js → [root-of-the-server]__4f176a16._.js} +2 -2
  110. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__d59f831d._.js +15 -0
  111. package/web/.next/standalone/web/.next/server/chunks/ssr/{web_645f4b90._.js → web_693f514e._.js} +2 -2
  112. package/web/.next/standalone/web/.next/server/chunks/ssr/web_a42a2651._.js +7 -0
  113. package/web/.next/standalone/web/.next/server/chunks/ssr/web_dc6ce793._.js +7 -0
  114. package/web/.next/standalone/web/.next/server/chunks/ssr/web_src_components_sessions-sidebar_tsx_92510070._.js +1 -1
  115. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  116. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  117. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  118. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  119. package/web/.next/standalone/web/.next/static/chunks/0358a0e7a40cfb93.css +1 -0
  120. package/web/.next/standalone/web/.next/static/chunks/1ecde4c0d426a635.js +1 -0
  121. package/web/.next/standalone/web/.next/static/chunks/20e0fa99c7a1c1fc.js +13 -0
  122. package/web/.next/standalone/web/.next/static/chunks/36688a049d72e8ab.js +5 -0
  123. package/web/.next/standalone/web/.next/static/chunks/95436454a7559b0d.js +7 -0
  124. package/web/.next/standalone/web/.next/static/chunks/a751ca474cc46212.js +5 -0
  125. package/web/.next/standalone/web/.next/static/static/chunks/0358a0e7a40cfb93.css +1 -0
  126. package/web/.next/standalone/web/.next/static/static/chunks/1ecde4c0d426a635.js +1 -0
  127. package/web/.next/standalone/web/.next/static/static/chunks/20e0fa99c7a1c1fc.js +13 -0
  128. package/web/.next/standalone/web/.next/static/static/chunks/36688a049d72e8ab.js +5 -0
  129. package/web/.next/standalone/web/.next/static/static/chunks/95436454a7559b0d.js +7 -0
  130. package/web/.next/standalone/web/.next/static/static/chunks/a751ca474cc46212.js +5 -0
  131. package/web/.next/standalone/web/src/components/ai-elements/complete-task-tool.tsx +126 -0
  132. package/web/.next/standalone/web/src/components/chat-interface.tsx +68 -3
  133. package/web/.next/standalone/web/src/components/sessions-sidebar.tsx +18 -1
  134. package/web/.next/standalone/web/src/lib/api.ts +12 -0
  135. package/web/.next/static/chunks/0358a0e7a40cfb93.css +1 -0
  136. package/web/.next/static/chunks/1ecde4c0d426a635.js +1 -0
  137. package/web/.next/static/chunks/20e0fa99c7a1c1fc.js +13 -0
  138. package/web/.next/static/chunks/36688a049d72e8ab.js +5 -0
  139. package/web/.next/static/chunks/95436454a7559b0d.js +7 -0
  140. package/web/.next/static/chunks/a751ca474cc46212.js +5 -0
  141. package/dist/schema-NcQknWCg.d.ts +0 -295
  142. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__bd396152._.js +0 -15
  143. package/web/.next/standalone/web/.next/server/chunks/ssr/web_9c9f0e3b._.js +0 -7
  144. package/web/.next/standalone/web/.next/server/chunks/ssr/web_d08270f7._.js +0 -7
  145. package/web/.next/standalone/web/.next/static/chunks/2868b007ce5163fc.css +0 -1
  146. package/web/.next/standalone/web/.next/static/chunks/3f295b6960943c38.js +0 -1
  147. package/web/.next/standalone/web/.next/static/chunks/631b023d37a08635.js +0 -13
  148. package/web/.next/standalone/web/.next/static/chunks/a2b4737b190d1b54.js +0 -5
  149. package/web/.next/standalone/web/.next/static/chunks/e97212fcc8221479.js +0 -5
  150. package/web/.next/standalone/web/.next/static/chunks/f6e47c8a9766ce91.js +0 -7
  151. package/web/.next/standalone/web/.next/static/static/chunks/2868b007ce5163fc.css +0 -1
  152. package/web/.next/standalone/web/.next/static/static/chunks/3f295b6960943c38.js +0 -1
  153. package/web/.next/standalone/web/.next/static/static/chunks/631b023d37a08635.js +0 -13
  154. package/web/.next/standalone/web/.next/static/static/chunks/a2b4737b190d1b54.js +0 -5
  155. package/web/.next/standalone/web/.next/static/static/chunks/e97212fcc8221479.js +0 -5
  156. package/web/.next/standalone/web/.next/static/static/chunks/f6e47c8a9766ce91.js +0 -7
  157. package/web/.next/static/chunks/2868b007ce5163fc.css +0 -1
  158. package/web/.next/static/chunks/3f295b6960943c38.js +0 -1
  159. package/web/.next/static/chunks/631b023d37a08635.js +0 -13
  160. package/web/.next/static/chunks/a2b4737b190d1b54.js +0 -5
  161. package/web/.next/static/chunks/e97212fcc8221479.js +0 -5
  162. package/web/.next/static/chunks/f6e47c8a9766ce91.js +0 -7
  163. /package/web/.next/standalone/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_buildManifest.js +0 -0
  164. /package/web/.next/standalone/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_clientMiddlewareManifest.json +0 -0
  165. /package/web/.next/standalone/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_ssgManifest.js +0 -0
  166. /package/web/.next/standalone/web/.next/static/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_buildManifest.js +0 -0
  167. /package/web/.next/standalone/web/.next/static/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_clientMiddlewareManifest.json +0 -0
  168. /package/web/.next/standalone/web/.next/static/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_ssgManifest.js +0 -0
  169. /package/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_buildManifest.js +0 -0
  170. /package/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_clientMiddlewareManifest.json +0 -0
  171. /package/web/.next/static/{R5xiWSOp_Nqqe_js-LROo → 8zJH-RqrUQ3scBGbdaCmn}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,819609,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"warnOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},215232,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"useMergedRef",{enumerable:!0,get:function(){return n}});let r=e.r(430878);function n(e,t){let s=(0,r.useRef)(null),n=(0,r.useRef)(null);return(0,r.useCallback)(r=>{if(null===r){let e=s.current;e&&(s.current=null,e());let t=n.current;t&&(n.current=null,t())}else e&&(s.current=a(e,r)),t&&(n.current=a(t,r))},[e,t])}function a(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let s=e(t);return"function"==typeof s?s:()=>e(null)}}("function"==typeof s.default||"object"==typeof s.default&&null!==s.default)&&void 0===s.default.__esModule&&(Object.defineProperty(s.default,"__esModule",{value:!0}),Object.assign(s.default,s),t.exports=s.default)},325203,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r={assign:function(){return o},searchParamsToUrlQuery:function(){return a},urlQueryToSearchParams:function(){return l}};for(var n in r)Object.defineProperty(s,n,{enumerable:!0,get:r[n]});function a(e){let t={};for(let[s,r]of e.entries()){let e=t[s];void 0===e?t[s]=r:Array.isArray(e)?e.push(r):t[s]=[e,r]}return t}function i(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function l(e){let t=new URLSearchParams;for(let[s,r]of Object.entries(e))if(Array.isArray(r))for(let e of r)t.append(s,i(e));else t.set(s,i(r));return t}function o(e,...t){for(let s of t){for(let t of s.keys())e.delete(t);for(let[t,r]of s.entries())e.append(t,r)}return e}},971746,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r={formatUrl:function(){return l},formatWithValidation:function(){return c},urlObjectKeys:function(){return o}};for(var n in r)Object.defineProperty(s,n,{enumerable:!0,get:r[n]});let a=e.r(279510)._(e.r(325203)),i=/https?|ftp|gopher|file/;function l(e){let{auth:t,hostname:s}=e,r=e.protocol||"",n=e.pathname||"",l=e.hash||"",o=e.query||"",c=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?c=t+e.host:s&&(c=t+(~s.indexOf(":")?`[${s}]`:s),e.port&&(c+=":"+e.port)),o&&"object"==typeof o&&(o=String(a.urlQueryToSearchParams(o)));let d=e.search||o&&`?${o}`||"";return r&&!r.endsWith(":")&&(r+=":"),e.slashes||(!r||i.test(r))&&!1!==c?(c="//"+(c||""),n&&"/"!==n[0]&&(n="/"+n)):c||(c=""),l&&"#"!==l[0]&&(l="#"+l),d&&"?"!==d[0]&&(d="?"+d),n=n.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${r}${c}${n}${d}${l}`}let o=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function c(e){return l(e)}},309008,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r={DecodeError:function(){return g},MiddlewareNotFoundError:function(){return b},MissingStaticPage:function(){return v},NormalizeError:function(){return j},PageNotFoundError:function(){return y},SP:function(){return h},ST:function(){return f},WEB_VITALS:function(){return a},execOnce:function(){return i},getDisplayName:function(){return u},getLocationOrigin:function(){return c},getURL:function(){return d},isAbsoluteUrl:function(){return o},isResSent:function(){return m},loadGetInitialProps:function(){return x},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return N}};for(var n in r)Object.defineProperty(s,n,{enumerable:!0,get:r[n]});let a=["CLS","FCP","FID","INP","LCP","TTFB"];function i(e){let t,s=!1;return(...r)=>(s||(s=!0,t=e(...r)),t)}let l=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,o=e=>l.test(e);function c(){let{protocol:e,hostname:t,port:s}=window.location;return`${e}//${t}${s?":"+s:""}`}function d(){let{href:e}=window.location,t=c();return e.substring(t.length)}function u(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function m(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function x(e,t){let s=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await x(t.Component,t.ctx)}:{};let r=await e.getInitialProps(t);if(s&&m(s))return r;if(!r)throw Object.defineProperty(Error(`"${u(e)}.getInitialProps()" should resolve to an object. But found "${r}" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return r}let h="u">typeof performance,f=h&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class g extends Error{}class j extends Error{}class y extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class b extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function N(e){return JSON.stringify({message:e.message,stack:e.stack})}},868988,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"isLocalURL",{enumerable:!0,get:function(){return a}});let r=e.r(309008),n=e.r(698018);function a(e){if(!(0,r.isAbsoluteUrl)(e))return!0;try{let t=(0,r.getLocationOrigin)(),s=new URL(e,t);return s.origin===t&&(0,n.hasBasePath)(s.pathname)}catch(e){return!1}}},312491,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"errorOnce",{enumerable:!0,get:function(){return r}});let r=e=>{}},504561,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0});var r={default:function(){return g},useLinkStatus:function(){return y}};for(var n in r)Object.defineProperty(s,n,{enumerable:!0,get:r[n]});let a=e.r(279510),i=e.r(414294),l=a._(e.r(430878)),o=e.r(971746),c=e.r(369168),d=e.r(215232),u=e.r(309008),m=e.r(869343);e.r(819609);let p=e.r(93505),x=e.r(868988),h=e.r(291544);function f(e){return"string"==typeof e?e:(0,o.formatUrl)(e)}function g(t){var s;let r,n,a,[o,g]=(0,l.useOptimistic)(p.IDLE_LINK_STATUS),y=(0,l.useRef)(null),{href:v,as:b,children:N,prefetch:S=null,passHref:k,replace:C,shallow:T,scroll:w,onClick:P,onMouseEnter:z,onTouchStart:M,legacyBehavior:E=!1,onNavigate:O,ref:A,unstable_dynamicOnHover:_,...L}=t;r=N,E&&("string"==typeof r||"number"==typeof r)&&(r=(0,i.jsx)("a",{children:r}));let $=l.default.useContext(c.AppRouterContext),I=!1!==S,D=!1!==S?null===(s=S)||"auto"===s?h.FetchStrategy.PPR:h.FetchStrategy.Full:h.FetchStrategy.PPR,{href:R,as:B}=l.default.useMemo(()=>{let e=f(v);return{href:e,as:b?f(b):e}},[v,b]);if(E){if(r?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});n=l.default.Children.only(r)}let F=E?n&&"object"==typeof n&&n.ref:A,U=l.default.useCallback(e=>(null!==$&&(y.current=(0,p.mountLinkInstance)(e,R,$,D,I,g)),()=>{y.current&&((0,p.unmountLinkForCurrentNavigation)(y.current),y.current=null),(0,p.unmountPrefetchableInstance)(e)}),[I,R,$,D,g]),K={ref:(0,d.useMergedRef)(U,F),onClick(t){E||"function"!=typeof P||P(t),E&&n.props&&"function"==typeof n.props.onClick&&n.props.onClick(t),!$||t.defaultPrevented||function(t,s,r,n,a,i,o){if("u">typeof window){let c,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((c=t.currentTarget.getAttribute("target"))&&"_self"!==c||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,x.isLocalURL)(s)){a&&(t.preventDefault(),location.replace(s));return}if(t.preventDefault(),o){let e=!1;if(o({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:u}=e.r(389867);l.default.startTransition(()=>{u(r||s,a?"replace":"push",i??!0,n.current)})}}(t,R,B,y,C,w,O)},onMouseEnter(e){E||"function"!=typeof z||z(e),E&&n.props&&"function"==typeof n.props.onMouseEnter&&n.props.onMouseEnter(e),$&&I&&(0,p.onNavigationIntent)(e.currentTarget,!0===_)},onTouchStart:function(e){E||"function"!=typeof M||M(e),E&&n.props&&"function"==typeof n.props.onTouchStart&&n.props.onTouchStart(e),$&&I&&(0,p.onNavigationIntent)(e.currentTarget,!0===_)}};return(0,u.isAbsoluteUrl)(B)?K.href=B:E&&!k&&("a"!==n.type||"href"in n.props)||(K.href=(0,m.addBasePath)(B)),a=E?l.default.cloneElement(n,K):(0,i.jsx)("a",{...L,...K,children:r}),(0,i.jsx)(j.Provider,{value:o,children:a})}e.r(312491);let j=(0,l.createContext)(p.IDLE_LINK_STATUS),y=()=>(0,l.useContext)(j);("function"==typeof s.default||"object"==typeof s.default&&null!==s.default)&&void 0===s.default.__esModule&&(Object.defineProperty(s.default,"__esModule",{value:!0}),Object.assign(s.default,s),t.exports=s.default)},996720,e=>{"use strict";var t=e.i(257868);e.s(["Plus",()=>t.default])},667249,e=>{"use strict";let t=(0,e.i(292511).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);e.s(["MessageSquare",()=>t],667249)},846193,e=>{"use strict";let t=(0,e.i(292511).default)("key",[["path",{d:"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4",key:"g0fldk"}],["path",{d:"m21 2-9.6 9.6",key:"1j0ho8"}],["circle",{cx:"7.5",cy:"15.5",r:"5.5",key:"yqb3hr"}]]);e.s(["Key",()=>t],846193)},421722,e=>{"use strict";var t=e.i(414294),s=e.i(430878),r=e.i(353913),n=e.i(504561),a=e.i(292623),i=e.i(996720),l=e.i(667249),o=e.i(904781),c=e.i(461957),d=e.i(816187),u=e.i(292511);let m=(0,u.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 p=e.i(220563),x=e.i(846193),h=e.i(719583),f=e.i(707387),g=e.i(481298),g=g;let j=(0,u.default)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]),y=(0,u.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 v=e.i(79092),b=e.i(928574),N=e.i(529757),S=e.i(666904),k=e.i(836191),C=e.i(77982),T=e.i(634066),w=e.i(865259),P=e.i(553880),z=e.i(87614),M=e.i(524741),E=e.i(739963),O=e.i(555552),A=e.i(300739),_=e.i(335130);function L(){let e=(0,r.useRouter)(),u=(0,r.usePathname)(),{state:L,toggleSidebar:$}=(0,N.useSidebar)(),{sessions:I,isLoading:D}=(0,A.useSessions)(),[R,B]=(0,s.useState)(!1),[F,U]=(0,s.useState)(!1),[K,q]=(0,s.useState)(!1),[V,W]=(0,s.useState)(null),[H,X]=(0,s.useState)(null),G=(0,s.useRef)(null),[Q,J]=(0,s.useState)(""),[Z,Y]=(0,s.useState)(""),[ee,et]=(0,s.useState)({}),[es,er]=(0,s.useState)([]),[en,ea]=(0,s.useState)(null),[ei,el]=(0,s.useState)(""),[eo,ec]=(0,s.useState)(!1),[ed,eu]=(0,s.useState)(!1),{enabled:em,setEnabled:ep}=(0,_.useNotificationSound)(),ex=u.startsWith("/embed/"),eh=u.startsWith("/session/")?u.split("/session/")[1]:u.startsWith("/embed/")?u.split("/embed/")[1]:null,ef=ex?"/embed":"/session",eg=I.some(e=>e.isStreaming),ej=async()=>{let e=await (0,E.getConfig)();W(e),Y(e.defaultModel),et(e.defaultToolApprovals)},ey=async()=>{try{let e=await (0,M.getApiKeys)();er(e.providers)}catch(e){console.error("Failed to load API keys:",e)}};(0,s.useEffect)(()=>{ej(),ey()},[]),(0,s.useEffect)(()=>{K&&ey()},[K]);let ev=async e=>{if(ei.trim()){eu(!0);try{await (0,M.setApiKey)(e,ei),await ey(),ea(null),el(""),ec(!1)}catch(e){console.error("Failed to save API key:",e)}finally{eu(!1)}}},eb=()=>{ea(null),el(""),ec(!1)};(0,s.useEffect)(()=>{G.current&&(eg?G.current.play().catch(()=>{}):(G.current.pause(),G.current.currentTime=0))},[eg]);let eN=async()=>{if(!R){B(!0);try{let t=await (0,M.createSession)({name:`Session ${I.length+1}`,model:V?.defaultModel||"anthropic/claude-opus-4-6",toolApprovals:ee});(0,A.mutateSessions)(),e.push(`${ef}/${t.id}`)}catch(e){console.error("Failed to create session:",e)}finally{B(!1)}}},eS=async()=>{B(!0);try{let t=await (0,M.createSession)({name:Q||`Session ${I.length+1}`,model:Z,toolApprovals:ee});(0,A.mutateSessions)(),ek(),U(!1),e.push(`${ef}/${t.id}`)}catch(e){console.error("Failed to create session:",e)}finally{B(!1)}},ek=()=>{J(""),V&&(Y(V.defaultModel),et(V.defaultToolApprovals))},eC=async(t,s)=>{t.preventDefault(),t.stopPropagation();try{await (0,M.deleteSession)(s),(0,A.mutateSessions)(),eh===s&&e.push("/")}catch(e){console.error("Failed to delete session:",e)}},eT=e=>{et(t=>({...t,[e]:!t[e]}))},ew="collapsed"===L;return(0,t.jsxs)(N.Sidebar,{collapsible:ex?"offcanvas":"icon",className:"border-r border-border/50",children:[(0,t.jsxs)(N.SidebarHeader,{className:(0,O.cn)(ew?"p-2 space-y-2":"p-3 space-y-3"),children:[!ew&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsxs)("div",{className:"relative shrink-0 overflow-hidden rounded-xl size-10 shadow-md ring-1 ring-white/10",children:[(0,t.jsx)(a.default,{src:"/sparke-coder.png",alt:"Sparke",width:40,height:40,className:"absolute inset-0 size-full object-cover",priority:!0}),(0,t.jsx)("video",{ref:G,src:"/sparkecode.mp4",muted:!0,loop:!0,playsInline:!0,className:(0,O.cn)("absolute inset-0 size-full object-cover transition-opacity duration-300",eg?"opacity-100":"opacity-0")})]}),(0,t.jsxs)("div",{className:"flex flex-1 items-center justify-between min-w-0",children:[(0,t.jsx)("h1",{className:"text-lg font-bold text-foreground",children:"SparkECoder"}),(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"size-7 hover:bg-accent transition-colors",onClick:$,children:(0,t.jsx)(m,{className:"size-4"})})}),(0,t.jsxs)(z.TooltipContent,{side:"bottom",children:["Collapse ",(0,t.jsx)("kbd",{className:"ml-1 text-[10px] opacity-60",children:"⌘B"})]})]})})]})]}),(0,t.jsxs)(S.Button,{onClick:eN,disabled:R,className:"w-full justify-center gap-2 h-9",children:[R?(0,t.jsx)(c.Loader2,{className:"size-4 animate-spin"}):(0,t.jsx)(i.Plus,{className:"size-4"}),"New Agent"]})]}),ew&&(0,t.jsxs)("div",{className:"flex flex-col items-center gap-2 w-full",children:[(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",onClick:$,className:"size-8 mx-auto",children:(0,t.jsx)(p.PanelLeft,{className:"size-4"})})}),(0,t.jsxs)(z.TooltipContent,{side:"right",children:["Expand ",(0,t.jsx)("kbd",{className:"ml-1 text-[10px] opacity-60",children:"⌘B"})]})]})}),(0,t.jsxs)("div",{className:"relative overflow-hidden rounded-xl size-8 shadow-md ring-1 ring-white/10 mx-auto",children:[(0,t.jsx)(a.default,{src:"/sparke-coder.png",alt:"SparkECoder",width:32,height:32,className:"absolute inset-0 size-full object-cover",priority:!0}),(0,t.jsx)("video",{ref:G,src:"/sparkecode.mp4",muted:!0,loop:!0,playsInline:!0,className:(0,O.cn)("absolute inset-0 size-full object-cover transition-opacity duration-300",eg?"opacity-100":"opacity-0")})]}),(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",onClick:eN,disabled:R,className:"size-8 mx-auto",children:R?(0,t.jsx)(c.Loader2,{className:"size-4 animate-spin"}):(0,t.jsx)(i.Plus,{className:"size-4"})})}),(0,t.jsx)(z.TooltipContent,{side:"right",children:"New Agent"})]})})]})]}),(0,t.jsx)(k.Dialog,{open:F,onOpenChange:e=>{U(e),e&&ek()},children:(0,t.jsxs)(k.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(k.DialogHeader,{children:(0,t.jsxs)(k.DialogTitle,{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"size-8 rounded-lg bg-primary flex items-center justify-center",children:(0,t.jsx)(d.Settings,{className:"size-4 text-primary-foreground"})}),"New Agent"]})}),(0,t.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(T.Label,{htmlFor:"name",className:"text-sm font-medium",children:"Session Name"}),(0,t.jsx)(C.Input,{id:"name",placeholder:"My Coding Project (optional)",value:Q,onChange:e=>J(e.target.value),className:"transition-all focus:ring-2 focus:ring-primary/20"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(T.Label,{className:"text-sm font-medium",children:"Model"}),(0,t.jsxs)(P.Select,{value:Z,onValueChange:Y,children:[(0,t.jsx)(P.SelectTrigger,{className:"transition-all hover:border-primary/50",children:(0,t.jsx)(P.SelectValue,{placeholder:"Select a model"})}),(0,t.jsx)(P.SelectContent,{children:V?.availableModels.map(e=>(0,t.jsx)(P.SelectItem,{value:e.id,children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{children:e.name}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e.provider})]})},e.id))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(T.Label,{className:"flex items-center gap-2 text-sm font-medium",children:"Tool Approvals"}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground -mt-0.5",children:"Toggle on to require approval before tool executes"}),(0,t.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:V?.availableTools.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:[(0,t.jsxs)("div",{className:"space-y-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name}),e.dangerous&&(0,t.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,t.jsx)("p",{className:"text-[11px] text-muted-foreground",children:e.description})]}),(0,t.jsx)(w.Switch,{checked:ee[e.id]??!1,onCheckedChange:()=>eT(e.id)})]},e.id))})]}),(0,t.jsxs)(S.Button,{onClick:eS,disabled:R,className:"w-full",children:[R?(0,t.jsx)(c.Loader2,{className:"size-4 animate-spin mr-2"}):(0,t.jsx)(i.Plus,{className:"size-4 mr-2"}),"Create Session"]})]})]})}),(0,t.jsx)(N.SidebarContent,{className:"px-2",children:(0,t.jsx)(N.SidebarGroup,{className:"p-0",children:(0,t.jsx)(N.SidebarGroupContent,{children:(0,t.jsx)(N.SidebarMenu,{className:"gap-1",children:D?(0,t.jsx)("div",{className:"flex justify-center py-8",children:(0,t.jsx)(c.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}):0===I.length?!ew&&(0,t.jsxs)("div",{className:"text-center py-8 px-4",children:[(0,t.jsxs)("div",{className:"relative overflow-hidden rounded-xl size-12 mx-auto mb-3 shadow-md ring-1 ring-white/10",children:[(0,t.jsx)(a.default,{src:"/sparke-coder.png",alt:"SparkECoder",width:48,height:48,className:"absolute inset-0 size-full object-cover"}),eg&&(0,t.jsx)("video",{src:"/sparkecode.mp4",autoPlay:!0,muted:!0,loop:!0,playsInline:!0,className:"absolute inset-0 size-full object-cover"})]}),(0,t.jsx)("p",{className:"text-sm text-foreground",children:"No sessions yet"}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Click New Agent above"})]}):I.map(e=>{let s,r,a,i,c=e.id===eh,d=H===e.id,u=!0===e.isStreaming,m=!ew&&(d||c);return(0,t.jsx)(N.SidebarMenuItem,{onMouseEnter:()=>X(e.id),onMouseLeave:()=>X(null),children:ew?(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(n.default,{href:`${ef}/${e.id}`,className:(0,O.cn)("flex items-center justify-center size-8 rounded-lg transition-colors mx-auto",c?"bg-accent":"hover:bg-accent/60",u&&!c&&"bg-emerald-500/10"),children:u?(0,t.jsx)("span",{className:"size-2 rounded-full bg-emerald-500 animate-pulse"}):(0,t.jsx)(l.MessageSquare,{className:(0,O.cn)("size-4",c?"text-primary":"text-muted-foreground")})})}),(0,t.jsxs)(z.TooltipContent,{side:"right",children:[e.name||"Untitled",u&&" (Running)"]})]})}):(0,t.jsx)(N.SidebarMenuButton,{asChild:!0,isActive:c,className:(0,O.cn)("h-9 transition-all duration-150","hover:bg-accent/60",c&&"bg-accent",u&&!c&&"bg-emerald-500/5"),children:(0,t.jsxs)(n.default,{href:`${ef}/${e.id}`,className:"flex items-center gap-2.5 px-2",children:[u?(0,t.jsx)("span",{className:"size-2 rounded-full bg-emerald-500 animate-pulse shrink-0"}):(0,t.jsx)(l.MessageSquare,{className:(0,O.cn)("size-4 shrink-0",c?"text-primary":"text-muted-foreground")}),(0,t.jsx)("span",{className:(0,O.cn)("truncate flex-1 text-sm",u&&"text-emerald-600 dark:text-emerald-400"),children:e.name||"Untitled"}),e.config?.task?.enabled&&(0,t.jsxs)(b.Badge,{variant:"outline",className:(0,O.cn)("shrink-0 text-[9px] px-1.5 py-0 h-4 font-medium","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,t.jsx)(v.ListChecks,{className:"size-2.5"}),"Task"]}),m?(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"size-6 shrink-0 hover:bg-destructive/10 hover:text-destructive transition-colors",onClick:t=>eC(t,e.id),children:(0,t.jsx)(o.Trash2,{className:"size-3.5"})})}),(0,t.jsx)(z.TooltipContent,{side:"right",children:"Delete session"})]})}):u?(0,t.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,t.jsx)("span",{className:"text-[10px] text-amber-600 dark:text-amber-400 shrink-0 font-medium",children:"Waiting"}):"error"===e.status?(0,t.jsx)("span",{className:"text-[10px] text-red-600 dark:text-red-400 shrink-0 font-medium",children:"Error"}):(0,t.jsx)("span",{className:"text-[11px] text-muted-foreground shrink-0 tabular-nums",children:(s=new Date(e.createdAt),i=Math.floor((a=Math.floor((r=Math.floor(Math.floor((new Date().getTime()-s.getTime())/1e3)/60))/60))/24),r<1?"now":r<60?`${r}m`:a<24?`${a}h`:i<7?`${i}d`:`${Math.floor(i/7)}w`)})]})})},e.id)})})})})}),(0,t.jsx)(N.SidebarFooter,{className:(0,O.cn)("border-t border-border/50",ew?"p-2":"p-3"),children:(0,t.jsx)("div",{className:"flex items-center justify-between",children:ew?(0,t.jsxs)("div",{className:"flex flex-col items-center gap-2 w-full",children:[(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("div",{className:"flex items-center justify-center",children:(0,t.jsx)("span",{className:(0,O.cn)("size-2 rounded-full",V?.serverConnected?"bg-emerald-500 animate-pulse":"bg-red-500")})})}),(0,t.jsx)(z.TooltipContent,{side:"right",children:V?.serverConnected?"Connected":"Disconnected"})]})}),(0,t.jsx)(k.Dialog,{open:K,onOpenChange:q,children:(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(k.DialogTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"size-8",children:(0,t.jsx)(d.Settings,{className:"size-4"})})})}),(0,t.jsx)(z.TooltipContent,{side:"right",children:"Settings"})]})})})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs",children:[V?.serverConnected?(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-emerald-600 dark:text-emerald-400",children:[(0,t.jsx)("span",{className:"size-1.5 rounded-full bg-current animate-pulse"}),(0,t.jsx)("span",{children:"Connected"})]}):(0,t.jsxs)("div",{className:"flex items-center gap-1.5 text-red-500",children:[(0,t.jsx)("span",{className:"size-1.5 rounded-full bg-current"}),(0,t.jsx)("span",{children:"Disconnected"})]}),(0,t.jsx)("span",{className:"text-muted-foreground",children:"·"}),(0,t.jsx)("span",{className:"text-muted-foreground",children:I.length})]}),(0,t.jsxs)(k.Dialog,{open:K,onOpenChange:q,children:[(0,t.jsx)(z.TooltipProvider,{children:(0,t.jsxs)(z.Tooltip,{children:[(0,t.jsx)(z.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(k.DialogTrigger,{asChild:!0,children:(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"size-7 hover:bg-accent transition-colors",children:(0,t.jsx)(d.Settings,{className:"size-4"})})})}),(0,t.jsx)(z.TooltipContent,{side:"top",children:"Settings"})]})}),(0,t.jsxs)(k.DialogContent,{className:"sm:max-w-md",children:[(0,t.jsx)(k.DialogHeader,{children:(0,t.jsxs)(k.DialogTitle,{className:"flex items-center gap-2",children:[(0,t.jsx)("div",{className:"size-8 rounded-lg bg-muted flex items-center justify-center",children:(0,t.jsx)(d.Settings,{className:"size-4"})}),"Settings"]})}),(0,t.jsxs)("div",{className:"space-y-4 pt-2",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)(T.Label,{className:"text-sm font-medium",children:"Default Model"}),(0,t.jsxs)(P.Select,{value:Z,onValueChange:Y,children:[(0,t.jsx)(P.SelectTrigger,{className:"transition-all hover:border-primary/50",children:(0,t.jsx)(P.SelectValue,{placeholder:"Select a model"})}),(0,t.jsx)(P.SelectContent,{children:V?.availableModels.map(e=>(0,t.jsx)(P.SelectItem,{value:e.id,children:(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{children:e.name}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:e.provider})]})},e.id))})]})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(T.Label,{className:"flex items-center gap-2 text-sm font-medium",children:"Tool Approvals"}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground -mt-0.5",children:"Toggle on to require approval before tool executes"}),(0,t.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:V?.availableTools.map(e=>(0,t.jsxs)("div",{className:"flex items-center justify-between py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:[(0,t.jsxs)("div",{className:"space-y-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name}),e.dangerous&&(0,t.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,t.jsx)("p",{className:"text-[11px] text-muted-foreground",children:e.description})]}),(0,t.jsx)(w.Switch,{checked:ee[e.id]??!1,onCheckedChange:()=>eT(e.id)})]},e.id))})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)(T.Label,{className:"flex items-center gap-2 text-sm font-medium",children:[(0,t.jsx)(x.Key,{className:"size-4"}),"API Keys"]}),(0,t.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,t.jsx)("div",{className:"space-y-1 rounded-lg border p-2.5 bg-muted/30",children:es.map(e=>(0,t.jsx)("div",{className:"py-1.5 hover:bg-muted/50 rounded px-2 -mx-1 transition-colors",children:en===e.provider?(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("span",{className:"text-sm font-medium capitalize",children:e.provider}),(0,t.jsx)("span",{className:"text-[10px] text-muted-foreground font-mono",children:e.envVar})]}),(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)("div",{className:"relative flex-1",children:[(0,t.jsx)(C.Input,{type:eo?"text":"password",value:ei,onChange:e=>el(e.target.value),placeholder:"Paste your API key...",className:"pr-8 text-sm font-mono",autoFocus:!0}),(0,t.jsx)(S.Button,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-2 hover:bg-transparent",onClick:()=>ec(!eo),children:eo?(0,t.jsx)(j,{className:"size-4"}):(0,t.jsx)(g.default,{className:"size-4"})})]}),(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"shrink-0",onClick:()=>ev(e.provider),disabled:ed||!ei.trim(),children:ed?(0,t.jsx)(c.Loader2,{className:"size-4 animate-spin"}):(0,t.jsx)(h.Check,{className:"size-4 text-green-500"})}),(0,t.jsx)(S.Button,{size:"icon",variant:"ghost",className:"shrink-0",onClick:eb,children:(0,t.jsx)(f.X,{className:"size-4 text-muted-foreground"})})]})]}):(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"space-y-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-sm font-medium capitalize",children:e.provider}),e.configured&&(0,t.jsx)("span",{className:(0,O.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,t.jsx)("p",{className:"text-[11px] text-muted-foreground font-mono",children:e.configured?e.maskedKey:"Not configured"})]}),(0,t.jsx)(S.Button,{size:"sm",variant:"ghost",className:"h-7 text-xs",onClick:()=>ea(e.provider),children:e.configured?"Update":"Add"})]})},e.provider))})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)(T.Label,{className:"flex items-center gap-2 text-sm font-medium",children:[(0,t.jsx)(y,{className:"size-4"}),"Notification Sound"]}),(0,t.jsxs)("div",{className:"flex items-center justify-between rounded-lg border p-2.5 bg-muted/30",children:[(0,t.jsxs)("div",{className:"space-y-0",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:"Play sound when done"}),(0,t.jsx)("p",{className:"text-[11px] text-muted-foreground",children:"Ding when the assistant finishes responding"})]}),(0,t.jsx)(w.Switch,{checked:em,onCheckedChange:ep})]})]}),(0,t.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."})]})]})]})]})})})]})}e.s(["SessionsSidebar",()=>L],421722)},138134,e=>{"use strict";var t=e.i(414294),s=e.i(529757),r=e.i(421722);function n({children:e}){return(0,t.jsxs)(s.SidebarProvider,{defaultOpen:!0,children:[(0,t.jsx)(r.SessionsSidebar,{}),(0,t.jsx)(s.SidebarInset,{className:"h-screen flex flex-col bg-background min-w-0",children:(0,t.jsx)("div",{className:"flex-1 overflow-hidden min-w-0",children:e})})]})}e.s(["default",()=>n])}]);