plum-e2e 2.10.0 → 2.12.0

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 (650) hide show
  1. package/.env +1 -1
  2. package/CLAUDE.md +1 -1
  3. package/README.md +7 -7
  4. package/backend/app.js +1 -1
  5. package/backend/lib/csv.js +21 -0
  6. package/backend/lib/exportResponse.js +37 -0
  7. package/backend/lib/serverBootstrap.js +2 -2
  8. package/backend/lib/serverConfig.js +5 -3
  9. package/backend/mcp/server.js +44 -0
  10. package/backend/middleware/runnerOrAdmin.js +1 -1
  11. package/backend/package.json +1 -1
  12. package/backend/routes/reports.routes.js +19 -0
  13. package/backend/routes/runners.routes.js +1 -1
  14. package/backend/routes/test-cases.routes.js +12 -0
  15. package/backend/routes/test-runs.routes.js +17 -0
  16. package/backend/routes/test-suites.routes.js +34 -0
  17. package/backend/scripts/{manage-runners.mjs → manage-nodes.mjs} +67 -52
  18. package/backend/services/exportService.js +339 -0
  19. package/backend/services/testImportService.js +87 -0
  20. package/bin/plum.js +174 -68
  21. package/docker-compose.yml +1 -1
  22. package/frontend/.svelte-kit/adapter-node/.vite/manifest.json +48 -40
  23. package/frontend/.svelte-kit/{output/server/_app/immutable/assets/Toast.DENwYn3g.css → adapter-node/_app/immutable/assets/Button.C1zsJAUG.css} +1 -1
  24. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/ExportMenu.DsJQ1Qua.css +6 -0
  25. package/frontend/{build/client/_app/immutable/assets/_layout.HkPnpRl9.css → .svelte-kit/adapter-node/_app/immutable/assets/_layout.B4TT3qNx.css} +1 -1
  26. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.4bPj83tb.css +6 -0
  27. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BwgtEi_a.css +6 -0
  28. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.DOC8fPSI.css +6 -0
  29. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.Dm1nSEgE.css +6 -0
  30. package/frontend/.svelte-kit/adapter-node/chunks/{Toast.js → Button.js} +2 -17
  31. package/frontend/.svelte-kit/adapter-node/chunks/ConfirmModal.js +1 -1
  32. package/frontend/.svelte-kit/adapter-node/chunks/EmptyState.js +1 -1
  33. package/frontend/.svelte-kit/adapter-node/chunks/common.js +11 -4
  34. package/frontend/.svelte-kit/adapter-node/chunks/constants.js +1 -1
  35. package/frontend/.svelte-kit/adapter-node/chunks/internal.js +1 -1
  36. package/frontend/.svelte-kit/adapter-node/chunks/repository.js +21 -17
  37. package/frontend/.svelte-kit/adapter-node/entries/pages/_layout.svelte.js +2 -0
  38. package/frontend/.svelte-kit/adapter-node/entries/pages/reports/_id_/_page.svelte.js +11 -2
  39. package/frontend/.svelte-kit/adapter-node/entries/pages/scheduled-tests/_page.svelte.js +2 -5
  40. package/frontend/.svelte-kit/adapter-node/entries/pages/settings/_page.svelte.js +300 -253
  41. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/_page.svelte.js +55 -36
  42. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/runs/_id_/_page.svelte.js +3 -6
  43. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/suites/_id_/_page.svelte.js +15 -17
  44. package/frontend/.svelte-kit/adapter-node/manifest-full.js +1 -1
  45. package/frontend/.svelte-kit/adapter-node/manifest.js +1 -1
  46. package/frontend/.svelte-kit/adapter-node/nodes/0.js +2 -2
  47. package/frontend/.svelte-kit/adapter-node/nodes/1.js +1 -1
  48. package/frontend/.svelte-kit/adapter-node/nodes/10.js +2 -2
  49. package/frontend/.svelte-kit/adapter-node/nodes/11.js +2 -2
  50. package/frontend/.svelte-kit/adapter-node/nodes/12.js +2 -2
  51. package/frontend/.svelte-kit/adapter-node/nodes/2.js +1 -1
  52. package/frontend/.svelte-kit/adapter-node/nodes/3.js +1 -1
  53. package/frontend/.svelte-kit/adapter-node/nodes/4.js +1 -1
  54. package/frontend/.svelte-kit/adapter-node/nodes/5.js +1 -1
  55. package/frontend/.svelte-kit/adapter-node/nodes/6.js +2 -2
  56. package/frontend/.svelte-kit/adapter-node/nodes/7.js +2 -2
  57. package/frontend/.svelte-kit/adapter-node/nodes/8.js +2 -2
  58. package/frontend/.svelte-kit/adapter-node/nodes/9.js +1 -1
  59. package/frontend/.svelte-kit/generated/server/internal.js +1 -1
  60. package/frontend/.svelte-kit/output/client/.vite/manifest.json +459 -412
  61. package/frontend/.svelte-kit/output/client/_app/immutable/assets/{0.CmJTG5mP.css → 0.BEqlRAtD.css} +1 -1
  62. package/frontend/.svelte-kit/output/client/_app/immutable/assets/10.DC0wD6w_.css +6 -0
  63. package/frontend/.svelte-kit/output/client/_app/immutable/assets/12.Dm1nSEgE.css +6 -0
  64. package/frontend/.svelte-kit/output/client/_app/immutable/assets/6.DdQVxyZK.css +6 -0
  65. package/frontend/.svelte-kit/output/client/_app/immutable/assets/8.DOC8fPSI.css +6 -0
  66. package/frontend/.svelte-kit/{adapter-node/_app/immutable/assets/Toast.DENwYn3g.css → output/client/_app/immutable/assets/Button.C1zsJAUG.css} +1 -1
  67. package/frontend/.svelte-kit/output/client/_app/immutable/assets/ExportMenu.DsJQ1Qua.css +6 -0
  68. package/frontend/.svelte-kit/output/client/_app/immutable/assets/{_layout.HkPnpRl9.css → _layout.B4TT3qNx.css} +1 -1
  69. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.4bPj83tb.css +6 -0
  70. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BwgtEi_a.css +6 -0
  71. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.DOC8fPSI.css +6 -0
  72. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.Dm1nSEgE.css +6 -0
  73. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{C2_rQ4aY.js → 3MBVX4Yb.js} +1 -1
  74. package/frontend/{build/client/_app/immutable/chunks/CfkUW1vA.js → .svelte-kit/output/client/_app/immutable/chunks/6VDMVB5U.js} +1 -1
  75. package/frontend/{build/client/_app/immutable/chunks/B0_HKFXV.js → .svelte-kit/output/client/_app/immutable/chunks/B2lVGNml.js} +1 -1
  76. package/frontend/{build/client/_app/immutable/chunks/CboYYxrf.js → .svelte-kit/output/client/_app/immutable/chunks/BCh31ecr.js} +1 -1
  77. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BDb8hZHu.js +6 -0
  78. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{CeH-RgMb.js → BIf7lHIm.js} +1 -1
  79. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BIjh3jiU.js +8 -0
  80. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BTV7EXZb.js +11 -0
  81. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{DAmOMhaf.js → BWGoOYU0.js} +1 -1
  82. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BdBJfKUi.js +6 -0
  83. package/frontend/{build/client/_app/immutable/chunks/BAvTKHxT.js → .svelte-kit/output/client/_app/immutable/chunks/BnXsGCy3.js} +1 -1
  84. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BtTNggoY.js +8 -0
  85. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/C4Z3p6jE.js +6 -0
  86. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CNpD-yNH.js +6 -0
  87. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CUPWZLIN.js +6 -0
  88. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{Ck6C3Fl0.js → CXQhSK1T.js} +1 -1
  89. package/frontend/{build/client/_app/immutable/chunks/C00jnSU2.js → .svelte-kit/output/client/_app/immutable/chunks/CtgCYzu5.js} +1 -1
  90. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/D72giPTu.js +6 -0
  91. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{GDjpV3r7.js → DDx3no2z.js} +1 -1
  92. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/D_thT6pZ.js +6 -0
  93. package/frontend/{build/client/_app/immutable/chunks/C8S7qQjQ.js → .svelte-kit/output/client/_app/immutable/chunks/DeiVAbyn.js} +1 -1
  94. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DiexacSB.js +6 -0
  95. package/frontend/{build/client/_app/immutable/chunks/d2K3c8Kx.js → .svelte-kit/output/client/_app/immutable/chunks/Dlymnwnf.js} +1 -1
  96. package/frontend/{build/client/_app/immutable/chunks/Cgw8TOOy.js → .svelte-kit/output/client/_app/immutable/chunks/gCgJ3Cwu.js} +1 -1
  97. package/frontend/{build/client/_app/immutable/chunks/BJ_ypKl3.js → .svelte-kit/output/client/_app/immutable/chunks/htkwR9b-.js} +1 -1
  98. package/frontend/{build/client/_app/immutable/chunks/C7uEQ-LH.js → .svelte-kit/output/client/_app/immutable/chunks/iL4SCrvY.js} +1 -1
  99. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{CoTEzvLa.js → kFFd6Oo5.js} +1 -1
  100. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/pNZogwkM.js +6 -0
  101. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{DWzEJYIF.js → prk8PJfA.js} +1 -1
  102. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/qvxlSGpD.js +6 -0
  103. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/r_d1Iu0W.js +6 -0
  104. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{B00vxw57.js → tsOANt55.js} +1 -1
  105. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/zXSLr47H.js +6 -0
  106. package/frontend/.svelte-kit/output/client/_app/immutable/entry/app.DgdSwPuN.js +7 -0
  107. package/frontend/{build/client/_app/immutable/entry/start.BXOLyf9R.js → .svelte-kit/output/client/_app/immutable/entry/start.D_lhI48n.js} +1 -1
  108. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/0.D2F-i1I5.js +6 -0
  109. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/{1.BI97il3r.js → 1.JIF2GfHq.js} +1 -1
  110. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/10.A0AHLfOt.js +6 -0
  111. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/11.CVSPxlqY.js +6 -0
  112. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/12.CnAR0AQb.js +6 -0
  113. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/{2.Dr6yugXz.js → 2.Bno00fr8.js} +1 -1
  114. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/3.B6KwaCsM.js +6 -0
  115. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/{4.DDADylfF.js → 4.BX70m3v6.js} +1 -1
  116. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/5.UIFh06yr.js +6 -0
  117. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/6.DZ1OV24V.js +10 -0
  118. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/7.B_XntBZ1.js +6 -0
  119. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/8.CVHgJw-E.js +9 -0
  120. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/{9.BOK0GNF_.js → 9.DDDQPmMj.js} +1 -1
  121. package/frontend/.svelte-kit/output/client/_app/version.json +1 -1
  122. package/frontend/.svelte-kit/output/server/.vite/manifest.json +48 -40
  123. package/frontend/{build/client/_app/immutable/assets/Toast.DENwYn3g.css → .svelte-kit/output/server/_app/immutable/assets/Button.C1zsJAUG.css} +1 -1
  124. package/frontend/.svelte-kit/output/server/_app/immutable/assets/ExportMenu.DsJQ1Qua.css +6 -0
  125. package/frontend/.svelte-kit/{adapter-node/_app/immutable/assets/_layout.HkPnpRl9.css → output/server/_app/immutable/assets/_layout.B4TT3qNx.css} +1 -1
  126. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.4bPj83tb.css +6 -0
  127. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BwgtEi_a.css +6 -0
  128. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.DOC8fPSI.css +6 -0
  129. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.Dm1nSEgE.css +6 -0
  130. package/frontend/.svelte-kit/output/server/chunks/{Toast.js → Button.js} +2 -17
  131. package/frontend/.svelte-kit/output/server/chunks/ConfirmModal.js +1 -1
  132. package/frontend/.svelte-kit/output/server/chunks/EmptyState.js +1 -1
  133. package/frontend/.svelte-kit/output/server/chunks/common.js +11 -4
  134. package/frontend/.svelte-kit/output/server/chunks/constants.js +1 -1
  135. package/frontend/.svelte-kit/output/server/chunks/internal.js +1 -1
  136. package/frontend/.svelte-kit/output/server/chunks/repository.js +21 -17
  137. package/frontend/.svelte-kit/output/server/entries/pages/_layout.svelte.js +2 -0
  138. package/frontend/.svelte-kit/output/server/entries/pages/reports/_id_/_page.svelte.js +11 -2
  139. package/frontend/.svelte-kit/output/server/entries/pages/scheduled-tests/_page.svelte.js +2 -5
  140. package/frontend/.svelte-kit/output/server/entries/pages/settings/_page.svelte.js +300 -253
  141. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/_page.svelte.js +55 -36
  142. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/runs/_id_/_page.svelte.js +3 -6
  143. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/suites/_id_/_page.svelte.js +15 -17
  144. package/frontend/.svelte-kit/output/server/manifest-full.js +1 -1
  145. package/frontend/.svelte-kit/output/server/manifest.js +1 -1
  146. package/frontend/.svelte-kit/output/server/nodes/0.js +2 -2
  147. package/frontend/.svelte-kit/output/server/nodes/1.js +1 -1
  148. package/frontend/.svelte-kit/output/server/nodes/10.js +2 -2
  149. package/frontend/.svelte-kit/output/server/nodes/11.js +2 -2
  150. package/frontend/.svelte-kit/output/server/nodes/12.js +2 -2
  151. package/frontend/.svelte-kit/output/server/nodes/2.js +1 -1
  152. package/frontend/.svelte-kit/output/server/nodes/3.js +1 -1
  153. package/frontend/.svelte-kit/output/server/nodes/4.js +1 -1
  154. package/frontend/.svelte-kit/output/server/nodes/5.js +1 -1
  155. package/frontend/.svelte-kit/output/server/nodes/6.js +2 -2
  156. package/frontend/.svelte-kit/output/server/nodes/7.js +2 -2
  157. package/frontend/.svelte-kit/output/server/nodes/8.js +2 -2
  158. package/frontend/.svelte-kit/output/server/nodes/9.js +1 -1
  159. package/frontend/build/client/_app/immutable/assets/{0.CmJTG5mP.css → 0.BEqlRAtD.css} +1 -1
  160. package/frontend/build/client/_app/immutable/assets/0.BEqlRAtD.css.br +0 -0
  161. package/frontend/build/client/_app/immutable/assets/0.BEqlRAtD.css.gz +0 -0
  162. package/frontend/build/client/_app/immutable/assets/10.DC0wD6w_.css +6 -0
  163. package/frontend/build/client/_app/immutable/assets/10.DC0wD6w_.css.br +0 -0
  164. package/frontend/build/client/_app/immutable/assets/10.DC0wD6w_.css.gz +0 -0
  165. package/frontend/build/client/_app/immutable/assets/12.Dm1nSEgE.css +6 -0
  166. package/frontend/build/client/_app/immutable/assets/12.Dm1nSEgE.css.br +0 -0
  167. package/frontend/build/client/_app/immutable/assets/12.Dm1nSEgE.css.gz +0 -0
  168. package/frontend/build/client/_app/immutable/assets/6.DdQVxyZK.css +6 -0
  169. package/frontend/build/client/_app/immutable/assets/6.DdQVxyZK.css.br +0 -0
  170. package/frontend/build/client/_app/immutable/assets/6.DdQVxyZK.css.gz +0 -0
  171. package/frontend/build/client/_app/immutable/assets/8.DOC8fPSI.css +6 -0
  172. package/frontend/build/client/_app/immutable/assets/8.DOC8fPSI.css.br +0 -0
  173. package/frontend/build/client/_app/immutable/assets/8.DOC8fPSI.css.gz +0 -0
  174. package/frontend/{.svelte-kit/output/client/_app/immutable/assets/Toast.DENwYn3g.css → build/client/_app/immutable/assets/Button.C1zsJAUG.css} +1 -1
  175. package/frontend/build/client/_app/immutable/assets/Button.C1zsJAUG.css.br +0 -0
  176. package/frontend/build/client/_app/immutable/assets/Button.C1zsJAUG.css.gz +0 -0
  177. package/frontend/build/client/_app/immutable/assets/ExportMenu.DsJQ1Qua.css +6 -0
  178. package/frontend/build/client/_app/immutable/assets/ExportMenu.DsJQ1Qua.css.br +0 -0
  179. package/frontend/build/client/_app/immutable/assets/ExportMenu.DsJQ1Qua.css.gz +0 -0
  180. package/frontend/{.svelte-kit/output/server/_app/immutable/assets/_layout.HkPnpRl9.css → build/client/_app/immutable/assets/_layout.B4TT3qNx.css} +1 -1
  181. package/frontend/build/client/_app/immutable/assets/_layout.B4TT3qNx.css.br +0 -0
  182. package/frontend/build/client/_app/immutable/assets/_layout.B4TT3qNx.css.gz +0 -0
  183. package/frontend/build/client/_app/immutable/assets/_page.4bPj83tb.css +6 -0
  184. package/frontend/build/client/_app/immutable/assets/_page.4bPj83tb.css.br +0 -0
  185. package/frontend/build/client/_app/immutable/assets/_page.4bPj83tb.css.gz +0 -0
  186. package/frontend/build/client/_app/immutable/assets/_page.BwgtEi_a.css +6 -0
  187. package/frontend/build/client/_app/immutable/assets/_page.BwgtEi_a.css.br +0 -0
  188. package/frontend/build/client/_app/immutable/assets/_page.BwgtEi_a.css.gz +0 -0
  189. package/frontend/build/client/_app/immutable/assets/_page.DOC8fPSI.css +6 -0
  190. package/frontend/build/client/_app/immutable/assets/_page.DOC8fPSI.css.br +0 -0
  191. package/frontend/build/client/_app/immutable/assets/_page.DOC8fPSI.css.gz +0 -0
  192. package/frontend/build/client/_app/immutable/assets/_page.Dm1nSEgE.css +6 -0
  193. package/frontend/build/client/_app/immutable/assets/_page.Dm1nSEgE.css.br +0 -0
  194. package/frontend/build/client/_app/immutable/assets/_page.Dm1nSEgE.css.gz +0 -0
  195. package/frontend/build/client/_app/immutable/chunks/{C2_rQ4aY.js → 3MBVX4Yb.js} +1 -1
  196. package/frontend/build/client/_app/immutable/chunks/3MBVX4Yb.js.br +0 -0
  197. package/frontend/build/client/_app/immutable/chunks/3MBVX4Yb.js.gz +0 -0
  198. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/CfkUW1vA.js → build/client/_app/immutable/chunks/6VDMVB5U.js} +1 -1
  199. package/frontend/build/client/_app/immutable/chunks/6VDMVB5U.js.br +0 -0
  200. package/frontend/build/client/_app/immutable/chunks/6VDMVB5U.js.gz +0 -0
  201. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/B0_HKFXV.js → build/client/_app/immutable/chunks/B2lVGNml.js} +1 -1
  202. package/frontend/build/client/_app/immutable/chunks/B2lVGNml.js.br +0 -0
  203. package/frontend/build/client/_app/immutable/chunks/B2lVGNml.js.gz +0 -0
  204. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/CboYYxrf.js → build/client/_app/immutable/chunks/BCh31ecr.js} +1 -1
  205. package/frontend/build/client/_app/immutable/chunks/BCh31ecr.js.br +6 -0
  206. package/frontend/build/client/_app/immutable/chunks/BCh31ecr.js.gz +0 -0
  207. package/frontend/build/client/_app/immutable/chunks/BDb8hZHu.js +6 -0
  208. package/frontend/build/client/_app/immutable/chunks/BDb8hZHu.js.br +0 -0
  209. package/frontend/build/client/_app/immutable/chunks/BDb8hZHu.js.gz +0 -0
  210. package/frontend/build/client/_app/immutable/chunks/{CeH-RgMb.js → BIf7lHIm.js} +1 -1
  211. package/frontend/build/client/_app/immutable/chunks/BIf7lHIm.js.br +0 -0
  212. package/frontend/build/client/_app/immutable/chunks/{CeH-RgMb.js.gz → BIf7lHIm.js.gz} +0 -0
  213. package/frontend/build/client/_app/immutable/chunks/BIjh3jiU.js +8 -0
  214. package/frontend/build/client/_app/immutable/chunks/BIjh3jiU.js.br +0 -0
  215. package/frontend/build/client/_app/immutable/chunks/BIjh3jiU.js.gz +0 -0
  216. package/frontend/build/client/_app/immutable/chunks/BTV7EXZb.js +11 -0
  217. package/frontend/build/client/_app/immutable/chunks/BTV7EXZb.js.br +0 -0
  218. package/frontend/build/client/_app/immutable/chunks/BTV7EXZb.js.gz +0 -0
  219. package/frontend/build/client/_app/immutable/chunks/{DAmOMhaf.js → BWGoOYU0.js} +1 -1
  220. package/frontend/build/client/_app/immutable/chunks/BWGoOYU0.js.br +0 -0
  221. package/frontend/build/client/_app/immutable/chunks/BWGoOYU0.js.gz +0 -0
  222. package/frontend/build/client/_app/immutable/chunks/BdBJfKUi.js +6 -0
  223. package/frontend/build/client/_app/immutable/chunks/BdBJfKUi.js.br +0 -0
  224. package/frontend/build/client/_app/immutable/chunks/BdBJfKUi.js.gz +0 -0
  225. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BAvTKHxT.js → build/client/_app/immutable/chunks/BnXsGCy3.js} +1 -1
  226. package/frontend/build/client/_app/immutable/chunks/BnXsGCy3.js.br +0 -0
  227. package/frontend/build/client/_app/immutable/chunks/BnXsGCy3.js.gz +0 -0
  228. package/frontend/build/client/_app/immutable/chunks/BtTNggoY.js +8 -0
  229. package/frontend/build/client/_app/immutable/chunks/BtTNggoY.js.br +0 -0
  230. package/frontend/build/client/_app/immutable/chunks/BtTNggoY.js.gz +0 -0
  231. package/frontend/build/client/_app/immutable/chunks/C4Z3p6jE.js +6 -0
  232. package/frontend/build/client/_app/immutable/chunks/C4Z3p6jE.js.br +0 -0
  233. package/frontend/build/client/_app/immutable/chunks/C4Z3p6jE.js.gz +0 -0
  234. package/frontend/build/client/_app/immutable/chunks/CNpD-yNH.js +6 -0
  235. package/frontend/build/client/_app/immutable/chunks/CNpD-yNH.js.br +0 -0
  236. package/frontend/build/client/_app/immutable/chunks/CNpD-yNH.js.gz +0 -0
  237. package/frontend/build/client/_app/immutable/chunks/CUPWZLIN.js +6 -0
  238. package/frontend/build/client/_app/immutable/chunks/CUPWZLIN.js.br +0 -0
  239. package/frontend/build/client/_app/immutable/chunks/CUPWZLIN.js.gz +0 -0
  240. package/frontend/build/client/_app/immutable/chunks/{Ck6C3Fl0.js → CXQhSK1T.js} +1 -1
  241. package/frontend/build/client/_app/immutable/chunks/CXQhSK1T.js.br +0 -0
  242. package/frontend/build/client/_app/immutable/chunks/CXQhSK1T.js.gz +0 -0
  243. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/C00jnSU2.js → build/client/_app/immutable/chunks/CtgCYzu5.js} +1 -1
  244. package/frontend/build/client/_app/immutable/chunks/CtgCYzu5.js.br +0 -0
  245. package/frontend/build/client/_app/immutable/chunks/CtgCYzu5.js.gz +0 -0
  246. package/frontend/build/client/_app/immutable/chunks/D72giPTu.js +6 -0
  247. package/frontend/build/client/_app/immutable/chunks/D72giPTu.js.br +0 -0
  248. package/frontend/build/client/_app/immutable/chunks/D72giPTu.js.gz +0 -0
  249. package/frontend/build/client/_app/immutable/chunks/{GDjpV3r7.js → DDx3no2z.js} +1 -1
  250. package/frontend/build/client/_app/immutable/chunks/DDx3no2z.js.br +0 -0
  251. package/frontend/build/client/_app/immutable/chunks/DDx3no2z.js.gz +0 -0
  252. package/frontend/build/client/_app/immutable/chunks/D_thT6pZ.js +6 -0
  253. package/frontend/build/client/_app/immutable/chunks/D_thT6pZ.js.br +0 -0
  254. package/frontend/build/client/_app/immutable/chunks/D_thT6pZ.js.gz +0 -0
  255. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/C8S7qQjQ.js → build/client/_app/immutable/chunks/DeiVAbyn.js} +1 -1
  256. package/frontend/build/client/_app/immutable/chunks/DeiVAbyn.js.br +6 -0
  257. package/frontend/build/client/_app/immutable/chunks/DeiVAbyn.js.gz +0 -0
  258. package/frontend/build/client/_app/immutable/chunks/DiexacSB.js +6 -0
  259. package/frontend/build/client/_app/immutable/chunks/DiexacSB.js.br +0 -0
  260. package/frontend/build/client/_app/immutable/chunks/DiexacSB.js.gz +0 -0
  261. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/d2K3c8Kx.js → build/client/_app/immutable/chunks/Dlymnwnf.js} +1 -1
  262. package/frontend/build/client/_app/immutable/chunks/Dlymnwnf.js.br +0 -0
  263. package/frontend/build/client/_app/immutable/chunks/Dlymnwnf.js.gz +0 -0
  264. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/Cgw8TOOy.js → build/client/_app/immutable/chunks/gCgJ3Cwu.js} +1 -1
  265. package/frontend/build/client/_app/immutable/chunks/gCgJ3Cwu.js.br +0 -0
  266. package/frontend/build/client/_app/immutable/chunks/gCgJ3Cwu.js.gz +0 -0
  267. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BJ_ypKl3.js → build/client/_app/immutable/chunks/htkwR9b-.js} +1 -1
  268. package/frontend/build/client/_app/immutable/chunks/htkwR9b-.js.br +0 -0
  269. package/frontend/build/client/_app/immutable/chunks/htkwR9b-.js.gz +0 -0
  270. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/C7uEQ-LH.js → build/client/_app/immutable/chunks/iL4SCrvY.js} +1 -1
  271. package/frontend/build/client/_app/immutable/chunks/iL4SCrvY.js.br +0 -0
  272. package/frontend/build/client/_app/immutable/chunks/iL4SCrvY.js.gz +0 -0
  273. package/frontend/build/client/_app/immutable/chunks/{CoTEzvLa.js → kFFd6Oo5.js} +1 -1
  274. package/frontend/build/client/_app/immutable/chunks/kFFd6Oo5.js.br +0 -0
  275. package/frontend/build/client/_app/immutable/chunks/kFFd6Oo5.js.gz +0 -0
  276. package/frontend/build/client/_app/immutable/chunks/pNZogwkM.js +6 -0
  277. package/frontend/build/client/_app/immutable/chunks/pNZogwkM.js.br +0 -0
  278. package/frontend/build/client/_app/immutable/chunks/pNZogwkM.js.gz +0 -0
  279. package/frontend/build/client/_app/immutable/chunks/{DWzEJYIF.js → prk8PJfA.js} +1 -1
  280. package/frontend/build/client/_app/immutable/chunks/prk8PJfA.js.br +0 -0
  281. package/frontend/build/client/_app/immutable/chunks/prk8PJfA.js.gz +0 -0
  282. package/frontend/build/client/_app/immutable/chunks/qvxlSGpD.js +6 -0
  283. package/frontend/build/client/_app/immutable/chunks/qvxlSGpD.js.br +0 -0
  284. package/frontend/build/client/_app/immutable/chunks/qvxlSGpD.js.gz +0 -0
  285. package/frontend/build/client/_app/immutable/chunks/r_d1Iu0W.js +6 -0
  286. package/frontend/build/client/_app/immutable/chunks/r_d1Iu0W.js.br +0 -0
  287. package/frontend/build/client/_app/immutable/chunks/r_d1Iu0W.js.gz +0 -0
  288. package/frontend/build/client/_app/immutable/chunks/{B00vxw57.js → tsOANt55.js} +1 -1
  289. package/frontend/build/client/_app/immutable/chunks/tsOANt55.js.br +0 -0
  290. package/frontend/build/client/_app/immutable/chunks/tsOANt55.js.gz +0 -0
  291. package/frontend/build/client/_app/immutable/chunks/zXSLr47H.js +6 -0
  292. package/frontend/build/client/_app/immutable/chunks/zXSLr47H.js.br +0 -0
  293. package/frontend/build/client/_app/immutable/chunks/zXSLr47H.js.gz +0 -0
  294. package/frontend/build/client/_app/immutable/entry/app.DgdSwPuN.js +7 -0
  295. package/frontend/build/client/_app/immutable/entry/app.DgdSwPuN.js.br +0 -0
  296. package/frontend/build/client/_app/immutable/entry/app.DgdSwPuN.js.gz +0 -0
  297. package/frontend/{.svelte-kit/output/client/_app/immutable/entry/start.BXOLyf9R.js → build/client/_app/immutable/entry/start.D_lhI48n.js} +1 -1
  298. package/frontend/build/client/_app/immutable/entry/{start.BXOLyf9R.js.br → start.D_lhI48n.js.br} +1 -1
  299. package/frontend/build/client/_app/immutable/entry/{start.BXOLyf9R.js.gz → start.D_lhI48n.js.gz} +0 -0
  300. package/frontend/build/client/_app/immutable/nodes/0.D2F-i1I5.js +6 -0
  301. package/frontend/build/client/_app/immutable/nodes/0.D2F-i1I5.js.br +0 -0
  302. package/frontend/build/client/_app/immutable/nodes/0.D2F-i1I5.js.gz +0 -0
  303. package/frontend/build/client/_app/immutable/nodes/{1.BI97il3r.js → 1.JIF2GfHq.js} +1 -1
  304. package/frontend/build/client/_app/immutable/nodes/1.JIF2GfHq.js.br +5 -0
  305. package/frontend/build/client/_app/immutable/nodes/1.JIF2GfHq.js.gz +0 -0
  306. package/frontend/build/client/_app/immutable/nodes/10.A0AHLfOt.js +6 -0
  307. package/frontend/build/client/_app/immutable/nodes/10.A0AHLfOt.js.br +0 -0
  308. package/frontend/build/client/_app/immutable/nodes/10.A0AHLfOt.js.gz +0 -0
  309. package/frontend/build/client/_app/immutable/nodes/11.CVSPxlqY.js +6 -0
  310. package/frontend/build/client/_app/immutable/nodes/11.CVSPxlqY.js.br +0 -0
  311. package/frontend/build/client/_app/immutable/nodes/11.CVSPxlqY.js.gz +0 -0
  312. package/frontend/build/client/_app/immutable/nodes/12.CnAR0AQb.js +6 -0
  313. package/frontend/build/client/_app/immutable/nodes/12.CnAR0AQb.js.br +0 -0
  314. package/frontend/build/client/_app/immutable/nodes/12.CnAR0AQb.js.gz +0 -0
  315. package/frontend/build/client/_app/immutable/nodes/{2.Dr6yugXz.js → 2.Bno00fr8.js} +1 -1
  316. package/frontend/build/client/_app/immutable/nodes/2.Bno00fr8.js.br +0 -0
  317. package/frontend/build/client/_app/immutable/nodes/2.Bno00fr8.js.gz +0 -0
  318. package/frontend/build/client/_app/immutable/nodes/3.B6KwaCsM.js +6 -0
  319. package/frontend/build/client/_app/immutable/nodes/3.B6KwaCsM.js.br +0 -0
  320. package/frontend/build/client/_app/immutable/nodes/3.B6KwaCsM.js.gz +0 -0
  321. package/frontend/build/client/_app/immutable/nodes/{4.DDADylfF.js → 4.BX70m3v6.js} +1 -1
  322. package/frontend/build/client/_app/immutable/nodes/4.BX70m3v6.js.br +0 -0
  323. package/frontend/build/client/_app/immutable/nodes/4.BX70m3v6.js.gz +0 -0
  324. package/frontend/build/client/_app/immutable/nodes/5.UIFh06yr.js +6 -0
  325. package/frontend/build/client/_app/immutable/nodes/5.UIFh06yr.js.br +0 -0
  326. package/frontend/build/client/_app/immutable/nodes/5.UIFh06yr.js.gz +0 -0
  327. package/frontend/build/client/_app/immutable/nodes/6.DZ1OV24V.js +10 -0
  328. package/frontend/build/client/_app/immutable/nodes/6.DZ1OV24V.js.br +0 -0
  329. package/frontend/build/client/_app/immutable/nodes/6.DZ1OV24V.js.gz +0 -0
  330. package/frontend/build/client/_app/immutable/nodes/7.B_XntBZ1.js +6 -0
  331. package/frontend/build/client/_app/immutable/nodes/7.B_XntBZ1.js.br +0 -0
  332. package/frontend/build/client/_app/immutable/nodes/7.B_XntBZ1.js.gz +0 -0
  333. package/frontend/build/client/_app/immutable/nodes/8.CVHgJw-E.js +9 -0
  334. package/frontend/build/client/_app/immutable/nodes/8.CVHgJw-E.js.br +0 -0
  335. package/frontend/build/client/_app/immutable/nodes/8.CVHgJw-E.js.gz +0 -0
  336. package/frontend/build/client/_app/immutable/nodes/{9.BOK0GNF_.js → 9.DDDQPmMj.js} +1 -1
  337. package/frontend/build/client/_app/immutable/nodes/9.DDDQPmMj.js.br +0 -0
  338. package/frontend/build/client/_app/immutable/nodes/9.DDDQPmMj.js.gz +0 -0
  339. package/frontend/build/client/_app/version.json +1 -1
  340. package/frontend/build/client/_app/version.json.br +0 -0
  341. package/frontend/build/client/_app/version.json.gz +0 -0
  342. package/frontend/build/server/chunks/0-38cvTs44.js +22 -0
  343. package/frontend/build/server/chunks/0-38cvTs44.js.map +5 -0
  344. package/frontend/build/server/chunks/{1-B3HpigzL.js → 1-CcYsajvR.js} +2 -2
  345. package/frontend/build/server/chunks/{1-B3HpigzL.js.map → 1-CcYsajvR.js.map} +1 -1
  346. package/frontend/build/server/chunks/10-CFR2MUJt.js +14 -0
  347. package/frontend/build/server/chunks/10-CFR2MUJt.js.map +5 -0
  348. package/frontend/build/server/chunks/11-BmkiRQ9D.js +14 -0
  349. package/frontend/build/server/chunks/11-BmkiRQ9D.js.map +5 -0
  350. package/frontend/build/server/chunks/12-BphJAwnL.js +14 -0
  351. package/frontend/build/server/chunks/12-BphJAwnL.js.map +5 -0
  352. package/frontend/build/server/chunks/2-Dalgd2D4.js +14 -0
  353. package/frontend/build/server/chunks/{2-DioMbKbC.js.map → 2-Dalgd2D4.js.map} +1 -1
  354. package/frontend/build/server/chunks/3-BvsmdXCj.js +14 -0
  355. package/frontend/build/server/chunks/{3-CgiZg_9v.js.map → 3-BvsmdXCj.js.map} +1 -1
  356. package/frontend/build/server/chunks/4-CN18WCEn.js +14 -0
  357. package/frontend/build/server/chunks/{4-BM-49dbE.js.map → 4-CN18WCEn.js.map} +1 -1
  358. package/frontend/build/server/chunks/5-BwLYF3xL.js +14 -0
  359. package/frontend/build/server/chunks/{5-Brx_KOzy.js.map → 5-BwLYF3xL.js.map} +1 -1
  360. package/frontend/build/server/chunks/6-DTM2N_k3.js +14 -0
  361. package/frontend/build/server/chunks/6-DTM2N_k3.js.map +5 -0
  362. package/frontend/build/server/chunks/7-DTNbErSe.js +14 -0
  363. package/frontend/build/server/chunks/7-DTNbErSe.js.map +5 -0
  364. package/frontend/build/server/chunks/8-BfCbb7pl.js +14 -0
  365. package/frontend/build/server/chunks/8-BfCbb7pl.js.map +5 -0
  366. package/frontend/build/server/chunks/9-CQKepnMw.js +14 -0
  367. package/frontend/build/server/chunks/{9-BMAKiAem.js.map → 9-CQKepnMw.js.map} +1 -1
  368. package/frontend/build/server/chunks/{Toast-CHB87F8k.js → Button-B9h9viZX.js} +3 -17
  369. package/frontend/build/server/chunks/Button-B9h9viZX.js.map +5 -0
  370. package/frontend/build/server/chunks/{ConfirmModal-CtGWHl0v.js → ConfirmModal-C6Cz898n.js} +2 -2
  371. package/frontend/build/server/chunks/{ConfirmModal-CtGWHl0v.js.map → ConfirmModal-C6Cz898n.js.map} +1 -1
  372. package/frontend/build/server/chunks/{EmptyState-Zpm9tJe1.js → EmptyState-CRtsJIv6.js} +2 -2
  373. package/frontend/build/server/chunks/{EmptyState-Zpm9tJe1.js.map → EmptyState-CRtsJIv6.js.map} +1 -1
  374. package/frontend/build/server/chunks/{_layout.svelte-C_6nsIpT.js → _layout.svelte-B8vZGefg.js} +6 -7
  375. package/frontend/build/server/chunks/_layout.svelte-B8vZGefg.js.map +5 -0
  376. package/frontend/build/server/chunks/{_page.svelte-CTebwzwy.js → _page.svelte-BrnXHxJ4.js} +14 -7
  377. package/frontend/build/server/chunks/_page.svelte-BrnXHxJ4.js.map +5 -0
  378. package/frontend/build/server/chunks/_page.svelte-C2WqvInJ.js +898 -0
  379. package/frontend/build/server/chunks/_page.svelte-C2WqvInJ.js.map +5 -0
  380. package/frontend/build/server/chunks/{_page.svelte-Bamoq11m.js → _page.svelte-CP6jA1ex.js} +6 -6
  381. package/frontend/build/server/chunks/{_page.svelte-Bamoq11m.js.map → _page.svelte-CP6jA1ex.js.map} +1 -1
  382. package/frontend/build/server/chunks/{_page.svelte-CbTrCeeX.js → _page.svelte-D6b-klLK.js} +9 -9
  383. package/frontend/build/server/chunks/{_page.svelte-CbTrCeeX.js.map → _page.svelte-D6b-klLK.js.map} +1 -1
  384. package/frontend/build/server/chunks/{_page.svelte-CmJKt3-H.js → _page.svelte-DBjTpquQ.js} +18 -21
  385. package/frontend/build/server/chunks/_page.svelte-DBjTpquQ.js.map +5 -0
  386. package/frontend/build/server/chunks/{_page.svelte-DHZhNTPg.js → _page.svelte-DM1_y4Oq.js} +60 -42
  387. package/frontend/build/server/chunks/_page.svelte-DM1_y4Oq.js.map +5 -0
  388. package/frontend/build/server/chunks/{_page.svelte-DObTHQe2.js → _page.svelte-Mo-O3HJ5.js} +7 -7
  389. package/frontend/build/server/chunks/{_page.svelte-DObTHQe2.js.map → _page.svelte-Mo-O3HJ5.js.map} +1 -1
  390. package/frontend/build/server/chunks/{_page.svelte-CAlhaCzS.js → _page.svelte-mZF4NrfU.js} +9 -12
  391. package/frontend/build/server/chunks/_page.svelte-mZF4NrfU.js.map +5 -0
  392. package/frontend/build/server/chunks/{_page.svelte-BNwU9zza.js → _page.svelte-nrlgIFaU.js} +8 -11
  393. package/frontend/build/server/chunks/_page.svelte-nrlgIFaU.js.map +5 -0
  394. package/frontend/build/server/chunks/{common-DYYTVHPw.js → common-DS-Z0UFe.js} +7 -2
  395. package/frontend/build/server/chunks/common-DS-Z0UFe.js.map +5 -0
  396. package/frontend/build/server/chunks/{constants-BYVkTZ-O.js → constants-OmHysD51.js} +2 -2
  397. package/frontend/build/server/chunks/{constants-BYVkTZ-O.js.map → constants-OmHysD51.js.map} +1 -1
  398. package/frontend/build/server/chunks/{format-2pqy61MU.js → format-Bqb0as15.js} +2 -2
  399. package/frontend/build/server/chunks/{format-2pqy61MU.js.map → format-Bqb0as15.js.map} +1 -1
  400. package/frontend/build/server/chunks/{reports-WuXG6tj3.js → reports-chCHCDzB.js} +2 -2
  401. package/frontend/build/server/chunks/{reports-WuXG6tj3.js.map → reports-chCHCDzB.js.map} +1 -1
  402. package/frontend/build/server/chunks/{reports2-CCpI0xkQ.js → reports2-Dr3zu9CD.js} +2 -2
  403. package/frontend/build/server/chunks/{reports2-CCpI0xkQ.js.map → reports2-Dr3zu9CD.js.map} +1 -1
  404. package/frontend/build/server/chunks/{repository-TYWcFuWP.js → repository-DSsWVKEb.js} +5 -3
  405. package/frontend/build/server/chunks/repository-DSsWVKEb.js.map +5 -0
  406. package/frontend/build/server/chunks/{runner-D5yCWOsy.js → runner-aaUtOqck.js} +3 -3
  407. package/frontend/build/server/chunks/{runner-D5yCWOsy.js.map → runner-aaUtOqck.js.map} +1 -1
  408. package/frontend/build/server/index.js +1 -1
  409. package/frontend/build/server/index.js.map +1 -1
  410. package/frontend/build/server/manifest.js +14 -14
  411. package/frontend/build/server/manifest.js.map +1 -1
  412. package/frontend/package-lock.json +14 -0
  413. package/frontend/package.json +2 -0
  414. package/frontend/src/lib/api/reports.js +7 -0
  415. package/frontend/src/lib/api/repository.js +28 -0
  416. package/frontend/src/lib/components/layout/RunnerPanel.svelte +2 -1
  417. package/frontend/src/lib/components/reports/RecordingPlayer.svelte +172 -2
  418. package/frontend/src/lib/components/ui/ExportMenu.svelte +154 -0
  419. package/frontend/src/lib/components/ui/NotificationStack.svelte +177 -0
  420. package/frontend/src/lib/constants.js +1 -1
  421. package/frontend/src/lib/copy/common.js +9 -0
  422. package/frontend/src/lib/copy/reports.js +20 -0
  423. package/frontend/src/lib/copy/repository.js +4 -0
  424. package/frontend/src/lib/copy/settings.js +15 -0
  425. package/frontend/src/lib/stores/notifications.js +23 -0
  426. package/frontend/src/lib/stores/replayVideo.js +51 -0
  427. package/frontend/src/lib/utils/download.js +28 -0
  428. package/frontend/src/lib/utils/replayCapture.js +91 -0
  429. package/frontend/src/lib/utils/replayVideo.js +111 -0
  430. package/frontend/src/routes/+layout.svelte +2 -0
  431. package/frontend/src/routes/reports/[id]/+page.svelte +38 -3
  432. package/frontend/src/routes/scheduled-tests/+page.svelte +9 -17
  433. package/frontend/src/routes/settings/+page.svelte +140 -56
  434. package/frontend/src/routes/test-repository/+page.svelte +44 -16
  435. package/frontend/src/routes/test-repository/runs/[id]/+page.svelte +14 -23
  436. package/frontend/src/routes/test-repository/suites/[id]/+page.svelte +38 -22
  437. package/package.json +1 -1
  438. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.5IJAEAjc.css +0 -6
  439. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.B9H_IpSU.css +0 -6
  440. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.COwSGmmy.css +0 -6
  441. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.Dp6vaGRc.css +0 -6
  442. package/frontend/.svelte-kit/generated/client/nodes/13.js +0 -6
  443. package/frontend/.svelte-kit/output/client/_app/immutable/assets/10.CdaQUS6U.css +0 -6
  444. package/frontend/.svelte-kit/output/client/_app/immutable/assets/12.B9H_IpSU.css +0 -6
  445. package/frontend/.svelte-kit/output/client/_app/immutable/assets/6.BN5XbLUX.css +0 -6
  446. package/frontend/.svelte-kit/output/client/_app/immutable/assets/8.COwSGmmy.css +0 -6
  447. package/frontend/.svelte-kit/output/client/_app/immutable/assets/Button.FOWXxvc7.css +0 -6
  448. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.5IJAEAjc.css +0 -6
  449. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.B9H_IpSU.css +0 -6
  450. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.COwSGmmy.css +0 -6
  451. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.Dp6vaGRc.css +0 -6
  452. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/2-KCkWZO.js +0 -6
  453. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BbYY_TzB.js +0 -6
  454. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Beula-TH.js +0 -11
  455. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CZWchtW8.js +0 -6
  456. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CegSvdD-.js +0 -6
  457. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Cfmt4_tJ.js +0 -6
  458. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DB3YXVFP.js +0 -6
  459. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DgQy0SB2.js +0 -6
  460. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DiVmSEJa.js +0 -8
  461. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Dl-F6VCo.js +0 -6
  462. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DuAVKaL3.js +0 -6
  463. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/K1h4wprj.js +0 -6
  464. package/frontend/.svelte-kit/output/client/_app/immutable/entry/app.DRjRA71t.js +0 -7
  465. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/0.CRb8Nyce.js +0 -6
  466. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/10.kyazROhw.js +0 -6
  467. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/11.B3vMgT2v.js +0 -6
  468. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/12.DkPcIrgW.js +0 -6
  469. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/3.DUiL7fb5.js +0 -6
  470. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/5.N4CeDeoD.js +0 -6
  471. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/6.DWd93Bv5.js +0 -10
  472. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/7.c8d1cQQM.js +0 -6
  473. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/8.Cvd3MauU.js +0 -9
  474. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.5IJAEAjc.css +0 -6
  475. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.B9H_IpSU.css +0 -6
  476. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.COwSGmmy.css +0 -6
  477. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.Dp6vaGRc.css +0 -6
  478. package/frontend/build/client/_app/immutable/assets/0.CmJTG5mP.css.br +0 -0
  479. package/frontend/build/client/_app/immutable/assets/0.CmJTG5mP.css.gz +0 -0
  480. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css +0 -6
  481. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css.br +0 -0
  482. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css.gz +0 -0
  483. package/frontend/build/client/_app/immutable/assets/12.B9H_IpSU.css +0 -6
  484. package/frontend/build/client/_app/immutable/assets/12.B9H_IpSU.css.br +0 -0
  485. package/frontend/build/client/_app/immutable/assets/12.B9H_IpSU.css.gz +0 -0
  486. package/frontend/build/client/_app/immutable/assets/6.BN5XbLUX.css +0 -6
  487. package/frontend/build/client/_app/immutable/assets/6.BN5XbLUX.css.br +0 -0
  488. package/frontend/build/client/_app/immutable/assets/6.BN5XbLUX.css.gz +0 -0
  489. package/frontend/build/client/_app/immutable/assets/8.COwSGmmy.css +0 -6
  490. package/frontend/build/client/_app/immutable/assets/8.COwSGmmy.css.br +0 -0
  491. package/frontend/build/client/_app/immutable/assets/8.COwSGmmy.css.gz +0 -0
  492. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css +0 -6
  493. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css.br +0 -0
  494. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css.gz +0 -0
  495. package/frontend/build/client/_app/immutable/assets/Toast.DENwYn3g.css.br +0 -0
  496. package/frontend/build/client/_app/immutable/assets/Toast.DENwYn3g.css.gz +0 -0
  497. package/frontend/build/client/_app/immutable/assets/_layout.HkPnpRl9.css.br +0 -0
  498. package/frontend/build/client/_app/immutable/assets/_layout.HkPnpRl9.css.gz +0 -0
  499. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css +0 -6
  500. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css.br +0 -0
  501. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css.gz +0 -0
  502. package/frontend/build/client/_app/immutable/assets/_page.B9H_IpSU.css +0 -6
  503. package/frontend/build/client/_app/immutable/assets/_page.B9H_IpSU.css.br +0 -0
  504. package/frontend/build/client/_app/immutable/assets/_page.B9H_IpSU.css.gz +0 -0
  505. package/frontend/build/client/_app/immutable/assets/_page.COwSGmmy.css +0 -6
  506. package/frontend/build/client/_app/immutable/assets/_page.COwSGmmy.css.br +0 -0
  507. package/frontend/build/client/_app/immutable/assets/_page.COwSGmmy.css.gz +0 -0
  508. package/frontend/build/client/_app/immutable/assets/_page.Dp6vaGRc.css +0 -6
  509. package/frontend/build/client/_app/immutable/assets/_page.Dp6vaGRc.css.br +0 -0
  510. package/frontend/build/client/_app/immutable/assets/_page.Dp6vaGRc.css.gz +0 -0
  511. package/frontend/build/client/_app/immutable/chunks/2-KCkWZO.js +0 -6
  512. package/frontend/build/client/_app/immutable/chunks/2-KCkWZO.js.br +0 -0
  513. package/frontend/build/client/_app/immutable/chunks/2-KCkWZO.js.gz +0 -0
  514. package/frontend/build/client/_app/immutable/chunks/B00vxw57.js.br +0 -0
  515. package/frontend/build/client/_app/immutable/chunks/B00vxw57.js.gz +0 -0
  516. package/frontend/build/client/_app/immutable/chunks/B0_HKFXV.js.br +0 -0
  517. package/frontend/build/client/_app/immutable/chunks/B0_HKFXV.js.gz +0 -0
  518. package/frontend/build/client/_app/immutable/chunks/BAvTKHxT.js.br +0 -0
  519. package/frontend/build/client/_app/immutable/chunks/BAvTKHxT.js.gz +0 -0
  520. package/frontend/build/client/_app/immutable/chunks/BJ_ypKl3.js.br +0 -0
  521. package/frontend/build/client/_app/immutable/chunks/BJ_ypKl3.js.gz +0 -0
  522. package/frontend/build/client/_app/immutable/chunks/BbYY_TzB.js +0 -6
  523. package/frontend/build/client/_app/immutable/chunks/BbYY_TzB.js.br +0 -0
  524. package/frontend/build/client/_app/immutable/chunks/BbYY_TzB.js.gz +0 -0
  525. package/frontend/build/client/_app/immutable/chunks/Beula-TH.js +0 -11
  526. package/frontend/build/client/_app/immutable/chunks/Beula-TH.js.br +0 -0
  527. package/frontend/build/client/_app/immutable/chunks/Beula-TH.js.gz +0 -0
  528. package/frontend/build/client/_app/immutable/chunks/C00jnSU2.js.br +0 -0
  529. package/frontend/build/client/_app/immutable/chunks/C00jnSU2.js.gz +0 -0
  530. package/frontend/build/client/_app/immutable/chunks/C2_rQ4aY.js.br +0 -0
  531. package/frontend/build/client/_app/immutable/chunks/C2_rQ4aY.js.gz +0 -0
  532. package/frontend/build/client/_app/immutable/chunks/C7uEQ-LH.js.br +0 -0
  533. package/frontend/build/client/_app/immutable/chunks/C7uEQ-LH.js.gz +0 -0
  534. package/frontend/build/client/_app/immutable/chunks/C8S7qQjQ.js.br +0 -0
  535. package/frontend/build/client/_app/immutable/chunks/C8S7qQjQ.js.gz +0 -0
  536. package/frontend/build/client/_app/immutable/chunks/CZWchtW8.js +0 -6
  537. package/frontend/build/client/_app/immutable/chunks/CZWchtW8.js.br +0 -0
  538. package/frontend/build/client/_app/immutable/chunks/CZWchtW8.js.gz +0 -0
  539. package/frontend/build/client/_app/immutable/chunks/CboYYxrf.js.br +0 -6
  540. package/frontend/build/client/_app/immutable/chunks/CboYYxrf.js.gz +0 -0
  541. package/frontend/build/client/_app/immutable/chunks/CeH-RgMb.js.br +0 -0
  542. package/frontend/build/client/_app/immutable/chunks/CegSvdD-.js +0 -6
  543. package/frontend/build/client/_app/immutable/chunks/CegSvdD-.js.br +0 -0
  544. package/frontend/build/client/_app/immutable/chunks/CegSvdD-.js.gz +0 -0
  545. package/frontend/build/client/_app/immutable/chunks/CfkUW1vA.js.br +0 -0
  546. package/frontend/build/client/_app/immutable/chunks/CfkUW1vA.js.gz +0 -0
  547. package/frontend/build/client/_app/immutable/chunks/Cfmt4_tJ.js +0 -6
  548. package/frontend/build/client/_app/immutable/chunks/Cfmt4_tJ.js.br +0 -0
  549. package/frontend/build/client/_app/immutable/chunks/Cfmt4_tJ.js.gz +0 -0
  550. package/frontend/build/client/_app/immutable/chunks/Cgw8TOOy.js.br +0 -0
  551. package/frontend/build/client/_app/immutable/chunks/Cgw8TOOy.js.gz +0 -0
  552. package/frontend/build/client/_app/immutable/chunks/Ck6C3Fl0.js.br +0 -0
  553. package/frontend/build/client/_app/immutable/chunks/Ck6C3Fl0.js.gz +0 -0
  554. package/frontend/build/client/_app/immutable/chunks/CoTEzvLa.js.br +0 -0
  555. package/frontend/build/client/_app/immutable/chunks/CoTEzvLa.js.gz +0 -0
  556. package/frontend/build/client/_app/immutable/chunks/DAmOMhaf.js.br +0 -0
  557. package/frontend/build/client/_app/immutable/chunks/DAmOMhaf.js.gz +0 -0
  558. package/frontend/build/client/_app/immutable/chunks/DB3YXVFP.js +0 -6
  559. package/frontend/build/client/_app/immutable/chunks/DB3YXVFP.js.br +0 -0
  560. package/frontend/build/client/_app/immutable/chunks/DB3YXVFP.js.gz +0 -0
  561. package/frontend/build/client/_app/immutable/chunks/DWzEJYIF.js.br +0 -7
  562. package/frontend/build/client/_app/immutable/chunks/DWzEJYIF.js.gz +0 -0
  563. package/frontend/build/client/_app/immutable/chunks/DgQy0SB2.js +0 -6
  564. package/frontend/build/client/_app/immutable/chunks/DgQy0SB2.js.br +0 -0
  565. package/frontend/build/client/_app/immutable/chunks/DgQy0SB2.js.gz +0 -0
  566. package/frontend/build/client/_app/immutable/chunks/DiVmSEJa.js +0 -8
  567. package/frontend/build/client/_app/immutable/chunks/DiVmSEJa.js.br +0 -0
  568. package/frontend/build/client/_app/immutable/chunks/DiVmSEJa.js.gz +0 -0
  569. package/frontend/build/client/_app/immutable/chunks/Dl-F6VCo.js +0 -6
  570. package/frontend/build/client/_app/immutable/chunks/Dl-F6VCo.js.br +0 -0
  571. package/frontend/build/client/_app/immutable/chunks/Dl-F6VCo.js.gz +0 -0
  572. package/frontend/build/client/_app/immutable/chunks/DuAVKaL3.js +0 -6
  573. package/frontend/build/client/_app/immutable/chunks/DuAVKaL3.js.br +0 -0
  574. package/frontend/build/client/_app/immutable/chunks/DuAVKaL3.js.gz +0 -0
  575. package/frontend/build/client/_app/immutable/chunks/GDjpV3r7.js.br +0 -0
  576. package/frontend/build/client/_app/immutable/chunks/GDjpV3r7.js.gz +0 -0
  577. package/frontend/build/client/_app/immutable/chunks/K1h4wprj.js +0 -6
  578. package/frontend/build/client/_app/immutable/chunks/K1h4wprj.js.br +0 -0
  579. package/frontend/build/client/_app/immutable/chunks/K1h4wprj.js.gz +0 -0
  580. package/frontend/build/client/_app/immutable/chunks/d2K3c8Kx.js.br +0 -0
  581. package/frontend/build/client/_app/immutable/chunks/d2K3c8Kx.js.gz +0 -0
  582. package/frontend/build/client/_app/immutable/entry/app.DRjRA71t.js +0 -7
  583. package/frontend/build/client/_app/immutable/entry/app.DRjRA71t.js.br +0 -0
  584. package/frontend/build/client/_app/immutable/entry/app.DRjRA71t.js.gz +0 -0
  585. package/frontend/build/client/_app/immutable/nodes/0.CRb8Nyce.js +0 -6
  586. package/frontend/build/client/_app/immutable/nodes/0.CRb8Nyce.js.br +0 -0
  587. package/frontend/build/client/_app/immutable/nodes/0.CRb8Nyce.js.gz +0 -0
  588. package/frontend/build/client/_app/immutable/nodes/1.BI97il3r.js.br +0 -0
  589. package/frontend/build/client/_app/immutable/nodes/1.BI97il3r.js.gz +0 -0
  590. package/frontend/build/client/_app/immutable/nodes/10.kyazROhw.js +0 -6
  591. package/frontend/build/client/_app/immutable/nodes/10.kyazROhw.js.br +0 -0
  592. package/frontend/build/client/_app/immutable/nodes/10.kyazROhw.js.gz +0 -0
  593. package/frontend/build/client/_app/immutable/nodes/11.B3vMgT2v.js +0 -6
  594. package/frontend/build/client/_app/immutable/nodes/11.B3vMgT2v.js.br +0 -0
  595. package/frontend/build/client/_app/immutable/nodes/11.B3vMgT2v.js.gz +0 -0
  596. package/frontend/build/client/_app/immutable/nodes/12.DkPcIrgW.js +0 -6
  597. package/frontend/build/client/_app/immutable/nodes/12.DkPcIrgW.js.br +0 -0
  598. package/frontend/build/client/_app/immutable/nodes/12.DkPcIrgW.js.gz +0 -0
  599. package/frontend/build/client/_app/immutable/nodes/2.Dr6yugXz.js.br +0 -0
  600. package/frontend/build/client/_app/immutable/nodes/2.Dr6yugXz.js.gz +0 -0
  601. package/frontend/build/client/_app/immutable/nodes/3.DUiL7fb5.js +0 -6
  602. package/frontend/build/client/_app/immutable/nodes/3.DUiL7fb5.js.br +0 -0
  603. package/frontend/build/client/_app/immutable/nodes/3.DUiL7fb5.js.gz +0 -0
  604. package/frontend/build/client/_app/immutable/nodes/4.DDADylfF.js.br +0 -0
  605. package/frontend/build/client/_app/immutable/nodes/4.DDADylfF.js.gz +0 -0
  606. package/frontend/build/client/_app/immutable/nodes/5.N4CeDeoD.js +0 -6
  607. package/frontend/build/client/_app/immutable/nodes/5.N4CeDeoD.js.br +0 -0
  608. package/frontend/build/client/_app/immutable/nodes/5.N4CeDeoD.js.gz +0 -0
  609. package/frontend/build/client/_app/immutable/nodes/6.DWd93Bv5.js +0 -10
  610. package/frontend/build/client/_app/immutable/nodes/6.DWd93Bv5.js.br +0 -0
  611. package/frontend/build/client/_app/immutable/nodes/6.DWd93Bv5.js.gz +0 -0
  612. package/frontend/build/client/_app/immutable/nodes/7.c8d1cQQM.js +0 -6
  613. package/frontend/build/client/_app/immutable/nodes/7.c8d1cQQM.js.br +0 -0
  614. package/frontend/build/client/_app/immutable/nodes/7.c8d1cQQM.js.gz +0 -0
  615. package/frontend/build/client/_app/immutable/nodes/8.Cvd3MauU.js +0 -9
  616. package/frontend/build/client/_app/immutable/nodes/8.Cvd3MauU.js.br +0 -0
  617. package/frontend/build/client/_app/immutable/nodes/8.Cvd3MauU.js.gz +0 -0
  618. package/frontend/build/client/_app/immutable/nodes/9.BOK0GNF_.js.br +0 -0
  619. package/frontend/build/client/_app/immutable/nodes/9.BOK0GNF_.js.gz +0 -0
  620. package/frontend/build/server/chunks/0-_rljpEay.js +0 -22
  621. package/frontend/build/server/chunks/0-_rljpEay.js.map +0 -5
  622. package/frontend/build/server/chunks/10-BQBBYpxV.js +0 -14
  623. package/frontend/build/server/chunks/10-BQBBYpxV.js.map +0 -5
  624. package/frontend/build/server/chunks/11-10xw0TIP.js +0 -14
  625. package/frontend/build/server/chunks/11-10xw0TIP.js.map +0 -5
  626. package/frontend/build/server/chunks/12-CZ3_Uw3c.js +0 -14
  627. package/frontend/build/server/chunks/12-CZ3_Uw3c.js.map +0 -5
  628. package/frontend/build/server/chunks/2-DioMbKbC.js +0 -14
  629. package/frontend/build/server/chunks/3-CgiZg_9v.js +0 -14
  630. package/frontend/build/server/chunks/4-BM-49dbE.js +0 -14
  631. package/frontend/build/server/chunks/5-Brx_KOzy.js +0 -14
  632. package/frontend/build/server/chunks/6-C5swINND.js +0 -14
  633. package/frontend/build/server/chunks/6-C5swINND.js.map +0 -5
  634. package/frontend/build/server/chunks/7-B8e4y3CB.js +0 -14
  635. package/frontend/build/server/chunks/7-B8e4y3CB.js.map +0 -5
  636. package/frontend/build/server/chunks/8-BZtkZMIZ.js +0 -14
  637. package/frontend/build/server/chunks/8-BZtkZMIZ.js.map +0 -5
  638. package/frontend/build/server/chunks/9-BMAKiAem.js +0 -14
  639. package/frontend/build/server/chunks/Toast-CHB87F8k.js.map +0 -5
  640. package/frontend/build/server/chunks/_layout.svelte-C_6nsIpT.js.map +0 -5
  641. package/frontend/build/server/chunks/_page.svelte-BNwU9zza.js.map +0 -5
  642. package/frontend/build/server/chunks/_page.svelte-CAlhaCzS.js.map +0 -5
  643. package/frontend/build/server/chunks/_page.svelte-CTebwzwy.js.map +0 -5
  644. package/frontend/build/server/chunks/_page.svelte-CmJKt3-H.js.map +0 -5
  645. package/frontend/build/server/chunks/_page.svelte-DHZhNTPg.js.map +0 -5
  646. package/frontend/build/server/chunks/_page.svelte-ywHy9KCh.js +0 -852
  647. package/frontend/build/server/chunks/_page.svelte-ywHy9KCh.js.map +0 -5
  648. package/frontend/build/server/chunks/common-DYYTVHPw.js.map +0 -5
  649. package/frontend/build/server/chunks/repository-TYWcFuWP.js.map +0 -5
  650. package/frontend/src/lib/components/ui/Toast.svelte +0 -24
@@ -1,8 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- var Yt=t=>{throw TypeError(t)};var Ce=(t,e,n)=>e.has(t)||Yt("Cannot "+n);var A=(t,e,n)=>(Ce(t,e,"read from private field"),n?n.call(t):e.get(t)),P=(t,e,n)=>e.has(t)?Yt("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n);import{w as Ct,o as zt,as as C,g as O,s as N,z as Oe}from"./CeH-RgMb.js";const Ne="1787938896439";new URL("sveltekit-internal://");function je(t,e){return t==="/"||e==="ignore"?t:e==="never"?t.endsWith("/")?t.slice(0,-1):t:e==="always"&&!t.endsWith("/")?t+"/":t}function $e(t){return t.split("%25").map(decodeURI).join("%25")}function De(t){for(const e in t)t[e]=decodeURIComponent(t[e]);return t}function Rt({href:t}){return t.split("#")[0]}function Fe(t,e,n,r=!1){const a=new URL(t);Object.defineProperty(a,"searchParams",{value:new Proxy(a.searchParams,{get(i,o){if(o==="get"||o==="getAll"||o==="has")return f=>(n(f),i[o](f));e();const c=Reflect.get(i,o);return typeof c=="function"?c.bind(i):c}}),enumerable:!0,configurable:!0});const s=["href","pathname","search","toString","toJSON"];r&&s.push("hash");for(const i of s)Object.defineProperty(a,i,{get(){return e(),t[i]},enumerable:!0,configurable:!0});return a}function Ve(...t){let e=5381;for(const n of t)if(typeof n=="string"){let r=n.length;for(;r;)e=e*33^n.charCodeAt(--r)}else if(ArrayBuffer.isView(n)){const r=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let a=r.length;for(;a;)e=e*33^r[--a]}else throw new TypeError("value must be a string or TypedArray");return(e>>>0).toString(36)}function Be(t){const e=atob(t),n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e.charCodeAt(r);return n.buffer}const Ge=window.fetch;window.fetch=(t,e)=>((t instanceof Request?t.method:(e==null?void 0:e.method)||"GET")!=="GET"&&W.delete(Ot(t)),Ge(t,e));const W=new Map;function Me(t,e){const n=Ot(t,e),r=document.querySelector(n);if(r!=null&&r.textContent){let{body:a,...s}=JSON.parse(r.textContent);const i=r.getAttribute("data-ttl");return i&&W.set(n,{body:a,init:s,ttl:1e3*Number(i)}),r.getAttribute("data-b64")!==null&&(a=Be(a)),Promise.resolve(new Response(a,s))}return window.fetch(t,e)}function qe(t,e,n){if(W.size>0){const r=Ot(t,n),a=W.get(r);if(a){if(performance.now()<a.ttl&&["default","force-cache","only-if-cached",void 0].includes(n==null?void 0:n.cache))return new Response(a.body,a.init);W.delete(r)}}return window.fetch(e,n)}function Ot(t,e){let r=`script[data-sveltekit-fetched][data-url=${JSON.stringify(t instanceof Request?t.url:t)}]`;if(e!=null&&e.headers||e!=null&&e.body){const a=[];e.headers&&a.push([...new Headers(e.headers)].join(",")),e.body&&(typeof e.body=="string"||ArrayBuffer.isView(e.body))&&a.push(e.body),r+=`[data-hash="${Ve(...a)}"]`}return r}const He=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Ke(t){const e=[];return{pattern:t==="/"?/^\/$/:new RegExp(`^${Ye(t).map(r=>{const a=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(a)return e.push({name:a[1],matcher:a[2],optional:!1,rest:!0,chained:!0}),"(?:/(.*))?";const s=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(s)return e.push({name:s[1],matcher:s[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const i=r.split(/\[(.+?)\](?!\])/);return"/"+i.map((c,f)=>{if(f%2){if(c.startsWith("x+"))return It(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return It(String.fromCharCode(...c.slice(2).split("-").map(d=>parseInt(d,16))));const u=He.exec(c),[,p,w,l,m]=u;return e.push({name:l,matcher:m,optional:!!p,rest:!!w,chained:w?f===1&&i[0]==="":!1}),w?"(.*?)":p?"([^/]*)?":"([^/]+?)"}return It(c)}).join("")}).join("")}/?$`),params:e}}function We(t){return!/^\([^)]+\)$/.test(t)}function Ye(t){return t.slice(1).split("/").filter(We)}function ze(t,e,n){const r={},a=t.slice(1),s=a.filter(o=>o!==void 0);let i=0;for(let o=0;o<e.length;o+=1){const c=e[o];let f=a[o-i];if(c.chained&&c.rest&&i&&(f=a.slice(o-i,o+1).filter(u=>u).join("/"),i=0),f===void 0){c.rest&&(r[c.name]="");continue}if(!c.matcher||n[c.matcher](f)){r[c.name]=f;const u=e[o+1],p=a[o+1];u&&!u.rest&&u.optional&&p&&c.chained&&(i=0),!u&&!p&&Object.keys(r).length===s.length&&(i=0);continue}if(c.optional&&c.chained){i++;continue}return}if(!i)return r}function It(t){return t.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function Je({nodes:t,server_loads:e,dictionary:n,matchers:r}){const a=new Set(e);return Object.entries(n).map(([o,[c,f,u]])=>{const{pattern:p,params:w}=Ke(o),l={id:o,exec:m=>{const d=p.exec(m);if(d)return ze(d,w,r)},errors:[1,...u||[]].map(m=>t[m]),layouts:[0,...f||[]].map(i),leaf:s(c)};return l.errors.length=l.layouts.length=Math.max(l.errors.length,l.layouts.length),l});function s(o){const c=o<0;return c&&(o=~o),[c,t[o]]}function i(o){return o===void 0?o:[a.has(o),t[o]]}}function fe(t,e=JSON.parse){try{return e(sessionStorage[t])}catch{}}function Jt(t,e,n=JSON.stringify){const r=n(e);try{sessionStorage[t]=r}catch{}}var oe;const x=((oe=globalThis.__sveltekit_1td29w7)==null?void 0:oe.base)??"";var se;const Xe=((se=globalThis.__sveltekit_1td29w7)==null?void 0:se.assets)??x,ue="sveltekit:snapshot",he="sveltekit:scroll",de="sveltekit:states",Ze="sveltekit:pageurl",G="sveltekit:history",J="sveltekit:navigation",ut={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ft=location.origin;function pe(t){if(t instanceof URL)return t;let e=document.baseURI;if(!e){const n=document.getElementsByTagName("base");e=n.length?n[0].href:document.URL}return new URL(t,e)}function Nt(){return{x:pageXOffset,y:pageYOffset}}function B(t,e){return t.getAttribute(`data-sveltekit-${e}`)}const Xt={...ut,"":ut.hover};function ge(t){let e=t.assignedSlot??t.parentNode;return(e==null?void 0:e.nodeType)===11&&(e=e.host),e}function me(t,e){for(;t&&t!==e;){if(t.nodeName.toUpperCase()==="A"&&t.hasAttribute("href"))return t;t=ge(t)}}function Tt(t,e,n){let r;try{if(r=new URL(t instanceof SVGAElement?t.href.baseVal:t.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";r.hash=`#${o}${r.hash}`}}catch{}const a=t instanceof SVGAElement?t.target.baseVal:t.target,s=!r||!!a||vt(r,e,n)||(t.getAttribute("rel")||"").split(/\s+/).includes("external"),i=(r==null?void 0:r.origin)===ft&&t.hasAttribute("download");return{url:r,external:s,target:a,download:i}}function ht(t){let e=null,n=null,r=null,a=null,s=null,i=null,o=t;for(;o&&o!==document.documentElement;)r===null&&(r=B(o,"preload-code")),a===null&&(a=B(o,"preload-data")),e===null&&(e=B(o,"keepfocus")),n===null&&(n=B(o,"noscroll")),s===null&&(s=B(o,"reload")),i===null&&(i=B(o,"replacestate")),o=ge(o);function c(f){switch(f){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:Xt[r??"off"],preload_data:Xt[a??"off"],keepfocus:c(e),noscroll:c(n),reload:c(s),replace_state:c(i)}}function Zt(t){const e=Ct(t);let n=!0;function r(){n=!0,e.update(i=>i)}function a(i){n=!1,e.set(i)}function s(i){let o;return e.subscribe(c=>{(o===void 0||n&&c!==o)&&i(o=c)})}return{notify:r,set:a,subscribe:s}}const we={v:()=>{}};function Qe(){const{set:t,subscribe:e}=Ct(!1);let n;async function r(){clearTimeout(n);try{const a=await fetch(`${Xe}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!a.ok)return!1;const i=(await a.json()).version!==Ne;return i&&(t(!0),we.v(),clearTimeout(n)),i}catch{return!1}}return{subscribe:e,check:r}}function vt(t,e,n){return t.origin!==ft||!t.pathname.startsWith(e)?!0:n?!(t.pathname===e+"/"||t.pathname===e+"/index.html"||t.protocol==="file:"&&t.pathname.replace(/\/[^/]+\.html?$/,"")===e):!1}function Qt(t){const e=en(t),n=new ArrayBuffer(e.length),r=new DataView(n);for(let a=0;a<n.byteLength;a++)r.setUint8(a,e.charCodeAt(a));return n}const tn="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function en(t){t.length%4===0&&(t=t.replace(/==?$/,""));let e="",n=0,r=0;for(let a=0;a<t.length;a++)n<<=6,n|=tn.indexOf(t[a]),r+=6,r===24&&(e+=String.fromCharCode((n&16711680)>>16),e+=String.fromCharCode((n&65280)>>8),e+=String.fromCharCode(n&255),n=r=0);return r===12?(n>>=4,e+=String.fromCharCode(n)):r===18&&(n>>=2,e+=String.fromCharCode((n&65280)>>8),e+=String.fromCharCode(n&255)),e}const nn=-1,rn=-2,an=-3,on=-4,sn=-5,cn=-6;function ln(t,e){if(typeof t=="number")return a(t,!0);if(!Array.isArray(t)||t.length===0)throw new Error("Invalid input");const n=t,r=Array(n.length);function a(s,i=!1){if(s===nn)return;if(s===an)return NaN;if(s===on)return 1/0;if(s===sn)return-1/0;if(s===cn)return-0;if(i)throw new Error("Invalid input");if(s in r)return r[s];const o=n[s];if(!o||typeof o!="object")r[s]=o;else if(Array.isArray(o))if(typeof o[0]=="string"){const c=o[0],f=e==null?void 0:e[c];if(f)return r[s]=f(a(o[1]));switch(c){case"Date":r[s]=new Date(o[1]);break;case"Set":const u=new Set;r[s]=u;for(let l=1;l<o.length;l+=1)u.add(a(o[l]));break;case"Map":const p=new Map;r[s]=p;for(let l=1;l<o.length;l+=2)p.set(a(o[l]),a(o[l+1]));break;case"RegExp":r[s]=new RegExp(o[1],o[2]);break;case"Object":r[s]=Object(o[1]);break;case"BigInt":r[s]=BigInt(o[1]);break;case"null":const w=Object.create(null);r[s]=w;for(let l=1;l<o.length;l+=2)w[o[l]]=a(o[l+1]);break;case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":{const l=globalThis[c],m=o[1],d=Qt(m),h=new l(d);r[s]=h;break}case"ArrayBuffer":{const l=o[1],m=Qt(l);r[s]=m;break}default:throw new Error(`Unknown type ${c}`)}}else{const c=new Array(o.length);r[s]=c;for(let f=0;f<o.length;f+=1){const u=o[f];u!==rn&&(c[f]=a(u))}}else{const c={};r[s]=c;for(const f in o){const u=o[f];c[f]=a(u)}}return r[s]}return a(0)}const ye=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...ye];const fn=new Set([...ye]);[...fn];function un(t){return t.filter(e=>e!=null)}class bt{constructor(e,n){this.status=e,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}}class jt{constructor(e,n){this.status=e,this.location=n}}class $t extends Error{constructor(e,n,r){super(r),this.status=e,this.text=n}}const hn="x-sveltekit-invalidated",dn="x-sveltekit-trailing-slash";function dt(t){return t instanceof bt||t instanceof $t?t.status:500}function pn(t){return t instanceof $t?t.text:"Internal Error"}let U,X,Ut;const gn=zt.toString().includes("$$")||/function \w+\(\) \{\}/.test(zt.toString());var tt,et,nt,rt,at,ot,st,it,ie,ct,ce,lt,le;gn?(U={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL("https://example.com")},X={current:null},Ut={current:!1}):(U=new(ie=class{constructor(){P(this,tt,C({}));P(this,et,C(null));P(this,nt,C(null));P(this,rt,C({}));P(this,at,C({id:null}));P(this,ot,C({}));P(this,st,C(-1));P(this,it,C(new URL("https://example.com")))}get data(){return O(A(this,tt))}set data(e){N(A(this,tt),e)}get form(){return O(A(this,et))}set form(e){N(A(this,et),e)}get error(){return O(A(this,nt))}set error(e){N(A(this,nt),e)}get params(){return O(A(this,rt))}set params(e){N(A(this,rt),e)}get route(){return O(A(this,at))}set route(e){N(A(this,at),e)}get state(){return O(A(this,ot))}set state(e){N(A(this,ot),e)}get status(){return O(A(this,st))}set status(e){N(A(this,st),e)}get url(){return O(A(this,it))}set url(e){N(A(this,it),e)}},tt=new WeakMap,et=new WeakMap,nt=new WeakMap,rt=new WeakMap,at=new WeakMap,ot=new WeakMap,st=new WeakMap,it=new WeakMap,ie),X=new(ce=class{constructor(){P(this,ct,C(null))}get current(){return O(A(this,ct))}set current(e){N(A(this,ct),e)}},ct=new WeakMap,ce),Ut=new(le=class{constructor(){P(this,lt,C(!1))}get current(){return O(A(this,lt))}set current(e){N(A(this,lt),e)}},lt=new WeakMap,le),we.v=()=>Ut.current=!0);function mn(t){Object.assign(U,t)}const wn="/__data.json",yn=".html__data.json";function _n(t){return t.endsWith(".html")?t.replace(/\.html$/,yn):t.replace(/\/$/,"")+wn}const vn=new Set(["icon","shortcut icon","apple-touch-icon"]),V=fe(he)??{},Z=fe(ue)??{},$={url:Zt({}),page:Zt({}),navigating:Ct(null),updated:Qe()};function Dt(t){V[t]=Nt()}function bn(t,e){let n=t+1;for(;V[n];)delete V[n],n+=1;for(n=e+1;Z[n];)delete Z[n],n+=1}function q(t){return location.href=t.href,new Promise(()=>{})}async function _e(){if("serviceWorker"in navigator){const t=await navigator.serviceWorker.getRegistration(x||"/");t&&await t.update()}}function te(){}let Ft,xt,pt,j,Pt,k;const gt=[],mt=[];let L=null;const ve=new Set,An=new Set,Y=new Set;let v={branch:[],error:null,url:null},Vt=!1,wt=!1,ee=!0,Q=!1,H=!1,be=!1,Bt=!1,Ae,R,T,F;const z=new Set;async function Vn(t,e,n){var a,s,i,o;document.URL!==location.href&&(location.href=location.href),k=t,await((s=(a=t.hooks).init)==null?void 0:s.call(a)),Ft=Je(t),j=document.documentElement,Pt=e,xt=t.nodes[0],pt=t.nodes[1],xt(),pt(),R=(i=history.state)==null?void 0:i[G],T=(o=history.state)==null?void 0:o[J],R||(R=T=Date.now(),history.replaceState({...history.state,[G]:R,[J]:T},""));const r=V[R];r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y)),n?await Cn(Pt,n):await Tn(k.hash?Pe(new URL(location.href)):location.href,{replaceState:!0}),Pn()}function kn(){gt.length=0,Bt=!1}function ke(t){mt.some(e=>e==null?void 0:e.snapshot)&&(Z[t]=mt.map(e=>{var n;return(n=e==null?void 0:e.snapshot)==null?void 0:n.capture()}))}function Se(t){var e;(e=Z[t])==null||e.forEach((n,r)=>{var a,s;(s=(a=mt[r])==null?void 0:a.snapshot)==null||s.restore(n)})}function ne(){Dt(R),Jt(he,V),ke(T),Jt(ue,Z)}async function Gt(t,e,n,r){return K({type:"goto",url:pe(t),keepfocus:e.keepFocus,noscroll:e.noScroll,replace_state:e.replaceState,state:e.state,redirect_count:n,nav_token:r,accept:()=>{e.invalidateAll&&(Bt=!0),e.invalidate&&e.invalidate.forEach(xn)}})}async function Sn(t){if(t.id!==(L==null?void 0:L.id)){const e={};z.add(e),L={id:t.id,token:e,promise:Re({...t,preload:e}).then(n=>(z.delete(e),n.type==="loaded"&&n.state.error&&(L=null),n))}}return L.promise}async function Lt(t){var n;const e=(n=await kt(t,!1))==null?void 0:n.route;e&&await Promise.all([...e.layouts,e.leaf].map(r=>r==null?void 0:r[1]()))}function Ee(t,e,n){var s;v=t.state;const r=document.querySelector("style[data-sveltekit]");r&&r.remove(),Object.assign(U,t.props.page),Ae=new k.root({target:e,props:{...t.props,stores:$,components:mt},hydrate:n,sync:!1}),Se(T);const a={from:null,to:{params:v.params,route:{id:((s=v.route)==null?void 0:s.id)??null},url:new URL(location.href)},willUnload:!1,type:"enter",complete:Promise.resolve()};Y.forEach(i=>i(a)),wt=!0}function yt({url:t,params:e,branch:n,status:r,error:a,route:s,form:i}){let o="never";if(x&&(t.pathname===x||t.pathname===x+"/"))o="always";else for(const l of n)(l==null?void 0:l.slash)!==void 0&&(o=l.slash);t.pathname=je(t.pathname,o),t.search=t.search;const c={type:"loaded",state:{url:t,params:e,branch:n,error:a,route:s},props:{constructors:un(n).map(l=>l.node.component),page:Ht(U)}};i!==void 0&&(c.props.form=i);let f={},u=!U,p=0;for(let l=0;l<Math.max(n.length,v.branch.length);l+=1){const m=n[l],d=v.branch[l];(m==null?void 0:m.data)!==(d==null?void 0:d.data)&&(u=!0),m&&(f={...f,...m.data},u&&(c.props[`data_${p}`]=f),p+=1)}return(!v.url||t.href!==v.url.href||v.error!==a||i!==void 0&&i!==U.form||u)&&(c.props.page={error:a,params:e,route:{id:(s==null?void 0:s.id)??null},state:{},status:r,url:new URL(t),form:i??null,data:u?f:U.data}),c}async function Mt({loader:t,parent:e,url:n,params:r,route:a,server_data_node:s}){var u,p,w;let i=null,o=!0;const c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},f=await t();if((u=f.universal)!=null&&u.load){let l=function(...d){for(const h of d){const{href:y}=new URL(h,n);c.dependencies.add(y)}};const m={route:new Proxy(a,{get:(d,h)=>(o&&(c.route=!0),d[h])}),params:new Proxy(r,{get:(d,h)=>(o&&c.params.add(h),d[h])}),data:(s==null?void 0:s.data)??null,url:Fe(n,()=>{o&&(c.url=!0)},d=>{o&&c.search_params.add(d)},k.hash),async fetch(d,h){let y;d instanceof Request?(y=d.url,h={body:d.method==="GET"||d.method==="HEAD"?void 0:await d.blob(),cache:d.cache,credentials:d.credentials,headers:[...d.headers].length?d.headers:void 0,integrity:d.integrity,keepalive:d.keepalive,method:d.method,mode:d.mode,redirect:d.redirect,referrer:d.referrer,referrerPolicy:d.referrerPolicy,signal:d.signal,...h}):y=d;const S=new URL(y,n);return o&&l(S.href),S.origin===n.origin&&(y=S.href.slice(n.origin.length)),wt?qe(y,S.href,h):Me(y,h)},setHeaders:()=>{},depends:l,parent(){return o&&(c.parent=!0),e()},untrack(d){o=!1;try{return d()}finally{o=!0}}};i=await f.universal.load.call(null,m)??null}return{node:f,loader:t,server:s,universal:(p=f.universal)!=null&&p.load?{type:"data",data:i,uses:c}:null,data:i??(s==null?void 0:s.data)??null,slash:((w=f.universal)==null?void 0:w.trailingSlash)??(s==null?void 0:s.slash)}}function re(t,e,n,r,a,s){if(Bt)return!0;if(!a)return!1;if(a.parent&&t||a.route&&e||a.url&&n)return!0;for(const i of a.search_params)if(r.has(i))return!0;for(const i of a.params)if(s[i]!==v.params[i])return!0;for(const i of a.dependencies)if(gt.some(o=>o(new URL(i))))return!0;return!1}function qt(t,e){return(t==null?void 0:t.type)==="data"?t:(t==null?void 0:t.type)==="skip"?e??null:null}function En(t,e){if(!t)return new Set(e.searchParams.keys());const n=new Set([...t.searchParams.keys(),...e.searchParams.keys()]);for(const r of n){const a=t.searchParams.getAll(r),s=e.searchParams.getAll(r);a.every(i=>s.includes(i))&&s.every(i=>a.includes(i))&&n.delete(r)}return n}function ae({error:t,url:e,route:n,params:r}){return{type:"loaded",state:{error:t,url:e,route:n,params:r,branch:[]},props:{page:Ht(U),constructors:[]}}}async function Re({id:t,invalidating:e,url:n,params:r,route:a,preload:s}){if((L==null?void 0:L.id)===t)return z.delete(L.token),L.promise;const{errors:i,layouts:o,leaf:c}=a,f=[...o,c];i.forEach(g=>g==null?void 0:g().catch(()=>{})),f.forEach(g=>g==null?void 0:g[1]().catch(()=>{}));let u=null;const p=v.url?t!==_t(v.url):!1,w=v.route?a.id!==v.route.id:!1,l=En(v.url,n);let m=!1;const d=f.map((g,_)=>{var D;const b=v.branch[_],E=!!(g!=null&&g[0])&&((b==null?void 0:b.loader)!==g[1]||re(m,w,p,l,(D=b.server)==null?void 0:D.uses,r));return E&&(m=!0),E});if(d.some(Boolean)){try{u=await Le(n,d)}catch(g){const _=await M(g,{url:n,params:r,route:{id:t}});return z.has(s)?ae({error:_,url:n,params:r,route:a}):At({status:dt(g),error:_,url:n,route:a})}if(u.type==="redirect")return u}const h=u==null?void 0:u.nodes;let y=!1;const S=f.map(async(g,_)=>{var St;if(!g)return;const b=v.branch[_],E=h==null?void 0:h[_];if((!E||E.type==="skip")&&g[1]===(b==null?void 0:b.loader)&&!re(y,w,p,l,(St=b.universal)==null?void 0:St.uses,r))return b;if(y=!0,(E==null?void 0:E.type)==="error")throw E;return Mt({loader:g[1],url:n,params:r,route:a,parent:async()=>{var Wt;const Kt={};for(let Et=0;Et<_;Et+=1)Object.assign(Kt,(Wt=await S[Et])==null?void 0:Wt.data);return Kt},server_data_node:qt(E===void 0&&g[0]?{type:"skip"}:E??null,g[0]?b==null?void 0:b.server:void 0)})});for(const g of S)g.catch(()=>{});const I=[];for(let g=0;g<f.length;g+=1)if(f[g])try{I.push(await S[g])}catch(_){if(_ instanceof jt)return{type:"redirect",location:_.location};if(z.has(s))return ae({error:await M(_,{params:r,url:n,route:{id:a.id}}),url:n,params:r,route:a});let b=dt(_),E;if(h!=null&&h.includes(_))b=_.status??b,E=_.error;else if(_ instanceof bt)E=_.body;else{if(await $.updated.check())return await _e(),await q(n);E=await M(_,{params:r,url:n,route:{id:a.id}})}const D=await Rn(g,I,i);return D?yt({url:n,params:r,branch:I.slice(0,D.idx).concat(D.node),status:b,error:E,route:a}):await Ue(n,{id:a.id},E,b)}else I.push(void 0);return yt({url:n,params:r,branch:I,status:200,error:null,route:a,form:e?void 0:null})}async function Rn(t,e,n){for(;t--;)if(n[t]){let r=t;for(;!e[r];)r-=1;try{return{idx:r+1,node:{node:await n[t](),loader:n[t],data:{},server:null,universal:null}}}catch{continue}}}async function At({status:t,error:e,url:n,route:r}){const a={};let s=null;if(k.server_loads[0]===0)try{const o=await Le(n,[!0]);if(o.type!=="data"||o.nodes[0]&&o.nodes[0].type!=="data")throw 0;s=o.nodes[0]??null}catch{(n.origin!==ft||n.pathname!==location.pathname||Vt)&&await q(n)}try{const o=await Mt({loader:xt,url:n,params:a,route:r,parent:()=>Promise.resolve({}),server_data_node:qt(s)}),c={node:await pt(),loader:pt,universal:null,server:null,data:null};return yt({url:n,params:a,branch:[o,c],status:t,error:e,route:null})}catch(o){if(o instanceof jt)return Gt(new URL(o.location,location.href),{},0);throw o}}function In(t){let e;try{if(e=k.hooks.reroute({url:new URL(t)})??t,typeof e=="string"){const n=new URL(t);k.hash?n.hash=e:n.pathname=e,e=n}}catch{return}return e}async function kt(t,e){if(t&&!vt(t,x,k.hash)){const n=In(t);if(!n)return;const r=Un(n);for(const a of Ft){const s=a.exec(r);if(s)return{id:_t(t),invalidating:e,route:a,params:De(s),url:t}}}}function Un(t){return $e(k.hash?t.hash.replace(/^#/,"").replace(/[?#].+/,""):t.pathname.slice(x.length))||"/"}function _t(t){return(k.hash?t.hash.replace(/^#/,""):t.pathname)+t.search}function Ie({url:t,type:e,intent:n,delta:r}){let a=!1;const s=xe(v,n,t,e);r!==void 0&&(s.navigation.delta=r);const i={...s.navigation,cancel:()=>{a=!0,s.reject(new Error("navigation cancelled"))}};return Q||ve.forEach(o=>o(i)),a?null:s}async function K({type:t,url:e,popped:n,keepfocus:r,noscroll:a,replace_state:s,state:i={},redirect_count:o=0,nav_token:c={},accept:f=te,block:u=te}){const p=F;F=c;const w=await kt(e,!1),l=Ie({url:e,type:t,delta:n==null?void 0:n.delta,intent:w});if(!l){u(),F===c&&(F=p);return}const m=R,d=T;f(),Q=!0,wt&&$.navigating.set(X.current=l.navigation);let h=w&&await Re(w);if(!h){if(vt(e,x,k.hash))return await q(e);h=await Ue(e,{id:null},await M(new $t(404,"Not Found",`Not found: ${e.pathname}`),{url:e,params:{},route:{id:null}}),404)}if(e=(w==null?void 0:w.url)||e,F!==c)return l.reject(new Error("navigation aborted")),!1;if(h.type==="redirect")if(o>=20)h=await At({status:500,error:await M(new Error("Redirect loop"),{url:e,params:{},route:{id:null}}),url:e,route:{id:null}});else return await Gt(new URL(h.location,e).href,{},o+1,c),!1;else h.props.page.status>=400&&await $.updated.check()&&(await _e(),await q(e));if(kn(),Dt(m),ke(d),h.props.page.url.pathname!==e.pathname&&(e.pathname=h.props.page.url.pathname),i=n?n.state:i,!n){const g=s?0:1,_={[G]:R+=g,[J]:T+=g,[de]:i};(s?history.replaceState:history.pushState).call(history,_,"",e),s||bn(R,T)}if(L=null,h.props.page.state=i,wt){v=h.state,h.props.page&&(h.props.page.url=e);const g=(await Promise.all(Array.from(An,_=>_(l.navigation)))).filter(_=>typeof _=="function");if(g.length>0){let _=function(){g.forEach(b=>{Y.delete(b)})};g.push(_),g.forEach(b=>{Y.add(b)})}Ae.$set(h.props),mn(h.props.page),be=!0}else Ee(h,Pt,!1);const{activeElement:y}=document;await Oe();const S=n?n.scroll:a?Nt():null;if(ee){const g=e.hash&&document.getElementById(decodeURIComponent(k.hash?e.hash.split("#")[2]??"":e.hash.slice(1)));S?scrollTo(S.x,S.y):g?g.scrollIntoView():scrollTo(0,0)}const I=document.activeElement!==y&&document.activeElement!==document.body;!r&&!I&&On(),ee=!0,h.props.page&&Object.assign(U,h.props.page),Q=!1,t==="popstate"&&Se(T),l.fulfil(void 0),Y.forEach(g=>g(l.navigation)),$.navigating.set(X.current=null)}async function Ue(t,e,n,r){return t.origin===ft&&t.pathname===location.pathname&&!Vt?await At({status:r,error:n,url:t,route:e}):await q(t)}function Ln(){let t,e;j.addEventListener("mousemove",i=>{const o=i.target;clearTimeout(t),t=setTimeout(()=>{a(o,2)},20)});function n(i){i.defaultPrevented||a(i.composedPath()[0],1)}j.addEventListener("mousedown",n),j.addEventListener("touchstart",n,{passive:!0});const r=new IntersectionObserver(i=>{for(const o of i)o.isIntersecting&&(Lt(new URL(o.target.href)),r.unobserve(o.target))},{threshold:0});async function a(i,o){const c=me(i,j);if(!c||c===e)return;e=c;const{url:f,external:u,download:p}=Tt(c,x,k.hash);if(u||p)return;const w=ht(c),l=f&&_t(v.url)===_t(f);if(!w.reload&&!l)if(o<=w.preload_data){const m=await kt(f,!1);m&&Sn(m)}else o<=w.preload_code&&Lt(f)}function s(){r.disconnect();for(const i of j.querySelectorAll("a")){const{url:o,external:c,download:f}=Tt(i,x,k.hash);if(c||f)continue;const u=ht(i);u.reload||(u.preload_code===ut.viewport&&r.observe(i),u.preload_code===ut.eager&&Lt(o))}}Y.add(s),s()}function M(t,e){if(t instanceof bt)return t.body;const n=dt(t),r=pn(t);return k.hooks.handleError({error:t,event:e,status:n,message:r})??{message:r}}function Tn(t,e={}){return t=new URL(pe(t)),t.origin!==ft?Promise.reject(new Error("goto: invalid URL")):Gt(t,e,0)}function xn(t){if(typeof t=="function")gt.push(t);else{const{href:e}=new URL(t,location.href);gt.push(n=>n.href===e)}}function Pn(){var e;history.scrollRestoration="manual",addEventListener("beforeunload",n=>{let r=!1;if(ne(),!Q){const a=xe(v,void 0,null,"leave"),s={...a.navigation,cancel:()=>{r=!0,a.reject(new Error("navigation cancelled"))}};ve.forEach(i=>i(s))}r?(n.preventDefault(),n.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&ne()}),(e=navigator.connection)!=null&&e.saveData||Ln(),j.addEventListener("click",async n=>{if(n.button||n.which!==1||n.metaKey||n.ctrlKey||n.shiftKey||n.altKey||n.defaultPrevented)return;const r=me(n.composedPath()[0],j);if(!r)return;const{url:a,external:s,target:i,download:o}=Tt(r,x,k.hash);if(!a)return;if(i==="_parent"||i==="_top"){if(window.parent!==window)return}else if(i&&i!=="_self")return;const c=ht(r);if(!(r instanceof SVGAElement)&&a.protocol!==location.protocol&&!(a.protocol==="https:"||a.protocol==="http:")||o)return;const[u,p]=(k.hash?a.hash.replace(/^#/,""):a.href).split("#"),w=u===Rt(location);if(s||c.reload&&(!w||!p)){Ie({url:a,type:"link"})?Q=!0:n.preventDefault();return}if(p!==void 0&&w){const[,l]=v.url.href.split("#");if(l===p){if(n.preventDefault(),p===""||p==="top"&&r.ownerDocument.getElementById("top")===null)window.scrollTo({top:0});else{const m=r.ownerDocument.getElementById(decodeURIComponent(p));m&&(m.scrollIntoView(),m.focus())}return}if(H=!0,Dt(R),t(a),!c.replace_state)return;H=!1}n.preventDefault(),await new Promise(l=>{requestAnimationFrame(()=>{setTimeout(l,0)}),setTimeout(l,100)}),await K({type:"link",url:a,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??a.href===location.href})}),j.addEventListener("submit",n=>{if(n.defaultPrevented)return;const r=HTMLFormElement.prototype.cloneNode.call(n.target),a=n.submitter;if(((a==null?void 0:a.formTarget)||r.target)==="_blank"||((a==null?void 0:a.formMethod)||r.method)!=="get")return;const o=new URL((a==null?void 0:a.hasAttribute("formaction"))&&(a==null?void 0:a.formAction)||r.action);if(vt(o,x,!1))return;const c=n.target,f=ht(c);if(f.reload)return;n.preventDefault(),n.stopPropagation();const u=new FormData(c),p=a==null?void 0:a.getAttribute("name");p&&u.append(p,(a==null?void 0:a.getAttribute("value"))??""),o.search=new URLSearchParams(u).toString(),K({type:"form",url:o,keepfocus:f.keepfocus,noscroll:f.noscroll,replace_state:f.replace_state??o.href===location.href})}),addEventListener("popstate",async n=>{var r;if((r=n.state)!=null&&r[G]){const a=n.state[G];if(F={},a===R)return;const s=V[a],i=n.state[de]??{},o=new URL(n.state[Ze]??location.href),c=n.state[J],f=v.url?Rt(location)===Rt(v.url):!1;if(c===T&&(be||f)){i!==U.state&&(U.state=i),t(o),V[R]=Nt(),s&&scrollTo(s.x,s.y),R=a;return}const p=a-R;await K({type:"popstate",url:o,popped:{state:i,scroll:s,delta:p},accept:()=>{R=a,T=c},block:()=>{history.go(-p)},nav_token:F})}else if(!H){const a=new URL(location.href);t(a)}}),addEventListener("hashchange",()=>{H?(H=!1,history.replaceState({...history.state,[G]:++R,[J]:T},"",location.href)):k.hash&&v.url.hash===location.hash&&K({type:"goto",url:Pe(v.url)})});for(const n of document.querySelectorAll("link"))vn.has(n.rel)&&(n.href=n.href);addEventListener("pageshow",n=>{n.persisted&&$.navigating.set(X.current=null)});function t(n){v.url=U.url=n,$.page.set(Ht(U)),$.page.notify()}}async function Cn(t,{status:e=200,error:n,node_ids:r,params:a,route:s,server_route:i,data:o,form:c}){Vt=!0;const f=new URL(location.href);let u;({params:a={},route:s={id:null}}=await kt(f,!1)||{}),u=Ft.find(({id:l})=>l===s.id);let p,w=!0;try{const l=r.map(async(d,h)=>{const y=o[h];return y!=null&&y.uses&&(y.uses=Te(y.uses)),Mt({loader:k.nodes[d],url:f,params:a,route:s,parent:async()=>{const S={};for(let I=0;I<h;I+=1)Object.assign(S,(await l[I]).data);return S},server_data_node:qt(y)})}),m=await Promise.all(l);if(u){const d=u.layouts;for(let h=0;h<d.length;h++)d[h]||m.splice(h,0,void 0)}p=yt({url:f,params:a,branch:m,status:e,error:n,form:c,route:u??null})}catch(l){if(l instanceof jt){await q(new URL(l.location,location.href));return}p=await At({status:dt(l),error:await M(l,{url:f,params:a,route:s}),url:f,route:s}),t.textContent="",w=!1}p.props.page&&(p.props.page.state={}),Ee(p,t,w)}async function Le(t,e){var s;const n=new URL(t);n.pathname=_n(t.pathname),t.pathname.endsWith("/")&&n.searchParams.append(dn,"1"),n.searchParams.append(hn,e.map(i=>i?"1":"0").join(""));const r=window.fetch,a=await r(n.href,{});if(!a.ok){let i;throw(s=a.headers.get("content-type"))!=null&&s.includes("application/json")?i=await a.json():a.status===404?i="Not Found":a.status===500&&(i="Internal Error"),new bt(a.status,i)}return new Promise(async i=>{var w;const o=new Map,c=a.body.getReader(),f=new TextDecoder;function u(l){return ln(l,{...k.decoders,Promise:m=>new Promise((d,h)=>{o.set(m,{fulfil:d,reject:h})})})}let p="";for(;;){const{done:l,value:m}=await c.read();if(l&&!p)break;for(p+=!m&&p?`
7
- `:f.decode(m,{stream:!0});;){const d=p.indexOf(`
8
- `);if(d===-1)break;const h=JSON.parse(p.slice(0,d));if(p=p.slice(d+1),h.type==="redirect")return i(h);if(h.type==="data")(w=h.nodes)==null||w.forEach(y=>{(y==null?void 0:y.type)==="data"&&(y.uses=Te(y.uses),y.data=u(y.data))}),i(h);else if(h.type==="chunk"){const{id:y,data:S,error:I}=h,g=o.get(y);o.delete(y),I?g.reject(u(I)):g.fulfil(u(S))}}}})}function Te(t){return{dependencies:new Set((t==null?void 0:t.dependencies)??[]),params:new Set((t==null?void 0:t.params)??[]),parent:!!(t!=null&&t.parent),route:!!(t!=null&&t.route),url:!!(t!=null&&t.url),search_params:new Set((t==null?void 0:t.search_params)??[])}}function On(){const t=document.querySelector("[autofocus]");if(t)t.focus();else{const e=document.body,n=e.getAttribute("tabindex");e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),n!==null?e.setAttribute("tabindex",n):e.removeAttribute("tabindex");const r=getSelection();if(r&&r.type!=="None"){const a=[];for(let s=0;s<r.rangeCount;s+=1)a.push(r.getRangeAt(s));setTimeout(()=>{if(r.rangeCount===a.length){for(let s=0;s<r.rangeCount;s+=1){const i=a[s],o=r.getRangeAt(s);if(i.commonAncestorContainer!==o.commonAncestorContainer||i.startContainer!==o.startContainer||i.endContainer!==o.endContainer||i.startOffset!==o.startOffset||i.endOffset!==o.endOffset)return}r.removeAllRanges()}})}}}function xe(t,e,n,r){var c,f;let a,s;const i=new Promise((u,p)=>{a=u,s=p});return i.catch(()=>{}),{navigation:{from:{params:t.params,route:{id:((c=t.route)==null?void 0:c.id)??null},url:t.url},to:n&&{params:(e==null?void 0:e.params)??null,route:{id:((f=e==null?void 0:e.route)==null?void 0:f.id)??null},url:n},willUnload:!e,type:r,complete:i},fulfil:a,reject:s}}function Ht(t){return{data:t.data,error:t.error,form:t.form,params:t.params,route:t.route,state:t.state,status:t.status,url:t.url}}function Pe(t){const e=new URL(t);return e.hash=decodeURIComponent(t.hash),e}export{Vn as a,Tn as g,U as p,$ as s};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{A as n,a as u}from"./DuAVKaL3.js";import{a as d}from"./Ck6C3Fl0.js";function f(){return d.getToken()}function o(){return{"Content-Type":"application/json",Authorization:`Bearer ${f()}`}}async function y({page:t=1,limit:e=u,sortBy:s,sortOrder:r}={}){const a=new URLSearchParams({page:t,limit:e});s&&a.set("sortBy",s),r&&a.set("sortOrder",r);const i=await fetch(`${n}/test-suites?${a}`,{headers:o()});if(!i.ok)throw new Error("Failed to fetch suites");return i.json()}async function $(){const t=await fetch(`${n}/test-suites?withCases=true`,{headers:o()});if(!t.ok)throw new Error("Failed to fetch suites");return(await t.json()).suites}async function l(t){const e=encodeURIComponent(t),[s,r]=await Promise.all([fetch(`${n}/test-suites?q=${e}`,{headers:o()}),fetch(`${n}/test-runs?q=${e}&limit=50`,{headers:o()})]),{suites:a,cases:i}=await s.json(),{runs:c}=await r.json();return{suites:a,cases:i,runs:c}}async function E(t){const e=await fetch(`${n}/test-suites/${t}`,{headers:o()});if(!e.ok)throw new Error("Suite not found");return(await e.json()).suite}async function m({name:t,description:e,priority:s}){const r=await fetch(`${n}/test-suites`,{method:"POST",headers:o(),body:JSON.stringify({name:t,description:e,priority:s})}),a=await r.json();if(!r.ok)throw new Error(a.error??"Failed to create suite");return a.suite}async function S(t,{name:e,description:s,priority:r}){const a=await fetch(`${n}/test-suites/${t}`,{method:"PUT",headers:o(),body:JSON.stringify({name:e,description:s,priority:r})}),i=await a.json();if(!a.ok)throw new Error(i.error??"Failed to update suite");return i.suite}async function p(t){if(!(await fetch(`${n}/test-suites/${t}`,{method:"DELETE",headers:o()})).ok)throw new Error("Failed to delete suite")}async function j(t){const e=await fetch(`${n}/test-cases/${t}`,{headers:o()});if(!e.ok)throw new Error("Test case not found");return(await e.json()).testCase}async function k({suiteId:t,title:e,description:s,priority:r}){const a=await fetch(`${n}/test-cases`,{method:"POST",headers:o(),body:JSON.stringify({suiteId:t,title:e,description:s,priority:r})}),i=await a.json();if(!a.ok)throw new Error(i.error??"Failed to create test case");return i.testCase}async function T(t,{title:e,description:s,priority:r,suiteId:a}){const i=await fetch(`${n}/test-cases/${t}`,{method:"PUT",headers:o(),body:JSON.stringify({title:e,description:s,priority:r,suiteId:a})}),c=await i.json();if(!i.ok)throw new Error(c.error??"Failed to update test case");return c.testCase}async function g(t,e){const s=await fetch(`${n}/test-cases/${t}/steps`,{method:"PUT",headers:o(),body:JSON.stringify({steps:e})}),r=await s.json();if(!s.ok)throw new Error(r.error??"Failed to save steps");return r.steps}async function P(t){if(!(await fetch(`${n}/test-cases/${t}`,{method:"DELETE",headers:o()})).ok)throw new Error("Failed to delete test case")}async function O({page:t=1,limit:e=u,sortBy:s,sortOrder:r}={}){const a=new URLSearchParams({page:t,limit:e});s&&a.set("sortBy",s),r&&a.set("sortOrder",r);const i=await fetch(`${n}/test-runs?${a}`,{headers:o()});if(!i.ok)throw new Error("Failed to fetch test runs");return i.json()}async function F(t){const e=await fetch(`${n}/test-runs/${t}`,{headers:o()});if(!e.ok)throw new Error("Test run not found");return(await e.json()).run}async function b({title:t,caseIds:e}){const s=await fetch(`${n}/test-runs`,{method:"POST",headers:o(),body:JSON.stringify({title:t,caseIds:e})}),r=await s.json();if(!s.ok)throw new Error(r.error??"Failed to create test run");return r.run}async function R(t,{title:e,status:s,caseIds:r}){const a=await fetch(`${n}/test-runs/${t}`,{method:"PUT",headers:o(),body:JSON.stringify({title:e,status:s,caseIds:r})}),i=await a.json();if(!a.ok)throw new Error(i.error??"Failed to update test run");return i.run}async function C(t){const e=await fetch(`${n}/test-runs/${t}/duplicate`,{method:"POST",headers:o()}),s=await e.json();if(!e.ok)throw new Error(s.error??"Failed to duplicate run");return s.run}async function J(t){if(!(await fetch(`${n}/test-runs/${t}`,{method:"DELETE",headers:o()})).ok)throw new Error("Failed to delete test run")}async function N(t,{status:e,notes:s}){const r=await fetch(`${n}/test-runs/entries/${t}/result`,{method:"POST",headers:o(),body:JSON.stringify({status:e,notes:s})}),a=await r.json();if(!r.ok)throw new Error(a.error??"Failed to record result");return a.entry}async function x(t,e){const s=await fetch(`${n}/test-runs/entries/${t}/assign`,{method:"PUT",headers:o(),body:JSON.stringify({userId:e??null})}),r=await s.json();if(!s.ok)throw new Error(r.error??"Failed to assign entry");return r.entry}async function U(){const t=await fetch(`${n}/users/members`,{headers:o()});if(!t.ok)throw new Error("Failed to fetch members");return(await t.json()).users}async function A(){const t=await fetch(`${n}/settings/test-prefixes`,{headers:o()});if(!t.ok)throw new Error("Failed to fetch prefixes");return t.json()}async function L({testCasePrefix:t,testSuitePrefix:e}){return(await fetch(`${n}/settings/test-prefixes`,{method:"POST",headers:o(),body:JSON.stringify({testCasePrefix:t,testSuitePrefix:e})})).json()}async function v({testCasePrefix:t,testSuitePrefix:e}){return(await fetch(`${n}/settings/test-prefixes/migrate`,{method:"POST",headers:o(),body:JSON.stringify({testCasePrefix:t,testSuitePrefix:e})})).json()}export{O as a,J as b,C as c,p as d,m as e,y as f,b as g,E as h,$ as i,P as j,k,T as l,j as m,g as n,A as o,L as p,v as q,F as r,l as s,U as t,S as u,R as v,x as w,N as x};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{I as L,h as n,al as A,am as i,an as e}from"./CeH-RgMb.js";import{d as S}from"./CfkUW1vA.js";function T(s){if(n){var a=!1,o=()=>{if(!a){if(a=!0,s.hasAttribute("value")){var r=s.value;c(s,"value",null),s.value=r}if(s.hasAttribute("checked")){var _=s.checked;c(s,"checked",null),s.checked=_}}};s.__on_r=o,i(o),S()}}function I(s,a){var o=s.__attributes??(s.__attributes={});o.value===(o.value=a??void 0)||s.value===a&&(a!==0||s.nodeName!=="PROGRESS")||(s.value=a??"")}function B(s,a){var o=s.__attributes??(s.__attributes={});o.checked!==(o.checked=a??void 0)&&(s.checked=a)}function c(s,a,o,r){var _=s.__attributes??(s.__attributes={});n&&(_[a]=s.getAttribute(a),a==="src"||a==="srcset"||a==="href"&&s.nodeName==="LINK")||_[a]!==(_[a]=o)&&(a==="style"&&"__styles"in s&&(s.__styles={}),a==="loading"&&(s[e]=o),o==null?s.removeAttribute(a):typeof o!="string"&&R(s).includes(a)?s[a]=o:s.setAttribute(a,o))}var E=new Map;function R(s){var a=E.get(s.nodeName);if(a)return a;E.set(s.nodeName,a=[]);for(var o,r=s,_=Element.prototype;_!==r;){o=A(r);for(var t in o)o[t].set&&a.push(t);r=L(r)}return a}const N="http://localhost:3001",C=[{id:"chromium",label:"Chrome"},{id:"firefox",label:"Firefox"}],u=Object.freeze({MANUAL:"manual-trigger",CLI:"command-line-trigger",MCP:"mcp-trigger",EXTERNAL:"external-trigger",CRON:"cron"}),O=15,h=20,g=20,v=1400,M=4e3,l=3e3,P=1,D=10,G=5,p=200,U=20,k="built-in",y="Built-in",b="all tests",K="Automated",W="Confirm",Y="Delete",F="Cancel",w="Working…",x="Nothing here yet.",X="Save",H="Edit",z="Close",j="Delete",q="Clear",V="Discord",J="Slack",Z="Email",$="Password",m="Clear search",Q="Sort by",ss="Loading…",as="Saving…",os="Creating…",rs="Searching…",_s="? This cannot be undone.";function ts(s,a,o=`${a}s`){return s===1?a:o}export{N as A,C as B,F as C,j as D,Z as E,J as F,H as G,I as H,p as I,P as J,D as K,ss as L,G as M,$ as P,O as R,Q as S,u as T,w as W,h as a,M as b,m as c,rs as d,g as e,_s as f,os as g,as as h,X as i,q as j,K as k,z as l,U as m,B as n,x as o,ts as p,W as q,T as r,c as s,Y as t,k as u,y as v,v as w,l as x,b as y,V as z};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{A as r,R as d}from"./DuAVKaL3.js";function s(t){return{...t,date:new Date(t.createdAt).toLocaleString()}}async function w({page:t=1,limit:e=d}={}){const o=new URLSearchParams({page:t,limit:e}),n=await fetch(`${r}/reports?${o}`),{reports:a,total:c,passCount:i,failCount:f,trend:p}=await n.json();return{reports:a.map(s),total:c,passCount:i,failCount:f,trend:p.map(s)}}function u(t){return`/reports/${t}`}async function E(t){const e=await fetch(`${r}/reports/${t}`);if(!e.ok)throw new Error("Report not found");return e.json()}async function l(t){const e=await fetch(`${r}/reports/${t}/recordings`);if(!e.ok)throw new Error("Failed to fetch recordings");return e.json()}async function $(t,e){const o=await fetch(`${r}/reports/${t}/recordings/${e}/events`);if(!o.ok)throw new Error("Failed to fetch recording events");const{events:n}=await o.json();return n}async function R(t){const e=await fetch(`${r}/reports/${t}`,{method:"DELETE"});if(!e.ok)throw new Error("Failed to delete report");return e.json()}async function y(t){const e=await fetch(`${r}/reports/bulk`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({ids:t})});if(!e.ok)throw new Error("Failed to delete reports");return e.json()}export{y as a,$ as b,E as c,R as d,l as e,w as f,u as r};
@@ -1,7 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CRb8Nyce.js","../chunks/CfkUW1vA.js","../chunks/CeH-RgMb.js","../chunks/C00jnSU2.js","../chunks/CegSvdD-.js","../chunks/Beula-TH.js","../chunks/DiVmSEJa.js","../chunks/d2K3c8Kx.js","../chunks/DuAVKaL3.js","../chunks/Ck6C3Fl0.js","../chunks/CoTEzvLa.js","../chunks/BJ_ypKl3.js","../chunks/B0_HKFXV.js","../chunks/K1h4wprj.js","../chunks/Dl-F6VCo.js","../chunks/Cgw8TOOy.js","../chunks/DAmOMhaf.js","../chunks/DB3YXVFP.js","../chunks/DgQy0SB2.js","../assets/Modal.BZpm0HP8.css","../assets/ConfirmModal.Dd3uP-Sk.css","../chunks/C8S7qQjQ.js","../assets/Badge.D1SV0Gv7.css","../chunks/GDjpV3r7.js","../assets/0.CmJTG5mP.css","../nodes/1.BI97il3r.js","../nodes/2.Dr6yugXz.js","../chunks/BAvTKHxT.js","../chunks/Cfmt4_tJ.js","../assets/EmptyState.DUDM4P19.css","../assets/2.C1TbMUws.css","../nodes/3.DUiL7fb5.js","../chunks/CboYYxrf.js","../chunks/C2_rQ4aY.js","../assets/BackLink.DRrgBGDC.css","../chunks/BbYY_TzB.js","../assets/3.Be5c3USL.css","../nodes/4.DDADylfF.js","../chunks/C7uEQ-LH.js","../chunks/Dlnxgs49.js","../assets/4.BR3wgXcZ.css","../nodes/5.N4CeDeoD.js","../chunks/DWzEJYIF.js","../assets/Pagination.DZmi2Po-.css","../assets/5.ClS4XkkN.css","../nodes/6.DWd93Bv5.js","../chunks/Bfc47y5P.js","../chunks/B00vxw57.js","../assets/6.BN5XbLUX.css","../nodes/7.c8d1cQQM.js","../chunks/CZWchtW8.js","../assets/Button.FOWXxvc7.css","../assets/7.CBHi6pzT.css","../nodes/8.Cvd3MauU.js","../assets/8.COwSGmmy.css","../nodes/9.BOK0GNF_.js","../assets/9._h2o67kg.css","../nodes/10.kyazROhw.js","../chunks/2-KCkWZO.js","../assets/10.CdaQUS6U.css","../nodes/11.B3vMgT2v.js","../assets/11.BWAH0Beh.css","../nodes/12.DkPcIrgW.js","../assets/12.B9H_IpSU.css"])))=>i.map(i=>d[i]);
7
- var U=r=>{throw TypeError(r)};var Y=(r,t,s)=>t.has(r)||U("Cannot "+s);var u=(r,t,s)=>(Y(r,t,"read from private field"),s?s.call(r):t.get(r)),w=(r,t,s)=>t.has(r)?U("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(r):t.set(r,s),D=(r,t,s,a)=>(Y(r,t,"write to private field"),a?a.call(r,s):t.set(r,s),s);import{s as V,N as K,g as E,ar as Q,ac as X,V as M,h as z,Z as $,Y as tt,_ as et,a5 as rt,a6 as st,a7 as ot,p as at,ae as nt,af as it,o as ct,z as ut,f as T,j as lt,c as _t,as as I,d as mt,k as dt,t as ft,T as x}from"../chunks/CeH-RgMb.js";import{f as ht,m as vt,u as Et,a as b,c as S,t as W,b as gt,s as yt}from"../chunks/CfkUW1vA.js";import{i as C}from"../chunks/CegSvdD-.js";import{p as j,a as Pt}from"../chunks/DB3YXVFP.js";import{b as B}from"../chunks/CboYYxrf.js";const pt="modulepreload",Rt=function(r,t){return new URL(r,t).href},G={},l=function(t,s,a){let n=Promise.resolve();if(s&&s.length>0){const o=document.getElementsByTagName("link"),e=document.querySelector("meta[property=csp-nonce]"),d=(e==null?void 0:e.nonce)||(e==null?void 0:e.getAttribute("nonce"));n=Promise.allSettled(s.map(_=>{if(_=Rt(_,a),_ in G)return;G[_]=!0;const y=_.endsWith(".css"),k=y?'[rel="stylesheet"]':"";if(!!a)for(let P=o.length-1;P>=0;P--){const i=o[P];if(i.href===_&&(!y||i.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${_}"]${k}`))return;const h=document.createElement("link");if(h.rel=y?"stylesheet":pt,y||(h.as="script"),h.crossOrigin="",h.href=_,d&&h.setAttribute("nonce",d),document.head.appendChild(h),y)return new Promise((P,i)=>{h.addEventListener("load",P),h.addEventListener("error",()=>i(new Error(`Unable to preload CSS for ${_}`)))})}))}function c(o){const e=new Event("vite:preloadError",{cancelable:!0});if(e.payload=o,window.dispatchEvent(e),!e.defaultPrevented)throw o}return n.then(o=>{for(const e of o||[])e.status==="rejected"&&c(e.reason);return t().catch(c)})},Bt={};function bt(r){return class extends Ot{constructor(t){super({component:r,...t})}}}var g,m;class Ot{constructor(t){w(this,g);w(this,m);var c;var s=new Map,a=(o,e)=>{var d=M(e);return s.set(o,d),d};const n=new Proxy({...t.props||{},$$events:{}},{get(o,e){return E(s.get(e)??a(e,Reflect.get(o,e)))},has(o,e){return e===K?!0:(E(s.get(e)??a(e,Reflect.get(o,e))),Reflect.has(o,e))},set(o,e,d){return V(s.get(e)??a(e,d),d),Reflect.set(o,e,d)}});D(this,m,(t.hydrate?ht:vt)(t.component,{target:t.target,anchor:t.anchor,props:n,context:t.context,intro:t.intro??!1,recover:t.recover})),(!((c=t==null?void 0:t.props)!=null&&c.$$host)||t.sync===!1)&&Q(),D(this,g,n.$$events);for(const o of Object.keys(u(this,m)))o==="$set"||o==="$destroy"||o==="$on"||X(this,o,{get(){return u(this,m)[o]},set(e){u(this,m)[o]=e},enumerable:!0});u(this,m).$set=o=>{Object.assign(n,o)},u(this,m).$destroy=()=>{Et(u(this,m))}}$set(t){u(this,m).$set(t)}$on(t,s){u(this,g)[t]=u(this,g)[t]||[];const a=(...n)=>s.call(this,...n);return u(this,g)[t].push(a),()=>{u(this,g)[t]=u(this,g)[t].filter(n=>n!==a)}}$destroy(){u(this,m).$destroy()}}g=new WeakMap,m=new WeakMap;function q(r,t,s){z&&$();var a=r,n,c;tt(()=>{n!==(n=t())&&(c&&(st(c),c=null),n&&(c=rt(()=>s(a,n))))},et),z&&(a=ot)}var At=W('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),Lt=W("<!> <!>",1);function Tt(r,t){at(t,!0);let s=j(t,"components",23,()=>[]),a=j(t,"data_0",3,null),n=j(t,"data_1",3,null);nt(()=>t.stores.page.set(t.page)),it(()=>{t.stores,t.page,t.constructors,s(),t.form,a(),n(),t.stores.page.notify()});let c=I(!1),o=I(!1),e=I(null);ct(()=>{const i=t.stores.page.subscribe(()=>{E(c)&&(V(o,!0),ut().then(()=>{V(e,Pt(document.title||"untitled page"))}))});return V(c,!0),i});const d=x(()=>t.constructors[1]);var _=Lt(),y=T(_);{var k=i=>{var v=S();const O=x(()=>t.constructors[0]);var A=T(v);q(A,()=>E(O),(p,R)=>{B(R(p,{get data(){return a()},get form(){return t.form},children:(f,wt)=>{var N=S(),Z=T(N);q(Z,()=>E(d),(H,J)=>{B(J(H,{get data(){return n()},get form(){return t.form}}),L=>s()[1]=L,()=>{var L;return(L=s())==null?void 0:L[1]})}),b(f,N)},$$slots:{default:!0}}),f=>s()[0]=f,()=>{var f;return(f=s())==null?void 0:f[0]})}),b(i,v)},F=i=>{var v=S();const O=x(()=>t.constructors[0]);var A=T(v);q(A,()=>E(O),(p,R)=>{B(R(p,{get data(){return a()},get form(){return t.form}}),f=>s()[0]=f,()=>{var f;return(f=s())==null?void 0:f[0]})}),b(i,v)};C(y,i=>{t.constructors[1]?i(k):i(F,!1)})}var h=lt(y,2);{var P=i=>{var v=At(),O=mt(v);{var A=p=>{var R=gt();ft(()=>yt(R,E(e))),b(p,R)};C(O,p=>{E(o)&&p(A)})}dt(v),b(i,v)};C(h,i=>{E(c)&&i(P)})}b(r,_),_t()}const qt=bt(Tt),Ft=[()=>l(()=>import("../nodes/0.CRb8Nyce.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]),import.meta.url),()=>l(()=>import("../nodes/1.BI97il3r.js"),__vite__mapDeps([25,1,2,3,6]),import.meta.url),()=>l(()=>import("../nodes/2.Dr6yugXz.js"),__vite__mapDeps([26,1,2,3,4,5,8,27,11,12,9,28,17,29,30]),import.meta.url),()=>l(()=>import("../nodes/3.DUiL7fb5.js"),__vite__mapDeps([31,1,2,3,4,5,32,6,7,11,8,12,9,15,13,17,33,34,35,21,22,36]),import.meta.url),()=>l(()=>import("../nodes/4.DDADylfF.js"),__vite__mapDeps([37,1,2,3,4,8,27,6,9,23,38,39,40]),import.meta.url),()=>l(()=>import("../nodes/5.N4CeDeoD.js"),__vite__mapDeps([41,1,2,3,4,5,8,13,11,12,9,21,17,22,42,43,16,18,19,20,28,29,35,44]),import.meta.url),()=>l(()=>import("../nodes/6.DWd93Bv5.js"),__vite__mapDeps([45,1,2,3,4,5,8,46,47,7,6,13,12,35,21,17,22,33,34,32,48]),import.meta.url),()=>l(()=>import("../nodes/7.c8d1cQQM.js"),__vite__mapDeps([49,1,2,3,4,5,8,27,50,17,47,51,46,10,9,11,12,21,22,18,19,16,20,28,29,52]),import.meta.url),()=>l(()=>import("../nodes/8.Cvd3MauU.js"),__vite__mapDeps([53,1,2,3,4,5,8,27,50,17,47,51,32,6,10,9,14,23,11,12,38,16,18,19,20,21,22,54]),import.meta.url),()=>l(()=>import("../nodes/9.BOK0GNF_.js"),__vite__mapDeps([55,1,2,3,4,8,27,6,23,9,38,39,56]),import.meta.url),()=>l(()=>import("../nodes/10.kyazROhw.js"),__vite__mapDeps([57,1,2,3,4,5,8,27,50,17,47,51,14,9,11,12,42,43,28,29,16,18,19,20,58,59]),import.meta.url),()=>l(()=>import("../nodes/11.B3vMgT2v.js"),__vite__mapDeps([60,1,2,3,4,5,8,27,50,17,47,51,7,6,14,9,11,12,18,19,28,29,58,61]),import.meta.url),()=>l(()=>import("../nodes/12.DkPcIrgW.js"),__vite__mapDeps([62,1,2,3,4,5,8,27,50,17,47,51,46,7,6,14,9,28,29,16,18,19,20,42,43,58,63]),import.meta.url)],Nt=[],Ut={"/":[2],"/live/[id]":[3],"/login":[4],"/reports":[5],"/reports/[id]":[6],"/scheduled-tests":[7],"/settings":[8],"/setup":[9],"/test-repository":[10],"/test-repository/runs/[id]":[11],"/test-repository/suites/[id]":[12]},Vt={handleError:({error:r})=>{console.error(r)},reroute:()=>{},transport:{}},kt=Object.fromEntries(Object.entries(Vt.transport).map(([r,t])=>[r,t.decode])),Yt=!1,zt=(r,t)=>kt[r](t);export{zt as decode,kt as decoders,Ut as dictionary,Yt as hash,Vt as hooks,Bt as matchers,Ft as nodes,qt as root,Nt as server_loads};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{s as H,a as w,e as U,t as R,b as an,c as qe}from"../chunks/CfkUW1vA.js";import{i as Wt}from"../chunks/C00jnSU2.js";import{e as nt,u as cn,p as Ht,o as Kt,s as E,d as v,j as u,f as G,g as i,k as f,t as $,x as Z,c as Yt,m as q,ao as ln,l as fe,b as hn,n as We}from"../chunks/CeH-RgMb.js";import{i as P,s as zt,a as we}from"../chunks/CegSvdD-.js";import{e as Ie,t as S,i as je,a as Ce,b as Rs,c as qt,f as He}from"../chunks/Beula-TH.js";import{g as us}from"../chunks/DiVmSEJa.js";import{p as xs}from"../chunks/d2K3c8Kx.js";import{s as j,u as Ae,A as un,x as dn,I as ds,B as Bt,J as ps,K as fs,r as St,H as pn,j as fn,n as vs,z as vn,F as _n,v as gn}from"../chunks/DuAVKaL3.js";import{a as As}from"../chunks/Ck6C3Fl0.js";import{b as mn,f as yn,a as bn}from"../chunks/CoTEzvLa.js";import{b as ye,p as Pe,e as Ct,c as Ke,m as _s,s as wn,S as be,a as gs,g as kn,h as En,i as Rn,R as xn,j as An,k as Tn,l as Bn,n as Sn,t as Lt,T as Cn,W as Ln,B as Nn,o as On,q as Un,N as Pn,u as qn,r as In,V as Dn,C as $n,v as Vn,w as Mn,Q as Fn,x as ms,y as Wn,z as Hn,M as Kn,d as Yn,A as zn,D as jn,E as Jn,F as Xn,G as Gn,H as Qn}from"../chunks/BJ_ypKl3.js";import{r as Zn}from"../chunks/K1h4wprj.js";import{a as er,r as tr}from"../chunks/Dl-F6VCo.js";import{f as sr}from"../chunks/Cgw8TOOy.js";import{t as nr,a as rr}from"../chunks/B0_HKFXV.js";import{C as ir}from"../chunks/DAmOMhaf.js";import{B as or}from"../chunks/C8S7qQjQ.js";import{c as ar}from"../chunks/GDjpV3r7.js";function Nt(n,e,t){nt(()=>{var s=cn(()=>e(n,t==null?void 0:t())||{});if(s!=null&&s.destroy)return()=>s.destroy()})}const cr=!1,ro=Object.freeze(Object.defineProperty({__proto__:null,ssr:cr},Symbol.toStringTag,{value:"Module"}));var lr=R('<span class="nav-sep svelte-10t98u4" aria-hidden="true"></span>'),hr=R('<!> <a class="link svelte-10t98u4"> </a>',1),ur=R('<img alt="" class="project-logo svelte-10t98u4">'),dr=R('<div class="project-card svelte-10t98u4"><!> <span class="project-name svelte-10t98u4"> </span></div>'),pr=R('<span class="nav-user svelte-10t98u4"> </span>'),fr=R('<hr class="mobile-sep svelte-10t98u4">'),vr=R('<!> <a class="mobile-link svelte-10t98u4"> </a>',1),_r=R('<div class="mobile-menu svelte-10t98u4"><!> <a href="/settings" class="mobile-link svelte-10t98u4">Settings</a></div>'),gr=R('<nav class="nav svelte-10t98u4"><div class="inner svelte-10t98u4"><a href="/" class="brand svelte-10t98u4"><span class="brand-serif svelte-10t98u4">Pl</span><span class="brand-sans svelte-10t98u4">um</span></a> <div class="links svelte-10t98u4"></div> <div class="actions svelte-10t98u4"><!> <!> <a href="/settings" class="settings-btn svelte-10t98u4" aria-label="Settings" title="Settings"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg></a> <button class="hamburger svelte-10t98u4"><span class="svelte-10t98u4"></span> <span class="svelte-10t98u4"></span> <span class="svelte-10t98u4"></span></button></div></div> <!></nav>');function mr(n,e){Ht(e,!1);const[t,s]=zt(),r=()=>we(xs,"$page",t),c=()=>we(As,"$auth",t);let d=q(!1),_=q({name:"",logoUrl:""});Kt(async()=>{try{E(_,await mn())}catch{}});const k=[{href:"/",label:"Automated Tests"},{href:"/reports",label:"Reports"},{href:"/scheduled-tests",label:"Scheduled"},{href:"/test-repository",label:"Test Repository",sep:!0}];function L(){E(d,!1)}Wt();var C=gr(),D=v(C),I=v(D),J=u(I,2);Ie(J,5,()=>k,je,(M,N)=>{var K=hr(),Y=G(K);{var ce=z=>{var Q=lr();w(z,Q)};P(Y,z=>{i(N).sep&&z(ce)})}var W=u(Y,2),ee=v(W,!0);f(W),$(z=>{j(W,"href",i(N).href),S(W,"repo",i(N).sep),S(W,"active",z),H(ee,i(N).label)},[()=>i(N).href==="/"?r().url.pathname==="/":r().url.pathname.startsWith(i(N).href)],Z),w(M,K)}),f(J);var he=u(J,2),Be=v(he);{var Le=M=>{var N=dr(),K=v(N);{var Y=ee=>{var z=ur();$(()=>j(z,"src",i(_).logoUrl)),w(ee,z)};P(K,ee=>{i(_).logoUrl&&ee(Y)})}var ce=u(K,2),W=v(ce,!0);f(ce),f(N),$(()=>H(W,i(_).name)),w(M,N)};P(Be,M=>{i(_).name&&M(Le)})}var se=u(Be,2);{var X=M=>{var N=pr(),K=v(N,!0);f(N),$(()=>H(K,c().user.name)),w(M,N)};P(se,M=>{c().user&&M(X)})}var oe=u(se,2),A=u(oe,2),ae=v(A),ne=u(ae,2),ge=u(ne,2);f(A),f(he),f(D);var re=u(D,2);{var ke=M=>{var N=_r(),K=v(N);Ie(K,1,()=>k,je,(ce,W)=>{var ee=vr(),z=G(ee);{var Q=Ee=>{var ht=fr();w(Ee,ht)};P(z,Ee=>{i(W).sep&&Ee(Q)})}var Se=u(z,2),Je=v(Se,!0);f(Se),$(Ee=>{j(Se,"href",i(W).href),S(Se,"active",Ee),H(Je,i(W).label)},[()=>i(W).href==="/"?r().url.pathname==="/":r().url.pathname.startsWith(i(W).href)],Z),U("click",Se,L),w(ce,ee)});var Y=u(K,2);f(N),$(()=>S(Y,"active",r().url.pathname==="/settings")),U("click",Y,L),Ce(3,N,()=>Rs,()=>({duration:200})),w(M,N)};P(re,M=>{i(d)&&M(ke)})}f(C),$(()=>{S(oe,"active",r().url.pathname==="/settings"),j(A,"aria-label",i(d)?"Close menu":"Open menu"),j(A,"aria-expanded",i(d)),S(ae,"rotated",i(d)),S(ne,"hidden",i(d)),S(ge,"rotated-reverse",i(d))}),U("click",I,L),U("click",A,()=>E(d,!i(d))),w(n,C),Yt(),s()}var yr=R('<main class="shell svelte-28zx1m"><!></main>');function br(n,e){var t=yr(),s=v(t);qt(s,e,"default",{},null),f(t),w(n,t)}const _e=Object.create(null);_e.open="0";_e.close="1";_e.ping="2";_e.pong="3";_e.message="4";_e.upgrade="5";_e.noop="6";const rt=Object.create(null);Object.keys(_e).forEach(n=>{rt[_e[n]]=n});const It={type:"error",data:"parser error"},Ts=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Bs=typeof ArrayBuffer=="function",Ss=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,jt=({type:n,data:e},t,s)=>Ts&&e instanceof Blob?t?s(e):ys(e,s):Bs&&(e instanceof ArrayBuffer||Ss(e))?t?s(e):ys(new Blob([e]),s):s(_e[n]+(e||"")),ys=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function bs(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let Ot;function wr(n,e){if(Ts&&n.data instanceof Blob)return n.data.arrayBuffer().then(bs).then(e);if(Bs&&(n.data instanceof ArrayBuffer||Ss(n.data)))return e(bs(n.data));jt(n,!1,t=>{Ot||(Ot=new TextEncoder),e(Ot.encode(t))})}const ws="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ze=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n<ws.length;n++)ze[ws.charCodeAt(n)]=n;const kr=n=>{let e=n.length*.75,t=n.length,s,r=0,c,d,_,k;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const L=new ArrayBuffer(e),C=new Uint8Array(L);for(s=0;s<t;s+=4)c=ze[n.charCodeAt(s)],d=ze[n.charCodeAt(s+1)],_=ze[n.charCodeAt(s+2)],k=ze[n.charCodeAt(s+3)],C[r++]=c<<2|d>>4,C[r++]=(d&15)<<4|_>>2,C[r++]=(_&3)<<6|k&63;return L},Er=typeof ArrayBuffer=="function",Jt=(n,e)=>{if(typeof n!="string")return{type:"message",data:Cs(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:Rr(n.substring(1),e)}:rt[t]?n.length>1?{type:rt[t],data:n.substring(1)}:{type:rt[t]}:It},Rr=(n,e)=>{if(Er){const t=kr(n);return Cs(t,e)}else return{base64:!0,data:n}},Cs=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},Ls="",xr=(n,e)=>{const t=n.length,s=new Array(t);let r=0;n.forEach((c,d)=>{jt(c,!1,_=>{s[d]=_,++r===t&&e(s.join(Ls))})})},Ar=(n,e)=>{const t=n.split(Ls),s=[];for(let r=0;r<t.length;r++){const c=Jt(t[r],e);if(s.push(c),c.type==="error")break}return s};function Tr(){return new TransformStream({transform(n,e){wr(n,t=>{const s=t.length;let r;if(s<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,s);else if(s<65536){r=new Uint8Array(3);const c=new DataView(r.buffer);c.setUint8(0,126),c.setUint16(1,s)}else{r=new Uint8Array(9);const c=new DataView(r.buffer);c.setUint8(0,127),c.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(r[0]|=128),e.enqueue(r),e.enqueue(t)})}})}let Ut;function tt(n){return n.reduce((e,t)=>e+t.length,0)}function st(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let r=0;r<e;r++)t[r]=n[0][s++],s===n[0].length&&(n.shift(),s=0);return n.length&&s<n[0].length&&(n[0]=n[0].slice(s)),t}function Br(n,e){Ut||(Ut=new TextDecoder);const t=[];let s=0,r=-1,c=!1;return new TransformStream({transform(d,_){for(t.push(d);;){if(s===0){if(tt(t)<1)break;const k=st(t,1);c=(k[0]&128)===128,r=k[0]&127,r<126?s=3:r===126?s=1:s=2}else if(s===1){if(tt(t)<2)break;const k=st(t,2);r=new DataView(k.buffer,k.byteOffset,k.length).getUint16(0),s=3}else if(s===2){if(tt(t)<8)break;const k=st(t,8),L=new DataView(k.buffer,k.byteOffset,k.length),C=L.getUint32(0);if(C>Math.pow(2,21)-1){_.enqueue(It);break}r=C*Math.pow(2,32)+L.getUint32(4),s=3}else{if(tt(t)<r)break;const k=st(t,r);_.enqueue(Jt(c?k:Ut.decode(k),e)),s=0}if(r===0||r>n){_.enqueue(It);break}}}})}const Ns=4;function V(n){if(n)return Sr(n)}function Sr(n){for(var e in V.prototype)n[e]=V.prototype[e];return n}V.prototype.on=V.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};V.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};V.prototype.off=V.prototype.removeListener=V.prototype.removeAllListeners=V.prototype.removeEventListener=function(n,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+n];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+n],this;for(var s,r=0;r<t.length;r++)if(s=t[r],s===e||s.fn===e){t.splice(r,1);break}return t.length===0&&delete this._callbacks["$"+n],this};V.prototype.emit=function(n){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+n],s=1;s<arguments.length;s++)e[s-1]=arguments[s];if(t){t=t.slice(0);for(var s=0,r=t.length;s<r;++s)t[s].apply(this,e)}return this};V.prototype.emitReserved=V.prototype.emit;V.prototype.listeners=function(n){return this._callbacks=this._callbacks||{},this._callbacks["$"+n]||[]};V.prototype.hasListeners=function(n){return!!this.listeners(n).length};const ct=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,t)=>t(e,0),ie=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),Cr="arraybuffer";function Os(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const Lr=ie.setTimeout,Nr=ie.clearTimeout;function lt(n,e){e.useNativeTimers?(n.setTimeoutFn=Lr.bind(ie),n.clearTimeoutFn=Nr.bind(ie)):(n.setTimeoutFn=ie.setTimeout.bind(ie),n.clearTimeoutFn=ie.clearTimeout.bind(ie))}const Or=1.33;function Ur(n){return typeof n=="string"?Pr(n):Math.ceil((n.byteLength||n.size)*Or)}function Pr(n){let e=0,t=0;for(let s=0,r=n.length;s<r;s++)e=n.charCodeAt(s),e<128?t+=1:e<2048?t+=2:e<55296||e>=57344?t+=3:(s++,t+=4);return t}function Us(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function qr(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function Ir(n){let e={},t=n.split("&");for(let s=0,r=t.length;s<r;s++){let c=t[s].split("=");e[decodeURIComponent(c[0])]=decodeURIComponent(c[1])}return e}class Dr extends Error{constructor(e,t,s){super(e),this.description=t,this.context=s,this.type="TransportError"}}class Xt extends V{constructor(e){super(),this.writable=!1,lt(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,t,s){return super.emitReserved("error",new Dr(e,t,s)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=Jt(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){const t=qr(e);return t.length?"?"+t:""}}class $r extends Xt{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};Ar(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,xr(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=Us()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let Ps=!1;try{Ps=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const Vr=Ps;function Mr(){}class Fr extends $r{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(r,c)=>{this.onError("xhr post error",r,c)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class ve extends V{constructor(e,t,s){super(),this.createRequest=e,lt(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=Os(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let r in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(r)&&s.setRequestHeader(r,this._opts.extraHeaders[r])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var r;s.readyState===3&&((r=this._opts.cookieJar)===null||r===void 0||r.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(r){this.setTimeoutFn(()=>{this._onError(r)},0);return}typeof document<"u"&&(this._index=ve.requestsCount++,ve.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=Mr,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete ve.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}ve.requestsCount=0;ve.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",ks);else if(typeof addEventListener=="function"){const n="onpagehide"in ie?"pagehide":"unload";addEventListener(n,ks,!1)}}function ks(){for(let n in ve.requests)ve.requests.hasOwnProperty(n)&&ve.requests[n].abort()}const Wr=function(){const n=qs({xdomain:!1});return n&&n.responseType!==null}();class Hr extends Fr{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=Wr&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new ve(qs,this.uri(),e)}}function qs(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||Vr))return new XMLHttpRequest}catch{}if(!e)try{return new ie[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Is=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class Kr extends Xt{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=Is?{}:Os(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(r){return this.emitReserved("error",r)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const s=e[t],r=t===e.length-1;jt(s,this.supportsBinary,c=>{try{this.doWrite(s,c)}catch{}r&&ct(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=Us()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const Pt=ie.WebSocket||ie.MozWebSocket;class Yr extends Kr{createSocket(e,t,s){return Is?new Pt(e,t,s):t?new Pt(e,t):new Pt(e)}doWrite(e,t){this.ws.send(t)}}class zr extends Xt{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=Br(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),r=Tr();r.readable.pipeTo(e.writable),this._writer=r.writable.getWriter();const c=()=>{s.read().then(({done:_,value:k})=>{_||(this.onPacket(k),c())}).catch(_=>{})};c();const d={type:"open"};this.query.sid&&(d.data=`{"sid":"${this.query.sid}"}`),this._writer.write(d).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const s=e[t],r=t===e.length-1;this._writer.write(s).then(()=>{r&&ct(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const jr={websocket:Yr,webtransport:zr,polling:Hr},Jr=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Xr=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Dt(n){if(n.length>8e3)throw"URI too long";const e=n,t=n.indexOf("["),s=n.indexOf("]");t!=-1&&s!=-1&&(n=n.substring(0,t)+n.substring(t,s).replace(/:/g,";")+n.substring(s,n.length));let r=Jr.exec(n||""),c={},d=14;for(;d--;)c[Xr[d]]=r[d]||"";return t!=-1&&s!=-1&&(c.source=e,c.host=c.host.substring(1,c.host.length-1).replace(/;/g,":"),c.authority=c.authority.replace("[","").replace("]","").replace(/;/g,":"),c.ipv6uri=!0),c.pathNames=Gr(c,c.path),c.queryKey=Qr(c,c.query),c}function Gr(n,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function Qr(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,r,c){r&&(t[r]=c)}),t}const $t=typeof addEventListener=="function"&&typeof removeEventListener=="function",it=[];$t&&addEventListener("offline",()=>{it.forEach(n=>n())},!1);class Te extends V{constructor(e,t){if(super(),this.binaryType=Cr,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=Dt(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=Dt(t.host).host);lt(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const r=s.prototype.name;this.transports.push(r),this._transportsByName[r]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Ir(this.opts.query)),$t&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},it.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=Ns,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&Te.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",Te.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s<this.writeBuffer.length;s++){const r=this.writeBuffer[s].data;if(r&&(t+=Ur(r)),s>0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,ct(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,r){if(typeof t=="function"&&(r=t,t=void 0),typeof s=="function"&&(r=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const c={type:e,data:t,options:s};this.emitReserved("packetCreate",c),this.writeBuffer.push(c),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(Te.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),$t&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=it.indexOf(this._offlineEventListener);s!==-1&&it.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}Te.protocol=Ns;class Zr extends Te{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}_probe(e){let t=this.createTransport(e),s=!1;Te.priorWebsocketSuccess=!1;const r=()=>{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",D=>{if(!s)if(D.type==="pong"&&D.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;Te.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(C(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const I=new Error("probe error");I.transport=t.name,this.emitReserved("upgradeError",I)}}))};function c(){s||(s=!0,C(),t.close(),t=null)}const d=D=>{const I=new Error("probe error: "+D);I.transport=t.name,c(),this.emitReserved("upgradeError",I)};function _(){d("transport closed")}function k(){d("socket closed")}function L(D){t&&D.name!==t.name&&c()}const C=()=>{t.removeListener("open",r),t.removeListener("error",d),t.removeListener("close",_),this.off("close",k),this.off("upgrading",L)};t.once("open",r),t.once("error",d),t.once("close",_),this.once("close",k),this.once("upgrading",L),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;s<e.length;s++)~this.transports.indexOf(e[s])&&t.push(e[s]);return t}}let ei=class extends Zr{constructor(e,t={}){const s=typeof e=="object"?e:t;(!s.transports||s.transports&&typeof s.transports[0]=="string")&&(s.transports=(s.transports||["polling","websocket","webtransport"]).map(r=>jr[r]).filter(r=>!!r)),super(e,s)}};function ti(n,e="",t){let s=n;t=t||typeof location<"u"&&location,n==null&&(n=t.protocol+"//"+t.host),typeof n=="string"&&(n.charAt(0)==="/"&&(n.charAt(1)==="/"?n=t.protocol+n:n=t.host+n),/^(https?|wss?):\/\//.test(n)||(typeof t<"u"?n=t.protocol+"//"+n:n="https://"+n),s=Dt(n)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const c=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+c+":"+s.port+e,s.href=s.protocol+"://"+c+(t&&t.port===s.port?"":":"+s.port),s}const si=typeof ArrayBuffer=="function",ni=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,Ds=Object.prototype.toString,ri=typeof Blob=="function"||typeof Blob<"u"&&Ds.call(Blob)==="[object BlobConstructor]",ii=typeof File=="function"||typeof File<"u"&&Ds.call(File)==="[object FileConstructor]";function Gt(n){return si&&(n instanceof ArrayBuffer||ni(n))||ri&&n instanceof Blob||ii&&n instanceof File}function ot(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t<s;t++)if(ot(n[t]))return!0;return!1}if(Gt(n))return!0;if(n.toJSON&&typeof n.toJSON=="function"&&arguments.length===1)return ot(n.toJSON(),!0);for(const t in n)if(Object.prototype.hasOwnProperty.call(n,t)&&ot(n[t]))return!0;return!1}function oi(n){const e=[],t=n.data,s=n;return s.data=Vt(t,e),s.attachments=e.length,{packet:s,buffers:e}}function Vt(n,e){if(!n)return n;if(Gt(n)){const t={_placeholder:!0,num:e.length};return e.push(n),t}else if(Array.isArray(n)){const t=new Array(n.length);for(let s=0;s<n.length;s++)t[s]=Vt(n[s],e);return t}else if(typeof n=="object"&&!(n instanceof Date)){const t={};for(const s in n)Object.prototype.hasOwnProperty.call(n,s)&&(t[s]=Vt(n[s],e));return t}return n}function ai(n,e){return n.data=Mt(n.data,e),delete n.attachments,n}function Mt(n,e){if(!n)return n;if(n&&n._placeholder===!0){if(typeof n.num=="number"&&n.num>=0&&n.num<e.length)return e[n.num];throw new Error("illegal attachments")}else if(Array.isArray(n))for(let t=0;t<n.length;t++)n[t]=Mt(n[t],e);else if(typeof n=="object")for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&(n[t]=Mt(n[t],e));return n}const ci=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var x;(function(n){n[n.CONNECT=0]="CONNECT",n[n.DISCONNECT=1]="DISCONNECT",n[n.EVENT=2]="EVENT",n[n.ACK=3]="ACK",n[n.CONNECT_ERROR=4]="CONNECT_ERROR",n[n.BINARY_EVENT=5]="BINARY_EVENT",n[n.BINARY_ACK=6]="BINARY_ACK"})(x||(x={}));class li{constructor(e){this.replacer=e}encode(e){return(e.type===x.EVENT||e.type===x.ACK)&&ot(e)?this.encodeAsBinary({type:e.type===x.EVENT?x.BINARY_EVENT:x.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===x.BINARY_EVENT||e.type===x.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),t}encodeAsBinary(e){const t=oi(e),s=this.encodeAsString(t.packet),r=t.buffers;return r.unshift(s),r}}function Es(n){return Object.prototype.toString.call(n)==="[object Object]"}class Qt extends V{constructor(e){super(),this.reviver=e}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);const s=t.type===x.BINARY_EVENT;s||t.type===x.BINARY_ACK?(t.type=s?x.EVENT:x.ACK,this.reconstructor=new hi(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(Gt(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0;const s={type:Number(e.charAt(0))};if(x[s.type]===void 0)throw new Error("unknown packet type "+s.type);if(s.type===x.BINARY_EVENT||s.type===x.BINARY_ACK){const c=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);const d=e.substring(c,t);if(d!=Number(d)||e.charAt(t)!=="-")throw new Error("Illegal attachments");s.attachments=Number(d)}if(e.charAt(t+1)==="/"){const c=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););s.nsp=e.substring(c,t)}else s.nsp="/";const r=e.charAt(t+1);if(r!==""&&Number(r)==r){const c=t+1;for(;++t;){const d=e.charAt(t);if(d==null||Number(d)!=d){--t;break}if(t===e.length)break}s.id=Number(e.substring(c,t+1))}if(e.charAt(++t)){const c=this.tryParse(e.substr(t));if(Qt.isPayloadValid(s.type,c))s.data=c;else throw new Error("invalid payload")}return s}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,t){switch(e){case x.CONNECT:return Es(t);case x.DISCONNECT:return t===void 0;case x.CONNECT_ERROR:return typeof t=="string"||Es(t);case x.EVENT:case x.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&ci.indexOf(t[0])===-1);case x.ACK:case x.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class hi{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const t=ai(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const ui=Object.freeze(Object.defineProperty({__proto__:null,Decoder:Qt,Encoder:li,get PacketType(){return x}},Symbol.toStringTag,{value:"Module"}));function le(n,e,t){return n.on(e,t),function(){n.off(e,t)}}const di=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class $s extends V{constructor(e,t,s){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,s&&s.auth&&(this.auth=s.auth),this._opts=Object.assign({},s),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[le(e,"open",this.onopen.bind(this)),le(e,"packet",this.onpacket.bind(this)),le(e,"error",this.onerror.bind(this)),le(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){var s,r,c;if(di.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;const d={type:x.EVENT,data:t};if(d.options={},d.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){const C=this.ids++,D=t.pop();this._registerAckCallback(C,D),d.id=C}const _=(r=(s=this.io.engine)===null||s===void 0?void 0:s.transport)===null||r===void 0?void 0:r.writable,k=this.connected&&!(!((c=this.io.engine)===null||c===void 0)&&c._hasPingExpired());return this.flags.volatile&&!_||(k?(this.notifyOutgoingListeners(d),this.packet(d)):this.sendBuffer.push(d)),this.flags={},this}_registerAckCallback(e,t){var s;const r=(s=this.flags.timeout)!==null&&s!==void 0?s:this._opts.ackTimeout;if(r===void 0){this.acks[e]=t;return}const c=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let _=0;_<this.sendBuffer.length;_++)this.sendBuffer[_].id===e&&this.sendBuffer.splice(_,1);t.call(this,new Error("operation has timed out"))},r),d=(..._)=>{this.io.clearTimeoutFn(c),t.apply(this,_)};d.withError=!0,this.acks[e]=d}emitWithAck(e,...t){return new Promise((s,r)=>{const c=(d,_)=>d?r(d):s(_);c.withError=!0,t.push(c),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((r,...c)=>s!==this._queue[0]?void 0:(r!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(r)):(this._queue.shift(),t&&t(null,...c)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:x.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case x.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case x.EVENT:case x.BINARY_EVENT:this.onevent(e);break;case x.ACK:case x.BINARY_ACK:this.onack(e);break;case x.DISCONNECT:this.ondisconnect();break;case x.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...r){s||(s=!0,t.packet({type:x.ACK,id:e,data:r}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:x.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s<t.length;s++)if(e===t[s])return t.splice(s,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const t=this._anyOutgoingListeners;for(let s=0;s<t.length;s++)if(e===t[s])return t.splice(s,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const t=this._anyOutgoingListeners.slice();for(const s of t)s.apply(this,e.data)}}}function De(n){n=n||{},this.ms=n.min||100,this.max=n.max||1e4,this.factor=n.factor||2,this.jitter=n.jitter>0&&n.jitter<=1?n.jitter:0,this.attempts=0}De.prototype.duration=function(){var n=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*n);n=Math.floor(e*10)&1?n+t:n-t}return Math.min(n,this.max)|0};De.prototype.reset=function(){this.attempts=0};De.prototype.setMin=function(n){this.ms=n};De.prototype.setMax=function(n){this.max=n};De.prototype.setJitter=function(n){this.jitter=n};class Ft extends V{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,lt(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new De({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const r=t.parser||ui;this.encoder=new r.Encoder,this.decoder=new r.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new ei(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const r=le(t,"open",function(){s.onopen(),e&&e()}),c=_=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",_),e?e(_):this.maybeReconnectOnOpen()},d=le(t,"error",c);if(this._timeout!==!1){const _=this._timeout,k=this.setTimeoutFn(()=>{r(),c(new Error("timeout")),t.close()},_);this.opts.autoUnref&&k.unref(),this.subs.push(()=>{this.clearTimeoutFn(k)})}return this.subs.push(r),this.subs.push(d),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(le(e,"ping",this.onping.bind(this)),le(e,"data",this.ondata.bind(this)),le(e,"error",this.onerror.bind(this)),le(e,"close",this.onclose.bind(this)),le(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){ct(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new $s(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;s<t.length;s++)this.engine.write(t[s],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(r=>{r?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",r)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const Ye={};function at(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=ti(n,e.path||"/socket.io"),s=t.source,r=t.id,c=t.path,d=Ye[r]&&c in Ye[r].nsps,_=e.forceNew||e["force new connection"]||e.multiplex===!1||d;let k;return _?k=new Ft(s,e):(Ye[r]||(Ye[r]=new Ft(s,e)),k=Ye[r]),t.query&&!e.query&&(e.query=t.queryKey),k.socket(t.path,e)}Object.assign(at,{Manager:Ft,Socket:$s,io:at,connect:at});var pi=R(' <strong class="svelte-1pcdei1"></strong> ',1),fi=R('<a class="view-report-btn svelte-1pcdei1"> <svg width="11" height="11" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-1pcdei1"><line x1="5" y1="12" x2="19" y2="12" class="svelte-1pcdei1"></line><polyline points="12 5 19 12 12 19" class="svelte-1pcdei1"></polyline></svg></a>'),vi=R('<span class="run-chip-spinner svelte-1pcdei1"></span>'),_i=R('<span class="run-chip-count svelte-1pcdei1"> </span>'),gi=R('<div class="run-chip svelte-1pcdei1"><svg width="9" height="10" viewBox="0 0 10 12" fill="currentColor" stroke="none" style="opacity:0.6;flex-shrink:0" class="svelte-1pcdei1"><polygon points="0,0 10,6 0,12" class="svelte-1pcdei1"></polygon></svg> <span class="run-chip-title svelte-1pcdei1"> </span> <!> <button class="run-chip-clear svelte-1pcdei1"><svg width="9" height="9" viewBox="0 0 14 14" fill="none" class="svelte-1pcdei1"><path d="M1 1l12 12M13 1L1 13" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" class="svelte-1pcdei1"></path></svg></button></div>'),mi=R('<div class="input-wrap svelte-1pcdei1"><svg class="input-icon svelte-1pcdei1" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8" class="svelte-1pcdei1"></circle><line x1="21" y1="21" x2="16.65" y2="16.65" class="svelte-1pcdei1"></line></svg> <input type="text" class="tag-input svelte-1pcdei1" placeholder="@tag or leave blank for all tests"></div>'),yi=R('<button class="dropdown-item svelte-1pcdei1"><span style="color:var(--text-muted)" class="svelte-1pcdei1">✕</span> </button> <div class="dropdown-divider svelte-1pcdei1"></div>',1),bi=R('<div class="dropdown-empty svelte-1pcdei1"></div>'),wi=R('<button class="dropdown-item svelte-1pcdei1"> </button>'),ki=R('<div class="dropdown-menu run-pick-menu svelte-1pcdei1"><!> <!></div>'),Ei=R('<button class="dropdown-item svelte-1pcdei1"> </button>'),Ri=R('<div class="dropdown-menu svelte-1pcdei1"></div>'),xi=R('<label class="runner-option svelte-1pcdei1"><input type="checkbox" class="svelte-1pcdei1"> <span class="runner-dot built-in svelte-1pcdei1"></span> <span class="svelte-1pcdei1"></span></label>'),Ai=R('<label class="runner-option svelte-1pcdei1"><input type="checkbox" class="svelte-1pcdei1"> <span class="runner-dot remote svelte-1pcdei1"></span> <span class="svelte-1pcdei1"> </span></label>'),Ti=R('<div class="dropdown-menu runners-menu svelte-1pcdei1"><!> <!></div>'),Bi=R('<div class="ctrl-divider svelte-1pcdei1"></div> <div class="ctrl-group svelte-1pcdei1"><span class="ctrl-label svelte-1pcdei1"></span> <div class="dropdown-wrap svelte-1pcdei1"><button class="dropdown-trigger svelte-1pcdei1"><span class="svelte-1pcdei1"> </span> <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" class="trigger-chevron svelte-1pcdei1"><polyline points="6 9 12 15 18 9" class="svelte-1pcdei1"></polyline></svg></button> <!></div></div>',1),Si=R('<button type="button" class="notify-btn svelte-1pcdei1"></button>'),Ci=R('<button type="button" class="notify-btn svelte-1pcdei1"></button>'),Li=R('<div class="ctrl-divider svelte-1pcdei1"></div> <div class="ctrl-group svelte-1pcdei1"><span class="ctrl-label svelte-1pcdei1"></span> <div class="notify-toggles svelte-1pcdei1"><!> <!></div></div>',1),Ni=R('<span class="meta-dot svelte-1pcdei1">·</span> ',1),Oi=R('<div class="run-card svelte-1pcdei1"><span class="run-card-dot svelte-1pcdei1"></span> <a class="run-card-main svelte-1pcdei1"><div class="run-card-info svelte-1pcdei1"><span class="run-card-label svelte-1pcdei1"> </span> <span class="run-card-meta svelte-1pcdei1"> <!></span></div> <!> <svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" class="run-card-arrow svelte-1pcdei1"><line x1="5" y1="12" x2="19" y2="12" class="svelte-1pcdei1"></line><polyline points="12 5 19 12 12 19" class="svelte-1pcdei1"></polyline></svg></a> <button class="run-card-cancel svelte-1pcdei1"><svg width="12" height="12" viewBox="0 0 14 14" fill="none" class="svelte-1pcdei1"><path d="M1 1l12 12M13 1L1 13" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" class="svelte-1pcdei1"></path></svg></button></div>'),Ui=R('<div class="empty-runs svelte-1pcdei1"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="empty-icon svelte-1pcdei1"><circle cx="12" cy="12" r="10" class="svelte-1pcdei1"></circle><line x1="10" y1="15" x2="10" y2="12" class="svelte-1pcdei1"></line><line x1="10" y1="9" x2="10.01" y2="9" class="svelte-1pcdei1"></line></svg> </div>'),Pi=R('<div class="body svelte-1pcdei1"><!> <!></div>'),qi=R('<!> <div class="panel svelte-1pcdei1"><div class="scan-line svelte-1pcdei1"></div> <div class="bar svelte-1pcdei1"><div class="bar-left svelte-1pcdei1"><div class="bar-status svelte-1pcdei1"><span class="status-dot svelte-1pcdei1"></span> <span class="status-word svelte-1pcdei1"> </span></div> <!></div> <span class="flex-gap svelte-1pcdei1"></span> <div class="bar-center svelte-1pcdei1"><!> <div class="ctrl-group svelte-1pcdei1"><span class="ctrl-label svelte-1pcdei1"></span> <div class="dropdown-wrap svelte-1pcdei1"><button class="dropdown-trigger svelte-1pcdei1"><span class="svelte-1pcdei1"> </span> <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" class="trigger-chevron svelte-1pcdei1"><polyline points="6 9 12 15 18 9" class="svelte-1pcdei1"></polyline></svg></button> <!></div></div> <div class="ctrl-divider svelte-1pcdei1"></div> <div class="ctrl-group svelte-1pcdei1"><span class="ctrl-label svelte-1pcdei1"></span> <div class="stepper svelte-1pcdei1"><button class="step-btn svelte-1pcdei1">−</button> <span class="step-val svelte-1pcdei1"> </span> <button class="step-btn svelte-1pcdei1">+</button></div></div> <div class="ctrl-divider svelte-1pcdei1"></div> <div class="ctrl-group svelte-1pcdei1"><span class="ctrl-label svelte-1pcdei1"></span> <div class="dropdown-wrap svelte-1pcdei1"><button class="dropdown-trigger svelte-1pcdei1"><span class="svelte-1pcdei1"> </span> <svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" class="trigger-chevron svelte-1pcdei1"><polyline points="6 9 12 15 18 9" class="svelte-1pcdei1"></polyline></svg></button> <!></div></div> <!> <!> <div class="ctrl-divider svelte-1pcdei1"></div> <button class="run-btn svelte-1pcdei1"><svg width="9" height="10" viewBox="0 0 10 12" fill="currentColor" stroke="none" class="svelte-1pcdei1"><polygon points="0,0 10,6 0,12" class="svelte-1pcdei1"></polygon></svg> </button></div> <span class="flex-gap-sm svelte-1pcdei1"></span> <button class="expand-btn svelte-1pcdei1"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svelte-1pcdei1"><polyline points="18 15 12 9 6 15" class="svelte-1pcdei1"></polyline></svg></button></div> <!></div>',1);function Ii(n,e){Ht(e,!1);const[t,s]=zt(),r=()=>we(ye,"$runnerConfig",t),c=()=>we(Ke,"$backgroundRuns",t),d=()=>we(In,"$runsVersion",t),_=()=>we(Pe,"$panelExpanded",t),k=()=>we(Ct,"$builtInEnabled",t),L=q(),C=q(),D=q(),I=q(),J=q(),he=q(),Be=q(),Le=q(),se=q();let X=q([]),oe=q([]),A=q(null),ae=q(!1),ne=q(!1),ge=q(!1),re=q(!1),ke=q(!1),M=q({discordWebhookUrl:"",slackWebhookUrl:"",notifyPublicUrl:""}),N=q(!1),K=q(!1);function Y(o){function l(b){o.contains(b.target)||o.dispatchEvent(new CustomEvent("clickoutside"))}return document.addEventListener("click",l,!0),{destroy(){document.removeEventListener("click",l,!0)}}}let ce,W,ee,z,Q=q(null);Kt(()=>{try{const a=localStorage.getItem("plum:runnerConfig");a&&ye.update(h=>({...h,...JSON.parse(a)}))}catch{}try{const a=localStorage.getItem("plum:panelExpanded");a!==null&&Pe.set(a==="true")}catch{}try{const a=localStorage.getItem("plum:builtInEnabled");a!==null&&Ct.set(a!=="false")}catch{}yn().then(a=>{E(X,a);const h=new Set([Ae,...a.map(p=>p.id)]);ye.update(p=>{const m=p.selectedRunners.filter(g=>h.has(g));return{...p,selectedRunners:m.length>0?m:[Ae]}})}).catch(()=>{}),bn().then(a=>E(M,a)).catch(()=>{}),sr().then(a=>{a.length!==0&&(Ke.update(h=>{const p={...h};for(const{runId:m,kind:g,label:y,meta:B,status:O}of a)p[m]||(p[m]=_s({kind:g,label:y,meta:B,status:O}));return p}),Pe.set(!0))}).catch(()=>{}),ce=ye.subscribe(a=>{try{localStorage.setItem("plum:runnerConfig",JSON.stringify(a))}catch{}}),W=Pe.subscribe(a=>{try{localStorage.setItem("plum:panelExpanded",String(a))}catch{}}),ee=Ct.subscribe(a=>{try{localStorage.setItem("plum:builtInEnabled",String(a))}catch{}ye.update(h=>{if(!a&&h.selectedRunners.includes(Ae)){const p=h.selectedRunners.filter(g=>g!==Ae),m=p.length>0?p:i(X)[0]?[i(X)[0].id]:[];return{...h,selectedRunners:m}}return h})});const o=at(un,{transports:["websocket"]});z=o,wn.set(o),o.on(be.REPORT_READY,()=>gs.update(a=>a+1));function l(a,h){Ke.update(p=>p[a]?{...p,[a]:h(p[a])}:p)}function b(a,{kind:h,label:p,meta:m},g){Ke.update(y=>({...y,[a]:y[a]?{...y[a],status:g}:_s({kind:h,label:p,meta:m,status:g})})),Pe.set(!0)}o.on(be.BG_RUN_QUEUED,({runId:a,kind:h,label:p,meta:m})=>{b(a,{kind:h,label:p,meta:m},"queued")}),o.on(be.BG_RUN_START,({runId:a,kind:h,label:p,meta:m})=>{b(a,{kind:h,label:p,meta:m},"running")}),o.on(be.BG_RUN_LOG,({runId:a,log:h})=>{l(a,p=>({...p,output:p.output+h}))}),o.on(be.BG_RUN_LANES_INIT,({runId:a,lanes:h})=>{l(a,p=>({...p,lanes:h.map(m=>({...m,status:"running",logs:""}))}))});function T(a,h,p){const m=a.lanes.some(g=>g.id===h)?a.lanes.map(g=>g.id===h?{...g,...p(g)}:g):[...a.lanes,{id:h,name:h,testCount:0,status:"running",logs:"",...p({logs:""})}];return{...a,lanes:m}}o.on(be.BG_RUN_LANE_LOG,({runId:a,laneId:h,log:p})=>{l(a,m=>T(m,h,g=>({logs:(g.logs||"")+p})))}),o.on(be.BG_RUN_LANE_STATUS,({runId:a,laneId:h,status:p})=>{l(a,m=>T(m,h,()=>({status:p})))}),o.on(be.BG_RUN_LANE_RRWEB_BATCH,({runId:a,...h})=>{l(a,p=>({...p,rrwebByLane:kn(p.rrwebByLane,h)}))}),o.on(be.BG_RUN_DONE,({runId:a,code:h,reportId:p})=>{const m=h===0||h===null,g=h===130;l(a,y=>({...y,status:"done",testCompleted:!g,latestReportId:g?null:p,verdict:g?"cancelled":m?"pass":"fail"})),!g&&p&&E(Q,{reportId:p,verdict:m?"pass":"fail"}),g||gs.update(y=>y+1),setTimeout(()=>{Ke.update(y=>{const B={...y};return delete B[a],B})},dn+5e3)})}),ln(()=>{ce==null||ce(),W==null||W(),ee==null||ee(),z==null||z.disconnect()});async function Se(o){E(re,!1),E(A,{id:o.id,title:o.title,tags:null}),E(ae,!0);try{const b=(await tr(o.id)).entries.filter(T=>{var a;return(a=T.case)==null?void 0:a.isAutomated}).map(T=>`@${T.case.displayId}`);E(A,{id:o.id,title:o.title,tags:b})}catch{E(A,null)}finally{E(ae,!1)}}function Je(){E(A,null)}function Ee(){const o={notifyDiscord:i(N),notifySlack:i(K)};if(i(A)){if(i(ae)||!i(A).tags||i(A).tags.length===0)return;Lt(i(A).tags.join(" or "),i(A).id,o,i(A).title)}else r().testID.trim()===""?E(ke,!0):Lt(void 0,void 0,o)}function ht(o){o.key==="Enter"&&!i(A)&&Ee()}function Zt(o){ye.update(l=>({...l,workers:Math.max(ps,Math.min(fs,l.workers+o))}))}function es(o){ye.update(l=>{const b=l.selectedRunners;if(b.includes(o)&&b.length===1)return l;const T=b.includes(o)?b.filter(a=>a!==o):[...b,o];return{...l,selectedRunners:T}})}function ut(o){return r().selectedRunners.includes(o)}fe(()=>r(),()=>{E(L,r())}),fe(()=>c(),()=>{E(C,Object.entries(c()).filter(([,o])=>o.status==="queued"||o.status==="running"))}),fe(()=>i(C),()=>{E(D,i(C).filter(([,o])=>o.status==="running").length)}),fe(()=>i(C),()=>{E(I,i(C).filter(([,o])=>o.status==="queued").length)}),fe(()=>i(C),()=>{E(J,i(C).length>0)}),fe(()=>(d(),ds),()=>{d()>=0&&er({limit:ds}).then(o=>E(oe,o.runs)).catch(()=>{})}),fe(()=>(i(D),i(I),i(Q)),()=>{var o,l;E(he,i(D)>0?"var(--accent)":i(I)>0?"var(--warn)":((o=i(Q))==null?void 0:o.verdict)==="pass"?"var(--pass)":((l=i(Q))==null?void 0:l.verdict)==="fail"?"var(--fail)":"var(--border)")}),fe(()=>(i(D),i(I),i(Q)),()=>{var o;E(Be,En({running:i(D),queued:i(I),verdict:(o=i(Q))==null?void 0:o.verdict}))}),fe(()=>i(L),()=>{E(Le,Bt.find(o=>o.id===i(L).browser)??Bt[0])}),fe(()=>(i(L),i(X)),()=>{E(se,Rn(i(L),i(X)))}),hn(),Wt();var ts=qi(),ss=G(ts);ir(ss,{title:An,confirmLabel:xn,get open(){return i(ke)},set open(o){E(ke,o)},$$events:{confirm:()=>{E(ke,!1),Lt(void 0,void 0,{notifyDiscord:i(N),notifySlack:i(K)})}},children:(o,l)=>{We();var b=pi(),T=G(b);T.nodeValue=`${Tn} `;var a=u(T);a.textContent=Bn;var h=u(a);h.nodeValue=` ${Sn}`,w(o,b)},$$slots:{default:!0},$$legacy:!0});var dt=u(ss,2),Xe=v(dt),pt=u(Xe,2),ft=v(pt),vt=v(ft),_t=v(vt),gt=u(_t,2),Vs=v(gt,!0);f(gt),f(vt);var Ms=u(vt,2);{var Fs=o=>{var l=fi(),b=v(l);b.nodeValue=`${Dn} `,We(),f(l),$(T=>j(l,"href",T),[()=>Zn(i(Q).reportId)],Z),Ce(3,l,()=>He,()=>({x:-6,duration:200})),w(o,l)};P(Ms,o=>{var l;!i(J)&&((l=i(Q))!=null&&l.reportId)&&o(Fs)})}f(ft);var mt=u(ft,4),ns=v(mt);{var Ws=o=>{var l=gi(),b=u(v(l),2),T=v(b,!0);f(b);var a=u(b,2);{var h=g=>{var y=vi();w(g,y)},p=g=>{var y=qe(),B=G(y);{var O=F=>{var te=_i(),ue=v(te,!0);f(te),$(Me=>{S(te,"none",i(A).tags.length===0),H(ue,Me)},[()=>Qn(i(A).tags.length)],Z),w(F,te)};P(B,F=>{i(A).tags!==null&&F(O)},!0)}w(g,y)};P(a,g=>{i(ae)?g(h):g(p,!1)})}var m=u(a,2);j(m,"aria-label",$n),f(l),$(()=>{S(l,"loading",i(ae)),H(T,i(A).title)}),U("click",m,Je),w(o,l)},Hs=o=>{var l=mi(),b=u(v(l),2);St(b),f(l),$(()=>pn(b,r().testID)),U("input",b,T=>ye.update(a=>({...a,testID:T.currentTarget.value}))),U("keydown",b,ht),w(o,l)};P(ns,o=>{i(A)?o(Ws):o(Hs,!1)})}var yt=u(ns,2),rs=v(yt);rs.textContent=Cn;var Ge=u(rs,2),Ne=v(Ge),bt=v(Ne),Ks=v(bt,!0);f(bt);var Ys=u(bt,2);f(Ne);var zs=u(Ne,2);{var js=o=>{var l=ki(),b=v(l);{var T=m=>{var g=yi(),y=G(g),B=u(v(y));B.nodeValue=` ${fn}`,f(y),We(2),U("click",y,Je),w(m,g)};P(b,m=>{i(A)&&m(T)})}var a=u(b,2);{var h=m=>{var g=bi();g.textContent=jn,w(m,g)},p=m=>{var g=qe(),y=G(g);Ie(y,1,()=>i(oe).filter(B=>B.status!=="complete"),je,(B,O)=>{var F=wi(),te=v(F,!0);f(F),$(()=>{var ue;S(F,"active",((ue=i(A))==null?void 0:ue.id)===i(O).id),H(te,i(O).title)}),U("click",F,()=>Se(i(O))),w(B,F)}),w(m,g)};P(a,m=>{i(oe).filter(g=>g.status!=="complete").length===0?m(h):m(p,!1)})}f(l),Ce(3,l,()=>He,()=>({y:6,duration:130})),w(o,l)};P(zs,o=>{i(re)&&o(js)})}f(Ge),Nt(Ge,o=>Y==null?void 0:Y(o)),nt(()=>U("clickoutside",Ge,()=>E(re,!1))),f(yt);var wt=u(yt,4),is=v(wt);is.textContent=Ln;var os=u(is,2),kt=v(os),Et=u(kt,2),Js=v(Et,!0);f(Et);var as=u(Et,2);f(os),f(wt);var Rt=u(wt,4),cs=v(Rt);cs.textContent=Nn;var Qe=u(cs,2),$e=v(Qe),xt=v($e),Xs=v(xt,!0);f(xt);var Gs=u(xt,2);f($e);var Qs=u($e,2);{var Zs=o=>{var l=Ri();Ie(l,5,()=>Bt,je,(b,T)=>{var a=Ei(),h=v(a,!0);f(a),$(()=>{S(a,"active",i(L).browser===i(T).id),H(h,i(T).label)}),U("click",a,()=>{ye.update(p=>({...p,browser:i(T).id})),E(ne,!1)}),w(b,a)}),f(l),Ce(3,l,()=>He,()=>({y:6,duration:130})),w(o,l)};P(Qs,o=>{i(ne)&&o(Zs)})}f(Qe),Nt(Qe,o=>Y==null?void 0:Y(o)),nt(()=>U("clickoutside",Qe,()=>E(ne,!1))),f(Rt);var ls=u(Rt,2);{var en=o=>{var l=Bi(),b=u(G(l),2),T=v(b);T.textContent=Vn;var a=u(T,2),h=v(a),p=v(h),m=v(p,!0);f(p);var g=u(p,2);f(h);var y=u(h,2);{var B=O=>{var F=Ti(),te=v(F);{var ue=Re=>{var de=xi(),pe=v(de);St(pe);var xe=u(pe,4);xe.textContent=gn,f(de),$(Oe=>vs(pe,Oe),[()=>ut(Ae)],Z),U("change",pe,()=>es(Ae)),w(Re,de)};P(te,Re=>{(k()||ut(Ae))&&Re(ue)})}var Me=u(te,2);Ie(Me,1,()=>i(X),je,(Re,de)=>{var pe=Ai(),xe=v(pe);St(xe);var Oe=u(xe,4),At=v(Oe,!0);f(Oe),f(pe),$(Fe=>{vs(xe,Fe),H(At,i(de).name)},[()=>ut(i(de).id)],Z),U("change",xe,()=>es(i(de).id)),w(Re,pe)}),f(F),Ce(3,F,()=>He,()=>({y:6,duration:130})),w(O,F)};P(y,O=>{i(ge)&&O(B)})}f(a),Nt(a,O=>Y==null?void 0:Y(O)),nt(()=>U("clickoutside",a,()=>E(ge,!1))),f(b),$(O=>{S(h,"open",i(ge)),S(h,"has-remote",O),H(m,i(se)),S(g,"open",i(ge))},[()=>i(L).selectedRunners.some(O=>O!==Ae)],Z),U("click",h,()=>{E(ge,!i(ge))}),w(o,l)};P(ls,o=>{i(X).length>0&&o(en)})}var hs=u(ls,2);{var tn=o=>{var l=Li(),b=u(G(l),2),T=v(b);T.textContent=Mn;var a=u(T,2),h=v(a);{var p=y=>{var B=Si();B.textContent=vn,$(O=>{j(B,"title",O),S(B,"active",i(N))},[()=>Jn(i(N))],Z),U("click",B,()=>E(N,!i(N))),w(y,B)};P(h,y=>{i(M).discordWebhookUrl&&y(p)})}var m=u(h,2);{var g=y=>{var B=Ci();B.textContent=_n,$(O=>{j(B,"title",O),S(B,"active",i(K))},[()=>Xn(i(K))],Z),U("click",B,()=>E(K,!i(K))),w(y,B)};P(m,y=>{i(M).slackWebhookUrl&&y(g)})}f(a),f(b),w(o,l)};P(hs,o=>{(i(M).discordWebhookUrl||i(M).slackWebhookUrl)&&o(tn)})}var Ve=u(hs,4),sn=u(v(Ve));sn.nodeValue=` ${On}`,f(Ve),f(mt);var Ze=u(mt,4),nn=v(Ze);f(Ze),f(pt);var rn=u(pt,2);{var on=o=>{var l=Pi(),b=v(l);Ie(b,3,()=>i(C),([h,p])=>h,(h,p,m)=>{let g=()=>i(p)[0],y=()=>i(p)[1];var B=Oi(),O=v(B),F=u(O,2),te=v(F),ue=v(te),Me=v(ue,!0);f(ue);var Re=u(ue,2),de=v(Re),pe=u(de);{var xe=me=>{var Ue=Ni(),et=u(G(Ue));$(Tt=>H(et,` ${Tt??""}`),[()=>zn(y().currentRun.startedBy)],Z),w(me,Ue)};P(pe,me=>{var Ue;(Ue=y().currentRun)!=null&&Ue.startedBy&&me(xe)})}f(Re),f(te);var Oe=u(te,2);const At=Z(()=>y().status==="queued"?"tag":rr(y().kind));or(Oe,{get variant(){return i(At)},children:(me,Ue)=>{We();var et=an();$(Tt=>H(et,Tt),[()=>y().status==="queued"?Fn:nr(y().kind)],Z),w(me,et)},$$slots:{default:!0}}),We(2),f(F);var Fe=u(F,2);j(Fe,"title",ms),j(Fe,"aria-label",ms),f(B),$(me=>{S(B,"active-run",y().status==="running"),S(B,"queued-run",y().status==="queued"),S(O,"pulse-accent",y().status==="running"),S(O,"queued-dot",y().status==="queued"),j(F,"href",`/live/${g()??""}`),H(Me,y().label||Kn),H(de,`${me??""} `)},[()=>y().status==="queued"?Wn(i(C).slice(0,i(m)).filter(([,me])=>me.status==="queued").length+1):Hn(y().kind)],Z),U("click",Fe,()=>Yn(g())),Ce(3,B,()=>He,()=>({x:-4,duration:160})),w(h,B)});var T=u(b,2);{var a=h=>{var p=Ui(),m=u(v(p));m.nodeValue=` ${Gn}`,f(p),w(h,p)};P(T,h=>{i(J)||h(a)})}f(l),Ce(3,l,()=>Rs,()=>({duration:200})),w(o,l)};P(rn,o=>{_()&&o(on)})}f(dt),$(o=>{var l,b,T,a;S(dt,"expanded",_()),S(Xe,"scanning",i(D)>0),S(Xe,"line-pass",((l=i(Q))==null?void 0:l.verdict)==="pass"&&!i(J)),S(Xe,"line-fail",((b=i(Q))==null?void 0:b.verdict)==="fail"&&!i(J)),j(_t,"style",`background:${i(he)??""}`),S(_t,"pulse",i(D)>0),j(gt,"style",`color:${i(he)??""}`),H(Vs,i(Be)),S(Ne,"open",i(re)),S(Ne,"has-remote",!!i(A)),H(Ks,i(A)?i(A).title:Pn),S(Ys,"open",i(re)),kt.disabled=i(L).workers<=ps,H(Js,i(L).workers),as.disabled=i(L).workers>=fs,S($e,"open",i(ne)),H(Xs,i(Le).label),S(Gs,"open",i(ne)),Ve.disabled=i(ae)||i(A)&&((T=i(A).tags)==null?void 0:T.length)===0,j(Ve,"title",i(A)&&((a=i(A).tags)==null?void 0:a.length)===0?qn:void 0),j(Ze,"aria-label",o),S(nn,"flipped",_())},[()=>Un(_())],Z),U("click",Ne,()=>{E(re,!i(re))}),U("click",kt,()=>Zt(-1)),U("click",as,()=>Zt(1)),U("click",$e,()=>{E(ne,!i(ne))}),U("click",Ve,Ee),U("click",Ze,()=>Pe.update(o=>!o)),w(n,ts),Yt(),s()}var Di=R("<!> <!> <!>",1),$i=R('<div class="boot-loading svelte-3qbr79">Loading…</div>');function oo(n,e){Ht(e,!1);const[t,s]=zt(),r=()=>we(xs,"$page",t),c=()=>we(As,"$auth",t),d=["/login","/setup"];let _=q(!1);Kt(async()=>{const I=r().url.pathname;if(d.includes(I)){E(_,!0);return}if(c().token){E(_,!0);return}try{const he=await ar();await us(he?"/setup":"/login")}catch{await us("/login")}finally{E(_,!0)}}),Wt();var k=qe(),L=G(k);{var C=I=>{var J=qe(),he=G(J);{var Be=se=>{var X=qe(),oe=G(X);qt(oe,e,"default",{},null),w(se,X)},Le=se=>{var X=Di(),oe=G(X);mr(oe,{});var A=u(oe,2);br(A,{children:(ne,ge)=>{var re=qe(),ke=G(re);qt(ke,e,"default",{},null),w(ne,re)},$$slots:{default:!0}});var ae=u(A,2);Ii(ae,{}),w(se,X)};P(he,se=>{r().url.pathname==="/login"||r().url.pathname==="/setup"?se(Be):se(Le,!1)})}w(I,J)},D=I=>{var J=$i();w(I,J)};P(L,I=>{i(_)?I(C):I(D,!1)})}w(n,k),Yt(),s()}export{oo as component,ro as universal};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{h as ya,e as oe,a as l,t as c,c as ce,s as o,r as ba,b as Re}from"../chunks/CfkUW1vA.js";import{i as La}from"../chunks/C00jnSU2.js";import{p as Ta,m as f,o as $a,s as i,l as Fe,b as Aa,f as W,t as S,g as e,c as wa,d as s,j as r,$ as Sa,k as a,n as Le,v as Ia,x as ve,y as De}from"../chunks/CeH-RgMb.js";import{i as y}from"../chunks/CegSvdD-.js";import{e as xe,i as ut,t as Ke,a as pt,f as gt,s as je}from"../chunks/Beula-TH.js";import{s as R,b as Ca,r as ht,C as Ut,c as ka,S as Ra,d as Ht,L as Vt,a as Xe}from"../chunks/DuAVKaL3.js";import{b as Ze}from"../chunks/BAvTKHxT.js";import{T as Da,B as Me,b as Ma}from"../chunks/CZWchtW8.js";import{f as Ba,a as Oa,s as Ft,d as Na,b as Pa,c as Ua,e as Ha,g as Va}from"../chunks/Dl-F6VCo.js";import{r as jt}from"../chunks/BJ_ypKl3.js";import{P as Gt}from"../chunks/DWzEJYIF.js";import{E as xt}from"../chunks/Cfmt4_tJ.js";import{C as Yt}from"../chunks/DAmOMhaf.js";import{M as Wt}from"../chunks/DgQy0SB2.js";import{H as Fa,a as ja,S as Ga,R as Ya,F as Wa,P as qa,D as qt,b as Ja,c as Qa,N as za,d as Ka,e as Xa,f as Za,g as es,h as ts,i as as,j as ss,T as rs,k as is,l as ls,m as ns,s as os,n as vs,r as ds,o as cs,p as _s,q as us,t as ps,u as gs,v as hs,w as xs,x as fs,y as ms,z as Es,A as ys,B as bs,C as Jt,E as et,G as tt,I as Ls,J as Ts,K as Qt,L as zt,M as $s,O as As,Q as ws,U as Ss}from"../chunks/2-KCkWZO.js";var Is=c("Delete <strong> </strong>? This cannot be undone.",1),Cs=c(" <strong> </strong> ",1),ks=c("<option> </option>"),Rs=c('<p class="form-error svelte-9ix8dg"> </p>'),Ds=c('<div class="form-fields svelte-9ix8dg"><div class="field"><label class="field-label" for="suite-name"></label> <input id="suite-name" type="text" class="field-input"></div> <div class="field"><label class="field-label" for="suite-desc"></label> <textarea id="suite-desc" class="field-input field-textarea svelte-9ix8dg" rows="3"></textarea></div> <div class="field"><label class="field-label" for="suite-prio"></label> <select id="suite-prio" class="field-input"></select></div> <!> <div class="modal-actions svelte-9ix8dg"><!> <!></div></div>'),Ms=c('<p class="form-error svelte-9ix8dg"> </p>'),Bs=c('<div class="form-fields svelte-9ix8dg"><div class="field"><label class="field-label" for="run-title"></label> <input id="run-title" type="text" class="field-input"></div> <!> <div class="modal-actions svelte-9ix8dg"><!> <!></div></div>'),Os=c('<button class="search-clear svelte-9ix8dg"><svg width="12" height="12" viewBox="0 0 14 14" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"><path d="M1 1l12 12M13 1L1 13"></path></svg></button>'),Ns=c('<span class="sort-dir svelte-9ix8dg"> </span>'),Ps=c('<button class="sort-chip svelte-9ix8dg"> <!></button>'),Us=c('<span class="sort-dir svelte-9ix8dg"> </span>'),Hs=c('<button class="sort-chip svelte-9ix8dg"> <!></button>'),Vs=c('<div class="sort-bar svelte-9ix8dg"><span class="sort-label svelte-9ix8dg"></span> <!></div>'),Fs=c('<div class="loading-row svelte-9ix8dg"></div>'),js=c('<div class="loading-row svelte-9ix8dg"></div>'),Gs=c('<span class="auto-badge svelte-9ix8dg"></span>'),Ys=c('<a class="case-result-row svelte-9ix8dg"><span class="id-chip small svelte-9ix8dg"> </span> <span class="case-result-title svelte-9ix8dg"> </span> <!> <span> </span> <span class="case-result-suite svelte-9ix8dg"> </span></a>'),Ws=c('<div class="search-section svelte-9ix8dg"><h2 class="search-section-title svelte-9ix8dg"> <span class="tab-count svelte-9ix8dg"> </span></h2> <div class="case-results svelte-9ix8dg"></div></div>'),qs=c('<p class="suite-desc svelte-9ix8dg"> </p>'),Js=c('<div class="suite-card svelte-9ix8dg"><a class="card-link svelte-9ix8dg"></a> <div class="suite-card-header svelte-9ix8dg"><span class="id-chip svelte-9ix8dg"> </span> <span> </span> <div class="suite-card-actions svelte-9ix8dg"><button class="icon-btn danger svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"></path><path d="M10 11v6M14 11v6"></path><path d="M9 6V4h6v2"></path></svg></button></div></div> <h3 class="suite-name svelte-9ix8dg"> </h3> <!> <div class="suite-meta svelte-9ix8dg"><span class="meta-item svelte-9ix8dg"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2"></path></svg> </span> <span class="meta-item svelte-9ix8dg"> </span></div></div>'),Qs=c('<div class="search-section svelte-9ix8dg"><h2 class="search-section-title svelte-9ix8dg"> <span class="tab-count svelte-9ix8dg"> </span></h2> <div class="suite-grid svelte-9ix8dg"></div></div>'),zs=c('<div class="run-row svelte-9ix8dg"><a class="card-link svelte-9ix8dg"></a> <div class="run-row-main svelte-9ix8dg"><span></span> <span class="run-title svelte-9ix8dg"> </span> <span class="run-count svelte-9ix8dg"> </span></div> <div class="run-meta svelte-9ix8dg"><span class="run-status-label svelte-9ix8dg"> </span> <span class="meta-sep svelte-9ix8dg">·</span> <span> </span> <span class="meta-sep svelte-9ix8dg">·</span> <span> </span></div> <div class="run-row-actions svelte-9ix8dg"><button class="icon-btn svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg></button> <button class="icon-btn danger svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"></path><path d="M10 11v6M14 11v6"></path><path d="M9 6V4h6v2"></path></svg></button></div></div>'),Ks=c('<div class="search-section svelte-9ix8dg"><h2 class="search-section-title svelte-9ix8dg">Runs <span class="tab-count svelte-9ix8dg"> </span></h2> <div class="runs-list svelte-9ix8dg"></div></div>'),Xs=c("<!> <!> <!>",1),Zs=c("<div><!></div>"),er=c('<div class="loading-row svelte-9ix8dg"></div>'),tr=c('<p class="suite-desc svelte-9ix8dg"> </p>'),ar=c('<div class="suite-card svelte-9ix8dg"><a class="card-link svelte-9ix8dg"></a> <div class="suite-card-header svelte-9ix8dg"><span class="id-chip svelte-9ix8dg"> </span> <span> </span> <div class="suite-card-actions svelte-9ix8dg"><button class="icon-btn danger svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"></path><path d="M10 11v6M14 11v6"></path><path d="M9 6V4h6v2"></path></svg></button></div></div> <h3 class="suite-name svelte-9ix8dg"> </h3> <!> <div class="suite-meta svelte-9ix8dg"><span class="meta-item svelte-9ix8dg"><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2"></path></svg> </span> <span class="meta-item svelte-9ix8dg"> </span></div></div>'),sr=c('<div class="pagination-row svelte-9ix8dg"><!></div>'),rr=c('<div class="suite-grid svelte-9ix8dg"></div> <!>',1),ir=c("<div><!></div>"),lr=c('<div class="loading-row svelte-9ix8dg"></div>'),nr=c('<div class="run-row svelte-9ix8dg"><a class="card-link svelte-9ix8dg"></a> <div class="run-row-main svelte-9ix8dg"><span></span> <span class="run-title svelte-9ix8dg"> </span> <span class="run-count svelte-9ix8dg"> </span></div> <div class="run-meta svelte-9ix8dg"><span class="run-status-label svelte-9ix8dg"> </span> <span class="meta-sep svelte-9ix8dg">·</span> <span> </span> <span class="meta-sep svelte-9ix8dg">·</span> <span> </span></div> <div class="run-row-actions svelte-9ix8dg"><button class="icon-btn svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg></button> <button class="icon-btn danger svelte-9ix8dg"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"></path><path d="M10 11v6M14 11v6"></path><path d="M9 6V4h6v2"></path></svg></button></div></div>'),or=c('<div class="pagination-row svelte-9ix8dg"><!></div>'),vr=c('<div class="runs-list svelte-9ix8dg"></div> <!>',1),dr=c("<div><!></div>"),cr=c('<!> <!> <!> <!> <!> <div class="page-header svelte-9ix8dg"><div class="header-text svelte-9ix8dg"><h1 class="svelte-9ix8dg"></h1> <p class="header-desc svelte-9ix8dg"></p></div> <div class="header-actions svelte-9ix8dg"><!></div></div> <div class="tabs svelte-9ix8dg"><button class="tab svelte-9ix8dg"> <span class="tab-count svelte-9ix8dg"> </span></button> <button class="tab svelte-9ix8dg"> <span class="tab-count svelte-9ix8dg"> </span></button></div> <div class="search-bar svelte-9ix8dg"><svg class="search-icon svelte-9ix8dg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg> <input type="search" class="search-input svelte-9ix8dg"> <!></div> <!> <!>',1);function wr(Kt,Xt){Ta(Xt,!1);const _e=f(),Be=f(),Te=f(),$e=f();let Ae=f(typeof sessionStorage<"u"&&sessionStorage.getItem("plum:repo:tab")||"suites");function ft(t){i(Ae,t);try{sessionStorage.setItem("plum:repo:tab",t)}catch{}}function mt(t,n){try{const v=sessionStorage.getItem(t);if(v)return JSON.parse(v)}catch{}return n}function Et(t,n){try{sessionStorage.setItem(t,JSON.stringify(n))}catch{}}let fe=f([]),ue=f(0),yt=f(1),K=f(mt("plum:repo:suites:sort",{by:"createdAt",order:"desc"})),de=f([]),pe=f(0),bt=f(1),re=f(mt("plum:repo:runs:sort",{by:"createdAt",order:"desc"}));const Lt={Critical:0,High:1,Medium:2,Low:3};function Zt(t,n){return[...t].sort((v,L)=>{const D=(Lt[v.priority]??4)-(Lt[L.priority]??4);return n==="asc"?D:-D})}let at=f(!0),st=f(null),ie=f(null),Ge=f(!1),rt=f(null),Oe=f(!1),X=f({name:"",description:"",priority:"Medium"}),Ye=f(!1),we=f(""),Ne=f(!1),Se=f({title:""}),We=f(!1),Ie=f(""),q=f(null),ge=f(!1),Ce=f(null),qe=f(!1),me=f("");const ea=["Critical","High","Medium","Low"];function he(t,n){i(st,{type:t,message:n}),setTimeout(()=>i(st,null),Ca)}async function it(t=1){const n=e(K).by==="priority",v=await Ba({page:t,sortBy:n?"createdAt":e(K).by,sortOrder:e(K).order});i(fe,n?Zt(v.suites,e(K).order):v.suites),i(ue,v.total),i(yt,t)}async function lt(t=1){const n=await Oa({page:t,sortBy:e(re).by,sortOrder:e(re).order});i(de,n.runs),i(pe,n.total),i(bt,t)}async function ta(t){e(K).by===t?De(K,e(K).order=e(K).order==="asc"?"desc":"asc"):i(K,{by:t,order:t==="createdAt"?"desc":"asc"}),Et("plum:repo:suites:sort",e(K)),await it(1)}async function aa(t){e(re).by===t?De(re,e(re).order=e(re).order==="asc"?"desc":"asc"):i(re,{by:t,order:t==="createdAt"||t==="updatedAt"?"desc":"asc"}),Et("plum:repo:runs:sort",e(re)),await lt(1)}$a(async()=>{try{await Promise.all([it(1),lt(1)])}catch{he("error",Wa)}finally{i(at,!1)}});async function sa(){if(!e(X).name.trim()){i(we,gs);return}i(we,""),i(Ye,!0);try{const t=await Ha(e(X));i(fe,[...e(fe),t]),i(ue,e(ue)+1),i(Oe,!1),i(X,{name:"",description:"",priority:"Medium"}),he("success",hs(t.name))}catch(t){i(we,t.message)}finally{i(Ye,!1)}}async function ra(t,n){try{await Na(t),i(fe,e(fe).filter(v=>v.id!==t)),i(ue,e(ue)-1),he("success",os(n))}catch{he("error",vs)}i(q,null),i(ge,!1)}async function ia(){if(!e(Se).title.trim()){i(Ie,xs);return}i(Ie,""),i(We,!0);try{const t=await Va({title:e(Se).title,caseIds:[]});i(de,[t,...e(de)]),i(Ne,!1),i(Se,{title:""}),window.location.href=`/test-repository/runs/${t.id}`}catch(t){i(Ie,t.message)}finally{i(We,!1)}}async function Tt(t){i(Ce,t),i(qe,!0)}async function la(){if(!e(Ce))return;const t=e(Ce);i(Ce,null),i(qe,!1);try{const n=await Ua(t.id);i(de,[n,...e(de)]),i(pe,e(pe)+1),jt.update(v=>v+1),he("success",us(n.title))}catch{he("error",ps)}}async function na(t,n){try{await Pa(t),i(de,e(de).filter(v=>v.id!==t)),i(pe,e(pe)-1),jt.update(v=>v+1),he("success",ds(n))}catch{he("error",cs)}i(q,null),i(ge,!1)}function nt(t){return(t==null?void 0:t.toLowerCase())??"medium"}function $t(t){return t==="complete"?"pass":t==="in-progress"?"warn":"muted"}Fe(()=>e(me),()=>{i(_e,e(me).trim())}),Fe(()=>(e(rt),e(_e),Ft),()=>{clearTimeout(e(rt)),e(_e)?(i(Ge,!0),i(ie,null),i(rt,setTimeout(async()=>{try{i(ie,await Ft(e(_e)))}catch{i(ie,{suites:[],cases:[],runs:[]})}finally{i(Ge,!1)}},300))):(i(ie,null),i(Ge,!1))}),Fe(()=>e(ie),()=>{var t;i(Be,((t=e(ie))==null?void 0:t.cases)??[])}),Fe(()=>e(ie),()=>{var t;i(Te,((t=e(ie))==null?void 0:t.suites)??[])}),Fe(()=>e(ie),()=>{var t;i($e,((t=e(ie))==null?void 0:t.runs)??[])}),Aa(),La();var At=cr();ya(t=>{Sa.title=qa});var wt=W(At);Da(wt,{get toast(){return e(st)}});var St=r(wt,2);const oa=ve(()=>{var t;return _s((t=e(q))==null?void 0:t.type)});Yt(St,{get title(){return e(oa)},get open(){return e(ge)},set open(t){i(ge,t)},$$events:{confirm:()=>{var t;return((t=e(q))==null?void 0:t.type)==="suite"?ra(e(q).id,e(q).name):na(e(q).id,e(q).name)}},children:(t,n)=>{var v=ce(),L=W(v);{var D=x=>{var u=Is(),I=r(W(u)),C=s(I);a(I),Le(),S(()=>o(C,`"${e(q).name??""}"`)),l(x,u)};y(L,x=>{e(q)&&x(D)})}l(t,v)},$$slots:{default:!0},$$legacy:!0});var It=r(St,2);Yt(It,{title:Ja,confirmLabel:qt,get open(){return e(qe)},set open(t){i(qe,t)},$$events:{confirm:la},children:(t,n)=>{var v=ce(),L=W(v);{var D=x=>{var u=Cs(),I=W(u);I.nodeValue=`${qt} `;var C=r(I),M=s(C);a(C);var g=r(C,1,!0);g.nodeValue=Qa,S(()=>o(M,`"${e(Ce).title??""}"`)),l(x,u)};y(L,x=>{e(Ce)&&x(D)})}l(t,v)},$$slots:{default:!0},$$legacy:!0});var Ct=r(It,2);Wt(Ct,{title:za,get open(){return e(Oe)},set open(t){i(Oe,t)},children:(t,n)=>{var v=Ds(),L=s(v),D=s(L);D.textContent=Ka;var x=r(D,2);ht(x),R(x,"placeholder",Xa),a(L);var u=r(L,2),I=s(u);I.textContent=Za;var C=r(I,2);ba(C),R(C,"placeholder",es),a(u);var M=r(u,2),g=s(M);g.textContent=ts;var d=r(g,2);S(()=>{e(X),Ia(()=>{})}),xe(d,5,()=>ea,ut,(p,T)=>{var $=ks(),k={},_=s($,!0);a($),S(()=>{k!==(k=e(T))&&($.value=($.__value=e(T))==null?"":e(T)),o(_,e(T))}),l(p,$)}),a(d),a(M);var B=r(M,2);{var m=p=>{var T=Rs(),$=s(T,!0);a(T),S(()=>o($,e(we))),l(p,T)};y(B,p=>{e(we)&&p(m)})}var U=r(B,2),E=s(U);Me(E,{get disabled(){return e(Ye)},$$events:{click:sa},children:(p,T)=>{Le();var $=Re();S(k=>o($,k),[()=>as(e(Ye))],ve),l(p,$)},$$slots:{default:!0}});var H=r(E,2);Me(H,{variant:"ghost",$$events:{click:()=>{i(Oe,!1),i(we,"")}},children:(p,T)=>{Le();var $=Re();$.nodeValue=Ut,l(p,$)},$$slots:{default:!0}}),a(U),a(v),Ze(x,()=>e(X).name,p=>De(X,e(X).name=p)),Ze(C,()=>e(X).description,p=>De(X,e(X).description=p)),Ma(d,()=>e(X).priority,p=>De(X,e(X).priority=p)),l(t,v)},$$slots:{default:!0},$$legacy:!0});var kt=r(Ct,2);Wt(kt,{title:ss,get open(){return e(Ne)},set open(t){i(Ne,t)},children:(t,n)=>{var v=Bs(),L=s(v),D=s(L);D.textContent=rs;var x=r(D,2);ht(x),R(x,"placeholder",is),a(L);var u=r(L,2);{var I=d=>{var B=Ms(),m=s(B,!0);a(B),S(()=>o(m,e(Ie))),l(d,B)};y(u,d=>{e(Ie)&&d(I)})}var C=r(u,2),M=s(C);Me(M,{get disabled(){return e(We)},$$events:{click:ia},children:(d,B)=>{Le();var m=Re();S(U=>o(m,U),[()=>ls(e(We))],ve),l(d,m)},$$slots:{default:!0}});var g=r(M,2);Me(g,{variant:"ghost",$$events:{click:()=>{i(Ne,!1),i(Ie,"")}},children:(d,B)=>{Le();var m=Re();m.nodeValue=Ut,l(d,m)},$$slots:{default:!0}}),a(C),a(v),Ze(x,()=>e(Se).title,d=>De(Se,e(Se).title=d)),l(t,v)},$$slots:{default:!0},$$legacy:!0});var ot=r(kt,2),vt=s(ot),Rt=s(vt);Rt.textContent=Fa;var va=r(Rt,2);va.textContent=ja,a(vt);var Dt=r(vt,2),da=s(Dt);{var ca=t=>{Me(t,{$$events:{click:()=>i(Oe,!0)},children:(n,v)=>{Le();var L=Re();L.nodeValue=fs,l(n,L)},$$slots:{default:!0}})},_a=t=>{Me(t,{$$events:{click:()=>i(Ne,!0)},children:(n,v)=>{Le();var L=Re();L.nodeValue=ms,l(n,L)},$$slots:{default:!0}})};y(da,t=>{e(Ae)==="suites"?t(ca):t(_a,!1)})}a(Dt),a(ot);var dt=r(ot,2),Pe=s(dt),Mt=s(Pe);Mt.nodeValue=`${Ga} `;var Bt=r(Mt),ua=s(Bt);a(Bt),a(Pe);var Je=r(Pe,2),Ot=s(Je);Ot.nodeValue=`${Ya} `;var Nt=r(Ot),pa=s(Nt);a(Nt),a(Je),a(dt);var ct=r(dt,2),Qe=r(s(ct),2);ht(Qe),R(Qe,"placeholder",ns);var ga=r(Qe,2);{var ha=t=>{var n=Os();R(n,"aria-label",ka),oe("click",n,()=>i(me,"")),l(t,n)};y(ga,t=>{e(me)&&t(ha)})}a(ct);var Pt=r(ct,2);{var xa=t=>{var n=Vs(),v=s(n);v.textContent=Ra;var L=r(v,2);{var D=u=>{var I=ce(),C=W(I);xe(C,0,()=>[["createdAt","Date Created"],["displayId","ID"],["name","Name"],["priority","Priority"]],ut,(M,g)=>{let d=()=>g[0],B=()=>g[1];var m=Ps(),U=s(m),E=r(U);{var H=p=>{var T=Ns(),$=s(T,!0);a(T),S(()=>o($,e(K).order==="asc"?"↑":"↓")),l(p,T)};y(E,p=>{e(K).by===d()&&p(H)})}a(m),S(()=>{Ke(m,"active",e(K).by===d()),o(U,`${B()??""} `)}),oe("click",m,()=>ta(d())),l(M,m)}),l(u,I)},x=u=>{var I=ce(),C=W(I);xe(C,0,()=>[["createdAt","Date Created"],["updatedAt","Last Updated"],["title","Name"]],ut,(M,g)=>{let d=()=>g[0],B=()=>g[1];var m=Hs(),U=s(m),E=r(U);{var H=p=>{var T=Us(),$=s(T,!0);a(T),S(()=>o($,e(re).order==="asc"?"↑":"↓")),l(p,T)};y(E,p=>{e(re).by===d()&&p(H)})}a(m),S(()=>{Ke(m,"active",e(re).by===d()),o(U,`${B()??""} `)}),oe("click",m,()=>aa(d())),l(M,m)}),l(u,I)};y(L,u=>{e(Ae)==="suites"?u(D):u(x,!1)})}a(n),l(t,n)};y(Pt,t=>{e(_e)||t(xa)})}var fa=r(Pt,2);{var ma=t=>{var n=Zs(),v=s(n);{var L=x=>{var u=Fs();u.textContent=Ht,l(x,u)},D=x=>{var u=ce(),I=W(u);{var C=g=>{var d=js();d.textContent=Ht,l(g,d)},M=g=>{var d=ce(),B=W(d);{var m=E=>{const H=ve(()=>$s(e(me)));xt(E,{title:Es,get description(){return e(H)}})},U=E=>{var H=Xs(),p=W(H);{var T=A=>{var w=Ws(),O=s(w),J=s(O);J.nodeValue=`${As} `;var Q=r(J),le=s(Q,!0);a(Q),a(O);var z=r(O,2);xe(z,5,()=>e(Be),b=>b.id,(b,h)=>{var V=Ys(),N=s(V),te=s(N,!0);a(N);var P=r(N,2),ne=s(P,!0);a(P);var Y=r(P,2);{var ae=se=>{var Ee=Gs();Ee.textContent=ws,l(se,Ee)};y(Y,se=>{e(h).isAutomated&&se(ae)})}var F=r(Y,2),j=s(F,!0);a(F);var G=r(F,2),ee=s(G);a(G),a(V),S(se=>{R(V,"href",`/test-repository/suites/${e(h).suite.id??""}`),o(te,e(h).displayId),o(ne,e(h).title),je(F,`priority-badge small ${se??""} svelte-9ix8dg`),o(j,e(h).priority),o(ee,`${e(h).suite.displayId??""} · ${e(h).suite.name??""}`)},[()=>nt(e(h).priority)],ve),l(b,V)}),a(z),a(w),S(()=>o(le,e(Be).length)),l(A,w)};y(p,A=>{e(Be).length>0&&A(T)})}var $=r(p,2);{var k=A=>{var w=Qs(),O=s(w),J=s(O);J.nodeValue=`${Ss} `;var Q=r(J),le=s(Q,!0);a(Q),a(O);var z=r(O,2);xe(z,5,()=>e(Te),b=>b.id,(b,h)=>{var V=Js(),N=s(V),te=r(N,2),P=s(te),ne=s(P,!0);a(P);var Y=r(P,2),ae=s(Y,!0);a(Y);var F=r(Y,2),j=s(F);R(j,"title",Jt),a(F),a(te);var G=r(te,2),ee=s(G,!0);a(G);var se=r(G,2);{var Ee=ye=>{var be=qs(),Ve=s(be,!0);a(be),S(()=>o(Ve,e(h).description)),l(ye,be)};y(se,ye=>{e(h).description&&ye(Ee)})}var ze=r(se,2),ke=s(ze),Ue=r(s(ke));a(ke);var He=r(ke,2),_t=s(He,!0);a(He),a(ze),a(V),S((ye,be,Ve)=>{R(N,"href",`/test-repository/suites/${e(h).id??""}`),R(N,"aria-label",e(h).name),o(ne,e(h).displayId),je(Y,`priority-badge ${ye??""} svelte-9ix8dg`),o(ae,e(h).priority),o(ee,e(h).name),o(Ue,` ${be??""}`),o(_t,Ve)},[()=>nt(e(h).priority),()=>et(e(h)._count.cases),()=>tt(e(h).createdBy.name)],ve),oe("click",j,()=>{i(q,{type:"suite",id:e(h).id,name:e(h).name}),i(ge,!0)}),l(b,V)}),a(z),a(w),S(()=>o(le,e(Te).length)),l(A,w)};y($,A=>{e(Te).length>0&&A(k)})}var _=r($,2);{var Z=A=>{var w=Ks(),O=s(w),J=r(s(O)),Q=s(J,!0);a(J),a(O);var le=r(O,2);xe(le,5,()=>e($e),z=>z.id,(z,b)=>{var h=zs(),V=s(h),N=r(V,2),te=s(N),P=r(te,2),ne=s(P,!0);a(P);var Y=r(P,2),ae=s(Y,!0);a(Y),a(N);var F=r(N,2),j=s(F),G=s(j,!0);a(j);var ee=r(j,4),se=s(ee,!0);a(ee);var Ee=r(ee,4),ze=s(Ee,!0);a(Ee),a(F);var ke=r(F,2),Ue=s(ke);R(Ue,"title",Qt);var He=r(Ue,2);R(He,"title",zt),a(ke),a(h),S((_t,ye,be,Ve)=>{R(V,"href",`/test-repository/runs/${e(b).id??""}`),R(V,"aria-label",e(b).title),je(te,`run-status-dot ${_t??""} svelte-9ix8dg`),o(ne,e(b).title),o(ae,ye),o(G,e(b).status),o(se,be),o(ze,Ve)},[()=>$t(e(b).status),()=>et(e(b)._count.entries),()=>tt(e(b).createdBy.name),()=>new Date(e(b).createdAt).toLocaleDateString()],ve),oe("click",Ue,()=>Tt(e(b))),oe("click",He,()=>{i(q,{type:"run",id:e(b).id,name:e(b).title}),i(ge,!0)}),l(z,h)}),a(le),a(w),S(()=>o(Q,e($e).length)),l(A,w)};y(_,A=>{e($e).length>0&&A(Z)})}l(E,H)};y(B,E=>{e(Be).length===0&&e(Te).length===0&&e($e).length===0?E(m):E(U,!1)},!0)}l(g,d)};y(I,g=>{e(ie)?g(M,!1):g(C)},!0)}l(x,u)};y(v,x=>{e(Ge)?x(L):x(D,!1)})}a(n),pt(3,n,()=>gt,()=>({y:4,duration:160})),l(t,n)},Ea=t=>{var n=ce(),v=W(n);{var L=x=>{var u=ir(),I=s(u);{var C=g=>{var d=er();d.textContent=Vt,l(g,d)},M=g=>{var d=ce(),B=W(d);{var m=E=>{xt(E,{title:bs,description:ys})},U=E=>{var H=rr(),p=W(H);xe(p,5,()=>e(fe),k=>k.id,(k,_)=>{var Z=ar(),A=s(Z),w=r(A,2),O=s(w),J=s(O,!0);a(O);var Q=r(O,2),le=s(Q,!0);a(Q);var z=r(Q,2),b=s(z);R(b,"title",Jt),a(z),a(w);var h=r(w,2),V=s(h,!0);a(h);var N=r(h,2);{var te=j=>{var G=tr(),ee=s(G,!0);a(G),S(()=>o(ee,e(_).description)),l(j,G)};y(N,j=>{e(_).description&&j(te)})}var P=r(N,2),ne=s(P),Y=r(s(ne));a(ne);var ae=r(ne,2),F=s(ae,!0);a(ae),a(P),a(Z),S((j,G,ee)=>{R(A,"href",`/test-repository/suites/${e(_).id??""}`),R(A,"aria-label",e(_).name),o(J,e(_).displayId),je(Q,`priority-badge ${j??""} svelte-9ix8dg`),o(le,e(_).priority),o(V,e(_).name),o(Y,` ${G??""}`),o(F,ee)},[()=>nt(e(_).priority),()=>et(e(_)._count.cases),()=>tt(e(_).createdBy.name)],ve),oe("click",b,()=>{i(q,{type:"suite",id:e(_).id,name:e(_).name}),i(ge,!0)}),l(k,Z)}),a(p);var T=r(p,2);{var $=k=>{var _=sr(),Z=s(_);const A=ve(()=>Math.ceil(e(ue)/Xe));Gt(Z,{get current(){return e(yt)},get total(){return e(A)},$$events:{change:w=>it(w.detail)}}),a(_),l(k,_)};y(T,k=>{Math.ceil(e(ue)/Xe)>1&&k($)})}l(E,H)};y(B,E=>{e(fe).length===0?E(m):E(U,!1)},!0)}l(g,d)};y(I,g=>{e(at)?g(C):g(M,!1)})}a(u),pt(3,u,()=>gt,()=>({y:4,duration:160})),l(x,u)},D=x=>{var u=dr(),I=s(u);{var C=g=>{var d=lr();d.textContent=Vt,l(g,d)},M=g=>{var d=ce(),B=W(d);{var m=E=>{xt(E,{title:Ts,description:Ls})},U=E=>{var H=vr(),p=W(H);xe(p,5,()=>e(de),k=>k.id,(k,_)=>{var Z=nr(),A=s(Z),w=r(A,2),O=s(w),J=r(O,2),Q=s(J,!0);a(J);var le=r(J,2),z=s(le,!0);a(le),a(w);var b=r(w,2),h=s(b),V=s(h,!0);a(h);var N=r(h,4),te=s(N,!0);a(N);var P=r(N,4),ne=s(P,!0);a(P),a(b);var Y=r(b,2),ae=s(Y);R(ae,"title",Qt);var F=r(ae,2);R(F,"title",zt),a(Y),a(Z),S((j,G,ee,se)=>{R(A,"href",`/test-repository/runs/${e(_).id??""}`),R(A,"aria-label",e(_).title),je(O,`run-status-dot ${j??""} svelte-9ix8dg`),o(Q,e(_).title),o(z,G),o(V,e(_).status),o(te,ee),o(ne,se)},[()=>$t(e(_).status),()=>et(e(_)._count.entries),()=>tt(e(_).createdBy.name),()=>new Date(e(_).createdAt).toLocaleDateString()],ve),oe("click",ae,()=>Tt(e(_))),oe("click",F,()=>{i(q,{type:"run",id:e(_).id,name:e(_).title}),i(ge,!0)}),l(k,Z)}),a(p);var T=r(p,2);{var $=k=>{var _=or(),Z=s(_);const A=ve(()=>Math.ceil(e(pe)/Xe));Gt(Z,{get current(){return e(bt)},get total(){return e(A)},$$events:{change:w=>lt(w.detail)}}),a(_),l(k,_)};y(T,k=>{Math.ceil(e(pe)/Xe)>1&&k($)})}l(E,H)};y(B,E=>{e(de).length===0?E(m):E(U,!1)},!0)}l(g,d)};y(I,g=>{e(at)?g(C):g(M,!1)})}a(u),pt(3,u,()=>gt,()=>({y:4,duration:160})),l(x,u)};y(v,x=>{e(Ae)==="suites"?x(L):x(D,!1)},!0)}l(t,n)};y(fa,t=>{e(_e)?t(ma):t(Ea,!1)})}S(()=>{Ke(Pe,"active",e(Ae)==="suites"),o(ua,`${(e(_e)?e(Te).length+"/":"")??""}${e(ue)??""}`),Ke(Je,"active",e(Ae)==="runs"),o(pa,`${(e(_e)?e($e).length+"/":"")??""}${e(pe)??""}`)}),oe("click",Pe,()=>ft("suites")),oe("click",Je,()=>ft("runs")),Ze(Qe,()=>e(me),t=>i(me,t)),l(Kt,At),wa()}export{wr as component};
@@ -1,6 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- * Licensed under the MIT License. See LICENSE file in the project root for details.
4
- */
5
-
6
- import{a as o,t as u,s as b,h as ba,b as Ce,c as Fe,e as R,n as ha}from"../chunks/CfkUW1vA.js";import{i as Yt}from"../chunks/C00jnSU2.js";import{p as Et,l as me,s as i,ai as zt,b as Lt,d as r,k as a,t as E,g as e,c as Tt,m as f,o as Ea,f as re,x as Xe,$ as La,y as Ut,j as l,n as pe}from"../chunks/CeH-RgMb.js";import{i as m,s as Ta,a as Vt}from"../chunks/CegSvdD-.js";import{t as k,s as Aa,a as xt,f as ft,e as Be,i as gt}from"../chunks/Beula-TH.js";import{k as Ca,b as Sa,r as Gt,h as Kt,i as Ht,C as ya,L as ka,s as Ne}from"../chunks/DuAVKaL3.js";import{b as Ft}from"../chunks/BAvTKHxT.js";import{T as Ia,B as Se,i as $a,s as Oa}from"../chunks/CZWchtW8.js";import{p as Ra}from"../chunks/d2K3c8Kx.js";import{r as wt,i as Ba,t as Na,v as De,w as Da,x as Pa}from"../chunks/Dl-F6VCo.js";import{r as bt}from"../chunks/BJ_ypKl3.js";import{a as Ma}from"../chunks/Ck6C3Fl0.js";import{M as Ua}from"../chunks/DgQy0SB2.js";import{E as Va}from"../chunks/Cfmt4_tJ.js";import{p as Je}from"../chunks/DB3YXVFP.js";import{ab as Ga,aK as Ka,aL as Ha,T as Fa,F as Xa,aM as ja,aN as Wa,aO as Ya,aP as za,aQ as Ja,aR as qa,aS as Qa,aT as Za,aU as es,aV as ts,aW as as,aX as ss,aY as rs,aZ as ls,a_ as is,a$ as os,b0 as ns,b1 as vs,b2 as ds,b3 as cs,b4 as us,b5 as _s,b6 as ps,b7 as ms,b8 as xs,b9 as fs,ba as gs,bb as ws,bc as bs,bd as hs,be as Es,bf as Xt,bg as Ls,bh as Ts,bi as As,bj as Cs,a5 as Ss,bk as ys}from"../chunks/2-KCkWZO.js";var ks=u('<span class="auto-badge svelte-1yr9844"></span>');function lt(Le){var q=ks();q.textContent=Ca,o(Le,q)}var Is=u('<span class="priority-badge svelte-1m066kw"> </span>');function jt(Le,q){Et(q,!1);const V=f();let Q=Je(q,"priority",8,"Medium"),G=Je(q,"small",8,!1);me(()=>zt(Q()),()=>{var je;i(V,((je=Q())==null?void 0:je.toLowerCase())??"medium")}),Lt(),Yt();var W=Is(),Pe=r(W,!0);a(W),E(()=>{k(W,"critical",e(V)==="critical"),k(W,"high",e(V)==="high"),k(W,"medium",e(V)==="medium"),k(W,"low",e(V)==="low"),k(W,"small",G()),b(Pe,Q())}),o(Le,W),Tt()}var $s=u('<span class="id-chip svelte-1gmo0py"> </span>');function ht(Le,q){let V=Je(q,"id",8,""),Q=Je(q,"small",8,!1);var G=$s(),W=r(G,!0);a(G),E(()=>{k(G,"small",Q()),b(W,V())}),o(Le,G)}var Os=u('<span class="result-chip svelte-1rgb1a1"> </span>');function Wt(Le,q){Et(q,!1);const V=f();let Q=Je(q,"status",8,"pending");me(()=>zt(Q()),()=>{i(V,Q()==="pass"?"pass":Q()==="fail"?"fail":Q()==="blocked"?"warn":Q()==="skip"?"muted":"pending")}),Lt();var G=Os(),W=r(G,!0);a(G),E(()=>{k(G,"pass",e(V)==="pass"),k(G,"fail",e(V)==="fail"),k(G,"warn",e(V)==="warn"),k(G,"muted",e(V)==="muted"),k(G,"pending",e(V)==="pending"),b(W,Q())}),o(Le,G),Tt()}var Rs=u('<div class="form-fields svelte-1mxlw2t"><div class="field"><label class="field-label" for="er-title"></label> <input id="er-title" type="text" class="field-input"></div> <div class="modal-actions svelte-1mxlw2t"><!> <!></div></div>'),Bs=u('<div class="loading-state svelte-1mxlw2t"></div>'),Ns=u("<!> <!>",1),Ds=u("<!> <!> <!>",1),Ps=u('<span class="exec-progress svelte-1mxlw2t"> </span>'),Ms=u('<span class="locked-badge svelte-1mxlw2t"></span>'),Us=u('<span class="entry-sort-dir svelte-1mxlw2t"> </span>'),Vs=u('<button class="entry-sort-chip svelte-1mxlw2t"> <!></button>'),Gs=ha('<svg class="drag-handle svelte-1mxlw2t" width="12" height="12" viewBox="0 0 24 24" fill="currentColor"><circle cx="9" cy="5" r="1.5"></circle><circle cx="15" cy="5" r="1.5"></circle><circle cx="9" cy="12" r="1.5"></circle><circle cx="15" cy="12" r="1.5"></circle><circle cx="9" cy="19" r="1.5"></circle><circle cx="15" cy="19" r="1.5"></circle></svg>'),Ks=u("<option> </option>"),Hs=u('<select class="assignee-select svelte-1mxlw2t"><option></option><!></select>'),Fs=u('<button class="icon-btn danger svelte-1mxlw2t"><svg width="11" height="11" viewBox="0 0 14 14" fill="none"><path d="M1 1l12 12M13 1L1 13" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg></button>'),Xs=u('<div class="entry-row svelte-1mxlw2t" role="listitem"><!> <div class="entry-info svelte-1mxlw2t"><div class="entry-badges svelte-1mxlw2t"><!> <!></div> <p class="entry-title svelte-1mxlw2t"> </p> <span class="entry-suite svelte-1mxlw2t"> </span></div> <!> <!></div>'),js=u('<div class="entry-sort-bar svelte-1mxlw2t"></div> <div class="entry-list svelte-1mxlw2t" role="list"></div>',1),Ws=u('<button class="browser-case svelte-1mxlw2t"><!> <span class="browser-case-title svelte-1mxlw2t"> </span> <!> <!></button>'),Ys=u('<div class="browser-cases svelte-1mxlw2t"></div>'),zs=u('<p class="browser-empty svelte-1mxlw2t"> </p>'),Js=u('<div class="browser-suite svelte-1mxlw2t"><button class="browser-suite-header svelte-1mxlw2t"><svg class="chevron svelte-1mxlw2t" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polyline points="9 18 15 12 9 6"></polyline></svg> <span class="browser-suite-name svelte-1mxlw2t"> </span> <span class="browser-suite-count svelte-1mxlw2t"> </span></button> <!></div>'),qs=u('<p class="browser-empty svelte-1mxlw2t"></p>'),Qs=u('<div class="builder-panel right-panel svelte-1mxlw2t"><div class="builder-panel-head svelte-1mxlw2t"><h2 class="builder-panel-title svelte-1mxlw2t"></h2> <input type="text" class="search-input svelte-1mxlw2t"></div> <div class="suite-browser svelte-1mxlw2t"><!> <!></div></div>'),Zs=u('<div class="builder-workspace svelte-1mxlw2t"><div class="builder-panel left-panel svelte-1mxlw2t"><div class="builder-panel-head svelte-1mxlw2t"><h2 class="builder-panel-title svelte-1mxlw2t"></h2> <span class="count-chip svelte-1mxlw2t"> </span> <!></div> <!></div> <!></div>'),er=u('<div class="exec-locked-banner svelte-1mxlw2t"></div>'),tr=u('<div class="progress-bar-wrap svelte-1mxlw2t"><div class="progress-stats svelte-1mxlw2t"><span class="stat pass svelte-1mxlw2t"> </span> <span class="stat fail svelte-1mxlw2t"> </span> <span class="stat muted svelte-1mxlw2t"> </span></div> <div class="progress-bar svelte-1mxlw2t"><div class="progress-fill pass svelte-1mxlw2t"></div> <div class="progress-fill fail svelte-1mxlw2t"></div></div></div>'),ar=u('<button class="exec-chevron svelte-1mxlw2t"><svg class="chevron svelte-1mxlw2t" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><polyline points="9 18 15 12 9 6"></polyline></svg></button>'),sr=u('<div class="exec-assignee-row svelte-1mxlw2t"><!></div> <div class="exec-assignee-divider svelte-1mxlw2t"></div>',1),rr=u('<span class="exec-assignee-name svelte-1mxlw2t"> </span>'),lr=u('<button class="exec-assign-me svelte-1mxlw2t"></button>'),ir=u('<div class="exec-assignee-row svelte-1mxlw2t"><!> <!></div> <div class="exec-assignee-divider svelte-1mxlw2t"></div>',1),or=u('<div class="exec-btns svelte-1mxlw2t"><button class="exec-btn in-progress svelte-1mxlw2t"></button> <button class="exec-btn pass svelte-1mxlw2t"></button> <button class="exec-btn fail svelte-1mxlw2t"></button> <button class="exec-btn warn svelte-1mxlw2t"></button> <button class="exec-btn muted svelte-1mxlw2t"></button></div>'),nr=u('<div class="exec-btns svelte-1mxlw2t"><!> <button class="exec-reset svelte-1mxlw2t"></button></div>'),vr=u('<p class="exec-step-data svelte-1mxlw2t"> </p>'),dr=u('<p class="exec-step-expected svelte-1mxlw2t"> </p>'),cr=u('<div class="exec-step svelte-1mxlw2t"><span class="exec-step-num svelte-1mxlw2t"></span> <div class="exec-step-body svelte-1mxlw2t"><p class="exec-step-action svelte-1mxlw2t"> </p> <!> <!></div></div>'),ur=u('<div class="exec-steps svelte-1mxlw2t"></div>'),_r=u('<div class="execute-row svelte-1mxlw2t"><div class="execute-row-main svelte-1mxlw2t"><div class="exec-info svelte-1mxlw2t"><!> <!> <!> <div><p class="exec-title svelte-1mxlw2t"> </p> <span class="exec-suite svelte-1mxlw2t"> </span></div></div> <div class="exec-actions svelte-1mxlw2t"><!> <!></div></div> <!></div>'),pr=u('<div class="execute-workspace"><!> <!> <div class="execute-list svelte-1mxlw2t"></div></div>'),mr=u('<div class="run-header svelte-1mxlw2t"><div class="run-header-left svelte-1mxlw2t"><h1 class="run-title svelte-1mxlw2t"> </h1> <span> </span> <button class="icon-btn svelte-1mxlw2t"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"></path><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"></path></svg></button></div> <div class="run-header-actions svelte-1mxlw2t"><!></div></div> <div class="mode-tabs svelte-1mxlw2t"><button class="mode-tab svelte-1mxlw2t"></button> <button class="mode-tab svelte-1mxlw2t"> <!></button></div> <!>',1),xr=u('<!> <!> <div class="breadcrumb svelte-1mxlw2t"><a href="/test-repository" class="bc-link svelte-1mxlw2t"></a> <span class="bc-sep svelte-1mxlw2t">›</span> <span class="bc-current"> </span></div> <!>',1);function Rr(Le,q){Et(q,!1);const[V,Q]=Ta(),G=()=>Vt(Ra,"$page",V),W=()=>Vt(Ma,"$auth",V),Pe=f(),je=f(),qe=f(),it=f(),K=f(),ot=f(),ke=f(),nt=f(),vt=f(),xe=G().params.id;let le=f("build"),s=f(null),Qe=f([]),At=f([]),Ct=f(!0),dt=f(null),Ze=f(!1),et=f(null),ie=f(""),Te=f(new Set);const St={Critical:0,High:1,Medium:2,Low:3};let I=f((()=>{try{const t=sessionStorage.getItem("plum:run:entries:sort");if(t)return JSON.parse(t)}catch{}return{by:"order",order:"asc"}})());function Jt(t){e(I).by===t?Ut(I,e(I).order=e(I).order==="asc"?"desc":"asc"):i(I,{by:t,order:"asc"});try{sessionStorage.setItem("plum:run:entries:sort",JSON.stringify(e(I)))}catch{}}let Me=f(null),tt=f(null),ct=f(null),yt="",Ie=f(new Set),We=f(!1),Ye=f({}),at=f(!1);function qt(t){e(Ie).has(t)?e(Ie).delete(t):e(Ie).add(t),i(Ie,new Set(e(Ie)))}function ae(t,v){i(dt,{type:t,message:v}),setTimeout(()=>i(dt,null),Sa)}Ea(async()=>{try{await(async t=>(i(s,t[0]),i(Qe,t[1]),i(At,t[2])))(await Promise.all([wt(xe),Ba(),Na()])),i(Te,new Set(e(Qe).map(t=>t.id))),e(s).status==="in-progress"&&i(le,"execute")}catch{ae("error",Xa)}finally{i(Ct,!1)}});async function kt(t,v){i(et,t);try{const _=await Da(t,v||null);i(s,{...e(s),entries:e(s).entries.map(g=>g.id===t?{...g,assignedToId:_.assignedToId,assignedTo:_.assignedTo}:g)})}catch(_){ae("error",_.message)}finally{i(et,null)}}async function Qt(t){if(!e(s)||e(qe).has(t.id))return;const v=e(s),_={id:`tmp-${t.id}`,order:e(s).entries.length,status:"pending",notes:"",executedAt:null,executedBy:null,case:t};i(s,{...e(s),entries:[...e(s).entries,_]});try{const g=e(s).entries.map(se=>se.case.id);await De(xe,{caseIds:g}),i(s,await wt(xe))}catch{i(s,v),ae("error",bs)}}function Zt(t){i(s,{...e(s),entries:e(s).entries.filter(v=>v.id!==t)})}async function ea(){i(at,!0);try{const t=await De(xe,e(Ye));i(s,{...e(s),...t}),i(We,!1),ae("success",ja)}catch(t){ae("error",t.message)}finally{i(at,!1)}}async function It(){i(Ze,!0);try{const t=e(s).entries.map(_=>_.case.id),v=await De(xe,{caseIds:t});i(s,await wt(xe)),ae("success",ws)}catch(t){ae("error",t.message)}finally{i(Ze,!1)}}async function ta(){await It(),await De(xe,{status:"in-progress"}),i(s,{...e(s),status:"in-progress"}),i(le,"execute")}async function Ue(t,v){i(ct,t.id);try{const _=await Pa(t.id,{status:v,notes:yt});i(s,{...e(s),entries:e(s).entries.map(g=>g.id===t.id?{...g,..._,status:v}:g)}),yt=""}catch(_){ae("error",_.message)}finally{i(ct,null)}}async function aa(){try{await De(xe,{status:"backlog"}),i(s,{...e(s),status:"backlog"}),i(le,"build"),bt.update(t=>t+1)}catch(t){ae("error",t.message)}}async function sa(){try{await De(xe,{status:"complete"}),i(s,{...e(s),status:"complete"}),bt.update(t=>t+1),ae("success",ys)}catch(t){ae("error",t.message)}}async function ra(){try{await De(xe,{status:"backlog"}),i(s,{...e(s),status:"backlog"}),i(le,"build"),bt.update(t=>t+1),ae("success",Za)}catch(t){ae("error",t.message)}}function la(t,v){i(Me,v),t.dataTransfer.effectAllowed="move"}function ia(t,v){t.preventDefault(),i(tt,v)}function oa(t,v){if(t.preventDefault(),!e(Me)||e(Me)===v)return;const _=[...e(s).entries],g=_.findIndex(ge=>ge.id===e(Me)),se=_.findIndex(ge=>ge.id===v),[fe]=_.splice(g,1);_.splice(se,0,fe),i(s,{...e(s),entries:_}),i(Me,null),i(tt,null)}me(()=>W(),()=>{var t,v;i(Pe,((v=(t=W())==null?void 0:t.user)==null?void 0:v.id)??null)}),me(()=>(e(s),e(I)),()=>{i(je,(()=>{if(!e(s))return[];const t=[...e(s).entries],v=e(I).order==="asc"?1:-1;return e(I).by==="name"?t.sort((_,g)=>v*_.case.title.localeCompare(g.case.title)):e(I).by==="priority"?t.sort((_,g)=>v*((St[_.case.priority]??99)-(St[g.case.priority]??99))):e(I).by==="status"?t.sort((_,g)=>v*_.status.localeCompare(g.status)):e(I).by==="suite"?t.sort((_,g)=>{var se,fe;return v*(((se=_.case.suite)==null?void 0:se.name)??"").localeCompare(((fe=g.case.suite)==null?void 0:fe.name)??"")}):t.sort((_,g)=>v*(_.order-g.order))})())}),me(()=>e(s),()=>{var t;i(qe,new Set(((t=e(s))==null?void 0:t.entries.map(v=>v.case.id))??[]))}),me(()=>(e(Qe),e(qe),e(ie)),()=>{i(it,e(Qe).map(t=>({...t,_totalCases:(t.cases??[]).length,cases:(t.cases??[]).filter(v=>!e(qe).has(v.id)&&(!e(ie)||t.displayId.toLowerCase().includes(e(ie).toLowerCase())||t.name.toLowerCase().includes(e(ie).toLowerCase())||v.title.toLowerCase().includes(e(ie).toLowerCase())||v.displayId.toLowerCase().includes(e(ie).toLowerCase())))})).filter(t=>!e(ie)||t.cases.length>0||t.displayId.toLowerCase().includes(e(ie).toLowerCase())||t.name.toLowerCase().includes(e(ie).toLowerCase())))}),me(()=>e(s),()=>{var t;i(K,((t=e(s))==null?void 0:t.status)==="complete")}),me(()=>e(s),()=>{var t;i(ot,((t=e(s))==null?void 0:t.entries.filter(v=>v.status!=="pending").length)??0)}),me(()=>e(s),()=>{var t;i(ke,((t=e(s))==null?void 0:t.entries.length)??0)}),me(()=>e(s),()=>{var t;i(nt,((t=e(s))==null?void 0:t.entries.filter(v=>v.status==="pass").length)??0)}),me(()=>e(s),()=>{var t;i(vt,((t=e(s))==null?void 0:t.entries.filter(v=>v.status==="fail").length)??0)}),Lt(),Yt();var $t=xr();ba(t=>{E(v=>La.title=v,[()=>Ka(e(s))],Xe)});var Ot=re($t);Ia(Ot,{get toast(){return e(dt)}});var Rt=l(Ot,2);Ua(Rt,{title:Ha,get open(){return e(We)},set open(t){i(We,t)},children:(t,v)=>{var _=Rs(),g=r(_),se=r(g);se.textContent=Fa;var fe=l(se,2);Gt(fe),a(g);var ge=l(g,2),Ve=r(ge);Se(Ve,{get disabled(){return e(at)},$$events:{click:ea},children:($e,Ge)=>{pe();var Oe=Ce();E(()=>b(Oe,e(at)?Kt:Ht)),o($e,Oe)},$$slots:{default:!0}});var ze=l(Ve,2);Se(ze,{variant:"ghost",$$events:{click:()=>i(We,!1)},children:($e,Ge)=>{pe();var Oe=Ce();Oe.nodeValue=ya,o($e,Oe)},$$slots:{default:!0}}),a(ge),a(_),Ft(fe,()=>e(Ye).title,$e=>Ut(Ye,e(Ye).title=$e)),o(t,_)},$$slots:{default:!0},$$legacy:!0});var ut=l(Rt,2),Bt=r(ut);Bt.textContent=Ga;var Nt=l(Bt,4),na=r(Nt,!0);a(Nt),a(ut);var va=l(ut,2);{var da=t=>{var v=Bs();v.textContent=ka,o(t,v)},ca=t=>{var v=Fe(),_=re(v);{var g=se=>{var fe=mr(),ge=re(fe),Ve=r(ge),ze=r(Ve),$e=r(ze,!0);a(ze);var Ge=l(ze,2),Oe=r(Ge,!0);a(Ge);var Dt=l(Ge,2);Ne(Dt,"title",Wa),a(Ve);var Pt=l(Ve,2),ua=r(Pt);{var _a=H=>{Se(H,{variant:"ghost",$$events:{click:ra},children:(B,ce)=>{pe();var we=Ce();we.nodeValue=Ja,o(B,we)},$$slots:{default:!0}})},pa=H=>{var B=Fe(),ce=re(B);{var we=oe=>{var be=Ns(),P=re(be);Se(P,{variant:"ghost",get disabled(){return e(Ze)},$$events:{click:It},children:(A,Y)=>{pe();var X=Ce();E(()=>b(X,e(Ze)?Kt:Ht)),o(A,X)},$$slots:{default:!0}});var c=l(P,2);{var Z=A=>{Se(A,{$$events:{click:ta},children:(Y,X)=>{pe();var ee=Ce();ee.nodeValue=hs,o(Y,ee)},$$slots:{default:!0}})};m(c,A=>{e(s).entries.length>0&&A(Z)})}o(oe,be)},Re=oe=>{var be=Fe(),P=re(be);{var c=A=>{var Y=Ds(),X=re(Y);Se(X,{variant:"ghost",$$events:{click:aa},children:($,z)=>{pe();var O=Ce();O.nodeValue=Es,o($,O)},$$slots:{default:!0}});var ee=l(X,2);Se(ee,{variant:"ghost",$$events:{click:()=>i(le,"build")},children:($,z)=>{pe();var O=Ce();O.nodeValue=Xt,o($,O)},$$slots:{default:!0}});var C=l(ee,2);Se(C,{$$events:{click:sa},children:($,z)=>{pe();var O=Ce();O.nodeValue=Ls,o($,O)},$$slots:{default:!0}}),o(A,Y)},Z=A=>{Se(A,{variant:"ghost",$$events:{click:()=>i(le,"build")},children:(Y,X)=>{pe();var ee=Ce();ee.nodeValue=Xt,o(Y,ee)},$$slots:{default:!0}})};m(P,A=>{e(s).status==="in-progress"?A(c):A(Z,!1)},!0)}o(oe,be)};m(ce,oe=>{e(le)==="build"?oe(we):oe(Re,!1)},!0)}o(H,B)};m(ua,H=>{e(K)?H(_a):H(pa,!1)})}a(Pt),a(ge);var _t=l(ge,2),st=r(_t);st.textContent=Ya;var rt=l(st,2),Mt=r(rt);Mt.nodeValue=`${za} `;var ma=l(Mt);{var xa=H=>{var B=Ps(),ce=r(B);a(B),E(()=>b(ce,`${e(ot)??""}/${e(ke)??""}`)),o(H,B)};m(ma,H=>{e(ke)>0&&H(xa)})}a(rt),a(_t);var fa=l(_t,2);{var ga=H=>{var B=Zs(),ce=r(B),we=r(ce),Re=r(we);Re.textContent=qa;var oe=l(Re,2),be=r(oe,!0);a(oe);var P=l(oe,2);{var c=C=>{var $=Ms();$.textContent=es,o(C,$)};m(P,C=>{e(K)&&C(c)})}a(we);var Z=l(we,2);{var A=C=>{Va(C,{message:ts,size:"sm"})},Y=C=>{var $=js(),z=re($);Be(z,4,()=>[["order","Order"],["name","Name"],["priority","Priority"],["status","Status"],["suite","Suite"]],gt,(J,w)=>{let T=()=>w[0],he=()=>w[1];var ne=Vs(),N=r(ne,!0),S=l(N);{var Ee=ve=>{var de=Us(),Ae=r(de,!0);a(de),E(()=>b(Ae,e(I).order==="asc"?" ↑":" ↓")),o(ve,de)};m(S,ve=>{e(I).by===T()&&ve(Ee)})}a(ne),E(()=>{k(ne,"active",e(I).by===T()),b(N,he())}),R("click",ne,()=>Jt(T())),o(J,ne)}),a(z);var O=l(z,2);Be(O,5,()=>e(je),J=>J.id,(J,w)=>{var T=Xs(),he=r(T);{var ne=n=>{var d=Gs();o(n,d)};m(he,n=>{!e(K)&&e(I).by==="order"&&n(ne)})}var N=l(he,2),S=r(N),Ee=r(S);ht(Ee,{get id(){return e(w).case.displayId}});var ve=l(Ee,2);jt(ve,{get priority(){return e(w).case.priority}}),a(S);var de=l(S,2),Ae=r(de,!0);a(de);var Ke=l(de,2),He=r(Ke,!0);a(Ke),a(N);var p=l(N,2);{var L=n=>{lt(n)},te=n=>{var d=Hs();$a(d,()=>e(w).assignedToId??"");var x,h=r(d);h.value=((h.__value="")==null,""),h.textContent=as;var j=l(h);Be(j,1,()=>e(At),gt,(U,D)=>{var y=Ks(),ye={},ue=r(y,!0);a(y),E(()=>{ye!==(ye=e(D).id)&&(y.value=(y.__value=e(D).id)==null?"":e(D).id),b(ue,e(D).name)}),o(U,y)}),a(d),E(()=>{x!==(x=e(w).assignedToId??"")&&(d.value=(d.__value=e(w).assignedToId??"")==null?"":e(w).assignedToId??"",Oa(d,e(w).assignedToId??"")),d.disabled=e(et)===e(w).id}),R("change",d,U=>kt(e(w).id,U.target.value)),o(n,d)};m(p,n=>{e(w).case.isAutomated?n(L):n(te,!1)})}var F=l(p,2);{var M=n=>{var d=Fs();R("click",d,()=>Zt(e(w).id)),o(n,d)};m(F,n=>{e(K)||n(M)})}a(T),E(()=>{var n;Ne(T,"draggable",!e(K)&&e(I).by==="order"),k(T,"entry-locked",e(K)),k(T,"dragging",e(Me)===e(w).id),k(T,"drag-over",e(tt)===e(w).id),b(Ae,e(w).case.title),b(He,((n=e(w).case.suite)==null?void 0:n.name)??"")}),R("dragstart",T,function(...n){var d;(d=e(K)||e(I).by!=="order"?null:x=>la(x,e(w).id))==null||d.apply(this,n)}),R("dragover",T,function(...n){var d;(d=e(K)||e(I).by!=="order"?null:x=>ia(x,e(w).id))==null||d.apply(this,n)}),R("dragleave",T,function(...n){var d;(d=e(K)||e(I).by!=="order"?null:()=>i(tt,null))==null||d.apply(this,n)}),R("drop",T,function(...n){var d;(d=e(K)||e(I).by!=="order"?null:x=>oa(x,e(w).id))==null||d.apply(this,n)}),o(J,T)}),a(O),o(C,$)};m(Z,C=>{e(s).entries.length===0?C(A):C(Y,!1)})}a(ce);var X=l(ce,2);{var ee=C=>{var $=Qs(),z=r($),O=r(z);O.textContent=ss;var J=l(O,2);Gt(J),Ne(J,"placeholder",rs),a(z);var w=l(z,2),T=r(w);Be(T,1,()=>e(it),N=>N.id,(N,S)=>{var Ee=Js(),ve=r(Ee),de=r(ve),Ae=l(de,2),Ke=r(Ae,!0);a(Ae);var He=l(Ae,2),p=r(He,!0);a(He),a(ve);var L=l(ve,2);{var te=M=>{var n=Ys();Be(n,5,()=>e(S).cases,d=>d.id,(d,x)=>{var h=Ws(),j=r(h);ht(j,{get id(){return e(x).displayId},small:!0});var U=l(j,2),D=r(U,!0);a(U);var y=l(U,2);jt(y,{get priority(){return e(x).priority},small:!0});var ye=l(y,2);{var ue=_e=>{lt(_e)};m(ye,_e=>{e(x).isAutomated&&_e(ue)})}a(h),E(()=>b(D,e(x).title)),R("click",h,()=>Qt(e(x))),o(d,h)}),a(n),xt(3,n,()=>ft,()=>({y:-4,duration:120})),o(M,n)},F=M=>{var n=Fe(),d=re(n);{var x=h=>{var j=zs(),U=r(j,!0);a(j),E(()=>b(U,e(ie)?Ts:e(S)._totalCases===0?As:Cs)),o(h,j)};m(d,h=>{e(Te).has(e(S).id)&&h(x)},!0)}o(M,n)};m(L,M=>{var n;e(Te).has(e(S).id)&&((n=e(S).cases)==null?void 0:n.length)>0?M(te):M(F,!1)})}a(Ee),E(M=>{var n;k(de,"open",M),b(Ke,e(S).name),b(p,((n=e(S).cases)==null?void 0:n.length)??0)},[()=>e(Te).has(e(S).id)],Xe),R("click",ve,()=>{e(Te).has(e(S).id)?e(Te).delete(e(S).id):e(Te).add(e(S).id),i(Te,new Set(e(Te)))}),o(N,Ee)});var he=l(T,2);{var ne=N=>{var S=qs();S.textContent=Ss,o(N,S)};m(he,N=>{e(it).length===0&&N(ne)})}a(w),a($),Ft(J,()=>e(ie),N=>i(ie,N)),o(C,$)};m(X,C=>{e(K)||C(ee)})}a(B),E(()=>{k(B,"locked-workspace",e(K)),b(be,e(s).entries.length)}),xt(3,B,()=>ft,()=>({y:4,duration:150})),o(H,B)},wa=H=>{var B=pr(),ce=r(B);{var we=P=>{var c=er();c.textContent=ls,o(P,c)};m(ce,P=>{e(s).status!=="in-progress"&&!e(K)&&P(we)})}var Re=l(ce,2);{var oe=P=>{var c=tr(),Z=r(c),A=r(Z),Y=r(A,!0);a(A);var X=l(A,2),ee=r(X,!0);a(X);var C=l(X,2),$=r(C,!0);a(C),a(Z);var z=l(Z,2),O=r(z),J=l(O,2);a(z),a(c),E((w,T,he)=>{b(Y,w),b(ee,T),b($,he),Ne(O,"style",`width: ${e(nt)/e(ke)*100}%`),Ne(J,"style",`width: ${e(vt)/e(ke)*100}%`)},[()=>is(e(nt)),()=>os(e(vt)),()=>ns(e(ke)-e(ot))],Xe),o(P,c)};m(Re,P=>{e(ke)>0&&P(oe)})}var be=l(Re,2);Be(be,5,()=>e(s).entries,P=>P.id,(P,c)=>{var Z=_r(),A=r(Z),Y=r(A),X=r(Y);{var ee=p=>{var L=ar();Ne(L,"title",Qa);var te=r(L);a(L),E(F=>k(te,"open",F),[()=>e(Ie).has(e(c).id)],Xe),R("click",L,()=>qt(e(c).id)),o(p,L)};m(X,p=>{var L;((L=e(c).case.steps)==null?void 0:L.length)>0&&p(ee)})}var C=l(X,2);ht(C,{get id(){return e(c).case.displayId}});var $=l(C,2);{var z=p=>{lt(p)};m($,p=>{e(c).case.isAutomated&&p(z)})}var O=l($,2),J=r(O),w=r(J,!0);a(J);var T=l(J,2),he=r(T,!0);a(T),a(O),a(Y);var ne=l(Y,2),N=r(ne);{var S=p=>{var L=sr(),te=re(L),F=r(te);lt(F),a(te),pe(2),o(p,L)},Ee=p=>{var L=Fe(),te=re(L);{var F=M=>{var n=ir(),d=re(n),x=r(d);{var h=D=>{var y=rr(),ye=r(y,!0);a(y),E(()=>b(ye,e(c).assignedTo.name)),o(D,y)};m(x,D=>{e(c).assignedTo&&D(h)})}var j=l(x,2);{var U=D=>{var y=lr();y.textContent=gs,E(()=>y.disabled=e(et)===e(c).id),R("click",y,()=>kt(e(c).id,e(Pe))),o(D,y)};m(j,D=>{var y;!e(K)&&((y=e(c).assignedTo)==null?void 0:y.id)!==e(Pe)&&D(U)})}a(d),pe(2),o(M,n)};m(te,M=>{var n;(e(c).assignedTo||!e(K)&&((n=e(c).assignedTo)==null?void 0:n.id)!==e(Pe))&&M(F)},!0)}o(p,L)};m(N,p=>{e(c).case.isAutomated?p(S):p(Ee,!1)})}var ve=l(N,2);{var de=p=>{Wt(p,{get status(){return e(c).status}})},Ae=p=>{var L=Fe(),te=re(L);{var F=n=>{var d=or(),x=r(d);x.textContent=vs;var h=l(x,2);h.textContent=ds;var j=l(h,2);j.textContent=cs;var U=l(j,2);U.textContent=us;var D=l(U,2);D.textContent=_s,a(d),E(()=>k(x,"active",e(c).status==="in-progress")),R("click",x,()=>Ue(e(c),"in-progress")),R("click",h,()=>Ue(e(c),"pass")),R("click",j,()=>Ue(e(c),"fail")),R("click",U,()=>Ue(e(c),"blocked")),R("click",D,()=>Ue(e(c),"skip")),o(n,d)},M=n=>{var d=nr(),x=r(d);Wt(x,{get status(){return e(c).status}});var h=l(x,2);Ne(h,"title",ps),h.textContent=ms,a(d),R("click",h,()=>Ue(e(c),"pending")),o(n,d)};m(te,n=>{e(c).status==="pending"||e(c).status==="in-progress"?n(F):n(M,!1)},!0)}o(p,L)};m(ve,p=>{e(K)||e(s).status!=="in-progress"?p(de):p(Ae,!1)})}a(ne),a(A);var Ke=l(A,2);{var He=p=>{var L=ur();Be(L,5,()=>e(c).case.steps,gt,(te,F,M)=>{var n=cr(),d=r(n);d.textContent=M+1;var x=l(d,2),h=r(x),j=r(h,!0);a(h);var U=l(h,2);{var D=ue=>{var _e=vr(),pt=r(_e,!0);a(_e),E(mt=>b(pt,mt),[()=>xs(e(F).testData)],Xe),o(ue,_e)};m(U,ue=>{e(F).testData&&ue(D)})}var y=l(U,2);{var ye=ue=>{var _e=dr(),pt=r(_e,!0);a(_e),E(mt=>b(pt,mt),[()=>fs(e(F).expectedOutput)],Xe),o(ue,_e)};m(y,ue=>{e(F).expectedOutput&&ue(ye)})}a(x),a(n),E(()=>b(j,e(F).action)),o(te,n)}),a(L),o(p,L)};m(Ke,p=>{e(c).case.steps&&e(c).case.steps.length>0&&e(Ie).has(e(c).id)&&p(He)})}a(Z),E(()=>{var p;k(Z,"expanded",e(ct)===e(c).id),b(w,e(c).case.title),b(he,((p=e(c).case.suite)==null?void 0:p.name)??"")}),o(P,Z)}),a(be),a(B),xt(3,B,()=>ft,()=>({y:4,duration:150})),o(H,B)};m(fa,H=>{e(le)==="build"?H(ga):H(wa,!1)})}E(()=>{b($e,e(s).title),Aa(Ge,`run-status-badge ${e(s).status??""} svelte-1mxlw2t`),b(Oe,e(s).status),k(st,"active",e(le)==="build"),k(rt,"active",e(le)==="execute")}),R("click",Dt,()=>{i(Ye,{title:e(s).title}),i(We,!0)}),R("click",st,()=>i(le,"build")),R("click",rt,()=>i(le,"execute")),o(se,fe)};m(_,se=>{e(s)&&se(g)},!0)}o(t,v)};m(va,t=>{e(Ct)?t(da):t(ca,!1)})}E(()=>{var t;return b(na,((t=e(s))==null?void 0:t.title)??"…")}),o(Le,$t),Tt(),Q()}export{Rr as component};