@piwitests/server 0.19.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (732) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{279D2RYp.js → 9ti9eNH9.js} +1 -1
  3. package/.output/public/_nuxt/{DcmZRa_F.js → B-zdP-D4.js} +1 -1
  4. package/.output/public/_nuxt/{eaVkJRSa.js → B1RmmOsM.js} +1 -1
  5. package/.output/public/_nuxt/{DprVVyUQ.js → B3Fsod9X.js} +1 -1
  6. package/.output/public/_nuxt/{HXerICAi.js → B3rirOqU.js} +34 -34
  7. package/.output/public/_nuxt/B3zmIJYb.js +1 -0
  8. package/.output/public/_nuxt/{CDk0q2hV.js → BAKUqW95.js} +2 -2
  9. package/.output/public/_nuxt/BG0KKQiT.js +7 -0
  10. package/.output/public/_nuxt/BGL_V7Y4.js +1 -0
  11. package/.output/public/_nuxt/{Jo8kRmHz.js → BGusFAvZ.js} +1 -1
  12. package/.output/public/_nuxt/{CGNkHojN.js → BNurUTla.js} +3 -3
  13. package/.output/public/_nuxt/BR5cR2Ot.js +1 -0
  14. package/.output/public/_nuxt/BTCh_0zN.js +1 -0
  15. package/.output/public/_nuxt/{ZFiQCMUB.js → BTVqMsA3.js} +1 -1
  16. package/.output/public/_nuxt/{BqV0l12c.js → B_13C0GF.js} +1 -1
  17. package/.output/public/_nuxt/BeDIjhoR.js +44 -0
  18. package/.output/public/_nuxt/{BDicZ1gQ.js → BerCW7Ug.js} +1 -1
  19. package/.output/public/_nuxt/BfTNbVc_.js +1 -0
  20. package/.output/public/_nuxt/BnbSEpXX.js +1 -0
  21. package/.output/public/_nuxt/Bo_dxehb.js +1 -0
  22. package/.output/public/_nuxt/{ClOqkAcc.js → BpBHls4-.js} +1 -1
  23. package/.output/public/_nuxt/{C7P1UCO2.js → BpM6ZPIG.js} +1 -1
  24. package/.output/public/_nuxt/BqGumsDo.js +4 -0
  25. package/.output/public/_nuxt/{DS636elg.js → BrxtP_cN.js} +1 -1
  26. package/.output/public/_nuxt/{YVN7WG7q.js → C2hNxjjz.js} +1 -1
  27. package/.output/public/_nuxt/C5PSqfKi.js +2 -0
  28. package/.output/public/_nuxt/C5vsaU4G.js +1 -0
  29. package/.output/public/_nuxt/C9sdHaXd.js +1 -0
  30. package/.output/public/_nuxt/{SfMRXW25.js → CAxgBYIt.js} +2 -2
  31. package/.output/public/_nuxt/{CZfMdzfk.js → CES2i5Pl.js} +1 -1
  32. package/.output/public/_nuxt/{BX9ZXe98.js → CFEdRqaj.js} +1 -1
  33. package/.output/public/_nuxt/{B44A4LSJ.js → CFTZwazK.js} +1 -1
  34. package/.output/public/_nuxt/CIBS7ye6.js +1 -0
  35. package/.output/public/_nuxt/CIEceDOw.js +1 -0
  36. package/.output/public/_nuxt/{DHDtnj7p.js → CJBhojV6.js} +1 -1
  37. package/.output/public/_nuxt/{BPQoBGg5.js → CKYddHa6.js} +1 -1
  38. package/.output/public/_nuxt/{BccXfBfI.js → CLVWiCds.js} +1 -1
  39. package/.output/public/_nuxt/{DX-MDGb3.js → CMYAryzi.js} +1 -1
  40. package/.output/public/_nuxt/{BuMC3WjZ.js → COhdybDy.js} +1 -1
  41. package/.output/public/_nuxt/{Bu2aaVIY.js → CRBXM2d6.js} +2 -2
  42. package/.output/public/_nuxt/{BYDaY0Z7.js → CTD_pJ_v.js} +1 -1
  43. package/.output/public/_nuxt/{C9_jrmk9.js → CTP8Pw0-.js} +2 -2
  44. package/.output/public/_nuxt/{D55D4EYo.js → CV8iF2kG.js} +1 -1
  45. package/.output/public/_nuxt/{BCMuIgP5.js → CWKmbYlT.js} +1 -1
  46. package/.output/public/_nuxt/C_NfGMTd.js +9 -0
  47. package/.output/public/_nuxt/Cejoebel.js +6 -0
  48. package/.output/public/_nuxt/{Dnpkl-1q.js → Chpah_7l.js} +1 -1
  49. package/.output/public/_nuxt/Ci9d8YVV.js +1 -0
  50. package/.output/public/_nuxt/{C95YAaJq.js → CifRHVaR.js} +1 -1
  51. package/.output/public/_nuxt/{BMvCSA6h.js → Ckgsh9AT.js} +1 -1
  52. package/.output/public/_nuxt/{eptP4pGv.js → Cpsq-kYE.js} +1 -1
  53. package/.output/public/_nuxt/Cqc-DSTF.js +1 -0
  54. package/.output/public/_nuxt/{KnfsST6Y.js → CsHulb12.js} +1 -1
  55. package/.output/public/_nuxt/Ctb2CqUf.js +5 -0
  56. package/.output/public/_nuxt/CtstIQSh.js +1 -0
  57. package/.output/public/_nuxt/{DGfAxLHV.js → CvMzDKvu.js} +1 -1
  58. package/.output/public/_nuxt/{fVcG504p.js → D2pBhsH8.js} +1 -1
  59. package/.output/public/_nuxt/{rWNTSFD6.js → D8gX1Jde.js} +3 -3
  60. package/.output/public/_nuxt/D9knOn6D.js +1 -0
  61. package/.output/public/_nuxt/DAPTVdvA.js +1 -0
  62. package/.output/public/_nuxt/{NQikbhmK.js → DCFbQvIN.js} +44 -43
  63. package/.output/public/_nuxt/DCoJlz_q.js +1 -0
  64. package/.output/public/_nuxt/DGnQ69wW.js +64 -0
  65. package/.output/public/_nuxt/{CTxDO9fB.js → DHzij16p.js} +1 -1
  66. package/.output/public/_nuxt/DJMCXRuW.js +5 -0
  67. package/.output/public/_nuxt/DJXcGkJP.js +2 -0
  68. package/.output/public/_nuxt/{CK_2LZBS.js → DKFXZdWZ.js} +1 -1
  69. package/.output/public/_nuxt/{tvgqrYDd.js → DL24AjfW.js} +1 -1
  70. package/.output/public/_nuxt/DON74Yh6.js +1 -0
  71. package/.output/public/_nuxt/{CHEFCN8Q.js → DQM62mxB.js} +1 -1
  72. package/.output/public/_nuxt/DSe8DxMl.js +1 -0
  73. package/.output/public/_nuxt/DWwiVTZX.js +24 -0
  74. package/.output/public/_nuxt/DX4tAP78.js +1 -0
  75. package/.output/public/_nuxt/{DLSrtpsA.js → D_eDAIsT.js} +1 -1
  76. package/.output/public/_nuxt/Da8A92cF.js +1 -0
  77. package/.output/public/_nuxt/{BxCKKeYs.js → DdH3op4b.js} +1 -1
  78. package/.output/public/_nuxt/DepFDZO3.js +1 -0
  79. package/.output/public/_nuxt/{CV9-fTmY.js → DfSBKzrC.js} +1 -1
  80. package/.output/public/_nuxt/{DT53RWbC.js → DfnKh3dZ.js} +1 -1
  81. package/.output/public/_nuxt/{ndShiWE8.js → DhpTfeip.js} +1 -1
  82. package/.output/public/_nuxt/{ybDYeNxd.js → Dk9nD32g.js} +1 -1
  83. package/.output/public/_nuxt/{D0HNloZ9.js → DkT2nCqn.js} +1 -1
  84. package/.output/public/_nuxt/DlW85lQq.js +4 -0
  85. package/.output/public/_nuxt/DnNio-ut.js +1 -0
  86. package/.output/public/_nuxt/{BfTuX0wq.js → DnQv_hst.js} +1 -1
  87. package/.output/public/_nuxt/{FUXhyidq.js → DqEOMteW.js} +1 -1
  88. package/.output/public/_nuxt/{Bti38m-M.js → Dsvu7YJT.js} +1 -1
  89. package/.output/public/_nuxt/DvhCDBrR.js +2 -0
  90. package/.output/public/_nuxt/DwQaVMZR.js +1 -0
  91. package/.output/public/_nuxt/E-_n_6vi.js +1 -0
  92. package/.output/public/_nuxt/{DP8hfJ9h.js → Ebw5l7n8.js} +1 -1
  93. package/.output/public/_nuxt/{nv9-6vBK.js → IPePdbzl.js} +1 -1
  94. package/.output/public/_nuxt/{BPRffDuo.js → LHoUGrfi.js} +1 -1
  95. package/.output/public/_nuxt/{CYsTqbBS.js → NERLHpOL.js} +1 -1
  96. package/.output/public/_nuxt/RAdNGxcF.js +1 -0
  97. package/.output/public/_nuxt/Vxyo_mU9.js +1 -0
  98. package/.output/public/_nuxt/{IvQlbZk6.js → YE1kAkU9.js} +1 -1
  99. package/.output/public/_nuxt/{DgE2YE3R.js → YmT5WiN5.js} +1 -1
  100. package/.output/public/_nuxt/ZcAfCxWE.js +17 -0
  101. package/.output/public/_nuxt/{cHAnlQbv.js → _rglcvXN.js} +1 -1
  102. package/.output/public/_nuxt/bFU9Y1Vw.js +10 -0
  103. package/.output/public/_nuxt/bfecIH89.js +1 -0
  104. package/.output/public/_nuxt/builds/latest.json +1 -1
  105. package/.output/public/_nuxt/builds/meta/31ca2be4-a949-4df6-9818-773fc085557a.json +1 -0
  106. package/.output/public/_nuxt/entry.BAvBQY-h.css +1 -0
  107. package/.output/public/_nuxt/four-S1Y.js +1 -0
  108. package/.output/public/_nuxt/{DiOLdHBC.js → gV2U_Gqd.js} +1 -1
  109. package/.output/public/_nuxt/{C-elpgyr.js → lGC893pn.js} +1 -1
  110. package/.output/public/_nuxt/nOfj-ar8.js +1 -0
  111. package/.output/public/_nuxt/oKrbs1XK.js +1 -0
  112. package/.output/public/_nuxt/oSJFAC38.js +1 -0
  113. package/.output/public/_nuxt/rL4C0HV5.js +1 -0
  114. package/.output/public/_nuxt/{Cdff9XNh.js → tQoyVPCE.js} +1 -1
  115. package/.output/public/_nuxt/{DEFEpYzn.js → uSPCvASp.js} +1 -1
  116. package/.output/public/_nuxt/{y17lMTFy.js → wkz5-1SO.js} +1 -1
  117. package/.output/public/_nuxt/yYlVYKCz.js +34 -0
  118. package/.output/public/_nuxt/{B9WhzpKO.js → zv8WdMx0.js} +1 -1
  119. package/.output/server/chunks/_/collect.mjs +1 -1
  120. package/.output/server/chunks/_/markers.mjs +1 -1
  121. package/.output/server/chunks/_/quarantine.mjs +1 -1
  122. package/.output/server/chunks/_/scope.mjs +43 -27
  123. package/.output/server/chunks/_/scope.mjs.map +1 -1
  124. package/.output/server/chunks/_/users.mjs +1 -1
  125. package/.output/server/chunks/build/{Breadcrumb-Ak2Lg3oM.mjs → Breadcrumb-3itRZ1uz.mjs} +2 -2
  126. package/.output/server/chunks/build/Breadcrumb-3itRZ1uz.mjs.map +1 -0
  127. package/.output/server/chunks/build/{BreadcrumbNav-DO7I_z-n.mjs → BreadcrumbNav-GnjBvXuT.mjs} +2 -2
  128. package/.output/server/chunks/build/BreadcrumbNav-GnjBvXuT.mjs.map +1 -0
  129. package/.output/server/chunks/build/{BrowserBadge-D33lqUcj.mjs → BrowserBadge-DQqJS9CV.mjs} +66 -6
  130. package/.output/server/chunks/build/BrowserBadge-DQqJS9CV.mjs.map +1 -0
  131. package/.output/server/chunks/build/{ChartCard-Y1UKwMsf.mjs → ChartCard-D0rzMf-N.mjs} +2 -2
  132. package/.output/server/chunks/build/ChartCard-D0rzMf-N.mjs.map +1 -0
  133. package/.output/server/chunks/build/{Checkbox-DvUBGagc.mjs → Checkbox-DmRKG-0s.mjs} +5 -5
  134. package/.output/server/chunks/build/Checkbox-DmRKG-0s.mjs.map +1 -0
  135. package/.output/server/chunks/build/{CodeBlock-BgE-NSmE.mjs → CodeBlock-DGhKVFad.mjs} +4 -4
  136. package/.output/server/chunks/build/CodeBlock-DGhKVFad.mjs.map +1 -0
  137. package/.output/server/chunks/build/{DashboardNavbar-BHmMSPX7.mjs → DashboardNavbar-DCr10nxL.mjs} +2 -2
  138. package/.output/server/chunks/build/DashboardNavbar-DCr10nxL.mjs.map +1 -0
  139. package/.output/server/chunks/build/{DashboardSidebarToggle-DCTnHiIv.mjs → DashboardSidebarToggle-8EpBhX0R.mjs} +3 -3
  140. package/.output/server/chunks/build/DashboardSidebarToggle-8EpBhX0R.mjs.map +1 -0
  141. package/.output/server/chunks/build/{DataLocationCard-B_YHdzSz.mjs → DataLocationCard-rzS-pgCP.mjs} +5 -5
  142. package/.output/server/chunks/build/DataLocationCard-rzS-pgCP.mjs.map +1 -0
  143. package/.output/server/chunks/build/{DiagnosisPanel-B646dK4p.mjs → DiagnosisPanel-BWTpoCKy.mjs} +8 -7
  144. package/.output/server/chunks/build/DiagnosisPanel-BWTpoCKy.mjs.map +1 -0
  145. package/.output/server/chunks/build/{useAiStatus-CWvIo32Q.mjs → DiagnosisResult-Br3qBLXe.mjs} +14 -36
  146. package/.output/server/chunks/build/DiagnosisResult-Br3qBLXe.mjs.map +1 -0
  147. package/.output/server/chunks/build/{DurationValue-D20oGbnc.mjs → DurationValue-CWKfjIF2.mjs} +2 -2
  148. package/.output/server/chunks/build/DurationValue-CWKfjIF2.mjs.map +1 -0
  149. package/.output/server/chunks/build/{EmptyState-Dtlab7S9.mjs → EmptyState-DC2q_7TD.mjs} +3 -3
  150. package/.output/server/chunks/build/EmptyState-DC2q_7TD.mjs.map +1 -0
  151. package/.output/server/chunks/build/{EntityLinks-D3fp57pR.mjs → EntityLinks-CF0xG3Y8.mjs} +6 -6
  152. package/.output/server/chunks/build/EntityLinks-CF0xG3Y8.mjs.map +1 -0
  153. package/.output/server/chunks/build/{EnvManagedBadge-Bg3FSiU1.mjs → EnvManagedBadge-UwD2b9v2.mjs} +3 -3
  154. package/.output/server/chunks/build/EnvManagedBadge-UwD2b9v2.mjs.map +1 -0
  155. package/.output/server/chunks/build/FeatureUnavailable-CwPms6X_.mjs +83 -0
  156. package/.output/server/chunks/build/FeatureUnavailable-CwPms6X_.mjs.map +1 -0
  157. package/.output/server/chunks/build/{FormField-B0HKsdMd.mjs → FormField-e7OnSKPM.mjs} +2 -2
  158. package/.output/server/chunks/build/FormField-e7OnSKPM.mjs.map +1 -0
  159. package/.output/server/chunks/build/GetStartedWizard-CB5v1Xzu.mjs +510 -0
  160. package/.output/server/chunks/build/GetStartedWizard-CB5v1Xzu.mjs.map +1 -0
  161. package/.output/server/chunks/build/{HelpHint-DrcIv-Oj.mjs → HelpHint-DjGrGFA7.mjs} +3 -3
  162. package/.output/server/chunks/build/HelpHint-DjGrGFA7.mjs.map +1 -0
  163. package/.output/server/chunks/build/{LoadingState-C3pBSuOO.mjs → LoadingState-B8v1nWJt.mjs} +3 -3
  164. package/.output/server/chunks/build/LoadingState-B8v1nWJt.mjs.map +1 -0
  165. package/.output/server/chunks/build/MetaStripGroup-dXXa_MzF.mjs +1205 -0
  166. package/.output/server/chunks/build/MetaStripGroup-dXXa_MzF.mjs.map +1 -0
  167. package/.output/server/chunks/build/{MiniRunBars-CZMugDrh.mjs → MiniRunBars-fgLMgRUp.mjs} +2 -2
  168. package/.output/server/chunks/build/MiniRunBars-fgLMgRUp.mjs.map +1 -0
  169. package/.output/server/chunks/build/{Modal-Ck2XLt8d.mjs → Modal-pSDlXzT3.mjs} +2 -2
  170. package/.output/server/chunks/build/Modal-pSDlXzT3.mjs.map +1 -0
  171. package/.output/server/chunks/build/{useSettingsNav-C3O866KC.mjs → NavigationMenu-cqpt11Ce.mjs} +6 -29
  172. package/.output/server/chunks/build/NavigationMenu-cqpt11Ce.mjs.map +1 -0
  173. package/.output/server/chunks/build/{OpenInIdeLink-C4MXA8ya.mjs → OpenInIdeLink-B9wvQkhy.mjs} +5 -5
  174. package/.output/server/chunks/build/{OpenInIdeLink-C4MXA8ya.mjs.map → OpenInIdeLink-B9wvQkhy.mjs.map} +1 -1
  175. package/.output/server/chunks/build/{ProjectTestCasesTable-CxfQ5wtN.mjs → ProjectTestCasesTable-BwHEtZTz.mjs} +19 -19
  176. package/.output/server/chunks/build/ProjectTestCasesTable-BwHEtZTz.mjs.map +1 -0
  177. package/.output/server/chunks/build/{RovingFocusItem-BJSzTBjy.mjs → RovingFocusItem--OEHI2P3.mjs} +2 -2
  178. package/.output/server/chunks/build/RovingFocusItem--OEHI2P3.mjs.map +1 -0
  179. package/.output/server/chunks/build/{RunReports-DFLv51TX.mjs → RunReports-BDRIWn3o.mjs} +3 -3
  180. package/.output/server/chunks/build/RunReports-BDRIWn3o.mjs.map +1 -0
  181. package/.output/server/chunks/build/{RunStatusBadge-FfGb6bkW.mjs → RunStatusBadge-CuTDknRJ.mjs} +2 -2
  182. package/.output/server/chunks/build/RunStatusBadge-CuTDknRJ.mjs.map +1 -0
  183. package/.output/server/chunks/build/{SectionCard-CN-v0FZ_.mjs → SectionCard-BW5Lynrr.mjs} +2 -2
  184. package/.output/server/chunks/build/SectionCard-BW5Lynrr.mjs.map +1 -0
  185. package/.output/server/chunks/build/{Select-CUqj50wi.mjs → Select-CVctwpib.mjs} +3 -3
  186. package/.output/server/chunks/build/Select-CVctwpib.mjs.map +1 -0
  187. package/.output/server/chunks/build/{SelectMenu-Db7osY7J.mjs → SelectMenu-XLVBEa11.mjs} +939 -7
  188. package/.output/server/chunks/build/{SelectMenu-Db7osY7J.mjs.map → SelectMenu-XLVBEa11.mjs.map} +1 -1
  189. package/.output/server/chunks/build/{SettingsField-D6iEYbEc.mjs → SettingsField-DvtRvI6O.mjs} +4 -4
  190. package/.output/server/chunks/build/SettingsField-DvtRvI6O.mjs.map +1 -0
  191. package/.output/server/chunks/build/{Slideover-DgCa80mf.mjs → Slideover-D270EZZD.mjs} +3 -3
  192. package/.output/server/chunks/build/Slideover-D270EZZD.mjs.map +1 -0
  193. package/.output/server/chunks/build/{StatTile-D61Vzo6e.mjs → StatTile-DpcVQFVI.mjs} +2 -26
  194. package/.output/server/chunks/build/StatTile-DpcVQFVI.mjs.map +1 -0
  195. package/.output/server/chunks/build/StatTileGrid-7zOFUQ6j.mjs +30 -0
  196. package/.output/server/chunks/build/StatTileGrid-7zOFUQ6j.mjs.map +1 -0
  197. package/.output/server/chunks/build/{Switch-CgUioOYB.mjs → Switch-8zWfwI5B.mjs} +3 -3
  198. package/.output/server/chunks/build/Switch-8zWfwI5B.mjs.map +1 -0
  199. package/.output/server/chunks/build/Table-BRk04Hd2.mjs +1 -1
  200. package/.output/server/chunks/build/{Tabs-Bbsg9wag.mjs → Tabs-BkSOnbaB.mjs} +2 -2
  201. package/.output/server/chunks/build/Tabs-BkSOnbaB.mjs.map +1 -0
  202. package/.output/server/chunks/build/{TestCaseHistoryChart-nMLPhdvD.mjs → TestCaseHistoryChart-C6t5RrCG.mjs} +6 -6
  203. package/.output/server/chunks/build/TestCaseHistoryChart-C6t5RrCG.mjs.map +1 -0
  204. package/.output/server/chunks/build/{TestMetaBadges-D5_yUtIP.mjs → TestMetaBadges-BlyKmfeP.mjs} +1 -1
  205. package/.output/server/chunks/build/TestMetaBadges-BlyKmfeP.mjs.map +1 -0
  206. package/.output/server/chunks/build/{TestStatusBar-j6h2Jp6A.mjs → TestStatusBar-DhbrM_rQ.mjs} +4 -4
  207. package/.output/server/chunks/build/TestStatusBar-DhbrM_rQ.mjs.map +1 -0
  208. package/.output/server/chunks/build/{Textarea-Dv2-lOvW.mjs → Textarea-vkMKVQTJ.mjs} +2 -2
  209. package/.output/server/chunks/build/Textarea-vkMKVQTJ.mjs.map +1 -0
  210. package/.output/server/chunks/build/{Tooltip-BOazooWP.mjs → Tooltip-Dv4htNP6.mjs} +3 -3
  211. package/.output/server/chunks/build/Tooltip-Dv4htNP6.mjs.map +1 -0
  212. package/.output/server/chunks/build/{VisuallyHiddenInput-D6kBJxVd.mjs → VisuallyHiddenInput-BHvzNumK.mjs} +2 -2
  213. package/.output/server/chunks/build/VisuallyHiddenInput-BHvzNumK.mjs.map +1 -0
  214. package/.output/server/chunks/build/{_id_-z5N6HPyC.mjs → _id_-2PMH6rl8.mjs} +26 -25
  215. package/.output/server/chunks/build/_id_-2PMH6rl8.mjs.map +1 -0
  216. package/.output/server/chunks/build/{_id_-BHh65pfg.mjs → _id_-8cGIgeg6.mjs} +1912 -1098
  217. package/.output/server/chunks/build/_id_-8cGIgeg6.mjs.map +1 -0
  218. package/.output/server/chunks/build/{_id_-Rzkqx55x.mjs → _id_-CUZ5S6y5.mjs} +43 -44
  219. package/.output/server/chunks/build/_id_-CUZ5S6y5.mjs.map +1 -0
  220. package/.output/server/chunks/build/{_id_-B78ky13D.mjs → _id_-DMkgWSLZ.mjs} +956 -429
  221. package/.output/server/chunks/build/_id_-DMkgWSLZ.mjs.map +1 -0
  222. package/.output/server/chunks/build/about-D3WXTDro.mjs +696 -0
  223. package/.output/server/chunks/build/about-D3WXTDro.mjs.map +1 -0
  224. package/.output/server/chunks/build/{account-DAfvaD-F.mjs → account-BslDNCoo.mjs} +6 -6
  225. package/.output/server/chunks/build/account-BslDNCoo.mjs.map +1 -0
  226. package/.output/server/chunks/build/{ai-B4VJ9K1K.mjs → ai-C23R9l94.mjs} +18 -18
  227. package/.output/server/chunks/build/{ai-B4VJ9K1K.mjs.map → ai-C23R9l94.mjs.map} +1 -1
  228. package/.output/server/chunks/build/{analytics-CJPC6t4L.mjs → analytics-DQHeToK0.mjs} +106 -80
  229. package/.output/server/chunks/build/analytics-DQHeToK0.mjs.map +1 -0
  230. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  231. package/.output/server/chunks/build/compare-RxHSOdsO.mjs +1 -0
  232. package/.output/server/chunks/build/{db.client-CQoVTYB9.mjs → db.client-D74DghqX.mjs} +38 -2
  233. package/.output/server/chunks/build/db.client-D74DghqX.mjs.map +1 -0
  234. package/.output/server/chunks/build/{default-zvbFgDJG.mjs → default-CeyePZ5I.mjs} +624 -79
  235. package/.output/server/chunks/build/default-CeyePZ5I.mjs.map +1 -0
  236. package/.output/server/chunks/build/{docs-DyuVEgtB.mjs → docs-f_bnC75q.mjs} +17 -17
  237. package/.output/server/chunks/build/{docs-DyuVEgtB.mjs.map → docs-f_bnC75q.mjs.map} +1 -1
  238. package/.output/server/chunks/build/{edit-CFR5g2Qf.mjs → edit-BOC4zWuH.mjs} +13 -15
  239. package/.output/server/chunks/build/edit-BOC4zWuH.mjs.map +1 -0
  240. package/.output/server/chunks/build/{fetch-B4FwBOzu.mjs → fetch-BQg_fhX0.mjs} +32 -4
  241. package/.output/server/chunks/build/fetch-BQg_fhX0.mjs.map +1 -0
  242. package/.output/server/chunks/build/{forgot-password-CC__1OnV.mjs → forgot-password-CxuVbGWy.mjs} +4 -3
  243. package/.output/server/chunks/build/forgot-password-CxuVbGWy.mjs.map +1 -0
  244. package/.output/server/chunks/build/{import-CZo3djDi.mjs → import-CC27wEIu.mjs} +14 -14
  245. package/.output/server/chunks/build/import-CC27wEIu.mjs.map +1 -0
  246. package/.output/server/chunks/build/{index-gCw_y4ZJ.mjs → index-B6PjfyTY.mjs} +44 -543
  247. package/.output/server/chunks/build/index-B6PjfyTY.mjs.map +1 -0
  248. package/.output/server/chunks/build/{index-CU2nZhAa.mjs → index-BOK1aJk9.mjs} +2 -1
  249. package/.output/server/chunks/build/index-BOK1aJk9.mjs.map +1 -0
  250. package/.output/server/chunks/build/{index-D7fe97l3.mjs → index-BhS1DuCr.mjs} +400 -151
  251. package/.output/server/chunks/build/index-BhS1DuCr.mjs.map +1 -0
  252. package/.output/server/chunks/build/{index-Stqw0dEI.mjs → index-DUmjP3Gr.mjs} +18 -19
  253. package/.output/server/chunks/build/index-DUmjP3Gr.mjs.map +1 -0
  254. package/.output/server/chunks/build/index-jvF53f7_.mjs +91 -0
  255. package/.output/server/chunks/build/index-jvF53f7_.mjs.map +1 -0
  256. package/.output/server/chunks/build/isValueEqualOrExist-D2qw9YEr.mjs +1 -1
  257. package/.output/server/chunks/build/{login-Da4u1IlW.mjs → login-CdpOhiP8.mjs} +8 -7
  258. package/.output/server/chunks/build/login-CdpOhiP8.mjs.map +1 -0
  259. package/.output/server/chunks/build/{mcp-B3IUvRgD.mjs → mcp-WTeO5WRo.mjs} +528 -16
  260. package/.output/server/chunks/build/mcp-WTeO5WRo.mjs.map +1 -0
  261. package/.output/server/chunks/build/{notifications-abDv0id8.mjs → notifications-yY6ik-fi.mjs} +11 -11
  262. package/.output/server/chunks/build/notifications-yY6ik-fi.mjs.map +1 -0
  263. package/.output/server/chunks/build/{pr-feedback-DjZID6q-.mjs → pr-feedback-Hv2Ydh_6.mjs} +8 -8
  264. package/.output/server/chunks/build/pr-feedback-Hv2Ydh_6.mjs.map +1 -0
  265. package/.output/server/chunks/build/{reset-password-BmrUS4ZD.mjs → reset-password-CFtO8A6n.mjs} +4 -3
  266. package/.output/server/chunks/build/reset-password-CFtO8A6n.mjs.map +1 -0
  267. package/.output/server/chunks/build/server.mjs +51 -34
  268. package/.output/server/chunks/build/{settings-Du7YqF8i.mjs → settings-DIpvnY8_.mjs} +11 -9
  269. package/.output/server/chunks/build/settings-DIpvnY8_.mjs.map +1 -0
  270. package/.output/server/chunks/build/{settings-metadata-DrEqWcW-.mjs → settings-metadata-DRv9VveS.mjs} +32 -2
  271. package/.output/server/chunks/build/settings-metadata-DRv9VveS.mjs.map +1 -0
  272. package/.output/server/chunks/build/setup-Di0UMyWx.mjs +1116 -0
  273. package/.output/server/chunks/build/setup-Di0UMyWx.mjs.map +1 -0
  274. package/.output/server/chunks/build/{storage-B4vzxd8G.mjs → storage-gAbY1KbQ.mjs} +13 -13
  275. package/.output/server/chunks/build/storage-gAbY1KbQ.mjs.map +1 -0
  276. package/.output/server/chunks/build/{tags-DauTe_F-.mjs → tags-DJ80wCqt.mjs} +6 -7
  277. package/.output/server/chunks/build/tags-DJ80wCqt.mjs.map +1 -0
  278. package/.output/server/chunks/build/{test-cases-DUvaO1He.mjs → test-cases-YP83YlnL.mjs} +21 -21
  279. package/.output/server/chunks/build/test-cases-YP83YlnL.mjs.map +1 -0
  280. package/.output/server/chunks/build/test-functions-BwLTxGmM.mjs +550 -0
  281. package/.output/server/chunks/build/test-functions-BwLTxGmM.mjs.map +1 -0
  282. package/.output/server/chunks/build/{timeout-hygiene-CbnSaVbK.mjs → timeout-hygiene-RpXDjXTX.mjs} +6 -6
  283. package/.output/server/chunks/build/timeout-hygiene-RpXDjXTX.mjs.map +1 -0
  284. package/.output/server/chunks/build/useAiStatus-UR8x-feE.mjs +9 -0
  285. package/.output/server/chunks/build/useAiStatus-UR8x-feE.mjs.map +1 -0
  286. package/.output/server/chunks/build/{useCopyRich-BemRsKgv.mjs → useCopyRich-Cd5Yj_Wy.mjs} +721 -239
  287. package/.output/server/chunks/build/useCopyRich-Cd5Yj_Wy.mjs.map +1 -0
  288. package/.output/server/chunks/build/{useDesktopDownload-D49JRQSw.mjs → useDesktopDownload-BmR6ouz2.mjs} +3 -3
  289. package/.output/server/chunks/build/useDesktopDownload-BmR6ouz2.mjs.map +1 -0
  290. package/.output/server/chunks/build/{useOpenInIde-4GFf-kdi.mjs → useOpenInIde-DolN3bZ5.mjs} +2 -2
  291. package/.output/server/chunks/build/useOpenInIde-DolN3bZ5.mjs.map +1 -0
  292. package/.output/server/chunks/build/useSettingsNav-DfnOFlR_.mjs +19 -0
  293. package/.output/server/chunks/build/useSettingsNav-DfnOFlR_.mjs.map +1 -0
  294. package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs +11 -0
  295. package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs.map +1 -0
  296. package/.output/server/chunks/build/{users-CTUqXyGh.mjs → users-I2K7HXS2.mjs} +6 -7
  297. package/.output/server/chunks/build/users-I2K7HXS2.mjs.map +1 -0
  298. package/.output/server/chunks/build/{wasted-time-lYkx5YO4.mjs → wasted-time-DyIk0olc.mjs} +11 -11
  299. package/.output/server/chunks/build/wasted-time-DyIk0olc.mjs.map +1 -0
  300. package/.output/server/chunks/nitro/nitro.mjs +3124 -1782
  301. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  302. package/.output/server/chunks/routes/__piwi/session.get.mjs +2 -1
  303. package/.output/server/chunks/routes/__piwi/session.get.mjs.map +1 -1
  304. package/.output/server/chunks/routes/api/admin/cleanup.delete.mjs +1 -0
  305. package/.output/server/chunks/routes/api/admin/cleanup.delete.mjs.map +1 -1
  306. package/.output/server/chunks/routes/api/admin/stats.get.mjs +1 -0
  307. package/.output/server/chunks/routes/api/admin/stats.get.mjs.map +1 -1
  308. package/.output/server/chunks/routes/api/ai/status.get.mjs +1 -0
  309. package/.output/server/chunks/routes/api/ai/status.get.mjs.map +1 -1
  310. package/.output/server/chunks/routes/api/analytics/_widget_.get.mjs +1 -0
  311. package/.output/server/chunks/routes/api/analytics/_widget_.get.mjs.map +1 -1
  312. package/.output/server/chunks/routes/api/auth/logout.post.mjs +1 -0
  313. package/.output/server/chunks/routes/api/auth/logout.post.mjs.map +1 -1
  314. package/.output/server/chunks/routes/api/auth/me.get.mjs +1 -0
  315. package/.output/server/chunks/routes/api/auth/me.get.mjs.map +1 -1
  316. package/.output/server/chunks/routes/api/auth/oauth/_provider/callback.get.mjs +1 -0
  317. package/.output/server/chunks/routes/api/auth/oauth/_provider/callback.get.mjs.map +1 -1
  318. package/.output/server/chunks/routes/api/auth/oauth/_provider/login.get.mjs +1 -0
  319. package/.output/server/chunks/routes/api/auth/oauth/_provider/login.get.mjs.map +1 -1
  320. package/.output/server/chunks/routes/api/auth/oauth/_provider/unlink.post.mjs +1 -0
  321. package/.output/server/chunks/routes/api/auth/oauth/_provider/unlink.post.mjs.map +1 -1
  322. package/.output/server/chunks/routes/api/auth/send-verify-email.post.mjs +1 -0
  323. package/.output/server/chunks/routes/api/auth/send-verify-email.post.mjs.map +1 -1
  324. package/.output/server/chunks/routes/api/auth/setup.get.mjs +1 -0
  325. package/.output/server/chunks/routes/api/auth/setup.get.mjs.map +1 -1
  326. package/.output/server/chunks/routes/api/auth/verify-email.get.mjs +1 -0
  327. package/.output/server/chunks/routes/api/auth/verify-email.get.mjs.map +1 -1
  328. package/.output/server/chunks/routes/api/channels/_id/test.post.mjs +1 -0
  329. package/.output/server/chunks/routes/api/channels/_id/test.post.mjs.map +1 -1
  330. package/.output/server/chunks/routes/api/channels/_id_.delete.mjs +1 -0
  331. package/.output/server/chunks/routes/api/channels/_id_.delete.mjs.map +1 -1
  332. package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/approve.post.mjs +1 -0
  333. package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/approve.post.mjs.map +1 -1
  334. package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/reject.post.mjs +1 -0
  335. package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/reject.post.mjs.map +1 -1
  336. package/.output/server/chunks/routes/api/desktop/import-local.post.mjs +89 -0
  337. package/.output/server/chunks/routes/api/desktop/import-local.post.mjs.map +1 -0
  338. package/.output/server/chunks/routes/api/desktop/reporter-config.get.mjs +1 -0
  339. package/.output/server/chunks/routes/api/desktop/reporter-config.get.mjs.map +1 -1
  340. package/.output/server/chunks/routes/api/failure-clusters/_id/base-commit.patch.mjs +2 -1
  341. package/.output/server/chunks/routes/api/failure-clusters/_id/base-commit.patch.mjs.map +1 -1
  342. package/.output/server/chunks/routes/api/failure-clusters/_id/branches.get.mjs +2 -1
  343. package/.output/server/chunks/routes/api/failure-clusters/_id/branches.get.mjs.map +1 -1
  344. package/.output/server/chunks/routes/api/failure-clusters/_id/commit-diff.get.mjs +2 -1
  345. package/.output/server/chunks/routes/api/failure-clusters/_id/commit-diff.get.mjs.map +1 -1
  346. package/.output/server/chunks/routes/api/failure-clusters/_id/commits.get.mjs +2 -1
  347. package/.output/server/chunks/routes/api/failure-clusters/_id/commits.get.mjs.map +1 -1
  348. package/.output/server/chunks/routes/api/failure-clusters/_id/context.get.mjs +2 -1
  349. package/.output/server/chunks/routes/api/failure-clusters/_id/context.get.mjs.map +1 -1
  350. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose/stream.post.mjs +2 -1
  351. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose/stream.post.mjs.map +1 -1
  352. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose.post.mjs +2 -1
  353. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose.post.mjs.map +1 -1
  354. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnoses.get.mjs +2 -1
  355. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnoses.get.mjs.map +1 -1
  356. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnosis.get.mjs +2 -1
  357. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnosis.get.mjs.map +1 -1
  358. package/.output/server/chunks/routes/api/failure-clusters/_id/export.get.mjs +2 -1
  359. package/.output/server/chunks/routes/api/failure-clusters/_id/export.get.mjs.map +1 -1
  360. package/.output/server/chunks/routes/api/failure-clusters/_id/extract-cases.post.mjs +2 -1
  361. package/.output/server/chunks/routes/api/failure-clusters/_id/extract-cases.post.mjs.map +1 -1
  362. package/.output/server/chunks/routes/api/failure-clusters/_id/fix-plan.get.mjs +2 -1
  363. package/.output/server/chunks/routes/api/failure-clusters/_id/fix-plan.get.mjs.map +1 -1
  364. package/.output/server/chunks/routes/api/failure-clusters/_id/status.patch.mjs +2 -1
  365. package/.output/server/chunks/routes/api/failure-clusters/_id/status.patch.mjs.map +1 -1
  366. package/.output/server/chunks/routes/api/failure-clusters/_id_.get.mjs +2 -1
  367. package/.output/server/chunks/routes/api/failure-clusters/_id_.get.mjs.map +1 -1
  368. package/.output/server/chunks/routes/api/failure-diagnoses/_id/feedback.patch.mjs +2 -1
  369. package/.output/server/chunks/routes/api/failure-diagnoses/_id/feedback.patch.mjs.map +1 -1
  370. package/.output/server/chunks/routes/api/files/_...path_.get.mjs +2 -1
  371. package/.output/server/chunks/routes/api/files/_...path_.get.mjs.map +1 -1
  372. package/.output/server/chunks/routes/api/health.get.mjs +2 -1
  373. package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
  374. package/.output/server/chunks/routes/api/index.get.mjs +1 -0
  375. package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
  376. package/.output/server/chunks/routes/api/index.get2.mjs +2 -1
  377. package/.output/server/chunks/routes/api/index.get2.mjs.map +1 -1
  378. package/.output/server/chunks/routes/api/index.get3.mjs +2 -1
  379. package/.output/server/chunks/routes/api/index.get3.mjs.map +1 -1
  380. package/.output/server/chunks/routes/api/index.get4.mjs +2 -1
  381. package/.output/server/chunks/routes/api/index.get4.mjs.map +1 -1
  382. package/.output/server/chunks/routes/api/index.get5.mjs +1 -0
  383. package/.output/server/chunks/routes/api/index.get5.mjs.map +1 -1
  384. package/.output/server/chunks/routes/api/index.post2.mjs +1 -1
  385. package/.output/server/chunks/routes/api/index.post3.mjs +1 -1
  386. package/.output/server/chunks/routes/api/index.post4.mjs +1 -1
  387. package/.output/server/chunks/routes/api/index.post5.mjs +1 -1
  388. package/.output/server/chunks/routes/api/links/_id/refresh.post.mjs +2 -1
  389. package/.output/server/chunks/routes/api/links/_id/refresh.post.mjs.map +1 -1
  390. package/.output/server/chunks/routes/api/links/_id_.delete.mjs +2 -1
  391. package/.output/server/chunks/routes/api/links/_id_.delete.mjs.map +1 -1
  392. package/.output/server/chunks/routes/api/links/_id_.patch.mjs +1 -1
  393. package/.output/server/chunks/routes/api/markers/_id_.delete.mjs +2 -1
  394. package/.output/server/chunks/routes/api/markers/_id_.delete.mjs.map +1 -1
  395. package/.output/server/chunks/routes/api/markers/_id_.put.mjs +1 -1
  396. package/.output/server/chunks/routes/api/notifications/stream.get.mjs +2 -1
  397. package/.output/server/chunks/routes/api/notifications/stream.get.mjs.map +1 -1
  398. package/.output/server/chunks/routes/api/projects/_id/cluster-merge-suggestions.get.mjs +2 -1
  399. package/.output/server/chunks/routes/api/projects/_id/cluster-merge-suggestions.get.mjs.map +1 -1
  400. package/.output/server/chunks/routes/api/projects/_id/failure-clusters.get.mjs +2 -1
  401. package/.output/server/chunks/routes/api/projects/_id/failure-clusters.get.mjs.map +1 -1
  402. package/.output/server/chunks/routes/api/projects/_id/flaky-classify.post.mjs +2 -1
  403. package/.output/server/chunks/routes/api/projects/_id/flaky-classify.post.mjs.map +1 -1
  404. package/.output/server/chunks/routes/api/projects/_id/flaky-tests.get.mjs +2 -1
  405. package/.output/server/chunks/routes/api/projects/_id/flaky-tests.get.mjs.map +1 -1
  406. package/.output/server/chunks/routes/api/projects/_id/latest-run.get.mjs +2 -1
  407. package/.output/server/chunks/routes/api/projects/_id/latest-run.get.mjs.map +1 -1
  408. package/.output/server/chunks/routes/api/projects/_id/markers.get.mjs +2 -1
  409. package/.output/server/chunks/routes/api/projects/_id/markers.get.mjs.map +1 -1
  410. package/.output/server/chunks/routes/api/projects/_id/markers.post.mjs +1 -1
  411. package/.output/server/chunks/routes/api/projects/_id/members.get.mjs +2 -1
  412. package/.output/server/chunks/routes/api/projects/_id/members.get.mjs.map +1 -1
  413. package/.output/server/chunks/routes/api/projects/_id/members.put.mjs +1 -1
  414. package/.output/server/chunks/routes/api/projects/_id/performance.get.mjs +2 -1
  415. package/.output/server/chunks/routes/api/projects/_id/performance.get.mjs.map +1 -1
  416. package/.output/server/chunks/routes/api/projects/_id/quarantine/_testCaseId_.delete.mjs +2 -1
  417. package/.output/server/chunks/routes/api/projects/_id/quarantine/_testCaseId_.delete.mjs.map +1 -1
  418. package/.output/server/chunks/routes/api/projects/_id/quarantine.get.mjs +2 -1
  419. package/.output/server/chunks/routes/api/projects/_id/quarantine.get.mjs.map +1 -1
  420. package/.output/server/chunks/routes/api/projects/_id/quarantine.post.mjs +2 -1
  421. package/.output/server/chunks/routes/api/projects/_id/quarantine.post.mjs.map +1 -1
  422. package/.output/server/chunks/routes/api/projects/_id/slow-tests.get.mjs +2 -1
  423. package/.output/server/chunks/routes/api/projects/_id/slow-tests.get.mjs.map +1 -1
  424. package/.output/server/chunks/routes/api/projects/_id/spec-health.get.mjs +2 -1
  425. package/.output/server/chunks/routes/api/projects/_id/spec-health.get.mjs.map +1 -1
  426. package/.output/server/chunks/routes/api/projects/_id/test-cases.get.mjs +2 -1
  427. package/.output/server/chunks/routes/api/projects/_id/test-cases.get.mjs.map +1 -1
  428. package/.output/server/chunks/routes/api/projects/_id/test-functions/extract.post.mjs +76 -0
  429. package/.output/server/chunks/routes/api/projects/_id/test-functions/extract.post.mjs.map +1 -0
  430. package/.output/server/chunks/routes/api/projects/_id/test-functions/validate-proposal.post.mjs +66 -0
  431. package/.output/server/chunks/routes/api/projects/_id/test-functions/validate-proposal.post.mjs.map +1 -0
  432. package/.output/server/chunks/routes/api/projects/_id/test-functions.get.mjs +53 -0
  433. package/.output/server/chunks/routes/api/projects/_id/test-functions.get.mjs.map +1 -0
  434. package/.output/server/chunks/routes/api/projects/_id/test-functions.post.mjs +67 -0
  435. package/.output/server/chunks/routes/api/projects/_id/test-functions.post.mjs.map +1 -0
  436. package/.output/server/chunks/routes/api/projects/_id/timeout-opportunities.get.mjs +2 -1
  437. package/.output/server/chunks/routes/api/projects/_id/timeout-opportunities.get.mjs.map +1 -1
  438. package/.output/server/chunks/routes/api/projects/_id_.delete.mjs +2 -1
  439. package/.output/server/chunks/routes/api/projects/_id_.delete.mjs.map +1 -1
  440. package/.output/server/chunks/routes/api/projects/_id_.get.mjs +2 -1
  441. package/.output/server/chunks/routes/api/projects/_id_.get.mjs.map +1 -1
  442. package/.output/server/chunks/routes/api/projects/_id_.put.mjs +1 -1
  443. package/.output/server/chunks/routes/api/projects/menu.get.mjs +2 -1
  444. package/.output/server/chunks/routes/api/projects/menu.get.mjs.map +1 -1
  445. package/.output/server/chunks/routes/api/projects/overview.get.mjs +2 -1
  446. package/.output/server/chunks/routes/api/projects/overview.get.mjs.map +1 -1
  447. package/.output/server/chunks/routes/api/projects.get.mjs +2 -1
  448. package/.output/server/chunks/routes/api/projects.get.mjs.map +1 -1
  449. package/.output/server/chunks/routes/api/search.get.mjs +2 -1
  450. package/.output/server/chunks/routes/api/search.get.mjs.map +1 -1
  451. package/.output/server/chunks/routes/api/settings/ai/limits.get.mjs +2 -1
  452. package/.output/server/chunks/routes/api/settings/ai/limits.get.mjs.map +1 -1
  453. package/.output/server/chunks/routes/api/settings/ai/limits.put.mjs +2 -1
  454. package/.output/server/chunks/routes/api/settings/ai/limits.put.mjs.map +1 -1
  455. package/.output/server/chunks/routes/api/settings/ai/models.post.mjs +1 -0
  456. package/.output/server/chunks/routes/api/settings/ai/models.post.mjs.map +1 -1
  457. package/.output/server/chunks/routes/api/settings/ai/test.post.mjs +2 -1
  458. package/.output/server/chunks/routes/api/settings/ai/test.post.mjs.map +1 -1
  459. package/.output/server/chunks/routes/api/settings/ai/usage.get.mjs +2 -1
  460. package/.output/server/chunks/routes/api/settings/ai/usage.get.mjs.map +1 -1
  461. package/.output/server/chunks/routes/api/settings/ai.get.mjs +2 -1
  462. package/.output/server/chunks/routes/api/settings/ai.get.mjs.map +1 -1
  463. package/.output/server/chunks/routes/api/settings/ai.put.mjs +2 -1
  464. package/.output/server/chunks/routes/api/settings/ai.put.mjs.map +1 -1
  465. package/.output/server/chunks/routes/api/settings/pr-feedback.get.mjs +2 -1
  466. package/.output/server/chunks/routes/api/settings/pr-feedback.get.mjs.map +1 -1
  467. package/.output/server/chunks/routes/api/settings/pr-feedback.put.mjs +2 -1
  468. package/.output/server/chunks/routes/api/settings/pr-feedback.put.mjs.map +1 -1
  469. package/.output/server/chunks/routes/api/settings/smtp.get.mjs +2 -1
  470. package/.output/server/chunks/routes/api/settings/smtp.get.mjs.map +1 -1
  471. package/.output/server/chunks/routes/api/settings/timeout-hygiene.get.mjs +2 -1
  472. package/.output/server/chunks/routes/api/settings/timeout-hygiene.get.mjs.map +1 -1
  473. package/.output/server/chunks/routes/api/settings/timeout-hygiene.put.mjs +2 -1
  474. package/.output/server/chunks/routes/api/settings/timeout-hygiene.put.mjs.map +1 -1
  475. package/.output/server/chunks/routes/api/settings/wasted-waits.get.mjs +2 -1
  476. package/.output/server/chunks/routes/api/settings/wasted-waits.get.mjs.map +1 -1
  477. package/.output/server/chunks/routes/api/settings/wasted-waits.put.mjs +2 -1
  478. package/.output/server/chunks/routes/api/settings/wasted-waits.put.mjs.map +1 -1
  479. package/.output/server/chunks/routes/api/setup-status.get.mjs +99 -0
  480. package/.output/server/chunks/routes/api/setup-status.get.mjs.map +1 -0
  481. package/.output/server/chunks/routes/api/stream.get.mjs +2 -1
  482. package/.output/server/chunks/routes/api/stream.get.mjs.map +1 -1
  483. package/.output/server/chunks/routes/api/subscriptions/_id_.delete.mjs +2 -1
  484. package/.output/server/chunks/routes/api/subscriptions/_id_.delete.mjs.map +1 -1
  485. package/.output/server/chunks/routes/api/subscriptions/_id_.patch.mjs +1 -1
  486. package/.output/server/chunks/routes/api/tags/_id_.delete.mjs +2 -1
  487. package/.output/server/chunks/routes/api/tags/_id_.delete.mjs.map +1 -1
  488. package/.output/server/chunks/routes/api/tags/_id_.put.mjs +1 -1
  489. package/.output/server/chunks/routes/api/test-cases/_id/history.get.mjs +2 -1
  490. package/.output/server/chunks/routes/api/test-cases/_id/history.get.mjs.map +1 -1
  491. package/.output/server/chunks/routes/api/test-cases/_id/stability-trend.get.mjs +2 -1
  492. package/.output/server/chunks/routes/api/test-cases/_id/stability-trend.get.mjs.map +1 -1
  493. package/.output/server/chunks/routes/api/test-cases/_id_.get.mjs +2 -1
  494. package/.output/server/chunks/routes/api/test-cases/_id_.get.mjs.map +1 -1
  495. package/.output/server/chunks/routes/api/test-functions/_id_.delete.mjs +60 -0
  496. package/.output/server/chunks/routes/api/test-functions/_id_.delete.mjs.map +1 -0
  497. package/.output/server/chunks/routes/api/test-functions/_id_.put.mjs +69 -0
  498. package/.output/server/chunks/routes/api/test-functions/_id_.put.mjs.map +1 -0
  499. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnose.post.mjs +2 -1
  500. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnose.post.mjs.map +1 -1
  501. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis-context.get.mjs +2 -1
  502. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis-context.get.mjs.map +1 -1
  503. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis.get.mjs +2 -1
  504. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis.get.mjs.map +1 -1
  505. package/.output/server/chunks/routes/api/test-run-cases/_id/export.get.mjs +2 -1
  506. package/.output/server/chunks/routes/api/test-run-cases/_id/export.get.mjs.map +1 -1
  507. package/.output/server/chunks/routes/api/test-run-cases/_id/traces.get.mjs +2 -1
  508. package/.output/server/chunks/routes/api/test-run-cases/_id/traces.get.mjs.map +1 -1
  509. package/.output/server/chunks/routes/api/test-run-cases/_id_.get.mjs +2 -1
  510. package/.output/server/chunks/routes/api/test-run-cases/_id_.get.mjs.map +1 -1
  511. package/.output/server/chunks/routes/api/test-runs/_id/begin.post.mjs +2 -1
  512. package/.output/server/chunks/routes/api/test-runs/_id/begin.post.mjs.map +1 -1
  513. package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs +2 -1
  514. package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs.map +1 -1
  515. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs +6 -3
  516. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs.map +1 -1
  517. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/environment-diff.get.mjs +2 -1
  518. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/environment-diff.get.mjs.map +1 -1
  519. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-healing.get.mjs +2 -1
  520. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-healing.get.mjs.map +1 -1
  521. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-pick.post.mjs +2 -1
  522. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-pick.post.mjs.map +1 -1
  523. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network-body.get.mjs +2 -1
  524. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network-body.get.mjs.map +1 -1
  525. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network.get.mjs +2 -1
  526. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network.get.mjs.map +1 -1
  527. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-stacks.get.mjs +2 -1
  528. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-stacks.get.mjs.map +1 -1
  529. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/visual-diff.get.mjs +2 -1
  530. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/visual-diff.get.mjs.map +1 -1
  531. package/.output/server/chunks/routes/api/test-runs/_id/events.post.mjs +2 -1
  532. package/.output/server/chunks/routes/api/test-runs/_id/events.post.mjs.map +1 -1
  533. package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs +2 -1
  534. package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs.map +1 -1
  535. package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs +2 -1
  536. package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs.map +1 -1
  537. package/.output/server/chunks/routes/api/test-runs/_id/gate.post.mjs +2 -1
  538. package/.output/server/chunks/routes/api/test-runs/_id/gate.post.mjs.map +1 -1
  539. package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs +2 -1
  540. package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs.map +1 -1
  541. package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs +2 -1
  542. package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs.map +1 -1
  543. package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs +2 -1
  544. package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs.map +1 -1
  545. package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs +2 -1
  546. package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs.map +1 -1
  547. package/.output/server/chunks/routes/api/test-runs/_id/stream.get.mjs +2 -1
  548. package/.output/server/chunks/routes/api/test-runs/_id/stream.get.mjs.map +1 -1
  549. package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs +2 -1
  550. package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs.map +1 -1
  551. package/.output/server/chunks/routes/api/test-runs/_id_.delete.mjs +2 -1
  552. package/.output/server/chunks/routes/api/test-runs/_id_.delete.mjs.map +1 -1
  553. package/.output/server/chunks/routes/api/test-runs/_id_.get.mjs +2 -1
  554. package/.output/server/chunks/routes/api/test-runs/_id_.get.mjs.map +1 -1
  555. package/.output/server/chunks/routes/api/test-runs/_id_.patch.mjs +2 -1
  556. package/.output/server/chunks/routes/api/test-runs/_id_.patch.mjs.map +1 -1
  557. package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs +2 -2
  558. package/.output/server/chunks/routes/api/test-runs/import.post.mjs +5 -128
  559. package/.output/server/chunks/routes/api/test-runs/import.post.mjs.map +1 -1
  560. package/.output/server/chunks/routes/api/test-runs/recent.get.mjs +2 -1
  561. package/.output/server/chunks/routes/api/test-runs/recent.get.mjs.map +1 -1
  562. package/.output/server/chunks/routes/api/test-runs/setup.post.mjs +2 -1
  563. package/.output/server/chunks/routes/api/test-runs/setup.post.mjs.map +1 -1
  564. package/.output/server/chunks/routes/api/test-runs/start.post.mjs +2 -1
  565. package/.output/server/chunks/routes/api/test-runs/start.post.mjs.map +1 -1
  566. package/.output/server/chunks/routes/api/test-runs/submit.post.mjs +2 -1
  567. package/.output/server/chunks/routes/api/test-runs/submit.post.mjs.map +1 -1
  568. package/.output/server/chunks/routes/api/test-runs/upload.post.mjs +2 -1
  569. package/.output/server/chunks/routes/api/test-runs/upload.post.mjs.map +1 -1
  570. package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs +4 -1
  571. package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs.map +1 -1
  572. package/.output/server/chunks/routes/api/traces/check.post.mjs +2 -1
  573. package/.output/server/chunks/routes/api/traces/check.post.mjs.map +1 -1
  574. package/.output/server/chunks/routes/api/users/_id/api-keys/_keyId_.delete.mjs +1 -0
  575. package/.output/server/chunks/routes/api/users/_id/api-keys/_keyId_.delete.mjs.map +1 -1
  576. package/.output/server/chunks/routes/api/users/_id/index.get.mjs +1 -0
  577. package/.output/server/chunks/routes/api/users/_id/index.get.mjs.map +1 -1
  578. package/.output/server/chunks/routes/api/users/_id/index.post.mjs +1 -1
  579. package/.output/server/chunks/routes/api/users/_id/invite.post.mjs +2 -1
  580. package/.output/server/chunks/routes/api/users/_id/invite.post.mjs.map +1 -1
  581. package/.output/server/chunks/routes/api/users/_id/projects.get.mjs +2 -1
  582. package/.output/server/chunks/routes/api/users/_id/projects.get.mjs.map +1 -1
  583. package/.output/server/chunks/routes/api/users/_id/projects.put.mjs +1 -1
  584. package/.output/server/chunks/routes/api/users/_id_.delete.mjs +1 -0
  585. package/.output/server/chunks/routes/api/users/_id_.delete.mjs.map +1 -1
  586. package/.output/server/chunks/routes/api/version.get.mjs +2 -1
  587. package/.output/server/chunks/routes/api/version.get.mjs.map +1 -1
  588. package/.output/server/chunks/routes/mcp.post.mjs +41 -11
  589. package/.output/server/chunks/routes/mcp.post.mjs.map +1 -1
  590. package/.output/server/chunks/routes/renderer.mjs +1 -1
  591. package/.output/server/chunks/tasks/sweep.mjs +1 -0
  592. package/.output/server/chunks/tasks/sweep.mjs.map +1 -1
  593. package/.output/server/chunks/tasks/sweep2.mjs +1 -0
  594. package/.output/server/chunks/tasks/sweep2.mjs.map +1 -1
  595. package/.output/server/database/migrations/0043_watery_dragon_lord.sql +22 -0
  596. package/.output/server/database/migrations/meta/0043_snapshot.json +3764 -0
  597. package/.output/server/database/migrations/meta/_journal.json +7 -0
  598. package/.output/server/database/migrations-pg/0044_dark_triathlon.sql +22 -0
  599. package/.output/server/database/migrations-pg/meta/0044_snapshot.json +4473 -0
  600. package/.output/server/database/migrations-pg/meta/_journal.json +7 -0
  601. package/.output/server/index.mjs +2 -1
  602. package/.output/server/index.mjs.map +1 -1
  603. package/.output/server/package.json +1 -1
  604. package/package.json +1 -1
  605. package/.output/public/_nuxt/-09h6CA9.js +0 -1
  606. package/.output/public/_nuxt/81InBX9v.js +0 -1
  607. package/.output/public/_nuxt/Ar3IelOY.js +0 -1
  608. package/.output/public/_nuxt/B33iXw77.js +0 -1
  609. package/.output/public/_nuxt/B3B9Ii2A.js +0 -1
  610. package/.output/public/_nuxt/B3HO8kuh.js +0 -1
  611. package/.output/public/_nuxt/B7NBP1C-.js +0 -1
  612. package/.output/public/_nuxt/BJ0XQElc.js +0 -1
  613. package/.output/public/_nuxt/BSIxhGsh.js +0 -1
  614. package/.output/public/_nuxt/BVaxh6Nl.js +0 -4
  615. package/.output/public/_nuxt/Bc8mOoz9.js +0 -4
  616. package/.output/public/_nuxt/BeLWlVK0.js +0 -1
  617. package/.output/public/_nuxt/Bn0YQDyy.js +0 -1
  618. package/.output/public/_nuxt/Bp5ELvx9.js +0 -1
  619. package/.output/public/_nuxt/BpUaY9nH.js +0 -2
  620. package/.output/public/_nuxt/C2_3mdPC.js +0 -1
  621. package/.output/public/_nuxt/C5iG7O4O.js +0 -64
  622. package/.output/public/_nuxt/CHNwfU1y.js +0 -1
  623. package/.output/public/_nuxt/CNFYDQmj.js +0 -1
  624. package/.output/public/_nuxt/CU5S9GCh.js +0 -1
  625. package/.output/public/_nuxt/CUtJobDm.js +0 -1
  626. package/.output/public/_nuxt/CpjgB2aY.js +0 -1
  627. package/.output/public/_nuxt/CrwJAwhk.js +0 -1
  628. package/.output/public/_nuxt/CtQBsNUb.js +0 -1
  629. package/.output/public/_nuxt/CuSVQEkS.js +0 -3
  630. package/.output/public/_nuxt/CylWPruw.js +0 -1
  631. package/.output/public/_nuxt/CzGyac8q.js +0 -1
  632. package/.output/public/_nuxt/DDDpCFpF.js +0 -1
  633. package/.output/public/_nuxt/DVDXJYq2.js +0 -2
  634. package/.output/public/_nuxt/DW0xl3I6.js +0 -17
  635. package/.output/public/_nuxt/Dgf5N4Ng.js +0 -1
  636. package/.output/public/_nuxt/DiZyJYez.js +0 -1
  637. package/.output/public/_nuxt/Dk9fwOCm.js +0 -34
  638. package/.output/public/_nuxt/DoUy4UHi.js +0 -44
  639. package/.output/public/_nuxt/DslPMqfa.js +0 -1
  640. package/.output/public/_nuxt/OSduWzyz.js +0 -1
  641. package/.output/public/_nuxt/SlIRLREZ.js +0 -6
  642. package/.output/public/_nuxt/WsxFTEFq.js +0 -10
  643. package/.output/public/_nuxt/aQgs_c6e.js +0 -9
  644. package/.output/public/_nuxt/builds/meta/ab473028-4b37-4884-b243-b8f6e5046e5e.json +0 -1
  645. package/.output/public/_nuxt/dYCKgE-3.js +0 -5
  646. package/.output/public/_nuxt/entry.CPhW41mh.css +0 -1
  647. package/.output/public/_nuxt/g26aVPxc.js +0 -1
  648. package/.output/public/_nuxt/zQyPuvV1.js +0 -1
  649. package/.output/server/chunks/_/import-runs.mjs +0 -351
  650. package/.output/server/chunks/_/import-runs.mjs.map +0 -1
  651. package/.output/server/chunks/build/Breadcrumb-Ak2Lg3oM.mjs.map +0 -1
  652. package/.output/server/chunks/build/BreadcrumbNav-DO7I_z-n.mjs.map +0 -1
  653. package/.output/server/chunks/build/BrowserBadge-D33lqUcj.mjs.map +0 -1
  654. package/.output/server/chunks/build/ChartCard-Y1UKwMsf.mjs.map +0 -1
  655. package/.output/server/chunks/build/Checkbox-DvUBGagc.mjs.map +0 -1
  656. package/.output/server/chunks/build/CiEnvCard-CrjOM17n.mjs +0 -631
  657. package/.output/server/chunks/build/CiEnvCard-CrjOM17n.mjs.map +0 -1
  658. package/.output/server/chunks/build/CodeBlock-BgE-NSmE.mjs.map +0 -1
  659. package/.output/server/chunks/build/DashboardNavbar-BHmMSPX7.mjs.map +0 -1
  660. package/.output/server/chunks/build/DashboardSidebarToggle-DCTnHiIv.mjs.map +0 -1
  661. package/.output/server/chunks/build/DataLocationCard-B_YHdzSz.mjs.map +0 -1
  662. package/.output/server/chunks/build/DiagnosisPanel-B646dK4p.mjs.map +0 -1
  663. package/.output/server/chunks/build/DurationValue-D20oGbnc.mjs.map +0 -1
  664. package/.output/server/chunks/build/EmptyState-Dtlab7S9.mjs.map +0 -1
  665. package/.output/server/chunks/build/EntityLinks-D3fp57pR.mjs.map +0 -1
  666. package/.output/server/chunks/build/EnvManagedBadge-Bg3FSiU1.mjs.map +0 -1
  667. package/.output/server/chunks/build/FormField-B0HKsdMd.mjs.map +0 -1
  668. package/.output/server/chunks/build/HelpHint-DrcIv-Oj.mjs.map +0 -1
  669. package/.output/server/chunks/build/LoadingState-C3pBSuOO.mjs.map +0 -1
  670. package/.output/server/chunks/build/MiniRunBars-CZMugDrh.mjs.map +0 -1
  671. package/.output/server/chunks/build/Modal-Ck2XLt8d.mjs.map +0 -1
  672. package/.output/server/chunks/build/ProjectTestCasesTable-CxfQ5wtN.mjs.map +0 -1
  673. package/.output/server/chunks/build/RovingFocusItem-BJSzTBjy.mjs.map +0 -1
  674. package/.output/server/chunks/build/RunReports-DFLv51TX.mjs.map +0 -1
  675. package/.output/server/chunks/build/RunStatusBadge-FfGb6bkW.mjs.map +0 -1
  676. package/.output/server/chunks/build/SectionCard-CN-v0FZ_.mjs.map +0 -1
  677. package/.output/server/chunks/build/Select-CUqj50wi.mjs.map +0 -1
  678. package/.output/server/chunks/build/SettingsField-D6iEYbEc.mjs.map +0 -1
  679. package/.output/server/chunks/build/Slideover-DgCa80mf.mjs.map +0 -1
  680. package/.output/server/chunks/build/StatTile-D61Vzo6e.mjs.map +0 -1
  681. package/.output/server/chunks/build/Switch-CgUioOYB.mjs.map +0 -1
  682. package/.output/server/chunks/build/Tabs-Bbsg9wag.mjs.map +0 -1
  683. package/.output/server/chunks/build/TestCaseHistoryChart-nMLPhdvD.mjs.map +0 -1
  684. package/.output/server/chunks/build/TestMetaBadges-D5_yUtIP.mjs.map +0 -1
  685. package/.output/server/chunks/build/TestStatusBar-j6h2Jp6A.mjs.map +0 -1
  686. package/.output/server/chunks/build/Textarea-Dv2-lOvW.mjs.map +0 -1
  687. package/.output/server/chunks/build/Tooltip-BOazooWP.mjs.map +0 -1
  688. package/.output/server/chunks/build/VisuallyHiddenInput-D6kBJxVd.mjs.map +0 -1
  689. package/.output/server/chunks/build/_id_-B78ky13D.mjs.map +0 -1
  690. package/.output/server/chunks/build/_id_-BHh65pfg.mjs.map +0 -1
  691. package/.output/server/chunks/build/_id_-Rzkqx55x.mjs.map +0 -1
  692. package/.output/server/chunks/build/_id_-z5N6HPyC.mjs.map +0 -1
  693. package/.output/server/chunks/build/about-CvSP73Ug.mjs +0 -781
  694. package/.output/server/chunks/build/about-CvSP73Ug.mjs.map +0 -1
  695. package/.output/server/chunks/build/account-DAfvaD-F.mjs.map +0 -1
  696. package/.output/server/chunks/build/analytics-CJPC6t4L.mjs.map +0 -1
  697. package/.output/server/chunks/build/db.client-CQoVTYB9.mjs.map +0 -1
  698. package/.output/server/chunks/build/default-zvbFgDJG.mjs.map +0 -1
  699. package/.output/server/chunks/build/edit-CFR5g2Qf.mjs.map +0 -1
  700. package/.output/server/chunks/build/fetch-B4FwBOzu.mjs.map +0 -1
  701. package/.output/server/chunks/build/forgot-password-CC__1OnV.mjs.map +0 -1
  702. package/.output/server/chunks/build/import-CZo3djDi.mjs.map +0 -1
  703. package/.output/server/chunks/build/index-CU2nZhAa.mjs.map +0 -1
  704. package/.output/server/chunks/build/index-D7fe97l3.mjs.map +0 -1
  705. package/.output/server/chunks/build/index-Stqw0dEI.mjs.map +0 -1
  706. package/.output/server/chunks/build/index-gCw_y4ZJ.mjs.map +0 -1
  707. package/.output/server/chunks/build/index-tR6owKzj.mjs +0 -167
  708. package/.output/server/chunks/build/index-tR6owKzj.mjs.map +0 -1
  709. package/.output/server/chunks/build/login-Da4u1IlW.mjs.map +0 -1
  710. package/.output/server/chunks/build/mcp-B3IUvRgD.mjs.map +0 -1
  711. package/.output/server/chunks/build/notifications-abDv0id8.mjs.map +0 -1
  712. package/.output/server/chunks/build/pr-feedback-DjZID6q-.mjs.map +0 -1
  713. package/.output/server/chunks/build/reset-password-BmrUS4ZD.mjs.map +0 -1
  714. package/.output/server/chunks/build/settings-Du7YqF8i.mjs.map +0 -1
  715. package/.output/server/chunks/build/settings-metadata-DrEqWcW-.mjs.map +0 -1
  716. package/.output/server/chunks/build/storage-B4vzxd8G.mjs.map +0 -1
  717. package/.output/server/chunks/build/tags-DauTe_F-.mjs.map +0 -1
  718. package/.output/server/chunks/build/test-cases-DUvaO1He.mjs.map +0 -1
  719. package/.output/server/chunks/build/timeout-hygiene-CbnSaVbK.mjs.map +0 -1
  720. package/.output/server/chunks/build/useAiStatus-CWvIo32Q.mjs.map +0 -1
  721. package/.output/server/chunks/build/useCopy-CeKWgHyT.mjs +0 -33
  722. package/.output/server/chunks/build/useCopy-CeKWgHyT.mjs.map +0 -1
  723. package/.output/server/chunks/build/useCopyRich-BemRsKgv.mjs.map +0 -1
  724. package/.output/server/chunks/build/useDesktopDownload-D49JRQSw.mjs.map +0 -1
  725. package/.output/server/chunks/build/useOpenInIde-4GFf-kdi.mjs.map +0 -1
  726. package/.output/server/chunks/build/useSettingsNav-C3O866KC.mjs.map +0 -1
  727. package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs +0 -7
  728. package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs.map +0 -1
  729. package/.output/server/chunks/build/users-CTUqXyGh.mjs.map +0 -1
  730. package/.output/server/chunks/build/virtualizer-Cd1hhlxC.mjs +0 -940
  731. package/.output/server/chunks/build/virtualizer-Cd1hhlxC.mjs.map +0 -1
  732. package/.output/server/chunks/build/wasted-time-lYkx5YO4.mjs.map +0 -1
@@ -1,23 +1,26 @@
1
- import { defineComponent, ref, watch, withAsyncContext, computed, mergeProps, withCtx, isRef, unref, createTextVNode, toDisplayString, createVNode, openBlock, createBlock, createCommentVNode, renderSlot, useSlots, useModel, useId, toRef, mergeModels, createSlots, Fragment, renderList, useTemplateRef, onScopeDispose, resolveDynamicComponent, toHandlers, toValue, nextTick, withKeys, useSSRContext } from 'vue';
1
+ import { defineComponent, ref, watch, withAsyncContext, computed, mergeProps, withCtx, isRef, unref, createTextVNode, toDisplayString, createVNode, openBlock, createBlock, createCommentVNode, renderSlot, useSlots, useModel, useId, toRef, mergeModels, createSlots, Fragment, renderList, useTemplateRef, onScopeDispose, resolveDynamicComponent, toHandlers, toValue, nextTick, withKeys, reactive, useSSRContext } from 'vue';
2
2
  import { ssrRenderComponent, ssrInterpolate, ssrRenderSlot, ssrRenderAttrs, ssrRenderClass, ssrRenderList, ssrRenderVNode, ssrRenderStyle, ssrRenderAttr } from 'vue/server-renderer';
3
- import { u as useRoute, j as useToast, a$ as useDemoReset, q as _sfc_main$l, F as useDebounceFn, b7 as createSharedComposable, r as useRuntimeConfig, a as useComponentProps, a4 as useNuxtApp, b as useAppConfig, t as tv, P as Primitive, C as useLocale, X as createReusableTemplate, D as useForwardProps, Y as reactiveOmit, m as _sfc_main$k, b0 as transformUI, aR as _sfc_main$c$1, b2 as useColorMode, E as reactivePick, b1 as omit, k as useRouter, at as usePortal, aU as pointerDownOutside, ay as FieldGroupReset, aJ as VisuallyHidden_default, w as useAuth, K as _sfc_main$a$1, aP as useTimeoutFn, b5 as useKbd, aY as useEventListener, b3 as refDebounced, b4 as refThrottled, Z as pickLinkProps, U as get, $ as _sfc_main$m, o as _sfc_main$p, V as _sfc_main$n, ax as _sfc_main$o, _ as _sfc_main$d$1, b6 as useActiveElement } from './server.mjs';
4
- import { p as provideDashboardContext, u as useDashboard$1, a as useResizable, b as _sfc_main$d, _ as _sfc_main$1$1 } from './DashboardSidebarToggle-DCTnHiIv.mjs';
5
- import { df as defu } from '../nitro/nitro.mjs';
6
- import { _ as _sfc_main$c } from './Slideover-DgCa80mf.mjs';
7
- import { _ as _sfc_main$b } from './Modal-Ck2XLt8d.mjs';
3
+ import { u as useRoute, j as useToast, x as useAuth, b7 as useDemoReset, q as _sfc_main$l, F as useDebounceFn, b6 as createSharedComposable, r as useRuntimeConfig, a as useComponentProps, a5 as useNuxtApp, b as useAppConfig, t as tv, P as Primitive, C as useLocale, X as createReusableTemplate, D as useForwardProps, Y as reactiveOmit, m as _sfc_main$k, a$ as transformUI, aR as _sfc_main$c$1, b1 as useColorMode, E as reactivePick, b0 as omit, k as useRouter, aB as usePortal, aU as pointerDownOutside, aG as FieldGroupReset, aJ as VisuallyHidden_default, K as _sfc_main$a$1, aP as useTimeoutFn, b4 as useKbd, aY as useEventListener, b2 as refDebounced, b3 as refThrottled, Z as pickLinkProps, U as get, $ as _sfc_main$m, o as _sfc_main$p, V as _sfc_main$n, aF as _sfc_main$o, _ as _sfc_main$d$1, n as _sfc_main$7$1, b5 as useActiveElement, J as useState } from './server.mjs';
4
+ import { p as provideDashboardContext, u as useDashboard$1, a as useResizable, b as _sfc_main$e, _ as _sfc_main$1$1 } from './DashboardSidebarToggle-8EpBhX0R.mjs';
5
+ import { dm as defu } from '../nitro/nitro.mjs';
6
+ import { _ as _sfc_main$d } from './Slideover-D270EZZD.mjs';
7
+ import { _ as _sfc_main$c } from './Modal-pSDlXzT3.mjs';
8
8
  import { DrawerRootNested, DrawerRoot, DrawerTrigger, DrawerPortal, DrawerOverlay, DrawerContent, DrawerHandle, DrawerTitle, DrawerDescription, DrawerClose } from 'vaul-vue';
9
- import { _ as _sfc_main$e } from './Tooltip-BOazooWP.mjs';
10
- import { _ as _sfc_main$a, u as useSettingsNav } from './useSettingsNav-C3O866KC.mjs';
11
- import { u as useOpenInIde, I as IDE_METHOD_LABELS, V as VSCODE_SCHEME_LABELS, J as JETBRAINS_PRODUCTS } from './useOpenInIde-4GFf-kdi.mjs';
12
- import { g as getEstimateSize, L as ListboxItem_default, a as ListboxItemIndicator_default, b as ListboxRoot_default, c as ListboxFilter_default, f as ListboxContent_default, d as ListboxVirtualizer_default, e as ListboxGroup_default, h as injectListboxGroupContext } from './virtualizer-Cd1hhlxC.mjs';
9
+ import { _ as _sfc_main$f } from './Tooltip-Dv4htNP6.mjs';
10
+ import { _ as _sfc_main$b } from './NavigationMenu-cqpt11Ce.mjs';
11
+ import { u as useSettingsNav } from './useSettingsNav-DfnOFlR_.mjs';
12
+ import { u as useOpenInIde, I as IDE_METHOD_LABELS, V as VSCODE_SCHEME_LABELS, J as JETBRAINS_PRODUCTS } from './useOpenInIde-DolN3bZ5.mjs';
13
+ import { g as getEstimateSize, L as ListboxItem_default, a as ListboxItemIndicator_default, b as ListboxRoot_default, c as ListboxFilter_default, d as ListboxContent_default, e as ListboxVirtualizer_default, f as ListboxGroup_default, _ as _sfc_main$r, i as injectListboxGroupContext } from './SelectMenu-XLVBEa11.mjs';
13
14
  import { useFuse } from '@vueuse/integrations/useFuse';
14
- import { a as __nuxt_component_9, _ as __nuxt_component_2 } from './HelpHint-DrcIv-Oj.mjs';
15
- import { _ as _sfc_main$f } from './FormField-B0HKsdMd.mjs';
16
- import { _ as _sfc_main$g } from './Select-CUqj50wi.mjs';
17
- import { _ as _sfc_main$h } from './Switch-CgUioOYB.mjs';
18
- import { _ as _sfc_main$i } from './Separator-CR4WcEKD.mjs';
19
- import { _ as _sfc_main$j } from './Alert-C4xq8lao.mjs';
20
- import { u as useFetch } from './fetch-B4FwBOzu.mjs';
15
+ import { a as __nuxt_component_9, _ as __nuxt_component_2 } from './HelpHint-DjGrGFA7.mjs';
16
+ import { _ as _sfc_main$g } from './FormField-e7OnSKPM.mjs';
17
+ import { _ as _sfc_main$h } from './Select-CVctwpib.mjs';
18
+ import { _ as _sfc_main$i } from './Switch-8zWfwI5B.mjs';
19
+ import { _ as _sfc_main$j } from './Separator-CR4WcEKD.mjs';
20
+ import { _ as _sfc_main$q } from './Alert-C4xq8lao.mjs';
21
+ import { _ as __nuxt_component_4$1 } from './EmptyState-DC2q_7TD.mjs';
22
+ import { u as useFetch } from './fetch-BQg_fhX0.mjs';
23
+ import { e as errorMessage } from './index-BOK1aJk9.mjs';
21
24
  import 'vue-router';
22
25
  import '@iconify/vue';
23
26
  import 'tailwindcss/colors';
@@ -50,6 +53,7 @@ import 'highlight.js/lib/languages/typescript';
50
53
  import 'highlight.js/lib/languages/xml';
51
54
  import 'highlight.js/lib/languages/yaml';
52
55
  import 'fflate';
56
+ import 'zod';
53
57
  import 'pixelmatch';
54
58
  import 'sharp';
55
59
  import '@anthropic-ai/sdk';
@@ -74,17 +78,17 @@ import 'consola';
74
78
  import 'node:url';
75
79
  import '@iconify/utils';
76
80
  import './isValueEqualOrExist-D2qw9YEr.mjs';
77
- import './settings-metadata-DrEqWcW-.mjs';
81
+ import './settings-metadata-DRv9VveS.mjs';
78
82
  import './help-content-C876a9WD.mjs';
79
83
  import './useIsDesktop-BS13spVj.mjs';
80
- import './handleAndDispatchCustomEvent-Bk_AVSSo.mjs';
81
84
  import './useFormControl-CZ9So7iX.mjs';
82
- import './VisuallyHiddenInput-D6kBJxVd.mjs';
85
+ import './VisuallyHiddenInput-BHvzNumK.mjs';
86
+ import './handleAndDispatchCustomEvent-Bk_AVSSo.mjs';
83
87
  import '@tanstack/vue-virtual';
84
- import './useCopy-CeKWgHyT.mjs';
85
88
  import './Label-DYDR1Oeh.mjs';
86
89
  import './useForwardScopeId-D0ameaSU.mjs';
87
90
  import '@vue/shared';
91
+ import 'date-fns';
88
92
 
89
93
  var ListboxGroupLabel_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
90
94
  __name: "ListboxGroupLabel",
@@ -118,7 +122,7 @@ var ListboxGroupLabel_default = ListboxGroupLabel_vue_vue_type_script_setup_true
118
122
  const theme$5 = {
119
123
  "base": "fixed inset-0 flex overflow-hidden"
120
124
  };
121
- const _sfc_main$9 = {
125
+ const _sfc_main$a = {
122
126
  __name: "UDashboardGroup",
123
127
  __ssrInlineRender: true,
124
128
  props: {
@@ -176,11 +180,11 @@ const _sfc_main$9 = {
176
180
  };
177
181
  }
178
182
  };
179
- const _sfc_setup$9 = _sfc_main$9.setup;
180
- _sfc_main$9.setup = (props, ctx) => {
183
+ const _sfc_setup$a = _sfc_main$a.setup;
184
+ _sfc_main$a.setup = (props, ctx) => {
181
185
  const ssrContext = useSSRContext();
182
186
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/DashboardGroup.vue");
183
- return _sfc_setup$9 ? _sfc_setup$9(props, ctx) : void 0;
187
+ return _sfc_setup$a ? _sfc_setup$a(props, ctx) : void 0;
184
188
  };
185
189
  const theme$4 = {
186
190
  "slots": {
@@ -327,7 +331,7 @@ const theme$4 = {
327
331
  }
328
332
  ]
329
333
  };
330
- const _sfc_main$8 = {
334
+ const _sfc_main$9 = {
331
335
  __name: "UDrawer",
332
336
  __ssrInlineRender: true,
333
337
  props: {
@@ -1185,11 +1189,11 @@ const _sfc_main$8 = {
1185
1189
  };
1186
1190
  }
1187
1191
  };
1188
- const _sfc_setup$8 = _sfc_main$8.setup;
1189
- _sfc_main$8.setup = (props, ctx) => {
1192
+ const _sfc_setup$9 = _sfc_main$9.setup;
1193
+ _sfc_main$9.setup = (props, ctx) => {
1190
1194
  const ssrContext = useSSRContext();
1191
1195
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/Drawer.vue");
1192
- return _sfc_setup$8 ? _sfc_setup$8(props, ctx) : void 0;
1196
+ return _sfc_setup$9 ? _sfc_setup$9(props, ctx) : void 0;
1193
1197
  };
1194
1198
  const theme$3 = {
1195
1199
  "slots": {
@@ -1233,7 +1237,7 @@ function useRuntimeHook(name, fn) {
1233
1237
  const unregister = nuxtApp.hook(name, fn);
1234
1238
  onScopeDispose(unregister);
1235
1239
  }
1236
- const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1240
+ const _sfc_main$8 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1237
1241
  __name: "UDashboardSidebar",
1238
1242
  __ssrInlineRender: true,
1239
1243
  props: /* @__PURE__ */ mergeModels({
@@ -1294,9 +1298,9 @@ const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1294
1298
  side: props.side
1295
1299
  }));
1296
1300
  const Menu = computed(() => ({
1297
- slideover: _sfc_main$c,
1298
- modal: _sfc_main$b,
1299
- drawer: _sfc_main$8
1301
+ slideover: _sfc_main$d,
1302
+ modal: _sfc_main$c,
1303
+ drawer: _sfc_main$9
1300
1304
  })[props.mode]);
1301
1305
  const menuProps = toRef(() => defu(props.menu, {}, props.mode === "modal" ? { fullscreen: true, transition: false } : props.mode === "slideover" ? { side: "left" } : {}));
1302
1306
  function toggleOpen() {
@@ -1313,7 +1317,7 @@ const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1313
1317
  ui: ui.value
1314
1318
  }, () => {
1315
1319
  if (unref(props).toggle) {
1316
- _push2(ssrRenderComponent(_sfc_main$d, mergeProps(typeof unref(props).toggle === "object" ? unref(props).toggle : {}, {
1320
+ _push2(ssrRenderComponent(_sfc_main$e, mergeProps(typeof unref(props).toggle === "object" ? unref(props).toggle : {}, {
1317
1321
  side: unref(props).toggleSide,
1318
1322
  "data-slot": "toggle",
1319
1323
  class: ui.value.toggle({ class: unref(props).ui?.toggle, toggleSide: unref(props).toggleSide })
@@ -1329,7 +1333,7 @@ const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1329
1333
  toggle: toggleOpen,
1330
1334
  ui: ui.value
1331
1335
  }, () => [
1332
- unref(props).toggle ? (openBlock(), createBlock(_sfc_main$d, mergeProps({ key: 0 }, typeof unref(props).toggle === "object" ? unref(props).toggle : {}, {
1336
+ unref(props).toggle ? (openBlock(), createBlock(_sfc_main$e, mergeProps({ key: 0 }, typeof unref(props).toggle === "object" ? unref(props).toggle : {}, {
1333
1337
  side: unref(props).toggleSide,
1334
1338
  "data-slot": "toggle",
1335
1339
  class: ui.value.toggle({ class: unref(props).ui?.toggle, toggleSide: unref(props).toggleSide })
@@ -1534,11 +1538,11 @@ const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1534
1538
  };
1535
1539
  }
1536
1540
  });
1537
- const _sfc_setup$7 = _sfc_main$7.setup;
1538
- _sfc_main$7.setup = (props, ctx) => {
1541
+ const _sfc_setup$8 = _sfc_main$8.setup;
1542
+ _sfc_main$8.setup = (props, ctx) => {
1539
1543
  const ssrContext = useSSRContext();
1540
1544
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/DashboardSidebar.vue");
1541
- return _sfc_setup$7 ? _sfc_setup$7(props, ctx) : void 0;
1545
+ return _sfc_setup$8 ? _sfc_setup$8(props, ctx) : void 0;
1542
1546
  };
1543
1547
  const theme$2 = {
1544
1548
  "slots": {
@@ -1555,7 +1559,7 @@ const theme$2 = {
1555
1559
  }
1556
1560
  }
1557
1561
  };
1558
- const _sfc_main$6 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1562
+ const _sfc_main$7 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1559
1563
  __name: "UDashboardSearchButton",
1560
1564
  __ssrInlineRender: true,
1561
1565
  props: {
@@ -1727,7 +1731,7 @@ const _sfc_main$6 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1727
1731
  _: 3
1728
1732
  }, _parent));
1729
1733
  if (unref(props).collapsed && unref(props).tooltip) {
1730
- _push(ssrRenderComponent(_sfc_main$e, mergeProps({
1734
+ _push(ssrRenderComponent(_sfc_main$f, mergeProps({
1731
1735
  text: unref(props).label || unref(t)("dashboardSearchButton.label")
1732
1736
  }, tooltipProps.value), {
1733
1737
  default: withCtx((_, _push2, _parent2, _scopeId) => {
@@ -1748,13 +1752,13 @@ const _sfc_main$6 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
1748
1752
  };
1749
1753
  }
1750
1754
  });
1751
- const _sfc_setup$6 = _sfc_main$6.setup;
1752
- _sfc_main$6.setup = (props, ctx) => {
1755
+ const _sfc_setup$7 = _sfc_main$7.setup;
1756
+ _sfc_main$7.setup = (props, ctx) => {
1753
1757
  const ssrContext = useSSRContext();
1754
1758
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/DashboardSearchButton.vue");
1755
- return _sfc_setup$6 ? _sfc_setup$6(props, ctx) : void 0;
1759
+ return _sfc_setup$7 ? _sfc_setup$7(props, ctx) : void 0;
1756
1760
  };
1757
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
1761
+ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
1758
1762
  __name: "UserMenu",
1759
1763
  __ssrInlineRender: true,
1760
1764
  props: {
@@ -1805,7 +1809,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
1805
1809
  const items = computed(() => {
1806
1810
  const configurationMenuItems = [];
1807
1811
  if (!config.public.authEnabled || authState.value.authenticated && authState.value.user?.role === "administrator") {
1808
- configurationMenuItems.push(...settingsNav.value);
1812
+ configurationMenuItems.push(...settingsNav.value.flat());
1809
1813
  }
1810
1814
  const baseItems = [
1811
1815
  configurationMenuItems,
@@ -1986,13 +1990,13 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
1986
1990
  };
1987
1991
  }
1988
1992
  });
1989
- const _sfc_setup$5 = _sfc_main$5.setup;
1990
- _sfc_main$5.setup = (props, ctx) => {
1993
+ const _sfc_setup$6 = _sfc_main$6.setup;
1994
+ _sfc_main$6.setup = (props, ctx) => {
1991
1995
  const ssrContext = useSSRContext();
1992
1996
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/layout/UserMenu.vue");
1993
- return _sfc_setup$5 ? _sfc_setup$5(props, ctx) : void 0;
1997
+ return _sfc_setup$6 ? _sfc_setup$6(props, ctx) : void 0;
1994
1998
  };
1995
- const __nuxt_component_4 = Object.assign(_sfc_main$5, { __name: "UserMenu" });
1999
+ const __nuxt_component_4 = Object.assign(_sfc_main$6, { __name: "UserMenu" });
1996
2000
  const htmlEscapes = {
1997
2001
  "&": "&",
1998
2002
  "<": "&lt;",
@@ -2219,7 +2223,7 @@ const theme$1 = {
2219
2223
  "size": "md"
2220
2224
  }
2221
2225
  };
2222
- const _sfc_main$4 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2226
+ const _sfc_main$5 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
2223
2227
  __name: "UCommandPalette",
2224
2228
  __ssrInlineRender: true,
2225
2229
  props: /* @__PURE__ */ mergeModels({
@@ -3787,11 +3791,11 @@ const _sfc_main$4 = /* @__PURE__ */ Object.assign({ inheritAttrs: false }, {
3787
3791
  };
3788
3792
  }
3789
3793
  });
3790
- const _sfc_setup$4 = _sfc_main$4.setup;
3791
- _sfc_main$4.setup = (props, ctx) => {
3794
+ const _sfc_setup$5 = _sfc_main$5.setup;
3795
+ _sfc_main$5.setup = (props, ctx) => {
3792
3796
  const ssrContext = useSSRContext();
3793
3797
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/CommandPalette.vue");
3794
- return _sfc_setup$4 ? _sfc_setup$4(props, ctx) : void 0;
3798
+ return _sfc_setup$5 ? _sfc_setup$5(props, ctx) : void 0;
3795
3799
  };
3796
3800
  const theme = {
3797
3801
  "slots": {
@@ -4029,7 +4033,7 @@ function defineShortcuts(config, options = {}) {
4029
4033
  const chainPrefixes = computed(() => new Set(chainedShortcuts.value.map((s) => s.key.split("-")[0])));
4030
4034
  return useEventListener("keydown", onKeyDown);
4031
4035
  }
4032
- const _sfc_main$3 = {
4036
+ const _sfc_main$4 = {
4033
4037
  __name: "UDashboardSearch",
4034
4038
  __ssrInlineRender: true,
4035
4039
  props: /* @__PURE__ */ mergeModels({
@@ -4158,7 +4162,7 @@ const _sfc_main$3 = {
4158
4162
  commandPaletteRef
4159
4163
  });
4160
4164
  return (_ctx, _push, _parent, _attrs) => {
4161
- _push(ssrRenderComponent(_sfc_main$b, mergeProps({
4165
+ _push(ssrRenderComponent(_sfc_main$c, mergeProps({
4162
4166
  open: open.value,
4163
4167
  "onUpdate:open": ($event) => open.value = $event,
4164
4168
  title: unref(props).title || unref(t)("dashboardSearch.title"),
@@ -4170,7 +4174,7 @@ const _sfc_main$3 = {
4170
4174
  content: withCtx((contentData, _push2, _parent2, _scopeId) => {
4171
4175
  if (_push2) {
4172
4176
  ssrRenderSlot(_ctx.$slots, "content", contentData, () => {
4173
- _push2(ssrRenderComponent(_sfc_main$4, mergeProps({
4177
+ _push2(ssrRenderComponent(_sfc_main$5, mergeProps({
4174
4178
  ref_key: "commandPaletteRef",
4175
4179
  ref: commandPaletteRef,
4176
4180
  "search-term": searchTerm.value,
@@ -4202,7 +4206,7 @@ const _sfc_main$3 = {
4202
4206
  } else {
4203
4207
  return [
4204
4208
  renderSlot(_ctx.$slots, "content", contentData, () => [
4205
- createVNode(_sfc_main$4, mergeProps({
4209
+ createVNode(_sfc_main$5, mergeProps({
4206
4210
  ref_key: "commandPaletteRef",
4207
4211
  ref: commandPaletteRef,
4208
4212
  "search-term": searchTerm.value,
@@ -4233,13 +4237,13 @@ const _sfc_main$3 = {
4233
4237
  };
4234
4238
  }
4235
4239
  };
4236
- const _sfc_setup$3 = _sfc_main$3.setup;
4237
- _sfc_main$3.setup = (props, ctx) => {
4240
+ const _sfc_setup$4 = _sfc_main$4.setup;
4241
+ _sfc_main$4.setup = (props, ctx) => {
4238
4242
  const ssrContext = useSSRContext();
4239
4243
  (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("../../node_modules/@nuxt/ui/dist/runtime/components/DashboardSearch.vue");
4240
- return _sfc_setup$3 ? _sfc_setup$3(props, ctx) : void 0;
4244
+ return _sfc_setup$4 ? _sfc_setup$4(props, ctx) : void 0;
4241
4245
  };
4242
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
4246
+ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
4243
4247
  __name: "OpenInIdeSettingsModal",
4244
4248
  __ssrInlineRender: true,
4245
4249
  setup(__props) {
@@ -4274,15 +4278,15 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
4274
4278
  const projectRoot = mapEntry("projectRoots");
4275
4279
  const projectJbName = mapEntry("jetbrainsProjectNames");
4276
4280
  return (_ctx, _push, _parent, _attrs) => {
4277
- const _component_UModal = _sfc_main$b;
4281
+ const _component_UModal = _sfc_main$c;
4278
4282
  const _component_UIcon = _sfc_main$p;
4279
4283
  const _component_HelpHint = __nuxt_component_2;
4280
- const _component_UFormField = _sfc_main$f;
4281
- const _component_USelect = _sfc_main$g;
4284
+ const _component_UFormField = _sfc_main$g;
4285
+ const _component_USelect = _sfc_main$h;
4282
4286
  const _component_UInput = _sfc_main$d$1;
4283
- const _component_USwitch = _sfc_main$h;
4284
- const _component_USeparator = _sfc_main$i;
4285
- const _component_UAlert = _sfc_main$j;
4287
+ const _component_USwitch = _sfc_main$i;
4288
+ const _component_USeparator = _sfc_main$j;
4289
+ const _component_UAlert = _sfc_main$q;
4286
4290
  const _component_DocLink = __nuxt_component_9;
4287
4291
  const _component_UButton = _sfc_main$k;
4288
4292
  _push(ssrRenderComponent(_component_UModal, mergeProps({
@@ -4774,13 +4778,539 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
4774
4778
  };
4775
4779
  }
4776
4780
  });
4781
+ const _sfc_setup$3 = _sfc_main$3.setup;
4782
+ _sfc_main$3.setup = (props, ctx) => {
4783
+ const ssrContext = useSSRContext();
4784
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/shared/OpenInIdeSettingsModal.vue");
4785
+ return _sfc_setup$3 ? _sfc_setup$3(props, ctx) : void 0;
4786
+ };
4787
+ const __nuxt_component_7 = Object.assign(_sfc_main$3, { __name: "OpenInIdeSettingsModal" });
4788
+ function useDesktopImportQueue() {
4789
+ const files = useState("desktop-import-files", () => []);
4790
+ const open = useState("desktop-import-open", () => false);
4791
+ function addFiles(paths) {
4792
+ const zips = paths.filter((p) => p.toLowerCase().endsWith(".zip"));
4793
+ if (zips.length === 0) return;
4794
+ files.value = [.../* @__PURE__ */ new Set([...files.value, ...zips])];
4795
+ open.value = true;
4796
+ }
4797
+ function removeFile(path) {
4798
+ files.value = files.value.filter((p) => p !== path);
4799
+ }
4800
+ function clear() {
4801
+ files.value = [];
4802
+ }
4803
+ return { files, open, addFiles, removeFile, clear };
4804
+ }
4805
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
4806
+ __name: "DesktopImportModal",
4807
+ __ssrInlineRender: true,
4808
+ setup(__props) {
4809
+ const { files, open, removeFile, clear } = useDesktopImportQueue();
4810
+ const {
4811
+ data: projects,
4812
+ execute: loadProjects,
4813
+ status: projectsStatus
4814
+ } = useFetch(
4815
+ "/api/projects/menu",
4816
+ { immediate: false, default: () => [] },
4817
+ "$GNlDm3l-E3"
4818
+ /* nuxt-injected */
4819
+ );
4820
+ watch(open, (value) => {
4821
+ if (value && projects.value.length === 0) void loadProjects();
4822
+ });
4823
+ const projectName = ref();
4824
+ const label = ref("");
4825
+ const combine = ref(true);
4826
+ const importing = ref(false);
4827
+ const outcomes = reactive({});
4828
+ const projectItems = computed(() => projects.value.map((p) => ({ label: p.label || p.name, value: p.name })));
4829
+ function fileName(path) {
4830
+ return path.split(/[\\/]/).pop() || path;
4831
+ }
4832
+ function randomGroup() {
4833
+ const bytes = new Uint8Array(32);
4834
+ crypto.getRandomValues(bytes);
4835
+ return Array.from(bytes, (b) => b.toString(16).padStart(2, "0")).join("");
4836
+ }
4837
+ async function importAll() {
4838
+ if (!projectName.value || importing.value || files.value.length === 0) return;
4839
+ importing.value = true;
4840
+ const group = combine.value && files.value.length > 1 ? randomGroup() : void 0;
4841
+ try {
4842
+ for (const path of [...files.value]) {
4843
+ const current = outcomes[path]?.status;
4844
+ if (current === "imported" || current === "duplicate") continue;
4845
+ outcomes[path] = { status: "importing" };
4846
+ try {
4847
+ const result = await $fetch(
4848
+ "/api/desktop/import-local",
4849
+ {
4850
+ method: "POST",
4851
+ body: {
4852
+ path,
4853
+ projectName: projectName.value,
4854
+ label: label.value.trim() || void 0,
4855
+ importGroup: group
4856
+ }
4857
+ }
4858
+ );
4859
+ outcomes[path] = { status: result.status, testRunId: result.testRunId };
4860
+ } catch (error) {
4861
+ outcomes[path] = { status: "error", message: errorMessage(error) };
4862
+ }
4863
+ }
4864
+ } finally {
4865
+ importing.value = false;
4866
+ }
4867
+ }
4868
+ const allDone = computed(
4869
+ () => files.value.length > 0 && files.value.every((p) => outcomes[p]?.status === "imported" || outcomes[p]?.status === "duplicate")
4870
+ );
4871
+ watch(open, (value) => {
4872
+ if (!value && allDone.value) {
4873
+ clear();
4874
+ for (const key of Object.keys(outcomes)) delete outcomes[key];
4875
+ }
4876
+ });
4877
+ function outcomeBadge(path) {
4878
+ const outcome = outcomes[path];
4879
+ if (!outcome) return null;
4880
+ switch (outcome.status) {
4881
+ case "importing":
4882
+ return { label: "Importing…", color: "info" };
4883
+ case "imported":
4884
+ return { label: "Imported", color: "success" };
4885
+ case "duplicate":
4886
+ return { label: "Already imported", color: "neutral" };
4887
+ case "error":
4888
+ return { label: "Failed", color: "error" };
4889
+ }
4890
+ }
4891
+ return (_ctx, _push, _parent, _attrs) => {
4892
+ const _component_UModal = _sfc_main$c;
4893
+ const _component_UIcon = _sfc_main$p;
4894
+ const _component_UBadge = _sfc_main$7$1;
4895
+ const _component_UButton = _sfc_main$k;
4896
+ const _component_EmptyState = __nuxt_component_4$1;
4897
+ const _component_UFormField = _sfc_main$g;
4898
+ const _component_USelectMenu = _sfc_main$r;
4899
+ const _component_UInput = _sfc_main$d$1;
4900
+ const _component_USwitch = _sfc_main$i;
4901
+ _push(ssrRenderComponent(_component_UModal, mergeProps({
4902
+ open: unref(open),
4903
+ "onUpdate:open": ($event) => isRef(open) ? open.value = $event : null,
4904
+ ui: { content: "max-w-xl" }
4905
+ }, _attrs), {
4906
+ header: withCtx((_, _push2, _parent2, _scopeId) => {
4907
+ if (_push2) {
4908
+ _push2(`<div class="flex items-center gap-2"${_scopeId}>`);
4909
+ _push2(ssrRenderComponent(_component_UIcon, {
4910
+ name: "i-lucide-file-input",
4911
+ class: "size-5 text-primary"
4912
+ }, null, _parent2, _scopeId));
4913
+ _push2(`<h2 class="text-base font-semibold"${_scopeId}>Import archives</h2>`);
4914
+ _push2(ssrRenderComponent(_component_UBadge, {
4915
+ color: "neutral",
4916
+ variant: "subtle",
4917
+ size: "sm"
4918
+ }, {
4919
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
4920
+ if (_push3) {
4921
+ _push3(`${ssrInterpolate(unref(files).length)}`);
4922
+ } else {
4923
+ return [
4924
+ createTextVNode(toDisplayString(unref(files).length), 1)
4925
+ ];
4926
+ }
4927
+ }),
4928
+ _: 1
4929
+ }, _parent2, _scopeId));
4930
+ _push2(`</div>`);
4931
+ } else {
4932
+ return [
4933
+ createVNode("div", { class: "flex items-center gap-2" }, [
4934
+ createVNode(_component_UIcon, {
4935
+ name: "i-lucide-file-input",
4936
+ class: "size-5 text-primary"
4937
+ }),
4938
+ createVNode("h2", { class: "text-base font-semibold" }, "Import archives"),
4939
+ createVNode(_component_UBadge, {
4940
+ color: "neutral",
4941
+ variant: "subtle",
4942
+ size: "sm"
4943
+ }, {
4944
+ default: withCtx(() => [
4945
+ createTextVNode(toDisplayString(unref(files).length), 1)
4946
+ ]),
4947
+ _: 1
4948
+ })
4949
+ ])
4950
+ ];
4951
+ }
4952
+ }),
4953
+ body: withCtx((_, _push2, _parent2, _scopeId) => {
4954
+ if (_push2) {
4955
+ _push2(`<div class="space-y-4"${_scopeId}><p class="text-sm text-muted"${_scopeId}> Playwright blob reports become complete runs; bare traces become single executions. Re-importing the same archive is a no-op, and imports never trigger notifications or regression signals. </p><div class="space-y-2"${_scopeId}><!--[-->`);
4956
+ ssrRenderList(unref(files), (path) => {
4957
+ _push2(`<div class="flex items-center gap-2 rounded-md border border-default p-2"${_scopeId}>`);
4958
+ _push2(ssrRenderComponent(_component_UIcon, {
4959
+ name: "i-lucide-file-archive",
4960
+ class: "size-4 text-gray-400 shrink-0"
4961
+ }, null, _parent2, _scopeId));
4962
+ _push2(`<div class="min-w-0 flex-1"${_scopeId}><p class="text-sm truncate"${_scopeId}>${ssrInterpolate(fileName(path))}</p><p class="text-xs text-muted truncate"${_scopeId}>${ssrInterpolate(path)}</p>`);
4963
+ if (unref(outcomes)[path]?.message) {
4964
+ _push2(`<p class="text-xs text-error"${_scopeId}>${ssrInterpolate(unref(outcomes)[path]?.message)}</p>`);
4965
+ } else {
4966
+ _push2(`<!---->`);
4967
+ }
4968
+ _push2(`</div>`);
4969
+ if (outcomeBadge(path)) {
4970
+ _push2(ssrRenderComponent(_component_UBadge, {
4971
+ color: outcomeBadge(path).color,
4972
+ variant: "subtle",
4973
+ size: "sm"
4974
+ }, {
4975
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
4976
+ if (_push3) {
4977
+ _push3(`${ssrInterpolate(outcomeBadge(path).label)}`);
4978
+ } else {
4979
+ return [
4980
+ createTextVNode(toDisplayString(outcomeBadge(path).label), 1)
4981
+ ];
4982
+ }
4983
+ }),
4984
+ _: 2
4985
+ }, _parent2, _scopeId));
4986
+ } else {
4987
+ _push2(`<!---->`);
4988
+ }
4989
+ if (unref(outcomes)[path]?.status === "imported" || unref(outcomes)[path]?.status === "duplicate") {
4990
+ _push2(ssrRenderComponent(_component_UButton, {
4991
+ to: `/test-runs/${unref(outcomes)[path]?.testRunId}`,
4992
+ size: "xs",
4993
+ color: "neutral",
4994
+ variant: "soft",
4995
+ onClick: ($event) => open.value = false
4996
+ }, {
4997
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
4998
+ if (_push3) {
4999
+ _push3(` View run `);
5000
+ } else {
5001
+ return [
5002
+ createTextVNode(" View run ")
5003
+ ];
5004
+ }
5005
+ }),
5006
+ _: 2
5007
+ }, _parent2, _scopeId));
5008
+ } else {
5009
+ _push2(ssrRenderComponent(_component_UButton, {
5010
+ icon: "i-lucide-x",
5011
+ size: "xs",
5012
+ color: "neutral",
5013
+ variant: "ghost",
5014
+ disabled: unref(importing),
5015
+ "aria-label": "Remove from import",
5016
+ onClick: ($event) => unref(removeFile)(path)
5017
+ }, null, _parent2, _scopeId));
5018
+ }
5019
+ _push2(`</div>`);
5020
+ });
5021
+ _push2(`<!--]-->`);
5022
+ if (unref(files).length === 0) {
5023
+ _push2(ssrRenderComponent(_component_EmptyState, {
5024
+ icon: "i-lucide-file-x",
5025
+ text: "Nothing to import"
5026
+ }, null, _parent2, _scopeId));
5027
+ } else {
5028
+ _push2(`<!---->`);
5029
+ }
5030
+ _push2(`</div>`);
5031
+ _push2(ssrRenderComponent(_component_UFormField, {
5032
+ label: "Import into project",
5033
+ name: "projectName"
5034
+ }, {
5035
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
5036
+ if (_push3) {
5037
+ _push3(ssrRenderComponent(_component_USelectMenu, {
5038
+ modelValue: unref(projectName),
5039
+ "onUpdate:modelValue": ($event) => isRef(projectName) ? projectName.value = $event : null,
5040
+ items: unref(projectItems),
5041
+ "value-key": "value",
5042
+ loading: unref(projectsStatus) === "pending",
5043
+ placeholder: "Select a project…",
5044
+ class: "w-full",
5045
+ disabled: unref(importing)
5046
+ }, null, _parent3, _scopeId2));
5047
+ } else {
5048
+ return [
5049
+ createVNode(_component_USelectMenu, {
5050
+ modelValue: unref(projectName),
5051
+ "onUpdate:modelValue": ($event) => isRef(projectName) ? projectName.value = $event : null,
5052
+ items: unref(projectItems),
5053
+ "value-key": "value",
5054
+ loading: unref(projectsStatus) === "pending",
5055
+ placeholder: "Select a project…",
5056
+ class: "w-full",
5057
+ disabled: unref(importing)
5058
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "items", "loading", "disabled"])
5059
+ ];
5060
+ }
5061
+ }),
5062
+ _: 1
5063
+ }, _parent2, _scopeId));
5064
+ _push2(`<div class="grid grid-cols-2 gap-3"${_scopeId}>`);
5065
+ _push2(ssrRenderComponent(_component_UFormField, {
5066
+ label: "Label",
5067
+ name: "label",
5068
+ description: "Optional run label."
5069
+ }, {
5070
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
5071
+ if (_push3) {
5072
+ _push3(ssrRenderComponent(_component_UInput, {
5073
+ modelValue: unref(label),
5074
+ "onUpdate:modelValue": ($event) => isRef(label) ? label.value = $event : null,
5075
+ disabled: unref(importing),
5076
+ class: "w-full"
5077
+ }, null, _parent3, _scopeId2));
5078
+ } else {
5079
+ return [
5080
+ createVNode(_component_UInput, {
5081
+ modelValue: unref(label),
5082
+ "onUpdate:modelValue": ($event) => isRef(label) ? label.value = $event : null,
5083
+ disabled: unref(importing),
5084
+ class: "w-full"
5085
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "disabled"])
5086
+ ];
5087
+ }
5088
+ }),
5089
+ _: 1
5090
+ }, _parent2, _scopeId));
5091
+ if (unref(files).length > 1) {
5092
+ _push2(ssrRenderComponent(_component_UFormField, {
5093
+ label: "Combine traces",
5094
+ name: "combine",
5095
+ description: "Gather dropped traces into one run."
5096
+ }, {
5097
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
5098
+ if (_push3) {
5099
+ _push3(ssrRenderComponent(_component_USwitch, {
5100
+ modelValue: unref(combine),
5101
+ "onUpdate:modelValue": ($event) => isRef(combine) ? combine.value = $event : null,
5102
+ disabled: unref(importing)
5103
+ }, null, _parent3, _scopeId2));
5104
+ } else {
5105
+ return [
5106
+ createVNode(_component_USwitch, {
5107
+ modelValue: unref(combine),
5108
+ "onUpdate:modelValue": ($event) => isRef(combine) ? combine.value = $event : null,
5109
+ disabled: unref(importing)
5110
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "disabled"])
5111
+ ];
5112
+ }
5113
+ }),
5114
+ _: 1
5115
+ }, _parent2, _scopeId));
5116
+ } else {
5117
+ _push2(`<!---->`);
5118
+ }
5119
+ _push2(`</div></div>`);
5120
+ } else {
5121
+ return [
5122
+ createVNode("div", { class: "space-y-4" }, [
5123
+ createVNode("p", { class: "text-sm text-muted" }, " Playwright blob reports become complete runs; bare traces become single executions. Re-importing the same archive is a no-op, and imports never trigger notifications or regression signals. "),
5124
+ createVNode("div", { class: "space-y-2" }, [
5125
+ (openBlock(true), createBlock(Fragment, null, renderList(unref(files), (path) => {
5126
+ return openBlock(), createBlock("div", {
5127
+ key: path,
5128
+ class: "flex items-center gap-2 rounded-md border border-default p-2"
5129
+ }, [
5130
+ createVNode(_component_UIcon, {
5131
+ name: "i-lucide-file-archive",
5132
+ class: "size-4 text-gray-400 shrink-0"
5133
+ }),
5134
+ createVNode("div", { class: "min-w-0 flex-1" }, [
5135
+ createVNode("p", { class: "text-sm truncate" }, toDisplayString(fileName(path)), 1),
5136
+ createVNode("p", { class: "text-xs text-muted truncate" }, toDisplayString(path), 1),
5137
+ unref(outcomes)[path]?.message ? (openBlock(), createBlock("p", {
5138
+ key: 0,
5139
+ class: "text-xs text-error"
5140
+ }, toDisplayString(unref(outcomes)[path]?.message), 1)) : createCommentVNode("", true)
5141
+ ]),
5142
+ outcomeBadge(path) ? (openBlock(), createBlock(_component_UBadge, {
5143
+ key: 0,
5144
+ color: outcomeBadge(path).color,
5145
+ variant: "subtle",
5146
+ size: "sm"
5147
+ }, {
5148
+ default: withCtx(() => [
5149
+ createTextVNode(toDisplayString(outcomeBadge(path).label), 1)
5150
+ ]),
5151
+ _: 2
5152
+ }, 1032, ["color"])) : createCommentVNode("", true),
5153
+ unref(outcomes)[path]?.status === "imported" || unref(outcomes)[path]?.status === "duplicate" ? (openBlock(), createBlock(_component_UButton, {
5154
+ key: 1,
5155
+ to: `/test-runs/${unref(outcomes)[path]?.testRunId}`,
5156
+ size: "xs",
5157
+ color: "neutral",
5158
+ variant: "soft",
5159
+ onClick: ($event) => open.value = false
5160
+ }, {
5161
+ default: withCtx(() => [
5162
+ createTextVNode(" View run ")
5163
+ ]),
5164
+ _: 1
5165
+ }, 8, ["to", "onClick"])) : (openBlock(), createBlock(_component_UButton, {
5166
+ key: 2,
5167
+ icon: "i-lucide-x",
5168
+ size: "xs",
5169
+ color: "neutral",
5170
+ variant: "ghost",
5171
+ disabled: unref(importing),
5172
+ "aria-label": "Remove from import",
5173
+ onClick: ($event) => unref(removeFile)(path)
5174
+ }, null, 8, ["disabled", "onClick"]))
5175
+ ]);
5176
+ }), 128)),
5177
+ unref(files).length === 0 ? (openBlock(), createBlock(_component_EmptyState, {
5178
+ key: 0,
5179
+ icon: "i-lucide-file-x",
5180
+ text: "Nothing to import"
5181
+ })) : createCommentVNode("", true)
5182
+ ]),
5183
+ createVNode(_component_UFormField, {
5184
+ label: "Import into project",
5185
+ name: "projectName"
5186
+ }, {
5187
+ default: withCtx(() => [
5188
+ createVNode(_component_USelectMenu, {
5189
+ modelValue: unref(projectName),
5190
+ "onUpdate:modelValue": ($event) => isRef(projectName) ? projectName.value = $event : null,
5191
+ items: unref(projectItems),
5192
+ "value-key": "value",
5193
+ loading: unref(projectsStatus) === "pending",
5194
+ placeholder: "Select a project…",
5195
+ class: "w-full",
5196
+ disabled: unref(importing)
5197
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "items", "loading", "disabled"])
5198
+ ]),
5199
+ _: 1
5200
+ }),
5201
+ createVNode("div", { class: "grid grid-cols-2 gap-3" }, [
5202
+ createVNode(_component_UFormField, {
5203
+ label: "Label",
5204
+ name: "label",
5205
+ description: "Optional run label."
5206
+ }, {
5207
+ default: withCtx(() => [
5208
+ createVNode(_component_UInput, {
5209
+ modelValue: unref(label),
5210
+ "onUpdate:modelValue": ($event) => isRef(label) ? label.value = $event : null,
5211
+ disabled: unref(importing),
5212
+ class: "w-full"
5213
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "disabled"])
5214
+ ]),
5215
+ _: 1
5216
+ }),
5217
+ unref(files).length > 1 ? (openBlock(), createBlock(_component_UFormField, {
5218
+ key: 0,
5219
+ label: "Combine traces",
5220
+ name: "combine",
5221
+ description: "Gather dropped traces into one run."
5222
+ }, {
5223
+ default: withCtx(() => [
5224
+ createVNode(_component_USwitch, {
5225
+ modelValue: unref(combine),
5226
+ "onUpdate:modelValue": ($event) => isRef(combine) ? combine.value = $event : null,
5227
+ disabled: unref(importing)
5228
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "disabled"])
5229
+ ]),
5230
+ _: 1
5231
+ })) : createCommentVNode("", true)
5232
+ ])
5233
+ ])
5234
+ ];
5235
+ }
5236
+ }),
5237
+ footer: withCtx((_, _push2, _parent2, _scopeId) => {
5238
+ if (_push2) {
5239
+ _push2(`<div class="flex items-center justify-end w-full gap-2"${_scopeId}>`);
5240
+ _push2(ssrRenderComponent(_component_UButton, {
5241
+ color: "neutral",
5242
+ variant: "ghost",
5243
+ onClick: ($event) => open.value = false
5244
+ }, {
5245
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
5246
+ if (_push3) {
5247
+ _push3(`Close`);
5248
+ } else {
5249
+ return [
5250
+ createTextVNode("Close")
5251
+ ];
5252
+ }
5253
+ }),
5254
+ _: 1
5255
+ }, _parent2, _scopeId));
5256
+ _push2(ssrRenderComponent(_component_UButton, {
5257
+ icon: "i-lucide-file-input",
5258
+ loading: unref(importing),
5259
+ disabled: !unref(projectName) || unref(files).length === 0 || unref(allDone),
5260
+ onClick: ($event) => importAll()
5261
+ }, {
5262
+ default: withCtx((_2, _push3, _parent3, _scopeId2) => {
5263
+ if (_push3) {
5264
+ _push3(` Import `);
5265
+ } else {
5266
+ return [
5267
+ createTextVNode(" Import ")
5268
+ ];
5269
+ }
5270
+ }),
5271
+ _: 1
5272
+ }, _parent2, _scopeId));
5273
+ _push2(`</div>`);
5274
+ } else {
5275
+ return [
5276
+ createVNode("div", { class: "flex items-center justify-end w-full gap-2" }, [
5277
+ createVNode(_component_UButton, {
5278
+ color: "neutral",
5279
+ variant: "ghost",
5280
+ onClick: ($event) => open.value = false
5281
+ }, {
5282
+ default: withCtx(() => [
5283
+ createTextVNode("Close")
5284
+ ]),
5285
+ _: 1
5286
+ }, 8, ["onClick"]),
5287
+ createVNode(_component_UButton, {
5288
+ icon: "i-lucide-file-input",
5289
+ loading: unref(importing),
5290
+ disabled: !unref(projectName) || unref(files).length === 0 || unref(allDone),
5291
+ onClick: ($event) => importAll()
5292
+ }, {
5293
+ default: withCtx(() => [
5294
+ createTextVNode(" Import ")
5295
+ ]),
5296
+ _: 1
5297
+ }, 8, ["loading", "disabled", "onClick"])
5298
+ ])
5299
+ ];
5300
+ }
5301
+ }),
5302
+ _: 1
5303
+ }, _parent));
5304
+ };
5305
+ }
5306
+ });
4777
5307
  const _sfc_setup$2 = _sfc_main$2.setup;
4778
5308
  _sfc_main$2.setup = (props, ctx) => {
4779
5309
  const ssrContext = useSSRContext();
4780
- (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/shared/OpenInIdeSettingsModal.vue");
5310
+ (ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/desktop/DesktopImportModal.vue");
4781
5311
  return _sfc_setup$2 ? _sfc_setup$2(props, ctx) : void 0;
4782
5312
  };
4783
- const __nuxt_component_7 = Object.assign(_sfc_main$2, { __name: "OpenInIdeSettingsModal" });
5313
+ const __nuxt_component_8 = Object.assign(_sfc_main$2, { __name: "DesktopImportModal" });
4784
5314
  const _sfc_main$1 = /* @__PURE__ */ defineComponent({
4785
5315
  __name: "ProjectsMenu",
4786
5316
  __ssrInlineRender: true,
@@ -4940,6 +5470,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4940
5470
  /* nuxt-injected */
4941
5471
  )), __temp = await __temp, __restore(), __temp);
4942
5472
  useDashboard();
5473
+ const { canSeeAdmin } = useAuth();
4943
5474
  const currentProjectId = computed(() => {
4944
5475
  const match = route.path.match(/^\/projects\/(\d+)/);
4945
5476
  return match?.[1] ? parseInt(match[1], 10) : null;
@@ -5011,6 +5542,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5011
5542
  open.value = false;
5012
5543
  }
5013
5544
  });
5545
+ if (canSeeAdmin.value) {
5546
+ bottomLinks.unshift({
5547
+ label: "Setup",
5548
+ icon: "i-lucide-rocket",
5549
+ to: "/setup",
5550
+ onSelect: () => {
5551
+ open.value = false;
5552
+ }
5553
+ });
5554
+ }
5014
5555
  bottomLinks.unshift({
5015
5556
  label: "API Docs",
5016
5557
  icon: "i-lucide-book-open",
@@ -5101,12 +5642,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5101
5642
  const pid = currentProjectId.value;
5102
5643
  const projectTabs = [
5103
5644
  ["test-runs", "Test runs", "i-lucide-play"],
5104
- ["failure-clusters", "Failure clusters", "i-lucide-layers"],
5105
- ["flaky-tests", "Flaky tests", "i-lucide-shuffle"],
5106
- ["performance", "Performance", "i-lucide-trending-up"],
5107
5645
  ["test-cases", "Test cases", "i-lucide-flask-conical"],
5108
5646
  ["compare", "Compare", "i-lucide-git-compare-arrows"],
5647
+ ["failure-clusters", "Failure clusters", "i-lucide-layers"],
5648
+ ["flaky-tests", "Flaky tests", "i-lucide-shuffle"],
5649
+ ["quarantine", "Quarantine", "i-lucide-shield-alert"],
5109
5650
  ["spec-health", "Spec health", "i-lucide-table-2"],
5651
+ ["performance", "Performance", "i-lucide-trending-up"],
5110
5652
  ["timeline", "Timeline", "i-lucide-git-commit-horizontal"]
5111
5653
  ];
5112
5654
  staticGroups.unshift({
@@ -5175,14 +5717,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5175
5717
  const appVersion = config.public.appVersion;
5176
5718
  useDemoReset();
5177
5719
  return (_ctx, _push, _parent, _attrs) => {
5178
- const _component_UDashboardGroup = _sfc_main$9;
5179
- const _component_UDashboardSidebar = _sfc_main$7;
5180
- const _component_UDashboardSearchButton = _sfc_main$6;
5181
- const _component_UNavigationMenu = _sfc_main$a;
5720
+ const _component_UDashboardGroup = _sfc_main$a;
5721
+ const _component_UDashboardSidebar = _sfc_main$8;
5722
+ const _component_UDashboardSearchButton = _sfc_main$7;
5723
+ const _component_UNavigationMenu = _sfc_main$b;
5182
5724
  const _component_UserMenu = __nuxt_component_4;
5183
5725
  const _component_ULink = _sfc_main$l;
5184
- const _component_UDashboardSearch = _sfc_main$3;
5726
+ const _component_UDashboardSearch = _sfc_main$4;
5185
5727
  const _component_OpenInIdeSettingsModal = __nuxt_component_7;
5728
+ const _component_DesktopImportModal = __nuxt_component_8;
5186
5729
  _push(ssrRenderComponent(_component_UDashboardGroup, mergeProps({
5187
5730
  unit: "rem",
5188
5731
  style: { "top": "var(--demo-banner-height, 0px)", "height": "calc(100dvh - var(--demo-banner-height, 0px))" }
@@ -5309,6 +5852,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5309
5852
  _push2(`<span id="main-content" tabindex="-1" class="sr-only"${_scopeId}>Main content</span>`);
5310
5853
  ssrRenderSlot(_ctx.$slots, "default", {}, null, _push2, _parent2, _scopeId);
5311
5854
  _push2(ssrRenderComponent(_component_OpenInIdeSettingsModal, null, null, _parent2, _scopeId));
5855
+ _push2(ssrRenderComponent(_component_DesktopImportModal, null, null, _parent2, _scopeId));
5312
5856
  } else {
5313
5857
  return [
5314
5858
  createVNode("a", {
@@ -5379,7 +5923,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5379
5923
  class: "sr-only"
5380
5924
  }, "Main content"),
5381
5925
  renderSlot(_ctx.$slots, "default"),
5382
- createVNode(_component_OpenInIdeSettingsModal)
5926
+ createVNode(_component_OpenInIdeSettingsModal),
5927
+ createVNode(_component_DesktopImportModal)
5383
5928
  ];
5384
5929
  }
5385
5930
  }),
@@ -5396,4 +5941,4 @@ _sfc_main.setup = (props, ctx) => {
5396
5941
  };
5397
5942
 
5398
5943
  export { _sfc_main as default };
5399
- //# sourceMappingURL=default-zvbFgDJG.mjs.map
5944
+ //# sourceMappingURL=default-CeyePZ5I.mjs.map