@recombine-ai/bosun 0.10.1 → 0.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/README.md +12 -0
  2. package/bin/bosun.js +3 -44
  3. package/build/client/_app/immutable/assets/0.CH-WU4JN.css +1 -0
  4. package/build/client/_app/immutable/assets/0.CH-WU4JN.css.br +0 -0
  5. package/build/client/_app/immutable/assets/0.CH-WU4JN.css.gz +0 -0
  6. package/build/client/_app/immutable/assets/{10.BX46PfEJ.css → 10.DIVePEYf.css} +1 -1
  7. package/build/client/_app/immutable/assets/10.DIVePEYf.css.br +0 -0
  8. package/build/client/_app/immutable/assets/10.DIVePEYf.css.gz +0 -0
  9. package/build/client/_app/immutable/chunks/{Dp760K13.js → 07xNIa59.js} +2 -2
  10. package/build/client/_app/immutable/chunks/07xNIa59.js.br +0 -0
  11. package/build/client/_app/immutable/chunks/07xNIa59.js.gz +0 -0
  12. package/build/client/_app/immutable/chunks/BDl2QuyN.js +1 -0
  13. package/build/client/_app/immutable/chunks/BDl2QuyN.js.br +0 -0
  14. package/build/client/_app/immutable/chunks/BDl2QuyN.js.gz +0 -0
  15. package/build/client/_app/immutable/chunks/{CqxCTxvJ.js → BI42X8h_.js} +1 -1
  16. package/build/client/_app/immutable/chunks/BI42X8h_.js.br +0 -0
  17. package/build/client/_app/immutable/chunks/BI42X8h_.js.gz +0 -0
  18. package/build/client/_app/immutable/chunks/BJTwdUYr.js +1 -0
  19. package/build/client/_app/immutable/chunks/BJTwdUYr.js.br +0 -0
  20. package/build/client/_app/immutable/chunks/BJTwdUYr.js.gz +0 -0
  21. package/build/client/_app/immutable/chunks/BLu86SbA.js +1 -0
  22. package/build/client/_app/immutable/chunks/BLu86SbA.js.br +0 -0
  23. package/build/client/_app/immutable/chunks/BLu86SbA.js.gz +0 -0
  24. package/build/client/_app/immutable/chunks/BNifnXkO.js +1 -0
  25. package/build/client/_app/immutable/chunks/BNifnXkO.js.br +2 -0
  26. package/build/client/_app/immutable/chunks/BNifnXkO.js.gz +0 -0
  27. package/build/client/_app/immutable/chunks/{BM0jKynj.js → BPNEONy5.js} +1 -1
  28. package/build/client/_app/immutable/chunks/BPNEONy5.js.br +0 -0
  29. package/build/client/_app/immutable/chunks/BPNEONy5.js.gz +0 -0
  30. package/build/client/_app/immutable/chunks/B_K7D6rX.js +2 -0
  31. package/build/client/_app/immutable/chunks/B_K7D6rX.js.br +0 -0
  32. package/build/client/_app/immutable/chunks/B_K7D6rX.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/Bj8jfBTi.js +1 -0
  34. package/build/client/_app/immutable/chunks/Bj8jfBTi.js.br +0 -0
  35. package/build/client/_app/immutable/chunks/Bj8jfBTi.js.gz +0 -0
  36. package/build/client/_app/immutable/chunks/BoPSJr4b.js +1 -0
  37. package/build/client/_app/immutable/chunks/BoPSJr4b.js.br +0 -0
  38. package/build/client/_app/immutable/chunks/BoPSJr4b.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/BsDZe4N6.js +1 -0
  40. package/build/client/_app/immutable/chunks/BsDZe4N6.js.br +0 -0
  41. package/build/client/_app/immutable/chunks/BsDZe4N6.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/{CXo2BVs0.js → Buo-57fF.js} +1 -1
  43. package/build/client/_app/immutable/chunks/Buo-57fF.js.br +0 -0
  44. package/build/client/_app/immutable/chunks/Buo-57fF.js.gz +0 -0
  45. package/build/client/_app/immutable/chunks/{C-whEtKd.js → C39ai1md.js} +1 -1
  46. package/build/client/_app/immutable/chunks/C39ai1md.js.br +0 -0
  47. package/build/client/_app/immutable/chunks/C39ai1md.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/C7he4XPB.js +1 -0
  49. package/build/client/_app/immutable/chunks/C7he4XPB.js.br +0 -0
  50. package/build/client/_app/immutable/chunks/C7he4XPB.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/{DYhTBLDc.js → CAjPRvNs.js} +2 -2
  52. package/build/client/_app/immutable/chunks/CAjPRvNs.js.br +0 -0
  53. package/build/client/_app/immutable/chunks/CAjPRvNs.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/CJYOmGlC.js +1 -0
  55. package/build/client/_app/immutable/chunks/CJYOmGlC.js.br +0 -0
  56. package/build/client/_app/immutable/chunks/CJYOmGlC.js.gz +0 -0
  57. package/build/client/_app/immutable/chunks/{CNLU4B3p.js → CMQRtcOV.js} +1 -1
  58. package/build/client/_app/immutable/chunks/CMQRtcOV.js.br +0 -0
  59. package/build/client/_app/immutable/chunks/CMQRtcOV.js.gz +0 -0
  60. package/build/client/_app/immutable/chunks/{HJHYLHDn.js → CPXdAKdv.js} +1 -1
  61. package/build/client/_app/immutable/chunks/CPXdAKdv.js.br +0 -0
  62. package/build/client/_app/immutable/chunks/CPXdAKdv.js.gz +0 -0
  63. package/build/client/_app/immutable/chunks/CVlsAO8k.js +11 -0
  64. package/build/client/_app/immutable/chunks/CVlsAO8k.js.br +0 -0
  65. package/build/client/_app/immutable/chunks/CVlsAO8k.js.gz +0 -0
  66. package/build/client/_app/immutable/chunks/{DNLcpWO_.js → CX0Ekq8t.js} +1 -1
  67. package/build/client/_app/immutable/chunks/CX0Ekq8t.js.br +0 -0
  68. package/build/client/_app/immutable/chunks/CX0Ekq8t.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/Ca197UDq.js +1 -0
  70. package/build/client/_app/immutable/chunks/Ca197UDq.js.br +0 -0
  71. package/build/client/_app/immutable/chunks/Ca197UDq.js.gz +0 -0
  72. package/build/client/_app/immutable/chunks/CaHl3dME.js +1 -0
  73. package/build/client/_app/immutable/chunks/CaHl3dME.js.br +0 -0
  74. package/build/client/_app/immutable/chunks/CaHl3dME.js.gz +0 -0
  75. package/build/client/_app/immutable/chunks/Cql_e8Of.js +1 -0
  76. package/build/client/_app/immutable/chunks/Cql_e8Of.js.br +2 -0
  77. package/build/client/_app/immutable/chunks/Cql_e8Of.js.gz +0 -0
  78. package/build/client/_app/immutable/chunks/{Dv8m1cTI.js → CxLomzuE.js} +1 -1
  79. package/build/client/_app/immutable/chunks/CxLomzuE.js.br +0 -0
  80. package/build/client/_app/immutable/chunks/{Dv8m1cTI.js.gz → CxLomzuE.js.gz} +0 -0
  81. package/build/client/_app/immutable/chunks/Cyai3SOj.js +1 -0
  82. package/build/client/_app/immutable/chunks/Cyai3SOj.js.br +0 -0
  83. package/build/client/_app/immutable/chunks/Cyai3SOj.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/{DTXUDKH5.js → CyvQWZoe.js} +4 -4
  85. package/build/client/_app/immutable/chunks/CyvQWZoe.js.br +0 -0
  86. package/build/client/_app/immutable/chunks/CyvQWZoe.js.gz +0 -0
  87. package/build/client/_app/immutable/chunks/CzXNWL4m.js +1 -0
  88. package/build/client/_app/immutable/chunks/CzXNWL4m.js.br +1 -0
  89. package/build/client/_app/immutable/chunks/CzXNWL4m.js.gz +0 -0
  90. package/build/client/_app/immutable/chunks/D-B5X35l.js +1 -0
  91. package/build/client/_app/immutable/chunks/D-B5X35l.js.br +0 -0
  92. package/build/client/_app/immutable/chunks/D-B5X35l.js.gz +0 -0
  93. package/build/client/_app/immutable/chunks/DJriQKD9.js +2 -0
  94. package/build/client/_app/immutable/chunks/DJriQKD9.js.br +0 -0
  95. package/build/client/_app/immutable/chunks/DJriQKD9.js.gz +0 -0
  96. package/build/client/_app/immutable/chunks/DXUXXCDA.js +1 -0
  97. package/build/client/_app/immutable/chunks/DXUXXCDA.js.br +0 -0
  98. package/build/client/_app/immutable/chunks/DXUXXCDA.js.gz +0 -0
  99. package/build/client/_app/immutable/chunks/{CZLNSMhF.js → Dslf9OwW.js} +10 -10
  100. package/build/client/_app/immutable/chunks/Dslf9OwW.js.br +0 -0
  101. package/build/client/_app/immutable/chunks/Dslf9OwW.js.gz +0 -0
  102. package/build/client/_app/immutable/chunks/QpaC6J6s.js +1 -0
  103. package/build/client/_app/immutable/chunks/QpaC6J6s.js.br +0 -0
  104. package/build/client/_app/immutable/chunks/QpaC6J6s.js.gz +0 -0
  105. package/build/client/_app/immutable/chunks/{HXxIsSOO.js → iAhzu4tv.js} +1 -1
  106. package/build/client/_app/immutable/chunks/iAhzu4tv.js.br +0 -0
  107. package/build/client/_app/immutable/chunks/iAhzu4tv.js.gz +0 -0
  108. package/build/client/_app/immutable/chunks/i_5fJYKS.js +3 -0
  109. package/build/client/_app/immutable/chunks/i_5fJYKS.js.br +0 -0
  110. package/build/client/_app/immutable/chunks/i_5fJYKS.js.gz +0 -0
  111. package/build/client/_app/immutable/chunks/{CF66fWJN.js → nYD9wsyN.js} +1 -1
  112. package/build/client/_app/immutable/chunks/nYD9wsyN.js.br +0 -0
  113. package/build/client/_app/immutable/chunks/nYD9wsyN.js.gz +0 -0
  114. package/build/client/_app/immutable/chunks/{BIpSIzUr.js → uLGP0py1.js} +1 -1
  115. package/build/client/_app/immutable/chunks/uLGP0py1.js.br +0 -0
  116. package/build/client/_app/immutable/chunks/uLGP0py1.js.gz +0 -0
  117. package/build/client/_app/immutable/entry/app.Cr7CMG-3.js +2 -0
  118. package/build/client/_app/immutable/entry/app.Cr7CMG-3.js.br +0 -0
  119. package/build/client/_app/immutable/entry/app.Cr7CMG-3.js.gz +0 -0
  120. package/build/client/_app/immutable/entry/start.CDNd0Bml.js +1 -0
  121. package/build/client/_app/immutable/entry/start.CDNd0Bml.js.br +2 -0
  122. package/build/client/_app/immutable/entry/start.CDNd0Bml.js.gz +0 -0
  123. package/build/client/_app/immutable/nodes/{0.BCmKHiYo.js → 0.AyqKXI2h.js} +2 -2
  124. package/build/client/_app/immutable/nodes/0.AyqKXI2h.js.br +0 -0
  125. package/build/client/_app/immutable/nodes/0.AyqKXI2h.js.gz +0 -0
  126. package/build/client/_app/immutable/nodes/1.BRmfm-nN.js +1 -0
  127. package/build/client/_app/immutable/nodes/1.BRmfm-nN.js.br +0 -0
  128. package/build/client/_app/immutable/nodes/1.BRmfm-nN.js.gz +0 -0
  129. package/build/client/_app/immutable/nodes/10.D03jjkr4.js +7 -0
  130. package/build/client/_app/immutable/nodes/10.D03jjkr4.js.br +0 -0
  131. package/build/client/_app/immutable/nodes/10.D03jjkr4.js.gz +0 -0
  132. package/build/client/_app/immutable/nodes/{15.Wmhj7gOy.js → 15.BFy4oAT6.js} +1 -1
  133. package/build/client/_app/immutable/nodes/15.BFy4oAT6.js.br +0 -0
  134. package/build/client/_app/immutable/nodes/15.BFy4oAT6.js.gz +0 -0
  135. package/build/client/_app/immutable/nodes/17.BOYU_WTT.js +3 -0
  136. package/build/client/_app/immutable/nodes/17.BOYU_WTT.js.br +0 -0
  137. package/build/client/_app/immutable/nodes/17.BOYU_WTT.js.gz +0 -0
  138. package/build/client/_app/immutable/nodes/18.Ddx80a4f.js +11 -0
  139. package/build/client/_app/immutable/nodes/18.Ddx80a4f.js.br +0 -0
  140. package/build/client/_app/immutable/nodes/18.Ddx80a4f.js.gz +0 -0
  141. package/build/client/_app/immutable/nodes/{2.BdQ4KFOK.js → 2.CZEboQjo.js} +20 -20
  142. package/build/client/_app/immutable/nodes/2.CZEboQjo.js.br +0 -0
  143. package/build/client/_app/immutable/nodes/2.CZEboQjo.js.gz +0 -0
  144. package/build/client/_app/immutable/nodes/3.dAV7FviN.js +1 -0
  145. package/build/client/_app/immutable/nodes/3.dAV7FviN.js.br +0 -0
  146. package/build/client/_app/immutable/nodes/3.dAV7FviN.js.gz +0 -0
  147. package/build/client/_app/immutable/nodes/4.Cm_vMAEA.js +1 -0
  148. package/build/client/_app/immutable/nodes/4.Cm_vMAEA.js.br +0 -0
  149. package/build/client/_app/immutable/nodes/4.Cm_vMAEA.js.gz +0 -0
  150. package/build/client/_app/immutable/nodes/5.DPWuTlaI.js +1 -0
  151. package/build/client/_app/immutable/nodes/5.DPWuTlaI.js.br +0 -0
  152. package/build/client/_app/immutable/nodes/5.DPWuTlaI.js.gz +0 -0
  153. package/build/client/_app/immutable/nodes/6.DY-NLaRW.js +1 -0
  154. package/build/client/_app/immutable/nodes/6.DY-NLaRW.js.br +0 -0
  155. package/build/client/_app/immutable/nodes/6.DY-NLaRW.js.gz +0 -0
  156. package/build/client/_app/immutable/nodes/{8.DWNYX1kH.js → 8.Chuqhf8W.js} +1 -1
  157. package/build/client/_app/immutable/nodes/8.Chuqhf8W.js.br +0 -0
  158. package/build/client/_app/immutable/nodes/8.Chuqhf8W.js.gz +0 -0
  159. package/build/client/_app/immutable/nodes/9.BOEM8f6B.js +2 -0
  160. package/build/client/_app/immutable/nodes/9.BOEM8f6B.js.br +0 -0
  161. package/build/client/_app/immutable/nodes/9.BOEM8f6B.js.gz +0 -0
  162. package/build/client/_app/version.json +1 -1
  163. package/build/client/_app/version.json.br +0 -0
  164. package/build/client/_app/version.json.gz +0 -0
  165. package/build/server/chunks/0-TQkJBtAu.js +9 -0
  166. package/build/server/chunks/0-TQkJBtAu.js.map +1 -0
  167. package/build/server/chunks/1-CKxKlw1l.js +9 -0
  168. package/build/server/chunks/{1-C1mGPV-S.js.map → 1-CKxKlw1l.js.map} +1 -1
  169. package/build/server/chunks/10-Bly5Nk7M.js +9 -0
  170. package/build/server/chunks/10-Bly5Nk7M.js.map +1 -0
  171. package/build/server/chunks/{15-CZBxPMAc.js → 15-BMEAVslz.js} +2 -2
  172. package/build/server/chunks/{15-CZBxPMAc.js.map → 15-BMEAVslz.js.map} +1 -1
  173. package/build/server/chunks/17-C8CYQOYP.js +9 -0
  174. package/build/server/chunks/17-C8CYQOYP.js.map +1 -0
  175. package/build/server/chunks/18-CtXVGBbS.js +9 -0
  176. package/build/server/chunks/18-CtXVGBbS.js.map +1 -0
  177. package/build/server/chunks/2-DvD0dAh0.js +9 -0
  178. package/build/server/chunks/2-DvD0dAh0.js.map +1 -0
  179. package/build/server/chunks/3-DBzpRDK8.js +9 -0
  180. package/build/server/chunks/3-DBzpRDK8.js.map +1 -0
  181. package/build/server/chunks/4-BUNytyC2.js +9 -0
  182. package/build/server/chunks/4-BUNytyC2.js.map +1 -0
  183. package/build/server/chunks/5-DNo8_tFS.js +9 -0
  184. package/build/server/chunks/{5-DblV-OAd.js.map → 5-DNo8_tFS.js.map} +1 -1
  185. package/build/server/chunks/6-DUMdIfbf.js +9 -0
  186. package/build/server/chunks/6-DUMdIfbf.js.map +1 -0
  187. package/build/server/chunks/8-DxTJ555u.js +9 -0
  188. package/build/server/chunks/8-DxTJ555u.js.map +1 -0
  189. package/build/server/chunks/9-B4-5k50d.js +9 -0
  190. package/build/server/chunks/9-B4-5k50d.js.map +1 -0
  191. package/build/server/chunks/{AgentSidebar-XdGj1sqT.js → AgentSidebar-DvIlda-E.js} +5 -6
  192. package/build/server/chunks/AgentSidebar-DvIlda-E.js.map +1 -0
  193. package/build/server/chunks/{Button-Dsy3QY7B.js → Button-BLigKkGG.js} +2 -2
  194. package/build/server/chunks/Button-BLigKkGG.js.map +1 -0
  195. package/build/server/chunks/{ChatStepTrace-1q74tVYO.js → ChatStepTrace-CqqIjRLU.js} +47 -11
  196. package/build/server/chunks/ChatStepTrace-CqqIjRLU.js.map +1 -0
  197. package/build/server/chunks/{Input-CHFlfduw.js → Input-OdQKNdS6.js} +1 -2
  198. package/build/server/chunks/Input-OdQKNdS6.js.map +1 -0
  199. package/build/server/chunks/MockGenerator-GEpXTgX0.js +117 -0
  200. package/build/server/chunks/MockGenerator-GEpXTgX0.js.map +1 -0
  201. package/build/server/chunks/Modal-DtVsRmmO.js.map +1 -1
  202. package/build/server/chunks/{_layout.svelte-DJ4kDgDL.js → _layout.svelte-B-CkD4a0.js} +14 -8
  203. package/build/server/chunks/_layout.svelte-B-CkD4a0.js.map +1 -0
  204. package/build/server/chunks/{_layout.svelte-B2lwUacy.js → _layout.svelte-BBFCF-xw.js} +8 -4
  205. package/build/server/chunks/_layout.svelte-BBFCF-xw.js.map +1 -0
  206. package/build/server/chunks/{_layout.svelte-C7JgNCIu.js → _layout.svelte-cPhmW5bZ.js} +3 -1
  207. package/build/server/chunks/_layout.svelte-cPhmW5bZ.js.map +1 -0
  208. package/build/server/chunks/{_page.svelte-FufhMKh4.js → _page.svelte-0J2xaeyC.js} +71 -16
  209. package/build/server/chunks/_page.svelte-0J2xaeyC.js.map +1 -0
  210. package/build/server/chunks/{_page.svelte-BpRksNEG.js → _page.svelte-BgoX8Y6N.js} +2 -2
  211. package/build/server/chunks/{_page.svelte-BpRksNEG.js.map → _page.svelte-BgoX8Y6N.js.map} +1 -1
  212. package/build/server/chunks/{_page.svelte-GaxktsuT.js → _page.svelte-C_S_qUgZ.js} +480 -72
  213. package/build/server/chunks/_page.svelte-C_S_qUgZ.js.map +1 -0
  214. package/build/server/chunks/{_page.svelte-DDpBtd3X.js → _page.svelte-CqGOvPRO.js} +3 -4
  215. package/build/server/chunks/_page.svelte-CqGOvPRO.js.map +1 -0
  216. package/build/server/chunks/{_page.svelte-CA3-vgl2.js → _page.svelte-Cxh9_vUl.js} +151 -100
  217. package/build/server/chunks/_page.svelte-Cxh9_vUl.js.map +1 -0
  218. package/build/server/chunks/_page.svelte-zOI_s_3J.js +2151 -0
  219. package/build/server/chunks/_page.svelte-zOI_s_3J.js.map +1 -0
  220. package/build/server/chunks/agents-context-rV2narXG.js.map +1 -1
  221. package/build/server/chunks/conversation-view-memory-BZguFlTt.js +20 -0
  222. package/build/server/chunks/conversation-view-memory-BZguFlTt.js.map +1 -0
  223. package/build/server/chunks/edit-workspace-context-B1nYQ5hD.js.map +1 -1
  224. package/build/server/chunks/index-CSpGrMM2.js.map +1 -1
  225. package/build/server/chunks/{client-DzvEkq51.js → source-selection-CcN1cgXc.js} +122 -117
  226. package/build/server/chunks/source-selection-CcN1cgXc.js.map +1 -0
  227. package/build/server/index.js +1 -1
  228. package/build/server/index.js.map +1 -1
  229. package/build/server/manifest.js +14 -14
  230. package/build/server/manifest.js.map +1 -1
  231. package/package.json +4 -4
  232. package/src/backend/lib/get-agent-factories.spec.ts +59 -0
  233. package/src/backend/lib/get-agent-factories.ts +31 -1
  234. package/src/backend/lib/voice-agent-lifecycle.test.ts +31 -0
  235. package/src/backend/lib/voice-agent-lifecycle.ts +16 -0
  236. package/src/backend/roleplay/agents.ts +189 -69
  237. package/src/backend/roleplay/message-dispatcher.ts +0 -7
  238. package/src/backend/roleplay/router.ts +14 -17
  239. package/src/backend/roleplay/trace-serialization.spec.ts +35 -0
  240. package/src/backend/roleplay/trace-serialization.ts +57 -0
  241. package/src/backend/roleplay/variants.ts +33 -49
  242. package/src/backend/tests/academy.ts +202 -100
  243. package/src/backend/tests/analyze.ts +0 -3
  244. package/src/backend/tests/data.spec.ts +139 -0
  245. package/src/backend/tests/data.ts +452 -68
  246. package/src/backend/tests/emulate-agents.ts +60 -44
  247. package/src/backend/tests/openai-prompt-cache.ts +68 -0
  248. package/src/backend/tests/promptfoo-runtime.spec.ts +41 -0
  249. package/src/backend/tests/promptfoo-runtime.ts +27 -0
  250. package/src/backend/tests/report-files.spec.ts +42 -0
  251. package/src/backend/tests/report-files.ts +101 -0
  252. package/src/backend/tests/router.ts +28 -2
  253. package/src/backend/tests/suite.ts +13 -4
  254. package/build/client/_app/immutable/assets/0.B4t3dozz.css +0 -1
  255. package/build/client/_app/immutable/assets/0.B4t3dozz.css.br +0 -0
  256. package/build/client/_app/immutable/assets/0.B4t3dozz.css.gz +0 -0
  257. package/build/client/_app/immutable/assets/10.BX46PfEJ.css.br +0 -0
  258. package/build/client/_app/immutable/assets/10.BX46PfEJ.css.gz +0 -0
  259. package/build/client/_app/immutable/chunks/7E8m6dwk.js +0 -1
  260. package/build/client/_app/immutable/chunks/7E8m6dwk.js.br +0 -0
  261. package/build/client/_app/immutable/chunks/7E8m6dwk.js.gz +0 -0
  262. package/build/client/_app/immutable/chunks/7qRqthsa.js +0 -1
  263. package/build/client/_app/immutable/chunks/7qRqthsa.js.br +0 -2
  264. package/build/client/_app/immutable/chunks/7qRqthsa.js.gz +0 -0
  265. package/build/client/_app/immutable/chunks/Ajb1KYIn.js +0 -1
  266. package/build/client/_app/immutable/chunks/Ajb1KYIn.js.br +0 -0
  267. package/build/client/_app/immutable/chunks/Ajb1KYIn.js.gz +0 -0
  268. package/build/client/_app/immutable/chunks/B0iEglSe.js +0 -1
  269. package/build/client/_app/immutable/chunks/B0iEglSe.js.br +0 -0
  270. package/build/client/_app/immutable/chunks/B0iEglSe.js.gz +0 -0
  271. package/build/client/_app/immutable/chunks/BIpSIzUr.js.br +0 -0
  272. package/build/client/_app/immutable/chunks/BIpSIzUr.js.gz +0 -0
  273. package/build/client/_app/immutable/chunks/BM0jKynj.js.br +0 -0
  274. package/build/client/_app/immutable/chunks/BM0jKynj.js.gz +0 -0
  275. package/build/client/_app/immutable/chunks/BTvePR6r.js +0 -1
  276. package/build/client/_app/immutable/chunks/BTvePR6r.js.br +0 -2
  277. package/build/client/_app/immutable/chunks/BTvePR6r.js.gz +0 -0
  278. package/build/client/_app/immutable/chunks/Bcu62lFq.js +0 -1
  279. package/build/client/_app/immutable/chunks/Bcu62lFq.js.br +0 -0
  280. package/build/client/_app/immutable/chunks/Bcu62lFq.js.gz +0 -0
  281. package/build/client/_app/immutable/chunks/BwtfALfL.js +0 -11
  282. package/build/client/_app/immutable/chunks/BwtfALfL.js.br +0 -0
  283. package/build/client/_app/immutable/chunks/BwtfALfL.js.gz +0 -0
  284. package/build/client/_app/immutable/chunks/BxsDwlgp.js +0 -4
  285. package/build/client/_app/immutable/chunks/BxsDwlgp.js.br +0 -0
  286. package/build/client/_app/immutable/chunks/BxsDwlgp.js.gz +0 -0
  287. package/build/client/_app/immutable/chunks/C-whEtKd.js.br +0 -2
  288. package/build/client/_app/immutable/chunks/C-whEtKd.js.gz +0 -0
  289. package/build/client/_app/immutable/chunks/C1WqE8CP.js +0 -1
  290. package/build/client/_app/immutable/chunks/C1WqE8CP.js.br +0 -2
  291. package/build/client/_app/immutable/chunks/C1WqE8CP.js.gz +0 -0
  292. package/build/client/_app/immutable/chunks/C4D-JXnS.js +0 -1
  293. package/build/client/_app/immutable/chunks/C4D-JXnS.js.br +0 -0
  294. package/build/client/_app/immutable/chunks/C4D-JXnS.js.gz +0 -0
  295. package/build/client/_app/immutable/chunks/C4SnSfql.js +0 -1
  296. package/build/client/_app/immutable/chunks/C4SnSfql.js.br +0 -0
  297. package/build/client/_app/immutable/chunks/C4SnSfql.js.gz +0 -0
  298. package/build/client/_app/immutable/chunks/CF66fWJN.js.br +0 -0
  299. package/build/client/_app/immutable/chunks/CF66fWJN.js.gz +0 -0
  300. package/build/client/_app/immutable/chunks/CNLU4B3p.js.br +0 -0
  301. package/build/client/_app/immutable/chunks/CNLU4B3p.js.gz +0 -0
  302. package/build/client/_app/immutable/chunks/CXo2BVs0.js.br +0 -0
  303. package/build/client/_app/immutable/chunks/CXo2BVs0.js.gz +0 -0
  304. package/build/client/_app/immutable/chunks/CZLNSMhF.js.br +0 -0
  305. package/build/client/_app/immutable/chunks/CZLNSMhF.js.gz +0 -0
  306. package/build/client/_app/immutable/chunks/CqO5tR2_.js +0 -1
  307. package/build/client/_app/immutable/chunks/CqO5tR2_.js.br +0 -0
  308. package/build/client/_app/immutable/chunks/CqO5tR2_.js.gz +0 -0
  309. package/build/client/_app/immutable/chunks/CqxCTxvJ.js.br +0 -0
  310. package/build/client/_app/immutable/chunks/CqxCTxvJ.js.gz +0 -0
  311. package/build/client/_app/immutable/chunks/D-wf2QNc.js +0 -1
  312. package/build/client/_app/immutable/chunks/D-wf2QNc.js.br +0 -0
  313. package/build/client/_app/immutable/chunks/D-wf2QNc.js.gz +0 -0
  314. package/build/client/_app/immutable/chunks/D4obUD_s.js +0 -1
  315. package/build/client/_app/immutable/chunks/D4obUD_s.js.br +0 -0
  316. package/build/client/_app/immutable/chunks/D4obUD_s.js.gz +0 -0
  317. package/build/client/_app/immutable/chunks/D8e7SQh9.js +0 -1
  318. package/build/client/_app/immutable/chunks/D8e7SQh9.js.br +0 -0
  319. package/build/client/_app/immutable/chunks/D8e7SQh9.js.gz +0 -0
  320. package/build/client/_app/immutable/chunks/DNLcpWO_.js.br +0 -0
  321. package/build/client/_app/immutable/chunks/DNLcpWO_.js.gz +0 -0
  322. package/build/client/_app/immutable/chunks/DTXUDKH5.js.br +0 -0
  323. package/build/client/_app/immutable/chunks/DTXUDKH5.js.gz +0 -0
  324. package/build/client/_app/immutable/chunks/DYhTBLDc.js.br +0 -0
  325. package/build/client/_app/immutable/chunks/DYhTBLDc.js.gz +0 -0
  326. package/build/client/_app/immutable/chunks/DhBm2Vx9.js +0 -1
  327. package/build/client/_app/immutable/chunks/DhBm2Vx9.js.br +0 -0
  328. package/build/client/_app/immutable/chunks/DhBm2Vx9.js.gz +0 -0
  329. package/build/client/_app/immutable/chunks/Dp760K13.js.br +0 -0
  330. package/build/client/_app/immutable/chunks/Dp760K13.js.gz +0 -0
  331. package/build/client/_app/immutable/chunks/Dv0gjm25.js +0 -1
  332. package/build/client/_app/immutable/chunks/Dv0gjm25.js.br +0 -0
  333. package/build/client/_app/immutable/chunks/Dv0gjm25.js.gz +0 -0
  334. package/build/client/_app/immutable/chunks/Dv8m1cTI.js.br +0 -0
  335. package/build/client/_app/immutable/chunks/HJHYLHDn.js.br +0 -0
  336. package/build/client/_app/immutable/chunks/HJHYLHDn.js.gz +0 -0
  337. package/build/client/_app/immutable/chunks/HXxIsSOO.js.br +0 -0
  338. package/build/client/_app/immutable/chunks/HXxIsSOO.js.gz +0 -0
  339. package/build/client/_app/immutable/chunks/_yZg6Sf-.js +0 -2
  340. package/build/client/_app/immutable/chunks/_yZg6Sf-.js.br +0 -0
  341. package/build/client/_app/immutable/chunks/_yZg6Sf-.js.gz +0 -0
  342. package/build/client/_app/immutable/chunks/xebNt8-Z.js +0 -1
  343. package/build/client/_app/immutable/chunks/xebNt8-Z.js.br +0 -0
  344. package/build/client/_app/immutable/chunks/xebNt8-Z.js.gz +0 -0
  345. package/build/client/_app/immutable/entry/app.C4wJtvtH.js +0 -2
  346. package/build/client/_app/immutable/entry/app.C4wJtvtH.js.br +0 -0
  347. package/build/client/_app/immutable/entry/app.C4wJtvtH.js.gz +0 -0
  348. package/build/client/_app/immutable/entry/start.BId2vqhS.js +0 -1
  349. package/build/client/_app/immutable/entry/start.BId2vqhS.js.br +0 -2
  350. package/build/client/_app/immutable/entry/start.BId2vqhS.js.gz +0 -0
  351. package/build/client/_app/immutable/nodes/0.BCmKHiYo.js.br +0 -0
  352. package/build/client/_app/immutable/nodes/0.BCmKHiYo.js.gz +0 -0
  353. package/build/client/_app/immutable/nodes/1.8skEZBEw.js +0 -1
  354. package/build/client/_app/immutable/nodes/1.8skEZBEw.js.br +0 -0
  355. package/build/client/_app/immutable/nodes/1.8skEZBEw.js.gz +0 -0
  356. package/build/client/_app/immutable/nodes/10.YgmBfSWN.js +0 -5
  357. package/build/client/_app/immutable/nodes/10.YgmBfSWN.js.br +0 -0
  358. package/build/client/_app/immutable/nodes/10.YgmBfSWN.js.gz +0 -0
  359. package/build/client/_app/immutable/nodes/15.Wmhj7gOy.js.br +0 -0
  360. package/build/client/_app/immutable/nodes/15.Wmhj7gOy.js.gz +0 -0
  361. package/build/client/_app/immutable/nodes/17.D8ydco6g.js +0 -3
  362. package/build/client/_app/immutable/nodes/17.D8ydco6g.js.br +0 -0
  363. package/build/client/_app/immutable/nodes/17.D8ydco6g.js.gz +0 -0
  364. package/build/client/_app/immutable/nodes/18.C67CqGm5.js +0 -11
  365. package/build/client/_app/immutable/nodes/18.C67CqGm5.js.br +0 -0
  366. package/build/client/_app/immutable/nodes/18.C67CqGm5.js.gz +0 -0
  367. package/build/client/_app/immutable/nodes/2.BdQ4KFOK.js.br +0 -0
  368. package/build/client/_app/immutable/nodes/2.BdQ4KFOK.js.gz +0 -0
  369. package/build/client/_app/immutable/nodes/3.nCmkz6kS.js +0 -1
  370. package/build/client/_app/immutable/nodes/3.nCmkz6kS.js.br +0 -0
  371. package/build/client/_app/immutable/nodes/3.nCmkz6kS.js.gz +0 -0
  372. package/build/client/_app/immutable/nodes/4.DAwO0_Am.js +0 -1
  373. package/build/client/_app/immutable/nodes/4.DAwO0_Am.js.br +0 -0
  374. package/build/client/_app/immutable/nodes/4.DAwO0_Am.js.gz +0 -0
  375. package/build/client/_app/immutable/nodes/5.C_SvvZjG.js +0 -1
  376. package/build/client/_app/immutable/nodes/5.C_SvvZjG.js.br +0 -0
  377. package/build/client/_app/immutable/nodes/5.C_SvvZjG.js.gz +0 -0
  378. package/build/client/_app/immutable/nodes/6.DfOe9lph.js +0 -1
  379. package/build/client/_app/immutable/nodes/6.DfOe9lph.js.br +0 -0
  380. package/build/client/_app/immutable/nodes/6.DfOe9lph.js.gz +0 -0
  381. package/build/client/_app/immutable/nodes/8.DWNYX1kH.js.br +0 -0
  382. package/build/client/_app/immutable/nodes/8.DWNYX1kH.js.gz +0 -0
  383. package/build/client/_app/immutable/nodes/9.D7SG4T7Z.js +0 -2
  384. package/build/client/_app/immutable/nodes/9.D7SG4T7Z.js.br +0 -0
  385. package/build/client/_app/immutable/nodes/9.D7SG4T7Z.js.gz +0 -0
  386. package/build/server/chunks/0-D5BNSI7t.js +0 -9
  387. package/build/server/chunks/0-D5BNSI7t.js.map +0 -1
  388. package/build/server/chunks/1-C1mGPV-S.js +0 -9
  389. package/build/server/chunks/10-BUo1e_HG.js +0 -9
  390. package/build/server/chunks/10-BUo1e_HG.js.map +0 -1
  391. package/build/server/chunks/17-iNFqG1My.js +0 -9
  392. package/build/server/chunks/17-iNFqG1My.js.map +0 -1
  393. package/build/server/chunks/18-u8T5X6fM.js +0 -9
  394. package/build/server/chunks/18-u8T5X6fM.js.map +0 -1
  395. package/build/server/chunks/2-tLlSByHA.js +0 -9
  396. package/build/server/chunks/2-tLlSByHA.js.map +0 -1
  397. package/build/server/chunks/3-D1KY9yVZ.js +0 -9
  398. package/build/server/chunks/3-D1KY9yVZ.js.map +0 -1
  399. package/build/server/chunks/4-7zu0cJha.js +0 -9
  400. package/build/server/chunks/4-7zu0cJha.js.map +0 -1
  401. package/build/server/chunks/5-DblV-OAd.js +0 -9
  402. package/build/server/chunks/6-BDC5budM.js +0 -9
  403. package/build/server/chunks/6-BDC5budM.js.map +0 -1
  404. package/build/server/chunks/8-DhmD-opq.js +0 -9
  405. package/build/server/chunks/8-DhmD-opq.js.map +0 -1
  406. package/build/server/chunks/9-BGj28GI6.js +0 -9
  407. package/build/server/chunks/9-BGj28GI6.js.map +0 -1
  408. package/build/server/chunks/AgentSidebar-XdGj1sqT.js.map +0 -1
  409. package/build/server/chunks/Button-Dsy3QY7B.js.map +0 -1
  410. package/build/server/chunks/ChatStepTrace-1q74tVYO.js.map +0 -1
  411. package/build/server/chunks/Input-CHFlfduw.js.map +0 -1
  412. package/build/server/chunks/_layout.svelte-B2lwUacy.js.map +0 -1
  413. package/build/server/chunks/_layout.svelte-C7JgNCIu.js.map +0 -1
  414. package/build/server/chunks/_layout.svelte-DJ4kDgDL.js.map +0 -1
  415. package/build/server/chunks/_page.svelte-Bl1WcAXy.js +0 -671
  416. package/build/server/chunks/_page.svelte-Bl1WcAXy.js.map +0 -1
  417. package/build/server/chunks/_page.svelte-CA3-vgl2.js.map +0 -1
  418. package/build/server/chunks/_page.svelte-DDpBtd3X.js.map +0 -1
  419. package/build/server/chunks/_page.svelte-FufhMKh4.js.map +0 -1
  420. package/build/server/chunks/_page.svelte-GaxktsuT.js.map +0 -1
  421. package/build/server/chunks/client-DzvEkq51.js.map +0 -1
  422. package/build/server/chunks/source-selection-eA--VEKo.js +0 -124
  423. package/build/server/chunks/source-selection-eA--VEKo.js.map +0 -1
@@ -1,671 +0,0 @@
1
- import { p as head, j as escape_html, l as derived } from './index-CSpGrMM2.js';
2
- import { B as Button } from './Button-Dsy3QY7B.js';
3
- import { M as Modal } from './Modal-DtVsRmmO.js';
4
- import { o as onDestroy } from './index-server-DsYEXu5n.js';
5
- import { C as ContextEditor } from './ContextEditor-D5B2mO8Z.js';
6
- import { t as trpc } from './trpc-client-D8L6vWf4.js';
7
- import { g as getEditWorkspaceContext } from './edit-workspace-context-B1nYQ5hD.js';
8
- import './events-BQ65tUJo.js';
9
- import 'js-yaml';
10
- import './shared-server-DaWdgxVh.js';
11
- import '@trpc/client';
12
-
13
- const stringToIcon = (value, validate, allowSimpleName, provider = "") => {
14
- const colonSeparated = value.split(":");
15
- if (value.slice(0, 1) === "@") {
16
- if (colonSeparated.length < 2 || colonSeparated.length > 3) return null;
17
- provider = colonSeparated.shift().slice(1);
18
- }
19
- if (colonSeparated.length > 3 || !colonSeparated.length) return null;
20
- if (colonSeparated.length > 1) {
21
- const name$1 = colonSeparated.pop();
22
- const prefix = colonSeparated.pop();
23
- const result = {
24
- provider: colonSeparated.length > 0 ? colonSeparated[0] : provider,
25
- prefix,
26
- name: name$1
27
- };
28
- return !validateIconName(result) ? null : result;
29
- }
30
- const name = colonSeparated[0];
31
- const dashSeparated = name.split("-");
32
- if (dashSeparated.length > 1) {
33
- const result = {
34
- provider,
35
- prefix: dashSeparated.shift(),
36
- name: dashSeparated.join("-")
37
- };
38
- return !validateIconName(result) ? null : result;
39
- }
40
- if (allowSimpleName && provider === "") {
41
- const result = {
42
- provider,
43
- prefix: "",
44
- name
45
- };
46
- return !validateIconName(result, allowSimpleName) ? null : result;
47
- }
48
- return null;
49
- };
50
- const validateIconName = (icon, allowSimpleName) => {
51
- if (!icon) return false;
52
- return !!((allowSimpleName && icon.prefix === "" || !!icon.prefix) && !!icon.name);
53
- };
54
- function getIconsTree(data, names) {
55
- const icons = data.icons;
56
- const aliases = data.aliases || /* @__PURE__ */ Object.create(null);
57
- const resolved = /* @__PURE__ */ Object.create(null);
58
- function resolve(name) {
59
- if (icons[name]) return resolved[name] = [];
60
- if (!(name in resolved)) {
61
- resolved[name] = null;
62
- const parent = aliases[name] && aliases[name].parent;
63
- const value = parent && resolve(parent);
64
- if (value) resolved[name] = [parent].concat(value);
65
- }
66
- return resolved[name];
67
- }
68
- Object.keys(icons).concat(Object.keys(aliases)).forEach(resolve);
69
- return resolved;
70
- }
71
- const defaultIconDimensions = Object.freeze({
72
- left: 0,
73
- top: 0,
74
- width: 16,
75
- height: 16
76
- });
77
- const defaultIconTransformations = Object.freeze({
78
- rotate: 0,
79
- vFlip: false,
80
- hFlip: false
81
- });
82
- const defaultIconProps = Object.freeze({
83
- ...defaultIconDimensions,
84
- ...defaultIconTransformations
85
- });
86
- const defaultExtendedIconProps = Object.freeze({
87
- ...defaultIconProps,
88
- body: "",
89
- hidden: false
90
- });
91
- function mergeIconTransformations(obj1, obj2) {
92
- const result = {};
93
- if (!obj1.hFlip !== !obj2.hFlip) result.hFlip = true;
94
- if (!obj1.vFlip !== !obj2.vFlip) result.vFlip = true;
95
- const rotate = ((obj1.rotate || 0) + (obj2.rotate || 0)) % 4;
96
- if (rotate) result.rotate = rotate;
97
- return result;
98
- }
99
- function mergeIconData(parent, child) {
100
- const result = mergeIconTransformations(parent, child);
101
- for (const key in defaultExtendedIconProps) if (key in defaultIconTransformations) {
102
- if (key in parent && !(key in result)) result[key] = defaultIconTransformations[key];
103
- } else if (key in child) result[key] = child[key];
104
- else if (key in parent) result[key] = parent[key];
105
- return result;
106
- }
107
- function internalGetIconData(data, name, tree) {
108
- const icons = data.icons;
109
- const aliases = data.aliases || /* @__PURE__ */ Object.create(null);
110
- let currentProps = {};
111
- function parse(name$1) {
112
- currentProps = mergeIconData(icons[name$1] || aliases[name$1], currentProps);
113
- }
114
- parse(name);
115
- tree.forEach(parse);
116
- return mergeIconData(data, currentProps);
117
- }
118
- function parseIconSet(data, callback) {
119
- const names = [];
120
- if (typeof data !== "object" || typeof data.icons !== "object") return names;
121
- if (data.not_found instanceof Array) data.not_found.forEach((name) => {
122
- callback(name, null);
123
- names.push(name);
124
- });
125
- const tree = getIconsTree(data);
126
- for (const name in tree) {
127
- const item = tree[name];
128
- if (item) {
129
- callback(name, internalGetIconData(data, name, item));
130
- names.push(name);
131
- }
132
- }
133
- return names;
134
- }
135
- const optionalPropertyDefaults = {
136
- provider: "",
137
- aliases: {},
138
- not_found: {},
139
- ...defaultIconDimensions
140
- };
141
- function checkOptionalProps(item, defaults) {
142
- for (const prop in defaults) if (prop in item && typeof item[prop] !== typeof defaults[prop]) return false;
143
- return true;
144
- }
145
- function quicklyValidateIconSet(obj) {
146
- if (typeof obj !== "object" || obj === null) return null;
147
- const data = obj;
148
- if (typeof data.prefix !== "string" || !obj.icons || typeof obj.icons !== "object") return null;
149
- if (!checkOptionalProps(obj, optionalPropertyDefaults)) return null;
150
- const icons = data.icons;
151
- for (const name in icons) {
152
- const icon = icons[name];
153
- if (!name || typeof icon.body !== "string" || !checkOptionalProps(icon, defaultExtendedIconProps)) return null;
154
- }
155
- const aliases = data.aliases || /* @__PURE__ */ Object.create(null);
156
- for (const name in aliases) {
157
- const icon = aliases[name];
158
- const parent = icon.parent;
159
- if (!name || typeof parent !== "string" || !icons[parent] && !aliases[parent] || !checkOptionalProps(icon, defaultExtendedIconProps)) return null;
160
- }
161
- return data;
162
- }
163
- const dataStorage = /* @__PURE__ */ Object.create(null);
164
- function newStorage(provider, prefix) {
165
- return {
166
- provider,
167
- prefix,
168
- icons: /* @__PURE__ */ Object.create(null),
169
- missing: /* @__PURE__ */ new Set()
170
- };
171
- }
172
- function getStorage(provider, prefix) {
173
- const providerStorage = dataStorage[provider] || (dataStorage[provider] = /* @__PURE__ */ Object.create(null));
174
- return providerStorage[prefix] || (providerStorage[prefix] = newStorage(provider, prefix));
175
- }
176
- function addIconSet(storage2, data) {
177
- if (!quicklyValidateIconSet(data)) return [];
178
- return parseIconSet(data, (name, icon) => {
179
- if (icon) storage2.icons[name] = icon;
180
- else storage2.missing.add(name);
181
- });
182
- }
183
- function addIconToStorage(storage2, name, icon) {
184
- try {
185
- if (typeof icon.body === "string") {
186
- storage2.icons[name] = { ...icon };
187
- return true;
188
- }
189
- } catch (err) {
190
- }
191
- return false;
192
- }
193
- let simpleNames = false;
194
- function allowSimpleNames(allow) {
195
- simpleNames = allow;
196
- return simpleNames;
197
- }
198
- function addIcon(name, data) {
199
- const icon = stringToIcon(name, true, simpleNames);
200
- if (!icon) return false;
201
- const storage2 = getStorage(icon.provider, icon.prefix);
202
- if (data) return addIconToStorage(storage2, icon.name, data);
203
- else {
204
- storage2.missing.add(icon.name);
205
- return true;
206
- }
207
- }
208
- function addCollection(data, provider) {
209
- if (typeof data !== "object") return false;
210
- if (typeof provider !== "string") provider = data.provider || "";
211
- if (simpleNames && !provider && !data.prefix) {
212
- let added = false;
213
- if (quicklyValidateIconSet(data)) {
214
- data.prefix = "";
215
- parseIconSet(data, (name, icon) => {
216
- if (addIcon(name, icon)) added = true;
217
- });
218
- }
219
- return added;
220
- }
221
- const prefix = data.prefix;
222
- if (!validateIconName({
223
- prefix,
224
- name: "a"
225
- })) return false;
226
- const storage2 = getStorage(provider, prefix);
227
- return !!addIconSet(storage2, data);
228
- }
229
- const defaultIconSizeCustomisations = Object.freeze({
230
- width: null,
231
- height: null
232
- });
233
- const defaultIconCustomisations = Object.freeze({
234
- ...defaultIconSizeCustomisations,
235
- ...defaultIconTransformations
236
- });
237
- "IconifyId" + Date.now().toString(16) + (Math.random() * 16777216 | 0).toString(16);
238
- const storage = /* @__PURE__ */ Object.create(null);
239
- function setAPIModule(provider, item) {
240
- storage[provider] = item;
241
- }
242
- function createAPIConfig(source) {
243
- let resources;
244
- if (typeof source.resources === "string") resources = [source.resources];
245
- else {
246
- resources = source.resources;
247
- if (!(resources instanceof Array) || !resources.length) return null;
248
- }
249
- const result = {
250
- resources,
251
- path: source.path || "/",
252
- maxURL: source.maxURL || 500,
253
- rotate: source.rotate || 750,
254
- timeout: source.timeout || 5e3,
255
- random: source.random === true,
256
- index: source.index || 0,
257
- dataAfterTimeout: source.dataAfterTimeout !== false
258
- };
259
- return result;
260
- }
261
- const configStorage = /* @__PURE__ */ Object.create(null);
262
- const fallBackAPISources = ["https://api.simplesvg.com", "https://api.unisvg.com"];
263
- const fallBackAPI = [];
264
- while (fallBackAPISources.length > 0) if (fallBackAPISources.length === 1) fallBackAPI.push(fallBackAPISources.shift());
265
- else if (Math.random() > 0.5) fallBackAPI.push(fallBackAPISources.shift());
266
- else fallBackAPI.push(fallBackAPISources.pop());
267
- configStorage[""] = createAPIConfig({ resources: ["https://api.iconify.design"].concat(fallBackAPI) });
268
- function addAPIProvider(provider, customConfig) {
269
- const config = createAPIConfig(customConfig);
270
- if (config === null) return false;
271
- configStorage[provider] = config;
272
- return true;
273
- }
274
- function getAPIConfig(provider) {
275
- return configStorage[provider];
276
- }
277
- const detectFetch = () => {
278
- let callback;
279
- try {
280
- callback = fetch;
281
- if (typeof callback === "function") return callback;
282
- } catch (err) {
283
- }
284
- };
285
- let fetchModule = detectFetch();
286
- function calculateMaxLength(provider, prefix) {
287
- const config = getAPIConfig(provider);
288
- if (!config) return 0;
289
- let result;
290
- if (!config.maxURL) result = 0;
291
- else {
292
- let maxHostLength = 0;
293
- config.resources.forEach((item) => {
294
- const host = item;
295
- maxHostLength = Math.max(maxHostLength, host.length);
296
- });
297
- const url = prefix + ".json?icons=";
298
- result = config.maxURL - maxHostLength - config.path.length - url.length;
299
- }
300
- return result;
301
- }
302
- function shouldAbort(status) {
303
- return status === 404;
304
- }
305
- const prepare = (provider, prefix, icons) => {
306
- const results = [];
307
- const maxLength = calculateMaxLength(provider, prefix);
308
- const type = "icons";
309
- let item = {
310
- type,
311
- provider,
312
- prefix,
313
- icons: []
314
- };
315
- let length = 0;
316
- icons.forEach((name, index) => {
317
- length += name.length + 1;
318
- if (length >= maxLength && index > 0) {
319
- results.push(item);
320
- item = {
321
- type,
322
- provider,
323
- prefix,
324
- icons: []
325
- };
326
- length = name.length;
327
- }
328
- item.icons.push(name);
329
- });
330
- results.push(item);
331
- return results;
332
- };
333
- function getPath(provider) {
334
- if (typeof provider === "string") {
335
- const config = getAPIConfig(provider);
336
- if (config) return config.path;
337
- }
338
- return "/";
339
- }
340
- const send = (host, params, callback) => {
341
- if (!fetchModule) {
342
- callback("abort", 424);
343
- return;
344
- }
345
- let path = getPath(params.provider);
346
- switch (params.type) {
347
- case "icons": {
348
- const prefix = params.prefix;
349
- const icons = params.icons;
350
- const iconsList = icons.join(",");
351
- const urlParams = new URLSearchParams({ icons: iconsList });
352
- path += prefix + ".json?" + urlParams.toString();
353
- break;
354
- }
355
- case "custom": {
356
- const uri = params.uri;
357
- path += uri.slice(0, 1) === "/" ? uri.slice(1) : uri;
358
- break;
359
- }
360
- default:
361
- callback("abort", 400);
362
- return;
363
- }
364
- let defaultError = 503;
365
- fetchModule(host + path).then((response) => {
366
- const status = response.status;
367
- if (status !== 200) {
368
- setTimeout(() => {
369
- callback(shouldAbort(status) ? "abort" : "next", status);
370
- });
371
- return;
372
- }
373
- defaultError = 501;
374
- return response.json();
375
- }).then((data) => {
376
- if (typeof data !== "object" || data === null) {
377
- setTimeout(() => {
378
- if (data === 404) callback("abort", data);
379
- else callback("next", defaultError);
380
- });
381
- return;
382
- }
383
- setTimeout(() => {
384
- callback("success", data);
385
- });
386
- }).catch(() => {
387
- callback("next", defaultError);
388
- });
389
- };
390
- const fetchAPIModule = {
391
- prepare,
392
- send
393
- };
394
- ({
395
- ...defaultIconCustomisations
396
- });
397
- const monotoneProps = {
398
- "background-color": "currentColor"
399
- };
400
- const coloredProps = {
401
- "background-color": "transparent"
402
- };
403
- const propsToAdd = {
404
- image: "var(--svg)",
405
- repeat: "no-repeat",
406
- size: "100% 100%"
407
- };
408
- const propsToAddTo = {
409
- "-webkit-mask": monotoneProps,
410
- "mask": monotoneProps,
411
- "background": coloredProps
412
- };
413
- for (const prefix in propsToAddTo) {
414
- const list = propsToAddTo[prefix];
415
- for (const prop in propsToAdd) {
416
- list[prefix + "-" + prop] = propsToAdd[prop];
417
- }
418
- }
419
- allowSimpleNames(true);
420
- setAPIModule("", fetchAPIModule);
421
- if (typeof document !== "undefined" && typeof window !== "undefined") {
422
- const _window = window;
423
- if (_window.IconifyPreload !== void 0) {
424
- const preload = _window.IconifyPreload;
425
- const err = "Invalid IconifyPreload syntax.";
426
- if (typeof preload === "object" && preload !== null) {
427
- (preload instanceof Array ? preload : [preload]).forEach((item) => {
428
- try {
429
- if (
430
- // Check if item is an object and not null/array
431
- typeof item !== "object" || item === null || item instanceof Array || // Check for 'icons' and 'prefix'
432
- typeof item.icons !== "object" || typeof item.prefix !== "string" || // Add icon set
433
- !addCollection(item)
434
- ) {
435
- console.error(err);
436
- }
437
- } catch (e) {
438
- console.error(err);
439
- }
440
- });
441
- }
442
- }
443
- if (_window.IconifyProviders !== void 0) {
444
- const providers = _window.IconifyProviders;
445
- if (typeof providers === "object" && providers !== null) {
446
- for (let key in providers) {
447
- const err = "IconifyProviders[" + key + "] is invalid.";
448
- try {
449
- const value = providers[key];
450
- if (typeof value !== "object" || !value || value.resources === void 0) {
451
- continue;
452
- }
453
- if (!addAPIProvider(key, value)) {
454
- console.error(err);
455
- }
456
- } catch (e) {
457
- console.error(err);
458
- }
459
- }
460
- }
461
- }
462
- }
463
- function _page($$renderer, $$props) {
464
- $$renderer.component(($$renderer2) => {
465
- const { state: workspace, actions } = getEditWorkspaceContext();
466
- const agent = derived(() => workspace.agentId);
467
- const region = derived(() => workspace.region);
468
- let defaultContext = {};
469
- let defaultContextDraft = {};
470
- let showDefaultContextModal = false;
471
- let showViewerModal = false;
472
- let viewerTitle = "";
473
- const baseAssertionTypes = [
474
- { value: "llm-rubric", label: "LLM" },
475
- { value: "answer-relevance", label: "Answer Relevance (LLM)" },
476
- {
477
- value: "context-faithfulness",
478
- label: "Context Faithfulness (LLM)"
479
- },
480
- { value: "context-recall", label: "Context Recall (LLM)" },
481
- { value: "context-relevance", label: "Context Relevance (LLM)" },
482
- {
483
- value: "model-graded-closedqa",
484
- label: "Model-Graded Closed QA"
485
- },
486
- {
487
- value: "model-graded-factuality",
488
- label: "Model-Graded Factuality"
489
- },
490
- { value: "moderation", label: "Moderation" },
491
- { value: "classifier", label: "Classifier" },
492
- { value: "g-eval", label: "G-Eval" },
493
- { value: "factuality", label: "Factuality" },
494
- {
495
- value: "conversation-relevance",
496
- label: "Conversation Relevance"
497
- },
498
- { value: "equals", label: "Equals" },
499
- { value: "contains", label: "Contains" },
500
- { value: "icontains", label: "Contains (case-insensitive)" },
501
- { value: "contains-all", label: "Contains All" },
502
- { value: "contains-any", label: "Contains Any" },
503
- { value: "icontains-all", label: "Contains All (iCase)" },
504
- { value: "icontains-any", label: "Contains Any (iCase)" },
505
- { value: "starts-with", label: "Starts With" },
506
- { value: "regex", label: "Regex" },
507
- { value: "levenshtein", label: "Levenshtein Distance" },
508
- { value: "is-refusal", label: "Is Refusal" },
509
- { value: "is-html", label: "Is HTML" },
510
- { value: "contains-html", label: "Contains HTML" },
511
- { value: "is-json", label: "Is JSON" },
512
- { value: "contains-json", label: "Contains JSON" },
513
- { value: "is-xml", label: "Is XML" },
514
- { value: "contains-xml", label: "Contains XML" },
515
- { value: "is-sql", label: "Is SQL" },
516
- { value: "contains-sql", label: "Contains SQL" },
517
- { value: "similar", label: "Semantic Similarity" },
518
- { value: "rouge-n", label: "ROUGE-N" },
519
- { value: "bleu", label: "BLEU" },
520
- { value: "gleu", label: "GLEU" },
521
- { value: "meteor", label: "METEOR" },
522
- { value: "perplexity", label: "Perplexity" },
523
- { value: "perplexity-score", label: "Perplexity Score" },
524
- { value: "latency", label: "Latency" },
525
- { value: "cost", label: "Cost" },
526
- { value: "finish-reason", label: "Finish Reason" },
527
- { value: "trace-error-spans", label: "Trace Error Spans" },
528
- { value: "trace-span-count", label: "Trace Span Count" },
529
- { value: "trace-span-duration", label: "Trace Span Duration" },
530
- {
531
- value: "is-valid-function-call",
532
- label: "Is Valid Function Call"
533
- },
534
- {
535
- value: "is-valid-openai-function-call",
536
- label: "Is Valid OpenAI Function Call"
537
- },
538
- {
539
- value: "is-valid-openai-tools-call",
540
- label: "Is Valid OpenAI Tools Call"
541
- },
542
- { value: "guardrails", label: "Guardrails" },
543
- { value: "javascript", label: "JavaScript (custom)" },
544
- { value: "python", label: "Python (custom)" },
545
- { value: "webhook", label: "Webhook (custom)" },
546
- { value: "pi", label: "Pi Scorer" }
547
- ];
548
- [
549
- ...baseAssertionTypes,
550
- ...baseAssertionTypes.map((opt) => ({ value: `not-${opt.value}`, label: `Not ${opt.label}` }))
551
- ];
552
- const pendingSaves = /* @__PURE__ */ new Set();
553
- function trackSave(p) {
554
- pendingSaves.add(p);
555
- p.finally(() => {
556
- pendingSaves.delete(p);
557
- });
558
- return p;
559
- }
560
- async function saveConfigPatch(patch) {
561
- await trpc.tests.updateConfig.mutate({ agent: agent(), region: region(), cfg: patch });
562
- }
563
- onDestroy(() => {
564
- });
565
- let $$settled = true;
566
- let $$inner_renderer;
567
- function $$render_inner($$renderer3) {
568
- head("rdft55", $$renderer3, ($$renderer4) => {
569
- $$renderer4.push(`<link rel="preload" href="/ui/arrow_tests.svg" as="image"/>`);
570
- });
571
- {
572
- let children = function($$renderer4) {
573
- ContextEditor($$renderer4, {
574
- class: "h-[70vh]",
575
- context: defaultContextDraft,
576
- onContextChanged: (ctx) => defaultContextDraft = ctx,
577
- editorStateKey: `editorState/context/${agent()}/tests/default`,
578
- suppressErrors: true,
579
- defaultFormat: "json",
580
- hideHeader: true
581
- });
582
- }, footer = function($$renderer4) {
583
- Button($$renderer4, {
584
- variant: "outlined",
585
- size: "small",
586
- onclick: () => showDefaultContextModal = false,
587
- children: ($$renderer5) => {
588
- $$renderer5.push(`<!---->Cancel`);
589
- },
590
- $$slots: { default: true }
591
- });
592
- $$renderer4.push(`<!----> `);
593
- Button($$renderer4, {
594
- size: "small",
595
- onclick: async () => {
596
- defaultContext = defaultContextDraft;
597
- await trackSave(saveConfigPatch({ defaultContext }));
598
- showDefaultContextModal = false;
599
- },
600
- children: ($$renderer5) => {
601
- $$renderer5.push(`<!---->Save`);
602
- },
603
- $$slots: { default: true }
604
- });
605
- $$renderer4.push(`<!---->`);
606
- };
607
- Modal($$renderer3, {
608
- title: "Default Context",
609
- get open() {
610
- return showDefaultContextModal;
611
- },
612
- set open($$value) {
613
- showDefaultContextModal = $$value;
614
- $$settled = false;
615
- },
616
- children,
617
- footer,
618
- $$slots: { default: true, footer: true }
619
- });
620
- }
621
- $$renderer3.push(`<!----> `);
622
- {
623
- let children = function($$renderer4) {
624
- {
625
- $$renderer4.push("<!--[-1-->");
626
- $$renderer4.push(`<pre class="whitespace-pre-wrap font-mono text-gray-200">${escape_html("—")}</pre>`);
627
- }
628
- $$renderer4.push(`<!--]-->`);
629
- }, footer = function($$renderer4) {
630
- Button($$renderer4, {
631
- variant: "outlined",
632
- size: "small",
633
- onclick: () => showViewerModal = false,
634
- children: ($$renderer5) => {
635
- $$renderer5.push(`<!---->Close`);
636
- },
637
- $$slots: { default: true }
638
- });
639
- };
640
- Modal($$renderer3, {
641
- title: viewerTitle,
642
- class: "!w-[80vw] !max-w-5xl",
643
- get open() {
644
- return showViewerModal;
645
- },
646
- set open($$value) {
647
- showViewerModal = $$value;
648
- $$settled = false;
649
- },
650
- children,
651
- footer,
652
- $$slots: { default: true, footer: true }
653
- });
654
- }
655
- $$renderer3.push(`<!----> `);
656
- {
657
- $$renderer3.push("<!--[-1-->");
658
- }
659
- $$renderer3.push(`<!--]-->`);
660
- }
661
- do {
662
- $$settled = true;
663
- $$inner_renderer = $$renderer2.copy();
664
- $$render_inner($$inner_renderer);
665
- } while (!$$settled);
666
- $$renderer2.subsume($$inner_renderer);
667
- });
668
- }
669
-
670
- export { _page as default };
671
- //# sourceMappingURL=_page.svelte-Bl1WcAXy.js.map