plum-e2e 2.6.7 → 2.6.9

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 (829) hide show
  1. package/.env +5 -0
  2. package/backend/config/scripts/generate-report.js +8 -0
  3. package/backend/lib/runnerProcess.js +29 -15
  4. package/backend/logs/runner-cmqneqerz0000qq01i5ap2rvl.log +4 -0
  5. package/backend/logs/runner-cmqnfv7kr0000r101aeocm8eu.log +4 -0
  6. package/backend/logs/runner-cmqnfvb560001r101qoi0phau.log +4 -0
  7. package/backend/logs/runner-cmqnfvlm20002r101gsyqb837.log +4 -0
  8. package/backend/logs/runner-cmqnfvqfy0003r101fh41pzx3.log +4 -0
  9. package/backend/logs/runner-cmqnfvvwo0004r101q4dtqxd2.log +4 -0
  10. package/backend/logs/runner-cmr8o2x3n0000mg01410tpuck.log +4 -0
  11. package/backend/logs/runner-cmr90hvcx0000n2016edtmrtv.log +4 -0
  12. package/backend/logs/runner-cmr90i7h20001n201g2wg6v3n.log +4 -0
  13. package/backend/logs/runner-cmr90iilm0002n201mmisva95.log +4 -0
  14. package/backend/logs/runner-cmr90j70r0003n201xz8525dz.log +4 -0
  15. package/backend/logs/runner-cmr90yup70000qp017ianc2gp.log +4 -0
  16. package/backend/logs/runner-cmr90zbtm0001qp01u9tfdkh1.log +4 -0
  17. package/backend/logs/runner-cmr91a3mw0000tb01414rd1df.log +4 -0
  18. package/backend/logs/runner-cmr91dhla0001tb01jp7thjnl.log +4 -0
  19. package/backend/logs/runner-cmrkk6fcl0000qj012kve79f4.log +4 -0
  20. package/backend/logs/runner-cmrkl8sym0000qy01euz4270n.log +4 -0
  21. package/backend/logs/runner-cmrkl9oyx0001qy0137nzr94d.log +4 -0
  22. package/bin/plum.js +13 -0
  23. package/bin/postinstall.js +46 -0
  24. package/frontend/.svelte-kit/adapter-node/.vite/manifest.json +95 -39
  25. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/BackLink.CvWWuO3h.css +5 -0
  26. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/Badge.D1SV0Gv7.css +5 -0
  27. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css +23 -0
  28. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/EmptyState.DUDM4P19.css +23 -0
  29. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/{ConfirmModal.CdhOYVBb.css → Modal.BuaCfdLj.css} +6 -1
  30. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/Pagination.DZmi2Po-.css +5 -0
  31. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/Toast.DENwYn3g.css +5 -0
  32. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_layout.BuhMvMUj.css +5 -0
  33. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.0Eln51hV.css +5 -0
  34. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.5IJAEAjc.css +5 -0
  35. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BR3wgXcZ.css +5 -0
  36. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BWAH0Beh.css +23 -0
  37. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BZfe6nWe.css +5 -0
  38. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.Bj_a_5lv.css +5 -0
  39. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BwgOqeMo.css +23 -0
  40. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.CBHi6pzT.css +5 -0
  41. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.CFnbmY-D.css +5 -0
  42. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.CrXpMrqh.css +5 -0
  43. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page._h2o67kg.css +5 -0
  44. package/frontend/.svelte-kit/adapter-node/chunks/BackLink.js +5 -0
  45. package/frontend/.svelte-kit/adapter-node/chunks/Badge.js +5 -0
  46. package/frontend/.svelte-kit/adapter-node/chunks/ConfirmModal.js +12 -20
  47. package/frontend/.svelte-kit/adapter-node/chunks/EmptyState.js +29 -7
  48. package/frontend/.svelte-kit/adapter-node/chunks/Modal.js +43 -0
  49. package/frontend/.svelte-kit/adapter-node/chunks/Toast.js +17 -1
  50. package/frontend/.svelte-kit/adapter-node/chunks/attributes.js +5 -0
  51. package/frontend/.svelte-kit/adapter-node/chunks/auth.js +5 -0
  52. package/frontend/.svelte-kit/adapter-node/{_app/immutable/assets/EmptyState.BdO1q9cJ.css → chunks/auth2.js} +13 -1
  53. package/frontend/.svelte-kit/adapter-node/chunks/client.js +5 -0
  54. package/frontend/.svelte-kit/adapter-node/chunks/common.js +56 -0
  55. package/frontend/.svelte-kit/adapter-node/chunks/constants.js +9 -2
  56. package/frontend/.svelte-kit/adapter-node/chunks/escaping.js +5 -0
  57. package/frontend/.svelte-kit/adapter-node/chunks/exports.js +5 -0
  58. package/frontend/.svelte-kit/adapter-node/chunks/format.js +5 -0
  59. package/frontend/.svelte-kit/adapter-node/chunks/index-server.js +5 -0
  60. package/frontend/.svelte-kit/adapter-node/chunks/index.js +5 -0
  61. package/frontend/.svelte-kit/adapter-node/chunks/index2.js +5 -0
  62. package/frontend/.svelte-kit/adapter-node/chunks/internal.js +7 -2
  63. package/frontend/.svelte-kit/adapter-node/chunks/reports.js +5 -0
  64. package/frontend/.svelte-kit/adapter-node/chunks/reports2.js +109 -0
  65. package/frontend/.svelte-kit/adapter-node/chunks/repository.js +111 -0
  66. package/frontend/.svelte-kit/adapter-node/chunks/runner.js +12 -0
  67. package/frontend/.svelte-kit/adapter-node/chunks/stores.js +5 -0
  68. package/frontend/.svelte-kit/adapter-node/chunks/theme.js +5 -0
  69. package/frontend/.svelte-kit/adapter-node/entries/fallbacks/error.svelte.js +5 -0
  70. package/frontend/.svelte-kit/adapter-node/entries/pages/_layout.js +5 -0
  71. package/frontend/.svelte-kit/adapter-node/entries/pages/_layout.svelte.js +7 -0
  72. package/frontend/.svelte-kit/adapter-node/entries/pages/_page.svelte.js +35 -12
  73. package/frontend/.svelte-kit/adapter-node/entries/pages/login/_page.svelte.js +9 -2
  74. package/frontend/.svelte-kit/adapter-node/entries/pages/reports/_id_/_page.svelte.js +9 -2
  75. package/frontend/.svelte-kit/adapter-node/entries/pages/reports/_page.svelte.js +21 -25
  76. package/frontend/.svelte-kit/adapter-node/entries/pages/reports/live/_page.svelte.js +31 -24
  77. package/frontend/.svelte-kit/adapter-node/entries/pages/scheduled-tests/_page.svelte.js +72 -32
  78. package/frontend/.svelte-kit/adapter-node/entries/pages/settings/_page.svelte.js +276 -95
  79. package/frontend/.svelte-kit/adapter-node/entries/pages/setup/_page.svelte.js +9 -2
  80. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/_page.svelte.js +43 -36
  81. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/runs/_id_/_page.svelte.js +66 -13
  82. package/frontend/.svelte-kit/adapter-node/entries/pages/test-repository/suites/_id_/_page.svelte.js +23 -17
  83. package/frontend/.svelte-kit/adapter-node/index.js +5 -0
  84. package/frontend/.svelte-kit/adapter-node/internal.js +5 -0
  85. package/frontend/.svelte-kit/adapter-node/manifest-full.js +6 -1
  86. package/frontend/.svelte-kit/adapter-node/manifest.js +6 -1
  87. package/frontend/.svelte-kit/adapter-node/nodes/0.js +7 -2
  88. package/frontend/.svelte-kit/adapter-node/nodes/1.js +6 -1
  89. package/frontend/.svelte-kit/adapter-node/nodes/10.js +7 -2
  90. package/frontend/.svelte-kit/adapter-node/nodes/11.js +7 -2
  91. package/frontend/.svelte-kit/adapter-node/nodes/12.js +7 -2
  92. package/frontend/.svelte-kit/adapter-node/nodes/2.js +7 -2
  93. package/frontend/.svelte-kit/adapter-node/nodes/3.js +6 -1
  94. package/frontend/.svelte-kit/adapter-node/nodes/4.js +7 -2
  95. package/frontend/.svelte-kit/adapter-node/nodes/5.js +6 -1
  96. package/frontend/.svelte-kit/adapter-node/nodes/6.js +6 -1
  97. package/frontend/.svelte-kit/adapter-node/nodes/7.js +7 -2
  98. package/frontend/.svelte-kit/adapter-node/nodes/8.js +7 -2
  99. package/frontend/.svelte-kit/adapter-node/nodes/9.js +6 -1
  100. package/frontend/.svelte-kit/ambient.d.ts +5 -4
  101. package/frontend/.svelte-kit/generated/client/app.js +5 -0
  102. package/frontend/.svelte-kit/generated/client/matchers.js +5 -0
  103. package/frontend/.svelte-kit/generated/client/nodes/0.js +5 -0
  104. package/frontend/.svelte-kit/generated/client/nodes/1.js +5 -0
  105. package/frontend/.svelte-kit/generated/client/nodes/10.js +5 -0
  106. package/frontend/.svelte-kit/generated/client/nodes/11.js +5 -0
  107. package/frontend/.svelte-kit/generated/client/nodes/12.js +5 -0
  108. package/frontend/.svelte-kit/generated/client/nodes/2.js +5 -0
  109. package/frontend/.svelte-kit/generated/client/nodes/3.js +5 -0
  110. package/frontend/.svelte-kit/generated/client/nodes/4.js +5 -0
  111. package/frontend/.svelte-kit/generated/client/nodes/5.js +5 -0
  112. package/frontend/.svelte-kit/generated/client/nodes/6.js +5 -0
  113. package/frontend/.svelte-kit/generated/client/nodes/7.js +5 -0
  114. package/frontend/.svelte-kit/generated/client/nodes/8.js +5 -0
  115. package/frontend/.svelte-kit/generated/client/nodes/9.js +5 -0
  116. package/frontend/.svelte-kit/generated/client-optimized/app.js +5 -0
  117. package/frontend/.svelte-kit/generated/client-optimized/matchers.js +5 -0
  118. package/frontend/.svelte-kit/generated/client-optimized/nodes/0.js +5 -0
  119. package/frontend/.svelte-kit/generated/client-optimized/nodes/1.js +5 -0
  120. package/frontend/.svelte-kit/generated/client-optimized/nodes/10.js +5 -0
  121. package/frontend/.svelte-kit/generated/client-optimized/nodes/11.js +5 -0
  122. package/frontend/.svelte-kit/generated/client-optimized/nodes/12.js +5 -0
  123. package/frontend/.svelte-kit/generated/client-optimized/nodes/2.js +5 -0
  124. package/frontend/.svelte-kit/generated/client-optimized/nodes/3.js +5 -0
  125. package/frontend/.svelte-kit/generated/client-optimized/nodes/4.js +5 -0
  126. package/frontend/.svelte-kit/generated/client-optimized/nodes/5.js +5 -0
  127. package/frontend/.svelte-kit/generated/client-optimized/nodes/6.js +5 -0
  128. package/frontend/.svelte-kit/generated/client-optimized/nodes/7.js +5 -0
  129. package/frontend/.svelte-kit/generated/client-optimized/nodes/8.js +5 -0
  130. package/frontend/.svelte-kit/generated/client-optimized/nodes/9.js +5 -0
  131. package/frontend/.svelte-kit/generated/root.js +5 -0
  132. package/frontend/.svelte-kit/generated/root.svelte +5 -0
  133. package/frontend/.svelte-kit/generated/server/internal.js +7 -2
  134. package/frontend/.svelte-kit/non-ambient.d.ts +5 -0
  135. package/frontend/.svelte-kit/output/client/.vite/manifest.json +404 -351
  136. package/frontend/.svelte-kit/output/client/_app/immutable/assets/0.BhSG-jZH.css +5 -0
  137. package/frontend/.svelte-kit/output/client/_app/immutable/assets/10.CdaQUS6U.css +5 -0
  138. package/frontend/.svelte-kit/output/client/_app/immutable/assets/11.BWAH0Beh.css +23 -0
  139. package/frontend/.svelte-kit/output/client/_app/immutable/assets/12.Bj_a_5lv.css +5 -0
  140. package/frontend/.svelte-kit/output/client/_app/immutable/assets/2.CrXpMrqh.css +5 -0
  141. package/frontend/.svelte-kit/output/client/_app/immutable/assets/3.BR3wgXcZ.css +5 -0
  142. package/frontend/.svelte-kit/output/client/_app/immutable/assets/4.0Eln51hV.css +5 -0
  143. package/frontend/.svelte-kit/output/client/_app/immutable/assets/5.DFV9OgAu.css +5 -0
  144. package/frontend/.svelte-kit/output/client/_app/immutable/assets/6.CFnbmY-D.css +5 -0
  145. package/frontend/.svelte-kit/output/client/_app/immutable/assets/7.CBHi6pzT.css +5 -0
  146. package/frontend/.svelte-kit/output/client/_app/immutable/assets/8.BwgOqeMo.css +23 -0
  147. package/frontend/.svelte-kit/output/client/_app/immutable/assets/9._h2o67kg.css +5 -0
  148. package/frontend/.svelte-kit/output/client/_app/immutable/assets/BackLink.CvWWuO3h.css +5 -0
  149. package/frontend/.svelte-kit/output/client/_app/immutable/assets/Badge.D1SV0Gv7.css +5 -0
  150. package/frontend/.svelte-kit/output/client/_app/immutable/assets/Button.FOWXxvc7.css +5 -0
  151. package/frontend/.svelte-kit/output/client/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css +23 -0
  152. package/frontend/.svelte-kit/output/client/_app/immutable/assets/EmptyState.DUDM4P19.css +23 -0
  153. package/frontend/{build/client/_app/immutable/assets/ConfirmModal.DmxkcwXv.css → .svelte-kit/output/client/_app/immutable/assets/Modal.BZpm0HP8.css} +6 -1
  154. package/frontend/{build/client/_app/immutable/assets/ConfirmModal.CdhOYVBb.css → .svelte-kit/output/client/_app/immutable/assets/Modal.BuaCfdLj.css} +6 -1
  155. package/frontend/.svelte-kit/output/client/_app/immutable/assets/Pagination.DZmi2Po-.css +5 -0
  156. package/frontend/.svelte-kit/output/client/_app/immutable/assets/Toast.DENwYn3g.css +5 -0
  157. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_layout.BuhMvMUj.css +5 -0
  158. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.0Eln51hV.css +5 -0
  159. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.5IJAEAjc.css +5 -0
  160. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BR3wgXcZ.css +5 -0
  161. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BWAH0Beh.css +23 -0
  162. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BZfe6nWe.css +5 -0
  163. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.Bj_a_5lv.css +5 -0
  164. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BwgOqeMo.css +23 -0
  165. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.CBHi6pzT.css +5 -0
  166. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.CFnbmY-D.css +5 -0
  167. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.CrXpMrqh.css +5 -0
  168. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page._h2o67kg.css +5 -0
  169. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{BLAiBE__.js → 2zMvi6fR.js} +6 -1
  170. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/3IV-uqHa.js +23 -0
  171. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/4N1zIH8t.js +23 -0
  172. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/B98sHkeB.js +23 -0
  173. package/frontend/{build/client/_app/immutable/chunks/C67QNx7Z.js → .svelte-kit/output/client/_app/immutable/chunks/BAACMRH5.js} +6 -1
  174. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Bfc47y5P.js +5 -0
  175. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BhvHtTRh.js +23 -0
  176. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BjUpWNbl.js +23 -0
  177. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{DIx44H9N.js → C1Vid6wz.js} +6 -1
  178. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/C1sukchk.js +23 -0
  179. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/C8OURRSs.js +23 -0
  180. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{DGryW1Vp.js → CKDtmZUQ.js} +6 -1
  181. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CMBQQ9RZ.js +23 -0
  182. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{C4eeChIU.js → CNdcuGR0.js} +6 -1
  183. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CgnwuKKO.js +23 -0
  184. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CuqnZUex.js +23 -0
  185. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/D2cvzNT9.js +23 -0
  186. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{B0pefNHY.js → D2gYTmAA.js} +6 -1
  187. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{uFRI_bmR.js → DCgHuuvs.js} +6 -1
  188. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{CxTX_lpP.js → DDblTLLE.js} +6 -1
  189. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DW85KPAh.js +24 -0
  190. package/frontend/{build/client/_app/immutable/chunks/BFgtfHj2.js → .svelte-kit/output/client/_app/immutable/chunks/DW_iTTZe.js} +6 -1
  191. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{BVMec-1T.js → DYlaQsvN.js} +6 -1
  192. package/frontend/{build/client/_app/immutable/chunks/BFEiffAL.js → .svelte-kit/output/client/_app/immutable/chunks/DkNBSlo2.js} +6 -1
  193. package/frontend/{build/client/_app/immutable/chunks/BkKmeUbA.js → .svelte-kit/output/client/_app/immutable/chunks/DlNYZJ7K.js} +6 -1
  194. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/Dlnxgs49.js +23 -0
  195. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DtGXv8RA.js +25 -0
  196. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/TOCyHP97.js +28 -0
  197. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{CyQ_oBw2.js → oN0Z3NSF.js} +6 -1
  198. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{raHbXn_9.js → t-La0hgu.js} +6 -1
  199. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/{DP6QP4L6.js → w0D4Uzlq.js} +6 -1
  200. package/frontend/.svelte-kit/output/client/_app/immutable/entry/app.BCWbw5zZ.js +24 -0
  201. package/frontend/{build/client/_app/immutable/entry/start.MMlC62np.js → .svelte-kit/output/client/_app/immutable/entry/start.2_AF42wj.js} +6 -1
  202. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/0.BAqq2UTE.js +28 -0
  203. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/{1.Dbck5ct8.js → 1.D5VvLtGP.js} +6 -1
  204. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/10.Bn4Ma-MU.js +23 -0
  205. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/11.BacEu7sW.js +23 -0
  206. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/12.0YGtl1uj.js +23 -0
  207. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/2.C2jjMA-Z.js +23 -0
  208. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/3.DHx0kho3.js +23 -0
  209. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/4.CnaMiirx.js +23 -0
  210. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/5.B6m-zTVe.js +23 -0
  211. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/6.BPDag1zv.js +23 -0
  212. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/7.D7LwxSvT.js +23 -0
  213. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/8.CCkNX20G.js +26 -0
  214. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/9.HDerA6JV.js +23 -0
  215. package/frontend/.svelte-kit/output/client/_app/version.json +1 -1
  216. package/frontend/.svelte-kit/output/server/.vite/manifest.json +95 -39
  217. package/frontend/.svelte-kit/output/server/_app/immutable/assets/BackLink.CvWWuO3h.css +5 -0
  218. package/frontend/.svelte-kit/output/server/_app/immutable/assets/Badge.D1SV0Gv7.css +5 -0
  219. package/frontend/.svelte-kit/output/server/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css +23 -0
  220. package/frontend/.svelte-kit/output/server/_app/immutable/assets/EmptyState.DUDM4P19.css +23 -0
  221. package/frontend/.svelte-kit/output/{client/_app/immutable/assets/ConfirmModal.CdhOYVBb.css → server/_app/immutable/assets/Modal.BuaCfdLj.css} +6 -1
  222. package/frontend/.svelte-kit/output/server/_app/immutable/assets/Pagination.DZmi2Po-.css +5 -0
  223. package/frontend/.svelte-kit/output/server/_app/immutable/assets/Toast.DENwYn3g.css +5 -0
  224. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_layout.BuhMvMUj.css +5 -0
  225. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.0Eln51hV.css +5 -0
  226. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.5IJAEAjc.css +5 -0
  227. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BR3wgXcZ.css +5 -0
  228. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BWAH0Beh.css +23 -0
  229. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BZfe6nWe.css +5 -0
  230. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.Bj_a_5lv.css +5 -0
  231. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BwgOqeMo.css +23 -0
  232. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.CBHi6pzT.css +5 -0
  233. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.CFnbmY-D.css +5 -0
  234. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.CrXpMrqh.css +5 -0
  235. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page._h2o67kg.css +5 -0
  236. package/frontend/.svelte-kit/output/server/chunks/BackLink.js +5 -0
  237. package/frontend/.svelte-kit/output/server/chunks/Badge.js +5 -0
  238. package/frontend/.svelte-kit/output/server/chunks/ConfirmModal.js +12 -20
  239. package/frontend/.svelte-kit/output/server/chunks/EmptyState.js +29 -7
  240. package/frontend/.svelte-kit/output/server/chunks/Modal.js +43 -0
  241. package/frontend/.svelte-kit/output/server/chunks/Toast.js +17 -1
  242. package/frontend/.svelte-kit/output/server/chunks/attributes.js +5 -0
  243. package/frontend/.svelte-kit/output/server/chunks/auth.js +5 -0
  244. package/frontend/.svelte-kit/output/{client/_app/immutable/assets/EmptyState.BdO1q9cJ.css → server/chunks/auth2.js} +13 -1
  245. package/frontend/.svelte-kit/output/server/chunks/client.js +5 -0
  246. package/frontend/.svelte-kit/output/server/chunks/common.js +56 -0
  247. package/frontend/.svelte-kit/output/server/chunks/constants.js +9 -2
  248. package/frontend/.svelte-kit/output/server/chunks/escaping.js +5 -0
  249. package/frontend/.svelte-kit/output/server/chunks/exports.js +5 -0
  250. package/frontend/.svelte-kit/output/server/chunks/format.js +5 -0
  251. package/frontend/.svelte-kit/output/server/chunks/index-server.js +5 -0
  252. package/frontend/.svelte-kit/output/server/chunks/index.js +5 -0
  253. package/frontend/.svelte-kit/output/server/chunks/index2.js +5 -0
  254. package/frontend/.svelte-kit/output/server/chunks/internal.js +7 -2
  255. package/frontend/.svelte-kit/output/server/chunks/reports.js +5 -0
  256. package/frontend/.svelte-kit/output/server/chunks/reports2.js +109 -0
  257. package/frontend/.svelte-kit/output/server/chunks/repository.js +111 -0
  258. package/frontend/.svelte-kit/output/server/chunks/runner.js +12 -0
  259. package/frontend/.svelte-kit/output/server/chunks/stores.js +5 -0
  260. package/frontend/.svelte-kit/output/server/chunks/theme.js +5 -0
  261. package/frontend/.svelte-kit/output/server/entries/fallbacks/error.svelte.js +5 -0
  262. package/frontend/.svelte-kit/output/server/entries/pages/_layout.js +5 -0
  263. package/frontend/.svelte-kit/output/server/entries/pages/_layout.svelte.js +7 -0
  264. package/frontend/.svelte-kit/output/server/entries/pages/_page.svelte.js +35 -12
  265. package/frontend/.svelte-kit/output/server/entries/pages/login/_page.svelte.js +9 -2
  266. package/frontend/.svelte-kit/output/server/entries/pages/reports/_id_/_page.svelte.js +9 -2
  267. package/frontend/.svelte-kit/output/server/entries/pages/reports/_page.svelte.js +21 -25
  268. package/frontend/.svelte-kit/output/server/entries/pages/reports/live/_page.svelte.js +31 -24
  269. package/frontend/.svelte-kit/output/server/entries/pages/scheduled-tests/_page.svelte.js +72 -32
  270. package/frontend/.svelte-kit/output/server/entries/pages/settings/_page.svelte.js +276 -95
  271. package/frontend/.svelte-kit/output/server/entries/pages/setup/_page.svelte.js +9 -2
  272. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/_page.svelte.js +43 -36
  273. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/runs/_id_/_page.svelte.js +66 -13
  274. package/frontend/.svelte-kit/output/server/entries/pages/test-repository/suites/_id_/_page.svelte.js +23 -17
  275. package/frontend/.svelte-kit/output/server/index.js +5 -0
  276. package/frontend/.svelte-kit/output/server/internal.js +5 -0
  277. package/frontend/.svelte-kit/output/server/manifest-full.js +6 -1
  278. package/frontend/.svelte-kit/output/server/manifest.js +6 -1
  279. package/frontend/.svelte-kit/output/server/nodes/0.js +7 -2
  280. package/frontend/.svelte-kit/output/server/nodes/1.js +6 -1
  281. package/frontend/.svelte-kit/output/server/nodes/10.js +7 -2
  282. package/frontend/.svelte-kit/output/server/nodes/11.js +7 -2
  283. package/frontend/.svelte-kit/output/server/nodes/12.js +7 -2
  284. package/frontend/.svelte-kit/output/server/nodes/2.js +7 -2
  285. package/frontend/.svelte-kit/output/server/nodes/3.js +6 -1
  286. package/frontend/.svelte-kit/output/server/nodes/4.js +7 -2
  287. package/frontend/.svelte-kit/output/server/nodes/5.js +6 -1
  288. package/frontend/.svelte-kit/output/server/nodes/6.js +6 -1
  289. package/frontend/.svelte-kit/output/server/nodes/7.js +7 -2
  290. package/frontend/.svelte-kit/output/server/nodes/8.js +7 -2
  291. package/frontend/.svelte-kit/output/server/nodes/9.js +6 -1
  292. package/frontend/build/client/_app/immutable/assets/0.BhSG-jZH.css +5 -0
  293. package/frontend/build/client/_app/immutable/assets/0.BhSG-jZH.css.br +0 -0
  294. package/frontend/build/client/_app/immutable/assets/0.BhSG-jZH.css.gz +0 -0
  295. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css +5 -0
  296. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css.br +0 -0
  297. package/frontend/build/client/_app/immutable/assets/10.CdaQUS6U.css.gz +0 -0
  298. package/frontend/build/client/_app/immutable/assets/11.BWAH0Beh.css +23 -0
  299. package/frontend/build/client/_app/immutable/assets/11.BWAH0Beh.css.br +0 -0
  300. package/frontend/build/client/_app/immutable/assets/11.BWAH0Beh.css.gz +0 -0
  301. package/frontend/build/client/_app/immutable/assets/12.Bj_a_5lv.css +5 -0
  302. package/frontend/build/client/_app/immutable/assets/12.Bj_a_5lv.css.br +0 -0
  303. package/frontend/build/client/_app/immutable/assets/12.Bj_a_5lv.css.gz +0 -0
  304. package/frontend/build/client/_app/immutable/assets/2.CrXpMrqh.css +5 -0
  305. package/frontend/build/client/_app/immutable/assets/2.CrXpMrqh.css.br +0 -0
  306. package/frontend/build/client/_app/immutable/assets/2.CrXpMrqh.css.gz +0 -0
  307. package/frontend/build/client/_app/immutable/assets/3.BR3wgXcZ.css +5 -0
  308. package/frontend/build/client/_app/immutable/assets/3.BR3wgXcZ.css.br +0 -0
  309. package/frontend/build/client/_app/immutable/assets/3.BR3wgXcZ.css.gz +0 -0
  310. package/frontend/build/client/_app/immutable/assets/4.0Eln51hV.css +5 -0
  311. package/frontend/build/client/_app/immutable/assets/4.0Eln51hV.css.br +0 -0
  312. package/frontend/build/client/_app/immutable/assets/4.0Eln51hV.css.gz +0 -0
  313. package/frontend/build/client/_app/immutable/assets/5.DFV9OgAu.css +5 -0
  314. package/frontend/build/client/_app/immutable/assets/5.DFV9OgAu.css.br +0 -0
  315. package/frontend/build/client/_app/immutable/assets/5.DFV9OgAu.css.gz +0 -0
  316. package/frontend/build/client/_app/immutable/assets/6.CFnbmY-D.css +5 -0
  317. package/frontend/build/client/_app/immutable/assets/6.CFnbmY-D.css.br +0 -0
  318. package/frontend/build/client/_app/immutable/assets/6.CFnbmY-D.css.gz +0 -0
  319. package/frontend/build/client/_app/immutable/assets/7.CBHi6pzT.css +5 -0
  320. package/frontend/build/client/_app/immutable/assets/7.CBHi6pzT.css.br +0 -0
  321. package/frontend/build/client/_app/immutable/assets/7.CBHi6pzT.css.gz +0 -0
  322. package/frontend/build/client/_app/immutable/assets/8.BwgOqeMo.css +23 -0
  323. package/frontend/build/client/_app/immutable/assets/8.BwgOqeMo.css.br +0 -0
  324. package/frontend/build/client/_app/immutable/assets/8.BwgOqeMo.css.gz +0 -0
  325. package/frontend/build/client/_app/immutable/assets/9._h2o67kg.css +5 -0
  326. package/frontend/build/client/_app/immutable/assets/9._h2o67kg.css.br +0 -0
  327. package/frontend/build/client/_app/immutable/assets/9._h2o67kg.css.gz +0 -0
  328. package/frontend/build/client/_app/immutable/assets/BackLink.CvWWuO3h.css +5 -0
  329. package/frontend/build/client/_app/immutable/assets/BackLink.CvWWuO3h.css.br +0 -0
  330. package/frontend/build/client/_app/immutable/assets/BackLink.CvWWuO3h.css.gz +0 -0
  331. package/frontend/build/client/_app/immutable/assets/Badge.D1SV0Gv7.css +5 -0
  332. package/frontend/build/client/_app/immutable/assets/Badge.D1SV0Gv7.css.br +0 -0
  333. package/frontend/build/client/_app/immutable/assets/Badge.D1SV0Gv7.css.gz +0 -0
  334. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css +5 -0
  335. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css.br +0 -0
  336. package/frontend/build/client/_app/immutable/assets/Button.FOWXxvc7.css.gz +0 -0
  337. package/frontend/build/client/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css +23 -0
  338. package/frontend/build/client/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css.br +0 -0
  339. package/frontend/build/client/_app/immutable/assets/ConfirmModal.Dd3uP-Sk.css.gz +0 -0
  340. package/frontend/build/client/_app/immutable/assets/EmptyState.DUDM4P19.css +23 -0
  341. package/frontend/build/client/_app/immutable/assets/{EmptyState.BdO1q9cJ.css.gz → EmptyState.DUDM4P19.css.br} +0 -0
  342. package/frontend/build/client/_app/immutable/assets/EmptyState.DUDM4P19.css.gz +0 -0
  343. package/frontend/{.svelte-kit/output/client/_app/immutable/assets/ConfirmModal.DmxkcwXv.css → build/client/_app/immutable/assets/Modal.BZpm0HP8.css} +6 -1
  344. package/frontend/build/client/_app/immutable/assets/Modal.BZpm0HP8.css.br +0 -0
  345. package/frontend/build/client/_app/immutable/assets/Modal.BZpm0HP8.css.gz +0 -0
  346. package/frontend/{.svelte-kit/output/server/_app/immutable/assets/ConfirmModal.CdhOYVBb.css → build/client/_app/immutable/assets/Modal.BuaCfdLj.css} +6 -1
  347. package/frontend/build/client/_app/immutable/assets/Modal.BuaCfdLj.css.br +0 -0
  348. package/frontend/build/client/_app/immutable/assets/Modal.BuaCfdLj.css.gz +0 -0
  349. package/frontend/build/client/_app/immutable/assets/Pagination.DZmi2Po-.css +5 -0
  350. package/frontend/build/client/_app/immutable/assets/Pagination.DZmi2Po-.css.br +0 -0
  351. package/frontend/build/client/_app/immutable/assets/Pagination.DZmi2Po-.css.gz +0 -0
  352. package/frontend/build/client/_app/immutable/assets/Toast.DENwYn3g.css +5 -0
  353. package/frontend/build/client/_app/immutable/assets/Toast.DENwYn3g.css.br +0 -0
  354. package/frontend/build/client/_app/immutable/assets/Toast.DENwYn3g.css.gz +0 -0
  355. package/frontend/build/client/_app/immutable/assets/_layout.BuhMvMUj.css +5 -0
  356. package/frontend/build/client/_app/immutable/assets/_layout.BuhMvMUj.css.br +0 -0
  357. package/frontend/build/client/_app/immutable/assets/_layout.BuhMvMUj.css.gz +0 -0
  358. package/frontend/build/client/_app/immutable/assets/_page.0Eln51hV.css +5 -0
  359. package/frontend/build/client/_app/immutable/assets/_page.0Eln51hV.css.br +0 -0
  360. package/frontend/build/client/_app/immutable/assets/_page.0Eln51hV.css.gz +0 -0
  361. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css +5 -0
  362. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css.br +0 -0
  363. package/frontend/build/client/_app/immutable/assets/_page.5IJAEAjc.css.gz +0 -0
  364. package/frontend/build/client/_app/immutable/assets/_page.BR3wgXcZ.css +5 -0
  365. package/frontend/build/client/_app/immutable/assets/_page.BR3wgXcZ.css.br +0 -0
  366. package/frontend/build/client/_app/immutable/assets/_page.BR3wgXcZ.css.gz +0 -0
  367. package/frontend/build/client/_app/immutable/assets/_page.BWAH0Beh.css +23 -0
  368. package/frontend/build/client/_app/immutable/assets/_page.BWAH0Beh.css.br +0 -0
  369. package/frontend/build/client/_app/immutable/assets/_page.BWAH0Beh.css.gz +0 -0
  370. package/frontend/build/client/_app/immutable/assets/_page.BZfe6nWe.css +5 -0
  371. package/frontend/build/client/_app/immutable/assets/_page.BZfe6nWe.css.br +0 -0
  372. package/frontend/build/client/_app/immutable/assets/_page.BZfe6nWe.css.gz +0 -0
  373. package/frontend/build/client/_app/immutable/assets/_page.Bj_a_5lv.css +5 -0
  374. package/frontend/build/client/_app/immutable/assets/_page.Bj_a_5lv.css.br +0 -0
  375. package/frontend/build/client/_app/immutable/assets/_page.Bj_a_5lv.css.gz +0 -0
  376. package/frontend/build/client/_app/immutable/assets/_page.BwgOqeMo.css +23 -0
  377. package/frontend/build/client/_app/immutable/assets/_page.BwgOqeMo.css.br +0 -0
  378. package/frontend/build/client/_app/immutable/assets/_page.BwgOqeMo.css.gz +0 -0
  379. package/frontend/build/client/_app/immutable/assets/_page.CBHi6pzT.css +5 -0
  380. package/frontend/build/client/_app/immutable/assets/_page.CBHi6pzT.css.br +0 -0
  381. package/frontend/build/client/_app/immutable/assets/_page.CBHi6pzT.css.gz +0 -0
  382. package/frontend/build/client/_app/immutable/assets/_page.CFnbmY-D.css +5 -0
  383. package/frontend/build/client/_app/immutable/assets/_page.CFnbmY-D.css.br +0 -0
  384. package/frontend/build/client/_app/immutable/assets/_page.CFnbmY-D.css.gz +0 -0
  385. package/frontend/build/client/_app/immutable/assets/_page.CrXpMrqh.css +5 -0
  386. package/frontend/build/client/_app/immutable/assets/_page.CrXpMrqh.css.br +0 -0
  387. package/frontend/build/client/_app/immutable/assets/_page.CrXpMrqh.css.gz +0 -0
  388. package/frontend/build/client/_app/immutable/assets/_page._h2o67kg.css +5 -0
  389. package/frontend/build/client/_app/immutable/assets/_page._h2o67kg.css.br +0 -0
  390. package/frontend/build/client/_app/immutable/assets/_page._h2o67kg.css.gz +0 -0
  391. package/frontend/build/client/_app/immutable/chunks/{BLAiBE__.js → 2zMvi6fR.js} +6 -1
  392. package/frontend/build/client/_app/immutable/chunks/2zMvi6fR.js.br +0 -0
  393. package/frontend/build/client/_app/immutable/chunks/2zMvi6fR.js.gz +0 -0
  394. package/frontend/build/client/_app/immutable/chunks/3IV-uqHa.js +23 -0
  395. package/frontend/build/client/_app/immutable/chunks/3IV-uqHa.js.br +0 -0
  396. package/frontend/build/client/_app/immutable/chunks/3IV-uqHa.js.gz +0 -0
  397. package/frontend/build/client/_app/immutable/chunks/4N1zIH8t.js +23 -0
  398. package/frontend/build/client/_app/immutable/chunks/4N1zIH8t.js.br +0 -0
  399. package/frontend/build/client/_app/immutable/chunks/4N1zIH8t.js.gz +0 -0
  400. package/frontend/build/client/_app/immutable/chunks/B98sHkeB.js +23 -0
  401. package/frontend/build/client/_app/immutable/chunks/B98sHkeB.js.br +0 -0
  402. package/frontend/build/client/_app/immutable/chunks/B98sHkeB.js.gz +0 -0
  403. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/C67QNx7Z.js → build/client/_app/immutable/chunks/BAACMRH5.js} +6 -1
  404. package/frontend/build/client/_app/immutable/chunks/BAACMRH5.js.br +0 -0
  405. package/frontend/build/client/_app/immutable/chunks/BAACMRH5.js.gz +0 -0
  406. package/frontend/build/client/_app/immutable/chunks/Bfc47y5P.js +5 -0
  407. package/frontend/build/client/_app/immutable/chunks/Bfc47y5P.js.br +0 -0
  408. package/frontend/build/client/_app/immutable/chunks/Bfc47y5P.js.gz +0 -0
  409. package/frontend/build/client/_app/immutable/chunks/BhvHtTRh.js +23 -0
  410. package/frontend/build/client/_app/immutable/chunks/BhvHtTRh.js.br +0 -0
  411. package/frontend/build/client/_app/immutable/chunks/BhvHtTRh.js.gz +0 -0
  412. package/frontend/build/client/_app/immutable/chunks/BjUpWNbl.js +23 -0
  413. package/frontend/build/client/_app/immutable/chunks/BjUpWNbl.js.br +0 -0
  414. package/frontend/build/client/_app/immutable/chunks/BjUpWNbl.js.gz +0 -0
  415. package/frontend/build/client/_app/immutable/chunks/{DIx44H9N.js → C1Vid6wz.js} +6 -1
  416. package/frontend/build/client/_app/immutable/chunks/C1Vid6wz.js.br +0 -0
  417. package/frontend/build/client/_app/immutable/chunks/C1Vid6wz.js.gz +0 -0
  418. package/frontend/build/client/_app/immutable/chunks/C1sukchk.js +23 -0
  419. package/frontend/build/client/_app/immutable/chunks/C1sukchk.js.br +0 -0
  420. package/frontend/build/client/_app/immutable/chunks/C1sukchk.js.gz +0 -0
  421. package/frontend/build/client/_app/immutable/chunks/C8OURRSs.js +23 -0
  422. package/frontend/build/client/_app/immutable/chunks/C8OURRSs.js.br +0 -0
  423. package/frontend/build/client/_app/immutable/chunks/C8OURRSs.js.gz +0 -0
  424. package/frontend/build/client/_app/immutable/chunks/{DGryW1Vp.js → CKDtmZUQ.js} +6 -1
  425. package/frontend/build/client/_app/immutable/chunks/CKDtmZUQ.js.br +0 -0
  426. package/frontend/build/client/_app/immutable/chunks/CKDtmZUQ.js.gz +0 -0
  427. package/frontend/build/client/_app/immutable/chunks/CMBQQ9RZ.js +23 -0
  428. package/frontend/build/client/_app/immutable/chunks/CMBQQ9RZ.js.br +0 -0
  429. package/frontend/build/client/_app/immutable/chunks/CMBQQ9RZ.js.gz +0 -0
  430. package/frontend/build/client/_app/immutable/chunks/{C4eeChIU.js → CNdcuGR0.js} +6 -1
  431. package/frontend/build/client/_app/immutable/chunks/{BFgtfHj2.js.br → CNdcuGR0.js.br} +0 -0
  432. package/frontend/build/client/_app/immutable/chunks/CNdcuGR0.js.gz +0 -0
  433. package/frontend/build/client/_app/immutable/chunks/CgnwuKKO.js +23 -0
  434. package/frontend/build/client/_app/immutable/chunks/CgnwuKKO.js.br +0 -0
  435. package/frontend/build/client/_app/immutable/chunks/CgnwuKKO.js.gz +0 -0
  436. package/frontend/build/client/_app/immutable/chunks/CuqnZUex.js +23 -0
  437. package/frontend/build/client/_app/immutable/chunks/CuqnZUex.js.br +21 -0
  438. package/frontend/build/client/_app/immutable/chunks/CuqnZUex.js.gz +0 -0
  439. package/frontend/build/client/_app/immutable/chunks/D2cvzNT9.js +23 -0
  440. package/frontend/build/client/_app/immutable/chunks/D2cvzNT9.js.br +0 -0
  441. package/frontend/build/client/_app/immutable/chunks/D2cvzNT9.js.gz +0 -0
  442. package/frontend/build/client/_app/immutable/chunks/{B0pefNHY.js → D2gYTmAA.js} +6 -1
  443. package/frontend/build/client/_app/immutable/chunks/D2gYTmAA.js.br +0 -0
  444. package/frontend/build/client/_app/immutable/chunks/D2gYTmAA.js.gz +0 -0
  445. package/frontend/build/client/_app/immutable/chunks/{uFRI_bmR.js → DCgHuuvs.js} +6 -1
  446. package/frontend/build/client/_app/immutable/{assets/EmptyState.BdO1q9cJ.css.br → chunks/DCgHuuvs.js.br} +0 -0
  447. package/frontend/build/client/_app/immutable/chunks/DCgHuuvs.js.gz +0 -0
  448. package/frontend/build/client/_app/immutable/chunks/{CxTX_lpP.js → DDblTLLE.js} +6 -1
  449. package/frontend/build/client/_app/immutable/chunks/DDblTLLE.js.br +0 -0
  450. package/frontend/build/client/_app/immutable/chunks/DDblTLLE.js.gz +0 -0
  451. package/frontend/build/client/_app/immutable/chunks/DW85KPAh.js +24 -0
  452. package/frontend/build/client/_app/immutable/chunks/DW85KPAh.js.br +0 -0
  453. package/frontend/build/client/_app/immutable/chunks/DW85KPAh.js.gz +0 -0
  454. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BFgtfHj2.js → build/client/_app/immutable/chunks/DW_iTTZe.js} +6 -1
  455. package/frontend/build/client/_app/immutable/chunks/{BFgtfHj2.js.gz → DW_iTTZe.js.br} +0 -0
  456. package/frontend/build/client/_app/immutable/chunks/DW_iTTZe.js.gz +0 -0
  457. package/frontend/build/client/_app/immutable/chunks/{BVMec-1T.js → DYlaQsvN.js} +6 -1
  458. package/frontend/build/client/_app/immutable/chunks/DYlaQsvN.js.br +0 -0
  459. package/frontend/build/client/_app/immutable/chunks/DYlaQsvN.js.gz +0 -0
  460. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BFEiffAL.js → build/client/_app/immutable/chunks/DkNBSlo2.js} +6 -1
  461. package/frontend/build/client/_app/immutable/chunks/DkNBSlo2.js.br +0 -0
  462. package/frontend/build/client/_app/immutable/chunks/DkNBSlo2.js.gz +0 -0
  463. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BkKmeUbA.js → build/client/_app/immutable/chunks/DlNYZJ7K.js} +6 -1
  464. package/frontend/build/client/_app/immutable/chunks/DlNYZJ7K.js.br +0 -0
  465. package/frontend/build/client/_app/immutable/chunks/DlNYZJ7K.js.gz +0 -0
  466. package/frontend/build/client/_app/immutable/chunks/Dlnxgs49.js +23 -0
  467. package/frontend/build/client/_app/immutable/chunks/Dlnxgs49.js.br +0 -0
  468. package/frontend/build/client/_app/immutable/chunks/Dlnxgs49.js.gz +0 -0
  469. package/frontend/build/client/_app/immutable/chunks/DtGXv8RA.js +25 -0
  470. package/frontend/build/client/_app/immutable/chunks/DtGXv8RA.js.br +0 -0
  471. package/frontend/build/client/_app/immutable/chunks/DtGXv8RA.js.gz +0 -0
  472. package/frontend/build/client/_app/immutable/chunks/TOCyHP97.js +28 -0
  473. package/frontend/build/client/_app/immutable/chunks/TOCyHP97.js.br +0 -0
  474. package/frontend/build/client/_app/immutable/chunks/TOCyHP97.js.gz +0 -0
  475. package/frontend/build/client/_app/immutable/chunks/{CyQ_oBw2.js → oN0Z3NSF.js} +6 -1
  476. package/frontend/build/client/_app/immutable/chunks/oN0Z3NSF.js.br +0 -0
  477. package/frontend/build/client/_app/immutable/chunks/oN0Z3NSF.js.gz +0 -0
  478. package/frontend/build/client/_app/immutable/chunks/{raHbXn_9.js → t-La0hgu.js} +6 -1
  479. package/frontend/build/client/_app/immutable/chunks/t-La0hgu.js.br +0 -0
  480. package/frontend/build/client/_app/immutable/chunks/t-La0hgu.js.gz +0 -0
  481. package/frontend/build/client/_app/immutable/chunks/{DP6QP4L6.js → w0D4Uzlq.js} +6 -1
  482. package/frontend/build/client/_app/immutable/chunks/w0D4Uzlq.js.br +0 -0
  483. package/frontend/build/client/_app/immutable/chunks/w0D4Uzlq.js.gz +0 -0
  484. package/frontend/build/client/_app/immutable/entry/app.BCWbw5zZ.js +24 -0
  485. package/frontend/build/client/_app/immutable/entry/app.BCWbw5zZ.js.br +0 -0
  486. package/frontend/build/client/_app/immutable/entry/app.BCWbw5zZ.js.gz +0 -0
  487. package/frontend/{.svelte-kit/output/client/_app/immutable/entry/start.MMlC62np.js → build/client/_app/immutable/entry/start.2_AF42wj.js} +6 -1
  488. package/frontend/build/client/_app/immutable/entry/{start.MMlC62np.js.br → start.2_AF42wj.js.br} +5 -1
  489. package/frontend/build/client/_app/immutable/entry/{start.MMlC62np.js.gz → start.2_AF42wj.js.gz} +0 -0
  490. package/frontend/build/client/_app/immutable/nodes/0.BAqq2UTE.js +28 -0
  491. package/frontend/build/client/_app/immutable/nodes/0.BAqq2UTE.js.br +0 -0
  492. package/frontend/build/client/_app/immutable/nodes/0.BAqq2UTE.js.gz +0 -0
  493. package/frontend/build/client/_app/immutable/nodes/{1.Dbck5ct8.js → 1.D5VvLtGP.js} +6 -1
  494. package/frontend/build/client/_app/immutable/nodes/1.D5VvLtGP.js.br +0 -0
  495. package/frontend/build/client/_app/immutable/nodes/1.D5VvLtGP.js.gz +0 -0
  496. package/frontend/build/client/_app/immutable/nodes/10.Bn4Ma-MU.js +23 -0
  497. package/frontend/build/client/_app/immutable/nodes/10.Bn4Ma-MU.js.br +0 -0
  498. package/frontend/build/client/_app/immutable/nodes/10.Bn4Ma-MU.js.gz +0 -0
  499. package/frontend/build/client/_app/immutable/nodes/11.BacEu7sW.js +23 -0
  500. package/frontend/build/client/_app/immutable/nodes/11.BacEu7sW.js.br +0 -0
  501. package/frontend/build/client/_app/immutable/nodes/11.BacEu7sW.js.gz +0 -0
  502. package/frontend/build/client/_app/immutable/nodes/12.0YGtl1uj.js +23 -0
  503. package/frontend/build/client/_app/immutable/nodes/12.0YGtl1uj.js.br +0 -0
  504. package/frontend/build/client/_app/immutable/nodes/12.0YGtl1uj.js.gz +0 -0
  505. package/frontend/build/client/_app/immutable/nodes/2.C2jjMA-Z.js +23 -0
  506. package/frontend/build/client/_app/immutable/nodes/2.C2jjMA-Z.js.br +0 -0
  507. package/frontend/build/client/_app/immutable/nodes/2.C2jjMA-Z.js.gz +0 -0
  508. package/frontend/build/client/_app/immutable/nodes/3.DHx0kho3.js +23 -0
  509. package/frontend/build/client/_app/immutable/nodes/3.DHx0kho3.js.br +0 -0
  510. package/frontend/build/client/_app/immutable/nodes/3.DHx0kho3.js.gz +0 -0
  511. package/frontend/build/client/_app/immutable/nodes/4.CnaMiirx.js +23 -0
  512. package/frontend/build/client/_app/immutable/nodes/4.CnaMiirx.js.br +0 -0
  513. package/frontend/build/client/_app/immutable/nodes/4.CnaMiirx.js.gz +0 -0
  514. package/frontend/build/client/_app/immutable/nodes/5.B6m-zTVe.js +23 -0
  515. package/frontend/build/client/_app/immutable/nodes/5.B6m-zTVe.js.br +0 -0
  516. package/frontend/build/client/_app/immutable/nodes/5.B6m-zTVe.js.gz +0 -0
  517. package/frontend/build/client/_app/immutable/nodes/6.BPDag1zv.js +23 -0
  518. package/frontend/build/client/_app/immutable/nodes/6.BPDag1zv.js.br +0 -0
  519. package/frontend/build/client/_app/immutable/nodes/6.BPDag1zv.js.gz +0 -0
  520. package/frontend/build/client/_app/immutable/nodes/7.D7LwxSvT.js +23 -0
  521. package/frontend/build/client/_app/immutable/nodes/7.D7LwxSvT.js.br +0 -0
  522. package/frontend/build/client/_app/immutable/nodes/7.D7LwxSvT.js.gz +0 -0
  523. package/frontend/build/client/_app/immutable/nodes/8.CCkNX20G.js +26 -0
  524. package/frontend/build/client/_app/immutable/nodes/8.CCkNX20G.js.br +0 -0
  525. package/frontend/build/client/_app/immutable/nodes/8.CCkNX20G.js.gz +0 -0
  526. package/frontend/build/client/_app/immutable/nodes/9.HDerA6JV.js +23 -0
  527. package/frontend/build/client/_app/immutable/nodes/9.HDerA6JV.js.br +0 -0
  528. package/frontend/build/client/_app/immutable/nodes/9.HDerA6JV.js.gz +0 -0
  529. package/frontend/build/client/_app/version.json +1 -1
  530. package/frontend/build/client/_app/version.json.br +0 -0
  531. package/frontend/build/client/_app/version.json.gz +0 -0
  532. package/frontend/build/env.js +5 -0
  533. package/frontend/build/handler.js +5 -0
  534. package/frontend/build/index.js +5 -0
  535. package/frontend/build/server/chunks/{0-Dzas6zkl.js → 0-Di4jNU9J.js} +9 -4
  536. package/frontend/build/server/chunks/0-Di4jNU9J.js.map +21 -0
  537. package/frontend/build/server/chunks/{1-B4EsP8yr.js → 1-DR5YRUTa.js} +7 -2
  538. package/frontend/build/server/chunks/{1-B4EsP8yr.js.map → 1-DR5YRUTa.js.map} +5 -1
  539. package/frontend/build/server/chunks/10-Bhe409bL.js +31 -0
  540. package/frontend/build/server/chunks/10-Bhe409bL.js.map +21 -0
  541. package/frontend/build/server/chunks/11-DqyXW7n1.js +31 -0
  542. package/frontend/build/server/chunks/11-DqyXW7n1.js.map +21 -0
  543. package/frontend/build/server/chunks/12-BCpjMUbs.js +31 -0
  544. package/frontend/build/server/chunks/12-BCpjMUbs.js.map +21 -0
  545. package/frontend/build/server/chunks/{2-Bkz8H7CT.js → 2-D-0buH5i.js} +9 -4
  546. package/frontend/build/server/chunks/{2-Bkz8H7CT.js.map → 2-D-0buH5i.js.map} +5 -1
  547. package/frontend/build/server/chunks/{3-DDtaiqu7.js → 3-y2kzPO2X.js} +8 -3
  548. package/frontend/build/server/chunks/3-y2kzPO2X.js.map +21 -0
  549. package/frontend/build/server/chunks/4-CFrK8HST.js +31 -0
  550. package/frontend/build/server/chunks/4-CFrK8HST.js.map +21 -0
  551. package/frontend/build/server/chunks/{5-CK5hY2WF.js → 5-B0lJu5bT.js} +8 -3
  552. package/frontend/build/server/chunks/5-B0lJu5bT.js.map +21 -0
  553. package/frontend/build/server/chunks/{6-Cps9fL3Z.js → 6-BD4CEJ3Z.js} +8 -3
  554. package/frontend/build/server/chunks/6-BD4CEJ3Z.js.map +21 -0
  555. package/frontend/build/server/chunks/7-DekQfQHu.js +31 -0
  556. package/frontend/build/server/chunks/7-DekQfQHu.js.map +21 -0
  557. package/frontend/build/server/chunks/8-BMqmu7WF.js +31 -0
  558. package/frontend/build/server/chunks/8-BMqmu7WF.js.map +21 -0
  559. package/frontend/build/server/chunks/{9-CUJxgoIN.js → 9-C5sKo9aY.js} +8 -3
  560. package/frontend/build/server/chunks/9-C5sKo9aY.js.map +21 -0
  561. package/frontend/build/server/chunks/BackLink-KxZNqsaq.js +5 -0
  562. package/frontend/build/server/chunks/BackLink-KxZNqsaq.js.map +4 -0
  563. package/frontend/build/server/chunks/Badge-B5V-z6pI.js +5 -0
  564. package/frontend/build/server/chunks/Badge-B5V-z6pI.js.map +4 -0
  565. package/frontend/build/server/chunks/{ConfirmModal-DBtnLLsU.js → ConfirmModal-Ckkt99Pn.js} +12 -19
  566. package/frontend/build/server/chunks/ConfirmModal-Ckkt99Pn.js.map +21 -0
  567. package/frontend/build/server/chunks/EmptyState-BwwbShnX.js +56 -0
  568. package/frontend/build/server/chunks/EmptyState-BwwbShnX.js.map +21 -0
  569. package/frontend/build/server/chunks/Modal-DG-6c5si.js +43 -0
  570. package/frontend/build/server/chunks/Modal-DG-6c5si.js.map +21 -0
  571. package/frontend/build/server/chunks/{Button-CuacyA7Y.js → Toast-CIG4edEp.js} +22 -3
  572. package/frontend/build/server/chunks/Toast-CIG4edEp.js.map +21 -0
  573. package/frontend/build/server/chunks/{_layout.svelte-DoJXDbP1.js → _layout.svelte-BjPrZpoG.js} +10 -3
  574. package/frontend/build/server/chunks/_layout.svelte-BjPrZpoG.js.map +21 -0
  575. package/frontend/build/server/chunks/{_page.svelte-DNNyBx4y.js → _page.svelte-B9rjnZWE.js} +10 -4
  576. package/frontend/build/server/chunks/_page.svelte-B9rjnZWE.js.map +21 -0
  577. package/frontend/build/server/chunks/{_page.svelte-C0vstY93.js → _page.svelte-BHw14GPR.js} +76 -36
  578. package/frontend/build/server/chunks/_page.svelte-BHw14GPR.js.map +21 -0
  579. package/frontend/build/server/chunks/{_page.svelte-LcJmR5du.js → _page.svelte-BbZNxvCl.js} +29 -31
  580. package/frontend/build/server/chunks/_page.svelte-BbZNxvCl.js.map +21 -0
  581. package/frontend/build/server/chunks/_page.svelte-CLFpft5D.js +118 -0
  582. package/frontend/build/server/chunks/_page.svelte-CLFpft5D.js.map +21 -0
  583. package/frontend/build/server/chunks/_page.svelte-Cr16HubD.js +746 -0
  584. package/frontend/build/server/chunks/_page.svelte-Cr16HubD.js.map +21 -0
  585. package/frontend/build/server/chunks/{_page.svelte-DALHRFEX.js → _page.svelte-D1aYn1PL.js} +10 -4
  586. package/frontend/build/server/chunks/_page.svelte-D1aYn1PL.js.map +21 -0
  587. package/frontend/build/server/chunks/{_page.svelte-CC27sZag.js → _page.svelte-D2oF79cT.js} +45 -38
  588. package/frontend/build/server/chunks/_page.svelte-D2oF79cT.js.map +21 -0
  589. package/frontend/build/server/chunks/{_page.svelte-gnktnXKP.js → _page.svelte-D78qaBDN.js} +35 -28
  590. package/frontend/build/server/chunks/_page.svelte-D78qaBDN.js.map +21 -0
  591. package/frontend/build/server/chunks/{_page.svelte-DqWsUJRp.js → _page.svelte-DyyuZN_3.js} +25 -19
  592. package/frontend/build/server/chunks/_page.svelte-DyyuZN_3.js.map +21 -0
  593. package/frontend/build/server/chunks/{_page.svelte-CYkOPxn2.js → _page.svelte-sbqebZYx.js} +40 -17
  594. package/frontend/build/server/chunks/_page.svelte-sbqebZYx.js.map +21 -0
  595. package/frontend/build/server/chunks/{_page.svelte-BETENC2e.js → _page.svelte-ubW5EUCf.js} +13 -6
  596. package/frontend/build/server/chunks/_page.svelte-ubW5EUCf.js.map +21 -0
  597. package/frontend/build/server/chunks/attributes-BeaNKpgU.js +5 -0
  598. package/frontend/build/server/chunks/attributes-BeaNKpgU.js.map +4 -0
  599. package/frontend/build/server/chunks/auth-rlH-cIzn.js +5 -0
  600. package/frontend/build/server/chunks/auth-rlH-cIzn.js.map +4 -0
  601. package/frontend/{.svelte-kit/output/client/_app/immutable/chunks/BIRVeCLU.js → build/server/chunks/auth2-C02yYDpz.js} +11 -1
  602. package/frontend/build/server/chunks/auth2-C02yYDpz.js.map +21 -0
  603. package/frontend/build/server/chunks/client-DyII78e0.js +5 -0
  604. package/frontend/build/server/chunks/client-DyII78e0.js.map +4 -0
  605. package/frontend/build/server/chunks/common-Db-bgKYG.js +42 -0
  606. package/frontend/build/server/chunks/common-Db-bgKYG.js.map +21 -0
  607. package/frontend/build/server/chunks/{constants-Drz-Vo39.js → constants-cZ2kUwWa.js} +9 -3
  608. package/frontend/build/server/chunks/{constants-Drz-Vo39.js.map → constants-cZ2kUwWa.js.map} +5 -1
  609. package/frontend/build/server/chunks/error.svelte-BDW3iP1O.js +5 -0
  610. package/frontend/build/server/chunks/error.svelte-BDW3iP1O.js.map +4 -0
  611. package/frontend/build/server/chunks/escaping-CqgfEcN3.js +5 -0
  612. package/frontend/build/server/chunks/escaping-CqgfEcN3.js.map +4 -0
  613. package/frontend/build/server/chunks/exports-D0QHgeSL.js +5 -0
  614. package/frontend/build/server/chunks/exports-D0QHgeSL.js.map +4 -0
  615. package/frontend/build/server/chunks/{format-D26ZQccb.js → format-0SSB1oGG.js} +7 -2
  616. package/frontend/build/server/chunks/{format-D26ZQccb.js.map → format-0SSB1oGG.js.map} +5 -1
  617. package/frontend/build/server/chunks/index-server-Dr2Nvcmu.js +5 -0
  618. package/frontend/build/server/chunks/index-server-Dr2Nvcmu.js.map +4 -0
  619. package/frontend/build/server/chunks/index2-DG8XHU5D.js +5 -0
  620. package/frontend/build/server/chunks/index2-DG8XHU5D.js.map +4 -0
  621. package/frontend/build/server/chunks/{reports-Bgi7V5N7.js → reports-DnYbvluH.js} +7 -2
  622. package/frontend/build/server/chunks/{reports-Bgi7V5N7.js.map → reports-DnYbvluH.js.map} +5 -1
  623. package/frontend/build/server/chunks/reports2-DR4XlcJg.js +69 -0
  624. package/frontend/build/server/chunks/reports2-DR4XlcJg.js.map +21 -0
  625. package/frontend/build/server/chunks/repository-D9Derhnk.js +70 -0
  626. package/frontend/build/server/chunks/repository-D9Derhnk.js.map +21 -0
  627. package/frontend/build/server/chunks/{runner-D18Ml_vF.js → runner-DE5sufZH.js} +13 -1
  628. package/frontend/build/server/chunks/runner-DE5sufZH.js.map +21 -0
  629. package/frontend/build/server/chunks/stores-DlkXV308.js +5 -0
  630. package/frontend/build/server/chunks/stores-DlkXV308.js.map +4 -0
  631. package/frontend/build/server/chunks/theme-D_NKm6iI.js +5 -0
  632. package/frontend/build/server/chunks/theme-D_NKm6iI.js.map +4 -0
  633. package/frontend/build/server/index.js +7 -2
  634. package/frontend/build/server/index.js.map +5 -1
  635. package/frontend/build/server/manifest.js +19 -14
  636. package/frontend/build/server/manifest.js.map +5 -1
  637. package/frontend/build/shims.js +5 -0
  638. package/package.json +2 -1
  639. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.BJ-I1gHO.css +0 -18
  640. package/frontend/.svelte-kit/adapter-node/_app/immutable/assets/_page.Bhof07Eg.css +0 -18
  641. package/frontend/.svelte-kit/adapter-node/chunks/Button.js +0 -33
  642. package/frontend/.svelte-kit/output/client/_app/immutable/assets/11.BJ-I1gHO.css +0 -18
  643. package/frontend/.svelte-kit/output/client/_app/immutable/assets/8.Bhof07Eg.css +0 -18
  644. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.BJ-I1gHO.css +0 -18
  645. package/frontend/.svelte-kit/output/client/_app/immutable/assets/_page.Bhof07Eg.css +0 -18
  646. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BKCNyxZ2.js +0 -18
  647. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BeO8veBd.js +0 -18
  648. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/BgNaeXAp.js +0 -18
  649. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/C3SY6-sX.js +0 -19
  650. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CVV6HrFb.js +0 -18
  651. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/CstKKb9b.js +0 -18
  652. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/DmRbbcS3.js +0 -23
  653. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/IFIFk6zi.js +0 -18
  654. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/KJdjlibc.js +0 -20
  655. package/frontend/.svelte-kit/output/client/_app/immutable/chunks/ll-VsEGv.js +0 -18
  656. package/frontend/.svelte-kit/output/client/_app/immutable/entry/app.Dz_CBZcR.js +0 -19
  657. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/0.CKD9Qja6.js +0 -23
  658. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/10.BfmGpmC1.js +0 -19
  659. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/11.C7l9HPom.js +0 -18
  660. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/12.Iu9bcGdC.js +0 -19
  661. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/2.BqQhRvYh.js +0 -18
  662. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/3.BZRTKadS.js +0 -18
  663. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/4.BfKoPKdM.js +0 -18
  664. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/5.B4a2uCWn.js +0 -18
  665. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/6.CI508CMS.js +0 -18
  666. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/7.3x_eiof1.js +0 -18
  667. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/8.BfUuob4H.js +0 -29
  668. package/frontend/.svelte-kit/output/client/_app/immutable/nodes/9.BZhCKRJe.js +0 -18
  669. package/frontend/.svelte-kit/output/server/_app/immutable/assets/EmptyState.BdO1q9cJ.css +0 -18
  670. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.BJ-I1gHO.css +0 -18
  671. package/frontend/.svelte-kit/output/server/_app/immutable/assets/_page.Bhof07Eg.css +0 -18
  672. package/frontend/.svelte-kit/output/server/chunks/Button.js +0 -33
  673. package/frontend/build/client/_app/immutable/assets/11.BJ-I1gHO.css +0 -18
  674. package/frontend/build/client/_app/immutable/assets/11.BJ-I1gHO.css.br +0 -0
  675. package/frontend/build/client/_app/immutable/assets/11.BJ-I1gHO.css.gz +0 -0
  676. package/frontend/build/client/_app/immutable/assets/8.Bhof07Eg.css +0 -18
  677. package/frontend/build/client/_app/immutable/assets/8.Bhof07Eg.css.br +0 -0
  678. package/frontend/build/client/_app/immutable/assets/8.Bhof07Eg.css.gz +0 -0
  679. package/frontend/build/client/_app/immutable/assets/ConfirmModal.CdhOYVBb.css.br +0 -0
  680. package/frontend/build/client/_app/immutable/assets/ConfirmModal.CdhOYVBb.css.gz +0 -0
  681. package/frontend/build/client/_app/immutable/assets/ConfirmModal.DmxkcwXv.css.br +0 -0
  682. package/frontend/build/client/_app/immutable/assets/ConfirmModal.DmxkcwXv.css.gz +0 -0
  683. package/frontend/build/client/_app/immutable/assets/EmptyState.BdO1q9cJ.css +0 -18
  684. package/frontend/build/client/_app/immutable/assets/_page.BJ-I1gHO.css +0 -18
  685. package/frontend/build/client/_app/immutable/assets/_page.BJ-I1gHO.css.br +0 -0
  686. package/frontend/build/client/_app/immutable/assets/_page.BJ-I1gHO.css.gz +0 -0
  687. package/frontend/build/client/_app/immutable/assets/_page.Bhof07Eg.css +0 -18
  688. package/frontend/build/client/_app/immutable/assets/_page.Bhof07Eg.css.br +0 -0
  689. package/frontend/build/client/_app/immutable/assets/_page.Bhof07Eg.css.gz +0 -0
  690. package/frontend/build/client/_app/immutable/chunks/B0pefNHY.js.br +0 -0
  691. package/frontend/build/client/_app/immutable/chunks/B0pefNHY.js.gz +0 -0
  692. package/frontend/build/client/_app/immutable/chunks/BFEiffAL.js.br +0 -0
  693. package/frontend/build/client/_app/immutable/chunks/BFEiffAL.js.gz +0 -0
  694. package/frontend/build/client/_app/immutable/chunks/BIRVeCLU.js +0 -18
  695. package/frontend/build/client/_app/immutable/chunks/BIRVeCLU.js.br +0 -20
  696. package/frontend/build/client/_app/immutable/chunks/BIRVeCLU.js.gz +0 -0
  697. package/frontend/build/client/_app/immutable/chunks/BKCNyxZ2.js +0 -18
  698. package/frontend/build/client/_app/immutable/chunks/BKCNyxZ2.js.br +0 -0
  699. package/frontend/build/client/_app/immutable/chunks/BKCNyxZ2.js.gz +0 -0
  700. package/frontend/build/client/_app/immutable/chunks/BLAiBE__.js.br +0 -18
  701. package/frontend/build/client/_app/immutable/chunks/BLAiBE__.js.gz +0 -0
  702. package/frontend/build/client/_app/immutable/chunks/BVMec-1T.js.br +0 -0
  703. package/frontend/build/client/_app/immutable/chunks/BVMec-1T.js.gz +0 -0
  704. package/frontend/build/client/_app/immutable/chunks/BeO8veBd.js +0 -18
  705. package/frontend/build/client/_app/immutable/chunks/BeO8veBd.js.br +0 -0
  706. package/frontend/build/client/_app/immutable/chunks/BeO8veBd.js.gz +0 -0
  707. package/frontend/build/client/_app/immutable/chunks/BgNaeXAp.js +0 -18
  708. package/frontend/build/client/_app/immutable/chunks/BgNaeXAp.js.br +0 -0
  709. package/frontend/build/client/_app/immutable/chunks/BgNaeXAp.js.gz +0 -0
  710. package/frontend/build/client/_app/immutable/chunks/BkKmeUbA.js.br +0 -0
  711. package/frontend/build/client/_app/immutable/chunks/BkKmeUbA.js.gz +0 -0
  712. package/frontend/build/client/_app/immutable/chunks/C3SY6-sX.js +0 -19
  713. package/frontend/build/client/_app/immutable/chunks/C3SY6-sX.js.br +0 -0
  714. package/frontend/build/client/_app/immutable/chunks/C3SY6-sX.js.gz +0 -0
  715. package/frontend/build/client/_app/immutable/chunks/C4eeChIU.js.br +0 -0
  716. package/frontend/build/client/_app/immutable/chunks/C4eeChIU.js.gz +0 -0
  717. package/frontend/build/client/_app/immutable/chunks/C67QNx7Z.js.br +0 -0
  718. package/frontend/build/client/_app/immutable/chunks/C67QNx7Z.js.gz +0 -0
  719. package/frontend/build/client/_app/immutable/chunks/CVV6HrFb.js +0 -18
  720. package/frontend/build/client/_app/immutable/chunks/CVV6HrFb.js.br +0 -0
  721. package/frontend/build/client/_app/immutable/chunks/CVV6HrFb.js.gz +0 -0
  722. package/frontend/build/client/_app/immutable/chunks/CstKKb9b.js +0 -18
  723. package/frontend/build/client/_app/immutable/chunks/CstKKb9b.js.br +0 -0
  724. package/frontend/build/client/_app/immutable/chunks/CstKKb9b.js.gz +0 -0
  725. package/frontend/build/client/_app/immutable/chunks/CxTX_lpP.js.br +0 -0
  726. package/frontend/build/client/_app/immutable/chunks/CxTX_lpP.js.gz +0 -0
  727. package/frontend/build/client/_app/immutable/chunks/CyQ_oBw2.js.br +0 -0
  728. package/frontend/build/client/_app/immutable/chunks/CyQ_oBw2.js.gz +0 -0
  729. package/frontend/build/client/_app/immutable/chunks/DGryW1Vp.js.br +0 -0
  730. package/frontend/build/client/_app/immutable/chunks/DGryW1Vp.js.gz +0 -0
  731. package/frontend/build/client/_app/immutable/chunks/DIx44H9N.js.br +0 -0
  732. package/frontend/build/client/_app/immutable/chunks/DIx44H9N.js.gz +0 -0
  733. package/frontend/build/client/_app/immutable/chunks/DP6QP4L6.js.br +0 -0
  734. package/frontend/build/client/_app/immutable/chunks/DP6QP4L6.js.gz +0 -0
  735. package/frontend/build/client/_app/immutable/chunks/DmRbbcS3.js +0 -23
  736. package/frontend/build/client/_app/immutable/chunks/DmRbbcS3.js.br +0 -0
  737. package/frontend/build/client/_app/immutable/chunks/DmRbbcS3.js.gz +0 -0
  738. package/frontend/build/client/_app/immutable/chunks/IFIFk6zi.js +0 -18
  739. package/frontend/build/client/_app/immutable/chunks/IFIFk6zi.js.br +0 -0
  740. package/frontend/build/client/_app/immutable/chunks/IFIFk6zi.js.gz +0 -0
  741. package/frontend/build/client/_app/immutable/chunks/KJdjlibc.js +0 -20
  742. package/frontend/build/client/_app/immutable/chunks/KJdjlibc.js.br +0 -0
  743. package/frontend/build/client/_app/immutable/chunks/KJdjlibc.js.gz +0 -0
  744. package/frontend/build/client/_app/immutable/chunks/ll-VsEGv.js +0 -18
  745. package/frontend/build/client/_app/immutable/chunks/ll-VsEGv.js.br +0 -0
  746. package/frontend/build/client/_app/immutable/chunks/ll-VsEGv.js.gz +0 -0
  747. package/frontend/build/client/_app/immutable/chunks/raHbXn_9.js.br +0 -0
  748. package/frontend/build/client/_app/immutable/chunks/raHbXn_9.js.gz +0 -0
  749. package/frontend/build/client/_app/immutable/chunks/uFRI_bmR.js.br +0 -0
  750. package/frontend/build/client/_app/immutable/chunks/uFRI_bmR.js.gz +0 -0
  751. package/frontend/build/client/_app/immutable/entry/app.Dz_CBZcR.js +0 -19
  752. package/frontend/build/client/_app/immutable/entry/app.Dz_CBZcR.js.br +0 -0
  753. package/frontend/build/client/_app/immutable/entry/app.Dz_CBZcR.js.gz +0 -0
  754. package/frontend/build/client/_app/immutable/nodes/0.CKD9Qja6.js +0 -23
  755. package/frontend/build/client/_app/immutable/nodes/0.CKD9Qja6.js.br +0 -0
  756. package/frontend/build/client/_app/immutable/nodes/0.CKD9Qja6.js.gz +0 -0
  757. package/frontend/build/client/_app/immutable/nodes/1.Dbck5ct8.js.br +0 -0
  758. package/frontend/build/client/_app/immutable/nodes/1.Dbck5ct8.js.gz +0 -0
  759. package/frontend/build/client/_app/immutable/nodes/10.BfmGpmC1.js +0 -19
  760. package/frontend/build/client/_app/immutable/nodes/10.BfmGpmC1.js.br +0 -0
  761. package/frontend/build/client/_app/immutable/nodes/10.BfmGpmC1.js.gz +0 -0
  762. package/frontend/build/client/_app/immutable/nodes/11.C7l9HPom.js +0 -18
  763. package/frontend/build/client/_app/immutable/nodes/11.C7l9HPom.js.br +0 -0
  764. package/frontend/build/client/_app/immutable/nodes/11.C7l9HPom.js.gz +0 -0
  765. package/frontend/build/client/_app/immutable/nodes/12.Iu9bcGdC.js +0 -19
  766. package/frontend/build/client/_app/immutable/nodes/12.Iu9bcGdC.js.br +0 -0
  767. package/frontend/build/client/_app/immutable/nodes/12.Iu9bcGdC.js.gz +0 -0
  768. package/frontend/build/client/_app/immutable/nodes/2.BqQhRvYh.js +0 -18
  769. package/frontend/build/client/_app/immutable/nodes/2.BqQhRvYh.js.br +0 -0
  770. package/frontend/build/client/_app/immutable/nodes/2.BqQhRvYh.js.gz +0 -0
  771. package/frontend/build/client/_app/immutable/nodes/3.BZRTKadS.js +0 -18
  772. package/frontend/build/client/_app/immutable/nodes/3.BZRTKadS.js.br +0 -0
  773. package/frontend/build/client/_app/immutable/nodes/3.BZRTKadS.js.gz +0 -0
  774. package/frontend/build/client/_app/immutable/nodes/4.BfKoPKdM.js +0 -18
  775. package/frontend/build/client/_app/immutable/nodes/4.BfKoPKdM.js.br +0 -0
  776. package/frontend/build/client/_app/immutable/nodes/4.BfKoPKdM.js.gz +0 -0
  777. package/frontend/build/client/_app/immutable/nodes/5.B4a2uCWn.js +0 -18
  778. package/frontend/build/client/_app/immutable/nodes/5.B4a2uCWn.js.br +0 -0
  779. package/frontend/build/client/_app/immutable/nodes/5.B4a2uCWn.js.gz +0 -0
  780. package/frontend/build/client/_app/immutable/nodes/6.CI508CMS.js +0 -18
  781. package/frontend/build/client/_app/immutable/nodes/6.CI508CMS.js.br +0 -0
  782. package/frontend/build/client/_app/immutable/nodes/6.CI508CMS.js.gz +0 -0
  783. package/frontend/build/client/_app/immutable/nodes/7.3x_eiof1.js +0 -18
  784. package/frontend/build/client/_app/immutable/nodes/7.3x_eiof1.js.br +0 -0
  785. package/frontend/build/client/_app/immutable/nodes/7.3x_eiof1.js.gz +0 -0
  786. package/frontend/build/client/_app/immutable/nodes/8.BfUuob4H.js +0 -29
  787. package/frontend/build/client/_app/immutable/nodes/8.BfUuob4H.js.br +0 -0
  788. package/frontend/build/client/_app/immutable/nodes/8.BfUuob4H.js.gz +0 -0
  789. package/frontend/build/client/_app/immutable/nodes/9.BZhCKRJe.js +0 -18
  790. package/frontend/build/client/_app/immutable/nodes/9.BZhCKRJe.js.br +0 -0
  791. package/frontend/build/client/_app/immutable/nodes/9.BZhCKRJe.js.gz +0 -0
  792. package/frontend/build/server/chunks/0-Dzas6zkl.js.map +0 -17
  793. package/frontend/build/server/chunks/10-UhDQZ5BY.js +0 -26
  794. package/frontend/build/server/chunks/10-UhDQZ5BY.js.map +0 -17
  795. package/frontend/build/server/chunks/11-mTH3nQlX.js +0 -26
  796. package/frontend/build/server/chunks/11-mTH3nQlX.js.map +0 -17
  797. package/frontend/build/server/chunks/12-9mg6kp53.js +0 -26
  798. package/frontend/build/server/chunks/12-9mg6kp53.js.map +0 -17
  799. package/frontend/build/server/chunks/3-DDtaiqu7.js.map +0 -17
  800. package/frontend/build/server/chunks/4-DbdkTAvS.js +0 -26
  801. package/frontend/build/server/chunks/4-DbdkTAvS.js.map +0 -17
  802. package/frontend/build/server/chunks/5-CK5hY2WF.js.map +0 -17
  803. package/frontend/build/server/chunks/6-Cps9fL3Z.js.map +0 -17
  804. package/frontend/build/server/chunks/7-CgUpbaJD.js +0 -26
  805. package/frontend/build/server/chunks/7-CgUpbaJD.js.map +0 -17
  806. package/frontend/build/server/chunks/8-dilaVKYo.js +0 -26
  807. package/frontend/build/server/chunks/8-dilaVKYo.js.map +0 -17
  808. package/frontend/build/server/chunks/9-CUJxgoIN.js.map +0 -17
  809. package/frontend/build/server/chunks/Button-CuacyA7Y.js.map +0 -17
  810. package/frontend/build/server/chunks/ConfirmModal-DBtnLLsU.js.map +0 -17
  811. package/frontend/build/server/chunks/EmptyState-B74-VZ15.js +0 -34
  812. package/frontend/build/server/chunks/EmptyState-B74-VZ15.js.map +0 -17
  813. package/frontend/build/server/chunks/Toast-DDF2wi_5.js +0 -37
  814. package/frontend/build/server/chunks/Toast-DDF2wi_5.js.map +0 -17
  815. package/frontend/build/server/chunks/_layout.svelte-DoJXDbP1.js.map +0 -17
  816. package/frontend/build/server/chunks/_page.svelte-BETENC2e.js.map +0 -17
  817. package/frontend/build/server/chunks/_page.svelte-C0vstY93.js.map +0 -17
  818. package/frontend/build/server/chunks/_page.svelte-CC27sZag.js.map +0 -17
  819. package/frontend/build/server/chunks/_page.svelte-CYkOPxn2.js.map +0 -17
  820. package/frontend/build/server/chunks/_page.svelte-CperUuP9.js +0 -564
  821. package/frontend/build/server/chunks/_page.svelte-CperUuP9.js.map +0 -17
  822. package/frontend/build/server/chunks/_page.svelte-CwrCf0C8.js +0 -65
  823. package/frontend/build/server/chunks/_page.svelte-CwrCf0C8.js.map +0 -17
  824. package/frontend/build/server/chunks/_page.svelte-DALHRFEX.js.map +0 -17
  825. package/frontend/build/server/chunks/_page.svelte-DNNyBx4y.js.map +0 -17
  826. package/frontend/build/server/chunks/_page.svelte-DqWsUJRp.js.map +0 -17
  827. package/frontend/build/server/chunks/_page.svelte-LcJmR5du.js.map +0 -17
  828. package/frontend/build/server/chunks/_page.svelte-gnktnXKP.js.map +0 -17
  829. package/frontend/build/server/chunks/runner-D18Ml_vF.js.map +0 -17
@@ -1,23 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- import{av as va,a1 as da,aw as ta,h as T,a6 as M,ax as _a,a2 as sa,c as Y,a4 as pa,a5 as J,a7 as H,ab as S,ay as ha,a8 as ia,a9 as na,aa as ya,az as D,aA as fa,q as oa,H as k,aB as q,aC as Q,aD as B,z as ma,i as $a,W as ga,E as X,aE as wa,aF as Ea,aG as Ta,aH as ba,aI as Na,aJ as xa,aK as Aa,a3 as Ca,aL as Ia,aM as Sa,e as Fa,u as Ra,aN as ka,aO as La,ac as F,aP as Z,aQ as j,aR as Oa,aS as Ma,aT as Ha}from"./C67QNx7Z.js";import{g as Da,w as za}from"./ll-VsEGv.js";function Xa(e,a){return a}function qa(e,a,r,i){for(var s=[],n=a.length,o=0;o<n;o++)Ea(a[o].e,s,!0);var c=n>0&&s.length===0&&r!==null;if(c){var g=r.parentNode;Ta(g),g.append(r),i.clear(),N(e,a[0].prev,a[n-1].next)}ba(s,()=>{for(var d=0;d<n;d++){var l=a[d];c||(i.delete(l.k),N(e,l.prev,l.next)),Na(l.e,!c)}})}function Za(e,a,r,i,s,n=null){var o=e,c={flags:a,items:new Map,first:null},g=(a&ta)!==0;if(g){var d=e;o=T?M(_a(d)):d.appendChild(va())}T&&sa();var l=null,w=!1,t=ma(()=>{var u=r();return $a(u)?u:u==null?[]:fa(u)});da(()=>{var u=Y(t),f=u.length;if(w&&f===0)return;w=f===0;let m=!1;if(T){var h=o.data===pa;h!==(f===0)&&(o=J(),M(o),H(!1),m=!0)}if(T){for(var _=null,$,p=0;p<f;p++){if(S.nodeType===8&&S.data===ha){o=S,m=!0,H(!1);break}var v=u[p],y=i(v,p);$=la(S,c,_,null,v,y,p,s,a,r),c.items.set(y,$),_=$}f>0&&M(J())}T||Ba(u,c,o,s,a,i,r),n!==null&&(f===0?l?ia(l):l=na(()=>n(o)):l!==null&&ya(l,()=>{l=null})),m&&H(!0),Y(t)}),T&&(o=S)}function Ba(e,a,r,i,s,n,o){var W,P,G,K;var c=(s&wa)!==0,g=(s&(q|B))!==0,d=e.length,l=a.items,w=a.first,t=w,u,f=null,m,h=[],_=[],$,p,v,y;if(c)for(y=0;y<d;y+=1)$=e[y],p=n($,y),v=l.get(p),v!==void 0&&((W=v.a)==null||W.measure(),(m??(m=new Set)).add(v));for(y=0;y<d;y+=1){if($=e[y],p=n($,y),v=l.get(p),v===void 0){var C=t?t.e.nodes_start:r;f=la(C,a,f,f===null?a.first:f.next,$,p,y,i,s,o),l.set(p,f),h=[],_=[],t=f.next;continue}if(g&&Ua(v,$,y,s),v.e.f&D&&(ia(v.e),c&&((P=v.a)==null||P.unfix(),(m??(m=new Set)).delete(v))),v!==t){if(u!==void 0&&u.has(v)){if(h.length<_.length){var x=_[0],E;f=x.prev;var A=h[0],L=h[h.length-1];for(E=0;E<h.length;E+=1)aa(h[E],x,r);for(E=0;E<_.length;E+=1)u.delete(_[E]);N(a,A.prev,L.next),N(a,f,A),N(a,L,x),t=x,f=L,y-=1,h=[],_=[]}else u.delete(v),aa(v,t,r),N(a,v.prev,v.next),N(a,v,f===null?a.first:f.next),N(a,f,v),f=v;continue}for(h=[],_=[];t!==null&&t.k!==p;)t.e.f&D||(u??(u=new Set)).add(t),_.push(t),t=t.next;if(t===null)continue;v=t}h.push(v),f=v,t=v.next}if(t!==null||u!==void 0){for(var I=u===void 0?[]:fa(u);t!==null;)t.e.f&D||I.push(t),t=t.next;var O=I.length;if(O>0){var ca=s&ta&&d===0?r:null;if(c){for(y=0;y<O;y+=1)(G=I[y].a)==null||G.measure();for(y=0;y<O;y+=1)(K=I[y].a)==null||K.fix()}qa(a,I,ca,l)}}c&&oa(()=>{var V;if(m!==void 0)for(v of m)(V=v.a)==null||V.apply()}),k.first=a.first&&a.first.e,k.last=f&&f.e}function Ua(e,a,r,i){i&q&&Q(e.v,a),i&B?Q(e.i,r):e.i=r}function la(e,a,r,i,s,n,o,c,g,d){var l=(g&q)!==0,w=(g&xa)===0,t=l?w?ga(s):X(s):s,u=g&B?X(o):o,f={i:u,v:t,k:n,a:null,e:null,prev:r,next:i};try{return f.e=na(()=>c(e,t,u,d),T),f.e.prev=r&&r.e,f.e.next=i&&i.e,r===null?a.first=f:(r.next=f,r.e.next=f.e),i!==null&&(i.prev=f,i.e.prev=f.e),f}finally{}}function aa(e,a,r){for(var i=e.next?e.next.e.nodes_start:r,s=a?a.e.nodes_start:r,n=e.e.nodes_start;n!==i;){var o=Aa(n);s.before(n),n=o}}function N(e,a,r){a===null?e.first=r:(a.next=r,a.e.next=r&&r.e),r!==null&&(r.prev=a,r.e.prev=a&&a.e)}function ja(e,a,r,i,s){var c;T&&sa();var n=(c=a.$$slots)==null?void 0:c[r],o=!1;n===!0&&(n=a.children,o=!0),n===void 0?s!==null&&s(e):n(e,o?()=>i:i)}function ae(e,a,r){var i=e.__className,s=Wa(a);T&&e.className===s?e.__className=s:(i!==s||T&&e.className!==s)&&(a==null?e.removeAttribute("class"):e.className=s,e.__className=s)}function Wa(e,a){return(e??"")+""}function ee(e,a,r){if(r){if(e.classList.contains(a))return;e.classList.add(a)}else{if(!e.classList.contains(a))return;e.classList.remove(a)}}const Pa=()=>performance.now(),b={tick:e=>requestAnimationFrame(e),now:()=>Pa(),tasks:new Set};function ua(){const e=b.now();b.tasks.forEach(a=>{a.c(e)||(b.tasks.delete(a),a.f())}),b.tasks.size!==0&&b.tick(ua)}function Ga(e){let a;return b.tasks.size===0&&b.tick(ua),{promise:new Promise(r=>{b.tasks.add(a={c:e,f:r})}),abort(){b.tasks.delete(a)}}}function R(e,a){za(()=>{e.dispatchEvent(new CustomEvent(a))})}function Ka(e){if(e==="float")return"cssFloat";if(e==="offset")return"cssOffset";if(e.startsWith("--"))return e;const a=e.split("-");return a.length===1?a[0]:a[0]+a.slice(1).map(r=>r[0].toUpperCase()+r.slice(1)).join("")}function ea(e){const a={},r=e.split(";");for(const i of r){const[s,n]=i.split(":");if(!s||n===void 0)break;const o=Ka(s.trim());a[o]=n.trim()}return a}const Va=e=>e;function re(e,a,r,i){var s=(e&Ma)!==0,n=(e&Ha)!==0,o=s&&n,c=(e&ka)!==0,g=o?"both":s?"in":"out",d,l=a.inert,w=a.style.overflow,t,u;function f(){var p=Oa,v=k;Z(null),j(null);try{return d??(d=r()(a,(i==null?void 0:i())??{},{direction:g}))}finally{Z(p),j(v)}}var m={is_global:c,in(){var p;if(a.inert=l,!s){u==null||u.abort(),(p=u==null?void 0:u.reset)==null||p.call(u);return}n||t==null||t.abort(),R(a,"introstart"),t=z(a,f(),u,1,()=>{R(a,"introend"),t==null||t.abort(),t=d=void 0,a.style.overflow=w})},out(p){if(!n){p==null||p(),d=void 0;return}a.inert=!0,R(a,"outrostart"),u=z(a,f(),t,0,()=>{R(a,"outroend"),p==null||p()})},stop:()=>{t==null||t.abort(),u==null||u.abort()}},h=k;if((h.transitions??(h.transitions=[])).push(m),s&&Da){var _=c;if(!_){for(var $=h.parent;$&&$.f&Ca;)for(;($=$.parent)&&!($.f&Ia););_=!$||($.f&Sa)!==0}_&&Fa(()=>{Ra(()=>m.in())})}}function z(e,a,r,i,s){var n=i===1;if(La(a)){var o,c=!1;return oa(()=>{if(!c){var h=a({direction:n?"in":"out"});o=z(e,h,r,i,s)}}),{abort:()=>{c=!0,o==null||o.abort()},deactivate:()=>o.deactivate(),reset:()=>o.reset(),t:()=>o.t()}}if(r==null||r.deactivate(),!(a!=null&&a.duration))return s(),{abort:F,deactivate:F,reset:F,t:()=>i};const{delay:g=0,css:d,tick:l,easing:w=Va}=a;var t=[];if(n&&r===void 0&&(l&&l(0,1),d)){var u=ea(d(0,1));t.push(u,u)}var f=()=>1-i,m=e.animate(t,{duration:g});return m.onfinish=()=>{var h=(r==null?void 0:r.t())??1-i;r==null||r.abort();var _=i-h,$=a.duration*Math.abs(_),p=[];if($>0){var v=!1;if(d)for(var y=Math.ceil($/16.666666666666668),C=0;C<=y;C+=1){var x=h+_*w(C/y),E=ea(d(x,1-x));p.push(E),v||(v=E.overflow==="hidden")}v&&(e.style.overflow="hidden"),f=()=>{var A=m.currentTime;return h+_*w(A/$)},l&&Ga(()=>{if(m.playState!=="running")return!1;var A=f();return l(A,1-A),!0})}m=e.animate(p,{duration:$,fill:"forwards"}),m.onfinish=()=>{f=()=>i,l==null||l(i,1-i),s()}},{abort:()=>{m&&(m.cancel(),m.effect=null,m.onfinish=F)},deactivate:()=>{s=F},reset:()=>{i===0&&(l==null||l(1,0))},t:()=>f()}}const Ya=e=>e;function U(e){const a=e-1;return a*a*a+1}function ra(e){const a=typeof e=="string"&&e.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);return a?[parseFloat(a[1]),a[2]||"px"]:[e,"px"]}function te(e,{delay:a=0,duration:r=400,easing:i=Ya}={}){const s=+getComputedStyle(e).opacity;return{delay:a,duration:r,easing:i,css:n=>`opacity: ${n*s}`}}function se(e,{delay:a=0,duration:r=400,easing:i=U,x:s=0,y:n=0,opacity:o=0}={}){const c=getComputedStyle(e),g=+c.opacity,d=c.transform==="none"?"":c.transform,l=g*(1-o),[w,t]=ra(s),[u,f]=ra(n);return{delay:a,duration:r,easing:i,css:(m,h)=>`
19
- transform: ${d} translate(${(1-m)*w}${t}, ${(1-m)*u}${f});
20
- opacity: ${g-l*h}`}}function ie(e,{delay:a=0,duration:r=400,easing:i=U,axis:s="y"}={}){const n=getComputedStyle(e),o=+n.opacity,c=s==="y"?"height":"width",g=parseFloat(n[c]),d=s==="y"?["top","bottom"]:["left","right"],l=d.map(_=>`${_[0].toUpperCase()}${_.slice(1)}`),w=parseFloat(n[`padding${l[0]}`]),t=parseFloat(n[`padding${l[1]}`]),u=parseFloat(n[`margin${l[0]}`]),f=parseFloat(n[`margin${l[1]}`]),m=parseFloat(n[`border${l[0]}Width`]),h=parseFloat(n[`border${l[1]}Width`]);return{delay:a,duration:r,easing:i,css:_=>`overflow: hidden;opacity: ${Math.min(_*20,1)*o};${c}: ${_*g}px;padding-${d[0]}: ${_*w}px;padding-${d[1]}: ${_*t}px;margin-${d[0]}: ${_*u}px;margin-${d[1]}: ${_*f}px;border-${d[0]}-width: ${_*m}px;border-${d[1]}-width: ${_*h}px;min-${c}: 0`}}function ne(e,{delay:a=0,duration:r=400,easing:i=U,start:s=0,opacity:n=0}={}){const o=getComputedStyle(e),c=+o.opacity,g=o.transform==="none"?"":o.transform,d=1-s,l=c*(1-n);return{delay:a,duration:r,easing:i,css:(w,t)=>`
21
- transform: ${g} scale(${1-d*t});
22
- opacity: ${c-l*t}
23
- `}}export{re as a,ja as b,ie as c,te as d,Za as e,se as f,ne as g,Xa as i,ae as s,ee as t};
@@ -1,18 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- import{c as P,e as l,a as w,s as M,t as B}from"./ll-VsEGv.js";import{i as W}from"./DGryW1Vp.js";import{f as E,as as q,k as i,n as s,j as g,t as L,p as z,B as A,d as F}from"./C67QNx7Z.js";import{b as D,a as C,g as G,d as H}from"./DmRbbcS3.js";import{p as c}from"./BeO8veBd.js";import{i as I}from"./CVV6HrFb.js";import{s as J}from"./CstKKb9b.js";function N(v){const e=v-1;return e*e*e+1}var Q=B('<div class="backdrop svelte-v85iae" role="presentation"><div class="panel svelte-v85iae" role="dialog" aria-modal="true"><div class="header svelte-v85iae"><h3 class="title svelte-v85iae"> </h3> <button class="close-btn svelte-v85iae" aria-label="Close"><svg width="14" height="14" 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></div> <div class="body svelte-v85iae"><!></div></div></div>');function R(v,e){let n=c(e,"open",12,!1),m=c(e,"title",8,""),p=!1;function o(){n(!1)}function k(t){p=t.target===t.currentTarget}function f(t){t.target===t.currentTarget&&p&&o()}function x(t){t.key==="Escape"&&o()}var u=P();l("keydown",q,x);var b=E(u);{var h=t=>{var a=Q(),r=i(a),d=i(r),_=i(d),O=i(_,!0);s(_);var T=g(_,2);s(d);var y=g(d,2),j=i(y);D(j,e,"default",{},null),s(y),s(r),s(a),L(()=>{J(r,"aria-label",m()),M(O,m())}),l("click",T,o),C(3,r,()=>G,()=>({start:.96,duration:260,easing:N})),l("mousedown",a,k),l("click",a,f),l("keydown",a,K=>K.key==="Escape"&&o()),C(3,a,()=>H,()=>({duration:200})),w(t,a)};I(b,t=>{n()&&t(h)})}w(v,u)}var S=B('<div class="body svelte-ibsxog"><!></div> <div class="actions svelte-ibsxog"><button class="btn-danger svelte-ibsxog"> </button> <button class="btn-cancel svelte-ibsxog">Cancel</button></div>',1);function te(v,e){z(e,!1);let n=c(e,"open",12,!1),m=c(e,"title",8,"Confirm"),p=c(e,"confirmLabel",8,"Delete"),o=c(e,"loading",8,!1);const k=A();W(),R(v,{get title(){return m()},get open(){return n()},set open(f){n(f)},children:(f,x)=>{var u=S(),b=E(u),h=i(b);D(h,e,"default",{},null),s(b);var t=g(b,2),a=i(t),r=i(a,!0);s(a);var d=g(a,2);s(t),L(()=>{a.disabled=o(),M(r,o()?"Working…":p()),d.disabled=o()}),l("click",a,()=>k("confirm")),l("click",d,()=>n(!1)),w(f,u)},$$slots:{default:!0},$$legacy:!0}),F()}export{te as C,R as M};
@@ -1,20 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- 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 Jt,au as C,c as O,s as N,A as Oe}from"./C67QNx7Z.js";const Ne="1783932324326";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,y,l,m]=u;return e.push({name:l,matcher:m,optional:!!p,rest:!!y,chained:y?f===1&&i[0]==="":!1}),y?"(.*?)":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 Je(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 ze({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:y}=Ke(o),l={id:o,exec:m=>{const d=p.exec(m);if(d)return Je(d,y,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 zt(t,e,n=JSON.stringify){const r=n(e);try{sessionStorage[t]=r}catch{}}var oe;const x=((oe=globalThis.__sveltekit_84tgpe)==null?void 0:oe.base)??"";var se;const Xe=((se=globalThis.__sveltekit_84tgpe)==null?void 0:se.assets)??x,ue="sveltekit:snapshot",he="sveltekit:scroll",de="sveltekit:states",Ze="sveltekit:pageurl",G="sveltekit:history",z="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 ye={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),ye.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 y=Object.create(null);r[s]=y;for(let l=1;l<o.length;l+=2)y[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 we=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...we];const fn=new Set([...we]);[...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=Jt.toString().includes("$$")||/function \w+\(\) \{\}/.test(Jt.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),ye.v=()=>Ut.current=!0);function mn(t){Object.assign(U,t)}const yn="/__data.json",wn=".html__data.json";function _n(t){return t.endsWith(".html")?t.replace(/\.html$/,wn):t.replace(/\/$/,"")+yn}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,yt=!1,ee=!0,Q=!1,H=!1,be=!1,Bt=!1,Ae,R,T,F;const J=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=ze(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[z],R||(R=T=Date.now(),history.replaceState({...history.state,[G]:R,[z]: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),zt(he,V),ke(T),zt(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={};J.add(e),L={id:t.id,token:e,promise:Re({...t,preload:e}).then(n=>(J.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)),yt=!0}function wt({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,y;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:w}=new URL(h,n);c.dependencies.add(w)}};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 w;d instanceof Request?(w=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}):w=d;const S=new URL(w,n);return o&&l(S.href),S.origin===n.origin&&(w=S.href.slice(n.origin.length)),yt?qe(w,S.href,h):Me(w,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:((y=f.universal)==null?void 0:y.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 J.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,y=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,y,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 J.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 w=!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(w,y,p,l,(St=b.universal)==null?void 0:St.uses,r))return b;if(w=!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(J.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?wt({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 wt({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 wt({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 y=await kt(e,!1),l=Ie({url:e,type:t,delta:n==null?void 0:n.delta,intent:y});if(!l){u(),F===c&&(F=p);return}const m=R,d=T;f(),Q=!0,yt&&$.navigating.set(X.current=l.navigation);let h=y&&await Re(y);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=(y==null?void 0:y.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,[z]:T+=g,[de]:i};(s?history.replaceState:history.pushState).call(history,_,"",e),s||bn(R,T)}if(L=null,h.props.page.state=i,yt){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:w}=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!==w&&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 y=ht(c),l=f&&_t(v.url)===_t(f);if(!y.reload&&!l)if(o<=y.preload_data){const m=await kt(f,!1);m&&Sn(m)}else o<=y.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("#"),y=u===Rt(location);if(s||c.reload&&(!y||!p)){Ie({url:a,type:"link"})?Q=!0:n.preventDefault();return}if(p!==void 0&&y){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[z],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,[z]: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,y=!0;try{const l=r.map(async(d,h)=>{const w=o[h];return w!=null&&w.uses&&(w.uses=Te(w.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(w)})}),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=wt({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="",y=!1}p.props.page&&(p.props.page.state={}),Ee(p,t,y)}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 y;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?`
19
- `:f.decode(m,{stream:!0});;){const d=p.indexOf(`
20
- `);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")(y=h.nodes)==null||y.forEach(w=>{(w==null?void 0:w.type)==="data"&&(w.uses=Te(w.uses),w.data=u(w.data))}),i(h);else if(h.type==="chunk"){const{id:w,data:S,error:I}=h,g=o.get(w);o.delete(w),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,18 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- import{h as v,ax as m,aG as $,aP as A,aQ as P,aR as k,H as R,ae as K,q as Q,af as X,i as Z,av as L,a1 as z,aU as J,aV as F,aK as D,a7 as E,a6 as N,ab as u,aW as ee,aX as Y,aY as re,a2 as q,aZ as O,a_ as C,ay as te,a$ as ae,b0 as ne,aA as ie,b1 as se,a9 as oe,p as ue,ag as fe,d as de}from"./C67QNx7Z.js";function we(e){v&&m(e)!==null&&$(e)}let H=!1;function le(){H||(H=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var r;if(!e.defaultPrevented)for(const t of e.target.elements)(r=t.__on_r)==null||r.call(t)})},{capture:!0}))}function x(e){var r=k,t=R;A(null),P(null);try{return e()}finally{A(r),P(t)}}function Ee(e,r,t,s=t){e.addEventListener(r,()=>x(t));const n=e.__on_r;n?e.__on_r=()=>{n(),s(!0)}:e.__on_r=()=>s(!0),le()}const ce=new Set,V=new Set;function _e(e,r,t,s={}){function n(a){if(s.capture||b.call(r,a),!a.cancelBubble)return x(()=>t==null?void 0:t.call(this,a))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?Q(()=>{r.addEventListener(e,n,s)}):r.addEventListener(e,n,s),n}function Te(e,r,t,s,n){var a={capture:s,passive:n},i=_e(e,r,t,a);(r===document.body||r===window||r===document)&&K(()=>{r.removeEventListener(e,i,a)})}function b(e){var I;var r=this,t=r.ownerDocument,s=e.type,n=((I=e.composedPath)==null?void 0:I.call(e))||[],a=n[0]||e.target,i=0,p=e.__root;if(p){var d=n.indexOf(p);if(d!==-1&&(r===document||r===window)){e.__root=r;return}var l=n.indexOf(r);if(l===-1)return;d<=l&&(i=d)}if(a=n[i]||e.target,a!==r){X(e,"currentTarget",{configurable:!0,get(){return a||t}});var T=k,c=R;A(null),P(null);try{for(var o,f=[];a!==null;){var y=a.assignedSlot||a.parentNode||a.host||null;try{var g=a["__"+s];if(g!==void 0&&(!a.disabled||e.target===a))if(Z(g)){var[G,...j]=g;G.apply(a,[e,...j])}else g.call(a,e)}catch(S){o?f.push(S):o=S}if(e.cancelBubble||y===r||y===null)break;a=y}if(o){for(let S of f)queueMicrotask(()=>{throw S});throw o}}finally{e.__root=r,delete e.currentTarget,A(T),P(c)}}}let _;function ve(){_=void 0}function be(e){let r=null,t=v;var s;if(v){for(r=u,_===void 0&&(_=m(document.head));_!==null&&(_.nodeType!==8||_.data!==F);)_=D(_);_===null?E(!1):_=N(D(_))}v||(s=document.head.appendChild(L()));try{z(()=>e(s),J)}finally{t&&(E(!0),_=u,N(r))}}function B(e){var r=document.createElement("template");return r.innerHTML=e,r.content}function h(e,r){var t=R;t.nodes_start===null&&(t.nodes_start=e,t.nodes_end=r)}function Le(e,r){var t=(r&Y)!==0,s=(r&re)!==0,n,a=!e.startsWith("<!>");return()=>{if(v)return h(u,null),u;n===void 0&&(n=B(a?e:"<!>"+e),t||(n=m(n)));var i=s||ee?document.importNode(n,!0):n.cloneNode(!0);if(t){var p=m(i),d=i.lastChild;h(p,d)}else h(i,i);return i}}function Ne(e,r,t="svg"){var s=!e.startsWith("<!>"),n=(r&Y)!==0,a=`<${t}>${s?e:"<!>"+e}</${t}>`,i;return()=>{if(v)return h(u,null),u;if(!i){var p=B(a),d=m(p);if(n)for(i=document.createDocumentFragment();m(d);)i.appendChild(m(d));else i=m(d)}var l=i.cloneNode(!0);if(n){var T=m(l),c=l.lastChild;h(T,c)}else h(l,l);return l}}function Re(e=""){if(!v){var r=L(e+"");return h(r,r),r}var t=u;return t.nodeType!==3&&(t.before(t=L()),N(t)),h(t,t),t}function Se(){if(v)return h(u,null),u;var e=document.createDocumentFragment(),r=document.createComment(""),t=L();return e.append(r,t),h(r,t),e}function Ae(e,r){if(v){R.nodes_end=u,q();return}e!==null&&e.before(r)}const he=["touchstart","touchmove"];function pe(e){return he.includes(e)}let W=!0;function Pe(e,r){var t=r==null?"":typeof r=="object"?r+"":r;t!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=t,e.nodeValue=t+"")}function me(e,r){return U(e,r)}function Ce(e,r){O(),r.intro=r.intro??!1;const t=r.target,s=v,n=u;try{for(var a=m(t);a&&(a.nodeType!==8||a.data!==F);)a=D(a);if(!a)throw C;E(!0),N(a),q();const i=U(e,{...r,anchor:a});if(u===null||u.nodeType!==8||u.data!==te)throw ae(),C;return E(!1),i}catch(i){if(i===C)return r.recover===!1&&ne(),O(),$(t),E(!1),me(e,r);throw i}finally{E(s),N(n),ve()}}const w=new Map;function U(e,{target:r,anchor:t,props:s={},events:n,context:a,intro:i=!0}){O();var p=new Set,d=c=>{for(var o=0;o<c.length;o++){var f=c[o];if(!p.has(f)){p.add(f);var y=pe(f);r.addEventListener(f,b,{passive:y});var g=w.get(f);g===void 0?(document.addEventListener(f,b,{passive:y}),w.set(f,1)):w.set(f,g+1)}}};d(ie(ce)),V.add(d);var l=void 0,T=se(()=>{var c=t??r.appendChild(L());return oe(()=>{if(a){ue({});var o=fe;o.c=a}n&&(s.$$events=n),v&&h(c,null),W=i,l=e(c,s)||{},W=!0,v&&(R.nodes_end=u),a&&de()}),()=>{var y;for(var o of p){r.removeEventListener(o,b);var f=w.get(o);--f===0?(document.removeEventListener(o,b),w.delete(o)):w.set(o,f)}V.delete(d),c!==t&&((y=c.parentNode)==null||y.removeChild(c))}});return M.set(l,T),l}let M=new WeakMap;function De(e,r){const t=M.get(e);return t?(M.delete(e),t(r)):Promise.resolve()}const ye="5";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(ye);export{Ae as a,Re as b,Se as c,le as d,Te as e,Ce as f,W as g,be as h,Ee as l,me as m,Ne as n,we as r,Pe as s,Le as t,De as u,x as w};
@@ -1,19 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.CKD9Qja6.js","../chunks/ll-VsEGv.js","../chunks/C67QNx7Z.js","../chunks/DGryW1Vp.js","../chunks/CVV6HrFb.js","../chunks/DmRbbcS3.js","../chunks/KJdjlibc.js","../chunks/BFgtfHj2.js","../chunks/CstKKb9b.js","../chunks/DIx44H9N.js","../chunks/BgNaeXAp.js","../chunks/C3SY6-sX.js","../chunks/CxTX_lpP.js","../chunks/BFEiffAL.js","../chunks/B0pefNHY.js","../chunks/IFIFk6zi.js","../chunks/BeO8veBd.js","../assets/ConfirmModal.DmxkcwXv.css","../chunks/BIRVeCLU.js","../assets/Badge.D1SV0Gv7.css","../chunks/BVMec-1T.js","../assets/0.BhSG-jZH.css","../nodes/1.Dbck5ct8.js","../nodes/2.BqQhRvYh.js","../chunks/raHbXn_9.js","../chunks/BKCNyxZ2.js","../assets/EmptyState.BdO1q9cJ.css","../assets/2.CrXpMrqh.css","../nodes/3.BZRTKadS.js","../chunks/uFRI_bmR.js","../assets/3.BR3wgXcZ.css","../nodes/4.BfKoPKdM.js","../chunks/DP6QP4L6.js","../assets/Pagination.DZmi2Po-.css","../assets/4.0Eln51hV.css","../nodes/5.B4a2uCWn.js","../chunks/Bfc47y5P.js","../chunks/C4eeChIU.js","../chunks/CyQ_oBw2.js","../assets/BackLink.CvWWuO3h.css","../assets/5.DFV9OgAu.css","../nodes/6.CI508CMS.js","../chunks/BLAiBE__.js","../assets/6.CFnbmY-D.css","../nodes/7.3x_eiof1.js","../chunks/BkKmeUbA.js","../assets/Button.FOWXxvc7.css","../assets/7.CBHi6pzT.css","../nodes/8.BfUuob4H.js","../assets/8.Bhof07Eg.css","../nodes/9.BZhCKRJe.js","../assets/9._h2o67kg.css","../nodes/10.BfmGpmC1.js","../assets/10.CdaQUS6U.css","../nodes/11.C7l9HPom.js","../assets/11.BJ-I1gHO.css","../nodes/12.Iu9bcGdC.js","../assets/12.Bj_a_5lv.css"])))=>i.map(i=>d[i]);
19
- var W=r=>{throw TypeError(r)};var G=(r,t,s)=>t.has(r)||W("Cannot "+s);var u=(r,t,s)=>(G(r,t,"read from private field"),s?s.call(r):t.get(r)),w=(r,t,s)=>t.has(r)?W("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(r):t.set(r,s),D=(r,t,s,a)=>(G(r,t,"write to private field"),a?a.call(r,s):t.set(r,s),s);import{s as V,O as Q,c as E,at as X,af as Z,W as M,h as N,a2 as $,a1 as tt,a3 as et,a9 as rt,aa as st,ab as ot,p as at,ah as nt,ai as it,o as ct,A as ut,f as T,j as lt,d as _t,au as I,k as mt,n as dt,t as ft,V as x}from"../chunks/C67QNx7Z.js";import{f as ht,m as vt,u as Et,a as b,c as S,t as z,b as gt,s as yt}from"../chunks/ll-VsEGv.js";import{i as C}from"../chunks/CVV6HrFb.js";import{p as j,a as pt}from"../chunks/BeO8veBd.js";import{b as B}from"../chunks/BLAiBE__.js";const Pt="modulepreload",Rt=function(r,t){return new URL(r,t).href},Y={},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 Y)return;Y[_]=!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===Q?!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)&&X(),D(this,g,n.$$events);for(const o of Object.keys(u(this,m)))o==="$set"||o==="$destroy"||o==="$on"||Z(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){N&&$();var a=r,n,c;tt(()=>{n!==(n=t())&&(c&&(st(c),c=null),n&&(c=rt(()=>s(a,n))))},et),N&&(a=ot)}var At=z('<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=z("<!> <!>",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 U=S(),H=T(U);q(H,()=>E(d),(J,K)=>{B(K(J,{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,U)},$$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.CKD9Qja6.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]),import.meta.url),()=>l(()=>import("../nodes/1.Dbck5ct8.js"),__vite__mapDeps([22,1,2,3,6]),import.meta.url),()=>l(()=>import("../nodes/2.BqQhRvYh.js"),__vite__mapDeps([23,1,2,3,4,5,8,24,11,14,25,16,26,27]),import.meta.url),()=>l(()=>import("../nodes/3.BZRTKadS.js"),__vite__mapDeps([28,1,2,3,4,8,24,6,9,20,29,30]),import.meta.url),()=>l(()=>import("../nodes/4.BfKoPKdM.js"),__vite__mapDeps([31,1,2,3,4,5,8,12,11,14,18,16,19,32,33,15,17,25,26,34]),import.meta.url),()=>l(()=>import("../nodes/5.B4a2uCWn.js"),__vite__mapDeps([35,1,2,3,4,5,8,36,37,7,6,12,14,18,16,19,38,39,40]),import.meta.url),()=>l(()=>import("../nodes/6.CI508CMS.js"),__vite__mapDeps([41,1,2,3,4,5,8,42,6,7,11,12,14,38,16,39,18,19,43]),import.meta.url),()=>l(()=>import("../nodes/7.3x_eiof1.js"),__vite__mapDeps([44,1,2,3,4,5,8,24,45,16,37,46,36,10,9,11,14,18,19,15,17,25,26,47]),import.meta.url),()=>l(()=>import("../nodes/8.BfUuob4H.js"),__vite__mapDeps([48,1,2,3,4,5,8,24,45,16,37,46,42,6,10,9,13,20,11,29,15,17,18,19,49]),import.meta.url),()=>l(()=>import("../nodes/9.BZhCKRJe.js"),__vite__mapDeps([50,1,2,3,4,8,24,6,20,9,29,51]),import.meta.url),()=>l(()=>import("../nodes/10.BfmGpmC1.js"),__vite__mapDeps([52,1,2,3,4,5,8,24,45,16,37,46,13,9,11,32,33,25,26,15,17,53]),import.meta.url),()=>l(()=>import("../nodes/11.C7l9HPom.js"),__vite__mapDeps([54,1,2,3,4,5,8,24,45,16,37,46,7,6,13,9,11,25,26,55]),import.meta.url),()=>l(()=>import("../nodes/12.Iu9bcGdC.js"),__vite__mapDeps([56,1,2,3,4,5,8,24,45,16,37,46,36,7,6,13,9,25,26,15,17,32,33,57]),import.meta.url)],Ut=[],Wt={"/":[2],"/login":[3],"/reports":[4],"/reports/live":[6],"/reports/[id]":[5],"/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])),Gt=!1,Nt=(r,t)=>kt[r](t);export{Nt as decode,kt as decoders,Wt as dictionary,Gt as hash,Vt as hooks,Bt as matchers,Ft as nodes,qt as root,Ut as server_loads};
@@ -1,23 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- import{s as q,a as m,e as $,t as k,b as as,n as un,c as De}from"../chunks/ll-VsEGv.js";import{i as Mt}from"../chunks/DGryW1Vp.js";import{e as it,u as dn,p as Ft,o as Wt,s as R,k as _,j as f,f as ee,c as r,n as v,t as I,z as Ee,d as Ht,m as L,an as fn,l as oe,b as pn,v as we}from"../chunks/C67QNx7Z.js";import{i as C,s as Kt,a as me}from"../chunks/CVV6HrFb.js";import{e as Ue,t as B,i as ze,a as Ne,c as ks,b as It,f as We}from"../chunks/DmRbbcS3.js";import{g as cs}from"../chunks/KJdjlibc.js";import{p as Rs}from"../chunks/BFgtfHj2.js";import{s as re,j as ke,A as vn,e as gn,f as _n,k as tt,l as ls,B as St,m as hs,W as us,n as ds,r as Tt,g as mn,c as fs}from"../chunks/CstKKb9b.js";import{a as Es}from"../chunks/DIx44H9N.js";import{b as yn,f as bn,a as wn}from"../chunks/BgNaeXAp.js";import{b as Re,p as He,g as At,s as kn,e as Ae,t as Rn,a as ps,d as st,c as Ct,r as En}from"../chunks/C3SY6-sX.js";import{c as xn,r as Sn}from"../chunks/CxTX_lpP.js";import{a as Tn,q as An}from"../chunks/BFEiffAL.js";import{t as vs,a as Cn}from"../chunks/B0pefNHY.js";import{C as Bn}from"../chunks/IFIFk6zi.js";import{B as gs}from"../chunks/BIRVeCLU.js";import{c as On}from"../chunks/BVMec-1T.js";function Bt(n,e,t){it(()=>{var s=dn(()=>e(n,t==null?void 0:t())||{});if(s!=null&&s.destroy)return()=>s.destroy()})}const Nn=!1,Ni=Object.freeze(Object.defineProperty({__proto__:null,ssr:Nn},Symbol.toStringTag,{value:"Module"}));var Ln=k('<span class="nav-sep svelte-10t98u4" aria-hidden="true"></span>'),In=k('<!> <a class="link svelte-10t98u4"> </a>',1),Pn=k('<img alt="" class="project-logo svelte-10t98u4">'),$n=k('<div class="project-card svelte-10t98u4"><!> <span class="project-name svelte-10t98u4"> </span></div>'),qn=k('<span class="nav-user svelte-10t98u4"> </span>'),Dn=k('<hr class="mobile-sep svelte-10t98u4">'),Un=k('<!> <a class="mobile-link svelte-10t98u4"> </a>',1),Vn=k('<div class="mobile-menu svelte-10t98u4"><!> <a href="/settings" class="mobile-link svelte-10t98u4">Settings</a></div>'),Mn=k('<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 Fn(n,e){Ft(e,!1);const[t,s]=Kt(),i=()=>me(Rs,"$page",t),c=()=>me(Es,"$auth",t);let p=L(!1),y=L({name:"",logoUrl:""});Wt(async()=>{try{R(y,await yn())}catch{}});const w=[{href:"/",label:"Automated Tests"},{href:"/reports",label:"Reports"},{href:"/scheduled-tests",label:"Scheduled"},{href:"/test-repository",label:"Test Repository",sep:!0}];function K(){R(p,!1)}Mt();var d=Mn(),A=_(d),D=_(A),z=f(D,2);Ue(z,5,()=>w,ze,(U,N)=>{var J=In(),se=ee(J);{var ne=Y=>{var Te=Ln();m(Y,Te)};C(se,Y=>{r(N).sep&&Y(ne)})}var V=f(se,2),F=_(V,!0);v(V),I(Y=>{re(V,"href",r(N).href),B(V,"repo",r(N).sep),B(V,"active",Y),q(F,r(N).label)},[()=>r(N).href==="/"?i().url.pathname==="/":i().url.pathname.startsWith(r(N).href)],Ee),m(U,J)}),v(z);var Q=f(z,2),xe=_(Q);{var Le=U=>{var N=$n(),J=_(N);{var se=F=>{var Y=Pn();I(()=>re(Y,"src",r(y).logoUrl)),m(F,Y)};C(J,F=>{r(y).logoUrl&&F(se)})}var ne=f(J,2),V=_(ne,!0);v(ne),v(N),I(()=>q(V,r(y).name)),m(U,N)};C(xe,U=>{r(y).name&&U(Le)})}var te=f(xe,2);{var pe=U=>{var N=qn(),J=_(N,!0);v(N),I(()=>q(J,c().user.name)),m(U,N)};C(te,U=>{c().user&&U(pe)})}var ve=f(te,2),ce=f(ve,2),ie=_(ce),Se=f(ie,2),O=f(Se,2);v(ce),v(Q),v(A);var le=f(A,2);{var he=U=>{var N=Vn(),J=_(N);Ue(J,1,()=>w,ze,(ne,V)=>{var F=Un(),Y=ee(F);{var Te=Be=>{var Ye=Dn();m(Be,Ye)};C(Y,Be=>{r(V).sep&&Be(Te)})}var ge=f(Y,2),Ie=_(ge,!0);v(ge),I(Be=>{re(ge,"href",r(V).href),B(ge,"active",Be),q(Ie,r(V).label)},[()=>r(V).href==="/"?i().url.pathname==="/":i().url.pathname.startsWith(r(V).href)],Ee),$("click",ge,K),m(ne,F)});var se=f(J,2);v(N),I(()=>B(se,"active",i().url.pathname==="/settings")),$("click",se,K),Ne(3,N,()=>ks,()=>({duration:200})),m(U,N)};C(le,U=>{r(p)&&U(he)})}v(d),I(()=>{B(ve,"active",i().url.pathname==="/settings"),re(ce,"aria-label",r(p)?"Close menu":"Open menu"),re(ce,"aria-expanded",r(p)),B(ie,"rotated",r(p)),B(Se,"hidden",r(p)),B(O,"rotated-reverse",r(p))}),$("click",D,K),$("click",ce,()=>R(p,!r(p))),m(n,d),Ht(),s()}var Wn=k('<main class="shell svelte-28zx1m"><!></main>');function Hn(n,e){var t=Wn(),s=_(t);It(s,e,"default",{},null),v(t),m(n,t)}const be=Object.create(null);be.open="0";be.close="1";be.ping="2";be.pong="3";be.message="4";be.upgrade="5";be.noop="6";const ot=Object.create(null);Object.keys(be).forEach(n=>{ot[be[n]]=n});const Pt={type:"error",data:"parser error"},xs=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Ss=typeof ArrayBuffer=="function",Ts=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,jt=({type:n,data:e},t,s)=>xs&&e instanceof Blob?t?s(e):_s(e,s):Ss&&(e instanceof ArrayBuffer||Ts(e))?t?s(e):_s(new Blob([e]),s):s(be[n]+(e||"")),_s=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function ms(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let Ot;function Kn(n,e){if(xs&&n.data instanceof Blob)return n.data.arrayBuffer().then(ms).then(e);if(Ss&&(n.data instanceof ArrayBuffer||Ts(n.data)))return e(ms(n.data));jt(n,!1,t=>{Ot||(Ot=new TextEncoder),e(Ot.encode(t))})}const ys="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",je=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n<ys.length;n++)je[ys.charCodeAt(n)]=n;const jn=n=>{let e=n.length*.75,t=n.length,s,i=0,c,p,y,w;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const K=new ArrayBuffer(e),d=new Uint8Array(K);for(s=0;s<t;s+=4)c=je[n.charCodeAt(s)],p=je[n.charCodeAt(s+1)],y=je[n.charCodeAt(s+2)],w=je[n.charCodeAt(s+3)],d[i++]=c<<2|p>>4,d[i++]=(p&15)<<4|y>>2,d[i++]=(y&3)<<6|w&63;return K},zn=typeof ArrayBuffer=="function",zt=(n,e)=>{if(typeof n!="string")return{type:"message",data:As(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:Yn(n.substring(1),e)}:ot[t]?n.length>1?{type:ot[t],data:n.substring(1)}:{type:ot[t]}:Pt},Yn=(n,e)=>{if(zn){const t=jn(n);return As(t,e)}else return{base64:!0,data:n}},As=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},Cs="",Jn=(n,e)=>{const t=n.length,s=new Array(t);let i=0;n.forEach((c,p)=>{jt(c,!1,y=>{s[p]=y,++i===t&&e(s.join(Cs))})})},Xn=(n,e)=>{const t=n.split(Cs),s=[];for(let i=0;i<t.length;i++){const c=zt(t[i],e);if(s.push(c),c.type==="error")break}return s};function Qn(){return new TransformStream({transform(n,e){Kn(n,t=>{const s=t.length;let i;if(s<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,s);else if(s<65536){i=new Uint8Array(3);const c=new DataView(i.buffer);c.setUint8(0,126),c.setUint16(1,s)}else{i=new Uint8Array(9);const c=new DataView(i.buffer);c.setUint8(0,127),c.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}let Nt;function nt(n){return n.reduce((e,t)=>e+t.length,0)}function rt(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let i=0;i<e;i++)t[i]=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 Gn(n,e){Nt||(Nt=new TextDecoder);const t=[];let s=0,i=-1,c=!1;return new TransformStream({transform(p,y){for(t.push(p);;){if(s===0){if(nt(t)<1)break;const w=rt(t,1);c=(w[0]&128)===128,i=w[0]&127,i<126?s=3:i===126?s=1:s=2}else if(s===1){if(nt(t)<2)break;const w=rt(t,2);i=new DataView(w.buffer,w.byteOffset,w.length).getUint16(0),s=3}else if(s===2){if(nt(t)<8)break;const w=rt(t,8),K=new DataView(w.buffer,w.byteOffset,w.length),d=K.getUint32(0);if(d>Math.pow(2,21)-1){y.enqueue(Pt);break}i=d*Math.pow(2,32)+K.getUint32(4),s=3}else{if(nt(t)<i)break;const w=rt(t,i);y.enqueue(zt(c?w:Nt.decode(w),e)),s=0}if(i===0||i>n){y.enqueue(Pt);break}}}})}const Bs=4;function M(n){if(n)return Zn(n)}function Zn(n){for(var e in M.prototype)n[e]=M.prototype[e];return n}M.prototype.on=M.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};M.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};M.prototype.off=M.prototype.removeListener=M.prototype.removeAllListeners=M.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,i=0;i<t.length;i++)if(s=t[i],s===e||s.fn===e){t.splice(i,1);break}return t.length===0&&delete this._callbacks["$"+n],this};M.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,i=t.length;s<i;++s)t[s].apply(this,e)}return this};M.prototype.emitReserved=M.prototype.emit;M.prototype.listeners=function(n){return this._callbacks=this._callbacks||{},this._callbacks["$"+n]||[]};M.prototype.hasListeners=function(n){return!!this.listeners(n).length};const ht=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,t)=>t(e,0),ae=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),er="arraybuffer";function Os(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const tr=ae.setTimeout,sr=ae.clearTimeout;function ut(n,e){e.useNativeTimers?(n.setTimeoutFn=tr.bind(ae),n.clearTimeoutFn=sr.bind(ae)):(n.setTimeoutFn=ae.setTimeout.bind(ae),n.clearTimeoutFn=ae.clearTimeout.bind(ae))}const nr=1.33;function rr(n){return typeof n=="string"?ir(n):Math.ceil((n.byteLength||n.size)*nr)}function ir(n){let e=0,t=0;for(let s=0,i=n.length;s<i;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 Ns(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function or(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function ar(n){let e={},t=n.split("&");for(let s=0,i=t.length;s<i;s++){let c=t[s].split("=");e[decodeURIComponent(c[0])]=decodeURIComponent(c[1])}return e}class cr extends Error{constructor(e,t,s){super(e),this.description=t,this.context=s,this.type="TransportError"}}class Yt extends M{constructor(e){super(),this.writable=!1,ut(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 cr(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=zt(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=or(e);return t.length?"?"+t:""}}class lr extends Yt{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)};Xn(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,Jn(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]=Ns()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let Ls=!1;try{Ls=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const hr=Ls;function ur(){}class dr extends lr{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",(i,c)=>{this.onError("xhr post error",i,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 ye extends M{constructor(e,t,s){super(),this.createRequest=e,ut(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 i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&s.setRequestHeader(i,this._opts.extraHeaders[i])}}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 i;s.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.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(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=ye.requestsCount++,ye.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=ur,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete ye.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()}}ye.requestsCount=0;ye.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",bs);else if(typeof addEventListener=="function"){const n="onpagehide"in ae?"pagehide":"unload";addEventListener(n,bs,!1)}}function bs(){for(let n in ye.requests)ye.requests.hasOwnProperty(n)&&ye.requests[n].abort()}const fr=function(){const n=Is({xdomain:!1});return n&&n.responseType!==null}();class pr extends dr{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=fr&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new ye(Is,this.uri(),e)}}function Is(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||hr))return new XMLHttpRequest}catch{}if(!e)try{return new ae[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const Ps=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class vr extends Yt{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=Ps?{}: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(i){return this.emitReserved("error",i)}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],i=t===e.length-1;jt(s,this.supportsBinary,c=>{try{this.doWrite(s,c)}catch{}i&&ht(()=>{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]=Ns()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const Lt=ae.WebSocket||ae.MozWebSocket;class gr extends vr{createSocket(e,t,s){return Ps?new Lt(e,t,s):t?new Lt(e,t):new Lt(e)}doWrite(e,t){this.ws.send(t)}}class _r extends Yt{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=Gn(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),i=Qn();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const c=()=>{s.read().then(({done:y,value:w})=>{y||(this.onPacket(w),c())}).catch(y=>{})};c();const p={type:"open"};this.query.sid&&(p.data=`{"sid":"${this.query.sid}"}`),this._writer.write(p).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const s=e[t],i=t===e.length-1;this._writer.write(s).then(()=>{i&&ht(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const mr={websocket:gr,webtransport:_r,polling:pr},yr=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,br=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function $t(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 i=yr.exec(n||""),c={},p=14;for(;p--;)c[br[p]]=i[p]||"";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=wr(c,c.path),c.queryKey=kr(c,c.query),c}function wr(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 kr(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,i,c){i&&(t[i]=c)}),t}const qt=typeof addEventListener=="function"&&typeof removeEventListener=="function",at=[];qt&&addEventListener("offline",()=>{at.forEach(n=>n())},!1);class Ce extends M{constructor(e,t){if(super(),this.binaryType=er,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=$t(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=$t(t.host).host);ut(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 i=s.prototype.name;this.transports.push(i),this._transportsByName[i]=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=ar(this.opts.query)),qt&&(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"})},at.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=Bs,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&&Ce.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",Ce.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 i=this.writeBuffer[s].data;if(i&&(t+=rr(i)),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,ht(()=>{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,i){if(typeof t=="function"&&(i=t,t=void 0),typeof s=="function"&&(i=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),i&&this.once("flush",i),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(Ce.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(),qt&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=at.indexOf(this._offlineEventListener);s!==-1&&at.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}Ce.protocol=Bs;class Rr extends Ce{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;Ce.priorWebsocketSuccess=!1;const i=()=>{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",A=>{if(!s)if(A.type==="pong"&&A.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;Ce.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(d(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const D=new Error("probe error");D.transport=t.name,this.emitReserved("upgradeError",D)}}))};function c(){s||(s=!0,d(),t.close(),t=null)}const p=A=>{const D=new Error("probe error: "+A);D.transport=t.name,c(),this.emitReserved("upgradeError",D)};function y(){p("transport closed")}function w(){p("socket closed")}function K(A){t&&A.name!==t.name&&c()}const d=()=>{t.removeListener("open",i),t.removeListener("error",p),t.removeListener("close",y),this.off("close",w),this.off("upgrading",K)};t.once("open",i),t.once("error",p),t.once("close",y),this.once("close",w),this.once("upgrading",K),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 Er=class extends Rr{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(i=>mr[i]).filter(i=>!!i)),super(e,s)}};function xr(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=$t(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 Sr=typeof ArrayBuffer=="function",Tr=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,$s=Object.prototype.toString,Ar=typeof Blob=="function"||typeof Blob<"u"&&$s.call(Blob)==="[object BlobConstructor]",Cr=typeof File=="function"||typeof File<"u"&&$s.call(File)==="[object FileConstructor]";function Jt(n){return Sr&&(n instanceof ArrayBuffer||Tr(n))||Ar&&n instanceof Blob||Cr&&n instanceof File}function ct(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t<s;t++)if(ct(n[t]))return!0;return!1}if(Jt(n))return!0;if(n.toJSON&&typeof n.toJSON=="function"&&arguments.length===1)return ct(n.toJSON(),!0);for(const t in n)if(Object.prototype.hasOwnProperty.call(n,t)&&ct(n[t]))return!0;return!1}function Br(n){const e=[],t=n.data,s=n;return s.data=Dt(t,e),s.attachments=e.length,{packet:s,buffers:e}}function Dt(n,e){if(!n)return n;if(Jt(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]=Dt(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]=Dt(n[s],e));return t}return n}function Or(n,e){return n.data=Ut(n.data,e),delete n.attachments,n}function Ut(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]=Ut(n[t],e);else if(typeof n=="object")for(const t in n)Object.prototype.hasOwnProperty.call(n,t)&&(n[t]=Ut(n[t],e));return n}const Nr=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"];var S;(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"})(S||(S={}));class Lr{constructor(e){this.replacer=e}encode(e){return(e.type===S.EVENT||e.type===S.ACK)&&ct(e)?this.encodeAsBinary({type:e.type===S.EVENT?S.BINARY_EVENT:S.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===S.BINARY_EVENT||e.type===S.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=Br(e),s=this.encodeAsString(t.packet),i=t.buffers;return i.unshift(s),i}}function ws(n){return Object.prototype.toString.call(n)==="[object Object]"}class Xt extends M{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===S.BINARY_EVENT;s||t.type===S.BINARY_ACK?(t.type=s?S.EVENT:S.ACK,this.reconstructor=new Ir(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(Jt(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(S[s.type]===void 0)throw new Error("unknown packet type "+s.type);if(s.type===S.BINARY_EVENT||s.type===S.BINARY_ACK){const c=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);const p=e.substring(c,t);if(p!=Number(p)||e.charAt(t)!=="-")throw new Error("Illegal attachments");s.attachments=Number(p)}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 i=e.charAt(t+1);if(i!==""&&Number(i)==i){const c=t+1;for(;++t;){const p=e.charAt(t);if(p==null||Number(p)!=p){--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(Xt.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 S.CONNECT:return ws(t);case S.DISCONNECT:return t===void 0;case S.CONNECT_ERROR:return typeof t=="string"||ws(t);case S.EVENT:case S.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&Nr.indexOf(t[0])===-1);case S.ACK:case S.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class Ir{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=Or(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const Pr=Object.freeze(Object.defineProperty({__proto__:null,Decoder:Xt,Encoder:Lr,get PacketType(){return S}},Symbol.toStringTag,{value:"Module"}));function fe(n,e,t){return n.on(e,t),function(){n.off(e,t)}}const $r=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class qs extends M{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=[fe(e,"open",this.onopen.bind(this)),fe(e,"packet",this.onpacket.bind(this)),fe(e,"error",this.onerror.bind(this)),fe(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,i,c;if($r.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 p={type:S.EVENT,data:t};if(p.options={},p.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){const d=this.ids++,A=t.pop();this._registerAckCallback(d,A),p.id=d}const y=(i=(s=this.io.engine)===null||s===void 0?void 0:s.transport)===null||i===void 0?void 0:i.writable,w=this.connected&&!(!((c=this.io.engine)===null||c===void 0)&&c._hasPingExpired());return this.flags.volatile&&!y||(w?(this.notifyOutgoingListeners(p),this.packet(p)):this.sendBuffer.push(p)),this.flags={},this}_registerAckCallback(e,t){var s;const i=(s=this.flags.timeout)!==null&&s!==void 0?s:this._opts.ackTimeout;if(i===void 0){this.acks[e]=t;return}const c=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let y=0;y<this.sendBuffer.length;y++)this.sendBuffer[y].id===e&&this.sendBuffer.splice(y,1);t.call(this,new Error("operation has timed out"))},i),p=(...y)=>{this.io.clearTimeoutFn(c),t.apply(this,y)};p.withError=!0,this.acks[e]=p}emitWithAck(e,...t){return new Promise((s,i)=>{const c=(p,y)=>p?i(p):s(y);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((i,...c)=>s!==this._queue[0]?void 0:(i!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(i)):(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:S.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 S.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 S.EVENT:case S.BINARY_EVENT:this.onevent(e);break;case S.ACK:case S.BINARY_ACK:this.onack(e);break;case S.DISCONNECT:this.ondisconnect();break;case S.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(...i){s||(s=!0,t.packet({type:S.ACK,id:e,data:i}))}}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:S.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 Ve(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}Ve.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};Ve.prototype.reset=function(){this.attempts=0};Ve.prototype.setMin=function(n){this.ms=n};Ve.prototype.setMax=function(n){this.max=n};Ve.prototype.setJitter=function(n){this.jitter=n};class Vt extends M{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,ut(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 Ve({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||Pr;this.encoder=new i.Encoder,this.decoder=new i.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 Er(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const i=fe(t,"open",function(){s.onopen(),e&&e()}),c=y=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",y),e?e(y):this.maybeReconnectOnOpen()},p=fe(t,"error",c);if(this._timeout!==!1){const y=this._timeout,w=this.setTimeoutFn(()=>{i(),c(new Error("timeout")),t.close()},y);this.opts.autoUnref&&w.unref(),this.subs.push(()=>{this.clearTimeoutFn(w)})}return this.subs.push(i),this.subs.push(p),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(fe(e,"ping",this.onping.bind(this)),fe(e,"data",this.ondata.bind(this)),fe(e,"error",this.onerror.bind(this)),fe(e,"close",this.onclose.bind(this)),fe(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){ht(()=>{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 qs(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(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):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 Ke={};function lt(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=xr(n,e.path||"/socket.io"),s=t.source,i=t.id,c=t.path,p=Ke[i]&&c in Ke[i].nsps,y=e.forceNew||e["force new connection"]||e.multiplex===!1||p;let w;return y?w=new Vt(s,e):(Ke[i]||(Ke[i]=new Vt(s,e)),w=Ke[i]),t.query&&!e.query&&(e.query=t.queryKey),w.socket(t.path,e)}Object.assign(lt,{Manager:Vt,Socket:qs,io:lt,connect:lt});var qr=k('No tag or filter is set. This will run <strong class="svelte-h71cn6">every test</strong> in the suite, which may take a while.',1),Dr=k('<span class="run-tag svelte-h71cn6"> </span>'),Ur=k('<a class="view-report-btn svelte-h71cn6">View Report <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-h71cn6"><line x1="5" y1="12" x2="19" y2="12" class="svelte-h71cn6"></line><polyline points="12 5 19 12 12 19" class="svelte-h71cn6"></polyline></svg></a>'),Vr=k('<span class="run-chip-spinner svelte-h71cn6"></span>'),Mr=k('<span class="run-chip-count svelte-h71cn6"> </span>'),Fr=k('<div class="run-chip svelte-h71cn6"><svg width="9" height="10" viewBox="0 0 10 12" fill="currentColor" stroke="none" style="opacity:0.6;flex-shrink:0" class="svelte-h71cn6"><polygon points="0,0 10,6 0,12" class="svelte-h71cn6"></polygon></svg> <span class="run-chip-title svelte-h71cn6"> </span> <!> <button class="run-chip-clear svelte-h71cn6" aria-label="Clear test run"><svg width="9" height="9" viewBox="0 0 14 14" fill="none" class="svelte-h71cn6"><path d="M1 1l12 12M13 1L1 13" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" class="svelte-h71cn6"></path></svg></button></div>'),Wr=k('<div class="input-wrap svelte-h71cn6"><svg class="input-icon svelte-h71cn6" 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-h71cn6"></circle><line x1="21" y1="21" x2="16.65" y2="16.65" class="svelte-h71cn6"></line></svg> <input type="text" class="tag-input svelte-h71cn6" placeholder="@tag or leave blank for all tests"></div>'),Hr=k('<button class="dropdown-item svelte-h71cn6"><span style="color:var(--text-muted)" class="svelte-h71cn6">✕</span> Clear</button> <div class="dropdown-divider svelte-h71cn6"></div>',1),Kr=k('<div class="dropdown-empty svelte-h71cn6">No active test runs</div>'),jr=k('<button class="dropdown-item svelte-h71cn6"> </button>'),zr=k('<div class="dropdown-menu run-pick-menu svelte-h71cn6"><!> <!></div>'),Yr=k('<button class="dropdown-item svelte-h71cn6"> </button>'),Jr=k('<div class="dropdown-menu svelte-h71cn6"></div>'),Xr=k('<label class="runner-option svelte-h71cn6"><input type="checkbox" class="svelte-h71cn6"> <span class="runner-dot built-in svelte-h71cn6"></span> <span class="svelte-h71cn6"></span></label>'),Qr=k('<label class="runner-option svelte-h71cn6"><input type="checkbox" class="svelte-h71cn6"> <span class="runner-dot remote svelte-h71cn6"></span> <span class="svelte-h71cn6"> </span></label>'),Gr=k('<div class="dropdown-menu runners-menu svelte-h71cn6"><!> <!></div>'),Zr=k('<div class="ctrl-divider svelte-h71cn6"></div> <div class="ctrl-group svelte-h71cn6"><span class="ctrl-label svelte-h71cn6">Runners</span> <div class="dropdown-wrap svelte-h71cn6"><button class="dropdown-trigger svelte-h71cn6"><span class="svelte-h71cn6"> </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-h71cn6"><polyline points="6 9 12 15 18 9" class="svelte-h71cn6"></polyline></svg></button> <!></div></div>',1),ei=k('<button type="button" class="notify-btn svelte-h71cn6">Discord</button>'),ti=k('<button type="button" class="notify-btn svelte-h71cn6">Slack</button>'),si=k('<div class="ctrl-divider svelte-h71cn6"></div> <div class="ctrl-group svelte-h71cn6"><span class="ctrl-label svelte-h71cn6">Notify</span> <div class="notify-toggles svelte-h71cn6"><!> <!></div></div>',1),ni=k('<span class="run-spinner svelte-h71cn6"></span> Running',1),ri=un('<svg width="9" height="10" viewBox="0 0 10 12" fill="currentColor" stroke="none" class="svelte-h71cn6"><polygon points="0,0 10,6 0,12" class="svelte-h71cn6"></polygon></svg> Run',1),ii=k('<span class="meta-dot svelte-h71cn6">·</span> ',1),oi=k('<span class="run-card-meta svelte-h71cn6"> <span class="meta-dot svelte-h71cn6">·</span> <span class="meta-dot svelte-h71cn6">·</span> <!></span>'),ai=k('<a href="/reports/live" class="run-card active-run svelte-h71cn6"><span class="run-card-dot pulse-accent svelte-h71cn6"></span> <div class="run-card-info svelte-h71cn6"><span class="run-card-label svelte-h71cn6"> </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-h71cn6"><line x1="5" y1="12" x2="19" y2="12" class="svelte-h71cn6"></line><polyline points="12 5 19 12 12 19" class="svelte-h71cn6"></polyline></svg></a>'),ci=k('<a class="run-card cron-run svelte-h71cn6"><span class="run-card-dot pulse-pass svelte-h71cn6"></span> <div class="run-card-info svelte-h71cn6"><span class="run-card-label svelte-h71cn6"> </span> <span class="run-card-meta svelte-h71cn6"> </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-h71cn6"><line x1="5" y1="12" x2="19" y2="12" class="svelte-h71cn6"></line><polyline points="12 5 19 12 12 19" class="svelte-h71cn6"></polyline></svg></a>'),li=k('<div class="empty-runs svelte-h71cn6"><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-h71cn6"><circle cx="12" cy="12" r="10" class="svelte-h71cn6"></circle><line x1="10" y1="15" x2="10" y2="12" class="svelte-h71cn6"></line><line x1="10" y1="9" x2="10.01" y2="9" class="svelte-h71cn6"></line></svg> No tests currently running</div>'),hi=k('<div class="body svelte-h71cn6"><!> <!> <!></div>'),ui=k('<!> <div class="panel svelte-h71cn6"><div class="scan-line svelte-h71cn6"></div> <div class="bar svelte-h71cn6"><div class="bar-left svelte-h71cn6"><div class="bar-status svelte-h71cn6"><span class="status-dot svelte-h71cn6"></span> <span class="status-word svelte-h71cn6"> </span> <!></div> <!></div> <span class="flex-gap svelte-h71cn6"></span> <div class="bar-center svelte-h71cn6"><!> <div class="ctrl-group svelte-h71cn6"><span class="ctrl-label svelte-h71cn6">Test Run</span> <div class="dropdown-wrap svelte-h71cn6"><button class="dropdown-trigger svelte-h71cn6"><span class="svelte-h71cn6"> </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-h71cn6"><polyline points="6 9 12 15 18 9" class="svelte-h71cn6"></polyline></svg></button> <!></div></div> <div class="ctrl-divider svelte-h71cn6"></div> <div class="ctrl-group svelte-h71cn6"><span class="ctrl-label svelte-h71cn6">Workers</span> <div class="stepper svelte-h71cn6"><button class="step-btn svelte-h71cn6">−</button> <span class="step-val svelte-h71cn6"> </span> <button class="step-btn svelte-h71cn6">+</button></div></div> <div class="ctrl-divider svelte-h71cn6"></div> <div class="ctrl-group svelte-h71cn6"><span class="ctrl-label svelte-h71cn6">Browser</span> <div class="dropdown-wrap svelte-h71cn6"><button class="dropdown-trigger svelte-h71cn6"><span class="svelte-h71cn6"> </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-h71cn6"><polyline points="6 9 12 15 18 9" class="svelte-h71cn6"></polyline></svg></button> <!></div></div> <!> <!> <div class="ctrl-divider svelte-h71cn6"></div> <button class="run-btn svelte-h71cn6"><!></button></div> <span class="flex-gap-sm svelte-h71cn6"></span> <button class="expand-btn svelte-h71cn6"><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-h71cn6"><polyline points="18 15 12 9 6 15" class="svelte-h71cn6"></polyline></svg></button></div> <!></div>',1);function di(n,e){Ft(e,!1);const[t,s]=Kt(),i=()=>me(Ae,"$runnerState",t),c=()=>me(Re,"$runnerConfig",t),p=()=>me(st,"$backgroundRuns",t),y=()=>me(En,"$runsVersion",t),w=()=>me(He,"$panelExpanded",t),K=()=>me(At,"$builtInEnabled",t),d=L(),A=L(),D=L(),z=L(),Q=L(),xe=L(),Le=L(),te=L(),pe=L(),ve=L(),ce=L();let ie=L([]),Se=L([]),O=L(null),le=L(!1),he=L(!1),U=L(!1),N=L(!1),J=L(!1),se=L({discordWebhookUrl:"",slackWebhookUrl:"",notifyPublicUrl:""}),ne=L(!1),V=L(!1);function F(o){function u(a){o.contains(a.target)||o.dispatchEvent(new CustomEvent("clickoutside"))}return document.addEventListener("click",u,!0),{destroy(){document.removeEventListener("click",u,!0)}}}let Y,Te,ge,Ie;Wt(()=>{try{const a=localStorage.getItem("plum:runnerConfig");a&&Re.update(h=>({...h,...JSON.parse(a)}))}catch{}try{const a=localStorage.getItem("plum:panelExpanded");a!==null&&He.set(a==="true")}catch{}try{const a=localStorage.getItem("plum:builtInEnabled");a!==null&&At.set(a!=="false")}catch{}bn().then(a=>{R(ie,a);const h=new Set([ke,...a.map(l=>l.id)]);Re.update(l=>{const g=l.selectedRunners.filter(b=>h.has(b));return{...l,selectedRunners:g.length>0?g:[ke]}})}).catch(()=>{}),wn().then(a=>R(se,a)).catch(()=>{}),Y=Re.subscribe(a=>{try{localStorage.setItem("plum:runnerConfig",JSON.stringify(a))}catch{}}),Te=He.subscribe(a=>{try{localStorage.setItem("plum:panelExpanded",String(a))}catch{}}),ge=At.subscribe(a=>{try{localStorage.setItem("plum:builtInEnabled",String(a))}catch{}Re.update(h=>{if(!a&&h.selectedRunners.includes(ke)){const l=h.selectedRunners.filter(b=>b!==ke),g=l.length>0?l:r(ie)[0]?[r(ie)[0].id]:[];return{...h,selectedRunners:g}}return h})});const o=lt(vn,{transports:["websocket"]});Ie=o,kn.set(o),o.on("log",a=>{Ae.update(h=>({...h,output:h.output+a+`
19
- `}))}),o.on("done",a=>{const h=typeof a=="object"&&a!==null?a.code:a,l=typeof a=="object"&&a!==null?a.reportId:void 0,g=h===0||h===null,b=h===130;(l!=null?Promise.resolve(l):xn().catch(()=>null)).then(E=>{Ae.update(T=>({...T,output:T.output+(b?"":g?`
20
- ✓ All tests passed
21
- `:`
22
- ✗ Some tests failed
23
- `),running:!1,testCompleted:!b,latestReportId:b?null:E,status:b?"idle":g?"pass":"fail",currentRun:b?null:T.currentRun}))})}),o.on("runner-lanes-init",a=>{Ae.update(h=>({...h,lanes:a.map(l=>({...l,status:"running",logs:"",latestScreenshot:null}))}))}),o.on("runner-lane-log",({id:a,log:h})=>{Ae.update(l=>({...l,lanes:l.lanes.map(g=>g.id===a?{...g,logs:g.logs+h}:g)}))}),o.on("runner-lane-status",({id:a,status:h})=>{Ae.update(l=>({...l,lanes:l.lanes.map(g=>g.id===a?{...g,status:h}:g)}))}),o.on("step-screenshot",({stepName:a,data:h})=>{Ae.update(l=>({...l,latestScreenshot:{stepName:a,data:h}}))}),o.on("runner-lane-screenshot",({id:a,stepName:h,data:l})=>{Ae.update(g=>({...g,lanes:g.lanes.map(b=>b.id===a?{...b,latestScreenshot:{stepName:h,data:l}}:b)}))}),o.on("tests-changed",()=>Rn.update(a=>a+1)),o.on("report-ready",()=>ps.update(a=>a+1));function u(a,h){st.update(l=>l[a]?{...l,[a]:h(l[a])}:l)}o.on("bg-run-start",({runId:a,kind:h,label:l,meta:g})=>{st.update(b=>({...b,[a]:{kind:h,label:l,output:"",running:!0,testCompleted:!1,latestReportId:null,status:"running",lanes:[],currentRun:{tag:g==null?void 0:g.tag,workers:g==null?void 0:g.workers,browser:g==null?void 0:g.browser,runTitle:l},latestScreenshot:null}})),He.set(!0)}),o.on("bg-run-log",({runId:a,log:h})=>{u(a,l=>({...l,output:l.output+h}))}),o.on("bg-run-lanes-init",({runId:a,lanes:h})=>{u(a,l=>({...l,lanes:h.map(g=>({...g,status:"running",logs:"",latestScreenshot:null}))}))}),o.on("bg-run-lane-log",({runId:a,laneId:h,log:l})=>{u(a,g=>({...g,lanes:g.lanes.map(b=>b.id===h?{...b,logs:b.logs+l}:b)}))}),o.on("bg-run-lane-status",({runId:a,laneId:h,status:l})=>{u(a,g=>({...g,lanes:g.lanes.map(b=>b.id===h?{...b,status:l}:b)}))}),o.on("bg-run-screenshot",({runId:a,stepName:h,data:l})=>{u(a,g=>({...g,latestScreenshot:{stepName:h,data:l}}))}),o.on("bg-run-lane-screenshot",({runId:a,laneId:h,stepName:l,data:g})=>{u(a,b=>({...b,lanes:b.lanes.map(x=>x.id===h?{...x,latestScreenshot:{stepName:l,data:g}}:x)}))}),o.on("bg-run-done",({runId:a,code:h,reportId:l})=>{const g=h===0||h===null;u(a,b=>({...b,running:!1,testCompleted:!0,latestReportId:l,status:g?"pass":"fail"})),ps.update(b=>b+1),setTimeout(()=>{st.update(b=>{const x={...b};return delete x[a],x})},gn+5e3)})}),fn(()=>{Y==null||Y(),Te==null||Te(),ge==null||ge(),Ie==null||Ie.disconnect()});async function Be(o){R(N,!1),R(O,{id:o.id,title:o.title,tags:null}),R(le,!0);try{const a=(await An(o.id)).entries.filter(h=>{var l;return(l=h.case)==null?void 0:l.isAutomated}).map(h=>`@${h.case.displayId}`);R(O,{id:o.id,title:o.title,tags:a})}catch{R(O,null)}finally{R(le,!1)}}function Ye(){R(O,null)}function Qt(){const o={notifyDiscord:r(ne),notifySlack:r(V)};if(r(O)){if(r(le)||!r(O).tags||r(O).tags.length===0)return;Ct(r(O).tags.join(" or "),r(O).id,o,r(O).title)}else c().testID.trim()===""?R(J,!0):Ct(void 0,void 0,o)}function Ds(o){o.key==="Enter"&&!r(d).running&&!r(O)&&Qt()}function Gt(o){Re.update(u=>({...u,workers:Math.max(us,Math.min(ds,u.workers+o))}))}function Zt(o){Re.update(u=>{const a=u.selectedRunners;if(a.includes(o)&&a.length===1)return u;const h=a.includes(o)?a.filter(l=>l!==o):[...a,o];return{...u,selectedRunners:h}})}function dt(o){return c().selectedRunners.includes(o)}oe(()=>i(),()=>{R(d,i())}),oe(()=>c(),()=>{R(A,c())}),oe(()=>(r(d),tt),()=>{R(D,(()=>{var u;if(!((u=r(d).currentRun)!=null&&u.tag))return _n;const o=r(d).currentRun.tag.split(/ or /i);return o.length<=tt?r(d).currentRun.tag:o.slice(0,tt).join(" or ")+` +${o.length-tt} more`})())}),oe(()=>p(),()=>{R(z,Object.entries(p()).filter(([,o])=>o.running))}),oe(()=>r(z),()=>{R(Q,r(z).length>0)}),oe(()=>r(z),()=>{R(xe,r(z).some(([,o])=>o.kind==="cron"))}),oe(()=>(r(d),r(Q)),()=>{R(Le,r(d).running||r(Q))}),oe(()=>(y(),ls),()=>{y()>=0&&Tn({limit:ls}).then(o=>R(Se,o.runs)).catch(()=>{})}),oe(()=>(r(d),r(Q)),()=>{R(te,r(d).status==="pass"?"var(--pass)":r(d).status==="fail"?"var(--fail)":r(d).running?"var(--accent)":r(Q)?"var(--pass)":"var(--border)")}),oe(()=>(r(d),r(xe),r(Q)),()=>{R(pe,r(d).running?"Running":r(d).status==="pass"?"Passed":r(d).status==="fail"?"Failed":r(xe)?"Scheduled":r(Q)?"Running":"Ready")}),oe(()=>r(A),()=>{R(ve,St.find(o=>o.id===r(A).browser)??St[0])}),oe(()=>(r(A),r(ie)),()=>{var o;R(ce,r(A).selectedRunners.length===1&&r(A).selectedRunners[0]===ke?hs:r(A).selectedRunners.length===1?((o=r(ie).find(u=>u.id===r(A).selectedRunners[0]))==null?void 0:o.name)??"1 node":`${r(A).selectedRunners.length} nodes`)}),pn(),Mt();var es=ui(),ts=ee(es);Bn(ts,{title:"Run all tests?",confirmLabel:"Run all tests",get open(){return r(J)},set open(o){R(J,o)},$$events:{confirm:()=>{R(J,!1),Ct(void 0,void 0,{notifyDiscord:r(ne),notifySlack:r(V)})}},children:(o,u)=>{we();var a=qr();we(2),m(o,a)},$$slots:{default:!0},$$legacy:!0});var ft=f(ts,2),Je=_(ft),pt=f(Je,2),vt=_(pt),gt=_(vt),_t=_(gt),Xe=f(_t,2),Us=_(Xe,!0);v(Xe);var Vs=f(Xe,2);{var Ms=o=>{var u=Dr(),a=_(u,!0);v(u),I(()=>{var h;return q(a,((h=r(d).currentRun)==null?void 0:h.runTitle)||r(d).lastRunId)}),m(o,u)};C(Vs,o=>{var u;(r(d).lastRunId||(u=r(d).currentRun)!=null&&u.runTitle)&&o(Ms)})}v(gt);var Fs=f(gt,2);{var Ws=o=>{var u=Ur();I(a=>re(u,"href",a),[()=>Sn(r(d).latestReportId)],Ee),Ne(3,u,()=>We,()=>({x:-6,duration:200})),m(o,u)};C(Fs,o=>{r(d).testCompleted&&r(d).latestReportId&&o(Ws)})}v(vt);var mt=f(vt,4),ss=_(mt);{var Hs=o=>{var u=Fr(),a=f(_(u),2),h=_(a,!0);v(a);var l=f(a,2);{var g=E=>{var T=Vr();m(E,T)},b=E=>{var T=De(),P=ee(T);{var W=H=>{var G=Mr(),_e=_(G);v(G),I(()=>{B(G,"none",r(O).tags.length===0),q(_e,`${r(O).tags.length??""} automated`)}),m(H,G)};C(P,H=>{r(O).tags!==null&&H(W)},!0)}m(E,T)};C(l,E=>{r(le)?E(g):E(b,!1)})}var x=f(l,2);v(u),I(()=>{B(u,"loading",r(le)),q(h,r(O).title)}),$("click",x,Ye),m(o,u)},Ks=o=>{var u=Wr(),a=f(_(u),2);Tt(a),v(u),I(()=>{mn(a,c().testID),a.disabled=r(d).running}),$("input",a,h=>Re.update(l=>({...l,testID:h.currentTarget.value}))),$("keydown",a,Ds),m(o,u)};C(ss,o=>{r(O)?o(Hs):o(Ks,!1)})}var yt=f(ss,2),Qe=f(_(yt),2),Oe=_(Qe),bt=_(Oe),js=_(bt,!0);v(bt);var zs=f(bt,2);v(Oe);var Ys=f(Oe,2);{var Js=o=>{var u=zr(),a=_(u);{var h=x=>{var E=Hr(),T=ee(E);we(2),$("click",T,Ye),m(x,E)};C(a,x=>{r(O)&&x(h)})}var l=f(a,2);{var g=x=>{var E=Kr();m(x,E)},b=x=>{var E=De(),T=ee(E);Ue(T,1,()=>r(Se).filter(P=>P.status!=="complete"),ze,(P,W)=>{var H=jr(),G=_(H,!0);v(H),I(()=>{var _e;B(H,"active",((_e=r(O))==null?void 0:_e.id)===r(W).id),q(G,r(W).title)}),$("click",H,()=>Be(r(W))),m(P,H)}),m(x,E)};C(l,x=>{r(Se).filter(E=>E.status!=="complete").length===0?x(g):x(b,!1)})}v(u),Ne(3,u,()=>We,()=>({y:6,duration:130})),m(o,u)};C(Ys,o=>{r(N)&&o(Js)})}v(Qe),Bt(Qe,o=>F==null?void 0:F(o)),it(()=>$("clickoutside",Qe,()=>R(N,!1))),v(yt);var wt=f(yt,4),ns=f(_(wt),2),kt=_(ns),Rt=f(kt,2),Xs=_(Rt,!0);v(Rt);var rs=f(Rt,2);v(ns),v(wt);var Et=f(wt,4),Ge=f(_(Et),2),Pe=_(Ge),xt=_(Pe),Qs=_(xt,!0);v(xt);var Gs=f(xt,2);v(Pe);var Zs=f(Pe,2);{var en=o=>{var u=Jr();Ue(u,5,()=>St,ze,(a,h)=>{var l=Yr(),g=_(l,!0);v(l),I(()=>{B(l,"active",r(A).browser===r(h).id),q(g,r(h).label)}),$("click",l,()=>{Re.update(b=>({...b,browser:r(h).id})),R(he,!1)}),m(a,l)}),v(u),Ne(3,u,()=>We,()=>({y:6,duration:130})),m(o,u)};C(Zs,o=>{r(he)&&o(en)})}v(Ge),Bt(Ge,o=>F==null?void 0:F(o)),it(()=>$("clickoutside",Ge,()=>R(he,!1))),v(Et);var is=f(Et,2);{var tn=o=>{var u=Zr(),a=f(ee(u),2),h=f(_(a),2),l=_(h),g=_(l),b=_(g,!0);v(g);var x=f(g,2);v(l);var E=f(l,2);{var T=P=>{var W=Gr(),H=_(W);{var G=j=>{var Z=Xr(),X=_(Z);Tt(X);var ue=f(X,4);ue.textContent=hs,v(Z),I(de=>fs(X,de),[()=>dt(ke)],Ee),$("change",X,()=>Zt(ke)),m(j,Z)};C(H,j=>{(K()||dt(ke))&&j(G)})}var _e=f(H,2);Ue(_e,1,()=>r(ie),ze,(j,Z)=>{var X=Qr(),ue=_(X);Tt(ue);var de=f(ue,4),et=_(de,!0);v(de),v(X),I(qe=>{fs(ue,qe),q(et,r(Z).name)},[()=>dt(r(Z).id)],Ee),$("change",ue,()=>Zt(r(Z).id)),m(j,X)}),v(W),Ne(3,W,()=>We,()=>({y:6,duration:130})),m(P,W)};C(E,P=>{r(U)&&P(T)})}v(h),Bt(h,P=>F==null?void 0:F(P)),it(()=>$("clickoutside",h,()=>R(U,!1))),v(a),I(P=>{l.disabled=r(d).running,B(l,"open",r(U)),B(l,"has-remote",P),q(b,r(ce)),B(x,"open",r(U))},[()=>r(A).selectedRunners.some(P=>P!==ke)],Ee),$("click",l,()=>{r(d).running||R(U,!r(U))}),m(o,u)};C(is,o=>{r(ie).length>0&&o(tn)})}var os=f(is,2);{var sn=o=>{var u=si(),a=f(ee(u),2),h=f(_(a),2),l=_(h);{var g=E=>{var T=ei();I(()=>{re(T,"title",r(ne)?"Discord notification on":"Discord notification off"),T.disabled=r(d).running,B(T,"active",r(ne))}),$("click",T,()=>R(ne,!r(ne))),m(E,T)};C(l,E=>{r(se).discordWebhookUrl&&E(g)})}var b=f(l,2);{var x=E=>{var T=ti();I(()=>{re(T,"title",r(V)?"Slack notification on":"Slack notification off"),T.disabled=r(d).running,B(T,"active",r(V))}),$("click",T,()=>R(V,!r(V))),m(E,T)};C(b,E=>{r(se).slackWebhookUrl&&E(x)})}v(h),v(a),m(o,u)};C(os,o=>{(r(se).discordWebhookUrl||r(se).slackWebhookUrl)&&o(sn)})}var $e=f(os,4),nn=_($e);{var rn=o=>{var u=ni();we(),m(o,u)},on=o=>{var u=ri();we(),m(o,u)};C(nn,o=>{r(d).running?o(rn):o(on,!1)})}v($e),v(mt);var Ze=f(mt,4),an=_(Ze);v(Ze),v(pt);var cn=f(pt,2);{var ln=o=>{var u=hi(),a=_(u);{var h=x=>{var E=ai(),T=f(_(E),2),P=_(T),W=_(P,!0);v(P);var H=f(P,2);{var G=j=>{var Z=oi(),X=_(Z),ue=f(X,2),de=f(ue,2),et=f(de);{var qe=Me=>{var Fe=ii(),hn=f(ee(Fe));I(()=>q(hn,` ${r(d).currentRun.runners.length??""} runners`)),m(Me,Fe)};C(et,Me=>{var Fe;((Fe=r(d).currentRun.runners)==null?void 0:Fe.length)>1&&Me(qe)})}v(Z),I(()=>{q(X,`${r(D)??""} `),q(ue,` ${r(d).currentRun.workers??""}w `),q(de,` ${r(d).currentRun.browser??""} `)}),m(j,Z)};C(H,j=>{r(d).currentRun&&j(G)})}v(T);var _e=f(T,2);gs(_e,{variant:"tag",children:(j,Z)=>{we();var X=as("Live");m(j,X)},$$slots:{default:!0}}),we(2),v(E),I(()=>{var j;return q(W,((j=r(d).currentRun)==null?void 0:j.runTitle)||"Manual run")}),m(x,E)};C(a,x=>{r(d).running&&x(h)})}var l=f(a,2);Ue(l,1,()=>r(z),([x,E])=>x,(x,E)=>{let T=()=>r(E)[0],P=()=>r(E)[1];var W=ci(),H=f(_(W),2),G=_(H),_e=_(G,!0);v(G);var j=f(G,2),Z=_(j);v(j),v(H);var X=f(H,2);const ue=Ee(()=>Cn(P().kind));gs(X,{get variant(){return r(ue)},children:(de,et)=>{we();var qe=as();I(Me=>q(qe,Me),[()=>vs(P().kind)],Ee),m(de,qe)},$$slots:{default:!0}}),we(2),v(W),I(de=>{re(W,"href",`/reports/live?run=${T()??""}`),q(_e,P().label),q(Z,`${de??""} run`)},[()=>vs(P().kind)],Ee),Ne(3,W,()=>We,()=>({x:-4,duration:160})),m(x,W)});var g=f(l,2);{var b=x=>{var E=li();m(x,E)};C(g,x=>{r(Le)||x(b)})}v(u),Ne(3,u,()=>ks,()=>({duration:200})),m(o,u)};C(cn,o=>{w()&&o(ln)})}v(ft),I(()=>{var o,u;B(ft,"expanded",w()),B(Je,"scanning",r(d).running),B(Je,"line-pass",r(d).status==="pass"&&!r(d).running),B(Je,"line-fail",r(d).status==="fail"&&!r(d).running),re(_t,"style",`background:${r(te)??""}`),B(_t,"pulse",r(d).running),re(Xe,"style",`color:${r(te)??""}`),q(Us,r(pe)),Oe.disabled=r(d).running,B(Oe,"open",r(N)),B(Oe,"has-remote",!!r(O)),q(js,r(O)?r(O).title:"None"),B(zs,"open",r(N)),kt.disabled=r(A).workers<=us||r(d).running,q(Xs,r(A).workers),rs.disabled=r(A).workers>=ds||r(d).running,Pe.disabled=r(d).running,B(Pe,"open",r(he)),q(Qs,r(ve).label),B(Gs,"open",r(he)),$e.disabled=r(d).running||r(le)||r(O)&&((o=r(O).tags)==null?void 0:o.length)===0,re($e,"title",r(O)&&((u=r(O).tags)==null?void 0:u.length)===0?"No automated cases in this run":void 0),B($e,"is-running",r(d).running),re(Ze,"aria-label",w()?"Collapse panel":"Expand panel"),B(an,"flipped",w())}),$("click",Oe,()=>{r(d).running||R(N,!r(N))}),$("click",kt,()=>Gt(-1)),$("click",rs,()=>Gt(1)),$("click",Pe,()=>{r(d).running||R(he,!r(he))}),$("click",$e,Qt),$("click",Ze,()=>He.update(o=>!o)),m(n,es),Ht(),s()}var fi=k("<!> <!> <!>",1),pi=k('<div class="boot-loading svelte-3qbr79">Loading…</div>');function Ii(n,e){Ft(e,!1);const[t,s]=Kt(),i=()=>me(Rs,"$page",t),c=()=>me(Es,"$auth",t),p=["/login","/setup"];let y=L(!1);Wt(async()=>{const D=i().url.pathname;if(p.includes(D)){R(y,!0);return}if(c().token){R(y,!0);return}try{const Q=await On();await cs(Q?"/setup":"/login")}catch{await cs("/login")}finally{R(y,!0)}}),Mt();var w=De(),K=ee(w);{var d=D=>{var z=De(),Q=ee(z);{var xe=te=>{var pe=De(),ve=ee(pe);It(ve,e,"default",{},null),m(te,pe)},Le=te=>{var pe=fi(),ve=ee(pe);Fn(ve,{});var ce=f(ve,2);Hn(ce,{children:(Se,O)=>{var le=De(),he=ee(le);It(he,e,"default",{},null),m(Se,le)},$$slots:{default:!0}});var ie=f(ce,2);di(ie,{}),m(te,pe)};C(Q,te=>{i().url.pathname==="/login"||i().url.pathname==="/setup"?te(xe):te(Le,!1)})}m(D,z)},A=D=>{var z=pi();m(D,z)};C(K,D=>{r(y)?D(d):D(A,!1)})}m(n,w),Ht(),s()}export{Ii as component,Ni as universal};
@@ -1,19 +0,0 @@
1
- /*
2
- * This file is part of Plum.
3
- *
4
- * Plum is free software: you can redistribute it and/or modify
5
- * it under the terms of the GNU General Public License as published by
6
- * the Free Software Foundation, either version 3 of the License, or
7
- * (at your option) any later version.
8
- *
9
- * Plum is distributed in the hope that it will be useful,
10
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
11
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
- * GNU General Public License for more details.
13
- *
14
- * You should have received a copy of the GNU General Public License
15
- * along with Plum. If not, see https://www.gnu.org/licenses/.
16
- */
17
-
18
- import{h as la,e as ie,a as l,t as u,c as ne,s as o,r as na,b as De}from"../chunks/ll-VsEGv.js";import{i as oa}from"../chunks/DGryW1Vp.js";import{p as va,m as f,o as da,s as i,l as He,b as ca,f as V,t as M,c as e,d as ua,j as r,$ as pa,k as s,n as a,v as _e,x as _a,y as Re,z as ge}from"../chunks/C67QNx7Z.js";import{i as b}from"../chunks/CVV6HrFb.js";import{e as he,i as ot,t as We,a as vt,f as dt,s as Ve}from"../chunks/DmRbbcS3.js";import{b as ga,r as ct,s as oe,a as Ye}from"../chunks/CstKKb9b.js";import{b as Ze}from"../chunks/raHbXn_9.js";import{T as ha,B as Pe,b as fa}from"../chunks/BkKmeUbA.js";import{f as xa,a as ma,s as Tt,d as ya,b as ba,c as $a,e as wa,g as ka}from"../chunks/BFEiffAL.js";import{r as Bt}from"../chunks/C3SY6-sX.js";import{P as It}from"../chunks/DP6QP4L6.js";import{E as ut}from"../chunks/BKCNyxZ2.js";import{C as Lt,M as At}from"../chunks/IFIFk6zi.js";var Sa=u("Delete <strong> </strong>? This cannot be undone.",1),Ma=u(`Duplicate <strong> </strong>? A copy will be added at the top of the
19
- list.`,1),Ca=u("<option> </option>"),Da=u('<p class="form-error svelte-9ix8dg"> </p>'),Ra=u('<div class="form-fields svelte-9ix8dg"><div class="field"><label class="field-label" for="suite-name">Name</label> <input id="suite-name" type="text" class="field-input" placeholder="Login flows"></div> <div class="field"><label class="field-label" for="suite-desc">Description</label> <textarea id="suite-desc" class="field-input field-textarea svelte-9ix8dg" placeholder="What this suite covers…" rows="3"></textarea></div> <div class="field"><label class="field-label" for="suite-prio">Priority</label> <select id="suite-prio" class="field-input"></select></div> <!> <div class="modal-actions svelte-9ix8dg"><!> <!></div></div>'),Pa=u('<p class="form-error svelte-9ix8dg"> </p>'),Ta=u('<div class="form-fields svelte-9ix8dg"><div class="field"><label class="field-label" for="run-title">Title</label> <input id="run-title" type="text" class="field-input" placeholder="Sprint 12 regression"></div> <!> <div class="modal-actions svelte-9ix8dg"><!> <!></div></div>'),Ba=u('<button class="search-clear svelte-9ix8dg" aria-label="Clear search"><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>'),Ia=u('<span class="sort-dir svelte-9ix8dg"> </span>'),La=u('<button class="sort-chip svelte-9ix8dg"> <!></button>'),Aa=u('<span class="sort-dir svelte-9ix8dg"> </span>'),Na=u('<button class="sort-chip svelte-9ix8dg"> <!></button>'),Oa=u('<div class="sort-bar svelte-9ix8dg"><span class="sort-label svelte-9ix8dg">Sort by</span> <!></div>'),Ea=u('<div class="loading-row svelte-9ix8dg">Searching…</div>'),Fa=u('<div class="loading-row svelte-9ix8dg">Searching…</div>'),Ha=u('<span class="auto-badge svelte-9ix8dg">automated</span>'),Va=u('<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>'),ja=u('<div class="search-section svelte-9ix8dg"><h2 class="search-section-title svelte-9ix8dg">Cases <span class="tab-count svelte-9ix8dg"> </span></h2> <div class="case-results svelte-9ix8dg"></div></div>'),qa=u('<p class="suite-desc svelte-9ix8dg"> </p>'),Ja=u('<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" title="Delete suite"><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>'),Ua=u('<div class="search-section svelte-9ix8dg"><h2 class="search-section-title svelte-9ix8dg">Suites <span class="tab-count svelte-9ix8dg"> </span></h2> <div class="suite-grid svelte-9ix8dg"></div></div>'),za=u('<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" title="Duplicate run"><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" title="Delete run"><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>'),Ga=u('<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>'),Wa=u("<!> <!> <!>",1),Ya=u("<div><!></div>"),Za=u('<div class="loading-row svelte-9ix8dg">Loading…</div>'),Ka=u('<p class="suite-desc svelte-9ix8dg"> </p>'),Qa=u('<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" title="Delete suite"><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>'),Xa=u('<div class="pagination-row svelte-9ix8dg"><!></div>'),es=u('<div class="suite-grid svelte-9ix8dg"></div> <!>',1),ts=u("<div><!></div>"),as=u('<div class="loading-row svelte-9ix8dg">Loading…</div>'),ss=u('<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" title="Duplicate run"><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" title="Delete run"><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>'),rs=u('<div class="pagination-row svelte-9ix8dg"><!></div>'),is=u('<div class="runs-list svelte-9ix8dg"></div> <!>',1),ls=u("<div><!></div>"),ns=u('<!> <!> <!> <!> <!> <div class="page-header svelte-9ix8dg"><div class="header-text svelte-9ix8dg"><h1 class="svelte-9ix8dg">Test Repository</h1> <p class="header-desc svelte-9ix8dg">Manage test suites, cases, and track manual test runs.</p></div> <div class="header-actions svelte-9ix8dg"><!></div></div> <div class="tabs svelte-9ix8dg"><button class="tab svelte-9ix8dg">Suites <span class="tab-count svelte-9ix8dg"> </span></button> <button class="tab svelte-9ix8dg">Test Runs <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" placeholder="Search by ID or name…"> <!></div> <!> <!>',1);function bs(Nt,Ot){va(Ot,!1);const ve=f(),Te=f(),ye=f(),be=f();let $e=f(typeof sessionStorage<"u"&&sessionStorage.getItem("plum:repo:tab")||"suites");function pt(t){i($e,t);try{sessionStorage.setItem("plum:repo:tab",t)}catch{}}function _t(t,n){try{const c=sessionStorage.getItem(t);if(c)return JSON.parse(c)}catch{}return n}function gt(t,n){try{sessionStorage.setItem(t,JSON.stringify(n))}catch{}}let fe=f([]),de=f(0),ht=f(1),z=f(_t("plum:repo:suites:sort",{by:"createdAt",order:"desc"})),le=f([]),ce=f(0),ft=f(1),X=f(_t("plum:repo:runs:sort",{by:"createdAt",order:"desc"}));const xt={Critical:0,High:1,Medium:2,Low:3};function Et(t,n){return[...t].sort((c,w)=>{const T=(xt[c.priority]??4)-(xt[w.priority]??4);return n==="asc"?T:-T})}let Ke=f(!0),Qe=f(null),ee=f(null),je=f(!1),Xe=f(null),Be=f(!1),G=f({name:"",description:"",priority:"Medium"}),qe=f(!1),we=f(""),Ie=f(!1),ke=f({title:""}),Je=f(!1),Se=f(""),j=f(null),ue=f(!1),Me=f(null),Ue=f(!1),xe=f("");const Ft=["Critical","High","Medium","Low"];function pe(t,n){i(Qe,{type:t,message:n}),setTimeout(()=>i(Qe,null),ga)}async function et(t=1){const n=e(z).by==="priority",c=await xa({page:t,sortBy:n?"createdAt":e(z).by,sortOrder:e(z).order});i(fe,n?Et(c.suites,e(z).order):c.suites),i(de,c.total),i(ht,t)}async function tt(t=1){const n=await ma({page:t,sortBy:e(X).by,sortOrder:e(X).order});i(le,n.runs),i(ce,n.total),i(ft,t)}async function Ht(t){e(z).by===t?Re(z,e(z).order=e(z).order==="asc"?"desc":"asc"):i(z,{by:t,order:t==="createdAt"?"desc":"asc"}),gt("plum:repo:suites:sort",e(z)),await et(1)}async function Vt(t){e(X).by===t?Re(X,e(X).order=e(X).order==="asc"?"desc":"asc"):i(X,{by:t,order:t==="createdAt"||t==="updatedAt"?"desc":"asc"}),gt("plum:repo:runs:sort",e(X)),await tt(1)}da(async()=>{try{await Promise.all([et(1),tt(1)])}catch{pe("error","Failed to load data")}finally{i(Ke,!1)}});async function jt(){if(!e(G).name.trim()){i(we,"Name is required.");return}i(we,""),i(qe,!0);try{const t=await wa(e(G));i(fe,[...e(fe),t]),i(de,e(de)+1),i(Be,!1),i(G,{name:"",description:"",priority:"Medium"}),pe("success",`Suite "${t.name}" created.`)}catch(t){i(we,t.message)}finally{i(qe,!1)}}async function qt(t,n){try{await ya(t),i(fe,e(fe).filter(c=>c.id!==t)),i(de,e(de)-1),pe("success",`Suite "${n}" deleted.`)}catch{pe("error","Failed to delete suite.")}i(j,null),i(ue,!1)}async function Jt(){if(!e(ke).title.trim()){i(Se,"Title is required.");return}i(Se,""),i(Je,!0);try{const t=await ka({title:e(ke).title,caseIds:[]});i(le,[t,...e(le)]),i(Ie,!1),i(ke,{title:""}),window.location.href=`/test-repository/runs/${t.id}`}catch(t){i(Se,t.message)}finally{i(Je,!1)}}async function mt(t){i(Me,t),i(Ue,!0)}async function Ut(){if(!e(Me))return;const t=e(Me);i(Me,null),i(Ue,!1);try{const n=await $a(t.id);i(le,[n,...e(le)]),i(ce,e(ce)+1),Bt.update(c=>c+1),pe("success",`Duplicated as "${n.title}".`)}catch{pe("error","Failed to duplicate run.")}}async function zt(t,n){try{await ba(t),i(le,e(le).filter(c=>c.id!==t)),i(ce,e(ce)-1),Bt.update(c=>c+1),pe("success",`Run "${n}" deleted.`)}catch{pe("error","Failed to delete run.")}i(j,null),i(ue,!1)}function at(t){return(t==null?void 0:t.toLowerCase())??"medium"}function yt(t){return t==="complete"?"pass":t==="in-progress"?"warn":"muted"}He(()=>e(xe),()=>{i(ve,e(xe).trim())}),He(()=>(e(Xe),e(ve),Tt),()=>{clearTimeout(e(Xe)),e(ve)?(i(je,!0),i(ee,null),i(Xe,setTimeout(async()=>{try{i(ee,await Tt(e(ve)))}catch{i(ee,{suites:[],cases:[],runs:[]})}finally{i(je,!1)}},300))):(i(ee,null),i(je,!1))}),He(()=>e(ee),()=>{var t;i(Te,((t=e(ee))==null?void 0:t.cases)??[])}),He(()=>e(ee),()=>{var t;i(ye,((t=e(ee))==null?void 0:t.suites)??[])}),He(()=>e(ee),()=>{var t;i(be,((t=e(ee))==null?void 0:t.runs)??[])}),ca(),oa();var bt=ns();la(t=>{pa.title="Test Repository — Plum"});var $t=V(bt);ha($t,{get toast(){return e(Qe)}});var wt=r($t,2);const Gt=ge(()=>{var t;return((t=e(j))==null?void 0:t.type)==="suite"?"Suite":"Run"});Lt(wt,{get title(){return`Delete ${e(Gt)??""}`},confirmLabel:"Delete",get open(){return e(ue)},set open(t){i(ue,t)},$$events:{confirm:()=>{var t;return((t=e(j))==null?void 0:t.type)==="suite"?qt(e(j).id,e(j).name):zt(e(j).id,e(j).name)}},children:(t,n)=>{var c=ne(),w=V(c);{var T=_=>{var h=Sa(),C=r(V(h)),R=s(C);a(C),_e(),M(()=>o(R,`"${e(j).name??""}"`)),l(_,h)};b(w,_=>{e(j)&&_(T)})}l(t,c)},$$slots:{default:!0},$$legacy:!0});var kt=r(wt,2);Lt(kt,{title:"Duplicate Run",confirmLabel:"Duplicate",get open(){return e(Ue)},set open(t){i(Ue,t)},$$events:{confirm:Ut},children:(t,n)=>{var c=ne(),w=V(c);{var T=_=>{var h=Ma(),C=r(V(h)),R=s(C);a(C),_e(),M(()=>o(R,`"${e(Me).title??""}"`)),l(_,h)};b(w,_=>{e(Me)&&_(T)})}l(t,c)},$$slots:{default:!0},$$legacy:!0});var St=r(kt,2);At(St,{title:"New Test Suite",get open(){return e(Be)},set open(t){i(Be,t)},children:(t,n)=>{var c=Ra(),w=s(c),T=r(s(w),2);ct(T),a(w);var _=r(w,2),h=r(s(_),2);na(h),a(_);var C=r(_,2),R=r(s(C),2);M(()=>{e(G),_a(()=>{})}),he(R,5,()=>Ft,ot,($,g)=>{var x=Ca(),D={},te=s(x,!0);a(x),M(()=>{D!==(D=e(g))&&(x.value=(x.__value=e(g))==null?"":e(g)),o(te,e(g))}),l($,x)}),a(R),a(C);var A=r(C,2);{var d=$=>{var g=Da(),x=s(g,!0);a(g),M(()=>o(x,e(we))),l($,g)};b(A,$=>{e(we)&&$(d)})}var m=r(A,2),y=s(m);Pe(y,{get disabled(){return e(qe)},$$events:{click:jt},children:($,g)=>{_e();var x=De();M(()=>o(x,e(qe)?"Creating…":"Create Suite")),l($,x)},$$slots:{default:!0}});var W=r(y,2);Pe(W,{variant:"ghost",$$events:{click:()=>{i(Be,!1),i(we,"")}},children:($,g)=>{_e();var x=De("Cancel");l($,x)},$$slots:{default:!0}}),a(m),a(c),Ze(T,()=>e(G).name,$=>Re(G,e(G).name=$)),Ze(h,()=>e(G).description,$=>Re(G,e(G).description=$)),fa(R,()=>e(G).priority,$=>Re(G,e(G).priority=$)),l(t,c)},$$slots:{default:!0},$$legacy:!0});var Mt=r(St,2);At(Mt,{title:"New Test Run",get open(){return e(Ie)},set open(t){i(Ie,t)},children:(t,n)=>{var c=Ta(),w=s(c),T=r(s(w),2);ct(T),a(w);var _=r(w,2);{var h=d=>{var m=Pa(),y=s(m,!0);a(m),M(()=>o(y,e(Se))),l(d,m)};b(_,d=>{e(Se)&&d(h)})}var C=r(_,2),R=s(C);Pe(R,{get disabled(){return e(Je)},$$events:{click:Jt},children:(d,m)=>{_e();var y=De();M(()=>o(y,e(Je)?"Creating…":"Create Run")),l(d,y)},$$slots:{default:!0}});var A=r(R,2);Pe(A,{variant:"ghost",$$events:{click:()=>{i(Ie,!1),i(Se,"")}},children:(d,m)=>{_e();var y=De("Cancel");l(d,y)},$$slots:{default:!0}}),a(C),a(c),Ze(T,()=>e(ke).title,d=>Re(ke,e(ke).title=d)),l(t,c)},$$slots:{default:!0},$$legacy:!0});var st=r(Mt,2),Ct=r(s(st),2),Wt=s(Ct);{var Yt=t=>{Pe(t,{$$events:{click:()=>i(Be,!0)},children:(n,c)=>{_e();var w=De("+ New Suite");l(n,w)},$$slots:{default:!0}})},Zt=t=>{Pe(t,{$$events:{click:()=>i(Ie,!0)},children:(n,c)=>{_e();var w=De("+ New Run");l(n,w)},$$slots:{default:!0}})};b(Wt,t=>{e($e)==="suites"?t(Yt):t(Zt,!1)})}a(Ct),a(st);var rt=r(st,2),Le=s(rt),Dt=r(s(Le)),Kt=s(Dt);a(Dt),a(Le);var ze=r(Le,2),Rt=r(s(ze)),Qt=s(Rt);a(Rt),a(ze),a(rt);var it=r(rt,2),lt=r(s(it),2);ct(lt);var Xt=r(lt,2);{var ea=t=>{var n=Ba();ie("click",n,()=>i(xe,"")),l(t,n)};b(Xt,t=>{e(xe)&&t(ea)})}a(it);var Pt=r(it,2);{var ta=t=>{var n=Oa(),c=r(s(n),2);{var w=_=>{var h=ne(),C=V(h);he(C,0,()=>[["createdAt","Date Created"],["displayId","ID"],["name","Name"],["priority","Priority"]],ot,(R,A)=>{let d=()=>A[0],m=()=>A[1];var y=La(),W=s(y),$=r(W);{var g=x=>{var D=Ia(),te=s(D,!0);a(D),M(()=>o(te,e(z).order==="asc"?"↑":"↓")),l(x,D)};b($,x=>{e(z).by===d()&&x(g)})}a(y),M(()=>{We(y,"active",e(z).by===d()),o(W,`${m()??""} `)}),ie("click",y,()=>Ht(d())),l(R,y)}),l(_,h)},T=_=>{var h=ne(),C=V(h);he(C,0,()=>[["createdAt","Date Created"],["updatedAt","Last Updated"],["title","Name"]],ot,(R,A)=>{let d=()=>A[0],m=()=>A[1];var y=Na(),W=s(y),$=r(W);{var g=x=>{var D=Aa(),te=s(D,!0);a(D),M(()=>o(te,e(X).order==="asc"?"↑":"↓")),l(x,D)};b($,x=>{e(X).by===d()&&x(g)})}a(y),M(()=>{We(y,"active",e(X).by===d()),o(W,`${m()??""} `)}),ie("click",y,()=>Vt(d())),l(R,y)}),l(_,h)};b(c,_=>{e($e)==="suites"?_(w):_(T,!1)})}a(n),l(t,n)};b(Pt,t=>{e(ve)||t(ta)})}var aa=r(Pt,2);{var sa=t=>{var n=Ya(),c=s(n);{var w=_=>{var h=Ea();l(_,h)},T=_=>{var h=ne(),C=V(h);{var R=d=>{var m=Fa();l(d,m)},A=d=>{var m=ne(),y=V(m);{var W=g=>{ut(g,{title:"No results",get description(){return`Nothing matches “${e(xe)??""}”.`}})},$=g=>{var x=Wa(),D=V(x);{var te=k=>{var S=ja(),B=s(S),q=r(s(B)),Q=s(q,!0);a(q),a(B);var Z=r(B,2);he(Z,5,()=>e(Te),N=>N.id,(N,v)=>{var P=Va(),E=s(P),O=s(E,!0);a(E);var J=r(E,2),K=s(J,!0);a(J);var F=r(J,2);{var ae=U=>{var Ae=Ha();l(U,Ae)};b(F,U=>{e(v).isAutomated&&U(ae)})}var H=r(F,2),se=s(H,!0);a(H);var I=r(H,2),re=s(I);a(I),a(P),M(U=>{oe(P,"href",`/test-repository/suites/${e(v).suite.id??""}`),o(O,e(v).displayId),o(K,e(v).title),Ve(H,`priority-badge small ${U??""} svelte-9ix8dg`),o(se,e(v).priority),o(re,`${e(v).suite.displayId??""} · ${e(v).suite.name??""}`)},[()=>at(e(v).priority)],ge),l(N,P)}),a(Z),a(S),M(()=>o(Q,e(Te).length)),l(k,S)};b(D,k=>{e(Te).length>0&&k(te)})}var Ce=r(D,2);{var L=k=>{var S=Ua(),B=s(S),q=r(s(B)),Q=s(q,!0);a(q),a(B);var Z=r(B,2);he(Z,5,()=>e(ye),N=>N.id,(N,v)=>{var P=Ja(),E=s(P),O=r(E,2),J=s(O),K=s(J,!0);a(J);var F=r(J,2),ae=s(F,!0);a(F);var H=r(F,2),se=s(H);a(H),a(O);var I=r(O,2),re=s(I,!0);a(I);var U=r(I,2);{var Ae=me=>{var Fe=qa(),ia=s(Fe,!0);a(Fe),M(()=>o(ia,e(v).description)),l(me,Fe)};b(U,me=>{e(v).description&&me(Ae)})}var Ne=r(U,2),Oe=s(Ne),Ge=r(s(Oe));a(Oe);var Ee=r(Oe,2),nt=s(Ee);a(Ee),a(Ne),a(P),M(me=>{oe(E,"href",`/test-repository/suites/${e(v).id??""}`),oe(E,"aria-label",e(v).name),o(K,e(v).displayId),Ve(F,`priority-badge ${me??""} svelte-9ix8dg`),o(ae,e(v).priority),o(re,e(v).name),o(Ge,` ${e(v)._count.cases??""} case${(e(v)._count.cases!==1?"s":"")??""}`),o(nt,`by ${e(v).createdBy.name??""}`)},[()=>at(e(v).priority)],ge),ie("click",se,()=>{i(j,{type:"suite",id:e(v).id,name:e(v).name}),i(ue,!0)}),l(N,P)}),a(Z),a(S),M(()=>o(Q,e(ye).length)),l(k,S)};b(Ce,k=>{e(ye).length>0&&k(L)})}var p=r(Ce,2);{var Y=k=>{var S=Ga(),B=s(S),q=r(s(B)),Q=s(q,!0);a(q),a(B);var Z=r(B,2);he(Z,5,()=>e(be),N=>N.id,(N,v)=>{var P=za(),E=s(P),O=r(E,2),J=s(O),K=r(J,2),F=s(K,!0);a(K);var ae=r(K,2),H=s(ae);a(ae),a(O);var se=r(O,2),I=s(se),re=s(I,!0);a(I);var U=r(I,4),Ae=s(U);a(U);var Ne=r(U,4),Oe=s(Ne,!0);a(Ne),a(se);var Ge=r(se,2),Ee=s(Ge),nt=r(Ee,2);a(Ge),a(P),M((me,Fe)=>{oe(E,"href",`/test-repository/runs/${e(v).id??""}`),oe(E,"aria-label",e(v).title),Ve(J,`run-status-dot ${me??""} svelte-9ix8dg`),o(F,e(v).title),o(H,`${e(v)._count.entries??""} case${(e(v)._count.entries!==1?"s":"")??""}`),o(re,e(v).status),o(Ae,`by ${e(v).createdBy.name??""}`),o(Oe,Fe)},[()=>yt(e(v).status),()=>new Date(e(v).createdAt).toLocaleDateString()],ge),ie("click",Ee,()=>mt(e(v))),ie("click",nt,()=>{i(j,{type:"run",id:e(v).id,name:e(v).title}),i(ue,!0)}),l(N,P)}),a(Z),a(S),M(()=>o(Q,e(be).length)),l(k,S)};b(p,k=>{e(be).length>0&&k(Y)})}l(g,x)};b(y,g=>{e(Te).length===0&&e(ye).length===0&&e(be).length===0?g(W):g($,!1)},!0)}l(d,m)};b(C,d=>{e(ee)?d(A,!1):d(R)},!0)}l(_,h)};b(c,_=>{e(je)?_(w):_(T,!1)})}a(n),vt(3,n,()=>dt,()=>({y:4,duration:160})),l(t,n)},ra=t=>{var n=ne(),c=V(n);{var w=_=>{var h=ts(),C=s(h);{var R=d=>{var m=Za();l(d,m)},A=d=>{var m=ne(),y=V(m);{var W=g=>{ut(g,{title:"No test suites yet",description:"Create your first suite to start organising test cases."})},$=g=>{var x=es(),D=V(x);he(D,5,()=>e(fe),L=>L.id,(L,p)=>{var Y=Qa(),k=s(Y),S=r(k,2),B=s(S),q=s(B,!0);a(B);var Q=r(B,2),Z=s(Q,!0);a(Q);var N=r(Q,2),v=s(N);a(N),a(S);var P=r(S,2),E=s(P,!0);a(P);var O=r(P,2);{var J=I=>{var re=Ka(),U=s(re,!0);a(re),M(()=>o(U,e(p).description)),l(I,re)};b(O,I=>{e(p).description&&I(J)})}var K=r(O,2),F=s(K),ae=r(s(F));a(F);var H=r(F,2),se=s(H);a(H),a(K),a(Y),M(I=>{oe(k,"href",`/test-repository/suites/${e(p).id??""}`),oe(k,"aria-label",e(p).name),o(q,e(p).displayId),Ve(Q,`priority-badge ${I??""} svelte-9ix8dg`),o(Z,e(p).priority),o(E,e(p).name),o(ae,` ${e(p)._count.cases??""} case${(e(p)._count.cases!==1?"s":"")??""}`),o(se,`by ${e(p).createdBy.name??""}`)},[()=>at(e(p).priority)],ge),ie("click",v,()=>{i(j,{type:"suite",id:e(p).id,name:e(p).name}),i(ue,!0)}),l(L,Y)}),a(D);var te=r(D,2);{var Ce=L=>{var p=Xa(),Y=s(p);const k=ge(()=>Math.ceil(e(de)/Ye));It(Y,{get current(){return e(ht)},get total(){return e(k)},$$events:{change:S=>et(S.detail)}}),a(p),l(L,p)};b(te,L=>{Math.ceil(e(de)/Ye)>1&&L(Ce)})}l(g,x)};b(y,g=>{e(fe).length===0?g(W):g($,!1)},!0)}l(d,m)};b(C,d=>{e(Ke)?d(R):d(A,!1)})}a(h),vt(3,h,()=>dt,()=>({y:4,duration:160})),l(_,h)},T=_=>{var h=ls(),C=s(h);{var R=d=>{var m=as();l(d,m)},A=d=>{var m=ne(),y=V(m);{var W=g=>{ut(g,{title:"No test runs yet",description:"Create a test run to start executing and tracking manual tests."})},$=g=>{var x=is(),D=V(x);he(D,5,()=>e(le),L=>L.id,(L,p)=>{var Y=ss(),k=s(Y),S=r(k,2),B=s(S),q=r(B,2),Q=s(q,!0);a(q);var Z=r(q,2),N=s(Z);a(Z),a(S);var v=r(S,2),P=s(v),E=s(P,!0);a(P);var O=r(P,4),J=s(O);a(O);var K=r(O,4),F=s(K,!0);a(K),a(v);var ae=r(v,2),H=s(ae),se=r(H,2);a(ae),a(Y),M((I,re)=>{oe(k,"href",`/test-repository/runs/${e(p).id??""}`),oe(k,"aria-label",e(p).title),Ve(B,`run-status-dot ${I??""} svelte-9ix8dg`),o(Q,e(p).title),o(N,`${e(p)._count.entries??""} case${(e(p)._count.entries!==1?"s":"")??""}`),o(E,e(p).status),o(J,`by ${e(p).createdBy.name??""}`),o(F,re)},[()=>yt(e(p).status),()=>new Date(e(p).createdAt).toLocaleDateString()],ge),ie("click",H,()=>mt(e(p))),ie("click",se,()=>{i(j,{type:"run",id:e(p).id,name:e(p).title}),i(ue,!0)}),l(L,Y)}),a(D);var te=r(D,2);{var Ce=L=>{var p=rs(),Y=s(p);const k=ge(()=>Math.ceil(e(ce)/Ye));It(Y,{get current(){return e(ft)},get total(){return e(k)},$$events:{change:S=>tt(S.detail)}}),a(p),l(L,p)};b(te,L=>{Math.ceil(e(ce)/Ye)>1&&L(Ce)})}l(g,x)};b(y,g=>{e(le).length===0?g(W):g($,!1)},!0)}l(d,m)};b(C,d=>{e(Ke)?d(R):d(A,!1)})}a(h),vt(3,h,()=>dt,()=>({y:4,duration:160})),l(_,h)};b(c,_=>{e($e)==="suites"?_(w):_(T,!1)},!0)}l(t,n)};b(aa,t=>{e(ve)?t(sa):t(ra,!1)})}M(()=>{We(Le,"active",e($e)==="suites"),o(Kt,`${(e(ve)?e(ye).length+"/":"")??""}${e(de)??""}`),We(ze,"active",e($e)==="runs"),o(Qt,`${(e(ve)?e(be).length+"/":"")??""}${e(ce)??""}`)}),ie("click",Le,()=>pt("suites")),ie("click",ze,()=>pt("runs")),Ze(lt,()=>e(xe),t=>i(xe,t)),l(Nt,bt),ua()}export{bs as component};