@recombine-ai/bosun 0.1.9 → 0.2.0-draft

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 (440) hide show
  1. package/bin/bosun.js +9 -8
  2. package/build/academy/academy.ts +584 -0
  3. package/build/academy/csv/index.ts +155 -0
  4. package/build/academy/data.ts +299 -0
  5. package/build/academy/emulate-agents.ts +129 -0
  6. package/build/academy/google-sheets/index.ts +187 -0
  7. package/build/academy/runPromptTests.cli.ts +99 -0
  8. package/build/academy/suite.ts +99 -0
  9. package/build/client/_app/immutable/assets/0.3Ve1RxLg.css +1 -0
  10. package/build/client/_app/immutable/assets/0.3Ve1RxLg.css.br +0 -0
  11. package/build/client/_app/immutable/assets/0.3Ve1RxLg.css.gz +0 -0
  12. package/build/client/_app/immutable/assets/3.C7pCuiHL.css +1 -0
  13. package/build/client/_app/immutable/assets/3.C7pCuiHL.css.br +0 -0
  14. package/build/client/_app/immutable/assets/3.C7pCuiHL.css.gz +0 -0
  15. package/build/client/_app/immutable/assets/4.Baezuvdj.css +1 -0
  16. package/build/client/_app/immutable/assets/4.Baezuvdj.css.br +0 -0
  17. package/build/client/_app/immutable/assets/4.Baezuvdj.css.gz +0 -0
  18. package/build/client/_app/immutable/assets/6.CebW_jOJ.css +1 -0
  19. package/build/client/_app/immutable/assets/6.CebW_jOJ.css.br +0 -0
  20. package/build/client/_app/immutable/assets/6.CebW_jOJ.css.gz +0 -0
  21. package/build/client/_app/immutable/assets/8.f3T7i0UW.css +1 -0
  22. package/build/client/_app/immutable/assets/8.f3T7i0UW.css.br +0 -0
  23. package/build/client/_app/immutable/assets/8.f3T7i0UW.css.gz +0 -0
  24. package/build/client/_app/immutable/assets/AgentSidebar.BEG0l2mN.css +1 -0
  25. package/build/client/_app/immutable/assets/AgentSidebar.BEG0l2mN.css.br +0 -0
  26. package/build/client/_app/immutable/assets/AgentSidebar.BEG0l2mN.css.gz +0 -0
  27. package/build/client/_app/immutable/assets/Link.D7uHGZ0C.css +1 -0
  28. package/build/client/_app/immutable/assets/Link.D7uHGZ0C.css.br +1 -0
  29. package/build/client/_app/immutable/assets/Link.D7uHGZ0C.css.gz +0 -0
  30. package/build/client/_app/immutable/assets/Tab.DrtF13Tg.css +1 -0
  31. package/build/client/_app/immutable/assets/Tab.DrtF13Tg.css.br +0 -0
  32. package/build/client/_app/immutable/assets/Tab.DrtF13Tg.css.gz +0 -0
  33. package/build/client/_app/immutable/chunks/B6Eu_a6G.js +8 -0
  34. package/build/client/_app/immutable/chunks/B6Eu_a6G.js.br +0 -0
  35. package/build/client/_app/immutable/chunks/B6Eu_a6G.js.gz +0 -0
  36. package/build/client/_app/immutable/chunks/B946i1vX.js +1 -0
  37. package/build/client/_app/immutable/chunks/B946i1vX.js.br +0 -0
  38. package/build/client/_app/immutable/chunks/B946i1vX.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/BDr6IUDE.js +1 -0
  40. package/build/client/_app/immutable/chunks/BDr6IUDE.js.br +0 -0
  41. package/build/client/_app/immutable/chunks/BDr6IUDE.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/BJ0PAzRz.js +1 -0
  43. package/build/client/_app/immutable/chunks/BJ0PAzRz.js.br +0 -0
  44. package/build/client/_app/immutable/chunks/BJ0PAzRz.js.gz +0 -0
  45. package/build/client/_app/immutable/chunks/BQsXEsya.js +2 -0
  46. package/build/client/_app/immutable/chunks/BQsXEsya.js.br +0 -0
  47. package/build/client/_app/immutable/chunks/BQsXEsya.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/BVH8cl8Q.js +1 -0
  49. package/build/client/_app/immutable/chunks/BVH8cl8Q.js.br +0 -0
  50. package/build/client/_app/immutable/chunks/BVH8cl8Q.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/Bckf35or.js +1 -0
  52. package/build/client/_app/immutable/chunks/Bckf35or.js.br +1 -0
  53. package/build/client/_app/immutable/chunks/Bckf35or.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/BcyK4bvI.js +1 -0
  55. package/build/client/_app/immutable/chunks/BcyK4bvI.js.br +0 -0
  56. package/build/client/_app/immutable/chunks/BcyK4bvI.js.gz +0 -0
  57. package/build/client/_app/immutable/chunks/BpsvkpCa.js +1 -0
  58. package/build/client/_app/immutable/chunks/BpsvkpCa.js.br +0 -0
  59. package/build/client/_app/immutable/chunks/BpsvkpCa.js.gz +0 -0
  60. package/build/client/_app/immutable/chunks/C7b8kjFl.js +33 -0
  61. package/build/client/_app/immutable/chunks/C7b8kjFl.js.br +0 -0
  62. package/build/client/_app/immutable/chunks/C7b8kjFl.js.gz +0 -0
  63. package/build/client/_app/immutable/chunks/{D5O98MXA.js → C9ihsQgF.js} +2 -2
  64. package/build/client/_app/immutable/chunks/C9ihsQgF.js.br +6 -0
  65. package/build/client/_app/immutable/chunks/C9ihsQgF.js.gz +0 -0
  66. package/build/client/_app/immutable/chunks/CEHtmspK.js +1 -0
  67. package/build/client/_app/immutable/chunks/CEHtmspK.js.br +0 -0
  68. package/build/client/_app/immutable/chunks/CEHtmspK.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/CHop8m-3.js +1 -0
  70. package/build/client/_app/immutable/chunks/CHop8m-3.js.br +0 -0
  71. package/build/client/_app/immutable/chunks/CHop8m-3.js.gz +0 -0
  72. package/build/client/_app/immutable/chunks/CUWa2xqt.js +1 -0
  73. package/build/client/_app/immutable/chunks/CUWa2xqt.js.br +0 -0
  74. package/build/client/_app/immutable/chunks/CUWa2xqt.js.gz +0 -0
  75. package/build/client/_app/immutable/chunks/ClfaR3Y2.js +1 -0
  76. package/build/client/_app/immutable/chunks/ClfaR3Y2.js.br +0 -0
  77. package/build/client/_app/immutable/chunks/ClfaR3Y2.js.gz +0 -0
  78. package/build/client/_app/immutable/chunks/DAgYAbDT.js +3 -0
  79. package/build/client/_app/immutable/chunks/DAgYAbDT.js.br +0 -0
  80. package/build/client/_app/immutable/chunks/DAgYAbDT.js.gz +0 -0
  81. package/build/client/_app/immutable/chunks/DBCXNg0T.js +1 -0
  82. package/build/client/_app/immutable/chunks/DBCXNg0T.js.br +0 -0
  83. package/build/client/_app/immutable/chunks/DBCXNg0T.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/DDncCuU5.js +1 -0
  85. package/build/client/_app/immutable/chunks/DDncCuU5.js.br +2 -0
  86. package/build/client/_app/immutable/chunks/DDncCuU5.js.gz +0 -0
  87. package/build/client/_app/immutable/chunks/DHQ8_yIz.js +1 -0
  88. package/build/client/_app/immutable/chunks/DHQ8_yIz.js.br +0 -0
  89. package/build/client/_app/immutable/chunks/DHQ8_yIz.js.gz +0 -0
  90. package/build/client/_app/immutable/chunks/Deb2U3a-.js +1 -0
  91. package/build/client/_app/immutable/chunks/Deb2U3a-.js.br +0 -0
  92. package/build/client/_app/immutable/chunks/Deb2U3a-.js.gz +0 -0
  93. package/build/client/_app/immutable/chunks/{B8bx6-qu.js → DgNsppMf.js} +1 -1
  94. package/build/client/_app/immutable/chunks/DgNsppMf.js.br +0 -0
  95. package/build/client/_app/immutable/chunks/DgNsppMf.js.gz +0 -0
  96. package/build/client/_app/immutable/chunks/DgSSnt2u.js +1 -0
  97. package/build/client/_app/immutable/chunks/DgSSnt2u.js.br +0 -0
  98. package/build/client/_app/immutable/chunks/DgSSnt2u.js.gz +0 -0
  99. package/build/client/_app/immutable/chunks/Dr0H-PA9.js +1 -0
  100. package/build/client/_app/immutable/chunks/Dr0H-PA9.js.br +0 -0
  101. package/build/client/_app/immutable/chunks/Dr0H-PA9.js.gz +0 -0
  102. package/build/client/_app/immutable/chunks/HA3qddzj.js +1 -0
  103. package/build/client/_app/immutable/chunks/HA3qddzj.js.br +0 -0
  104. package/build/client/_app/immutable/chunks/HA3qddzj.js.gz +0 -0
  105. package/build/client/_app/immutable/chunks/LPKWlFs0.js +1 -0
  106. package/build/client/_app/immutable/chunks/LPKWlFs0.js.br +3 -0
  107. package/build/client/_app/immutable/chunks/LPKWlFs0.js.gz +0 -0
  108. package/build/client/_app/immutable/chunks/VpPuF4LW.js +3 -0
  109. package/build/client/_app/immutable/chunks/VpPuF4LW.js.br +0 -0
  110. package/build/client/_app/immutable/chunks/VpPuF4LW.js.gz +0 -0
  111. package/build/client/_app/immutable/chunks/XyRovF4A.js +1 -0
  112. package/build/client/_app/immutable/chunks/XyRovF4A.js.br +0 -0
  113. package/build/client/_app/immutable/chunks/XyRovF4A.js.gz +0 -0
  114. package/build/client/_app/immutable/chunks/mRVZsLQ4.js +1 -0
  115. package/build/client/_app/immutable/chunks/mRVZsLQ4.js.br +2 -0
  116. package/build/client/_app/immutable/chunks/mRVZsLQ4.js.gz +0 -0
  117. package/build/client/_app/immutable/entry/app.CVDHq7dN.js +2 -0
  118. package/build/client/_app/immutable/entry/app.CVDHq7dN.js.br +0 -0
  119. package/build/client/_app/immutable/entry/app.CVDHq7dN.js.gz +0 -0
  120. package/build/client/_app/immutable/entry/start.a4wXr-rh.js +1 -0
  121. package/build/client/_app/immutable/entry/start.a4wXr-rh.js.br +2 -0
  122. package/build/client/_app/immutable/entry/start.a4wXr-rh.js.gz +0 -0
  123. package/build/client/_app/immutable/nodes/0.q5P1PqkU.js +3 -0
  124. package/build/client/_app/immutable/nodes/0.q5P1PqkU.js.br +0 -0
  125. package/build/client/_app/immutable/nodes/0.q5P1PqkU.js.gz +0 -0
  126. package/build/client/_app/immutable/nodes/1.TfmDsqd-.js +1 -0
  127. package/build/client/_app/immutable/nodes/1.TfmDsqd-.js.br +0 -0
  128. package/build/client/_app/immutable/nodes/1.TfmDsqd-.js.gz +0 -0
  129. package/build/client/_app/immutable/nodes/10.BpXsBlTN.js +1 -0
  130. package/build/client/_app/immutable/nodes/10.BpXsBlTN.js.br +0 -0
  131. package/build/client/_app/immutable/nodes/10.BpXsBlTN.js.gz +0 -0
  132. package/build/client/_app/immutable/nodes/11.Bs_5a_H1.js +1 -0
  133. package/build/client/_app/immutable/nodes/11.Bs_5a_H1.js.br +0 -0
  134. package/build/client/_app/immutable/nodes/11.Bs_5a_H1.js.gz +0 -0
  135. package/build/client/_app/immutable/nodes/2.BWtLQzzv.js +3 -0
  136. package/build/client/_app/immutable/nodes/2.BWtLQzzv.js.br +0 -0
  137. package/build/client/_app/immutable/nodes/2.BWtLQzzv.js.gz +0 -0
  138. package/build/client/_app/immutable/nodes/3.BlYIVobe.js +1 -0
  139. package/build/client/_app/immutable/nodes/3.BlYIVobe.js.br +0 -0
  140. package/build/client/_app/immutable/nodes/3.BlYIVobe.js.gz +0 -0
  141. package/build/client/_app/immutable/nodes/4.DMboagHp.js +38 -0
  142. package/build/client/_app/immutable/nodes/4.DMboagHp.js.br +0 -0
  143. package/build/client/_app/immutable/nodes/4.DMboagHp.js.gz +0 -0
  144. package/build/client/_app/immutable/nodes/5.DJDEfbU1.js +1 -0
  145. package/build/client/_app/immutable/nodes/5.DJDEfbU1.js.br +0 -0
  146. package/build/client/_app/immutable/nodes/5.DJDEfbU1.js.gz +0 -0
  147. package/build/client/_app/immutable/nodes/6.Co1n7leD.js +12 -0
  148. package/build/client/_app/immutable/nodes/6.Co1n7leD.js.br +0 -0
  149. package/build/client/_app/immutable/nodes/6.Co1n7leD.js.gz +0 -0
  150. package/build/client/_app/immutable/nodes/7.3clSez0f.js +1 -0
  151. package/build/client/_app/immutable/nodes/7.3clSez0f.js.br +0 -0
  152. package/build/client/_app/immutable/nodes/7.3clSez0f.js.gz +0 -0
  153. package/build/client/_app/immutable/nodes/8.D4xImLsM.js +1 -0
  154. package/build/client/_app/immutable/nodes/8.D4xImLsM.js.br +0 -0
  155. package/build/client/_app/immutable/nodes/8.D4xImLsM.js.gz +0 -0
  156. package/build/client/_app/immutable/nodes/9.C1KWPSTf.js +1 -0
  157. package/build/client/_app/immutable/nodes/9.C1KWPSTf.js.br +0 -0
  158. package/build/client/_app/immutable/nodes/9.C1KWPSTf.js.gz +0 -0
  159. package/build/client/_app/version.json +1 -1
  160. package/build/client/_app/version.json.br +0 -0
  161. package/build/client/_app/version.json.gz +0 -0
  162. package/build/server/chunks/0-CgyQG-Vf.js +9 -0
  163. package/build/server/chunks/0-CgyQG-Vf.js.map +1 -0
  164. package/build/server/chunks/1-DACiLfsu.js +9 -0
  165. package/build/server/chunks/{1-Cwk3hpe9.js.map → 1-DACiLfsu.js.map} +1 -1
  166. package/build/server/chunks/10-zMqY0bCj.js +9 -0
  167. package/build/server/chunks/10-zMqY0bCj.js.map +1 -0
  168. package/build/server/chunks/11-B7cPB4ip.js +9 -0
  169. package/build/server/chunks/11-B7cPB4ip.js.map +1 -0
  170. package/build/server/chunks/2-uTf78dNT.js +9 -0
  171. package/build/server/chunks/2-uTf78dNT.js.map +1 -0
  172. package/build/server/chunks/3-DOOLRXaZ.js +9 -0
  173. package/build/server/chunks/3-DOOLRXaZ.js.map +1 -0
  174. package/build/server/chunks/4-CLK_BxY0.js +9 -0
  175. package/build/server/chunks/4-CLK_BxY0.js.map +1 -0
  176. package/build/server/chunks/5-DfZ6yJrz.js +9 -0
  177. package/build/server/chunks/5-DfZ6yJrz.js.map +1 -0
  178. package/build/server/chunks/6-B2BoZUr6.js +22 -0
  179. package/build/server/chunks/6-B2BoZUr6.js.map +1 -0
  180. package/build/server/chunks/{5-p3BDfNc2.js → 7-DmgY6drC.js} +6 -6
  181. package/build/server/chunks/7-DmgY6drC.js.map +1 -0
  182. package/build/server/chunks/8-Bku8n4Ko.js +9 -0
  183. package/build/server/chunks/8-Bku8n4Ko.js.map +1 -0
  184. package/build/server/chunks/{7-C_AGqUAU.js → 9-nwlpMH7t.js} +5 -5
  185. package/build/server/chunks/9-nwlpMH7t.js.map +1 -0
  186. package/build/server/chunks/AgentSidebar-CZIBBsSh.js +141 -0
  187. package/build/server/chunks/AgentSidebar-CZIBBsSh.js.map +1 -0
  188. package/build/server/chunks/Button-OUO_MioZ.js +44 -0
  189. package/build/server/chunks/Button-OUO_MioZ.js.map +1 -0
  190. package/build/server/chunks/ContextEditor-stz14-2o.js +48 -0
  191. package/build/server/chunks/ContextEditor-stz14-2o.js.map +1 -0
  192. package/build/server/chunks/{Dropdown-B-UCol1v.js → Dropdown-BTr_XiAm.js} +2 -2
  193. package/build/server/chunks/Dropdown-BTr_XiAm.js.map +1 -0
  194. package/build/server/chunks/{Input-DLAEH36y.js → Input-B_jIG2tD.js} +2 -2
  195. package/build/server/chunks/Input-B_jIG2tD.js.map +1 -0
  196. package/build/server/chunks/{Icon-DDJ9D6Sq.js → Link-DaOJVbdB.js} +25 -42
  197. package/build/server/chunks/Link-DaOJVbdB.js.map +1 -0
  198. package/build/server/chunks/{Panel-KZDoG3_L.js → Panel-CmvYn6IC.js} +2 -2
  199. package/build/server/chunks/Panel-CmvYn6IC.js.map +1 -0
  200. package/build/server/chunks/Tab-n348Mfiq.js +84 -0
  201. package/build/server/chunks/Tab-n348Mfiq.js.map +1 -0
  202. package/build/server/chunks/_layout.svelte-CP6tz6DB.js +62 -0
  203. package/build/server/chunks/_layout.svelte-CP6tz6DB.js.map +1 -0
  204. package/build/server/chunks/{_layout.svelte-BoAJDYC1.js → _layout.svelte-CvGX8M4U.js} +68 -18
  205. package/build/server/chunks/_layout.svelte-CvGX8M4U.js.map +1 -0
  206. package/build/server/chunks/{_page.svelte-CdEfc0bc.js → _page.svelte-AHHrodUG.js} +94 -86
  207. package/build/server/chunks/_page.svelte-AHHrodUG.js.map +1 -0
  208. package/build/server/chunks/_page.svelte-Bm-iBjXM.js +80 -0
  209. package/build/server/chunks/_page.svelte-Bm-iBjXM.js.map +1 -0
  210. package/build/server/chunks/_page.svelte-D5Xqk3cI.js +52 -0
  211. package/build/server/chunks/_page.svelte-D5Xqk3cI.js.map +1 -0
  212. package/build/server/chunks/{_page.svelte-CNhxx79k.js → _page.svelte-DKBFi-JF.js} +202 -240
  213. package/build/server/chunks/_page.svelte-DKBFi-JF.js.map +1 -0
  214. package/build/server/chunks/{_page.svelte-DQUdiD4S.js → _page.svelte-DSefP5E9.js} +6 -5
  215. package/build/server/chunks/_page.svelte-DSefP5E9.js.map +1 -0
  216. package/build/server/chunks/{_page.svelte-kLLxi8vG.js → _page.svelte-Dldwxu4m.js} +28 -6
  217. package/build/server/chunks/_page.svelte-Dldwxu4m.js.map +1 -0
  218. package/build/server/chunks/{_page.svelte-Cc0DAAQW.js → _page.svelte-lU1-SHJj.js} +5 -4
  219. package/build/server/chunks/_page.svelte-lU1-SHJj.js.map +1 -0
  220. package/build/server/chunks/{_page.svelte-nsIWq28L.js → _page.svelte-vGR-ltk7.js} +7 -27
  221. package/build/server/chunks/_page.svelte-vGR-ltk7.js.map +1 -0
  222. package/build/server/chunks/{_server.ts-d0Tii8aZ.js → _server.ts-3D9tpnMZ.js} +3 -2
  223. package/build/server/chunks/_server.ts-3D9tpnMZ.js.map +1 -0
  224. package/build/server/chunks/{_server.ts-BBxm_xV1.js → _server.ts-B56wS_0L.js} +4 -1
  225. package/build/server/chunks/_server.ts-B56wS_0L.js.map +1 -0
  226. package/build/server/chunks/{_server.ts-CLKPeFqF.js → _server.ts-BCBY3OIY.js} +3 -2
  227. package/build/server/chunks/_server.ts-BCBY3OIY.js.map +1 -0
  228. package/build/server/chunks/{_server.ts-BmZBSYvJ.js → _server.ts-BCfiuZgS.js} +19 -8
  229. package/build/server/chunks/_server.ts-BCfiuZgS.js.map +1 -0
  230. package/build/server/chunks/_server.ts-BkL-sSQA.js.map +1 -1
  231. package/build/server/chunks/{_server.ts-DEHw6op6.js → _server.ts-D0C3cRDU.js} +3 -2
  232. package/build/server/chunks/_server.ts-D0C3cRDU.js.map +1 -0
  233. package/build/server/chunks/{_server.ts-BYDdbqNr.js → _server.ts-Dc989xbA.js} +3 -2
  234. package/build/server/chunks/_server.ts-Dc989xbA.js.map +1 -0
  235. package/build/server/chunks/_server.ts-Ddto8x_p.js.map +1 -1
  236. package/build/server/chunks/{_server.ts-BIcKE9RQ.js → _server.ts-I-18L-Sg.js} +3 -2
  237. package/build/server/chunks/_server.ts-I-18L-Sg.js.map +1 -0
  238. package/build/server/chunks/_server.ts-iuWHhHZx.js +629 -0
  239. package/build/server/chunks/_server.ts-iuWHhHZx.js.map +1 -0
  240. package/build/server/chunks/agents-context-C4MM7lSl.js +6 -0
  241. package/build/server/chunks/agents-context-C4MM7lSl.js.map +1 -0
  242. package/build/server/chunks/{client2-tp0-IQU0.js → client-BhnXtftB.js} +6 -29
  243. package/build/server/chunks/client-BhnXtftB.js.map +1 -0
  244. package/build/server/chunks/{index2-CVBATI2G.js → context-Dy9MY1Z0.js} +253 -965
  245. package/build/server/chunks/context-Dy9MY1Z0.js.map +1 -0
  246. package/build/server/chunks/{data-CbXDDeDB.js → data-BltJc-uF.js} +29 -89
  247. package/build/server/chunks/data-BltJc-uF.js.map +1 -0
  248. package/build/server/chunks/error.svelte-Cn6umEWY.js +14 -0
  249. package/build/server/chunks/error.svelte-Cn6umEWY.js.map +1 -0
  250. package/build/server/chunks/errors-B8liwVcD.js +17 -0
  251. package/build/server/chunks/errors-B8liwVcD.js.map +1 -0
  252. package/build/server/chunks/{events-A18hGvKp.js → events-BFcZEt66.js} +3 -9
  253. package/build/server/chunks/events-BFcZEt66.js.map +1 -0
  254. package/build/server/chunks/{index-BoStl4QO.js → index-C0ds_eUO.js} +8 -3
  255. package/build/server/chunks/index-C0ds_eUO.js.map +1 -0
  256. package/build/server/chunks/index-server-CMCI3p2Y.js +18 -0
  257. package/build/server/chunks/index-server-CMCI3p2Y.js.map +1 -0
  258. package/build/server/chunks/index2-B1rkViAM.js +860 -0
  259. package/build/server/chunks/index2-B1rkViAM.js.map +1 -0
  260. package/build/server/chunks/index3-CVYj52gl.js.map +1 -1
  261. package/build/server/chunks/index4-DSZuWW-A.js +47 -0
  262. package/build/server/chunks/index4-DSZuWW-A.js.map +1 -0
  263. package/build/server/chunks/main-DL75vM4l.js +2250 -0
  264. package/build/server/chunks/main-DL75vM4l.js.map +1 -0
  265. package/build/server/chunks/{state.svelte-Dze7OxC_.js → state.svelte-CBgyohE1.js} +2 -2
  266. package/build/server/chunks/state.svelte-CBgyohE1.js.map +1 -0
  267. package/build/server/chunks/suite-4--Gr0jF.js +60 -0
  268. package/build/server/chunks/suite-4--Gr0jF.js.map +1 -0
  269. package/build/server/chunks/ws-client-CyJORDFw.js +98 -0
  270. package/build/server/chunks/ws-client-CyJORDFw.js.map +1 -0
  271. package/build/server/index.js +167 -90
  272. package/build/server/index.js.map +1 -1
  273. package/build/server/manifest.js +83 -75
  274. package/build/server/manifest.js.map +1 -1
  275. package/package.json +3 -1
  276. package/src/ws-server/projects.ts +82 -9
  277. package/build/client/_app/immutable/assets/0.7xdY7TSX.css +0 -1
  278. package/build/client/_app/immutable/assets/0.7xdY7TSX.css.br +0 -0
  279. package/build/client/_app/immutable/assets/0.7xdY7TSX.css.gz +0 -0
  280. package/build/client/_app/immutable/assets/10.C1o6a69m.css +0 -1
  281. package/build/client/_app/immutable/assets/10.C1o6a69m.css.br +0 -1
  282. package/build/client/_app/immutable/assets/10.C1o6a69m.css.gz +0 -0
  283. package/build/client/_app/immutable/assets/4.858mUNwe.css +0 -1
  284. package/build/client/_app/immutable/assets/4.858mUNwe.css.br +0 -0
  285. package/build/client/_app/immutable/assets/4.858mUNwe.css.gz +0 -0
  286. package/build/client/_app/immutable/assets/6.CD1QZ0pt.css +0 -1
  287. package/build/client/_app/immutable/assets/6.CD1QZ0pt.css.br +0 -0
  288. package/build/client/_app/immutable/assets/6.CD1QZ0pt.css.gz +0 -0
  289. package/build/client/_app/immutable/chunks/2PVbuV1X.js +0 -1
  290. package/build/client/_app/immutable/chunks/2PVbuV1X.js.br +0 -1
  291. package/build/client/_app/immutable/chunks/2PVbuV1X.js.gz +0 -0
  292. package/build/client/_app/immutable/chunks/9OGf6H2n.js +0 -1
  293. package/build/client/_app/immutable/chunks/9OGf6H2n.js.br +0 -2
  294. package/build/client/_app/immutable/chunks/9OGf6H2n.js.gz +0 -0
  295. package/build/client/_app/immutable/chunks/B8bx6-qu.js.br +0 -1
  296. package/build/client/_app/immutable/chunks/B8bx6-qu.js.gz +0 -0
  297. package/build/client/_app/immutable/chunks/BDTuVTVZ.js +0 -1
  298. package/build/client/_app/immutable/chunks/BDTuVTVZ.js.br +0 -0
  299. package/build/client/_app/immutable/chunks/BDTuVTVZ.js.gz +0 -0
  300. package/build/client/_app/immutable/chunks/BTGV3Gq0.js +0 -8
  301. package/build/client/_app/immutable/chunks/BTGV3Gq0.js.br +0 -0
  302. package/build/client/_app/immutable/chunks/BTGV3Gq0.js.gz +0 -0
  303. package/build/client/_app/immutable/chunks/BUoURvZ_.js +0 -1
  304. package/build/client/_app/immutable/chunks/BUoURvZ_.js.br +0 -0
  305. package/build/client/_app/immutable/chunks/BUoURvZ_.js.gz +0 -0
  306. package/build/client/_app/immutable/chunks/BdOqksoz.js +0 -1
  307. package/build/client/_app/immutable/chunks/BdOqksoz.js.br +0 -0
  308. package/build/client/_app/immutable/chunks/BdOqksoz.js.gz +0 -0
  309. package/build/client/_app/immutable/chunks/Be371ezp.js +0 -2
  310. package/build/client/_app/immutable/chunks/Be371ezp.js.br +0 -0
  311. package/build/client/_app/immutable/chunks/Be371ezp.js.gz +0 -0
  312. package/build/client/_app/immutable/chunks/Bmx4ManB.js +0 -1
  313. package/build/client/_app/immutable/chunks/Bmx4ManB.js.br +0 -0
  314. package/build/client/_app/immutable/chunks/Bmx4ManB.js.gz +0 -0
  315. package/build/client/_app/immutable/chunks/C2Y9UxTx.js +0 -1
  316. package/build/client/_app/immutable/chunks/C2Y9UxTx.js.br +0 -0
  317. package/build/client/_app/immutable/chunks/C2Y9UxTx.js.gz +0 -0
  318. package/build/client/_app/immutable/chunks/C681lv5i.js +0 -3
  319. package/build/client/_app/immutable/chunks/C681lv5i.js.br +0 -0
  320. package/build/client/_app/immutable/chunks/C681lv5i.js.gz +0 -0
  321. package/build/client/_app/immutable/chunks/CYuXdPQc.js +0 -1
  322. package/build/client/_app/immutable/chunks/CYuXdPQc.js.br +0 -0
  323. package/build/client/_app/immutable/chunks/CYuXdPQc.js.gz +0 -0
  324. package/build/client/_app/immutable/chunks/CpZGG0E7.js +0 -1
  325. package/build/client/_app/immutable/chunks/CpZGG0E7.js.br +0 -0
  326. package/build/client/_app/immutable/chunks/CpZGG0E7.js.gz +0 -0
  327. package/build/client/_app/immutable/chunks/CpdYAO0i.js +0 -1
  328. package/build/client/_app/immutable/chunks/CpdYAO0i.js.br +0 -0
  329. package/build/client/_app/immutable/chunks/CpdYAO0i.js.gz +0 -0
  330. package/build/client/_app/immutable/chunks/CtpS-ZbM.js +0 -1
  331. package/build/client/_app/immutable/chunks/CtpS-ZbM.js.br +0 -0
  332. package/build/client/_app/immutable/chunks/CtpS-ZbM.js.gz +0 -0
  333. package/build/client/_app/immutable/chunks/D5O98MXA.js.br +0 -0
  334. package/build/client/_app/immutable/chunks/D5O98MXA.js.gz +0 -0
  335. package/build/client/_app/immutable/chunks/DIiF2tGe.js +0 -1
  336. package/build/client/_app/immutable/chunks/DIiF2tGe.js.br +0 -0
  337. package/build/client/_app/immutable/chunks/DIiF2tGe.js.gz +0 -0
  338. package/build/client/_app/immutable/chunks/D_4dC3JZ.js +0 -1
  339. package/build/client/_app/immutable/chunks/D_4dC3JZ.js.br +0 -0
  340. package/build/client/_app/immutable/chunks/D_4dC3JZ.js.gz +0 -0
  341. package/build/client/_app/immutable/chunks/DveC87gn.js +0 -33
  342. package/build/client/_app/immutable/chunks/DveC87gn.js.br +0 -0
  343. package/build/client/_app/immutable/chunks/DveC87gn.js.gz +0 -0
  344. package/build/client/_app/immutable/chunks/ISgeSat5.js +0 -1
  345. package/build/client/_app/immutable/chunks/ISgeSat5.js.br +0 -0
  346. package/build/client/_app/immutable/chunks/ISgeSat5.js.gz +0 -0
  347. package/build/client/_app/immutable/chunks/uzczSfVx.js +0 -3
  348. package/build/client/_app/immutable/chunks/uzczSfVx.js.br +0 -0
  349. package/build/client/_app/immutable/chunks/uzczSfVx.js.gz +0 -0
  350. package/build/client/_app/immutable/entry/app.CSVt0Fuk.js +0 -2
  351. package/build/client/_app/immutable/entry/app.CSVt0Fuk.js.br +0 -0
  352. package/build/client/_app/immutable/entry/app.CSVt0Fuk.js.gz +0 -0
  353. package/build/client/_app/immutable/entry/start.BQnEMq3G.js +0 -1
  354. package/build/client/_app/immutable/entry/start.BQnEMq3G.js.br +0 -2
  355. package/build/client/_app/immutable/entry/start.BQnEMq3G.js.gz +0 -0
  356. package/build/client/_app/immutable/nodes/0.BFGm6g4L.js +0 -1
  357. package/build/client/_app/immutable/nodes/0.BFGm6g4L.js.br +0 -0
  358. package/build/client/_app/immutable/nodes/0.BFGm6g4L.js.gz +0 -0
  359. package/build/client/_app/immutable/nodes/1.B_l4Mw8E.js +0 -1
  360. package/build/client/_app/immutable/nodes/1.B_l4Mw8E.js.br +0 -0
  361. package/build/client/_app/immutable/nodes/1.B_l4Mw8E.js.gz +0 -0
  362. package/build/client/_app/immutable/nodes/10.Bdd6Le3Q.js +0 -1
  363. package/build/client/_app/immutable/nodes/10.Bdd6Le3Q.js.br +0 -0
  364. package/build/client/_app/immutable/nodes/10.Bdd6Le3Q.js.gz +0 -0
  365. package/build/client/_app/immutable/nodes/2.DPpr5BK7.js +0 -3
  366. package/build/client/_app/immutable/nodes/2.DPpr5BK7.js.br +0 -0
  367. package/build/client/_app/immutable/nodes/2.DPpr5BK7.js.gz +0 -0
  368. package/build/client/_app/immutable/nodes/4.BokOq116.js +0 -12
  369. package/build/client/_app/immutable/nodes/4.BokOq116.js.br +0 -0
  370. package/build/client/_app/immutable/nodes/4.BokOq116.js.gz +0 -0
  371. package/build/client/_app/immutable/nodes/5.BqyMuHwQ.js +0 -1
  372. package/build/client/_app/immutable/nodes/5.BqyMuHwQ.js.br +0 -0
  373. package/build/client/_app/immutable/nodes/5.BqyMuHwQ.js.gz +0 -0
  374. package/build/client/_app/immutable/nodes/6.7qo5WmXj.js +0 -38
  375. package/build/client/_app/immutable/nodes/6.7qo5WmXj.js.br +0 -0
  376. package/build/client/_app/immutable/nodes/6.7qo5WmXj.js.gz +0 -0
  377. package/build/client/_app/immutable/nodes/7.CvDadi99.js +0 -1
  378. package/build/client/_app/immutable/nodes/7.CvDadi99.js.br +0 -0
  379. package/build/client/_app/immutable/nodes/7.CvDadi99.js.gz +0 -0
  380. package/build/client/_app/immutable/nodes/8.CLZUC68b.js +0 -1
  381. package/build/client/_app/immutable/nodes/8.CLZUC68b.js.br +0 -0
  382. package/build/client/_app/immutable/nodes/8.CLZUC68b.js.gz +0 -0
  383. package/build/client/_app/immutable/nodes/9.BCC-2Any.js +0 -1
  384. package/build/client/_app/immutable/nodes/9.BCC-2Any.js.br +0 -0
  385. package/build/client/_app/immutable/nodes/9.BCC-2Any.js.gz +0 -0
  386. package/build/server/chunks/0-DMd6Dk79.js +0 -9
  387. package/build/server/chunks/0-DMd6Dk79.js.map +0 -1
  388. package/build/server/chunks/1-Cwk3hpe9.js +0 -9
  389. package/build/server/chunks/10-Ci_AhluU.js +0 -9
  390. package/build/server/chunks/10-Ci_AhluU.js.map +0 -1
  391. package/build/server/chunks/2-BLxdw-8l.js +0 -9
  392. package/build/server/chunks/2-BLxdw-8l.js.map +0 -1
  393. package/build/server/chunks/3-DGFu_uy6.js +0 -19
  394. package/build/server/chunks/3-DGFu_uy6.js.map +0 -1
  395. package/build/server/chunks/4-MwbWFUCO.js +0 -22
  396. package/build/server/chunks/4-MwbWFUCO.js.map +0 -1
  397. package/build/server/chunks/5-p3BDfNc2.js.map +0 -1
  398. package/build/server/chunks/6-CK3NUjnH.js +0 -9
  399. package/build/server/chunks/6-CK3NUjnH.js.map +0 -1
  400. package/build/server/chunks/7-C_AGqUAU.js.map +0 -1
  401. package/build/server/chunks/8-Dr1vf8BH.js +0 -9
  402. package/build/server/chunks/8-Dr1vf8BH.js.map +0 -1
  403. package/build/server/chunks/9-DAsQ5XZx.js +0 -9
  404. package/build/server/chunks/9-DAsQ5XZx.js.map +0 -1
  405. package/build/server/chunks/AgentDropdown-C3XtwkaV.js +0 -162
  406. package/build/server/chunks/AgentDropdown-C3XtwkaV.js.map +0 -1
  407. package/build/server/chunks/Dropdown-B-UCol1v.js.map +0 -1
  408. package/build/server/chunks/Icon-DDJ9D6Sq.js.map +0 -1
  409. package/build/server/chunks/Input-DLAEH36y.js.map +0 -1
  410. package/build/server/chunks/Panel-KZDoG3_L.js.map +0 -1
  411. package/build/server/chunks/_layout.svelte-22nlfSFq.js +0 -9
  412. package/build/server/chunks/_layout.svelte-22nlfSFq.js.map +0 -1
  413. package/build/server/chunks/_layout.svelte-BoAJDYC1.js.map +0 -1
  414. package/build/server/chunks/_page.svelte-CNhxx79k.js.map +0 -1
  415. package/build/server/chunks/_page.svelte-Cc0DAAQW.js.map +0 -1
  416. package/build/server/chunks/_page.svelte-CdEfc0bc.js.map +0 -1
  417. package/build/server/chunks/_page.svelte-DQUdiD4S.js.map +0 -1
  418. package/build/server/chunks/_page.svelte-kLLxi8vG.js.map +0 -1
  419. package/build/server/chunks/_page.svelte-nsIWq28L.js.map +0 -1
  420. package/build/server/chunks/_server.ts-BBxm_xV1.js.map +0 -1
  421. package/build/server/chunks/_server.ts-BIcKE9RQ.js.map +0 -1
  422. package/build/server/chunks/_server.ts-BYDdbqNr.js.map +0 -1
  423. package/build/server/chunks/_server.ts-BmZBSYvJ.js.map +0 -1
  424. package/build/server/chunks/_server.ts-CLKPeFqF.js.map +0 -1
  425. package/build/server/chunks/_server.ts-DEHw6op6.js.map +0 -1
  426. package/build/server/chunks/_server.ts-DTyPQO2I.js +0 -93
  427. package/build/server/chunks/_server.ts-DTyPQO2I.js.map +0 -1
  428. package/build/server/chunks/_server.ts-d0Tii8aZ.js.map +0 -1
  429. package/build/server/chunks/client-DpkplAAP.js +0 -25
  430. package/build/server/chunks/client-DpkplAAP.js.map +0 -1
  431. package/build/server/chunks/client2-tp0-IQU0.js.map +0 -1
  432. package/build/server/chunks/context-DVQH5kJk.js +0 -113
  433. package/build/server/chunks/context-DVQH5kJk.js.map +0 -1
  434. package/build/server/chunks/data-CbXDDeDB.js.map +0 -1
  435. package/build/server/chunks/error.svelte-DNcHZkvg.js +0 -29
  436. package/build/server/chunks/error.svelte-DNcHZkvg.js.map +0 -1
  437. package/build/server/chunks/events-A18hGvKp.js.map +0 -1
  438. package/build/server/chunks/index-BoStl4QO.js.map +0 -1
  439. package/build/server/chunks/index2-CVBATI2G.js.map +0 -1
  440. package/build/server/chunks/state.svelte-Dze7OxC_.js.map +0 -1
@@ -0,0 +1,84 @@
1
+ import { a as attr_class, b as attr, c as bind_props, s as store_get, f as stringify, u as unsubscribe_stores } from './index2-B1rkViAM.js';
2
+ import { n as setContext, Z as getContext } from './context-Dy9MY1Z0.js';
3
+ import { w as writable } from './index-C0ds_eUO.js';
4
+ import { o as onDestroy } from './index-server-CMCI3p2Y.js';
5
+
6
+ function Tabs($$renderer, $$props) {
7
+ $$renderer.component(($$renderer2) => {
8
+ let {
9
+ value = null,
10
+ defaultValue = null,
11
+ ariaLabel = "Tabs",
12
+ class: className = "",
13
+ orientation = "horizontal",
14
+ children,
15
+ onChange
16
+ } = $$props;
17
+ const tabs = [];
18
+ let internal = null;
19
+ const valueStore = writable(null);
20
+ function focusByValue(v) {
21
+ const t = tabs.find((t2) => t2.value === v);
22
+ t?.getEl()?.focus();
23
+ }
24
+ function setValue(v, focus = false) {
25
+ if (v === (value ?? internal)) return;
26
+ if (value === null) internal = v;
27
+ onChange?.({ value: v });
28
+ if (focus) queueMicrotask(() => focusByValue(v));
29
+ }
30
+ function register(tab) {
31
+ const i = tabs.findIndex((t) => t.id === tab.id);
32
+ if (i === -1) tabs.push(tab);
33
+ else tabs[i] = tab;
34
+ }
35
+ function unregister(id) {
36
+ const i = tabs.findIndex((t) => t.id === id);
37
+ if (i !== -1) tabs.splice(i, 1);
38
+ if (value === null && internal && !tabs.some((t) => t.value === internal) && tabs.length) {
39
+ const next = tabs[Math.max(0, i - 1)].value;
40
+ internal = next;
41
+ onChange?.({ value: next });
42
+ }
43
+ }
44
+ setContext("rc-tabs", {
45
+ value: valueStore,
46
+ requestSelect: (v) => setValue(v),
47
+ register,
48
+ unregister
49
+ });
50
+ $$renderer2.push(`<div${attr_class(`w-full ${className}`, "svelte-126ak3w")}><div class="tablist svelte-126ak3w" role="tablist"${attr("aria-label", ariaLabel)}${attr("aria-orientation", orientation)}>`);
51
+ children($$renderer2);
52
+ $$renderer2.push(`<!----></div></div>`);
53
+ bind_props($$props, { value });
54
+ });
55
+ }
56
+ function Tab($$renderer, $$props) {
57
+ $$renderer.component(($$renderer2) => {
58
+ var $$store_subs;
59
+ let {
60
+ value = "",
61
+ id = "",
62
+ disabled = false,
63
+ class: className = "",
64
+ onclick,
65
+ children
66
+ } = $$props;
67
+ const uid = Math.random().toString(36).slice(2, 8);
68
+ if (!id) id = `tab-${uid}`;
69
+ if (!value) value = id;
70
+ const tabs = getContext("rc-tabs");
71
+ const valueStore = tabs.value;
72
+ let selected = store_get($$store_subs ??= {}, "$valueStore", valueStore) === value;
73
+ onDestroy(() => {
74
+ tabs?.unregister(id);
75
+ });
76
+ $$renderer2.push(`<button type="button"${attr_class(`tab ${stringify(className)}`, "svelte-184qymf", { "active": selected })}${attr("disabled", disabled, true)} role="tab"${attr("id", id)}${attr("aria-selected", selected)}${attr("aria-controls", `panel-${value}`)}${attr("tabindex", selected ? 0 : -1)}>`);
77
+ children($$renderer2);
78
+ $$renderer2.push(`<!----></button>`);
79
+ if ($$store_subs) unsubscribe_stores($$store_subs);
80
+ });
81
+ }
82
+
83
+ export { Tabs as T, Tab as a };
84
+ //# sourceMappingURL=Tab-n348Mfiq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tab-n348Mfiq.js","sources":["../../../.svelte-kit/adapter-node/chunks/Tab.js"],"sourcesContent":["import { a as attr_class, b as attr, c as bind_props, f as store_get, u as unsubscribe_stores, s as stringify } from \"./index2.js\";\nimport { U as setContext, Y as getContext } from \"./context.js\";\nimport { w as writable } from \"./index.js\";\nimport { o as onDestroy } from \"./index-server.js\";\nfunction Tabs($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n value = null,\n defaultValue = null,\n ariaLabel = \"Tabs\",\n class: className = \"\",\n orientation = \"horizontal\",\n children,\n onChange\n } = $$props;\n const tabs = [];\n let internal = null;\n const valueStore = writable(null);\n function focusByValue(v) {\n const t = tabs.find((t2) => t2.value === v);\n t?.getEl()?.focus();\n }\n function setValue(v, focus = false) {\n if (v === (value ?? internal)) return;\n if (value === null) internal = v;\n onChange?.({ value: v });\n if (focus) queueMicrotask(() => focusByValue(v));\n }\n function register(tab) {\n const i = tabs.findIndex((t) => t.id === tab.id);\n if (i === -1) tabs.push(tab);\n else tabs[i] = tab;\n }\n function unregister(id) {\n const i = tabs.findIndex((t) => t.id === id);\n if (i !== -1) tabs.splice(i, 1);\n if (value === null && internal && !tabs.some((t) => t.value === internal) && tabs.length) {\n const next = tabs[Math.max(0, i - 1)].value;\n internal = next;\n onChange?.({ value: next });\n }\n }\n setContext(\"rc-tabs\", {\n value: valueStore,\n requestSelect: (v) => setValue(v),\n register,\n unregister\n });\n $$renderer2.push(`<div${attr_class(`w-full ${className}`, \"svelte-126ak3w\")}><div class=\"tablist svelte-126ak3w\" role=\"tablist\"${attr(\"aria-label\", ariaLabel)}${attr(\"aria-orientation\", orientation)}>`);\n children($$renderer2);\n $$renderer2.push(`<!----></div></div>`);\n bind_props($$props, { value });\n });\n}\nfunction Tab($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n var $$store_subs;\n let {\n value = \"\",\n id = \"\",\n disabled = false,\n class: className = \"\",\n onclick,\n children\n } = $$props;\n const uid = Math.random().toString(36).slice(2, 8);\n if (!id) id = `tab-${uid}`;\n if (!value) value = id;\n const tabs = getContext(\"rc-tabs\");\n const valueStore = tabs.value;\n let selected = store_get($$store_subs ??= {}, \"$valueStore\", valueStore) === value;\n onDestroy(() => {\n tabs?.unregister(id);\n });\n $$renderer2.push(`<button type=\"button\"${attr_class(`tab ${stringify(className)}`, \"svelte-184qymf\", { \"active\": selected })}${attr(\"disabled\", disabled, true)} role=\"tab\"${attr(\"id\", id)}${attr(\"aria-selected\", selected)}${attr(\"aria-controls\", `panel-${value}`)}${attr(\"tabindex\", selected ? 0 : -1)}>`);\n children($$renderer2);\n $$renderer2.push(`<!----></button>`);\n if ($$store_subs) unsubscribe_stores($$store_subs);\n });\n}\nexport {\n Tabs as T,\n Tab as a\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { W as escape_html } from './context-Dy9MY1Z0.js';
2
+ import { w as writable } from './index-C0ds_eUO.js';
3
+ import { o as onDestroy } from './index-server-CMCI3p2Y.js';
4
+ import { w as wsClient } from './ws-client-CyJORDFw.js';
5
+ import { s as setAgentsContext } from './agents-context-C4MM7lSl.js';
6
+ import { p as page, g as goto } from './index4-DSZuWW-A.js';
7
+ import './errors-B8liwVcD.js';
8
+ import './state.svelte-CBgyohE1.js';
9
+ import './utils-KcIDVAAe.js';
10
+
11
+ function _layout($$renderer, $$props) {
12
+ $$renderer.component(($$renderer2) => {
13
+ let { children } = $$props;
14
+ let error = "";
15
+ let currentAgent = writable("");
16
+ let agents = writable([]);
17
+ setAgentsContext({
18
+ agents,
19
+ currentAgent,
20
+ onAgentSelect: (agentId) => {
21
+ const currentTab = page.url.pathname.split("/")[1];
22
+ if (currentTab) {
23
+ currentAgent.set(agentId);
24
+ }
25
+ if (!currentTab) {
26
+ goto();
27
+ } else if (currentTab === "roleplay") {
28
+ goto();
29
+ } else {
30
+ goto();
31
+ }
32
+ }
33
+ });
34
+ onDestroy(() => {
35
+ wsClient.destroy();
36
+ });
37
+ wsClient.onError(handleError);
38
+ function handleError(errorMessage) {
39
+ error = errorMessage;
40
+ setTimeout(
41
+ () => {
42
+ error = "";
43
+ },
44
+ 5e3
45
+ );
46
+ console.error(errorMessage);
47
+ }
48
+ $$renderer2.push(`<main class="h-screen overflow-hidden bg-gray-600">`);
49
+ children($$renderer2);
50
+ $$renderer2.push(`<!----> `);
51
+ if (error) {
52
+ $$renderer2.push("<!--[-->");
53
+ $$renderer2.push(`<div class="absolute bottom-0 right-0 m-4 rounded-sm border border-red-500 bg-red-50 px-4 py-2 text-red-800 focus:outline-none focus:ring-0">${escape_html(error)}</div>`);
54
+ } else {
55
+ $$renderer2.push("<!--[!-->");
56
+ }
57
+ $$renderer2.push(`<!--]--></main>`);
58
+ });
59
+ }
60
+
61
+ export { _layout as default };
62
+ //# sourceMappingURL=_layout.svelte-CP6tz6DB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_layout.svelte-CP6tz6DB.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { V as escape_html } from \"../../chunks/context.js\";\nimport \"clsx\";\nimport { w as writable } from \"../../chunks/index.js\";\nimport { o as onDestroy } from \"../../chunks/index-server.js\";\nimport { w as wsClient } from \"../../chunks/ws-client.js\";\nimport { s as setAgentsContext } from \"../../chunks/agents-context.js\";\nimport { p as page, g as goto } from \"../../chunks/index4.js\";\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { children } = $$props;\n let error = \"\";\n let currentAgent = writable(\"\");\n let agents = writable([]);\n setAgentsContext({\n agents,\n currentAgent,\n onAgentSelect: (agentId) => {\n const currentTab = page.url.pathname.split(\"/\")[1];\n if (currentTab) {\n currentAgent.set(agentId);\n }\n if (!currentTab) {\n goto();\n } else if (currentTab === \"roleplay\") {\n goto();\n } else {\n goto();\n }\n }\n });\n onDestroy(() => {\n wsClient.destroy();\n });\n wsClient.onError(handleError);\n function handleError(errorMessage) {\n error = errorMessage;\n setTimeout(\n () => {\n error = \"\";\n },\n 5e3\n );\n console.error(errorMessage);\n }\n $$renderer2.push(`<main class=\"h-screen overflow-hidden bg-gray-600\">`);\n children($$renderer2);\n $$renderer2.push(`<!----> `);\n if (error) {\n $$renderer2.push(\"<!--[-->\");\n $$renderer2.push(`<div class=\"absolute bottom-0 right-0 m-4 rounded-sm border border-red-500 bg-red-50 px-4 py-2 text-red-800 focus:outline-none focus:ring-0\">${escape_html(error)}</div>`);\n } else {\n $$renderer2.push(\"<!--[!-->\");\n }\n $$renderer2.push(`<!--]--></main>`);\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":";;;;;;;;;;AAOA,SAAS,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AACtC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK;AACxC,IAAI,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAC9B,IAAI,IAAI,KAAK,GAAG,EAAE;AAClB,IAAI,IAAI,YAAY,GAAG,QAAQ,CAAC,EAAE,CAAC;AACnC,IAAI,IAAI,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;AAC7B,IAAI,gBAAgB,CAAC;AACrB,MAAM,MAAM;AACZ,MAAM,YAAY;AAClB,MAAM,aAAa,EAAE,CAAC,OAAO,KAAK;AAClC,QAAQ,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1D,QAAQ,IAAI,UAAU,EAAE;AACxB,UAAU,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACnC,QAAQ;AACR,QAAQ,IAAI,CAAC,UAAU,EAAE;AACzB,UAAU,IAAI,EAAE;AAChB,QAAQ,CAAC,MAAM,IAAI,UAAU,KAAK,UAAU,EAAE;AAC9C,UAAU,IAAI,EAAE;AAChB,QAAQ,CAAC,MAAM;AACf,UAAU,IAAI,EAAE;AAChB,QAAQ;AACR,MAAM;AACN,KAAK,CAAC;AACN,IAAI,SAAS,CAAC,MAAM;AACpB,MAAM,QAAQ,CAAC,OAAO,EAAE;AACxB,IAAI,CAAC,CAAC;AACN,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;AACjC,IAAI,SAAS,WAAW,CAAC,YAAY,EAAE;AACvC,MAAM,KAAK,GAAG,YAAY;AAC1B,MAAM,UAAU;AAChB,QAAQ,MAAM;AACd,UAAU,KAAK,GAAG,EAAE;AACpB,QAAQ,CAAC;AACT,QAAQ;AACR,OAAO;AACP,MAAM,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC;AACjC,IAAI;AACJ,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,mDAAmD,CAAC,CAAC;AAC3E,IAAI,QAAQ,CAAC,WAAW,CAAC;AACzB,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAChC,IAAI,IAAI,KAAK,EAAE;AACf,MAAM,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;AAClC,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC,6IAA6I,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;AAClM,IAAI,CAAC,MAAM;AACX,MAAM,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AACnC,IAAI;AACJ,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC;AACvC,EAAE,CAAC,CAAC;AACJ;;;;"}
@@ -1,11 +1,18 @@
1
- import { W as head, X as ensure_array_like, Y as attr_class, Z as attr, _ as store_get, $ as unsubscribe_stores, a0 as bind_props } from './index2-CVBATI2G.js';
1
+ import { h as head, e as ensure_array_like, a as attr_class, b as attr, c as bind_props } from './index2-B1rkViAM.js';
2
+ import { p as page, g as goto } from './index4-DSZuWW-A.js';
3
+ import { B as Button } from './Button-OUO_MioZ.js';
4
+ import { I as Icon } from './Link-DaOJVbdB.js';
5
+ import { I as Input } from './Input-B_jIG2tD.js';
6
+ import { m as mockGenerator, T as TelescopeClient, C as CollapseExpand } from './client-BhnXtftB.js';
7
+ import { W as escape_html, X as fallback } from './context-Dy9MY1Z0.js';
8
+ import { T as Tabs, a as Tab } from './Tab-n348Mfiq.js';
9
+ import { A as AgentSidebar } from './AgentSidebar-CZIBBsSh.js';
10
+ import './errors-B8liwVcD.js';
11
+ import './state.svelte-CBgyohE1.js';
2
12
  import './utils-KcIDVAAe.js';
3
- import './state.svelte-Dze7OxC_.js';
4
- import { m as mockGenerator, T as TelescopeClient, p as page, C as CollapseExpand } from './client2-tp0-IQU0.js';
5
- import { B as Button, I as Icon } from './Icon-DDJ9D6Sq.js';
6
- import { I as Input } from './Input-DLAEH36y.js';
7
- import { e as escape_html, f as fallback } from './context-DVQH5kJk.js';
13
+ import './index-C0ds_eUO.js';
8
14
  import 'zod';
15
+ import './index-server-CMCI3p2Y.js';
9
16
 
10
17
  function CopyButton($$renderer, $$props) {
11
18
  let text = fallback($$props["text"], "");
@@ -25,7 +32,6 @@ function CopyButton($$renderer, $$props) {
25
32
  }
26
33
  function _layout($$renderer, $$props) {
27
34
  $$renderer.component(($$renderer2) => {
28
- var $$store_subs;
29
35
  const client = new TelescopeClient(fetch);
30
36
  let calls = void 0;
31
37
  let selectedCall = null;
@@ -37,6 +43,7 @@ function _layout($$renderer, $$props) {
37
43
  let lastCallId = null;
38
44
  let loading = false;
39
45
  let totalLoaded = 0;
46
+ let sidebarCollapsed = false;
40
47
  let { useMock = false, children } = $$props;
41
48
  function fmtDate(ms) {
42
49
  return new Date(ms).toLocaleString();
@@ -127,19 +134,63 @@ function _layout($$renderer, $$props) {
127
134
  async function onSearch() {
128
135
  await loadFirstPage();
129
136
  }
137
+ const activeTopTab = (() => {
138
+ return page.url.pathname.split("/")[1];
139
+ })();
140
+ function handleTabChange({ value }) {
141
+ if (value === activeTopTab) return;
142
+ goto();
143
+ }
130
144
  let $$settled = true;
131
145
  let $$inner_renderer;
132
146
  function $$render_inner($$renderer3) {
133
- head($$renderer3, ($$renderer4) => {
147
+ head("1andbfi", $$renderer3, ($$renderer4) => {
134
148
  $$renderer4.title(($$renderer5) => {
135
149
  $$renderer5.push(`<title>Bosun: Telescope</title>`);
136
150
  });
137
151
  });
138
- $$renderer3.push(`<div class="flex h-full flex-col bg-rc-gray-700 px-lg py-md"><nav class="flex flex-none flex-col border-b border-b-gray-700 bg-rc-gray-700 text-gray-500"><div class="flex h-14 items-center gap-8"><div class="ml-3 flex items-center gap-5"><div class="flex items-center gap-2"><a href="https://recombine.ai/" target="_blank" rel="noopener noreferrer" class="inline-flex items-center gap-1"><img src="/recombine.svg" alt="Recombine Logo" width="20" height="20" class="shrink-0"/> <span class="text-lg font-semibold text-rc-gray-100 hover:text-rc-green-200">Recombine</span></a></div> <div class="flex items-center gap-2"><a href="/telescope" class="inline-flex items-center gap-2"><img src="/telescope-icon.svg" alt="Telescope Icon" width="28" height="28" class="shrink-0"/> <span class="text-lg font-semibold text-rc-gray-100 hover:text-rc-green-200">Telescope</span></a></div> `);
139
- {
140
- $$renderer3.push("<!--[!-->");
141
- }
142
- $$renderer3.push(`<!--]--></div> <div class="flex items-center gap-4"><div class="flex-1"><label class="block"><div class="flex gap-2"><div class="relative">`);
152
+ $$renderer3.push(`<div class="flex h-screen">`);
153
+ AgentSidebar($$renderer3, {
154
+ agents: [],
155
+ currentAgent: "",
156
+ onSelect: () => {
157
+ },
158
+ onToggle: () => sidebarCollapsed = !sidebarCollapsed,
159
+ isCollapsed: sidebarCollapsed,
160
+ showAgents: false,
161
+ className: "flex-none"
162
+ });
163
+ $$renderer3.push(`<!----> <div class="flex h-full min-w-0 flex-1 flex-col bg-rc-gray-700 py-2 pr-lg"><nav class="flex h-14 flex-none items-center justify-between bg-rc-gray-700"><div class="flex items-center">`);
164
+ Tabs($$renderer3, {
165
+ value: activeTopTab,
166
+ ariaLabel: "Top tabs",
167
+ onChange: handleTabChange,
168
+ children: ($$renderer4) => {
169
+ Tab($$renderer4, {
170
+ value: "roleplay",
171
+ children: ($$renderer5) => {
172
+ $$renderer5.push(`<!---->Roleplay`);
173
+ }
174
+ });
175
+ $$renderer4.push(`<!----> `);
176
+ Tab($$renderer4, {
177
+ value: "tests",
178
+ children: ($$renderer5) => {
179
+ $$renderer5.push(`<!---->Tests`);
180
+ }
181
+ });
182
+ $$renderer4.push(`<!----> `);
183
+ Tab($$renderer4, {
184
+ value: "traces",
185
+ children: ($$renderer5) => {
186
+ $$renderer5.push(`<!---->Traces`);
187
+ }
188
+ });
189
+ $$renderer4.push(`<!---->`);
190
+ },
191
+ $$slots: { default: true }
192
+ });
193
+ $$renderer3.push(`<!----></div> <div class="flex items-center gap-4"><div class="flex-1"><label class="block"><div class="flex gap-2"><div class="relative">`);
143
194
  Input($$renderer3, {
144
195
  class: "w-80 rounded-r-none border-rc-gray-300 !p-2 !pr-8",
145
196
  placeholder: "Search by phone...",
@@ -223,7 +274,7 @@ function _layout($$renderer, $$props) {
223
274
  },
224
275
  $$slots: { default: true }
225
276
  });
226
- $$renderer3.push(`<!----> <div class="text-sm text-rc-gray-200">Items: ${escape_html(totalLoaded)}</div></div></div></div> <div class="ml-auto mr-3"><span class="text-gray-400">API Mode:</span> <span class="font-semibold text-rc-green-200">${escape_html(useMock ? "Mock (local)" : "Live")}</span></div></div></nav> <main class="flex flex-1 gap-1 overflow-hidden border-thin border-rc-gray-300/40"><div class="flex h-full w-1/3 flex-col border-r-thin border-r-rc-gray-300 bg-rc-gray-800"><div class="flex-none border-b border-rc-gray-300/40 p-4"><h2 class="text-lg font-semibold text-rc-gray-100">Calls</h2></div> <div class="flex-1 overflow-auto p-4">`);
277
+ $$renderer3.push(`<!----> <div class="text-sm text-rc-gray-200">Items: ${escape_html(totalLoaded)}</div></div></div></div> <div class="ml-3"><span class="text-gray-400">API Mode:</span> <span class="font-semibold text-rc-green-200">${escape_html(useMock ? "Mock (local)" : "Live")}</span></div></nav> <main class="flex flex-1 gap-1 overflow-hidden border-thin border-rc-gray-300/40"><div class="flex h-full w-1/3 flex-col border-r-thin border-r-rc-gray-300 bg-rc-gray-800"><div class="flex-none border-b border-rc-gray-300/40 p-4"><h2 class="text-lg font-semibold text-rc-gray-100">Calls</h2></div> <div class="flex-1 overflow-auto p-4">`);
227
278
  if (loading) {
228
279
  $$renderer3.push("<!--[-->");
229
280
  $$renderer3.push(`<p class="py-8 text-center text-rc-gray-200">Loading...</p>`);
@@ -238,7 +289,7 @@ function _layout($$renderer, $$props) {
238
289
  const each_array = ensure_array_like(calls.items);
239
290
  for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
240
291
  let call = each_array[$$index];
241
- $$renderer3.push(`<li${attr_class(`cursor-pointer rounded-lg border border-rc-gray-300 p-4 transition-colors hover:bg-rc-gray-600 ${(store_get($$store_subs ??= {}, "$page", page).params.callId ? call.callId === store_get($$store_subs ??= {}, "$page", page).params.callId : call.callId === selectedCall?.callId) ? "bg-rc-gray-600" : "bg-rc-gray-700"}`)}${attr("aria-selected", store_get($$store_subs ??= {}, "$page", page).params.callId ? call.callId === store_get($$store_subs ??= {}, "$page", page).params.callId : call.callId === selectedCall?.callId)}><div class="flex w-full flex-col gap-2"><div class="flex w-full items-center justify-between"><div class="text-gray-300">${escape_html(fmtDate(call.createdAt))}</div> <div class="flex flex-wrap-reverse items-center justify-end gap-2"><span class="font-semibold text-rc-gray-100">${escape_html(call.phoneNumber)}</span> `);
292
+ $$renderer3.push(`<li${attr_class(`cursor-pointer rounded-lg border border-rc-gray-300 p-4 transition-colors hover:bg-rc-gray-600 ${(page.params.callId ? call.callId === page.params.callId : call.callId === selectedCall?.callId) ? "bg-rc-gray-600" : "bg-rc-gray-700"}`)}${attr("aria-selected", page.params.callId ? call.callId === page.params.callId : call.callId === selectedCall?.callId)}><div class="flex w-full flex-col gap-2"><div class="flex w-full items-center justify-between"><div class="text-gray-300">${escape_html(fmtDate(call.createdAt))}</div> <div class="flex flex-wrap-reverse items-center justify-end gap-2"><span class="font-semibold text-rc-gray-100">${escape_html(call.phoneNumber)}</span> `);
242
293
  CopyButton($$renderer3, {
243
294
  text: call.phoneNumber,
244
295
  label: "Copy",
@@ -263,7 +314,7 @@ function _layout($$renderer, $$props) {
263
314
  }
264
315
  $$renderer3.push(`<!--]--></div></div> <div class="flex h-full w-2/3 flex-col bg-rc-gray-700">`);
265
316
  children($$renderer3);
266
- $$renderer3.push(`<!----></div></main></div>`);
317
+ $$renderer3.push(`<!----></div></main></div></div>`);
267
318
  }
268
319
  do {
269
320
  $$settled = true;
@@ -271,9 +322,8 @@ function _layout($$renderer, $$props) {
271
322
  $$render_inner($$inner_renderer);
272
323
  } while (!$$settled);
273
324
  $$renderer2.subsume($$inner_renderer);
274
- if ($$store_subs) unsubscribe_stores($$store_subs);
275
325
  });
276
326
  }
277
327
 
278
328
  export { _layout as default };
279
- //# sourceMappingURL=_layout.svelte-BoAJDYC1.js.map
329
+ //# sourceMappingURL=_layout.svelte-CvGX8M4U.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_layout.svelte-CvGX8M4U.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/traces/calls/_layout.svelte.js"],"sourcesContent":["import { a as attr_class, b as attr, c as bind_props, h as head, e as ensure_array_like } from \"../../../../chunks/index2.js\";\nimport { p as page, g as goto } from \"../../../../chunks/index4.js\";\nimport { B as Button } from \"../../../../chunks/Button.js\";\nimport { I as Icon } from \"../../../../chunks/Link.js\";\nimport { I as Input } from \"../../../../chunks/Input.js\";\nimport { m as mockGenerator, T as TelescopeClient, C as CollapseExpand } from \"../../../../chunks/client.js\";\nimport { W as fallback, V as escape_html } from \"../../../../chunks/context.js\";\nimport { T as Tabs, a as Tab } from \"../../../../chunks/Tab.js\";\nimport { A as AgentSidebar } from \"../../../../chunks/AgentSidebar.js\";\nfunction CopyButton($$renderer, $$props) {\n let text = fallback($$props[\"text\"], \"\");\n let label = fallback($$props[\"label\"], \"Copy\");\n let copiedLabel = fallback($$props[\"copiedLabel\"], \"Copied!\");\n let className = fallback($$props[\"className\"], \"\");\n $$renderer.push(`<button type=\"button\"${attr_class(`group inline-flex items-center gap-1 rounded border border-rc-gray-300/60 bg-rc-gray-600/60\n px-2 py-1 text-xs text-rc-gray-100\n transition hover:bg-rc-gray-500 hover:text-white ${className}`)} aria-live=\"polite\"${attr(\"title\", label)}>`);\n {\n $$renderer.push(\"<!--[!-->\");\n Icon($$renderer, { name: \"copy\", width: 14, height: 14, class: \"shrink-0\" });\n $$renderer.push(`<!----> <span>${escape_html(label)}</span>`);\n }\n $$renderer.push(`<!--]--></button>`);\n bind_props($$props, { text, label, copiedLabel, className });\n}\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const client = new TelescopeClient(fetch);\n let calls = void 0;\n let selectedCall = null;\n let phoneQuery = \"\";\n let pageSize = 10;\n let pageSizeStr = \"10\";\n let sortDesc = true;\n let cursorStack = [];\n let lastCallId = null;\n let loading = false;\n let totalLoaded = 0;\n let sidebarCollapsed = false;\n let { useMock = false, children } = $$props;\n function fmtDate(ms) {\n return new Date(ms).toLocaleString();\n }\n function fmtDuration(sec) {\n const mm = Math.floor(sec / 60);\n const ss = sec % 60;\n return `${mm}:${String(ss).padStart(2, \"0\")}`;\n }\n async function fetchCallsFromApi(phoneNumber, limit = pageSize, lastCallId2) {\n if (useMock) {\n return mockGenerator.fetchCalls(limit, phoneNumber, lastCallId2 ?? void 0);\n } else {\n return client.getCalls({\n phoneNumber,\n limit: Number(limit),\n lastCallId: lastCallId2 ?? void 0\n });\n }\n }\n async function loadFirstPage() {\n cursorStack = [];\n lastCallId = null;\n await loadPage();\n }\n async function loadPage() {\n loading = true;\n try {\n const resp = await fetchCallsFromApi(void 0, pageSize, lastCallId ?? void 0);\n let filteredItems = Array.isArray(resp.items) ? resp.items.slice() : [];\n if (filteredItems.length) {\n filteredItems.sort((a, b) => {\n const ax = Number(a?.createdAt ?? 0);\n const bx = Number(b?.createdAt ?? 0);\n return sortDesc ? bx - ax : ax - bx;\n });\n }\n const normalize = (s) => s.replace(/\\D/g, \"\");\n if (phoneQuery && filteredItems.length) {\n const q = normalize(String(phoneQuery).trim());\n filteredItems = filteredItems.filter((call) => {\n const pn = normalize(String(call?.phoneNumber ?? \"\"));\n return q === \"\" ? true : pn.includes(q);\n });\n }\n calls = {\n limit: resp.limit,\n items: filteredItems,\n lastCallId: resp.lastCallId\n };\n totalLoaded = filteredItems.length;\n lastCallId = resp.lastCallId ?? null;\n if (calls?.items) {\n calls.items.sort((a, b) => sortDesc ? b.createdAt - a.createdAt : a.createdAt - b.createdAt);\n }\n loading = false;\n } catch (e) {\n loading = false;\n e.message;\n console.error(\"Load page error:\", e);\n }\n }\n async function onNext() {\n if (!calls?.lastCallId) return;\n cursorStack.push(calls.lastCallId);\n lastCallId = calls.lastCallId;\n await loadPage();\n }\n async function onPrev() {\n if (!cursorStack.length) {\n return;\n }\n cursorStack.pop();\n lastCallId = cursorStack.length ? cursorStack[cursorStack.length - 1] : null;\n await loadPage();\n }\n function toggleSort() {\n sortDesc = !sortDesc;\n if (calls?.items) {\n calls.items.sort((a, b) => sortDesc ? b.createdAt - a.createdAt : a.createdAt - b.createdAt);\n }\n }\n function onPageSizeChange(e) {\n const v = e.target.value;\n pageSizeStr = v;\n pageSize = parseInt(pageSizeStr, 10) || 10;\n }\n async function onSearch() {\n await loadFirstPage();\n }\n const activeTopTab = (() => {\n return page.url.pathname.split(\"/\")[1];\n })();\n function handleTabChange({ value }) {\n if (value === activeTopTab) return;\n goto();\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"1andbfi\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Bosun: Telescope</title>`);\n });\n });\n $$renderer3.push(`<div class=\"flex h-screen\">`);\n AgentSidebar($$renderer3, {\n agents: [],\n currentAgent: \"\",\n onSelect: () => {\n },\n onToggle: () => sidebarCollapsed = !sidebarCollapsed,\n isCollapsed: sidebarCollapsed,\n showAgents: false,\n className: \"flex-none\"\n });\n $$renderer3.push(`<!----> <div class=\"flex h-full min-w-0 flex-1 flex-col bg-rc-gray-700 py-2 pr-lg\"><nav class=\"flex h-14 flex-none items-center justify-between bg-rc-gray-700\"><div class=\"flex items-center\">`);\n Tabs($$renderer3, {\n value: activeTopTab,\n ariaLabel: \"Top tabs\",\n onChange: handleTabChange,\n children: ($$renderer4) => {\n Tab($$renderer4, {\n value: \"roleplay\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Roleplay`);\n }\n });\n $$renderer4.push(`<!----> `);\n Tab($$renderer4, {\n value: \"tests\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Tests`);\n }\n });\n $$renderer4.push(`<!----> `);\n Tab($$renderer4, {\n value: \"traces\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Traces`);\n }\n });\n $$renderer4.push(`<!---->`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div> <div class=\"flex items-center gap-4\"><div class=\"flex-1\"><label class=\"block\"><div class=\"flex gap-2\"><div class=\"relative\">`);\n Input($$renderer3, {\n class: \"w-80 rounded-r-none border-rc-gray-300 !p-2 !pr-8\",\n placeholder: \"Search by phone...\",\n onkeydown: (e) => {\n if (e.key === \"Enter\") {\n e.preventDefault();\n e.stopPropagation();\n onSearch();\n }\n },\n get value() {\n return phoneQuery;\n },\n set value($$value) {\n phoneQuery = $$value;\n $$settled = false;\n }\n });\n $$renderer3.push(`<!---->`);\n if (phoneQuery) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<button type=\"button\" aria-label=\"Clear search\" class=\"absolute right-2 top-1/2 flex -translate-y-1/2 items-center justify-center rounded p-1 text-rc-gray-200 hover:bg-rc-gray-600 hover:text-rc-gray-100 focus:outline-none\">`);\n Icon($$renderer3, { name: \"close\", width: 18, height: 18 });\n $$renderer3.push(`<!----></button>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n }\n $$renderer3.push(`<!--]--></div> `);\n Button($$renderer3, {\n onclick: onSearch,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Search`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div></label></div> <div class=\"hidden items-center gap-2\"><div class=\"text-rc-gray-200\">Sort:</div> `);\n Button($$renderer3, {\n onclick: toggleSort,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(sortDesc ? \"Newest first\" : \"Oldest first\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div> <div class=\"hidden items-center gap-2\"><div class=\"text-rc-gray-200\">Page size:</div> `);\n $$renderer3.select(\n {\n class: \"rounded-sm border border-rc-gray-300 bg-rc-gray-700 p-2 pr-8 text-rc-gray-100\",\n value: pageSizeStr,\n onchange: onPageSizeChange\n },\n ($$renderer4) => {\n $$renderer4.option({ value: \"5\" }, ($$renderer5) => {\n $$renderer5.push(`5`);\n });\n $$renderer4.option({ value: \"10\" }, ($$renderer5) => {\n $$renderer5.push(`10`);\n });\n $$renderer4.option({ value: \"20\" }, ($$renderer5) => {\n $$renderer5.push(`20`);\n });\n $$renderer4.option({ value: \"50\" }, ($$renderer5) => {\n $$renderer5.push(`50`);\n });\n }\n );\n $$renderer3.push(`</div> <div class=\"flex items-center gap-3\"><div class=\"flex items-center gap-2\">`);\n Button($$renderer3, {\n onclick: onPrev,\n disabled: cursorStack.length === 0 && !lastCallId,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Prev`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n onclick: onNext,\n disabled: !calls?.items.length,\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Next`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> <div class=\"text-sm text-rc-gray-200\">Items: ${escape_html(totalLoaded)}</div></div></div></div> <div class=\"ml-3\"><span class=\"text-gray-400\">API Mode:</span> <span class=\"font-semibold text-rc-green-200\">${escape_html(useMock ? \"Mock (local)\" : \"Live\")}</span></div></nav> <main class=\"flex flex-1 gap-1 overflow-hidden border-thin border-rc-gray-300/40\"><div class=\"flex h-full w-1/3 flex-col border-r-thin border-r-rc-gray-300 bg-rc-gray-800\"><div class=\"flex-none border-b border-rc-gray-300/40 p-4\"><h2 class=\"text-lg font-semibold text-rc-gray-100\">Calls</h2></div> <div class=\"flex-1 overflow-auto p-4\">`);\n if (loading) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<p class=\"py-8 text-center text-rc-gray-200\">Loading...</p>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n if (!calls?.items?.length) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<p class=\"py-8 text-center text-rc-gray-300\">No calls found</p>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<ul class=\"space-y-3\"><!--[-->`);\n const each_array = ensure_array_like(calls.items);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let call = each_array[$$index];\n $$renderer3.push(`<li${attr_class(`cursor-pointer rounded-lg border border-rc-gray-300 p-4 transition-colors hover:bg-rc-gray-600 ${(page.params.callId ? call.callId === page.params.callId : call.callId === selectedCall?.callId) ? \"bg-rc-gray-600\" : \"bg-rc-gray-700\"}`)}${attr(\"aria-selected\", page.params.callId ? call.callId === page.params.callId : call.callId === selectedCall?.callId)}><div class=\"flex w-full flex-col gap-2\"><div class=\"flex w-full items-center justify-between\"><div class=\"text-gray-300\">${escape_html(fmtDate(call.createdAt))}</div> <div class=\"flex flex-wrap-reverse items-center justify-end gap-2\"><span class=\"font-semibold text-rc-gray-100\">${escape_html(call.phoneNumber)}</span> `);\n CopyButton($$renderer3, {\n text: call.phoneNumber,\n label: \"Copy\",\n copiedLabel: \"Copied!\",\n className: \"ml-1\"\n });\n $$renderer3.push(`<!----></div></div> <div class=\"flex items-center justify-between gap-4\"><div class=\"text-sm\"><span class=\"text-rc-gray-200\">Call Id:</span> <span class=\"text-rc-green-200\">${escape_html(call.callId)}</span></div> <p class=\"text-sm text-gray-400\">Duration: ${escape_html(fmtDuration(call.duration))}</p></div> `);\n if (call?.audioUrl) {\n $$renderer3.push(\"<!--[-->\");\n $$renderer3.push(`<div><audio controls preload=\"none\" class=\"mt-1 w-full rounded-4xl border border-rc-gray-300 color-scheme-dark\"><source${attr(\"src\", call.audioUrl)}/></audio></div>`);\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(`<div class=\"hidden\"></div>`);\n }\n $$renderer3.push(`<!--]--> <div><p class=\"text-sm text-rc-gray-300\">Transcript preview:</p> `);\n CollapseExpand($$renderer3, { value: call.transcript, limit: 150 });\n $$renderer3.push(`<!----></div></div></li>`);\n }\n $$renderer3.push(`<!--]--></ul>`);\n }\n $$renderer3.push(`<!--]-->`);\n }\n $$renderer3.push(`<!--]--></div></div> <div class=\"flex h-full w-2/3 flex-col bg-rc-gray-700\">`);\n children($$renderer3);\n $$renderer3.push(`<!----></div></main></div></div>`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":"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"}