@piwitests/server 0.19.0 → 0.20.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 (418) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/{eptP4pGv.js → -f7BAm1H.js} +1 -1
  3. package/.output/public/_nuxt/{Bti38m-M.js → 4gYNA-d4.js} +1 -1
  4. package/.output/public/_nuxt/{CHEFCN8Q.js → 5A6ITZXj.js} +1 -1
  5. package/.output/public/_nuxt/{DoUy4UHi.js → 8PUUncmO.js} +2 -2
  6. package/.output/public/_nuxt/{DS636elg.js → A1pj0VnG.js} +1 -1
  7. package/.output/public/_nuxt/{B9WhzpKO.js → AbmKWFQQ.js} +1 -1
  8. package/.output/public/_nuxt/{rWNTSFD6.js → B3obW6cw.js} +3 -3
  9. package/.output/public/_nuxt/{Bu2aaVIY.js → B7FTvFWq.js} +1 -1
  10. package/.output/public/_nuxt/{CpjgB2aY.js → B8zkOmwo.js} +1 -1
  11. package/.output/public/_nuxt/B96M2gdj.js +1 -0
  12. package/.output/public/_nuxt/{FUXhyidq.js → B99fbi73.js} +1 -1
  13. package/.output/public/_nuxt/{DslPMqfa.js → B9OLmp0f.js} +1 -1
  14. package/.output/public/_nuxt/{BccXfBfI.js → BKkF4pPD.js} +1 -1
  15. package/.output/public/_nuxt/{DP8hfJ9h.js → BT3wGCTI.js} +1 -1
  16. package/.output/public/_nuxt/{B3B9Ii2A.js → BUa0V0Ly.js} +1 -1
  17. package/.output/public/_nuxt/{B3HO8kuh.js → BUkim3TM.js} +1 -1
  18. package/.output/public/_nuxt/{BVaxh6Nl.js → BVc14Ncz.js} +3 -3
  19. package/.output/public/_nuxt/{DW0xl3I6.js → BY0HxR3t.js} +1 -1
  20. package/.output/public/_nuxt/B_xAMWQS.js +2 -0
  21. package/.output/public/_nuxt/{C2_3mdPC.js → BdQoBaOv.js} +1 -1
  22. package/.output/public/_nuxt/{DT53RWbC.js → BdfhYr-u.js} +1 -1
  23. package/.output/public/_nuxt/{CtQBsNUb.js → BgRu_3tT.js} +1 -1
  24. package/.output/public/_nuxt/{SlIRLREZ.js → BiO7RBWb.js} +1 -1
  25. package/.output/public/_nuxt/BicAJ6U8.js +1 -0
  26. package/.output/public/_nuxt/{C7P1UCO2.js → Bm62iDV5.js} +1 -1
  27. package/.output/public/_nuxt/{CZfMdzfk.js → BmUfSNMV.js} +1 -1
  28. package/.output/public/_nuxt/{tvgqrYDd.js → Bnxf8nbZ.js} +1 -1
  29. package/.output/public/_nuxt/{ndShiWE8.js → Bow4tTR0.js} +1 -1
  30. package/.output/public/_nuxt/{D0HNloZ9.js → BrQEE053.js} +1 -1
  31. package/.output/public/_nuxt/{CV9-fTmY.js → BzRRzmwm.js} +1 -1
  32. package/.output/public/_nuxt/{DprVVyUQ.js → C0_yH0N7.js} +1 -1
  33. package/.output/public/_nuxt/{DLSrtpsA.js → C1gTN4Q8.js} +1 -1
  34. package/.output/public/_nuxt/{ClOqkAcc.js → C2hkrSey.js} +1 -1
  35. package/.output/public/_nuxt/{ZFiQCMUB.js → C8e1EbJI.js} +1 -1
  36. package/.output/public/_nuxt/{nv9-6vBK.js → CA9B2HE5.js} +1 -1
  37. package/.output/public/_nuxt/{KnfsST6Y.js → CAAwCT7H.js} +1 -1
  38. package/.output/public/_nuxt/{ybDYeNxd.js → CAvY22RE.js} +1 -1
  39. package/.output/public/_nuxt/{C5iG7O4O.js → CEfS4-oS.js} +1 -1
  40. package/.output/public/_nuxt/{Bp5ELvx9.js → CIoSMkpp.js} +1 -1
  41. package/.output/public/_nuxt/{C95YAaJq.js → CIrFl3MW.js} +1 -1
  42. package/.output/public/_nuxt/{DiOLdHBC.js → CJFtzlQ4.js} +1 -1
  43. package/.output/public/_nuxt/{BX9ZXe98.js → CNyV9YpI.js} +1 -1
  44. package/.output/public/_nuxt/CSJ-eOQM.js +1 -0
  45. package/.output/public/_nuxt/{fVcG504p.js → CTU1mrhq.js} +1 -1
  46. package/.output/public/_nuxt/{279D2RYp.js → CXEH9OPk.js} +1 -1
  47. package/.output/public/_nuxt/CahpB9Z2.js +5 -0
  48. package/.output/public/_nuxt/{B7NBP1C-.js → Cbh--1MW.js} +1 -1
  49. package/.output/public/_nuxt/CeG9pBAD.js +1 -0
  50. package/.output/public/_nuxt/{D55D4EYo.js → CeW8v31b.js} +1 -1
  51. package/.output/public/_nuxt/{BuMC3WjZ.js → CjPfj7ya.js} +1 -1
  52. package/.output/public/_nuxt/{HXerICAi.js → Cnsmicv2.js} +1 -1
  53. package/.output/public/_nuxt/{DgE2YE3R.js → CsLojMwR.js} +1 -1
  54. package/.output/public/_nuxt/{C9_jrmk9.js → Cus22Ud3.js} +2 -2
  55. package/.output/public/_nuxt/{DX-MDGb3.js → CwGWJbiy.js} +1 -1
  56. package/.output/public/_nuxt/{BJ0XQElc.js → Cx6gc2VW.js} +1 -1
  57. package/.output/public/_nuxt/{cHAnlQbv.js → CxyAzHr3.js} +1 -1
  58. package/.output/public/_nuxt/{BxCKKeYs.js → CzAPFPpL.js} +1 -1
  59. package/.output/public/_nuxt/{B33iXw77.js → D--H4jLI.js} +1 -1
  60. package/.output/public/_nuxt/D1POo6S4.js +10 -0
  61. package/.output/public/_nuxt/{BDicZ1gQ.js → D5tke0B5.js} +1 -1
  62. package/.output/public/_nuxt/D8nkF-OO.js +3 -0
  63. package/.output/public/_nuxt/{CzGyac8q.js → DA25RkyK.js} +1 -1
  64. package/.output/public/_nuxt/{CUtJobDm.js → DIB-5fUJ.js} +1 -1
  65. package/.output/public/_nuxt/{BPRffDuo.js → DJmoLeVt.js} +1 -1
  66. package/.output/public/_nuxt/{DGfAxLHV.js → DJxlKFGb.js} +1 -1
  67. package/.output/public/_nuxt/{81InBX9v.js → DMec-OLo.js} +1 -1
  68. package/.output/public/_nuxt/{CK_2LZBS.js → DPCxhHri.js} +1 -1
  69. package/.output/public/_nuxt/{Bn0YQDyy.js → DSqHUrvO.js} +1 -1
  70. package/.output/public/_nuxt/{BqV0l12c.js → DabzhQB1.js} +1 -1
  71. package/.output/public/_nuxt/{BfTuX0wq.js → DdwHkKfV.js} +1 -1
  72. package/.output/public/_nuxt/{C-elpgyr.js → DeY2JkR2.js} +1 -1
  73. package/.output/public/_nuxt/{DEFEpYzn.js → DfgOx_ou.js} +1 -1
  74. package/.output/public/_nuxt/DmkUdSS4.js +1 -0
  75. package/.output/public/_nuxt/{Ar3IelOY.js → DoIREDVb.js} +1 -1
  76. package/.output/public/_nuxt/DpZ1r1HA.js +1 -0
  77. package/.output/public/_nuxt/{Jo8kRmHz.js → Dpd16JVI.js} +1 -1
  78. package/.output/public/_nuxt/{BSIxhGsh.js → DqcKngf3.js} +1 -1
  79. package/.output/public/_nuxt/{BMvCSA6h.js → DrfE8IY0.js} +1 -1
  80. package/.output/public/_nuxt/{eaVkJRSa.js → DsesNydr.js} +1 -1
  81. package/.output/public/_nuxt/{zQyPuvV1.js → DtHJgCS8.js} +1 -1
  82. package/.output/public/_nuxt/Dtd4rC58.js +9 -0
  83. package/.output/public/_nuxt/{NQikbhmK.js → Du2W7Jne.js} +37 -36
  84. package/.output/public/_nuxt/{CDk0q2hV.js → DuwtTfO8.js} +1 -1
  85. package/.output/public/_nuxt/{B44A4LSJ.js → Dy-TJ0Mt.js} +1 -1
  86. package/.output/public/_nuxt/{-09h6CA9.js → Dy86h-7P.js} +1 -1
  87. package/.output/public/_nuxt/{Cdff9XNh.js → Dyeqn3aG.js} +1 -1
  88. package/.output/public/_nuxt/{Dnpkl-1q.js → FaFoMVKo.js} +1 -1
  89. package/.output/public/_nuxt/GPNI1ffD.js +4 -0
  90. package/.output/public/_nuxt/{BCMuIgP5.js → H94BMf3L.js} +1 -1
  91. package/.output/public/_nuxt/HPNQD6v3.js +1 -0
  92. package/.output/public/_nuxt/HXadJrHu.js +2 -0
  93. package/.output/public/_nuxt/{YVN7WG7q.js → KyA_4Ks-.js} +1 -1
  94. package/.output/public/_nuxt/{CYsTqbBS.js → L3kAWB2a.js} +1 -1
  95. package/.output/public/_nuxt/{Dk9fwOCm.js → McL25vkx.js} +2 -2
  96. package/.output/public/_nuxt/Nn93e_Mz.js +1 -0
  97. package/.output/public/_nuxt/UdR3DBPS.js +1 -0
  98. package/.output/public/_nuxt/{SfMRXW25.js → Und3xXFc.js} +1 -1
  99. package/.output/public/_nuxt/_mj6CfPa.js +1 -0
  100. package/.output/public/_nuxt/{BPQoBGg5.js → b-GYfcrQ.js} +1 -1
  101. package/.output/public/_nuxt/{DHDtnj7p.js → bLcjFslv.js} +1 -1
  102. package/.output/public/_nuxt/builds/latest.json +1 -1
  103. package/.output/public/_nuxt/builds/meta/e659b3e1-0e61-4971-940e-10063f9f4763.json +1 -0
  104. package/.output/public/_nuxt/entry.DmptwB51.css +1 -0
  105. package/.output/public/_nuxt/{y17lMTFy.js → hC_z4G8p.js} +1 -1
  106. package/.output/public/_nuxt/{CTxDO9fB.js → hNh4CIL0.js} +1 -1
  107. package/.output/public/_nuxt/{CGNkHojN.js → l5WKbU4h.js} +1 -1
  108. package/.output/public/_nuxt/{DcmZRa_F.js → oAClCn_h.js} +1 -1
  109. package/.output/public/_nuxt/{IvQlbZk6.js → pQqGiNch.js} +1 -1
  110. package/.output/public/_nuxt/ryMzSDUj.js +2 -0
  111. package/.output/server/chunks/_/collect.mjs +1 -1
  112. package/.output/server/chunks/_/markers.mjs +1 -1
  113. package/.output/server/chunks/_/quarantine.mjs +1 -1
  114. package/.output/server/chunks/_/users.mjs +1 -1
  115. package/.output/server/chunks/build/{BrowserBadge-D33lqUcj.mjs → BrowserBadge-MFvBwxmD.mjs} +66 -6
  116. package/.output/server/chunks/build/BrowserBadge-MFvBwxmD.mjs.map +1 -0
  117. package/.output/server/chunks/build/{Checkbox-DvUBGagc.mjs → Checkbox-4Q5d0fa0.mjs} +4 -4
  118. package/.output/server/chunks/build/Checkbox-4Q5d0fa0.mjs.map +1 -0
  119. package/.output/server/chunks/build/CiEnvCard-DB5DvBh1.mjs +1492 -0
  120. package/.output/server/chunks/build/CiEnvCard-DB5DvBh1.mjs.map +1 -0
  121. package/.output/server/chunks/build/CodeBlock-BgE-NSmE.mjs +1 -1
  122. package/.output/server/chunks/build/DashboardSidebarToggle-DCTnHiIv.mjs +1 -1
  123. package/.output/server/chunks/build/{DiagnosisPanel-B646dK4p.mjs → DiagnosisPanel-CALyEmcJ.mjs} +3 -3
  124. package/.output/server/chunks/build/DiagnosisPanel-CALyEmcJ.mjs.map +1 -0
  125. package/.output/server/chunks/build/{EmptyState-Dtlab7S9.mjs → EmptyState-DC2q_7TD.mjs} +3 -3
  126. package/.output/server/chunks/build/EmptyState-DC2q_7TD.mjs.map +1 -0
  127. package/.output/server/chunks/build/{EntityLinks-D3fp57pR.mjs → EntityLinks-BBHWssHH.mjs} +4 -4
  128. package/.output/server/chunks/build/EntityLinks-BBHWssHH.mjs.map +1 -0
  129. package/.output/server/chunks/build/{EnvManagedBadge-Bg3FSiU1.mjs → EnvManagedBadge-UwD2b9v2.mjs} +2 -2
  130. package/.output/server/chunks/build/EnvManagedBadge-UwD2b9v2.mjs.map +1 -0
  131. package/.output/server/chunks/build/{Modal-Ck2XLt8d.mjs → Modal-pSDlXzT3.mjs} +2 -2
  132. package/.output/server/chunks/build/Modal-pSDlXzT3.mjs.map +1 -0
  133. package/.output/server/chunks/build/{OpenInIdeLink-C4MXA8ya.mjs → OpenInIdeLink-CQWKKChd.mjs} +3 -3
  134. package/.output/server/chunks/build/{OpenInIdeLink-C4MXA8ya.mjs.map → OpenInIdeLink-CQWKKChd.mjs.map} +1 -1
  135. package/.output/server/chunks/build/{ProjectTestCasesTable-CxfQ5wtN.mjs → ProjectTestCasesTable-Bo61P5K1.mjs} +8 -8
  136. package/.output/server/chunks/build/{ProjectTestCasesTable-CxfQ5wtN.mjs.map → ProjectTestCasesTable-Bo61P5K1.mjs.map} +1 -1
  137. package/.output/server/chunks/build/{RovingFocusItem-BJSzTBjy.mjs → RovingFocusItem--OEHI2P3.mjs} +2 -2
  138. package/.output/server/chunks/build/RovingFocusItem--OEHI2P3.mjs.map +1 -0
  139. package/.output/server/chunks/build/RunReports-DFLv51TX.mjs +1 -1
  140. package/.output/server/chunks/build/{Select-CUqj50wi.mjs → Select-5DK9frQ7.mjs} +3 -3
  141. package/.output/server/chunks/build/Select-5DK9frQ7.mjs.map +1 -0
  142. package/.output/server/chunks/build/{SelectMenu-Db7osY7J.mjs → SelectMenu-D-2FSqBU.mjs} +939 -7
  143. package/.output/server/chunks/build/{SelectMenu-Db7osY7J.mjs.map → SelectMenu-D-2FSqBU.mjs.map} +1 -1
  144. package/.output/server/chunks/build/{SettingsField-D6iEYbEc.mjs → SettingsField-BZfx4ma1.mjs} +2 -2
  145. package/.output/server/chunks/build/SettingsField-BZfx4ma1.mjs.map +1 -0
  146. package/.output/server/chunks/build/{Slideover-DgCa80mf.mjs → Slideover-D270EZZD.mjs} +3 -3
  147. package/.output/server/chunks/build/Slideover-D270EZZD.mjs.map +1 -0
  148. package/.output/server/chunks/build/{Switch-CgUioOYB.mjs → Switch-B5Fp8ULt.mjs} +2 -2
  149. package/.output/server/chunks/build/Switch-B5Fp8ULt.mjs.map +1 -0
  150. package/.output/server/chunks/build/Table-BRk04Hd2.mjs +1 -1
  151. package/.output/server/chunks/build/{Tabs-Bbsg9wag.mjs → Tabs-BkSOnbaB.mjs} +2 -2
  152. package/.output/server/chunks/build/Tabs-BkSOnbaB.mjs.map +1 -0
  153. package/.output/server/chunks/build/{TestCaseHistoryChart-nMLPhdvD.mjs → TestCaseHistoryChart-CSi64vVA.mjs} +5 -5
  154. package/.output/server/chunks/build/TestCaseHistoryChart-CSi64vVA.mjs.map +1 -0
  155. package/.output/server/chunks/build/{TestStatusBar-j6h2Jp6A.mjs → TestStatusBar-DX3EhlyP.mjs} +2 -2
  156. package/.output/server/chunks/build/TestStatusBar-DX3EhlyP.mjs.map +1 -0
  157. package/.output/server/chunks/build/{Tooltip-BOazooWP.mjs → Tooltip-Dv4htNP6.mjs} +3 -3
  158. package/.output/server/chunks/build/Tooltip-Dv4htNP6.mjs.map +1 -0
  159. package/.output/server/chunks/build/{VisuallyHiddenInput-D6kBJxVd.mjs → VisuallyHiddenInput-BHvzNumK.mjs} +2 -2
  160. package/.output/server/chunks/build/VisuallyHiddenInput-BHvzNumK.mjs.map +1 -0
  161. package/.output/server/chunks/build/{_id_-z5N6HPyC.mjs → _id_-BdG37K7s.mjs} +12 -12
  162. package/.output/server/chunks/build/_id_-BdG37K7s.mjs.map +1 -0
  163. package/.output/server/chunks/build/{_id_-BHh65pfg.mjs → _id_-BdJs7BJZ.mjs} +57 -33
  164. package/.output/server/chunks/build/{_id_-BHh65pfg.mjs.map → _id_-BdJs7BJZ.mjs.map} +1 -1
  165. package/.output/server/chunks/build/{_id_-B78ky13D.mjs → _id_-BxA6IgWr.mjs} +96 -73
  166. package/.output/server/chunks/build/_id_-BxA6IgWr.mjs.map +1 -0
  167. package/.output/server/chunks/build/{_id_-Rzkqx55x.mjs → _id_-C_uSBiyU.mjs} +22 -23
  168. package/.output/server/chunks/build/{_id_-Rzkqx55x.mjs.map → _id_-C_uSBiyU.mjs.map} +1 -1
  169. package/.output/server/chunks/build/{about-CvSP73Ug.mjs → about-BE0UV-8-.mjs} +365 -18
  170. package/.output/server/chunks/build/about-BE0UV-8-.mjs.map +1 -0
  171. package/.output/server/chunks/build/{ai-B4VJ9K1K.mjs → ai-Cn05ch0u.mjs} +9 -9
  172. package/.output/server/chunks/build/{ai-B4VJ9K1K.mjs.map → ai-Cn05ch0u.mjs.map} +1 -1
  173. package/.output/server/chunks/build/{analytics-CJPC6t4L.mjs → analytics-Bo_B_jko.mjs} +20 -21
  174. package/.output/server/chunks/build/analytics-Bo_B_jko.mjs.map +1 -0
  175. package/.output/server/chunks/build/client.precomputed.mjs +1 -1
  176. package/.output/server/chunks/build/{default-zvbFgDJG.mjs → default-CbNHaFsy.mjs} +603 -71
  177. package/.output/server/chunks/build/default-CbNHaFsy.mjs.map +1 -0
  178. package/.output/server/chunks/build/{docs-DyuVEgtB.mjs → docs-B_llWMxx.mjs} +6 -6
  179. package/.output/server/chunks/build/{docs-DyuVEgtB.mjs.map → docs-B_llWMxx.mjs.map} +1 -1
  180. package/.output/server/chunks/build/{edit-CFR5g2Qf.mjs → edit-J0asTFg8.mjs} +4 -5
  181. package/.output/server/chunks/build/edit-J0asTFg8.mjs.map +1 -0
  182. package/.output/server/chunks/build/fetch-B4FwBOzu.mjs +1 -1
  183. package/.output/server/chunks/build/{import-CZo3djDi.mjs → import-CS9oylTN.mjs} +4 -4
  184. package/.output/server/chunks/build/import-CS9oylTN.mjs.map +1 -0
  185. package/.output/server/chunks/build/{index-Stqw0dEI.mjs → index-DE45ycdZ.mjs} +9 -9
  186. package/.output/server/chunks/build/index-DE45ycdZ.mjs.map +1 -0
  187. package/.output/server/chunks/build/{index-gCw_y4ZJ.mjs → index-e9skCi-V.mjs} +10 -11
  188. package/.output/server/chunks/build/{index-gCw_y4ZJ.mjs.map → index-e9skCi-V.mjs.map} +1 -1
  189. package/.output/server/chunks/build/{index-D7fe97l3.mjs → index-hGHlmyxj.mjs} +299 -91
  190. package/.output/server/chunks/build/index-hGHlmyxj.mjs.map +1 -0
  191. package/.output/server/chunks/build/isValueEqualOrExist-D2qw9YEr.mjs +1 -1
  192. package/.output/server/chunks/build/login-Da4u1IlW.mjs +1 -1
  193. package/.output/server/chunks/build/{mcp-B3IUvRgD.mjs → mcp-uhVCCwQM.mjs} +339 -10
  194. package/.output/server/chunks/build/mcp-uhVCCwQM.mjs.map +1 -0
  195. package/.output/server/chunks/build/{notifications-abDv0id8.mjs → notifications-fx_qnKGA.mjs} +4 -4
  196. package/.output/server/chunks/build/notifications-fx_qnKGA.mjs.map +1 -0
  197. package/.output/server/chunks/build/{pr-feedback-DjZID6q-.mjs → pr-feedback-X6-70iF0.mjs} +3 -3
  198. package/.output/server/chunks/build/pr-feedback-X6-70iF0.mjs.map +1 -0
  199. package/.output/server/chunks/build/server.mjs +24 -24
  200. package/.output/server/chunks/build/{settings-Du7YqF8i.mjs → settings-CCYe7rsc.mjs} +3 -3
  201. package/.output/server/chunks/build/settings-CCYe7rsc.mjs.map +1 -0
  202. package/.output/server/chunks/build/{storage-B4vzxd8G.mjs → storage-CJEmviCD.mjs} +5 -5
  203. package/.output/server/chunks/build/storage-CJEmviCD.mjs.map +1 -0
  204. package/.output/server/chunks/build/{test-cases-DUvaO1He.mjs → test-cases-thBbAykw.mjs} +9 -9
  205. package/.output/server/chunks/build/test-cases-thBbAykw.mjs.map +1 -0
  206. package/.output/server/chunks/build/{useAiStatus-CWvIo32Q.mjs → useAiStatus-CxjMmDDY.mjs} +8 -8
  207. package/.output/server/chunks/build/useAiStatus-CxjMmDDY.mjs.map +1 -0
  208. package/.output/server/chunks/build/{useCopyRich-BemRsKgv.mjs → useCopyRich-RJKhWoyj.mjs} +74 -44
  209. package/.output/server/chunks/build/useCopyRich-RJKhWoyj.mjs.map +1 -0
  210. package/.output/server/chunks/build/{useDesktopDownload-D49JRQSw.mjs → useDesktopDownload-BepjqxOt.mjs} +2 -2
  211. package/.output/server/chunks/build/useDesktopDownload-BepjqxOt.mjs.map +1 -0
  212. package/.output/server/chunks/build/{useOpenInIde-4GFf-kdi.mjs → useOpenInIde-BbTnPhFA.mjs} +2 -2
  213. package/.output/server/chunks/build/useOpenInIde-BbTnPhFA.mjs.map +1 -0
  214. package/.output/server/chunks/build/{useSettingsNav-C3O866KC.mjs → useSettingsNav-DnQKacz8.mjs} +4 -4
  215. package/.output/server/chunks/build/useSettingsNav-DnQKacz8.mjs.map +1 -0
  216. package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs +11 -0
  217. package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs.map +1 -0
  218. package/.output/server/chunks/build/{wasted-time-lYkx5YO4.mjs → wasted-time-BNTPIyrC.mjs} +4 -4
  219. package/.output/server/chunks/build/wasted-time-BNTPIyrC.mjs.map +1 -0
  220. package/.output/server/chunks/nitro/nitro.mjs +3471 -2802
  221. package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
  222. package/.output/server/chunks/routes/__piwi/session.get.mjs +1 -1
  223. package/.output/server/chunks/routes/api/desktop/import-local.post.mjs +88 -0
  224. package/.output/server/chunks/routes/api/desktop/import-local.post.mjs.map +1 -0
  225. package/.output/server/chunks/routes/api/failure-clusters/_id/base-commit.patch.mjs +1 -1
  226. package/.output/server/chunks/routes/api/failure-clusters/_id/branches.get.mjs +1 -1
  227. package/.output/server/chunks/routes/api/failure-clusters/_id/commit-diff.get.mjs +1 -1
  228. package/.output/server/chunks/routes/api/failure-clusters/_id/commits.get.mjs +1 -1
  229. package/.output/server/chunks/routes/api/failure-clusters/_id/context.get.mjs +1 -1
  230. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose/stream.post.mjs +1 -1
  231. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose.post.mjs +1 -1
  232. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnoses.get.mjs +1 -1
  233. package/.output/server/chunks/routes/api/failure-clusters/_id/diagnosis.get.mjs +1 -1
  234. package/.output/server/chunks/routes/api/failure-clusters/_id/export.get.mjs +1 -1
  235. package/.output/server/chunks/routes/api/failure-clusters/_id/extract-cases.post.mjs +1 -1
  236. package/.output/server/chunks/routes/api/failure-clusters/_id/fix-plan.get.mjs +1 -1
  237. package/.output/server/chunks/routes/api/failure-clusters/_id/status.patch.mjs +1 -1
  238. package/.output/server/chunks/routes/api/failure-clusters/_id_.get.mjs +1 -1
  239. package/.output/server/chunks/routes/api/failure-diagnoses/_id/feedback.patch.mjs +1 -1
  240. package/.output/server/chunks/routes/api/files/_...path_.get.mjs +1 -1
  241. package/.output/server/chunks/routes/api/health.get.mjs +1 -1
  242. package/.output/server/chunks/routes/api/index.get2.mjs +1 -1
  243. package/.output/server/chunks/routes/api/index.get3.mjs +1 -1
  244. package/.output/server/chunks/routes/api/index.get4.mjs +1 -1
  245. package/.output/server/chunks/routes/api/index.post2.mjs +1 -1
  246. package/.output/server/chunks/routes/api/index.post3.mjs +1 -1
  247. package/.output/server/chunks/routes/api/index.post4.mjs +1 -1
  248. package/.output/server/chunks/routes/api/index.post5.mjs +1 -1
  249. package/.output/server/chunks/routes/api/links/_id/refresh.post.mjs +1 -1
  250. package/.output/server/chunks/routes/api/links/_id_.delete.mjs +1 -1
  251. package/.output/server/chunks/routes/api/links/_id_.patch.mjs +1 -1
  252. package/.output/server/chunks/routes/api/markers/_id_.delete.mjs +1 -1
  253. package/.output/server/chunks/routes/api/markers/_id_.put.mjs +1 -1
  254. package/.output/server/chunks/routes/api/notifications/stream.get.mjs +1 -1
  255. package/.output/server/chunks/routes/api/projects/_id/cluster-merge-suggestions.get.mjs +1 -1
  256. package/.output/server/chunks/routes/api/projects/_id/failure-clusters.get.mjs +1 -1
  257. package/.output/server/chunks/routes/api/projects/_id/flaky-classify.post.mjs +1 -1
  258. package/.output/server/chunks/routes/api/projects/_id/flaky-tests.get.mjs +1 -1
  259. package/.output/server/chunks/routes/api/projects/_id/latest-run.get.mjs +1 -1
  260. package/.output/server/chunks/routes/api/projects/_id/markers.get.mjs +1 -1
  261. package/.output/server/chunks/routes/api/projects/_id/markers.post.mjs +1 -1
  262. package/.output/server/chunks/routes/api/projects/_id/members.get.mjs +1 -1
  263. package/.output/server/chunks/routes/api/projects/_id/members.put.mjs +1 -1
  264. package/.output/server/chunks/routes/api/projects/_id/performance.get.mjs +1 -1
  265. package/.output/server/chunks/routes/api/projects/_id/quarantine/_testCaseId_.delete.mjs +1 -1
  266. package/.output/server/chunks/routes/api/projects/_id/quarantine.get.mjs +1 -1
  267. package/.output/server/chunks/routes/api/projects/_id/quarantine.post.mjs +1 -1
  268. package/.output/server/chunks/routes/api/projects/_id/slow-tests.get.mjs +1 -1
  269. package/.output/server/chunks/routes/api/projects/_id/spec-health.get.mjs +1 -1
  270. package/.output/server/chunks/routes/api/projects/_id/test-cases.get.mjs +1 -1
  271. package/.output/server/chunks/routes/api/projects/_id/timeout-opportunities.get.mjs +1 -1
  272. package/.output/server/chunks/routes/api/projects/_id_.delete.mjs +1 -1
  273. package/.output/server/chunks/routes/api/projects/_id_.get.mjs +1 -1
  274. package/.output/server/chunks/routes/api/projects/_id_.put.mjs +1 -1
  275. package/.output/server/chunks/routes/api/projects/menu.get.mjs +1 -1
  276. package/.output/server/chunks/routes/api/projects/overview.get.mjs +1 -1
  277. package/.output/server/chunks/routes/api/projects.get.mjs +1 -1
  278. package/.output/server/chunks/routes/api/search.get.mjs +1 -1
  279. package/.output/server/chunks/routes/api/settings/ai/limits.get.mjs +1 -1
  280. package/.output/server/chunks/routes/api/settings/ai/limits.put.mjs +1 -1
  281. package/.output/server/chunks/routes/api/settings/ai/test.post.mjs +1 -1
  282. package/.output/server/chunks/routes/api/settings/ai/usage.get.mjs +1 -1
  283. package/.output/server/chunks/routes/api/settings/ai.get.mjs +1 -1
  284. package/.output/server/chunks/routes/api/settings/ai.put.mjs +1 -1
  285. package/.output/server/chunks/routes/api/settings/pr-feedback.get.mjs +1 -1
  286. package/.output/server/chunks/routes/api/settings/pr-feedback.put.mjs +1 -1
  287. package/.output/server/chunks/routes/api/settings/smtp.get.mjs +1 -1
  288. package/.output/server/chunks/routes/api/settings/timeout-hygiene.get.mjs +1 -1
  289. package/.output/server/chunks/routes/api/settings/timeout-hygiene.put.mjs +1 -1
  290. package/.output/server/chunks/routes/api/settings/wasted-waits.get.mjs +1 -1
  291. package/.output/server/chunks/routes/api/settings/wasted-waits.put.mjs +1 -1
  292. package/.output/server/chunks/routes/api/stream.get.mjs +1 -1
  293. package/.output/server/chunks/routes/api/subscriptions/_id_.delete.mjs +1 -1
  294. package/.output/server/chunks/routes/api/subscriptions/_id_.patch.mjs +1 -1
  295. package/.output/server/chunks/routes/api/tags/_id_.delete.mjs +1 -1
  296. package/.output/server/chunks/routes/api/tags/_id_.put.mjs +1 -1
  297. package/.output/server/chunks/routes/api/test-cases/_id/history.get.mjs +1 -1
  298. package/.output/server/chunks/routes/api/test-cases/_id/stability-trend.get.mjs +1 -1
  299. package/.output/server/chunks/routes/api/test-cases/_id_.get.mjs +1 -1
  300. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnose.post.mjs +1 -1
  301. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis-context.get.mjs +1 -1
  302. package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis.get.mjs +1 -1
  303. package/.output/server/chunks/routes/api/test-run-cases/_id/export.get.mjs +1 -1
  304. package/.output/server/chunks/routes/api/test-run-cases/_id/traces.get.mjs +1 -1
  305. package/.output/server/chunks/routes/api/test-run-cases/_id_.get.mjs +1 -1
  306. package/.output/server/chunks/routes/api/test-runs/_id/begin.post.mjs +1 -1
  307. package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs +1 -1
  308. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs +5 -3
  309. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs.map +1 -1
  310. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/environment-diff.get.mjs +1 -1
  311. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-healing.get.mjs +1 -1
  312. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-pick.post.mjs +1 -1
  313. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network-body.get.mjs +1 -1
  314. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network.get.mjs +1 -1
  315. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-stacks.get.mjs +1 -1
  316. package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/visual-diff.get.mjs +1 -1
  317. package/.output/server/chunks/routes/api/test-runs/_id/events.post.mjs +1 -1
  318. package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs +1 -1
  319. package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs +1 -1
  320. package/.output/server/chunks/routes/api/test-runs/_id/gate.post.mjs +1 -1
  321. package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs +1 -1
  322. package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs +1 -1
  323. package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs +1 -1
  324. package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs +1 -1
  325. package/.output/server/chunks/routes/api/test-runs/_id/stream.get.mjs +1 -1
  326. package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs +1 -1
  327. package/.output/server/chunks/routes/api/test-runs/_id_.delete.mjs +1 -1
  328. package/.output/server/chunks/routes/api/test-runs/_id_.get.mjs +1 -1
  329. package/.output/server/chunks/routes/api/test-runs/_id_.patch.mjs +1 -1
  330. package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs +1 -2
  331. package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs.map +1 -1
  332. package/.output/server/chunks/routes/api/test-runs/import.post.mjs +4 -128
  333. package/.output/server/chunks/routes/api/test-runs/import.post.mjs.map +1 -1
  334. package/.output/server/chunks/routes/api/test-runs/recent.get.mjs +1 -1
  335. package/.output/server/chunks/routes/api/test-runs/setup.post.mjs +1 -1
  336. package/.output/server/chunks/routes/api/test-runs/start.post.mjs +1 -1
  337. package/.output/server/chunks/routes/api/test-runs/submit.post.mjs +1 -1
  338. package/.output/server/chunks/routes/api/test-runs/upload.post.mjs +1 -1
  339. package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs +3 -1
  340. package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs.map +1 -1
  341. package/.output/server/chunks/routes/api/traces/check.post.mjs +1 -1
  342. package/.output/server/chunks/routes/api/users/_id/index.post.mjs +1 -1
  343. package/.output/server/chunks/routes/api/users/_id/invite.post.mjs +1 -1
  344. package/.output/server/chunks/routes/api/users/_id/projects.get.mjs +1 -1
  345. package/.output/server/chunks/routes/api/users/_id/projects.put.mjs +1 -1
  346. package/.output/server/chunks/routes/api/version.get.mjs +1 -1
  347. package/.output/server/chunks/routes/mcp.post.mjs +1 -1
  348. package/.output/server/chunks/routes/renderer.mjs +1 -1
  349. package/.output/server/index.mjs +1 -1
  350. package/.output/server/package.json +1 -1
  351. package/package.json +1 -1
  352. package/.output/public/_nuxt/BYDaY0Z7.js +0 -1
  353. package/.output/public/_nuxt/Bc8mOoz9.js +0 -4
  354. package/.output/public/_nuxt/BeLWlVK0.js +0 -1
  355. package/.output/public/_nuxt/BpUaY9nH.js +0 -2
  356. package/.output/public/_nuxt/CHNwfU1y.js +0 -1
  357. package/.output/public/_nuxt/CNFYDQmj.js +0 -1
  358. package/.output/public/_nuxt/CU5S9GCh.js +0 -1
  359. package/.output/public/_nuxt/CrwJAwhk.js +0 -1
  360. package/.output/public/_nuxt/CuSVQEkS.js +0 -3
  361. package/.output/public/_nuxt/CylWPruw.js +0 -1
  362. package/.output/public/_nuxt/DDDpCFpF.js +0 -1
  363. package/.output/public/_nuxt/DVDXJYq2.js +0 -2
  364. package/.output/public/_nuxt/Dgf5N4Ng.js +0 -1
  365. package/.output/public/_nuxt/DiZyJYez.js +0 -1
  366. package/.output/public/_nuxt/OSduWzyz.js +0 -1
  367. package/.output/public/_nuxt/WsxFTEFq.js +0 -10
  368. package/.output/public/_nuxt/aQgs_c6e.js +0 -9
  369. package/.output/public/_nuxt/builds/meta/ab473028-4b37-4884-b243-b8f6e5046e5e.json +0 -1
  370. package/.output/public/_nuxt/dYCKgE-3.js +0 -5
  371. package/.output/public/_nuxt/entry.CPhW41mh.css +0 -1
  372. package/.output/public/_nuxt/g26aVPxc.js +0 -1
  373. package/.output/server/chunks/_/import-runs.mjs +0 -351
  374. package/.output/server/chunks/_/import-runs.mjs.map +0 -1
  375. package/.output/server/chunks/build/BrowserBadge-D33lqUcj.mjs.map +0 -1
  376. package/.output/server/chunks/build/Checkbox-DvUBGagc.mjs.map +0 -1
  377. package/.output/server/chunks/build/CiEnvCard-CrjOM17n.mjs +0 -631
  378. package/.output/server/chunks/build/CiEnvCard-CrjOM17n.mjs.map +0 -1
  379. package/.output/server/chunks/build/DiagnosisPanel-B646dK4p.mjs.map +0 -1
  380. package/.output/server/chunks/build/EmptyState-Dtlab7S9.mjs.map +0 -1
  381. package/.output/server/chunks/build/EntityLinks-D3fp57pR.mjs.map +0 -1
  382. package/.output/server/chunks/build/EnvManagedBadge-Bg3FSiU1.mjs.map +0 -1
  383. package/.output/server/chunks/build/Modal-Ck2XLt8d.mjs.map +0 -1
  384. package/.output/server/chunks/build/RovingFocusItem-BJSzTBjy.mjs.map +0 -1
  385. package/.output/server/chunks/build/Select-CUqj50wi.mjs.map +0 -1
  386. package/.output/server/chunks/build/SettingsField-D6iEYbEc.mjs.map +0 -1
  387. package/.output/server/chunks/build/Slideover-DgCa80mf.mjs.map +0 -1
  388. package/.output/server/chunks/build/Switch-CgUioOYB.mjs.map +0 -1
  389. package/.output/server/chunks/build/Tabs-Bbsg9wag.mjs.map +0 -1
  390. package/.output/server/chunks/build/TestCaseHistoryChart-nMLPhdvD.mjs.map +0 -1
  391. package/.output/server/chunks/build/TestStatusBar-j6h2Jp6A.mjs.map +0 -1
  392. package/.output/server/chunks/build/Tooltip-BOazooWP.mjs.map +0 -1
  393. package/.output/server/chunks/build/VisuallyHiddenInput-D6kBJxVd.mjs.map +0 -1
  394. package/.output/server/chunks/build/_id_-B78ky13D.mjs.map +0 -1
  395. package/.output/server/chunks/build/_id_-z5N6HPyC.mjs.map +0 -1
  396. package/.output/server/chunks/build/about-CvSP73Ug.mjs.map +0 -1
  397. package/.output/server/chunks/build/analytics-CJPC6t4L.mjs.map +0 -1
  398. package/.output/server/chunks/build/default-zvbFgDJG.mjs.map +0 -1
  399. package/.output/server/chunks/build/edit-CFR5g2Qf.mjs.map +0 -1
  400. package/.output/server/chunks/build/import-CZo3djDi.mjs.map +0 -1
  401. package/.output/server/chunks/build/index-D7fe97l3.mjs.map +0 -1
  402. package/.output/server/chunks/build/index-Stqw0dEI.mjs.map +0 -1
  403. package/.output/server/chunks/build/mcp-B3IUvRgD.mjs.map +0 -1
  404. package/.output/server/chunks/build/notifications-abDv0id8.mjs.map +0 -1
  405. package/.output/server/chunks/build/pr-feedback-DjZID6q-.mjs.map +0 -1
  406. package/.output/server/chunks/build/settings-Du7YqF8i.mjs.map +0 -1
  407. package/.output/server/chunks/build/storage-B4vzxd8G.mjs.map +0 -1
  408. package/.output/server/chunks/build/test-cases-DUvaO1He.mjs.map +0 -1
  409. package/.output/server/chunks/build/useAiStatus-CWvIo32Q.mjs.map +0 -1
  410. package/.output/server/chunks/build/useCopyRich-BemRsKgv.mjs.map +0 -1
  411. package/.output/server/chunks/build/useDesktopDownload-D49JRQSw.mjs.map +0 -1
  412. package/.output/server/chunks/build/useOpenInIde-4GFf-kdi.mjs.map +0 -1
  413. package/.output/server/chunks/build/useSettingsNav-C3O866KC.mjs.map +0 -1
  414. package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs +0 -7
  415. package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs.map +0 -1
  416. package/.output/server/chunks/build/virtualizer-Cd1hhlxC.mjs +0 -940
  417. package/.output/server/chunks/build/virtualizer-Cd1hhlxC.mjs.map +0 -1
  418. package/.output/server/chunks/build/wasted-time-lYkx5YO4.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import{d as Yn,o as ne,c as ie,q as oi,F as Mc,y as Ac,i as Cc,Q as $c,m as Ec,t as Nc,aq as Oc,ar as Dc,h as Ji,as as Vr,at as Rc,an as xo,B as bo,K as wo,ad as Ki,H as ze,r as Ct,Y as Fc,au as Lc,V as Ic,av as ai,M as ye,L as zc}from"./NQikbhmK.js";import{g as Bc}from"./D7W_4Sqc.js";const Pc=Yn({__name:"ChartLegend",props:{items:{},dense:{type:Boolean}},setup(t){return(e,n)=>(ne(),ie("div",{class:oi(["flex items-center justify-center flex-wrap",t.dense?"gap-4 mt-2 text-xs text-gray-500":"gap-6 mt-4 text-sm"])},[(ne(!0),ie(Mc,null,Ac(t.items,i=>(ne(),ie("span",{key:i.label,class:oi(["flex items-center",t.dense?"gap-1":"gap-2"])},[Cc("span",{class:oi(["rounded-full inline-block",t.dense?"w-2.5 h-2.5":"w-3 h-3"]),style:$c({backgroundColor:i.color})},null,6),Ec(" "+Nc(i.label),1)],2))),128))],2))}}),g_=Object.assign(Pc,{__name:"ChartLegend"});var ki="http://www.w3.org/1999/xhtml";const Yr={svg:"http://www.w3.org/2000/svg",xhtml:ki,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Xn(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),Yr.hasOwnProperty(e)?{space:Yr[e],local:t}:t}function Hc(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===ki&&e.documentElement.namespaceURI===ki?e.createElement(t):e.createElementNS(n,t)}}function Uc(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function ko(t){var e=Xn(t);return(e.local?Uc:Hc)(e)}function Wc(){}function tr(t){return t==null?Wc:function(){return this.querySelector(t)}}function Vc(t){typeof t!="function"&&(t=tr(t));for(var e=this._groups,n=e.length,i=new Array(n),r=0;r<n;++r)for(var s=e[r],o=s.length,a=i[r]=new Array(o),c,u,l=0;l<o;++l)(c=s[l])&&(u=t.call(c,c.__data__,l,s))&&("__data__"in c&&(u.__data__=c.__data__),a[l]=u);return new it(i,this._parents)}function Yc(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function Xc(){return[]}function To(t){return t==null?Xc:function(){return this.querySelectorAll(t)}}function Gc(t){return function(){return Yc(t.apply(this,arguments))}}function qc(t){typeof t=="function"?t=Gc(t):t=To(t);for(var e=this._groups,n=e.length,i=[],r=[],s=0;s<n;++s)for(var o=e[s],a=o.length,c,u=0;u<a;++u)(c=o[u])&&(i.push(t.call(c,c.__data__,u,o)),r.push(c));return new it(i,r)}function So(t){return function(){return this.matches(t)}}function Mo(t){return function(e){return e.matches(t)}}var Zc=Array.prototype.find;function jc(t){return function(){return Zc.call(this.children,t)}}function Qc(){return this.firstElementChild}function Jc(t){return this.select(t==null?Qc:jc(typeof t=="function"?t:Mo(t)))}var Kc=Array.prototype.filter;function tu(){return Array.from(this.children)}function eu(t){return function(){return Kc.call(this.children,t)}}function nu(t){return this.selectAll(t==null?tu:eu(typeof t=="function"?t:Mo(t)))}function iu(t){typeof t!="function"&&(t=So(t));for(var e=this._groups,n=e.length,i=new Array(n),r=0;r<n;++r)for(var s=e[r],o=s.length,a=i[r]=[],c,u=0;u<o;++u)(c=s[u])&&t.call(c,c.__data__,u,s)&&a.push(c);return new it(i,this._parents)}function Ao(t){return new Array(t.length)}function ru(){return new it(this._enter||this._groups.map(Ao),this._parents)}function kn(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}kn.prototype={constructor:kn,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function su(t){return function(){return t}}function ou(t,e,n,i,r,s){for(var o=0,a,c=e.length,u=s.length;o<u;++o)(a=e[o])?(a.__data__=s[o],i[o]=a):n[o]=new kn(t,s[o]);for(;o<c;++o)(a=e[o])&&(r[o]=a)}function au(t,e,n,i,r,s,o){var a,c,u=new Map,l=e.length,f=s.length,h=new Array(l),d;for(a=0;a<l;++a)(c=e[a])&&(h[a]=d=o.call(c,c.__data__,a,e)+"",u.has(d)?r[a]=c:u.set(d,c));for(a=0;a<f;++a)d=o.call(t,s[a],a,s)+"",(c=u.get(d))?(i[a]=c,c.__data__=s[a],u.delete(d)):n[a]=new kn(t,s[a]);for(a=0;a<l;++a)(c=e[a])&&u.get(h[a])===c&&(r[a]=c)}function cu(t){return t.__data__}function uu(t,e){if(!arguments.length)return Array.from(this,cu);var n=e?au:ou,i=this._parents,r=this._groups;typeof t!="function"&&(t=su(t));for(var s=r.length,o=new Array(s),a=new Array(s),c=new Array(s),u=0;u<s;++u){var l=i[u],f=r[u],h=f.length,d=lu(t.call(l,l&&l.__data__,u,i)),p=d.length,g=a[u]=new Array(p),m=o[u]=new Array(p),_=c[u]=new Array(h);n(l,f,g,m,_,d,e);for(var x=0,y=0,b,T;x<p;++x)if(b=g[x]){for(x>=y&&(y=x+1);!(T=m[y])&&++y<p;);b._next=T||null}}return o=new it(o,i),o._enter=a,o._exit=c,o}function lu(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function fu(){return new it(this._exit||this._groups.map(Ao),this._parents)}function hu(t,e,n){var i=this.enter(),r=this,s=this.exit();return typeof t=="function"?(i=t(i),i&&(i=i.selection())):i=i.append(t+""),e!=null&&(r=e(r),r&&(r=r.selection())),n==null?s.remove():n(s),i&&r?i.merge(r).order():r}function du(t){for(var e=t.selection?t.selection():t,n=this._groups,i=e._groups,r=n.length,s=i.length,o=Math.min(r,s),a=new Array(r),c=0;c<o;++c)for(var u=n[c],l=i[c],f=u.length,h=a[c]=new Array(f),d,p=0;p<f;++p)(d=u[p]||l[p])&&(h[p]=d);for(;c<r;++c)a[c]=n[c];return new it(a,this._parents)}function gu(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var i=t[e],r=i.length-1,s=i[r],o;--r>=0;)(o=i[r])&&(s&&o.compareDocumentPosition(s)^4&&s.parentNode.insertBefore(o,s),s=o);return this}function pu(t){t||(t=_u);function e(f,h){return f&&h?t(f.__data__,h.__data__):!f-!h}for(var n=this._groups,i=n.length,r=new Array(i),s=0;s<i;++s){for(var o=n[s],a=o.length,c=r[s]=new Array(a),u,l=0;l<a;++l)(u=o[l])&&(c[l]=u);c.sort(e)}return new it(r,this._parents).order()}function _u(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function mu(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function vu(){return Array.from(this)}function yu(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i=t[e],r=0,s=i.length;r<s;++r){var o=i[r];if(o)return o}return null}function xu(){let t=0;for(const e of this)++t;return t}function bu(){return!this.node()}function wu(t){for(var e=this._groups,n=0,i=e.length;n<i;++n)for(var r=e[n],s=0,o=r.length,a;s<o;++s)(a=r[s])&&t.call(a,a.__data__,s,r);return this}function ku(t){return function(){this.removeAttribute(t)}}function Tu(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Su(t,e){return function(){this.setAttribute(t,e)}}function Mu(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Au(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function Cu(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function $u(t,e){var n=Xn(t);if(arguments.length<2){var i=this.node();return n.local?i.getAttributeNS(n.space,n.local):i.getAttribute(n)}return this.each((e==null?n.local?Tu:ku:typeof e=="function"?n.local?Cu:Au:n.local?Mu:Su)(n,e))}function Co(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Eu(t){return function(){this.style.removeProperty(t)}}function Nu(t,e,n){return function(){this.style.setProperty(t,e,n)}}function Ou(t,e,n){return function(){var i=e.apply(this,arguments);i==null?this.style.removeProperty(t):this.style.setProperty(t,i,n)}}function Du(t,e,n){return arguments.length>1?this.each((e==null?Eu:typeof e=="function"?Ou:Nu)(t,e,n??"")):le(this.node(),t)}function le(t,e){return t.style.getPropertyValue(e)||Co(t).getComputedStyle(t,null).getPropertyValue(e)}function Ru(t){return function(){delete this[t]}}function Fu(t,e){return function(){this[t]=e}}function Lu(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function Iu(t,e){return arguments.length>1?this.each((e==null?Ru:typeof e=="function"?Lu:Fu)(t,e)):this.node()[t]}function $o(t){return t.trim().split(/^|\s+/)}function er(t){return t.classList||new Eo(t)}function Eo(t){this._node=t,this._names=$o(t.getAttribute("class")||"")}Eo.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function No(t,e){for(var n=er(t),i=-1,r=e.length;++i<r;)n.add(e[i])}function Oo(t,e){for(var n=er(t),i=-1,r=e.length;++i<r;)n.remove(e[i])}function zu(t){return function(){No(this,t)}}function Bu(t){return function(){Oo(this,t)}}function Pu(t,e){return function(){(e.apply(this,arguments)?No:Oo)(this,t)}}function Hu(t,e){var n=$o(t+"");if(arguments.length<2){for(var i=er(this.node()),r=-1,s=n.length;++r<s;)if(!i.contains(n[r]))return!1;return!0}return this.each((typeof e=="function"?Pu:e?zu:Bu)(n,e))}function Uu(){this.textContent=""}function Wu(t){return function(){this.textContent=t}}function Vu(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function Yu(t){return arguments.length?this.each(t==null?Uu:(typeof t=="function"?Vu:Wu)(t)):this.node().textContent}function Xu(){this.innerHTML=""}function Gu(t){return function(){this.innerHTML=t}}function qu(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function Zu(t){return arguments.length?this.each(t==null?Xu:(typeof t=="function"?qu:Gu)(t)):this.node().innerHTML}function ju(){this.nextSibling&&this.parentNode.appendChild(this)}function Qu(){return this.each(ju)}function Ju(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Ku(){return this.each(Ju)}function tl(t){var e=typeof t=="function"?t:ko(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function el(){return null}function nl(t,e){var n=typeof t=="function"?t:ko(t),i=e==null?el:typeof e=="function"?e:tr(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),i.apply(this,arguments)||null)})}function il(){var t=this.parentNode;t&&t.removeChild(this)}function rl(){return this.each(il)}function sl(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function ol(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function al(t){return this.select(t?ol:sl)}function cl(t){return arguments.length?this.property("__data__",t):this.node().__data__}function ul(t){return function(e){t.call(this,e,this.__data__)}}function ll(t){return t.trim().split(/^|\s+/).map(function(e){var n="",i=e.indexOf(".");return i>=0&&(n=e.slice(i+1),e=e.slice(0,i)),{type:e,name:n}})}function fl(t){return function(){var e=this.__on;if(e){for(var n=0,i=-1,r=e.length,s;n<r;++n)s=e[n],(!t.type||s.type===t.type)&&s.name===t.name?this.removeEventListener(s.type,s.listener,s.options):e[++i]=s;++i?e.length=i:delete this.__on}}}function hl(t,e,n){return function(){var i=this.__on,r,s=ul(e);if(i){for(var o=0,a=i.length;o<a;++o)if((r=i[o]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=s,r.options=n),r.value=e;return}}this.addEventListener(t.type,s,n),r={type:t.type,name:t.name,value:e,listener:s,options:n},i?i.push(r):this.__on=[r]}}function dl(t,e,n){var i=ll(t+""),r,s=i.length,o;if(arguments.length<2){var a=this.node().__on;if(a){for(var c=0,u=a.length,l;c<u;++c)for(r=0,l=a[c];r<s;++r)if((o=i[r]).type===l.type&&o.name===l.name)return l.value}return}for(a=e?hl:fl,r=0;r<s;++r)this.each(a(i[r],e,n));return this}function Do(t,e,n){var i=Co(t),r=i.CustomEvent;typeof r=="function"?r=new r(e,n):(r=i.document.createEvent("Event"),n?(r.initEvent(e,n.bubbles,n.cancelable),r.detail=n.detail):r.initEvent(e,!1,!1)),t.dispatchEvent(r)}function gl(t,e){return function(){return Do(this,t,e)}}function pl(t,e){return function(){return Do(this,t,e.apply(this,arguments))}}function _l(t,e){return this.each((typeof e=="function"?pl:gl)(t,e))}function*ml(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i=t[e],r=0,s=i.length,o;r<s;++r)(o=i[r])&&(yield o)}var Ro=[null];function it(t,e){this._groups=t,this._parents=e}function qe(){return new it([[document.documentElement]],Ro)}function vl(){return this}it.prototype=qe.prototype={constructor:it,select:Vc,selectAll:qc,selectChild:Jc,selectChildren:nu,filter:iu,data:uu,enter:ru,exit:fu,join:hu,merge:du,selection:vl,order:gu,sort:pu,call:mu,nodes:vu,node:yu,size:xu,empty:bu,each:wu,attr:$u,style:Du,property:Iu,classed:Hu,text:Yu,html:Zu,raise:Qu,lower:Ku,append:tl,insert:nl,remove:rl,clone:al,datum:cl,on:dl,dispatch:_l,[Symbol.iterator]:ml};function $t(t){return typeof t=="string"?new it([[document.querySelector(t)]],[document.documentElement]):new it([[t]],Ro)}var Re;(function(t){t[t.SVG=0]="SVG",t[t.HTML=1]="HTML"})(Re||(Re={}));var fe;(function(t){t.Fit="fit",t.Extend="extend",t.FitWidth="fit_width"})(fe||(fe={}));function Fe(t,e){return t==null||e==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function yl(t,e){return t==null||e==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function nr(t){let e,n,i;t.length!==2?(e=Fe,n=(a,c)=>Fe(t(a),c),i=(a,c)=>t(a)-c):(e=t===Fe||t===yl?t:xl,n=t,i=t);function r(a,c,u=0,l=a.length){if(u<l){if(e(c,c)!==0)return l;do{const f=u+l>>>1;n(a[f],c)<0?u=f+1:l=f}while(u<l)}return u}function s(a,c,u=0,l=a.length){if(u<l){if(e(c,c)!==0)return l;do{const f=u+l>>>1;n(a[f],c)<=0?u=f+1:l=f}while(u<l)}return u}function o(a,c,u=0,l=a.length){const f=r(a,c,u,l-1);return f>u&&i(a[f-1],c)>-i(a[f],c)?f-1:f}return{left:r,center:o,right:s}}function xl(){return 0}function Fo(t){return t===null?NaN:+t}const Lo=nr(Fe),Ze=Lo.right,bl=Lo.left;nr(Fo).center;function wl(t,e){let n,i;for(const r of t)r!=null&&(n===void 0?r>=r&&(n=i=r):(n>r&&(n=r),i<r&&(i=r)));return[n,i]}class Xr extends Map{constructor(e,n=Sl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),e!=null)for(const[i,r]of e)this.set(i,r)}get(e){return super.get(Gr(this,e))}has(e){return super.has(Gr(this,e))}set(e,n){return super.set(kl(this,e),n)}delete(e){return super.delete(Tl(this,e))}}function Gr({_intern:t,_key:e},n){const i=e(n);return t.has(i)?t.get(i):n}function kl({_intern:t,_key:e},n){const i=e(n);return t.has(i)?t.get(i):(t.set(i,n),n)}function Tl({_intern:t,_key:e},n){const i=e(n);return t.has(i)&&(n=t.get(i),t.delete(i)),n}function Sl(t){return t!==null&&typeof t=="object"?t.valueOf():t}const Ml=Math.sqrt(50),Al=Math.sqrt(10),Cl=Math.sqrt(2);function Tn(t,e,n){const i=(e-t)/Math.max(0,n),r=Math.floor(Math.log10(i)),s=i/Math.pow(10,r),o=s>=Ml?10:s>=Al?5:s>=Cl?2:1;let a,c,u;return r<0?(u=Math.pow(10,-r)/o,a=Math.round(t*u),c=Math.round(e*u),a/u<t&&++a,c/u>e&&--c,u=-u):(u=Math.pow(10,r)*o,a=Math.round(t/u),c=Math.round(e/u),a*u<t&&++a,c*u>e&&--c),c<a&&.5<=n&&n<2?Tn(t,e,n*2):[a,c,u]}function Ti(t,e,n){if(e=+e,t=+t,n=+n,!(n>0))return[];if(t===e)return[t];const i=e<t,[r,s,o]=i?Tn(e,t,n):Tn(t,e,n);if(!(s>=r))return[];const a=s-r+1,c=new Array(a);if(i)if(o<0)for(let u=0;u<a;++u)c[u]=(s-u)/-o;else for(let u=0;u<a;++u)c[u]=(s-u)*o;else if(o<0)for(let u=0;u<a;++u)c[u]=(r+u)/-o;else for(let u=0;u<a;++u)c[u]=(r+u)*o;return c}function Si(t,e,n){return e=+e,t=+t,n=+n,Tn(t,e,n)[2]}function Mi(t,e,n){e=+e,t=+t,n=+n;const i=e<t,r=i?Si(e,t,n):Si(t,e,n);return(i?-1:1)*(r<0?1/-r:r)}function qr(t,e){let n;if(e===void 0)for(const i of t)i!=null&&(n<i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of t)(r=e(r,++i,t))!=null&&(n<r||n===void 0&&r>=r)&&(n=r)}return n}function Zr(t,e){let n;if(e===void 0)for(const i of t)i!=null&&(n>i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of t)(r=e(r,++i,t))!=null&&(n>r||n===void 0&&r>=r)&&(n=r)}return n}function $l(t,e,n=Fo){if(!(!(i=t.length)||isNaN(e=+e))){if(e<=0||i<2)return+n(t[0],0,t);if(e>=1)return+n(t[i-1],i-1,t);var i,r=(i-1)*e,s=Math.floor(r),o=+n(t[s],s,t),a=+n(t[s+1],s+1,t);return o+(a-o)*(r-s)}}function El(t,e){let n=0,i=0;if(e===void 0)for(let r of t)r!=null&&(r=+r)>=r&&(++n,i+=r);else{let r=-1;for(let s of t)(s=e(s,++r,t))!=null&&(s=+s)>=s&&(++n,i+=s)}if(n)return i/n}function*Nl(t){for(const e of t)yield*e}function Ol(t){return Array.from(Nl(t))}function Dl(t,e,n){t=+t,e=+e,n=(r=arguments.length)<2?(e=t,t=0,1):r<3?1:+n;for(var i=-1,r=Math.max(0,Math.ceil((e-t)/n))|0,s=new Array(r);++i<r;)s[i]=t+i*n;return s}function Rl(t,e){let n=0;if(e===void 0)for(let i of t)(i=+i)&&(n+=i);else{let i=-1;for(let r of t)(r=+e(r,++i,t))&&(n+=r)}return n}function Fl(t,e,n){var i={},r=i.noTrailing,s=r===void 0?!1:r,o=i.noLeading,a=o===void 0?!1:o,c=i.debounceMode,u=c===void 0?void 0:c,l,f=!1,h=0;function d(){l&&clearTimeout(l)}function p(m){var _=m||{},x=_.upcomingOnly,y=x===void 0?!1:x;d(),f=!y}function g(){for(var m=arguments.length,_=new Array(m),x=0;x<m;x++)_[x]=arguments[x];var y=this,b=Date.now()-h;if(f)return;function T(){h=Date.now(),e.apply(y,_)}function v(){l=void 0}!a&&u&&!l&&T(),d(),u===void 0&&b>t?a?(h=Date.now(),s||(l=setTimeout(u?v:T,t))):T():s!==!0&&(l=setTimeout(u?v:T,u===void 0?t-b:t))}return g.cancel=p,g}var Et;(function(t){t.Left="left",t.Right="right",t.Auto="auto"})(Et||(Et={}));const re=t=>typeof t=="number",ir=t=>typeof t=="function",je=t=>Array.isArray(t),Ll=t=>t instanceof Object,Sn=t=>t.constructor.name!=="Function"&&t.constructor.name!=="Object",jr=t=>Ll(t)&&!je(t)&&!ir(t)&&!Sn(t),p_=t=>[Object,Array].includes((t||{}).constructor)&&!Object.entries(t||{}).length,Vt=(t,e,n=[],i=new Set)=>{if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;if(i.has(t))return!0;i.add(t);for(let r=0;r<t.length;r++)if(!Vt(t[r],e[r],n,i))return!1;return!0}if(t instanceof Date&&e instanceof Date)return t.getTime()===e.getTime();if(typeof t=="object"&&t!==null&&e!==null){if(typeof e!="object")return!1;if(t===e)return!0;const r=Object.keys(t).filter(o=>!n.includes(o)),s=Object.keys(e).filter(o=>!n.includes(o));if(r.length!==s.length)return!1;if(i.has(t))return!0;i.add(t);for(const o of r)if(!Vt(t[o],e[o],n,i))return!1;return!0}return t===e},Ai=t=>t.flat(),Mn=(t,e=new Map)=>{if(typeof t!="object"||t===null)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array){const n=[];e.set(t,n);for(const i of t)n.push(e.has(i)?e.get(i):Mn(i,e));return n}if(Sn(t))return t;if(t instanceof Object){const n={};e.set(t,n);const i=t;return Object.keys(t).reduce((r,s)=>(r[s]=e.has(i[s])?e.get(i[s]):Mn(i[s],e),r),n),n}return t},Be=(t,e,n=new Map)=>{if(!t||!e||t===e)return t;const i=Sn(t)?t:Mn(t);return n.has(e)?n.get(e):(n.set(e,i),Object.keys(e).forEach(r=>{r==="__proto__"||r==="constructor"||(jr(t[r])&&jr(e[r])?i[r]=Be(t[r],e[r],n):Sn(e)?i[r]=e:i[r]=Mn(e[r]))}),i)},Qr=(t,e,n)=>Fl(e,t);function rr(t,e,n){return ir(e)?e(t,n):e}function Io(t,e,n){return rr(t,e,n)}function st(t,e,n){return rr(t,e,n)}function xe(t){return t.filter(e=>e&&!re(e))}function ee(t,e,n){return Math.min(Math.max(t,e),n)}function __(t,...e){if(!t)return[void 0,void 0];if(je(e)){let n=0,i=0;return t.forEach((r,s)=>{let o=0,a=0;for(const c of e){const u=st(r,c,s)||0;u>=0?o+=u:a+=u}o>i&&(i=o),a<n&&(n=a)}),[n,i]}}function m_(t,e,n,i){const r=t.map((a,c)=>st(a,e,c)||0),s=n.map((a,c)=>{const u=El(t,(l,f)=>st(l,a,f)||0);return u===0&&Array.isArray(i)?i[c]:u<0}),o=n.map(()=>[]);return t.forEach((a,c)=>{let u=r[c],l=r[c];n.forEach((f,h)=>{const d=st(a,f,c)||0;d>=0?o[h].push([u,u+=d]):o[h].push([l,l+=d])})}),o.forEach((a,c)=>{a.isMostlyNegative=s[c]}),o}function Il(t,...e){return t?Zr(t,(i,r)=>Zr(e,s=>st(i,s,r))):void 0}function zl(t,...e){return t?qr(t,(i,r)=>qr(e,s=>st(i,s,r))):void 0}function ci(t,...e){return[Il(t,...e),zl(t,...e)]}function Jr(t,e,n,i=Et.Auto){if(t.length<=1)return t[0];const s=t.map((c,u)=>[c,u]).sort(([c,u],[l,f])=>st(c,n,u)-st(l,n,f)),o=s.map(([c,u])=>st(c,n,u)),a=i===Et.Right?bl(o,e,0,t.length-1):Ze(o,e,1,t.length);return i===Et.Right?s[a][0]:i===Et.Left?s[a-1][0]:e-o[a-1]>o[a]-e?s[a][0]:s[a-1][0]}function Bl(t,e,n,i=!1){if(!n)return[];const r=t.filter((s,o)=>{const a=st(s,n,o);return a>=e[0]&&a<=e[1]});if(i){if(r.length===0){const f=Jr(t,e[0],n,Et.Left),h=Jr(t,e[1],n,Et.Right);return[f,h].filter(Boolean)}const s=r[0],o=r[r.length-1],a=t.findIndex(f=>f===s),c=t.findIndex(f=>f===o),u=Math.max(0,a-1),l=Math.min(t.length-1,c+1);return t.slice(u,l+1)}return r}var Bt=[],Pl=function(){return Bt.some(function(t){return t.activeTargets.length>0})},Hl=function(){return Bt.some(function(t){return t.skippedTargets.length>0})},Kr="ResizeObserver loop completed with undelivered notifications.",Ul=function(){var t;typeof ErrorEvent=="function"?t=new ErrorEvent("error",{message:Kr}):(t=document.createEvent("Event"),t.initEvent("error",!1,!1),t.message=Kr),window.dispatchEvent(t)},Pe;(function(t){t.BORDER_BOX="border-box",t.CONTENT_BOX="content-box",t.DEVICE_PIXEL_CONTENT_BOX="device-pixel-content-box"})(Pe||(Pe={}));var Pt=function(t){return Object.freeze(t)},Wl=(function(){function t(e,n){this.inlineSize=e,this.blockSize=n,Pt(this)}return t})(),zo=(function(){function t(e,n,i,r){return this.x=e,this.y=n,this.width=i,this.height=r,this.top=this.y,this.left=this.x,this.bottom=this.top+this.height,this.right=this.left+this.width,Pt(this)}return t.prototype.toJSON=function(){var e=this,n=e.x,i=e.y,r=e.top,s=e.right,o=e.bottom,a=e.left,c=e.width,u=e.height;return{x:n,y:i,top:r,right:s,bottom:o,left:a,width:c,height:u}},t.fromRect=function(e){return new t(e.x,e.y,e.width,e.height)},t})(),sr=function(t){return t instanceof SVGElement&&"getBBox"in t},Bo=function(t){if(sr(t)){var e=t.getBBox(),n=e.width,i=e.height;return!n&&!i}var r=t,s=r.offsetWidth,o=r.offsetHeight;return!(s||o||t.getClientRects().length)},ts=function(t){var e;if(t instanceof Element)return!0;var n=(e=t?.ownerDocument)===null||e===void 0?void 0:e.defaultView;return!!(n&&t instanceof n.Element)},Vl=function(t){switch(t.tagName){case"INPUT":if(t.type!=="image")break;case"VIDEO":case"AUDIO":case"EMBED":case"OBJECT":case"CANVAS":case"IFRAME":case"IMG":return!0}return!1},Le=typeof window<"u"?window:{},nn=new WeakMap,es=/auto|scroll/,Yl=/^tb|vertical/,Xl=/msie|trident/i.test(Le.navigator&&Le.navigator.userAgent),ht=function(t){return parseFloat(t||"0")},se=function(t,e,n){return t===void 0&&(t=0),e===void 0&&(e=0),n===void 0&&(n=!1),new Wl((n?e:t)||0,(n?t:e)||0)},ns=Pt({devicePixelContentBoxSize:se(),borderBoxSize:se(),contentBoxSize:se(),contentRect:new zo(0,0,0,0)}),Po=function(t,e){if(e===void 0&&(e=!1),nn.has(t)&&!e)return nn.get(t);if(Bo(t))return nn.set(t,ns),ns;var n=getComputedStyle(t),i=sr(t)&&t.ownerSVGElement&&t.getBBox(),r=!Xl&&n.boxSizing==="border-box",s=Yl.test(n.writingMode||""),o=!i&&es.test(n.overflowY||""),a=!i&&es.test(n.overflowX||""),c=i?0:ht(n.paddingTop),u=i?0:ht(n.paddingRight),l=i?0:ht(n.paddingBottom),f=i?0:ht(n.paddingLeft),h=i?0:ht(n.borderTopWidth),d=i?0:ht(n.borderRightWidth),p=i?0:ht(n.borderBottomWidth),g=i?0:ht(n.borderLeftWidth),m=f+u,_=c+l,x=g+d,y=h+p,b=a?t.offsetHeight-y-t.clientHeight:0,T=o?t.offsetWidth-x-t.clientWidth:0,v=r?m+x:0,k=r?_+y:0,C=i?i.width:ht(n.width)-v-T,$=i?i.height:ht(n.height)-k-b,A=C+m+T+x,I=$+_+b+y,M=Pt({devicePixelContentBoxSize:se(Math.round(C*devicePixelRatio),Math.round($*devicePixelRatio),s),borderBoxSize:se(A,I,s),contentBoxSize:se(C,$,s),contentRect:new zo(f,c,C,$)});return nn.set(t,M),M},Ho=function(t,e,n){var i=Po(t,n),r=i.borderBoxSize,s=i.contentBoxSize,o=i.devicePixelContentBoxSize;switch(e){case Pe.DEVICE_PIXEL_CONTENT_BOX:return o;case Pe.BORDER_BOX:return r;default:return s}},Gl=(function(){function t(e){var n=Po(e);this.target=e,this.contentRect=n.contentRect,this.borderBoxSize=Pt([n.borderBoxSize]),this.contentBoxSize=Pt([n.contentBoxSize]),this.devicePixelContentBoxSize=Pt([n.devicePixelContentBoxSize])}return t})(),Uo=function(t){if(Bo(t))return 1/0;for(var e=0,n=t.parentNode;n;)e+=1,n=n.parentNode;return e},ql=function(){var t=1/0,e=[];Bt.forEach(function(o){if(o.activeTargets.length!==0){var a=[];o.activeTargets.forEach(function(u){var l=new Gl(u.target),f=Uo(u.target);a.push(l),u.lastReportedSize=Ho(u.target,u.observedBox),f<t&&(t=f)}),e.push(function(){o.callback.call(o.observer,a,o.observer)}),o.activeTargets.splice(0,o.activeTargets.length)}});for(var n=0,i=e;n<i.length;n++){var r=i[n];r()}return t},is=function(t){Bt.forEach(function(n){n.activeTargets.splice(0,n.activeTargets.length),n.skippedTargets.splice(0,n.skippedTargets.length),n.observationTargets.forEach(function(r){r.isActive()&&(Uo(r.target)>t?n.activeTargets.push(r):n.skippedTargets.push(r))})})},Zl=function(){var t=0;for(is(t);Pl();)t=ql(),is(t);return Hl()&&Ul(),t>0},ui,Wo=[],jl=function(){return Wo.splice(0).forEach(function(t){return t()})},Ql=function(t){if(!ui){var e=0,n=document.createTextNode(""),i={characterData:!0};new MutationObserver(function(){return jl()}).observe(n,i),ui=function(){n.textContent="".concat(e?e--:e++)}}Wo.push(t),ui()},Jl=function(t){Ql(function(){requestAnimationFrame(t)})},fn=0,Kl=function(){return!!fn},tf=250,ef={attributes:!0,characterData:!0,childList:!0,subtree:!0},rs=["resize","load","transitionend","animationend","animationstart","animationiteration","keyup","keydown","mouseup","mousedown","mouseover","mouseout","blur","focus"],ss=function(t){return t===void 0&&(t=0),Date.now()+t},li=!1,nf=(function(){function t(){var e=this;this.stopped=!0,this.listener=function(){return e.schedule()}}return t.prototype.run=function(e){var n=this;if(e===void 0&&(e=tf),!li){li=!0;var i=ss(e);Jl(function(){var r=!1;try{r=Zl()}finally{if(li=!1,e=i-ss(),!Kl())return;r?n.run(1e3):e>0?n.run(e):n.start()}})}},t.prototype.schedule=function(){this.stop(),this.run()},t.prototype.observe=function(){var e=this,n=function(){return e.observer&&e.observer.observe(document.body,ef)};document.body?n():Le.addEventListener("DOMContentLoaded",n)},t.prototype.start=function(){var e=this;this.stopped&&(this.stopped=!1,this.observer=new MutationObserver(this.listener),this.observe(),rs.forEach(function(n){return Le.addEventListener(n,e.listener,!0)}))},t.prototype.stop=function(){var e=this;this.stopped||(this.observer&&this.observer.disconnect(),rs.forEach(function(n){return Le.removeEventListener(n,e.listener,!0)}),this.stopped=!0)},t})(),Ci=new nf,os=function(t){!fn&&t>0&&Ci.start(),fn+=t,!fn&&Ci.stop()},rf=function(t){return!sr(t)&&!Vl(t)&&getComputedStyle(t).display==="inline"},sf=(function(){function t(e,n){this.target=e,this.observedBox=n||Pe.CONTENT_BOX,this.lastReportedSize={inlineSize:0,blockSize:0}}return t.prototype.isActive=function(){var e=Ho(this.target,this.observedBox,!0);return rf(this.target)&&(this.lastReportedSize=e),this.lastReportedSize.inlineSize!==e.inlineSize||this.lastReportedSize.blockSize!==e.blockSize},t})(),of=(function(){function t(e,n){this.activeTargets=[],this.skippedTargets=[],this.observationTargets=[],this.observer=e,this.callback=n}return t})(),rn=new WeakMap,as=function(t,e){for(var n=0;n<t.length;n+=1)if(t[n].target===e)return n;return-1},sn=(function(){function t(){}return t.connect=function(e,n){var i=new of(e,n);rn.set(e,i)},t.observe=function(e,n,i){var r=rn.get(e),s=r.observationTargets.length===0;as(r.observationTargets,n)<0&&(s&&Bt.push(r),r.observationTargets.push(new sf(n,i&&i.box)),os(1),Ci.schedule())},t.unobserve=function(e,n){var i=rn.get(e),r=as(i.observationTargets,n),s=i.observationTargets.length===1;r>=0&&(s&&Bt.splice(Bt.indexOf(i),1),i.observationTargets.splice(r,1),os(-1))},t.disconnect=function(e){var n=this,i=rn.get(e);i.observationTargets.slice().forEach(function(r){return n.unobserve(e,r.target)}),i.activeTargets.splice(0,i.activeTargets.length)},t})(),af=(function(){function t(e){if(arguments.length===0)throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");if(typeof e!="function")throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");sn.connect(this,e)}return t.prototype.observe=function(e,n){if(arguments.length===0)throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!ts(e))throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");sn.observe(this,e,n)},t.prototype.unobserve=function(e){if(arguments.length===0)throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!ts(e))throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");sn.unobserve(this,e)},t.prototype.disconnect=function(){sn.disconnect(this)},t.toString=function(){return"function ResizeObserver () { [polyfill code] }"},t})();const cf=globalThis.ResizeObserver||af,Vo={duration:void 0,margin:{top:0,bottom:0,left:0,right:0},padding:{top:0,bottom:0,left:0,right:0},sizing:fe.Fit,width:void 0,height:void 0,svgDefs:void 0,ariaLabel:void 0};class He{constructor(e){this._defaultConfig=Vo,this._isFirstRender=!0,this._renderAnimationFrameId=null,this._container=e;const n=$t(this._container);n.attr("role","figure"),this.svg=n.append("svg").style("display","block").attr("xmlns","http://www.w3.org/2000/svg").attr("height",He.DEFAULT_CONTAINER_HEIGHT).attr("aria-hidden",!0),this._svgDefs=this.svg.append("defs"),this._svgDefsExternal=this.svg.append("defs"),this.element=this.svg.node()}updateContainer(e){var n;this.prevConfig=this.config,this.config=Be(this._defaultConfig,e),e?.svgDefs!==((n=this.prevConfig)===null||n===void 0?void 0:n.svgDefs)&&(this._svgDefsExternal.selectAll("*").remove(),this._svgDefsExternal.html(e.svgDefs))}_preRender(){}_render(e){const{config:n}=this;$t(this._container).attr("aria-label",n.ariaLabel),this._isFirstRender=!1}render(e=this.config.duration){const n=this.config.width||this.containerWidth,i=this.config.height||this.containerHeight;this.svg.attr("width",n).attr("height",i),this._resizeObserver||this._setUpResizeObserver(),cancelAnimationFrame(this._renderAnimationFrameId),this._renderAnimationFrameId=requestAnimationFrame(()=>{this._preRender(),this._render(e)})}get containerWidth(){return this.config.width?this.element.clientWidth:this._container.clientWidth||this._container.getBoundingClientRect().width}get containerHeight(){return this.config.height?this.element.clientHeight:this._container.clientHeight||this._container.getBoundingClientRect().height||He.DEFAULT_CONTAINER_HEIGHT}get width(){return ee(this.containerWidth-this.config.margin.left-this.config.margin.right,0,Number.POSITIVE_INFINITY)}get height(){return ee(this.containerHeight-this.config.margin.top-this.config.margin.bottom,0,Number.POSITIVE_INFINITY)}_removeAllChildren(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild)}_onResize(){const{config:e}=this;(e.sizing===fe.Fit||e.sizing===fe.FitWidth)&&this.render(0)}_setUpResizeObserver(){if(this._resizeObserver)return;const e=this._container.getBoundingClientRect();this._containerSize={width:e.width,height:e.height},this._resizeObserver=new cf((n,i)=>{cancelAnimationFrame(this._resizeObserverAnimationFrameId),this._resizeObserverAnimationFrameId=requestAnimationFrame(()=>{const r=this._container.getBoundingClientRect(),s={width:r.width,height:r.height};!Vt(this._containerSize,s)&&s.width&&s.height&&(this._containerSize=s,this._onResize())})}),this._resizeObserver.observe(this._container)}destroy(){var e;cancelAnimationFrame(this._renderAnimationFrameId),cancelAnimationFrame(this._resizeObserverAnimationFrameId),(e=this._resizeObserver)===null||e===void 0||e.disconnect(),this.svg.remove()}}He.DEFAULT_CONTAINER_HEIGHT=300;function uf(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function lf(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var ff=(function(){function t(n){var i=this;this._insertTag=function(r){var s;i.tags.length===0?i.insertionPoint?s=i.insertionPoint.nextSibling:i.prepend?s=i.container.firstChild:s=i.before:s=i.tags[i.tags.length-1].nextSibling,i.container.insertBefore(r,s),i.tags.push(r)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(i){i.forEach(this._insertTag)},e.insert=function(i){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(lf(this));var r=this.tags[this.tags.length-1];if(this.isSpeedy){var s=uf(r);try{s.insertRule(i,s.cssRules.length)}catch{}}else r.appendChild(document.createTextNode(i));this.ctr++},e.flush=function(){this.tags.forEach(function(i){var r;return(r=i.parentNode)==null?void 0:r.removeChild(i)}),this.tags=[],this.ctr=0},t})(),G="-ms-",An="-moz-",F="-webkit-",Yo="comm",or="rule",ar="decl",hf="@import",Xo="@keyframes",df="@layer",gf=Math.abs,Gn=String.fromCharCode,pf=Object.assign;function _f(t,e){return Y(t,0)^45?(((e<<2^Y(t,0))<<2^Y(t,1))<<2^Y(t,2))<<2^Y(t,3):0}function Go(t){return t.trim()}function mf(t,e){return(t=e.exec(t))?t[0]:t}function L(t,e,n){return t.replace(e,n)}function $i(t,e){return t.indexOf(e)}function Y(t,e){return t.charCodeAt(e)|0}function Ue(t,e,n){return t.slice(e,n)}function dt(t){return t.length}function cr(t){return t.length}function on(t,e){return e.push(t),t}function vf(t,e){return t.map(e).join("")}var qn=1,he=1,qo=0,K=0,U=0,me="";function Zn(t,e,n,i,r,s,o){return{value:t,root:e,parent:n,type:i,props:r,children:s,line:qn,column:he,length:o,return:""}}function be(t,e){return pf(Zn("",null,null,"",null,null,0),t,{length:-t.length},e)}function yf(){return U}function xf(){return U=K>0?Y(me,--K):0,he--,U===10&&(he=1,qn--),U}function nt(){return U=K<qo?Y(me,K++):0,he++,U===10&&(he=1,qn++),U}function gt(){return Y(me,K)}function hn(){return K}function Qe(t,e){return Ue(me,t,e)}function We(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Zo(t){return qn=he=1,qo=dt(me=t),K=0,[]}function jo(t){return me="",t}function dn(t){return Go(Qe(K-1,Ei(t===91?t+2:t===40?t+1:t)))}function bf(t){for(;(U=gt())&&U<33;)nt();return We(t)>2||We(U)>3?"":" "}function wf(t,e){for(;--e&&nt()&&!(U<48||U>102||U>57&&U<65||U>70&&U<97););return Qe(t,hn()+(e<6&&gt()==32&&nt()==32))}function Ei(t){for(;nt();)switch(U){case t:return K;case 34:case 39:t!==34&&t!==39&&Ei(U);break;case 40:t===41&&Ei(t);break;case 92:nt();break}return K}function kf(t,e){for(;nt()&&t+U!==57;)if(t+U===84&&gt()===47)break;return"/*"+Qe(e,K-1)+"*"+Gn(t===47?t:nt())}function Tf(t){for(;!We(gt());)nt();return Qe(t,K)}function Sf(t){return jo(gn("",null,null,null,[""],t=Zo(t),0,[0],t))}function gn(t,e,n,i,r,s,o,a,c){for(var u=0,l=0,f=o,h=0,d=0,p=0,g=1,m=1,_=1,x=0,y="",b=r,T=s,v=i,k=y;m;)switch(p=x,x=nt()){case 40:if(p!=108&&Y(k,f-1)==58){$i(k+=L(dn(x),"&","&\f"),"&\f")!=-1&&(_=-1);break}case 34:case 39:case 91:k+=dn(x);break;case 9:case 10:case 13:case 32:k+=bf(p);break;case 92:k+=wf(hn()-1,7);continue;case 47:switch(gt()){case 42:case 47:on(Mf(kf(nt(),hn()),e,n),c);break;default:k+="/"}break;case 123*g:a[u++]=dt(k)*_;case 125*g:case 59:case 0:switch(x){case 0:case 125:m=0;case 59+l:_==-1&&(k=L(k,/\f/g,"")),d>0&&dt(k)-f&&on(d>32?us(k+";",i,n,f-1):us(L(k," ","")+";",i,n,f-2),c);break;case 59:k+=";";default:if(on(v=cs(k,e,n,u,l,r,a,y,b=[],T=[],f),s),x===123)if(l===0)gn(k,e,v,v,b,s,f,a,T);else switch(h===99&&Y(k,3)===110?100:h){case 100:case 108:case 109:case 115:gn(t,v,v,i&&on(cs(t,v,v,0,0,r,a,y,r,b=[],f),T),r,T,f,a,i?b:T);break;default:gn(k,v,v,v,[""],T,0,a,T)}}u=l=d=0,g=_=1,y=k="",f=o;break;case 58:f=1+dt(k),d=p;default:if(g<1){if(x==123)--g;else if(x==125&&g++==0&&xf()==125)continue}switch(k+=Gn(x),x*g){case 38:_=l>0?1:(k+="\f",-1);break;case 44:a[u++]=(dt(k)-1)*_,_=1;break;case 64:gt()===45&&(k+=dn(nt())),h=gt(),l=f=dt(y=k+=Tf(hn())),x++;break;case 45:p===45&&dt(k)==2&&(g=0)}}return s}function cs(t,e,n,i,r,s,o,a,c,u,l){for(var f=r-1,h=r===0?s:[""],d=cr(h),p=0,g=0,m=0;p<i;++p)for(var _=0,x=Ue(t,f+1,f=gf(g=o[p])),y=t;_<d;++_)(y=Go(g>0?h[_]+" "+x:L(x,/&\f/g,h[_])))&&(c[m++]=y);return Zn(t,e,n,r===0?or:a,c,u,l)}function Mf(t,e,n){return Zn(t,e,n,Yo,Gn(yf()),Ue(t,2,-2),0)}function us(t,e,n,i){return Zn(t,e,n,ar,Ue(t,0,i),Ue(t,i+1,-1),i)}function oe(t,e){for(var n="",i=cr(t),r=0;r<i;r++)n+=e(t[r],r,t,e)||"";return n}function Af(t,e,n,i){switch(t.type){case df:if(t.children.length)break;case hf:case ar:return t.return=t.return||t.value;case Yo:return"";case Xo:return t.return=t.value+"{"+oe(t.children,i)+"}";case or:t.value=t.props.join(",")}return dt(n=oe(t.children,i))?t.return=t.value+"{"+n+"}":""}function Cf(t){var e=cr(t);return function(n,i,r,s){for(var o="",a=0;a<e;a++)o+=t[a](n,i,r,s)||"";return o}}function $f(t){return function(e){e.root||(e=e.return)&&t(e)}}function Ef(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var Nf=function(e,n,i){for(var r=0,s=0;r=s,s=gt(),r===38&&s===12&&(n[i]=1),!We(s);)nt();return Qe(e,K)},Of=function(e,n){var i=-1,r=44;do switch(We(r)){case 0:r===38&&gt()===12&&(n[i]=1),e[i]+=Nf(K-1,n,i);break;case 2:e[i]+=dn(r);break;case 4:if(r===44){e[++i]=gt()===58?"&\f":"",n[i]=e[i].length;break}default:e[i]+=Gn(r)}while(r=nt());return e},Df=function(e,n){return jo(Of(Zo(e),n))},ls=new WeakMap,Rf=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,i=e.parent,r=e.column===i.column&&e.line===i.line;i.type!=="rule";)if(i=i.parent,!i)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!ls.get(i))&&!r){ls.set(e,!0);for(var s=[],o=Df(n,s),a=i.props,c=0,u=0;c<o.length;c++)for(var l=0;l<a.length;l++,u++)e.props[u]=s[c]?o[c].replace(/&\f/g,a[l]):a[l]+" "+o[c]}}},Ff=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function Qo(t,e){switch(_f(t,e)){case 5103:return F+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return F+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return F+t+An+t+G+t+t;case 6828:case 4268:return F+t+G+t+t;case 6165:return F+t+G+"flex-"+t+t;case 5187:return F+t+L(t,/(\w+).+(:[^]+)/,F+"box-$1$2"+G+"flex-$1$2")+t;case 5443:return F+t+G+"flex-item-"+L(t,/flex-|-self/,"")+t;case 4675:return F+t+G+"flex-line-pack"+L(t,/align-content|flex-|-self/,"")+t;case 5548:return F+t+G+L(t,"shrink","negative")+t;case 5292:return F+t+G+L(t,"basis","preferred-size")+t;case 6060:return F+"box-"+L(t,"-grow","")+F+t+G+L(t,"grow","positive")+t;case 4554:return F+L(t,/([^-])(transform)/g,"$1"+F+"$2")+t;case 6187:return L(L(L(t,/(zoom-|grab)/,F+"$1"),/(image-set)/,F+"$1"),t,"")+t;case 5495:case 3959:return L(t,/(image-set\([^]*)/,F+"$1$`$1");case 4968:return L(L(t,/(.+:)(flex-)?(.*)/,F+"box-pack:$3"+G+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+F+t+t;case 4095:case 3583:case 4068:case 2532:return L(t,/(.+)-inline(.+)/,F+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(dt(t)-1-e>6)switch(Y(t,e+1)){case 109:if(Y(t,e+4)!==45)break;case 102:return L(t,/(.+:)(.+)-([^]+)/,"$1"+F+"$2-$3$1"+An+(Y(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~$i(t,"stretch")?Qo(L(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(Y(t,e+1)!==115)break;case 6444:switch(Y(t,dt(t)-3-(~$i(t,"!important")&&10))){case 107:return L(t,":",":"+F)+t;case 101:return L(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+F+(Y(t,14)===45?"inline-":"")+"box$3$1"+F+"$2$3$1"+G+"$2box$3")+t}break;case 5936:switch(Y(t,e+11)){case 114:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return F+t+G+t+t}return t}var Lf=function(e,n,i,r){if(e.length>-1&&!e.return)switch(e.type){case ar:e.return=Qo(e.value,e.length);break;case Xo:return oe([be(e,{value:L(e.value,"@","@"+F)})],r);case or:if(e.length)return vf(e.props,function(s){switch(mf(s,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return oe([be(e,{props:[L(s,/:(read-\w+)/,":"+An+"$1")]})],r);case"::placeholder":return oe([be(e,{props:[L(s,/:(plac\w+)/,":"+F+"input-$1")]}),be(e,{props:[L(s,/:(plac\w+)/,":"+An+"$1")]}),be(e,{props:[L(s,/:(plac\w+)/,G+"input-$1")]})],r)}return""})}},If=[Lf],zf=function(e){var n=e.key;if(n==="css"){var i=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(i,function(g){var m=g.getAttribute("data-emotion");m.indexOf(" ")!==-1&&(document.head.appendChild(g),g.setAttribute("data-s",""))})}var r=e.stylisPlugins||If,s={},o,a=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(g){for(var m=g.getAttribute("data-emotion").split(" "),_=1;_<m.length;_++)s[m[_]]=!0;a.push(g)});var c,u=[Rf,Ff];{var l,f=[Af,$f(function(g){l.insert(g)})],h=Cf(u.concat(r,f)),d=function(m){return oe(Sf(m),h)};c=function(m,_,x,y){l=x,d(m?m+"{"+_.styles+"}":_.styles),y&&(p.inserted[_.name]=!0)}}var p={key:n,sheet:new ff({key:n,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:c};return p.sheet.hydrate(a),p};function Bf(t){for(var e=0,n,i=0,r=t.length;r>=4;++i,r-=4)n=t.charCodeAt(i)&255|(t.charCodeAt(++i)&255)<<8|(t.charCodeAt(++i)&255)<<16|(t.charCodeAt(++i)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(r){case 3:e^=(t.charCodeAt(i+2)&255)<<16;case 2:e^=(t.charCodeAt(i+1)&255)<<8;case 1:e^=t.charCodeAt(i)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var Pf={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Hf=/[A-Z]|^ms/g,Uf=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Jo=function(e){return e.charCodeAt(1)===45},fs=function(e){return e!=null&&typeof e!="boolean"},fi=Ef(function(t){return Jo(t)?t:t.replace(Hf,"-$&").toLowerCase()}),hs=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(Uf,function(i,r,s){return Nt={name:r,styles:s,next:Nt},r})}return Pf[e]!==1&&!Jo(e)&&typeof n=="number"&&n!==0?n+"px":n};function Cn(t,e,n){if(n==null)return"";var i=n;if(i.__emotion_styles!==void 0)return i;switch(typeof n){case"boolean":return"";case"object":{var r=n;if(r.anim===1)return Nt={name:r.name,styles:r.styles,next:Nt},r.name;var s=n;if(s.styles!==void 0){var o=s.next;if(o!==void 0)for(;o!==void 0;)Nt={name:o.name,styles:o.styles,next:Nt},o=o.next;var a=s.styles+";";return a}return Wf(t,e,n)}}var c=n;if(e==null)return c;var u=e[c];return u!==void 0?u:c}function Wf(t,e,n){var i="";if(Array.isArray(n))for(var r=0;r<n.length;r++)i+=Cn(t,e,n[r])+";";else for(var s in n){var o=n[s];if(typeof o!="object"){var a=o;e!=null&&e[a]!==void 0?i+=s+"{"+e[a]+"}":fs(a)&&(i+=fi(s)+":"+hs(s,a)+";")}else if(Array.isArray(o)&&typeof o[0]=="string"&&(e==null||e[o[0]]===void 0))for(var c=0;c<o.length;c++)fs(o[c])&&(i+=fi(s)+":"+hs(s,o[c])+";");else{var u=Cn(t,e,o);switch(s){case"animation":case"animationName":{i+=fi(s)+":"+u+";";break}default:i+=s+"{"+u+"}"}}}return i}var ds=/label:\s*([^\s;{]+)\s*(;|$)/g,Nt;function hi(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var i=!0,r="";Nt=void 0;var s=t[0];if(s==null||s.raw===void 0)i=!1,r+=Cn(n,e,s);else{var o=s;r+=o[0]}for(var a=1;a<t.length;a++)if(r+=Cn(n,e,t[a]),i){var c=s;r+=c[a]}ds.lastIndex=0;for(var u="",l;(l=ds.exec(r))!==null;)u+="-"+l[1];var f=Bf(r)+u;return{name:f,styles:r,next:Nt}}function Ko(t,e,n){var i="";return n.split(" ").forEach(function(r){t[r]!==void 0?e.push(t[r]+";"):r&&(i+=r+" ")}),i}var Vf=function(e,n,i){var r=e.key+"-"+n.name;e.registered[r]===void 0&&(e.registered[r]=n.styles)},Yf=function(e,n,i){Vf(e,n);var r=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var s=n;do e.insert(n===s?"."+r:"",s,e.sheet,!0),s=s.next;while(s!==void 0)}};function gs(t,e){if(t.inserted[e.name]===void 0)return t.insert("",e,t.sheet,!0)}function ps(t,e,n){var i=[],r=Ko(t,i,n);return i.length<2?n:r+e(i)}var Xf=function(e){var n=zf(e);n.sheet.speedy=function(a){this.isSpeedy=a},n.compat=!0;var i=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered,void 0);return Yf(n,f),n.key+"-"+f.name},r=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered),h="animation-"+f.name;return gs(n,{name:f.name,styles:"@keyframes "+h+"{"+f.styles+"}"}),h},s=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered);gs(n,f)},o=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];return ps(n.registered,i,Gf(u))};return{css:i,cx:o,injectGlobal:s,keyframes:r,hydrate:function(c){c.forEach(function(u){n.inserted[u]=!0})},flush:function(){n.registered={},n.inserted={},n.sheet.flush()},sheet:n.sheet,cache:n,getRegisteredStyles:Ko.bind(null,n.registered),merge:ps.bind(null,n.registered,i)}},Gf=function t(e){for(var n="",i=0;i<e.length;i++){var r=e[i];if(r!=null){var s=void 0;switch(typeof r){case"boolean":break;case"object":{if(Array.isArray(r))s=t(r);else{s="";for(var o in r)r[o]&&o&&(s&&(s+=" "),s+=o)}break}default:s=r}s&&(n&&(n+=" "),n+=s)}}return n},ta=Xf({key:"css"}),ur=ta.injectGlobal,X=ta.css;function Ni(t){var e;t=String(t);const n=parseFloat(t),i=((e=t.match(/[\d.\-+]*\s*(.*)/))===null||e===void 0?void 0:e[1])||"";return[n,i]}function ea(){return typeof window<"u"&&typeof document<"u"}function Oi(t,e){var n;const i=Ni(getComputedStyle(t).getPropertyValue(e));return i[0]*((n=lr(i[1],t))!==null&&n!==void 0?n:1)}function na(t,e){const n=document.createElement("div");n.style.height=`128${t}`,e.appendChild(n);const i=Oi(n,"height")/128;return e.removeChild(n),i}let di=null;function we(){return ea()?(di===null&&(di=na("in",document.body)),di):96}function lr(t,e){var n;if(!t&&t!==0)return null;if(!ea()){const o=Ni(String(t));if(!isNaN(o[0])){const a=((n=o[1])===null||n===void 0?void 0:n.toLowerCase())||"px";if(a==="px"||a==="")return o[0];if(a==="em"||a==="rem")return o[0]*16;if(a==="in")return o[0]*96;if(a==="cm")return o[0]*(96/2.54);if(a==="mm")return o[0]*(96/25.4);if(a==="pt")return o[0]*(96/72);if(a==="pc")return o[0]*(96/6)}return null}let i=document.body;e&&e!==window&&e!==document&&(i=e);const r=(String(t)||"px").trim().toLowerCase();switch(r){case"%":return i.clientHeight/100;case"ch":case"ex":return na(r,i);case"em":return Oi(i,"font-size");case"rem":return Oi(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return we();case"cm":return we()/2.54;case"mm":return we()/25.4;case"pt":return we()/72;case"pc":return we()/6;case"px":return 1}const s=Ni(r);if(!isNaN(s[0])){if(s[1]){const o=lr(s[1],i);return typeof o=="number"?s[0]*o:null}return s[0]}return null}function ia(){const t=()=>Math.floor((1+crypto.getRandomValues(new Uint32Array(1))[0])*65536).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}const _s=new WeakMap;function qf(t,e){const n=t.substr(4,t.length-5);let i=_s.get(e);if(i||(i=new Map,_s.set(e,i)),i.has(n))return i.get(n);const r=getComputedStyle(e).getPropertyValue(n);return i.set(n,r),r}function Zf(t,e,n=0){const[i,r,s,o]=[t.x+n,t.y+t.height-2*n,t.x+t.width-2*n,t.y+n],[a,c,u,l]=[e.x+n,e.y+e.height-2*n,e.x+e.width-2*n,e.y+n];return!(r<l||c<o||s<a||u<i)}const ra='html[data-theme="dark"],html.dark-theme,body.dark-theme,html.theme-dark,body.theme-dark';function fr(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function sa(t,e){var n=Object.create(t.prototype);for(var i in e)n[i]=e[i];return n}function Je(){}var Ve=.7,$n=1/Ve,ae="\\s*([+-]?\\d+)\\s*",Ye="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",pt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",jf=/^#([0-9a-f]{3,8})$/,Qf=new RegExp(`^rgb\\(${ae},${ae},${ae}\\)$`),Jf=new RegExp(`^rgb\\(${pt},${pt},${pt}\\)$`),Kf=new RegExp(`^rgba\\(${ae},${ae},${ae},${Ye}\\)$`),th=new RegExp(`^rgba\\(${pt},${pt},${pt},${Ye}\\)$`),eh=new RegExp(`^hsl\\(${Ye},${pt},${pt}\\)$`),nh=new RegExp(`^hsla\\(${Ye},${pt},${pt},${Ye}\\)$`),ms={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};fr(Je,Yt,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:vs,formatHex:vs,formatHex8:ih,formatHsl:rh,formatRgb:ys,toString:ys});function vs(){return this.rgb().formatHex()}function ih(){return this.rgb().formatHex8()}function rh(){return oa(this).formatHsl()}function ys(){return this.rgb().formatRgb()}function Yt(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=jf.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?xs(e):n===3?new Q(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):n===8?an(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):n===4?an(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Qf.exec(t))?new Q(e[1],e[2],e[3],1):(e=Jf.exec(t))?new Q(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Kf.exec(t))?an(e[1],e[2],e[3],e[4]):(e=th.exec(t))?an(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=eh.exec(t))?ks(e[1],e[2]/100,e[3]/100,1):(e=nh.exec(t))?ks(e[1],e[2]/100,e[3]/100,e[4]):ms.hasOwnProperty(t)?xs(ms[t]):t==="transparent"?new Q(NaN,NaN,NaN,0):null}function xs(t){return new Q(t>>16&255,t>>8&255,t&255,1)}function an(t,e,n,i){return i<=0&&(t=e=n=NaN),new Q(t,e,n,i)}function sh(t){return t instanceof Je||(t=Yt(t)),t?(t=t.rgb(),new Q(t.r,t.g,t.b,t.opacity)):new Q}function Di(t,e,n,i){return arguments.length===1?sh(t):new Q(t,e,n,i??1)}function Q(t,e,n,i){this.r=+t,this.g=+e,this.b=+n,this.opacity=+i}fr(Q,Di,sa(Je,{brighter(t){return t=t==null?$n:Math.pow($n,t),new Q(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Ve:Math.pow(Ve,t),new Q(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Q(Ht(this.r),Ht(this.g),Ht(this.b),En(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:bs,formatHex:bs,formatHex8:oh,formatRgb:ws,toString:ws}));function bs(){return`#${Lt(this.r)}${Lt(this.g)}${Lt(this.b)}`}function oh(){return`#${Lt(this.r)}${Lt(this.g)}${Lt(this.b)}${Lt((isNaN(this.opacity)?1:this.opacity)*255)}`}function ws(){const t=En(this.opacity);return`${t===1?"rgb(":"rgba("}${Ht(this.r)}, ${Ht(this.g)}, ${Ht(this.b)}${t===1?")":`, ${t})`}`}function En(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ht(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Lt(t){return t=Ht(t),(t<16?"0":"")+t.toString(16)}function ks(t,e,n,i){return i<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new ct(t,e,n,i)}function oa(t){if(t instanceof ct)return new ct(t.h,t.s,t.l,t.opacity);if(t instanceof Je||(t=Yt(t)),!t)return new ct;if(t instanceof ct)return t;t=t.rgb();var e=t.r/255,n=t.g/255,i=t.b/255,r=Math.min(e,n,i),s=Math.max(e,n,i),o=NaN,a=s-r,c=(s+r)/2;return a?(e===s?o=(n-i)/a+(n<i)*6:n===s?o=(i-e)/a+2:o=(e-n)/a+4,a/=c<.5?s+r:2-s-r,o*=60):a=c>0&&c<1?0:o,new ct(o,a,c,t.opacity)}function hr(t,e,n,i){return arguments.length===1?oa(t):new ct(t,e,n,i??1)}function ct(t,e,n,i){this.h=+t,this.s=+e,this.l=+n,this.opacity=+i}fr(ct,hr,sa(Je,{brighter(t){return t=t==null?$n:Math.pow($n,t),new ct(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Ve:Math.pow(Ve,t),new ct(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*e,r=2*n-i;return new Q(gi(t>=240?t-240:t+120,r,i),gi(t,r,i),gi(t<120?t+240:t-120,r,i),this.opacity)},clamp(){return new ct(Ts(this.h),cn(this.s),cn(this.l),En(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=En(this.opacity);return`${t===1?"hsl(":"hsla("}${Ts(this.h)}, ${cn(this.s)*100}%, ${cn(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Ts(t){return t=(t||0)%360,t<0?t+360:t}function cn(t){return Math.max(0,Math.min(1,t||0))}function gi(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}const Ce=globalThis?.UNOVIS_COLORS||["#4D8CFD","#FF6B7E","#F4B83E","#A6CC74","#00C19A","#6859BE"],ah=globalThis?.UNOVIS_COLORS_DARK||["#4D8CFD","#FF6B7E","#FFC16D","#A6CC74","#00C19A","#7887E0"],Mt=t=>`--vis-${re(t)?`color${t%Ce.length}`:t}`;function ch(t,e=.4){const n=hr(t);return n.l=n.l*(1+e),n.formatHex()}function uh(t,e=.4,n=.6){const i=hr(t);return i.s=i.s*(1-n),i.l=i.l*(1-e),i.formatHex()}const Nn=10,Ri=[{id:"stripes-diagonal",svg:'<path d="M-1,1 l2,-2 M0,10 l10,-10 M9,11 l2,-2" stroke="#000"/>'},{id:"dots",svg:'<path d="m0-1.5a1 1 0 010 3m10-3a1 1 0 000 3M5 3.5a1 1 0 010 3 1 1 0 010-3M0 8.5 a1 1 0 010 3m10-3a1 1 0 000 3" fill"#000"/>'},{id:"stripes-vertical",svg:'<path d="M 5,-1 L5,11" stroke="#000"/>'},{id:"crosshatch",svg:'<path d="M0 0L10 10ZM10 0L0 10Z" stroke="#000"/>'},{id:"waves",svg:'<path d="M0 4Q2.5 1 5 4 7.5 7 10 4v2Q7.5 9 5 6 2.5 3 0 6Z" fill="#000"/>'},{id:"circles",svg:'<circle cx="5" cy="5" r="3" stroke="#000" fill="#fff"/>'}],Fi=[{id:"circle",marker:'<circle cx="5" cy="5" r="5"/>',dashArray:[]},{id:"triangle",marker:'<path d="M5,0 L10,9 L0,9Z">',dashArray:[9,1]},{id:"diamond",marker:'<path d="M 0 5 L5 0 L 10 5 L 5 10 L 0 5Z">',dashArray:[2]},{id:"arrow",marker:'<path d="M4 0 0 0 6 5 0 10 4 10 10 5Z">',dashArray:[2,3,8,3]},{id:"square",marker:'<rect x="1" y="1" width="8" height="8"/>',dashArray:[6]},{id:"star",marker:'<path d="m2 9 3-9 3 9L0 3h10Z"/>',dashArray:[1,6]}];function At(t){return`vis-${`pattern-${t.svg?"fill":"marker"}`}-${t.id}`}const lh=t=>`<mask id="${At(t)}">
1
+ import{d as Yn,o as ne,c as ie,q as oi,F as Mc,y as Ac,i as Cc,Q as $c,m as Ec,t as Nc,as as Oc,at as Dc,h as Ji,au as Vr,av as Rc,an as xo,B as bo,K as wo,ad as Ki,H as ze,r as Ct,Y as Fc,aw as Lc,V as Ic,ax as ai,M as ye,L as zc}from"./Du2W7Jne.js";import{g as Bc}from"./D7W_4Sqc.js";const Pc=Yn({__name:"ChartLegend",props:{items:{},dense:{type:Boolean}},setup(t){return(e,n)=>(ne(),ie("div",{class:oi(["flex items-center justify-center flex-wrap",t.dense?"gap-4 mt-2 text-xs text-gray-500":"gap-6 mt-4 text-sm"])},[(ne(!0),ie(Mc,null,Ac(t.items,i=>(ne(),ie("span",{key:i.label,class:oi(["flex items-center",t.dense?"gap-1":"gap-2"])},[Cc("span",{class:oi(["rounded-full inline-block",t.dense?"w-2.5 h-2.5":"w-3 h-3"]),style:$c({backgroundColor:i.color})},null,6),Ec(" "+Nc(i.label),1)],2))),128))],2))}}),g_=Object.assign(Pc,{__name:"ChartLegend"});var ki="http://www.w3.org/1999/xhtml";const Yr={svg:"http://www.w3.org/2000/svg",xhtml:ki,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Xn(t){var e=t+="",n=e.indexOf(":");return n>=0&&(e=t.slice(0,n))!=="xmlns"&&(t=t.slice(n+1)),Yr.hasOwnProperty(e)?{space:Yr[e],local:t}:t}function Hc(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===ki&&e.documentElement.namespaceURI===ki?e.createElement(t):e.createElementNS(n,t)}}function Uc(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function ko(t){var e=Xn(t);return(e.local?Uc:Hc)(e)}function Wc(){}function tr(t){return t==null?Wc:function(){return this.querySelector(t)}}function Vc(t){typeof t!="function"&&(t=tr(t));for(var e=this._groups,n=e.length,i=new Array(n),r=0;r<n;++r)for(var s=e[r],o=s.length,a=i[r]=new Array(o),c,u,l=0;l<o;++l)(c=s[l])&&(u=t.call(c,c.__data__,l,s))&&("__data__"in c&&(u.__data__=c.__data__),a[l]=u);return new it(i,this._parents)}function Yc(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function Xc(){return[]}function To(t){return t==null?Xc:function(){return this.querySelectorAll(t)}}function Gc(t){return function(){return Yc(t.apply(this,arguments))}}function qc(t){typeof t=="function"?t=Gc(t):t=To(t);for(var e=this._groups,n=e.length,i=[],r=[],s=0;s<n;++s)for(var o=e[s],a=o.length,c,u=0;u<a;++u)(c=o[u])&&(i.push(t.call(c,c.__data__,u,o)),r.push(c));return new it(i,r)}function So(t){return function(){return this.matches(t)}}function Mo(t){return function(e){return e.matches(t)}}var Zc=Array.prototype.find;function jc(t){return function(){return Zc.call(this.children,t)}}function Qc(){return this.firstElementChild}function Jc(t){return this.select(t==null?Qc:jc(typeof t=="function"?t:Mo(t)))}var Kc=Array.prototype.filter;function tu(){return Array.from(this.children)}function eu(t){return function(){return Kc.call(this.children,t)}}function nu(t){return this.selectAll(t==null?tu:eu(typeof t=="function"?t:Mo(t)))}function iu(t){typeof t!="function"&&(t=So(t));for(var e=this._groups,n=e.length,i=new Array(n),r=0;r<n;++r)for(var s=e[r],o=s.length,a=i[r]=[],c,u=0;u<o;++u)(c=s[u])&&t.call(c,c.__data__,u,s)&&a.push(c);return new it(i,this._parents)}function Ao(t){return new Array(t.length)}function ru(){return new it(this._enter||this._groups.map(Ao),this._parents)}function kn(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}kn.prototype={constructor:kn,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function su(t){return function(){return t}}function ou(t,e,n,i,r,s){for(var o=0,a,c=e.length,u=s.length;o<u;++o)(a=e[o])?(a.__data__=s[o],i[o]=a):n[o]=new kn(t,s[o]);for(;o<c;++o)(a=e[o])&&(r[o]=a)}function au(t,e,n,i,r,s,o){var a,c,u=new Map,l=e.length,f=s.length,h=new Array(l),d;for(a=0;a<l;++a)(c=e[a])&&(h[a]=d=o.call(c,c.__data__,a,e)+"",u.has(d)?r[a]=c:u.set(d,c));for(a=0;a<f;++a)d=o.call(t,s[a],a,s)+"",(c=u.get(d))?(i[a]=c,c.__data__=s[a],u.delete(d)):n[a]=new kn(t,s[a]);for(a=0;a<l;++a)(c=e[a])&&u.get(h[a])===c&&(r[a]=c)}function cu(t){return t.__data__}function uu(t,e){if(!arguments.length)return Array.from(this,cu);var n=e?au:ou,i=this._parents,r=this._groups;typeof t!="function"&&(t=su(t));for(var s=r.length,o=new Array(s),a=new Array(s),c=new Array(s),u=0;u<s;++u){var l=i[u],f=r[u],h=f.length,d=lu(t.call(l,l&&l.__data__,u,i)),p=d.length,g=a[u]=new Array(p),m=o[u]=new Array(p),_=c[u]=new Array(h);n(l,f,g,m,_,d,e);for(var x=0,y=0,b,T;x<p;++x)if(b=g[x]){for(x>=y&&(y=x+1);!(T=m[y])&&++y<p;);b._next=T||null}}return o=new it(o,i),o._enter=a,o._exit=c,o}function lu(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function fu(){return new it(this._exit||this._groups.map(Ao),this._parents)}function hu(t,e,n){var i=this.enter(),r=this,s=this.exit();return typeof t=="function"?(i=t(i),i&&(i=i.selection())):i=i.append(t+""),e!=null&&(r=e(r),r&&(r=r.selection())),n==null?s.remove():n(s),i&&r?i.merge(r).order():r}function du(t){for(var e=t.selection?t.selection():t,n=this._groups,i=e._groups,r=n.length,s=i.length,o=Math.min(r,s),a=new Array(r),c=0;c<o;++c)for(var u=n[c],l=i[c],f=u.length,h=a[c]=new Array(f),d,p=0;p<f;++p)(d=u[p]||l[p])&&(h[p]=d);for(;c<r;++c)a[c]=n[c];return new it(a,this._parents)}function gu(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var i=t[e],r=i.length-1,s=i[r],o;--r>=0;)(o=i[r])&&(s&&o.compareDocumentPosition(s)^4&&s.parentNode.insertBefore(o,s),s=o);return this}function pu(t){t||(t=_u);function e(f,h){return f&&h?t(f.__data__,h.__data__):!f-!h}for(var n=this._groups,i=n.length,r=new Array(i),s=0;s<i;++s){for(var o=n[s],a=o.length,c=r[s]=new Array(a),u,l=0;l<a;++l)(u=o[l])&&(c[l]=u);c.sort(e)}return new it(r,this._parents).order()}function _u(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function mu(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function vu(){return Array.from(this)}function yu(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i=t[e],r=0,s=i.length;r<s;++r){var o=i[r];if(o)return o}return null}function xu(){let t=0;for(const e of this)++t;return t}function bu(){return!this.node()}function wu(t){for(var e=this._groups,n=0,i=e.length;n<i;++n)for(var r=e[n],s=0,o=r.length,a;s<o;++s)(a=r[s])&&t.call(a,a.__data__,s,r);return this}function ku(t){return function(){this.removeAttribute(t)}}function Tu(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Su(t,e){return function(){this.setAttribute(t,e)}}function Mu(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function Au(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttribute(t):this.setAttribute(t,n)}}function Cu(t,e){return function(){var n=e.apply(this,arguments);n==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function $u(t,e){var n=Xn(t);if(arguments.length<2){var i=this.node();return n.local?i.getAttributeNS(n.space,n.local):i.getAttribute(n)}return this.each((e==null?n.local?Tu:ku:typeof e=="function"?n.local?Cu:Au:n.local?Mu:Su)(n,e))}function Co(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Eu(t){return function(){this.style.removeProperty(t)}}function Nu(t,e,n){return function(){this.style.setProperty(t,e,n)}}function Ou(t,e,n){return function(){var i=e.apply(this,arguments);i==null?this.style.removeProperty(t):this.style.setProperty(t,i,n)}}function Du(t,e,n){return arguments.length>1?this.each((e==null?Eu:typeof e=="function"?Ou:Nu)(t,e,n??"")):le(this.node(),t)}function le(t,e){return t.style.getPropertyValue(e)||Co(t).getComputedStyle(t,null).getPropertyValue(e)}function Ru(t){return function(){delete this[t]}}function Fu(t,e){return function(){this[t]=e}}function Lu(t,e){return function(){var n=e.apply(this,arguments);n==null?delete this[t]:this[t]=n}}function Iu(t,e){return arguments.length>1?this.each((e==null?Ru:typeof e=="function"?Lu:Fu)(t,e)):this.node()[t]}function $o(t){return t.trim().split(/^|\s+/)}function er(t){return t.classList||new Eo(t)}function Eo(t){this._node=t,this._names=$o(t.getAttribute("class")||"")}Eo.prototype={add:function(t){var e=this._names.indexOf(t);e<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function No(t,e){for(var n=er(t),i=-1,r=e.length;++i<r;)n.add(e[i])}function Oo(t,e){for(var n=er(t),i=-1,r=e.length;++i<r;)n.remove(e[i])}function zu(t){return function(){No(this,t)}}function Bu(t){return function(){Oo(this,t)}}function Pu(t,e){return function(){(e.apply(this,arguments)?No:Oo)(this,t)}}function Hu(t,e){var n=$o(t+"");if(arguments.length<2){for(var i=er(this.node()),r=-1,s=n.length;++r<s;)if(!i.contains(n[r]))return!1;return!0}return this.each((typeof e=="function"?Pu:e?zu:Bu)(n,e))}function Uu(){this.textContent=""}function Wu(t){return function(){this.textContent=t}}function Vu(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}function Yu(t){return arguments.length?this.each(t==null?Uu:(typeof t=="function"?Vu:Wu)(t)):this.node().textContent}function Xu(){this.innerHTML=""}function Gu(t){return function(){this.innerHTML=t}}function qu(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}function Zu(t){return arguments.length?this.each(t==null?Xu:(typeof t=="function"?qu:Gu)(t)):this.node().innerHTML}function ju(){this.nextSibling&&this.parentNode.appendChild(this)}function Qu(){return this.each(ju)}function Ju(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Ku(){return this.each(Ju)}function tl(t){var e=typeof t=="function"?t:ko(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}function el(){return null}function nl(t,e){var n=typeof t=="function"?t:ko(t),i=e==null?el:typeof e=="function"?e:tr(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),i.apply(this,arguments)||null)})}function il(){var t=this.parentNode;t&&t.removeChild(this)}function rl(){return this.each(il)}function sl(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function ol(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function al(t){return this.select(t?ol:sl)}function cl(t){return arguments.length?this.property("__data__",t):this.node().__data__}function ul(t){return function(e){t.call(this,e,this.__data__)}}function ll(t){return t.trim().split(/^|\s+/).map(function(e){var n="",i=e.indexOf(".");return i>=0&&(n=e.slice(i+1),e=e.slice(0,i)),{type:e,name:n}})}function fl(t){return function(){var e=this.__on;if(e){for(var n=0,i=-1,r=e.length,s;n<r;++n)s=e[n],(!t.type||s.type===t.type)&&s.name===t.name?this.removeEventListener(s.type,s.listener,s.options):e[++i]=s;++i?e.length=i:delete this.__on}}}function hl(t,e,n){return function(){var i=this.__on,r,s=ul(e);if(i){for(var o=0,a=i.length;o<a;++o)if((r=i[o]).type===t.type&&r.name===t.name){this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=s,r.options=n),r.value=e;return}}this.addEventListener(t.type,s,n),r={type:t.type,name:t.name,value:e,listener:s,options:n},i?i.push(r):this.__on=[r]}}function dl(t,e,n){var i=ll(t+""),r,s=i.length,o;if(arguments.length<2){var a=this.node().__on;if(a){for(var c=0,u=a.length,l;c<u;++c)for(r=0,l=a[c];r<s;++r)if((o=i[r]).type===l.type&&o.name===l.name)return l.value}return}for(a=e?hl:fl,r=0;r<s;++r)this.each(a(i[r],e,n));return this}function Do(t,e,n){var i=Co(t),r=i.CustomEvent;typeof r=="function"?r=new r(e,n):(r=i.document.createEvent("Event"),n?(r.initEvent(e,n.bubbles,n.cancelable),r.detail=n.detail):r.initEvent(e,!1,!1)),t.dispatchEvent(r)}function gl(t,e){return function(){return Do(this,t,e)}}function pl(t,e){return function(){return Do(this,t,e.apply(this,arguments))}}function _l(t,e){return this.each((typeof e=="function"?pl:gl)(t,e))}function*ml(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i=t[e],r=0,s=i.length,o;r<s;++r)(o=i[r])&&(yield o)}var Ro=[null];function it(t,e){this._groups=t,this._parents=e}function qe(){return new it([[document.documentElement]],Ro)}function vl(){return this}it.prototype=qe.prototype={constructor:it,select:Vc,selectAll:qc,selectChild:Jc,selectChildren:nu,filter:iu,data:uu,enter:ru,exit:fu,join:hu,merge:du,selection:vl,order:gu,sort:pu,call:mu,nodes:vu,node:yu,size:xu,empty:bu,each:wu,attr:$u,style:Du,property:Iu,classed:Hu,text:Yu,html:Zu,raise:Qu,lower:Ku,append:tl,insert:nl,remove:rl,clone:al,datum:cl,on:dl,dispatch:_l,[Symbol.iterator]:ml};function $t(t){return typeof t=="string"?new it([[document.querySelector(t)]],[document.documentElement]):new it([[t]],Ro)}var Re;(function(t){t[t.SVG=0]="SVG",t[t.HTML=1]="HTML"})(Re||(Re={}));var fe;(function(t){t.Fit="fit",t.Extend="extend",t.FitWidth="fit_width"})(fe||(fe={}));function Fe(t,e){return t==null||e==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function yl(t,e){return t==null||e==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function nr(t){let e,n,i;t.length!==2?(e=Fe,n=(a,c)=>Fe(t(a),c),i=(a,c)=>t(a)-c):(e=t===Fe||t===yl?t:xl,n=t,i=t);function r(a,c,u=0,l=a.length){if(u<l){if(e(c,c)!==0)return l;do{const f=u+l>>>1;n(a[f],c)<0?u=f+1:l=f}while(u<l)}return u}function s(a,c,u=0,l=a.length){if(u<l){if(e(c,c)!==0)return l;do{const f=u+l>>>1;n(a[f],c)<=0?u=f+1:l=f}while(u<l)}return u}function o(a,c,u=0,l=a.length){const f=r(a,c,u,l-1);return f>u&&i(a[f-1],c)>-i(a[f],c)?f-1:f}return{left:r,center:o,right:s}}function xl(){return 0}function Fo(t){return t===null?NaN:+t}const Lo=nr(Fe),Ze=Lo.right,bl=Lo.left;nr(Fo).center;function wl(t,e){let n,i;for(const r of t)r!=null&&(n===void 0?r>=r&&(n=i=r):(n>r&&(n=r),i<r&&(i=r)));return[n,i]}class Xr extends Map{constructor(e,n=Sl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),e!=null)for(const[i,r]of e)this.set(i,r)}get(e){return super.get(Gr(this,e))}has(e){return super.has(Gr(this,e))}set(e,n){return super.set(kl(this,e),n)}delete(e){return super.delete(Tl(this,e))}}function Gr({_intern:t,_key:e},n){const i=e(n);return t.has(i)?t.get(i):n}function kl({_intern:t,_key:e},n){const i=e(n);return t.has(i)?t.get(i):(t.set(i,n),n)}function Tl({_intern:t,_key:e},n){const i=e(n);return t.has(i)&&(n=t.get(i),t.delete(i)),n}function Sl(t){return t!==null&&typeof t=="object"?t.valueOf():t}const Ml=Math.sqrt(50),Al=Math.sqrt(10),Cl=Math.sqrt(2);function Tn(t,e,n){const i=(e-t)/Math.max(0,n),r=Math.floor(Math.log10(i)),s=i/Math.pow(10,r),o=s>=Ml?10:s>=Al?5:s>=Cl?2:1;let a,c,u;return r<0?(u=Math.pow(10,-r)/o,a=Math.round(t*u),c=Math.round(e*u),a/u<t&&++a,c/u>e&&--c,u=-u):(u=Math.pow(10,r)*o,a=Math.round(t/u),c=Math.round(e/u),a*u<t&&++a,c*u>e&&--c),c<a&&.5<=n&&n<2?Tn(t,e,n*2):[a,c,u]}function Ti(t,e,n){if(e=+e,t=+t,n=+n,!(n>0))return[];if(t===e)return[t];const i=e<t,[r,s,o]=i?Tn(e,t,n):Tn(t,e,n);if(!(s>=r))return[];const a=s-r+1,c=new Array(a);if(i)if(o<0)for(let u=0;u<a;++u)c[u]=(s-u)/-o;else for(let u=0;u<a;++u)c[u]=(s-u)*o;else if(o<0)for(let u=0;u<a;++u)c[u]=(r+u)/-o;else for(let u=0;u<a;++u)c[u]=(r+u)*o;return c}function Si(t,e,n){return e=+e,t=+t,n=+n,Tn(t,e,n)[2]}function Mi(t,e,n){e=+e,t=+t,n=+n;const i=e<t,r=i?Si(e,t,n):Si(t,e,n);return(i?-1:1)*(r<0?1/-r:r)}function qr(t,e){let n;if(e===void 0)for(const i of t)i!=null&&(n<i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of t)(r=e(r,++i,t))!=null&&(n<r||n===void 0&&r>=r)&&(n=r)}return n}function Zr(t,e){let n;if(e===void 0)for(const i of t)i!=null&&(n>i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of t)(r=e(r,++i,t))!=null&&(n>r||n===void 0&&r>=r)&&(n=r)}return n}function $l(t,e,n=Fo){if(!(!(i=t.length)||isNaN(e=+e))){if(e<=0||i<2)return+n(t[0],0,t);if(e>=1)return+n(t[i-1],i-1,t);var i,r=(i-1)*e,s=Math.floor(r),o=+n(t[s],s,t),a=+n(t[s+1],s+1,t);return o+(a-o)*(r-s)}}function El(t,e){let n=0,i=0;if(e===void 0)for(let r of t)r!=null&&(r=+r)>=r&&(++n,i+=r);else{let r=-1;for(let s of t)(s=e(s,++r,t))!=null&&(s=+s)>=s&&(++n,i+=s)}if(n)return i/n}function*Nl(t){for(const e of t)yield*e}function Ol(t){return Array.from(Nl(t))}function Dl(t,e,n){t=+t,e=+e,n=(r=arguments.length)<2?(e=t,t=0,1):r<3?1:+n;for(var i=-1,r=Math.max(0,Math.ceil((e-t)/n))|0,s=new Array(r);++i<r;)s[i]=t+i*n;return s}function Rl(t,e){let n=0;if(e===void 0)for(let i of t)(i=+i)&&(n+=i);else{let i=-1;for(let r of t)(r=+e(r,++i,t))&&(n+=r)}return n}function Fl(t,e,n){var i={},r=i.noTrailing,s=r===void 0?!1:r,o=i.noLeading,a=o===void 0?!1:o,c=i.debounceMode,u=c===void 0?void 0:c,l,f=!1,h=0;function d(){l&&clearTimeout(l)}function p(m){var _=m||{},x=_.upcomingOnly,y=x===void 0?!1:x;d(),f=!y}function g(){for(var m=arguments.length,_=new Array(m),x=0;x<m;x++)_[x]=arguments[x];var y=this,b=Date.now()-h;if(f)return;function T(){h=Date.now(),e.apply(y,_)}function v(){l=void 0}!a&&u&&!l&&T(),d(),u===void 0&&b>t?a?(h=Date.now(),s||(l=setTimeout(u?v:T,t))):T():s!==!0&&(l=setTimeout(u?v:T,u===void 0?t-b:t))}return g.cancel=p,g}var Et;(function(t){t.Left="left",t.Right="right",t.Auto="auto"})(Et||(Et={}));const re=t=>typeof t=="number",ir=t=>typeof t=="function",je=t=>Array.isArray(t),Ll=t=>t instanceof Object,Sn=t=>t.constructor.name!=="Function"&&t.constructor.name!=="Object",jr=t=>Ll(t)&&!je(t)&&!ir(t)&&!Sn(t),p_=t=>[Object,Array].includes((t||{}).constructor)&&!Object.entries(t||{}).length,Vt=(t,e,n=[],i=new Set)=>{if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;if(i.has(t))return!0;i.add(t);for(let r=0;r<t.length;r++)if(!Vt(t[r],e[r],n,i))return!1;return!0}if(t instanceof Date&&e instanceof Date)return t.getTime()===e.getTime();if(typeof t=="object"&&t!==null&&e!==null){if(typeof e!="object")return!1;if(t===e)return!0;const r=Object.keys(t).filter(o=>!n.includes(o)),s=Object.keys(e).filter(o=>!n.includes(o));if(r.length!==s.length)return!1;if(i.has(t))return!0;i.add(t);for(const o of r)if(!Vt(t[o],e[o],n,i))return!1;return!0}return t===e},Ai=t=>t.flat(),Mn=(t,e=new Map)=>{if(typeof t!="object"||t===null)return t;if(t instanceof Date)return new Date(t.getTime());if(t instanceof Array){const n=[];e.set(t,n);for(const i of t)n.push(e.has(i)?e.get(i):Mn(i,e));return n}if(Sn(t))return t;if(t instanceof Object){const n={};e.set(t,n);const i=t;return Object.keys(t).reduce((r,s)=>(r[s]=e.has(i[s])?e.get(i[s]):Mn(i[s],e),r),n),n}return t},Be=(t,e,n=new Map)=>{if(!t||!e||t===e)return t;const i=Sn(t)?t:Mn(t);return n.has(e)?n.get(e):(n.set(e,i),Object.keys(e).forEach(r=>{r==="__proto__"||r==="constructor"||(jr(t[r])&&jr(e[r])?i[r]=Be(t[r],e[r],n):Sn(e)?i[r]=e:i[r]=Mn(e[r]))}),i)},Qr=(t,e,n)=>Fl(e,t);function rr(t,e,n){return ir(e)?e(t,n):e}function Io(t,e,n){return rr(t,e,n)}function st(t,e,n){return rr(t,e,n)}function xe(t){return t.filter(e=>e&&!re(e))}function ee(t,e,n){return Math.min(Math.max(t,e),n)}function __(t,...e){if(!t)return[void 0,void 0];if(je(e)){let n=0,i=0;return t.forEach((r,s)=>{let o=0,a=0;for(const c of e){const u=st(r,c,s)||0;u>=0?o+=u:a+=u}o>i&&(i=o),a<n&&(n=a)}),[n,i]}}function m_(t,e,n,i){const r=t.map((a,c)=>st(a,e,c)||0),s=n.map((a,c)=>{const u=El(t,(l,f)=>st(l,a,f)||0);return u===0&&Array.isArray(i)?i[c]:u<0}),o=n.map(()=>[]);return t.forEach((a,c)=>{let u=r[c],l=r[c];n.forEach((f,h)=>{const d=st(a,f,c)||0;d>=0?o[h].push([u,u+=d]):o[h].push([l,l+=d])})}),o.forEach((a,c)=>{a.isMostlyNegative=s[c]}),o}function Il(t,...e){return t?Zr(t,(i,r)=>Zr(e,s=>st(i,s,r))):void 0}function zl(t,...e){return t?qr(t,(i,r)=>qr(e,s=>st(i,s,r))):void 0}function ci(t,...e){return[Il(t,...e),zl(t,...e)]}function Jr(t,e,n,i=Et.Auto){if(t.length<=1)return t[0];const s=t.map((c,u)=>[c,u]).sort(([c,u],[l,f])=>st(c,n,u)-st(l,n,f)),o=s.map(([c,u])=>st(c,n,u)),a=i===Et.Right?bl(o,e,0,t.length-1):Ze(o,e,1,t.length);return i===Et.Right?s[a][0]:i===Et.Left?s[a-1][0]:e-o[a-1]>o[a]-e?s[a][0]:s[a-1][0]}function Bl(t,e,n,i=!1){if(!n)return[];const r=t.filter((s,o)=>{const a=st(s,n,o);return a>=e[0]&&a<=e[1]});if(i){if(r.length===0){const f=Jr(t,e[0],n,Et.Left),h=Jr(t,e[1],n,Et.Right);return[f,h].filter(Boolean)}const s=r[0],o=r[r.length-1],a=t.findIndex(f=>f===s),c=t.findIndex(f=>f===o),u=Math.max(0,a-1),l=Math.min(t.length-1,c+1);return t.slice(u,l+1)}return r}var Bt=[],Pl=function(){return Bt.some(function(t){return t.activeTargets.length>0})},Hl=function(){return Bt.some(function(t){return t.skippedTargets.length>0})},Kr="ResizeObserver loop completed with undelivered notifications.",Ul=function(){var t;typeof ErrorEvent=="function"?t=new ErrorEvent("error",{message:Kr}):(t=document.createEvent("Event"),t.initEvent("error",!1,!1),t.message=Kr),window.dispatchEvent(t)},Pe;(function(t){t.BORDER_BOX="border-box",t.CONTENT_BOX="content-box",t.DEVICE_PIXEL_CONTENT_BOX="device-pixel-content-box"})(Pe||(Pe={}));var Pt=function(t){return Object.freeze(t)},Wl=(function(){function t(e,n){this.inlineSize=e,this.blockSize=n,Pt(this)}return t})(),zo=(function(){function t(e,n,i,r){return this.x=e,this.y=n,this.width=i,this.height=r,this.top=this.y,this.left=this.x,this.bottom=this.top+this.height,this.right=this.left+this.width,Pt(this)}return t.prototype.toJSON=function(){var e=this,n=e.x,i=e.y,r=e.top,s=e.right,o=e.bottom,a=e.left,c=e.width,u=e.height;return{x:n,y:i,top:r,right:s,bottom:o,left:a,width:c,height:u}},t.fromRect=function(e){return new t(e.x,e.y,e.width,e.height)},t})(),sr=function(t){return t instanceof SVGElement&&"getBBox"in t},Bo=function(t){if(sr(t)){var e=t.getBBox(),n=e.width,i=e.height;return!n&&!i}var r=t,s=r.offsetWidth,o=r.offsetHeight;return!(s||o||t.getClientRects().length)},ts=function(t){var e;if(t instanceof Element)return!0;var n=(e=t?.ownerDocument)===null||e===void 0?void 0:e.defaultView;return!!(n&&t instanceof n.Element)},Vl=function(t){switch(t.tagName){case"INPUT":if(t.type!=="image")break;case"VIDEO":case"AUDIO":case"EMBED":case"OBJECT":case"CANVAS":case"IFRAME":case"IMG":return!0}return!1},Le=typeof window<"u"?window:{},nn=new WeakMap,es=/auto|scroll/,Yl=/^tb|vertical/,Xl=/msie|trident/i.test(Le.navigator&&Le.navigator.userAgent),ht=function(t){return parseFloat(t||"0")},se=function(t,e,n){return t===void 0&&(t=0),e===void 0&&(e=0),n===void 0&&(n=!1),new Wl((n?e:t)||0,(n?t:e)||0)},ns=Pt({devicePixelContentBoxSize:se(),borderBoxSize:se(),contentBoxSize:se(),contentRect:new zo(0,0,0,0)}),Po=function(t,e){if(e===void 0&&(e=!1),nn.has(t)&&!e)return nn.get(t);if(Bo(t))return nn.set(t,ns),ns;var n=getComputedStyle(t),i=sr(t)&&t.ownerSVGElement&&t.getBBox(),r=!Xl&&n.boxSizing==="border-box",s=Yl.test(n.writingMode||""),o=!i&&es.test(n.overflowY||""),a=!i&&es.test(n.overflowX||""),c=i?0:ht(n.paddingTop),u=i?0:ht(n.paddingRight),l=i?0:ht(n.paddingBottom),f=i?0:ht(n.paddingLeft),h=i?0:ht(n.borderTopWidth),d=i?0:ht(n.borderRightWidth),p=i?0:ht(n.borderBottomWidth),g=i?0:ht(n.borderLeftWidth),m=f+u,_=c+l,x=g+d,y=h+p,b=a?t.offsetHeight-y-t.clientHeight:0,T=o?t.offsetWidth-x-t.clientWidth:0,v=r?m+x:0,k=r?_+y:0,C=i?i.width:ht(n.width)-v-T,$=i?i.height:ht(n.height)-k-b,A=C+m+T+x,I=$+_+b+y,M=Pt({devicePixelContentBoxSize:se(Math.round(C*devicePixelRatio),Math.round($*devicePixelRatio),s),borderBoxSize:se(A,I,s),contentBoxSize:se(C,$,s),contentRect:new zo(f,c,C,$)});return nn.set(t,M),M},Ho=function(t,e,n){var i=Po(t,n),r=i.borderBoxSize,s=i.contentBoxSize,o=i.devicePixelContentBoxSize;switch(e){case Pe.DEVICE_PIXEL_CONTENT_BOX:return o;case Pe.BORDER_BOX:return r;default:return s}},Gl=(function(){function t(e){var n=Po(e);this.target=e,this.contentRect=n.contentRect,this.borderBoxSize=Pt([n.borderBoxSize]),this.contentBoxSize=Pt([n.contentBoxSize]),this.devicePixelContentBoxSize=Pt([n.devicePixelContentBoxSize])}return t})(),Uo=function(t){if(Bo(t))return 1/0;for(var e=0,n=t.parentNode;n;)e+=1,n=n.parentNode;return e},ql=function(){var t=1/0,e=[];Bt.forEach(function(o){if(o.activeTargets.length!==0){var a=[];o.activeTargets.forEach(function(u){var l=new Gl(u.target),f=Uo(u.target);a.push(l),u.lastReportedSize=Ho(u.target,u.observedBox),f<t&&(t=f)}),e.push(function(){o.callback.call(o.observer,a,o.observer)}),o.activeTargets.splice(0,o.activeTargets.length)}});for(var n=0,i=e;n<i.length;n++){var r=i[n];r()}return t},is=function(t){Bt.forEach(function(n){n.activeTargets.splice(0,n.activeTargets.length),n.skippedTargets.splice(0,n.skippedTargets.length),n.observationTargets.forEach(function(r){r.isActive()&&(Uo(r.target)>t?n.activeTargets.push(r):n.skippedTargets.push(r))})})},Zl=function(){var t=0;for(is(t);Pl();)t=ql(),is(t);return Hl()&&Ul(),t>0},ui,Wo=[],jl=function(){return Wo.splice(0).forEach(function(t){return t()})},Ql=function(t){if(!ui){var e=0,n=document.createTextNode(""),i={characterData:!0};new MutationObserver(function(){return jl()}).observe(n,i),ui=function(){n.textContent="".concat(e?e--:e++)}}Wo.push(t),ui()},Jl=function(t){Ql(function(){requestAnimationFrame(t)})},fn=0,Kl=function(){return!!fn},tf=250,ef={attributes:!0,characterData:!0,childList:!0,subtree:!0},rs=["resize","load","transitionend","animationend","animationstart","animationiteration","keyup","keydown","mouseup","mousedown","mouseover","mouseout","blur","focus"],ss=function(t){return t===void 0&&(t=0),Date.now()+t},li=!1,nf=(function(){function t(){var e=this;this.stopped=!0,this.listener=function(){return e.schedule()}}return t.prototype.run=function(e){var n=this;if(e===void 0&&(e=tf),!li){li=!0;var i=ss(e);Jl(function(){var r=!1;try{r=Zl()}finally{if(li=!1,e=i-ss(),!Kl())return;r?n.run(1e3):e>0?n.run(e):n.start()}})}},t.prototype.schedule=function(){this.stop(),this.run()},t.prototype.observe=function(){var e=this,n=function(){return e.observer&&e.observer.observe(document.body,ef)};document.body?n():Le.addEventListener("DOMContentLoaded",n)},t.prototype.start=function(){var e=this;this.stopped&&(this.stopped=!1,this.observer=new MutationObserver(this.listener),this.observe(),rs.forEach(function(n){return Le.addEventListener(n,e.listener,!0)}))},t.prototype.stop=function(){var e=this;this.stopped||(this.observer&&this.observer.disconnect(),rs.forEach(function(n){return Le.removeEventListener(n,e.listener,!0)}),this.stopped=!0)},t})(),Ci=new nf,os=function(t){!fn&&t>0&&Ci.start(),fn+=t,!fn&&Ci.stop()},rf=function(t){return!sr(t)&&!Vl(t)&&getComputedStyle(t).display==="inline"},sf=(function(){function t(e,n){this.target=e,this.observedBox=n||Pe.CONTENT_BOX,this.lastReportedSize={inlineSize:0,blockSize:0}}return t.prototype.isActive=function(){var e=Ho(this.target,this.observedBox,!0);return rf(this.target)&&(this.lastReportedSize=e),this.lastReportedSize.inlineSize!==e.inlineSize||this.lastReportedSize.blockSize!==e.blockSize},t})(),of=(function(){function t(e,n){this.activeTargets=[],this.skippedTargets=[],this.observationTargets=[],this.observer=e,this.callback=n}return t})(),rn=new WeakMap,as=function(t,e){for(var n=0;n<t.length;n+=1)if(t[n].target===e)return n;return-1},sn=(function(){function t(){}return t.connect=function(e,n){var i=new of(e,n);rn.set(e,i)},t.observe=function(e,n,i){var r=rn.get(e),s=r.observationTargets.length===0;as(r.observationTargets,n)<0&&(s&&Bt.push(r),r.observationTargets.push(new sf(n,i&&i.box)),os(1),Ci.schedule())},t.unobserve=function(e,n){var i=rn.get(e),r=as(i.observationTargets,n),s=i.observationTargets.length===1;r>=0&&(s&&Bt.splice(Bt.indexOf(i),1),i.observationTargets.splice(r,1),os(-1))},t.disconnect=function(e){var n=this,i=rn.get(e);i.observationTargets.slice().forEach(function(r){return n.unobserve(e,r.target)}),i.activeTargets.splice(0,i.activeTargets.length)},t})(),af=(function(){function t(e){if(arguments.length===0)throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");if(typeof e!="function")throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");sn.connect(this,e)}return t.prototype.observe=function(e,n){if(arguments.length===0)throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!ts(e))throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");sn.observe(this,e,n)},t.prototype.unobserve=function(e){if(arguments.length===0)throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!ts(e))throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");sn.unobserve(this,e)},t.prototype.disconnect=function(){sn.disconnect(this)},t.toString=function(){return"function ResizeObserver () { [polyfill code] }"},t})();const cf=globalThis.ResizeObserver||af,Vo={duration:void 0,margin:{top:0,bottom:0,left:0,right:0},padding:{top:0,bottom:0,left:0,right:0},sizing:fe.Fit,width:void 0,height:void 0,svgDefs:void 0,ariaLabel:void 0};class He{constructor(e){this._defaultConfig=Vo,this._isFirstRender=!0,this._renderAnimationFrameId=null,this._container=e;const n=$t(this._container);n.attr("role","figure"),this.svg=n.append("svg").style("display","block").attr("xmlns","http://www.w3.org/2000/svg").attr("height",He.DEFAULT_CONTAINER_HEIGHT).attr("aria-hidden",!0),this._svgDefs=this.svg.append("defs"),this._svgDefsExternal=this.svg.append("defs"),this.element=this.svg.node()}updateContainer(e){var n;this.prevConfig=this.config,this.config=Be(this._defaultConfig,e),e?.svgDefs!==((n=this.prevConfig)===null||n===void 0?void 0:n.svgDefs)&&(this._svgDefsExternal.selectAll("*").remove(),this._svgDefsExternal.html(e.svgDefs))}_preRender(){}_render(e){const{config:n}=this;$t(this._container).attr("aria-label",n.ariaLabel),this._isFirstRender=!1}render(e=this.config.duration){const n=this.config.width||this.containerWidth,i=this.config.height||this.containerHeight;this.svg.attr("width",n).attr("height",i),this._resizeObserver||this._setUpResizeObserver(),cancelAnimationFrame(this._renderAnimationFrameId),this._renderAnimationFrameId=requestAnimationFrame(()=>{this._preRender(),this._render(e)})}get containerWidth(){return this.config.width?this.element.clientWidth:this._container.clientWidth||this._container.getBoundingClientRect().width}get containerHeight(){return this.config.height?this.element.clientHeight:this._container.clientHeight||this._container.getBoundingClientRect().height||He.DEFAULT_CONTAINER_HEIGHT}get width(){return ee(this.containerWidth-this.config.margin.left-this.config.margin.right,0,Number.POSITIVE_INFINITY)}get height(){return ee(this.containerHeight-this.config.margin.top-this.config.margin.bottom,0,Number.POSITIVE_INFINITY)}_removeAllChildren(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild)}_onResize(){const{config:e}=this;(e.sizing===fe.Fit||e.sizing===fe.FitWidth)&&this.render(0)}_setUpResizeObserver(){if(this._resizeObserver)return;const e=this._container.getBoundingClientRect();this._containerSize={width:e.width,height:e.height},this._resizeObserver=new cf((n,i)=>{cancelAnimationFrame(this._resizeObserverAnimationFrameId),this._resizeObserverAnimationFrameId=requestAnimationFrame(()=>{const r=this._container.getBoundingClientRect(),s={width:r.width,height:r.height};!Vt(this._containerSize,s)&&s.width&&s.height&&(this._containerSize=s,this._onResize())})}),this._resizeObserver.observe(this._container)}destroy(){var e;cancelAnimationFrame(this._renderAnimationFrameId),cancelAnimationFrame(this._resizeObserverAnimationFrameId),(e=this._resizeObserver)===null||e===void 0||e.disconnect(),this.svg.remove()}}He.DEFAULT_CONTAINER_HEIGHT=300;function uf(t){if(t.sheet)return t.sheet;for(var e=0;e<document.styleSheets.length;e++)if(document.styleSheets[e].ownerNode===t)return document.styleSheets[e]}function lf(t){var e=document.createElement("style");return e.setAttribute("data-emotion",t.key),t.nonce!==void 0&&e.setAttribute("nonce",t.nonce),e.appendChild(document.createTextNode("")),e.setAttribute("data-s",""),e}var ff=(function(){function t(n){var i=this;this._insertTag=function(r){var s;i.tags.length===0?i.insertionPoint?s=i.insertionPoint.nextSibling:i.prepend?s=i.container.firstChild:s=i.before:s=i.tags[i.tags.length-1].nextSibling,i.container.insertBefore(r,s),i.tags.push(r)},this.isSpeedy=n.speedy===void 0?!0:n.speedy,this.tags=[],this.ctr=0,this.nonce=n.nonce,this.key=n.key,this.container=n.container,this.prepend=n.prepend,this.insertionPoint=n.insertionPoint,this.before=null}var e=t.prototype;return e.hydrate=function(i){i.forEach(this._insertTag)},e.insert=function(i){this.ctr%(this.isSpeedy?65e3:1)===0&&this._insertTag(lf(this));var r=this.tags[this.tags.length-1];if(this.isSpeedy){var s=uf(r);try{s.insertRule(i,s.cssRules.length)}catch{}}else r.appendChild(document.createTextNode(i));this.ctr++},e.flush=function(){this.tags.forEach(function(i){var r;return(r=i.parentNode)==null?void 0:r.removeChild(i)}),this.tags=[],this.ctr=0},t})(),G="-ms-",An="-moz-",F="-webkit-",Yo="comm",or="rule",ar="decl",hf="@import",Xo="@keyframes",df="@layer",gf=Math.abs,Gn=String.fromCharCode,pf=Object.assign;function _f(t,e){return Y(t,0)^45?(((e<<2^Y(t,0))<<2^Y(t,1))<<2^Y(t,2))<<2^Y(t,3):0}function Go(t){return t.trim()}function mf(t,e){return(t=e.exec(t))?t[0]:t}function L(t,e,n){return t.replace(e,n)}function $i(t,e){return t.indexOf(e)}function Y(t,e){return t.charCodeAt(e)|0}function Ue(t,e,n){return t.slice(e,n)}function dt(t){return t.length}function cr(t){return t.length}function on(t,e){return e.push(t),t}function vf(t,e){return t.map(e).join("")}var qn=1,he=1,qo=0,K=0,U=0,me="";function Zn(t,e,n,i,r,s,o){return{value:t,root:e,parent:n,type:i,props:r,children:s,line:qn,column:he,length:o,return:""}}function be(t,e){return pf(Zn("",null,null,"",null,null,0),t,{length:-t.length},e)}function yf(){return U}function xf(){return U=K>0?Y(me,--K):0,he--,U===10&&(he=1,qn--),U}function nt(){return U=K<qo?Y(me,K++):0,he++,U===10&&(he=1,qn++),U}function gt(){return Y(me,K)}function hn(){return K}function Qe(t,e){return Ue(me,t,e)}function We(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function Zo(t){return qn=he=1,qo=dt(me=t),K=0,[]}function jo(t){return me="",t}function dn(t){return Go(Qe(K-1,Ei(t===91?t+2:t===40?t+1:t)))}function bf(t){for(;(U=gt())&&U<33;)nt();return We(t)>2||We(U)>3?"":" "}function wf(t,e){for(;--e&&nt()&&!(U<48||U>102||U>57&&U<65||U>70&&U<97););return Qe(t,hn()+(e<6&&gt()==32&&nt()==32))}function Ei(t){for(;nt();)switch(U){case t:return K;case 34:case 39:t!==34&&t!==39&&Ei(U);break;case 40:t===41&&Ei(t);break;case 92:nt();break}return K}function kf(t,e){for(;nt()&&t+U!==57;)if(t+U===84&&gt()===47)break;return"/*"+Qe(e,K-1)+"*"+Gn(t===47?t:nt())}function Tf(t){for(;!We(gt());)nt();return Qe(t,K)}function Sf(t){return jo(gn("",null,null,null,[""],t=Zo(t),0,[0],t))}function gn(t,e,n,i,r,s,o,a,c){for(var u=0,l=0,f=o,h=0,d=0,p=0,g=1,m=1,_=1,x=0,y="",b=r,T=s,v=i,k=y;m;)switch(p=x,x=nt()){case 40:if(p!=108&&Y(k,f-1)==58){$i(k+=L(dn(x),"&","&\f"),"&\f")!=-1&&(_=-1);break}case 34:case 39:case 91:k+=dn(x);break;case 9:case 10:case 13:case 32:k+=bf(p);break;case 92:k+=wf(hn()-1,7);continue;case 47:switch(gt()){case 42:case 47:on(Mf(kf(nt(),hn()),e,n),c);break;default:k+="/"}break;case 123*g:a[u++]=dt(k)*_;case 125*g:case 59:case 0:switch(x){case 0:case 125:m=0;case 59+l:_==-1&&(k=L(k,/\f/g,"")),d>0&&dt(k)-f&&on(d>32?us(k+";",i,n,f-1):us(L(k," ","")+";",i,n,f-2),c);break;case 59:k+=";";default:if(on(v=cs(k,e,n,u,l,r,a,y,b=[],T=[],f),s),x===123)if(l===0)gn(k,e,v,v,b,s,f,a,T);else switch(h===99&&Y(k,3)===110?100:h){case 100:case 108:case 109:case 115:gn(t,v,v,i&&on(cs(t,v,v,0,0,r,a,y,r,b=[],f),T),r,T,f,a,i?b:T);break;default:gn(k,v,v,v,[""],T,0,a,T)}}u=l=d=0,g=_=1,y=k="",f=o;break;case 58:f=1+dt(k),d=p;default:if(g<1){if(x==123)--g;else if(x==125&&g++==0&&xf()==125)continue}switch(k+=Gn(x),x*g){case 38:_=l>0?1:(k+="\f",-1);break;case 44:a[u++]=(dt(k)-1)*_,_=1;break;case 64:gt()===45&&(k+=dn(nt())),h=gt(),l=f=dt(y=k+=Tf(hn())),x++;break;case 45:p===45&&dt(k)==2&&(g=0)}}return s}function cs(t,e,n,i,r,s,o,a,c,u,l){for(var f=r-1,h=r===0?s:[""],d=cr(h),p=0,g=0,m=0;p<i;++p)for(var _=0,x=Ue(t,f+1,f=gf(g=o[p])),y=t;_<d;++_)(y=Go(g>0?h[_]+" "+x:L(x,/&\f/g,h[_])))&&(c[m++]=y);return Zn(t,e,n,r===0?or:a,c,u,l)}function Mf(t,e,n){return Zn(t,e,n,Yo,Gn(yf()),Ue(t,2,-2),0)}function us(t,e,n,i){return Zn(t,e,n,ar,Ue(t,0,i),Ue(t,i+1,-1),i)}function oe(t,e){for(var n="",i=cr(t),r=0;r<i;r++)n+=e(t[r],r,t,e)||"";return n}function Af(t,e,n,i){switch(t.type){case df:if(t.children.length)break;case hf:case ar:return t.return=t.return||t.value;case Yo:return"";case Xo:return t.return=t.value+"{"+oe(t.children,i)+"}";case or:t.value=t.props.join(",")}return dt(n=oe(t.children,i))?t.return=t.value+"{"+n+"}":""}function Cf(t){var e=cr(t);return function(n,i,r,s){for(var o="",a=0;a<e;a++)o+=t[a](n,i,r,s)||"";return o}}function $f(t){return function(e){e.root||(e=e.return)&&t(e)}}function Ef(t){var e=Object.create(null);return function(n){return e[n]===void 0&&(e[n]=t(n)),e[n]}}var Nf=function(e,n,i){for(var r=0,s=0;r=s,s=gt(),r===38&&s===12&&(n[i]=1),!We(s);)nt();return Qe(e,K)},Of=function(e,n){var i=-1,r=44;do switch(We(r)){case 0:r===38&&gt()===12&&(n[i]=1),e[i]+=Nf(K-1,n,i);break;case 2:e[i]+=dn(r);break;case 4:if(r===44){e[++i]=gt()===58?"&\f":"",n[i]=e[i].length;break}default:e[i]+=Gn(r)}while(r=nt());return e},Df=function(e,n){return jo(Of(Zo(e),n))},ls=new WeakMap,Rf=function(e){if(!(e.type!=="rule"||!e.parent||e.length<1)){for(var n=e.value,i=e.parent,r=e.column===i.column&&e.line===i.line;i.type!=="rule";)if(i=i.parent,!i)return;if(!(e.props.length===1&&n.charCodeAt(0)!==58&&!ls.get(i))&&!r){ls.set(e,!0);for(var s=[],o=Df(n,s),a=i.props,c=0,u=0;c<o.length;c++)for(var l=0;l<a.length;l++,u++)e.props[u]=s[c]?o[c].replace(/&\f/g,a[l]):a[l]+" "+o[c]}}},Ff=function(e){if(e.type==="decl"){var n=e.value;n.charCodeAt(0)===108&&n.charCodeAt(2)===98&&(e.return="",e.value="")}};function Qo(t,e){switch(_f(t,e)){case 5103:return F+"print-"+t+t;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return F+t+t;case 5349:case 4246:case 4810:case 6968:case 2756:return F+t+An+t+G+t+t;case 6828:case 4268:return F+t+G+t+t;case 6165:return F+t+G+"flex-"+t+t;case 5187:return F+t+L(t,/(\w+).+(:[^]+)/,F+"box-$1$2"+G+"flex-$1$2")+t;case 5443:return F+t+G+"flex-item-"+L(t,/flex-|-self/,"")+t;case 4675:return F+t+G+"flex-line-pack"+L(t,/align-content|flex-|-self/,"")+t;case 5548:return F+t+G+L(t,"shrink","negative")+t;case 5292:return F+t+G+L(t,"basis","preferred-size")+t;case 6060:return F+"box-"+L(t,"-grow","")+F+t+G+L(t,"grow","positive")+t;case 4554:return F+L(t,/([^-])(transform)/g,"$1"+F+"$2")+t;case 6187:return L(L(L(t,/(zoom-|grab)/,F+"$1"),/(image-set)/,F+"$1"),t,"")+t;case 5495:case 3959:return L(t,/(image-set\([^]*)/,F+"$1$`$1");case 4968:return L(L(t,/(.+:)(flex-)?(.*)/,F+"box-pack:$3"+G+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+F+t+t;case 4095:case 3583:case 4068:case 2532:return L(t,/(.+)-inline(.+)/,F+"$1$2")+t;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(dt(t)-1-e>6)switch(Y(t,e+1)){case 109:if(Y(t,e+4)!==45)break;case 102:return L(t,/(.+:)(.+)-([^]+)/,"$1"+F+"$2-$3$1"+An+(Y(t,e+3)==108?"$3":"$2-$3"))+t;case 115:return~$i(t,"stretch")?Qo(L(t,"stretch","fill-available"),e)+t:t}break;case 4949:if(Y(t,e+1)!==115)break;case 6444:switch(Y(t,dt(t)-3-(~$i(t,"!important")&&10))){case 107:return L(t,":",":"+F)+t;case 101:return L(t,/(.+:)([^;!]+)(;|!.+)?/,"$1"+F+(Y(t,14)===45?"inline-":"")+"box$3$1"+F+"$2$3$1"+G+"$2box$3")+t}break;case 5936:switch(Y(t,e+11)){case 114:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"tb")+t;case 108:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"tb-rl")+t;case 45:return F+t+G+L(t,/[svh]\w+-[tblr]{2}/,"lr")+t}return F+t+G+t+t}return t}var Lf=function(e,n,i,r){if(e.length>-1&&!e.return)switch(e.type){case ar:e.return=Qo(e.value,e.length);break;case Xo:return oe([be(e,{value:L(e.value,"@","@"+F)})],r);case or:if(e.length)return vf(e.props,function(s){switch(mf(s,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return oe([be(e,{props:[L(s,/:(read-\w+)/,":"+An+"$1")]})],r);case"::placeholder":return oe([be(e,{props:[L(s,/:(plac\w+)/,":"+F+"input-$1")]}),be(e,{props:[L(s,/:(plac\w+)/,":"+An+"$1")]}),be(e,{props:[L(s,/:(plac\w+)/,G+"input-$1")]})],r)}return""})}},If=[Lf],zf=function(e){var n=e.key;if(n==="css"){var i=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(i,function(g){var m=g.getAttribute("data-emotion");m.indexOf(" ")!==-1&&(document.head.appendChild(g),g.setAttribute("data-s",""))})}var r=e.stylisPlugins||If,s={},o,a=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(g){for(var m=g.getAttribute("data-emotion").split(" "),_=1;_<m.length;_++)s[m[_]]=!0;a.push(g)});var c,u=[Rf,Ff];{var l,f=[Af,$f(function(g){l.insert(g)})],h=Cf(u.concat(r,f)),d=function(m){return oe(Sf(m),h)};c=function(m,_,x,y){l=x,d(m?m+"{"+_.styles+"}":_.styles),y&&(p.inserted[_.name]=!0)}}var p={key:n,sheet:new ff({key:n,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:s,registered:{},insert:c};return p.sheet.hydrate(a),p};function Bf(t){for(var e=0,n,i=0,r=t.length;r>=4;++i,r-=4)n=t.charCodeAt(i)&255|(t.charCodeAt(++i)&255)<<8|(t.charCodeAt(++i)&255)<<16|(t.charCodeAt(++i)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,e=(n&65535)*1540483477+((n>>>16)*59797<<16)^(e&65535)*1540483477+((e>>>16)*59797<<16);switch(r){case 3:e^=(t.charCodeAt(i+2)&255)<<16;case 2:e^=(t.charCodeAt(i+1)&255)<<8;case 1:e^=t.charCodeAt(i)&255,e=(e&65535)*1540483477+((e>>>16)*59797<<16)}return e^=e>>>13,e=(e&65535)*1540483477+((e>>>16)*59797<<16),((e^e>>>15)>>>0).toString(36)}var Pf={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Hf=/[A-Z]|^ms/g,Uf=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Jo=function(e){return e.charCodeAt(1)===45},fs=function(e){return e!=null&&typeof e!="boolean"},fi=Ef(function(t){return Jo(t)?t:t.replace(Hf,"-$&").toLowerCase()}),hs=function(e,n){switch(e){case"animation":case"animationName":if(typeof n=="string")return n.replace(Uf,function(i,r,s){return Nt={name:r,styles:s,next:Nt},r})}return Pf[e]!==1&&!Jo(e)&&typeof n=="number"&&n!==0?n+"px":n};function Cn(t,e,n){if(n==null)return"";var i=n;if(i.__emotion_styles!==void 0)return i;switch(typeof n){case"boolean":return"";case"object":{var r=n;if(r.anim===1)return Nt={name:r.name,styles:r.styles,next:Nt},r.name;var s=n;if(s.styles!==void 0){var o=s.next;if(o!==void 0)for(;o!==void 0;)Nt={name:o.name,styles:o.styles,next:Nt},o=o.next;var a=s.styles+";";return a}return Wf(t,e,n)}}var c=n;if(e==null)return c;var u=e[c];return u!==void 0?u:c}function Wf(t,e,n){var i="";if(Array.isArray(n))for(var r=0;r<n.length;r++)i+=Cn(t,e,n[r])+";";else for(var s in n){var o=n[s];if(typeof o!="object"){var a=o;e!=null&&e[a]!==void 0?i+=s+"{"+e[a]+"}":fs(a)&&(i+=fi(s)+":"+hs(s,a)+";")}else if(Array.isArray(o)&&typeof o[0]=="string"&&(e==null||e[o[0]]===void 0))for(var c=0;c<o.length;c++)fs(o[c])&&(i+=fi(s)+":"+hs(s,o[c])+";");else{var u=Cn(t,e,o);switch(s){case"animation":case"animationName":{i+=fi(s)+":"+u+";";break}default:i+=s+"{"+u+"}"}}}return i}var ds=/label:\s*([^\s;{]+)\s*(;|$)/g,Nt;function hi(t,e,n){if(t.length===1&&typeof t[0]=="object"&&t[0]!==null&&t[0].styles!==void 0)return t[0];var i=!0,r="";Nt=void 0;var s=t[0];if(s==null||s.raw===void 0)i=!1,r+=Cn(n,e,s);else{var o=s;r+=o[0]}for(var a=1;a<t.length;a++)if(r+=Cn(n,e,t[a]),i){var c=s;r+=c[a]}ds.lastIndex=0;for(var u="",l;(l=ds.exec(r))!==null;)u+="-"+l[1];var f=Bf(r)+u;return{name:f,styles:r,next:Nt}}function Ko(t,e,n){var i="";return n.split(" ").forEach(function(r){t[r]!==void 0?e.push(t[r]+";"):r&&(i+=r+" ")}),i}var Vf=function(e,n,i){var r=e.key+"-"+n.name;e.registered[r]===void 0&&(e.registered[r]=n.styles)},Yf=function(e,n,i){Vf(e,n);var r=e.key+"-"+n.name;if(e.inserted[n.name]===void 0){var s=n;do e.insert(n===s?"."+r:"",s,e.sheet,!0),s=s.next;while(s!==void 0)}};function gs(t,e){if(t.inserted[e.name]===void 0)return t.insert("",e,t.sheet,!0)}function ps(t,e,n){var i=[],r=Ko(t,i,n);return i.length<2?n:r+e(i)}var Xf=function(e){var n=zf(e);n.sheet.speedy=function(a){this.isSpeedy=a},n.compat=!0;var i=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered,void 0);return Yf(n,f),n.key+"-"+f.name},r=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered),h="animation-"+f.name;return gs(n,{name:f.name,styles:"@keyframes "+h+"{"+f.styles+"}"}),h},s=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];var f=hi(u,n.registered);gs(n,f)},o=function(){for(var c=arguments.length,u=new Array(c),l=0;l<c;l++)u[l]=arguments[l];return ps(n.registered,i,Gf(u))};return{css:i,cx:o,injectGlobal:s,keyframes:r,hydrate:function(c){c.forEach(function(u){n.inserted[u]=!0})},flush:function(){n.registered={},n.inserted={},n.sheet.flush()},sheet:n.sheet,cache:n,getRegisteredStyles:Ko.bind(null,n.registered),merge:ps.bind(null,n.registered,i)}},Gf=function t(e){for(var n="",i=0;i<e.length;i++){var r=e[i];if(r!=null){var s=void 0;switch(typeof r){case"boolean":break;case"object":{if(Array.isArray(r))s=t(r);else{s="";for(var o in r)r[o]&&o&&(s&&(s+=" "),s+=o)}break}default:s=r}s&&(n&&(n+=" "),n+=s)}}return n},ta=Xf({key:"css"}),ur=ta.injectGlobal,X=ta.css;function Ni(t){var e;t=String(t);const n=parseFloat(t),i=((e=t.match(/[\d.\-+]*\s*(.*)/))===null||e===void 0?void 0:e[1])||"";return[n,i]}function ea(){return typeof window<"u"&&typeof document<"u"}function Oi(t,e){var n;const i=Ni(getComputedStyle(t).getPropertyValue(e));return i[0]*((n=lr(i[1],t))!==null&&n!==void 0?n:1)}function na(t,e){const n=document.createElement("div");n.style.height=`128${t}`,e.appendChild(n);const i=Oi(n,"height")/128;return e.removeChild(n),i}let di=null;function we(){return ea()?(di===null&&(di=na("in",document.body)),di):96}function lr(t,e){var n;if(!t&&t!==0)return null;if(!ea()){const o=Ni(String(t));if(!isNaN(o[0])){const a=((n=o[1])===null||n===void 0?void 0:n.toLowerCase())||"px";if(a==="px"||a==="")return o[0];if(a==="em"||a==="rem")return o[0]*16;if(a==="in")return o[0]*96;if(a==="cm")return o[0]*(96/2.54);if(a==="mm")return o[0]*(96/25.4);if(a==="pt")return o[0]*(96/72);if(a==="pc")return o[0]*(96/6)}return null}let i=document.body;e&&e!==window&&e!==document&&(i=e);const r=(String(t)||"px").trim().toLowerCase();switch(r){case"%":return i.clientHeight/100;case"ch":case"ex":return na(r,i);case"em":return Oi(i,"font-size");case"rem":return Oi(document.body,"font-size");case"vw":return window.innerWidth/100;case"vh":return window.innerHeight/100;case"vmin":return Math.min(window.innerWidth,window.innerHeight)/100;case"vmax":return Math.max(window.innerWidth,window.innerHeight)/100;case"in":return we();case"cm":return we()/2.54;case"mm":return we()/25.4;case"pt":return we()/72;case"pc":return we()/6;case"px":return 1}const s=Ni(r);if(!isNaN(s[0])){if(s[1]){const o=lr(s[1],i);return typeof o=="number"?s[0]*o:null}return s[0]}return null}function ia(){const t=()=>Math.floor((1+crypto.getRandomValues(new Uint32Array(1))[0])*65536).toString(16).substring(1);return`${t()+t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}const _s=new WeakMap;function qf(t,e){const n=t.substr(4,t.length-5);let i=_s.get(e);if(i||(i=new Map,_s.set(e,i)),i.has(n))return i.get(n);const r=getComputedStyle(e).getPropertyValue(n);return i.set(n,r),r}function Zf(t,e,n=0){const[i,r,s,o]=[t.x+n,t.y+t.height-2*n,t.x+t.width-2*n,t.y+n],[a,c,u,l]=[e.x+n,e.y+e.height-2*n,e.x+e.width-2*n,e.y+n];return!(r<l||c<o||s<a||u<i)}const ra='html[data-theme="dark"],html.dark-theme,body.dark-theme,html.theme-dark,body.theme-dark';function fr(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function sa(t,e){var n=Object.create(t.prototype);for(var i in e)n[i]=e[i];return n}function Je(){}var Ve=.7,$n=1/Ve,ae="\\s*([+-]?\\d+)\\s*",Ye="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",pt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",jf=/^#([0-9a-f]{3,8})$/,Qf=new RegExp(`^rgb\\(${ae},${ae},${ae}\\)$`),Jf=new RegExp(`^rgb\\(${pt},${pt},${pt}\\)$`),Kf=new RegExp(`^rgba\\(${ae},${ae},${ae},${Ye}\\)$`),th=new RegExp(`^rgba\\(${pt},${pt},${pt},${Ye}\\)$`),eh=new RegExp(`^hsl\\(${Ye},${pt},${pt}\\)$`),nh=new RegExp(`^hsla\\(${Ye},${pt},${pt},${Ye}\\)$`),ms={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};fr(Je,Yt,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:vs,formatHex:vs,formatHex8:ih,formatHsl:rh,formatRgb:ys,toString:ys});function vs(){return this.rgb().formatHex()}function ih(){return this.rgb().formatHex8()}function rh(){return oa(this).formatHsl()}function ys(){return this.rgb().formatRgb()}function Yt(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=jf.exec(t))?(n=e[1].length,e=parseInt(e[1],16),n===6?xs(e):n===3?new Q(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):n===8?an(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):n===4?an(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Qf.exec(t))?new Q(e[1],e[2],e[3],1):(e=Jf.exec(t))?new Q(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Kf.exec(t))?an(e[1],e[2],e[3],e[4]):(e=th.exec(t))?an(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=eh.exec(t))?ks(e[1],e[2]/100,e[3]/100,1):(e=nh.exec(t))?ks(e[1],e[2]/100,e[3]/100,e[4]):ms.hasOwnProperty(t)?xs(ms[t]):t==="transparent"?new Q(NaN,NaN,NaN,0):null}function xs(t){return new Q(t>>16&255,t>>8&255,t&255,1)}function an(t,e,n,i){return i<=0&&(t=e=n=NaN),new Q(t,e,n,i)}function sh(t){return t instanceof Je||(t=Yt(t)),t?(t=t.rgb(),new Q(t.r,t.g,t.b,t.opacity)):new Q}function Di(t,e,n,i){return arguments.length===1?sh(t):new Q(t,e,n,i??1)}function Q(t,e,n,i){this.r=+t,this.g=+e,this.b=+n,this.opacity=+i}fr(Q,Di,sa(Je,{brighter(t){return t=t==null?$n:Math.pow($n,t),new Q(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Ve:Math.pow(Ve,t),new Q(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new Q(Ht(this.r),Ht(this.g),Ht(this.b),En(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:bs,formatHex:bs,formatHex8:oh,formatRgb:ws,toString:ws}));function bs(){return`#${Lt(this.r)}${Lt(this.g)}${Lt(this.b)}`}function oh(){return`#${Lt(this.r)}${Lt(this.g)}${Lt(this.b)}${Lt((isNaN(this.opacity)?1:this.opacity)*255)}`}function ws(){const t=En(this.opacity);return`${t===1?"rgb(":"rgba("}${Ht(this.r)}, ${Ht(this.g)}, ${Ht(this.b)}${t===1?")":`, ${t})`}`}function En(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function Ht(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function Lt(t){return t=Ht(t),(t<16?"0":"")+t.toString(16)}function ks(t,e,n,i){return i<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new ct(t,e,n,i)}function oa(t){if(t instanceof ct)return new ct(t.h,t.s,t.l,t.opacity);if(t instanceof Je||(t=Yt(t)),!t)return new ct;if(t instanceof ct)return t;t=t.rgb();var e=t.r/255,n=t.g/255,i=t.b/255,r=Math.min(e,n,i),s=Math.max(e,n,i),o=NaN,a=s-r,c=(s+r)/2;return a?(e===s?o=(n-i)/a+(n<i)*6:n===s?o=(i-e)/a+2:o=(e-n)/a+4,a/=c<.5?s+r:2-s-r,o*=60):a=c>0&&c<1?0:o,new ct(o,a,c,t.opacity)}function hr(t,e,n,i){return arguments.length===1?oa(t):new ct(t,e,n,i??1)}function ct(t,e,n,i){this.h=+t,this.s=+e,this.l=+n,this.opacity=+i}fr(ct,hr,sa(Je,{brighter(t){return t=t==null?$n:Math.pow($n,t),new ct(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Ve:Math.pow(Ve,t),new ct(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*e,r=2*n-i;return new Q(gi(t>=240?t-240:t+120,r,i),gi(t,r,i),gi(t<120?t+240:t-120,r,i),this.opacity)},clamp(){return new ct(Ts(this.h),cn(this.s),cn(this.l),En(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=En(this.opacity);return`${t===1?"hsl(":"hsla("}${Ts(this.h)}, ${cn(this.s)*100}%, ${cn(this.l)*100}%${t===1?")":`, ${t})`}`}}));function Ts(t){return t=(t||0)%360,t<0?t+360:t}function cn(t){return Math.max(0,Math.min(1,t||0))}function gi(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}const Ce=globalThis?.UNOVIS_COLORS||["#4D8CFD","#FF6B7E","#F4B83E","#A6CC74","#00C19A","#6859BE"],ah=globalThis?.UNOVIS_COLORS_DARK||["#4D8CFD","#FF6B7E","#FFC16D","#A6CC74","#00C19A","#7887E0"],Mt=t=>`--vis-${re(t)?`color${t%Ce.length}`:t}`;function ch(t,e=.4){const n=hr(t);return n.l=n.l*(1+e),n.formatHex()}function uh(t,e=.4,n=.6){const i=hr(t);return i.s=i.s*(1-n),i.l=i.l*(1-e),i.formatHex()}const Nn=10,Ri=[{id:"stripes-diagonal",svg:'<path d="M-1,1 l2,-2 M0,10 l10,-10 M9,11 l2,-2" stroke="#000"/>'},{id:"dots",svg:'<path d="m0-1.5a1 1 0 010 3m10-3a1 1 0 000 3M5 3.5a1 1 0 010 3 1 1 0 010-3M0 8.5 a1 1 0 010 3m10-3a1 1 0 000 3" fill"#000"/>'},{id:"stripes-vertical",svg:'<path d="M 5,-1 L5,11" stroke="#000"/>'},{id:"crosshatch",svg:'<path d="M0 0L10 10ZM10 0L0 10Z" stroke="#000"/>'},{id:"waves",svg:'<path d="M0 4Q2.5 1 5 4 7.5 7 10 4v2Q7.5 9 5 6 2.5 3 0 6Z" fill="#000"/>'},{id:"circles",svg:'<circle cx="5" cy="5" r="3" stroke="#000" fill="#fff"/>'}],Fi=[{id:"circle",marker:'<circle cx="5" cy="5" r="5"/>',dashArray:[]},{id:"triangle",marker:'<path d="M5,0 L10,9 L0,9Z">',dashArray:[9,1]},{id:"diamond",marker:'<path d="M 0 5 L5 0 L 10 5 L 5 10 L 0 5Z">',dashArray:[2]},{id:"arrow",marker:'<path d="M4 0 0 0 6 5 0 10 4 10 10 5Z">',dashArray:[2,3,8,3]},{id:"square",marker:'<rect x="1" y="1" width="8" height="8"/>',dashArray:[6]},{id:"star",marker:'<path d="m2 9 3-9 3 9L0 3h10Z"/>',dashArray:[1,6]}];function At(t){return`vis-${`pattern-${t.svg?"fill":"marker"}`}-${t.id}`}const lh=t=>`<mask id="${At(t)}">
2
2
  <pattern id="${t.id}" viewBox="0 0 10 10" width="${Nn}" height="${Nn}" patternUnits="userSpaceOnUse">
3
3
  <rect width="100%" height="100%" fill="#fff"/>
4
4
  ${t.svg}
@@ -1 +1 @@
1
- import{_ as Ee,a as Re}from"./DgE2YE3R.js";import{d as H,E as le,H as se,o as l,f as T,g as c,i as s,j as r,I as G,l as W,k as a,c as m,p as ne,F as C,y as F,q as ie,m as I,t as w,v as x,G as X,r as R,h as D,K as $e,_ as re,w as oe,b as Oe,ac as Le,L as z}from"./NQikbhmK.js";import{_ as Be}from"./C7P1UCO2.js";import{_ as pe}from"./Jo8kRmHz.js";import{_ as fe}from"./DS636elg.js";import{_ as ve}from"./B9WhzpKO.js";import{_ as ge}from"./CZfMdzfk.js";import{_ as Fe}from"./B3HO8kuh.js";import{h as We}from"./BjaRappk.js";import{_ as ye}from"./DprVVyUQ.js";import{_ as Ne}from"./CV9-fTmY.js";import{u as ae}from"./CpjgB2aY.js";import{_ as De}from"./eaVkJRSa.js";import{p as Xe,g as qe}from"./B7NBP1C-.js";import"./D0HNloZ9.js";import"./Bn0YQDyy.js";import"./CYsTqbBS.js";import"./g26aVPxc.js";import"./CNFYDQmj.js";import"./BYDaY0Z7.js";import"./DP8hfJ9h.js";import"./eptP4pGv.js";import"./CDk0q2hV.js";const Ke={class:"space-y-3"},je={key:0,class:"flex items-center justify-center gap-2 py-8 text-gray-400"},ze={key:1,class:"py-8 text-center text-sm text-gray-400"},He={key:2,class:"max-h-96 overflow-y-auto space-y-px"},Ge=["onClick"],Qe={class:"flex-1 min-w-0"},Ye={class:"text-sm font-medium leading-snug truncate"},Ze={key:0,class:"text-gray-500 font-normal"},Je={class:"text-xs text-gray-400 leading-snug mt-0.5"},et={key:3,class:"italic text-gray-500"},tt={key:0,class:"flex items-center gap-1 shrink-0 pt-0.5"},st=["title"],ot=["title"],at={key:0,class:"py-8 text-center text-sm text-gray-400"},lt=H({__name:"ModelPickerModal",props:X({models:{},selected:{},loading:{type:Boolean}},{open:{type:Boolean,required:!0},openModifiers:{}}),emits:X(["select"],["update:open"]),setup(o,{emit:M}){function U(y){return y?y>=1e6?`${(y/1e6).toFixed(1)}M`:y>=1e3?`${Math.round(y/1e3)}K`:String(y):""}const v=o,i=M,A=le(o,"open"),_=R(null),d=R("");se(A,y=>{y&&$e(()=>_.value?.focus())});const n=D(()=>{const y=d.value.toLowerCase();return y?v.models.filter(h=>h.id.toLowerCase().includes(y)||(h.label?.toLowerCase()??"").includes(y)):v.models}),k={image:{icon:"i-lucide-image",label:"Image input"},pdf:{icon:"i-lucide-file-text",label:"PDF input"},code:{icon:"i-lucide-code",label:"Code execution"},thinking:{icon:"i-lucide-brain",label:"Extended thinking"},json:{icon:"i-lucide-braces",label:"Structured output"},text:{icon:"i-lucide-type",label:"Text"},audio:{icon:"i-lucide-music",label:"Audio"}};function V(y){return y.map(h=>{const g=h.indexOf("→");if(g!==-1){const E=h.slice(0,g),O=h.slice(g+1);return{inputs:E.split("+").filter(Boolean),outputs:O.split("+").filter(Boolean)}}return{inputs:[h],outputs:[]}})}function $(y){i("select",y),A.value=!1,d.value=""}return(y,h)=>{const g=G,E=ne,O=Fe;return l(),T(O,{open:A.value,"onUpdate:open":h[1]||(h[1]=f=>A.value=f),title:"Select a model",ui:{content:"max-w-2xl"}},{body:c(()=>[s("div",Ke,[r(g,{ref_key:"searchInput",ref:_,modelValue:a(d),"onUpdate:modelValue":h[0]||(h[0]=f=>W(d)?d.value=f:null),placeholder:"Search models…",icon:"i-lucide-search",size:"sm"},null,8,["modelValue"]),o.models.length===0&&o.loading?(l(),m("div",je,[r(E,{name:"i-lucide-loader-2",class:"size-4 animate-spin"}),h[2]||(h[2]=s("span",{class:"text-sm"},"Loading models…",-1))])):o.models.length===0?(l(),m("div",ze," No models available — check your provider configuration ")):(l(),m("div",He,[(l(!0),m(C,null,F(a(n),f=>(l(),m("button",{key:f.id,class:ie(["w-full text-left px-4 py-3 rounded-lg hover:bg-elevated transition-colors border border-transparent hover:border-default flex items-start gap-4",o.selected===f.id?"bg-primary/10 ring-1 ring-inset ring-primary/30 border-primary/30":""]),onClick:b=>$(f.id)},[s("div",Qe,[s("p",Ye,[I(w(f.id)+" ",1),f.label&&f.label!==f.id?(l(),m("span",Ze," — "+w(f.label),1)):x("",!0)]),s("p",Je,[f.contextLength?(l(),m(C,{key:0},[I(w(U(f.contextLength))+" ctx",1)],64)):x("",!0),f.maxTokens?(l(),m(C,{key:1},[I(" · up to "+w(U(f.maxTokens))+" out",1)],64)):x("",!0),f.pricing?.prompt?(l(),m(C,{key:2},[I(" · $"+w(f.pricing.prompt)+" / $"+w(f.pricing.completion??"?")+" per 1M",1)],64)):x("",!0),!f.contextLength&&!f.maxTokens&&!f.pricing?.prompt?(l(),m("span",et,"No additional info")):x("",!0)])]),f.modalities?.length?(l(),m("div",tt,[(l(!0),m(C,null,F(V(f.modalities),b=>(l(),m(C,{key:b.inputs.join()+"→"+b.outputs.join()},[(l(!0),m(C,null,F(b.inputs,P=>(l(),m("span",{key:"in-"+P,title:k[P]?.label??P,class:"inline-flex items-center justify-center size-6 rounded-md bg-gray-100 dark:bg-gray-800 text-gray-500 hover:text-primary transition-colors"},[r(E,{name:k[P]?.icon??"i-lucide-cpu",class:"size-3.5"},null,8,["name"])],8,st))),128)),b.outputs.length?(l(),T(E,{key:0,name:"i-lucide-arrow-right",class:"size-3 text-gray-400 shrink-0"})):x("",!0),(l(!0),m(C,null,F(b.outputs,P=>(l(),m("span",{key:"out-"+P,title:k[P]?.label??P,class:"inline-flex items-center justify-center size-6 rounded-md bg-gray-100 dark:bg-gray-800 text-gray-500 hover:text-primary transition-colors"},[r(E,{name:k[P]?.icon??"i-lucide-cpu",class:"size-3.5"},null,8,["name"])],8,ot))),128))],64))),128))])):x("",!0)],10,Ge))),128)),a(n).length===0?(l(),m("div",at,' No models match "'+w(a(d))+'" ',1)):x("",!0)]))])]),_:1},8,["open"])}}}),nt=Object.assign(lt,{__name:"ModelPickerModal"}),it={class:"flex gap-2"},rt=H({__name:"ModelFieldInput",props:X({provider:{},providerResolved:{},reuse:{type:Boolean},models:{},loadingModels:{type:Boolean},placeholderAnthropic:{},placeholderOpenai:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:X(["loadModels"],["update:modelValue"]),setup(o,{emit:M}){const U=M,v=le(o,"modelValue"),i=R(!1);return(A,_)=>{const d=G,n=re,k=nt;return l(),m(C,null,[s("div",it,[r(d,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=V=>v.value=V),placeholder:o.providerResolved==="anthropic"?o.placeholderAnthropic:o.placeholderOpenai,class:"flex-1"},null,8,["modelValue","placeholder"]),o.providerResolved?(l(),T(n,{key:0,size:"sm",variant:"soft",onClick:_[1]||(_[1]=V=>{U("loadModels"),i.value=!0})},{default:c(()=>[..._[4]||(_[4]=[I(" Choose model… ",-1)])]),_:1})):x("",!0)]),r(k,{open:a(i),"onUpdate:open":_[2]||(_[2]=V=>W(i)?i.value=V:null),models:o.models,selected:v.value,loading:o.loadingModels,onSelect:_[3]||(_[3]=V=>v.value=V)},null,8,["open","models","selected","loading"])],64)}}}),dt=Object.assign(rt,{__name:"ModelFieldInput"}),ct={class:"flex items-start justify-between gap-3"},ut={class:"flex items-start gap-2"},mt={class:"font-medium inline-flex items-center gap-1"},pt={class:"text-sm text-gray-500"},ft={class:"inline-flex items-center gap-1"},vt={class:"inline-flex items-center gap-1"},gt={class:"inline-flex items-center gap-1"},yt={key:3,class:"flex justify-end"},ht=H({__name:"AiRoleConfigForm",props:X({meta:{},hasApiKey:{type:Boolean},reuseOptions:{},providerOptions:{},presetOptions:{},disabled:{type:Boolean},envManaged:{type:Boolean},models:{},loadingModels:{type:Boolean},providerResolved:{},testing:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:X(["applyPreset","loadModels","test"],["update:modelValue"]),setup(o,{emit:M}){const U=o,v=M,i=le(o,"modelValue"),A=D({get:()=>i.value.reuse??"own",set:d=>i.value.reuse=d==="own"?null:d}),_=D(()=>We(U.meta.help));return(d,n)=>{const k=ne,V=Be,$=pe,y=fe,h=ve,g=ge,E=G,O=dt,f=re;return l(),m("div",{class:ie(["rounded-lg border border-default p-4 space-y-4",o.meta.optional&&!i.value.enabled?"opacity-80":""])},[s("div",ct,[s("div",ut,[r(k,{name:o.meta.icon,class:"size-5 mt-0.5 text-primary"},null,8,["name"]),s("div",null,[s("p",mt,[I(w(o.meta.title)+" ",1),r(V,{topic:o.meta.help},null,8,["topic"])]),s("p",pt,w(o.meta.blurb),1)])]),o.meta.optional?(l(),T($,{key:0,modelValue:i.value.enabled,"onUpdate:modelValue":n[0]||(n[0]=b=>i.value.enabled=b),disabled:o.disabled&&!o.envManaged,"aria-label":o.meta.enableLabel},null,8,["modelValue","disabled","aria-label"])):x("",!0)]),!o.meta.optional||i.value.enabled?(l(),m(C,{key:0},[o.meta.reuseTargets.length?(l(),T(h,{key:0,label:"Provider source"},{default:c(()=>[r(y,{modelValue:a(A),"onUpdate:modelValue":n[1]||(n[1]=b=>W(A)?A.value=b:null),items:o.reuseOptions,disabled:o.disabled&&!o.envManaged,class:"w-full"},null,8,["modelValue","items","disabled"])]),_:1})):x("",!0),i.value.reuse?x("",!0):(l(),m(C,{key:1},[r(h,{label:"Provider"},{label:c(()=>[s("span",ft,[n[9]||(n[9]=I(" Provider ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(y,{modelValue:i.value.provider,"onUpdate:modelValue":n[2]||(n[2]=b=>i.value.provider=b),items:o.providerOptions,disabled:o.disabled,placeholder:"Choose a provider…",class:"w-full"},null,8,["modelValue","items","disabled"])]),_:1}),i.value.provider==="openai"?(l(),T(h,{key:0,label:"Preset",description:"Pick a known provider to auto-fill the URL and model, then adjust as needed"},{default:c(()=>[r(y,{items:o.presetOptions,placeholder:"Choose a preset…",disabled:o.disabled,class:"w-full","onUpdate:modelValue":n[3]||(n[3]=b=>v("applyPreset",b))},null,8,["items","disabled"])]),_:1})):x("",!0),i.value.provider?(l(),T(h,{key:1,label:"API key",description:o.hasApiKey?"Leave empty to keep the stored key, clear and save to remove it":"Required for Anthropic; optional for local OpenAI-compatible servers"},{label:c(()=>[s("span",vt,[n[10]||(n[10]=I(" API key ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(E,{modelValue:i.value.apiKey,"onUpdate:modelValue":n[4]||(n[4]=b=>i.value.apiKey=b),type:"password",placeholder:o.hasApiKey?"•••••••• (unchanged)":"sk-…",disabled:o.disabled,class:"w-full font-mono"},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["description"])):x("",!0),i.value.provider==="openai"?(l(),T(h,{key:2,label:"Base URL",description:"Required, e.g. http://localhost:11434/v1"},{label:c(()=>[s("span",gt,[n[11]||(n[11]=I(" Base URL ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(E,{modelValue:i.value.baseUrl,"onUpdate:modelValue":n[5]||(n[5]=b=>i.value.baseUrl=b),placeholder:"http://localhost:11434/v1",disabled:o.disabled,class:"w-full"},null,8,["modelValue","disabled"])]),_:1})):x("",!0)],64)),i.value.reuse||i.value.provider?(l(),T(h,{key:2,label:"Model",description:i.value.reuse?"Leave empty to use the reused role's model":void 0},{default:c(()=>[r(O,{modelValue:i.value.model,"onUpdate:modelValue":n[6]||(n[6]=b=>i.value.model=b),provider:i.value.provider,"provider-resolved":o.providerResolved,reuse:!!i.value.reuse,models:o.models,"loading-models":o.loadingModels,"placeholder-anthropic":o.meta.modelPlaceholderAnthropic,"placeholder-openai":o.meta.modelPlaceholderOpenai,onLoadModels:n[7]||(n[7]=b=>v("loadModels"))},null,8,["modelValue","provider","provider-resolved","reuse","models","loading-models","placeholder-anthropic","placeholder-openai"])]),_:1},8,["description"])):x("",!0),o.providerResolved?(l(),m("div",yt,[r(f,{size:"xs",color:"neutral",variant:"soft",icon:"i-lucide-plug",loading:o.testing,onClick:n[8]||(n[8]=b=>v("test"))},{default:c(()=>[...n[12]||(n[12]=[I(" Test connection ",-1)])]),_:1},8,["loading"])])):x("",!0)],64)):x("",!0)],2)}}}),bt=Object.assign(ht,{__name:"AiRoleConfigForm"}),_t={key:0,class:"space-y-3"},xt={class:"text-sm text-gray-500"},kt={key:0,class:"text-sm text-gray-500"},At={key:1,class:"overflow-x-auto"},It={class:"w-full text-sm"},Mt={class:"px-2 py-2"},St={class:"font-mono text-xs"},Vt={class:"text-xs text-gray-400"},wt={class:"text-right px-2 py-2"},Pt=["title"],Tt=["title"],Ut={class:"text-right px-2 py-2"},Ct={key:1,class:"flex items-center gap-2 py-4 text-muted"},Et=H({__name:"AiUsagePanel",async setup(o){let M,U;const v=R(30),i=[{label:"Last 7 days",value:7},{label:"Last 30 days",value:30},{label:"Last 90 days",value:90}],{data:A,pending:_}=([M,U]=oe(()=>ae("/api/settings/ai/usage",{query:{days:v}},"$1ij5UlwVIK")),M=await M,U(),M);function d(n){return n>=1e6?`${(n/1e6).toFixed(1)}M`:n>=1e3?`${(n/1e3).toFixed(1)}k`:String(n)}return(n,k)=>{const V=fe,$=Ne,y=ne,h=ye;return l(),T(h,{icon:"i-lucide-activity",title:"AI usage"},{actions:c(()=>[r(V,{modelValue:a(v),"onUpdate:modelValue":k[0]||(k[0]=g=>W(v)?v.value=g:null),items:i,size:"sm",class:"w-36"},null,8,["modelValue"])]),default:c(()=>[a(A)?(l(),m("div",_t,[s("p",xt,w(d(a(A).totals.diagnoses))+" diagnoses · "+w(d(a(A).totals.inputTokens))+" input tokens · "+w(d(a(A).totals.outputTokens))+" output tokens ",1),a(A).byModel.length===0?(l(),m("p",kt,"No AI calls recorded in this period.")):(l(),m("div",At,[s("table",It,[k[1]||(k[1]=s("thead",null,[s("tr",{class:"text-xs text-gray-500 uppercase tracking-wider border-b border-default"},[s("th",{class:"text-left px-2 py-2 font-medium"},"Model"),s("th",{class:"text-right px-2 py-2 font-medium"},"Diagnoses"),s("th",{class:"text-right px-2 py-2 font-medium"},"Failed"),s("th",{class:"text-right px-2 py-2 font-medium"},"Input tokens"),s("th",{class:"text-right px-2 py-2 font-medium"},"Output tokens"),s("th",{class:"text-right px-2 py-2 font-medium"},"Avg duration")])],-1)),s("tbody",null,[(l(!0),m(C,null,F(a(A).byModel,g=>(l(),m("tr",{key:`${g.provider??"unknown"}/${g.model}`,class:"border-b last:border-b-0 border-default"},[s("td",Mt,[s("span",St,w(g.model),1),s("span",Vt," · "+w(g.provider??"unknown"),1)]),s("td",wt,w(g.diagnoses),1),s("td",{class:ie(["text-right px-2 py-2",g.failed>0?"text-red-600 dark:text-red-400":""])},w(g.failed),3),s("td",{class:"text-right px-2 py-2",title:g.inputTokens.toLocaleString()},w(d(g.inputTokens)),9,Pt),s("td",{class:"text-right px-2 py-2",title:g.outputTokens.toLocaleString()},w(d(g.outputTokens)),9,Tt),s("td",Ut,[r($,{ms:g.avgDurationMs},null,8,["ms"])])]))),128))])])]))])):a(_)?(l(),m("div",Ct,[r(y,{name:"i-lucide-loader-circle",class:"size-4 animate-spin"}),k[2]||(k[2]=s("span",{class:"text-sm"},"Loading usage…",-1))])):x("",!0)]),_:1})}}}),Rt=Object.assign(Et,{__name:"AiUsagePanel"}),$t=[{key:"sampleErrorChars",label:"Error text characters",envVar:"PIWI_AI_MAX_SAMPLE_ERROR_CHARS",description:"Max characters of raw error text (per error block).",min:200,max:5e4},{key:"scmPatchBudget",label:"SCM patch budget",envVar:"PIWI_AI_MAX_SCM_PATCH_BUDGET",description:"Total characters of diff patches across changed files.",min:0,max:5e4},{key:"affectedTests",label:"Affected tests",envVar:"PIWI_AI_MAX_AFFECTED_TESTS",description:"Max affected tests listed.",min:1,max:200},{key:"steps",label:"Test steps",envVar:"PIWI_AI_MAX_STEPS",description:"Max recent test steps included.",min:1,max:200},{key:"consoleEntries",label:"Console entries",envVar:"PIWI_AI_MAX_CONSOLE_ENTRIES",description:"Max console error/warning entries included.",min:0,max:200},{key:"consoleEntryChars",label:"Console entry characters",envVar:"PIWI_AI_MAX_CONSOLE_ENTRY_CHARS",description:"Max characters per console entry.",min:50,max:5e3},{key:"networkRequests",label:"Network requests",envVar:"PIWI_AI_MAX_NETWORK_REQUESTS",description:"Max failed network requests included.",min:0,max:200},{key:"ariaSnapshotChars",label:"ARIA snapshot characters",envVar:"PIWI_AI_MAX_ARIA_SNAPSHOT_CHARS",description:"Max characters of the page ARIA snapshot.",min:0,max:5e4},{key:"testSourceChars",label:"Test source characters",envVar:"PIWI_AI_MAX_TEST_SOURCE_CHARS",description:"Max characters of the test source snippet.",min:0,max:5e4},{key:"maxSourceFiles",label:"Full source files",envVar:"PIWI_AI_MAX_SOURCE_FILES",description:"Max full source files fetched from SCM to ground patches (0 disables).",min:0,max:20},{key:"sourceFileChars",label:"Source file characters",envVar:"PIWI_AI_MAX_SOURCE_FILE_CHARS",description:"Max characters per fetched full source file.",min:0,max:5e4},{key:"serverLogEntries",label:"Server log entries",envVar:"PIWI_AI_MAX_SERVER_LOG_ENTRIES",description:"Max backend server log entries (from X-Piwi-Logs header) included.",min:0,max:200},{key:"serverLogEntryChars",label:"Server log entry characters",envVar:"PIWI_AI_MAX_SERVER_LOG_ENTRY_CHARS",description:"Max characters per backend server log entry.",min:50,max:5e3},{key:"serverTraceSpans",label:"Server trace spans",envVar:"PIWI_AI_MAX_SERVER_TRACE_SPANS",description:"Max backend server spans (from X-Piwi-Trace header) included (0 disables).",min:0,max:500},{key:"maxImages",label:"Max screenshots",envVar:"PIWI_AI_MAX_IMAGES",description:"Max screenshots auto-included in the diagnosis context.",min:0,max:20},{key:"maxPassedPeers",label:"Max passed peers",envVar:"PIWI_AI_MAX_PASSED_PEERS",description:"Max peer tests in the same file listed when they passed.",min:0,max:100},{key:"maxConsoleWindow",label:"Console window entries",envVar:"PIWI_AI_MAX_CONSOLE_WINDOW",description:"Max console entries of any type in the window before failure.",min:0,max:200},{key:"slowRequestMs",label:"Slow request threshold (ms)",envVar:"PIWI_AI_SLOW_REQUEST_MS",description:"Network request duration threshold for flagging as slow.",min:100,max:3e4},{key:"maxTraceActions",label:"Trace actions",envVar:"PIWI_AI_MAX_TRACE_ACTIONS",description:"Max actions extracted from trace ZIP for failing-action context (0 disables).",min:0,max:50},{key:"traceDomChars",label:"Trace DOM excerpt characters",envVar:"PIWI_AI_TRACE_DOM_CHARS",description:"Max characters for the trace-derived DOM/ARIA excerpt in failing-action context.",min:0,max:2e4},{key:"traceStackFrames",label:"Trace stack frames",envVar:"PIWI_AI_MAX_TRACE_STACK_FRAMES",description:"Max call-stack frames (with source windows) from the trace (0 disables).",min:0,max:50},{key:"traceNetworkRequests",label:"Trace network requests",envVar:"PIWI_AI_MAX_TRACE_NETWORK_REQUESTS",description:"Max requests from the trace network stream (0 disables).",min:0,max:200},{key:"domSnapshotChars",label:"DOM snapshot characters",envVar:"PIWI_AI_MAX_DOM_SNAPSHOT_CHARS",description:"Max characters of the failure-time DOM snapshot rendered from the trace (0 disables).",min:0,max:5e4},{key:"imageMaxEdge",label:"Screenshot max edge (px)",envVar:"PIWI_AI_IMAGE_MAX_EDGE",description:"Screenshots are downscaled to at most this many pixels on the long edge before being sent.",min:512,max:8192}],Ot={class:"space-y-6"},Lt={class:"space-y-5"},Bt={class:"flex items-center gap-3"},Ft={class:"flex items-center gap-2 justify-end"},Wt={class:"flex justify-end"},Nt={class:"flex justify-end"},Dt={class:"grid grid-cols-1 sm:grid-cols-2 gap-x-4 gap-y-3"},Xt={class:"flex justify-end gap-2"},ps=H({__name:"ai",async setup(o){let M,U;const v=Oe(),{data:i,refresh:A}=([M,U]=oe(()=>ae("/api/settings/ai","$nV9xx-QVRl")),M=await M,U(),M);function _(){return{enabled:!1,reuse:null,provider:"",model:"",baseUrl:"",apiKey:""}}const d=z({diagnosis:_(),research:_(),embedding:_()}),n=R(!1),k=R(""),V=R(""),$=R(!1),y=R(!1),h=R(!1),g=z({diagnosis:!1,research:!1,embedding:!1}),E=z({diagnosis:[],research:[],embedding:[]}),O=z({diagnosis:!1,research:!1,embedding:!1});function f(t){const e=d[t];return e.reuse?d[e.reuse]?.provider||"":e.provider}async function b(t){const e=d[t],p=f(t),S=e.reuse?d[e.reuse]:e,ee=S.apiKey||void 0;O[t]=!0;try{const te=await $fetch("/api/settings/ai/models",{method:"POST",body:{role:t,provider:p,baseUrl:S.baseUrl||void 0,apiKey:ee}});E[t]=te.models}catch{E[t]=[]}finally{O[t]=!1}}const P=[{key:"diagnosis",title:"Diagnosis model",icon:"i-lucide-stethoscope",help:"settings.ai-provider",optional:!1,enableLabel:"",blurb:"The main model that writes the final diagnosis. Required to enable AI features.",reuseTargets:[],modelPlaceholderAnthropic:"claude-opus-4-8",modelPlaceholderOpenai:"e.g. gpt-4o, llama3.1"},{key:"research",title:"Research model",icon:"i-lucide-search",help:"settings.ai-research",optional:!0,enableLabel:"Two-stage diagnosis",blurb:"A cheaper/faster model that pre-analyzes the failure before the diagnosis model writes the final answer. Also used for cluster naming and merge adjudication.",reuseTargets:["diagnosis"],modelPlaceholderAnthropic:"e.g. claude-haiku-4-5",modelPlaceholderOpenai:"e.g. llama-3.1-8b-instant"},{key:"embedding",title:"Embedding model",icon:"i-lucide-vector-square",help:"settings.embedding-model",optional:!0,enableLabel:"Semantic clustering",blurb:"Embeds failures so semantically-similar errors group together (used by failure clustering).",reuseTargets:["diagnosis","research"],modelPlaceholderAnthropic:"— Anthropic has no embeddings API —",modelPlaceholderOpenai:"e.g. text-embedding-3-small"}],de=[{label:"Anthropic API",value:"anthropic"},{label:"OpenAI-compatible",value:"openai"}],he=de.filter(t=>t.value!=="anthropic"),be=D(()=>{const t={};for(const e of P)t[e.key]=[{label:"Configure its own provider",value:"own"},...e.reuseTargets.filter(p=>d[p].enabled||p==="diagnosis").filter(p=>e.key!=="embedding"||d[p].provider==="openai").map(p=>({label:`Reuse ${P.find(S=>S.key===p).title.toLowerCase()}`,value:p}))];return t}),N=D(()=>!!i.value?.envManaged),_e=Xe(qe("ai"));se(i,t=>{if(t){for(const e of P){const p=t.roles[e.key],S=d[e.key];S.enabled=!!p,S.reuse=p?.reuse??null,S.provider=p?.provider??"",S.model=p?.model??"",S.baseUrl=p?.baseUrl??"",S.apiKey=""}n.value=t.autoDiagnose,k.value=t.customInstructions||""}},{immediate:!0});function xe(t){return!!i.value?.roles[t]?.hasApiKey}const ce=[{label:"ollama (local)",baseUrl:"http://localhost:11434/v1",model:"llama3.1"},{label:"LM Studio (local)",baseUrl:"http://localhost:1234/v1",model:""},{label:"OpenRouter",baseUrl:"https://openrouter.ai/api/v1",model:"meta-llama/llama-3.1-8b-instruct"},{label:"Groq",baseUrl:"https://api.groq.com/openai/v1",model:"llama-3.1-8b-instant"},{label:"OpenAI",baseUrl:"https://api.openai.com/v1",model:"gpt-4o"},{label:"Mistral AI",baseUrl:"https://api.mistral.ai/v1",model:"mistral-small-latest"},{label:"Custom",baseUrl:"",model:""}],ke=ce.map(t=>({label:t.label,value:t.label}));function Ae(t,e){const p=ce.find(S=>S.label===e);!p||p.label==="Custom"||(d[t].baseUrl=p.baseUrl,d[t].model=p.model)}function Q(t){const e=d[t];if(!e.enabled)return null;if(e.reuse)return{reuse:e.reuse,model:e.model||void 0};const p={provider:e.provider,model:e.model||void 0,baseUrl:e.baseUrl||void 0};return e.apiKey!==""&&(p.apiKey=e.apiKey),p}async function Ie(){$.value=!0;try{!N&&(!d.diagnosis.enabled||!d.diagnosis.provider)?await $fetch("/api/settings/ai",{method:"PUT",body:{roles:null,autoDiagnose:n.value}}):await $fetch("/api/settings/ai",{method:"PUT",body:{roles:{diagnosis:Q("diagnosis"),research:Q("research"),embedding:Q("embedding")},autoDiagnose:n.value}}),await A();for(const t of P)d[t.key].apiKey="";v.add({title:"Settings saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{$.value=!1}}async function Me(){h.value=!0;try{await $fetch("/api/settings/ai",{method:"PUT",body:{scmToken:V.value||null}}),await A(),V.value="",v.add({title:"SCM token saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{h.value=!1}}async function Se(){y.value=!0;try{await $fetch("/api/settings/ai",{method:"PUT",body:{customInstructions:k.value||null}}),await A(),v.add({title:"Instructions saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{y.value=!1}}async function Ve(t){g[t]=!0;try{const e=d[t],p=e.reuse?d[e.reuse]:e,S=await $fetch("/api/settings/ai/test",{method:"POST",body:{role:t,provider:p.provider||void 0,apiKey:p.apiKey||void 0,model:e.model||(e.reuse?p.model:"")||void 0,baseUrl:p.baseUrl||void 0}});S.success?v.add({title:"Connection successful",description:`Model: ${S.model}`,color:"success"}):v.add({title:"Connection failed",description:S.error||"Unknown error",color:"error"})}catch(e){v.add({title:"Connection failed",description:String(e?.message??e),color:"error"})}finally{g[t]=!1}}const{data:L}=([M,U]=oe(()=>ae("/api/settings/ai/limits","$cSpsteApgW")),M=await M,U(),M),Y=$t,q=z({}),Z=R(!1),J=D(()=>new Set(L.value?.envManaged??[]));se(L,t=>{if(t)for(const e of Y)q[e.key]=t.limits[e.key]},{immediate:!0});async function we(){Z.value=!0;try{L.value=await $fetch("/api/settings/ai/limits",{method:"PUT",body:{limits:q}}),v.add({title:"Context limits saved",color:"success"})}catch(t){v.add({title:"Failed to save context limits",description:String(t?.message??t),color:"error"})}finally{Z.value=!1}}function Pe(){if(L.value)for(const t of Y)J.value.has(t.key)||(q[t.key]=L.value.defaults[t.key])}return(t,e)=>{const p=Ee,S=bt,ee=pe,te=Re,K=re,j=ye,Te=Rt,ue=G,me=ve,Ue=De,Ce=ge;return l(),m("div",Ot,[a(N)?(l(),T(p,{key:0,"env-vars":a(_e)},null,8,["env-vars"])):x("",!0),r(j,{icon:"i-lucide-sparkles",title:"Model providers",help:"settings.ai-provider"},{subtitle:c(()=>[...e[3]||(e[3]=[I(" Configure a complete provider for each model role. Optional roles can reuse another role's provider so you don't re-enter credentials. ",-1)])]),footer:c(()=>[s("div",Ft,[r(K,{color:"primary",loading:a($),icon:"i-lucide-save",onClick:Ie},{default:c(()=>[...e[5]||(e[5]=[I(" Save ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[s("div",Lt,[(l(),m(C,null,F(P,u=>r(S,{key:u.key,modelValue:a(d)[u.key],"onUpdate:modelValue":B=>a(d)[u.key]=B,meta:u,"has-api-key":xe(u.key),"reuse-options":a(be)[u.key],"provider-options":u.key==="embedding"?a(he):de,"preset-options":a(ke),disabled:a(N),"env-managed":a(N),"provider-resolved":f(u.key),models:a(E)[u.key],"loading-models":a(O)[u.key],testing:a(g)[u.key],onApplyPreset:B=>Ae(u.key,B),onLoadModels:B=>b(u.key),onTest:B=>Ve(u.key)},null,8,["modelValue","onUpdate:modelValue","meta","has-api-key","reuse-options","provider-options","preset-options","disabled","env-managed","provider-resolved","models","loading-models","testing","onApplyPreset","onLoadModels","onTest"])),64)),r(te,{label:"Auto-diagnose",help:"settings.auto-diagnose","env-managed":a(N)},{default:c(()=>[s("div",Bt,[r(ee,{modelValue:a(n),"onUpdate:modelValue":e[0]||(e[0]=u=>W(n)?n.value=u:null),disabled:a(N)||!a(d).diagnosis.enabled},null,8,["modelValue","disabled"]),e[4]||(e[4]=s("span",{class:"text-sm text-gray-500"}," Automatically diagnose new failure clusters when a run finishes — up to 3 clusters per run (research + diagnosis call each), plus one batched call to title new clusters ",-1))])]),_:1},8,["env-managed"])])]),_:1}),r(Te),r(j,{title:"Repository access",help:"project.scm-token"},{subtitle:c(()=>[...e[6]||(e[6]=[I(" Optional — required for private repositories. Per-project tokens override this. ",-1)])]),footer:c(()=>[s("div",Wt,[r(K,{color:"primary",loading:a(h),icon:"i-lucide-save",onClick:Me},{default:c(()=>[...e[7]||(e[7]=[I(" Save token ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[r(me,{label:"SCM token",description:a(i)?.hasScmToken?"Leave empty to keep the stored token, enter a new value to replace it, or save empty to remove it":"Personal access token with read access to repository contents. Supports GitHub (ghp_), GitLab (glpat-), and Bitbucket tokens."},{default:c(()=>[r(ue,{modelValue:a(V),"onUpdate:modelValue":e[1]||(e[1]=u=>W(V)?V.value=u:null),type:"password",placeholder:a(i)?.hasScmToken?"•••••••• (unchanged)":"ghp_..., glpat-..., or Bitbucket token",class:"w-full font-mono"},null,8,["modelValue","placeholder"])]),_:1},8,["description"])]),_:1}),r(j,{title:"Global analysis instructions",help:"settings.ai-instructions"},{footer:c(()=>[s("div",Nt,[r(K,{color:"primary",loading:a(y),icon:"i-lucide-save",onClick:Se},{default:c(()=>[...e[8]||(e[8]=[I(" Save instructions ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[r(Ue,{modelValue:a(k),"onUpdate:modelValue":e[2]||(e[2]=u=>W(k)?k.value=u:null),rows:6,placeholder:"e.g. Always suggest running failing tests with --repeat-each 5 to confirm flakiness. Prefer network-level evidence over ARIA snapshots. Recommend git bisect when a commit range is available.",class:"w-full font-mono text-sm"},null,8,["modelValue"]),e[9]||(e[9]=s("p",{class:"text-xs text-gray-400 mt-2"}," These instructions are appended to the base system prompt. They shape how the AI analyzes failures but cannot override the response schema or confidence requirement. ",-1))]),_:1}),r(j,{title:"Diagnosis context limits",help:"settings.ai-limits"},{subtitle:c(()=>[...e[10]||(e[10]=[I(" Leave a field empty to use its default; env-managed fields are read-only. ",-1)])]),footer:c(()=>[s("div",Xt,[r(K,{color:"neutral",variant:"ghost",size:"sm",onClick:Pe},{default:c(()=>[...e[11]||(e[11]=[I("Reset to defaults",-1)])]),_:1}),r(K,{color:"primary",loading:a(Z),icon:"i-lucide-save",size:"sm",onClick:we},{default:c(()=>[...e[12]||(e[12]=[I(" Save limits ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[s("div",Dt,[(l(!0),m(C,null,F(a(Y),u=>(l(),T(me,{key:u.key,label:u.label,description:u.description,hint:`default ${a(L)?.defaults[u.key]??""}`},{default:c(()=>[r(ue,{modelValue:a(q)[u.key],"onUpdate:modelValue":B=>a(q)[u.key]=B,modelModifiers:{number:!0},type:"number",min:u.min,max:u.max,disabled:a(J).has(u.key),placeholder:`default ${a(L)?.defaults[u.key]??""}`,class:"w-full"},Le({_:2},[a(J).has(u.key)?{name:"trailing",fn:c(()=>[r(Ce,{"env-vars":[u.envVar]},null,8,["env-vars"])]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","min","max","disabled","placeholder"])]),_:2},1032,["label","description","hint"]))),128))])]),_:1}),r(j,{icon:"i-lucide-shield-check",title:"Privacy notice",help:"settings.privacy"},{default:c(()=>[...e[13]||(e[13]=[s("div",{class:"space-y-2 text-sm text-gray-600 dark:text-gray-400"},[s("p",null,"When diagnosing a failure cluster, the following data is sent to the configured LLM provider:"),s("ul",{class:"list-disc list-inside space-y-1 ml-2"},[s("li",null,"Normalized error signature and sample raw error text"),s("li",null,"Test titles and file paths for affected tests"),s("li",null,"Browser info, test steps, console error/warning entries (excerpts)"),s("li",null,"Failed network request URLs and status codes"),s("li",null,"ARIA page snapshot (if collected)"),s("li",null," Commit SHA range since last passing run, plus changed file names and diff patches fetched from GitHub/GitLab/Bitbucket (if a repository token is configured or the repo is public) ")]),s("p",{class:"mt-2"},[I(" API keys are stored encrypted in the application database (admin-only access). For stricter setups, use the "),s("code",{class:"font-mono text-xs"},"PIWI_AI_*"),I(" environment variables instead of the UI. ")])],-1)])]),_:1})])}}});export{ps as default};
1
+ import{_ as Ee,a as Re}from"./CsLojMwR.js";import{d as H,E as le,H as se,o as l,f as T,g as c,i as s,j as r,I as G,l as W,k as a,c as m,p as ne,F as C,y as F,q as ie,m as I,t as w,v as x,G as X,r as R,h as D,K as $e,_ as re,w as oe,b as Oe,ac as Le,L as z}from"./Du2W7Jne.js";import{_ as Be}from"./Bm62iDV5.js";import{_ as pe}from"./Dpd16JVI.js";import{_ as fe}from"./A1pj0VnG.js";import{_ as ve}from"./AbmKWFQQ.js";import{_ as ge}from"./BmUfSNMV.js";import{_ as Fe}from"./BUkim3TM.js";import{h as We}from"./BjaRappk.js";import{_ as ye}from"./C0_yH0N7.js";import{_ as Ne}from"./BzRRzmwm.js";import{u as ae}from"./B8zkOmwo.js";import{_ as De}from"./DsesNydr.js";import{p as Xe,g as qe}from"./Cbh--1MW.js";import"./BrQEE053.js";import"./DSqHUrvO.js";import"./L3kAWB2a.js";import"./UdR3DBPS.js";import"./Nn93e_Mz.js";import"./DmkUdSS4.js";import"./BT3wGCTI.js";import"./-f7BAm1H.js";import"./DuwtTfO8.js";const Ke={class:"space-y-3"},je={key:0,class:"flex items-center justify-center gap-2 py-8 text-gray-400"},ze={key:1,class:"py-8 text-center text-sm text-gray-400"},He={key:2,class:"max-h-96 overflow-y-auto space-y-px"},Ge=["onClick"],Qe={class:"flex-1 min-w-0"},Ye={class:"text-sm font-medium leading-snug truncate"},Ze={key:0,class:"text-gray-500 font-normal"},Je={class:"text-xs text-gray-400 leading-snug mt-0.5"},et={key:3,class:"italic text-gray-500"},tt={key:0,class:"flex items-center gap-1 shrink-0 pt-0.5"},st=["title"],ot=["title"],at={key:0,class:"py-8 text-center text-sm text-gray-400"},lt=H({__name:"ModelPickerModal",props:X({models:{},selected:{},loading:{type:Boolean}},{open:{type:Boolean,required:!0},openModifiers:{}}),emits:X(["select"],["update:open"]),setup(o,{emit:M}){function U(y){return y?y>=1e6?`${(y/1e6).toFixed(1)}M`:y>=1e3?`${Math.round(y/1e3)}K`:String(y):""}const v=o,i=M,A=le(o,"open"),_=R(null),d=R("");se(A,y=>{y&&$e(()=>_.value?.focus())});const n=D(()=>{const y=d.value.toLowerCase();return y?v.models.filter(h=>h.id.toLowerCase().includes(y)||(h.label?.toLowerCase()??"").includes(y)):v.models}),k={image:{icon:"i-lucide-image",label:"Image input"},pdf:{icon:"i-lucide-file-text",label:"PDF input"},code:{icon:"i-lucide-code",label:"Code execution"},thinking:{icon:"i-lucide-brain",label:"Extended thinking"},json:{icon:"i-lucide-braces",label:"Structured output"},text:{icon:"i-lucide-type",label:"Text"},audio:{icon:"i-lucide-music",label:"Audio"}};function V(y){return y.map(h=>{const g=h.indexOf("→");if(g!==-1){const E=h.slice(0,g),O=h.slice(g+1);return{inputs:E.split("+").filter(Boolean),outputs:O.split("+").filter(Boolean)}}return{inputs:[h],outputs:[]}})}function $(y){i("select",y),A.value=!1,d.value=""}return(y,h)=>{const g=G,E=ne,O=Fe;return l(),T(O,{open:A.value,"onUpdate:open":h[1]||(h[1]=f=>A.value=f),title:"Select a model",ui:{content:"max-w-2xl"}},{body:c(()=>[s("div",Ke,[r(g,{ref_key:"searchInput",ref:_,modelValue:a(d),"onUpdate:modelValue":h[0]||(h[0]=f=>W(d)?d.value=f:null),placeholder:"Search models…",icon:"i-lucide-search",size:"sm"},null,8,["modelValue"]),o.models.length===0&&o.loading?(l(),m("div",je,[r(E,{name:"i-lucide-loader-2",class:"size-4 animate-spin"}),h[2]||(h[2]=s("span",{class:"text-sm"},"Loading models…",-1))])):o.models.length===0?(l(),m("div",ze," No models available — check your provider configuration ")):(l(),m("div",He,[(l(!0),m(C,null,F(a(n),f=>(l(),m("button",{key:f.id,class:ie(["w-full text-left px-4 py-3 rounded-lg hover:bg-elevated transition-colors border border-transparent hover:border-default flex items-start gap-4",o.selected===f.id?"bg-primary/10 ring-1 ring-inset ring-primary/30 border-primary/30":""]),onClick:b=>$(f.id)},[s("div",Qe,[s("p",Ye,[I(w(f.id)+" ",1),f.label&&f.label!==f.id?(l(),m("span",Ze," — "+w(f.label),1)):x("",!0)]),s("p",Je,[f.contextLength?(l(),m(C,{key:0},[I(w(U(f.contextLength))+" ctx",1)],64)):x("",!0),f.maxTokens?(l(),m(C,{key:1},[I(" · up to "+w(U(f.maxTokens))+" out",1)],64)):x("",!0),f.pricing?.prompt?(l(),m(C,{key:2},[I(" · $"+w(f.pricing.prompt)+" / $"+w(f.pricing.completion??"?")+" per 1M",1)],64)):x("",!0),!f.contextLength&&!f.maxTokens&&!f.pricing?.prompt?(l(),m("span",et,"No additional info")):x("",!0)])]),f.modalities?.length?(l(),m("div",tt,[(l(!0),m(C,null,F(V(f.modalities),b=>(l(),m(C,{key:b.inputs.join()+"→"+b.outputs.join()},[(l(!0),m(C,null,F(b.inputs,P=>(l(),m("span",{key:"in-"+P,title:k[P]?.label??P,class:"inline-flex items-center justify-center size-6 rounded-md bg-gray-100 dark:bg-gray-800 text-gray-500 hover:text-primary transition-colors"},[r(E,{name:k[P]?.icon??"i-lucide-cpu",class:"size-3.5"},null,8,["name"])],8,st))),128)),b.outputs.length?(l(),T(E,{key:0,name:"i-lucide-arrow-right",class:"size-3 text-gray-400 shrink-0"})):x("",!0),(l(!0),m(C,null,F(b.outputs,P=>(l(),m("span",{key:"out-"+P,title:k[P]?.label??P,class:"inline-flex items-center justify-center size-6 rounded-md bg-gray-100 dark:bg-gray-800 text-gray-500 hover:text-primary transition-colors"},[r(E,{name:k[P]?.icon??"i-lucide-cpu",class:"size-3.5"},null,8,["name"])],8,ot))),128))],64))),128))])):x("",!0)],10,Ge))),128)),a(n).length===0?(l(),m("div",at,' No models match "'+w(a(d))+'" ',1)):x("",!0)]))])]),_:1},8,["open"])}}}),nt=Object.assign(lt,{__name:"ModelPickerModal"}),it={class:"flex gap-2"},rt=H({__name:"ModelFieldInput",props:X({provider:{},providerResolved:{},reuse:{type:Boolean},models:{},loadingModels:{type:Boolean},placeholderAnthropic:{},placeholderOpenai:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:X(["loadModels"],["update:modelValue"]),setup(o,{emit:M}){const U=M,v=le(o,"modelValue"),i=R(!1);return(A,_)=>{const d=G,n=re,k=nt;return l(),m(C,null,[s("div",it,[r(d,{modelValue:v.value,"onUpdate:modelValue":_[0]||(_[0]=V=>v.value=V),placeholder:o.providerResolved==="anthropic"?o.placeholderAnthropic:o.placeholderOpenai,class:"flex-1"},null,8,["modelValue","placeholder"]),o.providerResolved?(l(),T(n,{key:0,size:"sm",variant:"soft",onClick:_[1]||(_[1]=V=>{U("loadModels"),i.value=!0})},{default:c(()=>[..._[4]||(_[4]=[I(" Choose model… ",-1)])]),_:1})):x("",!0)]),r(k,{open:a(i),"onUpdate:open":_[2]||(_[2]=V=>W(i)?i.value=V:null),models:o.models,selected:v.value,loading:o.loadingModels,onSelect:_[3]||(_[3]=V=>v.value=V)},null,8,["open","models","selected","loading"])],64)}}}),dt=Object.assign(rt,{__name:"ModelFieldInput"}),ct={class:"flex items-start justify-between gap-3"},ut={class:"flex items-start gap-2"},mt={class:"font-medium inline-flex items-center gap-1"},pt={class:"text-sm text-gray-500"},ft={class:"inline-flex items-center gap-1"},vt={class:"inline-flex items-center gap-1"},gt={class:"inline-flex items-center gap-1"},yt={key:3,class:"flex justify-end"},ht=H({__name:"AiRoleConfigForm",props:X({meta:{},hasApiKey:{type:Boolean},reuseOptions:{},providerOptions:{},presetOptions:{},disabled:{type:Boolean},envManaged:{type:Boolean},models:{},loadingModels:{type:Boolean},providerResolved:{},testing:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:X(["applyPreset","loadModels","test"],["update:modelValue"]),setup(o,{emit:M}){const U=o,v=M,i=le(o,"modelValue"),A=D({get:()=>i.value.reuse??"own",set:d=>i.value.reuse=d==="own"?null:d}),_=D(()=>We(U.meta.help));return(d,n)=>{const k=ne,V=Be,$=pe,y=fe,h=ve,g=ge,E=G,O=dt,f=re;return l(),m("div",{class:ie(["rounded-lg border border-default p-4 space-y-4",o.meta.optional&&!i.value.enabled?"opacity-80":""])},[s("div",ct,[s("div",ut,[r(k,{name:o.meta.icon,class:"size-5 mt-0.5 text-primary"},null,8,["name"]),s("div",null,[s("p",mt,[I(w(o.meta.title)+" ",1),r(V,{topic:o.meta.help},null,8,["topic"])]),s("p",pt,w(o.meta.blurb),1)])]),o.meta.optional?(l(),T($,{key:0,modelValue:i.value.enabled,"onUpdate:modelValue":n[0]||(n[0]=b=>i.value.enabled=b),disabled:o.disabled&&!o.envManaged,"aria-label":o.meta.enableLabel},null,8,["modelValue","disabled","aria-label"])):x("",!0)]),!o.meta.optional||i.value.enabled?(l(),m(C,{key:0},[o.meta.reuseTargets.length?(l(),T(h,{key:0,label:"Provider source"},{default:c(()=>[r(y,{modelValue:a(A),"onUpdate:modelValue":n[1]||(n[1]=b=>W(A)?A.value=b:null),items:o.reuseOptions,disabled:o.disabled&&!o.envManaged,class:"w-full"},null,8,["modelValue","items","disabled"])]),_:1})):x("",!0),i.value.reuse?x("",!0):(l(),m(C,{key:1},[r(h,{label:"Provider"},{label:c(()=>[s("span",ft,[n[9]||(n[9]=I(" Provider ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(y,{modelValue:i.value.provider,"onUpdate:modelValue":n[2]||(n[2]=b=>i.value.provider=b),items:o.providerOptions,disabled:o.disabled,placeholder:"Choose a provider…",class:"w-full"},null,8,["modelValue","items","disabled"])]),_:1}),i.value.provider==="openai"?(l(),T(h,{key:0,label:"Preset",description:"Pick a known provider to auto-fill the URL and model, then adjust as needed"},{default:c(()=>[r(y,{items:o.presetOptions,placeholder:"Choose a preset…",disabled:o.disabled,class:"w-full","onUpdate:modelValue":n[3]||(n[3]=b=>v("applyPreset",b))},null,8,["items","disabled"])]),_:1})):x("",!0),i.value.provider?(l(),T(h,{key:1,label:"API key",description:o.hasApiKey?"Leave empty to keep the stored key, clear and save to remove it":"Required for Anthropic; optional for local OpenAI-compatible servers"},{label:c(()=>[s("span",vt,[n[10]||(n[10]=I(" API key ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(E,{modelValue:i.value.apiKey,"onUpdate:modelValue":n[4]||(n[4]=b=>i.value.apiKey=b),type:"password",placeholder:o.hasApiKey?"•••••••• (unchanged)":"sk-…",disabled:o.disabled,class:"w-full font-mono"},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["description"])):x("",!0),i.value.provider==="openai"?(l(),T(h,{key:2,label:"Base URL",description:"Required, e.g. http://localhost:11434/v1"},{label:c(()=>[s("span",gt,[n[11]||(n[11]=I(" Base URL ",-1)),o.disabled?(l(),T(g,{key:0,"env-vars":a(_)},null,8,["env-vars"])):x("",!0)])]),default:c(()=>[r(E,{modelValue:i.value.baseUrl,"onUpdate:modelValue":n[5]||(n[5]=b=>i.value.baseUrl=b),placeholder:"http://localhost:11434/v1",disabled:o.disabled,class:"w-full"},null,8,["modelValue","disabled"])]),_:1})):x("",!0)],64)),i.value.reuse||i.value.provider?(l(),T(h,{key:2,label:"Model",description:i.value.reuse?"Leave empty to use the reused role's model":void 0},{default:c(()=>[r(O,{modelValue:i.value.model,"onUpdate:modelValue":n[6]||(n[6]=b=>i.value.model=b),provider:i.value.provider,"provider-resolved":o.providerResolved,reuse:!!i.value.reuse,models:o.models,"loading-models":o.loadingModels,"placeholder-anthropic":o.meta.modelPlaceholderAnthropic,"placeholder-openai":o.meta.modelPlaceholderOpenai,onLoadModels:n[7]||(n[7]=b=>v("loadModels"))},null,8,["modelValue","provider","provider-resolved","reuse","models","loading-models","placeholder-anthropic","placeholder-openai"])]),_:1},8,["description"])):x("",!0),o.providerResolved?(l(),m("div",yt,[r(f,{size:"xs",color:"neutral",variant:"soft",icon:"i-lucide-plug",loading:o.testing,onClick:n[8]||(n[8]=b=>v("test"))},{default:c(()=>[...n[12]||(n[12]=[I(" Test connection ",-1)])]),_:1},8,["loading"])])):x("",!0)],64)):x("",!0)],2)}}}),bt=Object.assign(ht,{__name:"AiRoleConfigForm"}),_t={key:0,class:"space-y-3"},xt={class:"text-sm text-gray-500"},kt={key:0,class:"text-sm text-gray-500"},At={key:1,class:"overflow-x-auto"},It={class:"w-full text-sm"},Mt={class:"px-2 py-2"},St={class:"font-mono text-xs"},Vt={class:"text-xs text-gray-400"},wt={class:"text-right px-2 py-2"},Pt=["title"],Tt=["title"],Ut={class:"text-right px-2 py-2"},Ct={key:1,class:"flex items-center gap-2 py-4 text-muted"},Et=H({__name:"AiUsagePanel",async setup(o){let M,U;const v=R(30),i=[{label:"Last 7 days",value:7},{label:"Last 30 days",value:30},{label:"Last 90 days",value:90}],{data:A,pending:_}=([M,U]=oe(()=>ae("/api/settings/ai/usage",{query:{days:v}},"$1ij5UlwVIK")),M=await M,U(),M);function d(n){return n>=1e6?`${(n/1e6).toFixed(1)}M`:n>=1e3?`${(n/1e3).toFixed(1)}k`:String(n)}return(n,k)=>{const V=fe,$=Ne,y=ne,h=ye;return l(),T(h,{icon:"i-lucide-activity",title:"AI usage"},{actions:c(()=>[r(V,{modelValue:a(v),"onUpdate:modelValue":k[0]||(k[0]=g=>W(v)?v.value=g:null),items:i,size:"sm",class:"w-36"},null,8,["modelValue"])]),default:c(()=>[a(A)?(l(),m("div",_t,[s("p",xt,w(d(a(A).totals.diagnoses))+" diagnoses · "+w(d(a(A).totals.inputTokens))+" input tokens · "+w(d(a(A).totals.outputTokens))+" output tokens ",1),a(A).byModel.length===0?(l(),m("p",kt,"No AI calls recorded in this period.")):(l(),m("div",At,[s("table",It,[k[1]||(k[1]=s("thead",null,[s("tr",{class:"text-xs text-gray-500 uppercase tracking-wider border-b border-default"},[s("th",{class:"text-left px-2 py-2 font-medium"},"Model"),s("th",{class:"text-right px-2 py-2 font-medium"},"Diagnoses"),s("th",{class:"text-right px-2 py-2 font-medium"},"Failed"),s("th",{class:"text-right px-2 py-2 font-medium"},"Input tokens"),s("th",{class:"text-right px-2 py-2 font-medium"},"Output tokens"),s("th",{class:"text-right px-2 py-2 font-medium"},"Avg duration")])],-1)),s("tbody",null,[(l(!0),m(C,null,F(a(A).byModel,g=>(l(),m("tr",{key:`${g.provider??"unknown"}/${g.model}`,class:"border-b last:border-b-0 border-default"},[s("td",Mt,[s("span",St,w(g.model),1),s("span",Vt," · "+w(g.provider??"unknown"),1)]),s("td",wt,w(g.diagnoses),1),s("td",{class:ie(["text-right px-2 py-2",g.failed>0?"text-red-600 dark:text-red-400":""])},w(g.failed),3),s("td",{class:"text-right px-2 py-2",title:g.inputTokens.toLocaleString()},w(d(g.inputTokens)),9,Pt),s("td",{class:"text-right px-2 py-2",title:g.outputTokens.toLocaleString()},w(d(g.outputTokens)),9,Tt),s("td",Ut,[r($,{ms:g.avgDurationMs},null,8,["ms"])])]))),128))])])]))])):a(_)?(l(),m("div",Ct,[r(y,{name:"i-lucide-loader-circle",class:"size-4 animate-spin"}),k[2]||(k[2]=s("span",{class:"text-sm"},"Loading usage…",-1))])):x("",!0)]),_:1})}}}),Rt=Object.assign(Et,{__name:"AiUsagePanel"}),$t=[{key:"sampleErrorChars",label:"Error text characters",envVar:"PIWI_AI_MAX_SAMPLE_ERROR_CHARS",description:"Max characters of raw error text (per error block).",min:200,max:5e4},{key:"scmPatchBudget",label:"SCM patch budget",envVar:"PIWI_AI_MAX_SCM_PATCH_BUDGET",description:"Total characters of diff patches across changed files.",min:0,max:5e4},{key:"affectedTests",label:"Affected tests",envVar:"PIWI_AI_MAX_AFFECTED_TESTS",description:"Max affected tests listed.",min:1,max:200},{key:"steps",label:"Test steps",envVar:"PIWI_AI_MAX_STEPS",description:"Max recent test steps included.",min:1,max:200},{key:"consoleEntries",label:"Console entries",envVar:"PIWI_AI_MAX_CONSOLE_ENTRIES",description:"Max console error/warning entries included.",min:0,max:200},{key:"consoleEntryChars",label:"Console entry characters",envVar:"PIWI_AI_MAX_CONSOLE_ENTRY_CHARS",description:"Max characters per console entry.",min:50,max:5e3},{key:"networkRequests",label:"Network requests",envVar:"PIWI_AI_MAX_NETWORK_REQUESTS",description:"Max failed network requests included.",min:0,max:200},{key:"ariaSnapshotChars",label:"ARIA snapshot characters",envVar:"PIWI_AI_MAX_ARIA_SNAPSHOT_CHARS",description:"Max characters of the page ARIA snapshot.",min:0,max:5e4},{key:"testSourceChars",label:"Test source characters",envVar:"PIWI_AI_MAX_TEST_SOURCE_CHARS",description:"Max characters of the test source snippet.",min:0,max:5e4},{key:"maxSourceFiles",label:"Full source files",envVar:"PIWI_AI_MAX_SOURCE_FILES",description:"Max full source files fetched from SCM to ground patches (0 disables).",min:0,max:20},{key:"sourceFileChars",label:"Source file characters",envVar:"PIWI_AI_MAX_SOURCE_FILE_CHARS",description:"Max characters per fetched full source file.",min:0,max:5e4},{key:"serverLogEntries",label:"Server log entries",envVar:"PIWI_AI_MAX_SERVER_LOG_ENTRIES",description:"Max backend server log entries (from X-Piwi-Logs header) included.",min:0,max:200},{key:"serverLogEntryChars",label:"Server log entry characters",envVar:"PIWI_AI_MAX_SERVER_LOG_ENTRY_CHARS",description:"Max characters per backend server log entry.",min:50,max:5e3},{key:"serverTraceSpans",label:"Server trace spans",envVar:"PIWI_AI_MAX_SERVER_TRACE_SPANS",description:"Max backend server spans (from X-Piwi-Trace header) included (0 disables).",min:0,max:500},{key:"maxImages",label:"Max screenshots",envVar:"PIWI_AI_MAX_IMAGES",description:"Max screenshots auto-included in the diagnosis context.",min:0,max:20},{key:"maxPassedPeers",label:"Max passed peers",envVar:"PIWI_AI_MAX_PASSED_PEERS",description:"Max peer tests in the same file listed when they passed.",min:0,max:100},{key:"maxConsoleWindow",label:"Console window entries",envVar:"PIWI_AI_MAX_CONSOLE_WINDOW",description:"Max console entries of any type in the window before failure.",min:0,max:200},{key:"slowRequestMs",label:"Slow request threshold (ms)",envVar:"PIWI_AI_SLOW_REQUEST_MS",description:"Network request duration threshold for flagging as slow.",min:100,max:3e4},{key:"maxTraceActions",label:"Trace actions",envVar:"PIWI_AI_MAX_TRACE_ACTIONS",description:"Max actions extracted from trace ZIP for failing-action context (0 disables).",min:0,max:50},{key:"traceDomChars",label:"Trace DOM excerpt characters",envVar:"PIWI_AI_TRACE_DOM_CHARS",description:"Max characters for the trace-derived DOM/ARIA excerpt in failing-action context.",min:0,max:2e4},{key:"traceStackFrames",label:"Trace stack frames",envVar:"PIWI_AI_MAX_TRACE_STACK_FRAMES",description:"Max call-stack frames (with source windows) from the trace (0 disables).",min:0,max:50},{key:"traceNetworkRequests",label:"Trace network requests",envVar:"PIWI_AI_MAX_TRACE_NETWORK_REQUESTS",description:"Max requests from the trace network stream (0 disables).",min:0,max:200},{key:"domSnapshotChars",label:"DOM snapshot characters",envVar:"PIWI_AI_MAX_DOM_SNAPSHOT_CHARS",description:"Max characters of the failure-time DOM snapshot rendered from the trace (0 disables).",min:0,max:5e4},{key:"imageMaxEdge",label:"Screenshot max edge (px)",envVar:"PIWI_AI_IMAGE_MAX_EDGE",description:"Screenshots are downscaled to at most this many pixels on the long edge before being sent.",min:512,max:8192}],Ot={class:"space-y-6"},Lt={class:"space-y-5"},Bt={class:"flex items-center gap-3"},Ft={class:"flex items-center gap-2 justify-end"},Wt={class:"flex justify-end"},Nt={class:"flex justify-end"},Dt={class:"grid grid-cols-1 sm:grid-cols-2 gap-x-4 gap-y-3"},Xt={class:"flex justify-end gap-2"},ps=H({__name:"ai",async setup(o){let M,U;const v=Oe(),{data:i,refresh:A}=([M,U]=oe(()=>ae("/api/settings/ai","$nV9xx-QVRl")),M=await M,U(),M);function _(){return{enabled:!1,reuse:null,provider:"",model:"",baseUrl:"",apiKey:""}}const d=z({diagnosis:_(),research:_(),embedding:_()}),n=R(!1),k=R(""),V=R(""),$=R(!1),y=R(!1),h=R(!1),g=z({diagnosis:!1,research:!1,embedding:!1}),E=z({diagnosis:[],research:[],embedding:[]}),O=z({diagnosis:!1,research:!1,embedding:!1});function f(t){const e=d[t];return e.reuse?d[e.reuse]?.provider||"":e.provider}async function b(t){const e=d[t],p=f(t),S=e.reuse?d[e.reuse]:e,ee=S.apiKey||void 0;O[t]=!0;try{const te=await $fetch("/api/settings/ai/models",{method:"POST",body:{role:t,provider:p,baseUrl:S.baseUrl||void 0,apiKey:ee}});E[t]=te.models}catch{E[t]=[]}finally{O[t]=!1}}const P=[{key:"diagnosis",title:"Diagnosis model",icon:"i-lucide-stethoscope",help:"settings.ai-provider",optional:!1,enableLabel:"",blurb:"The main model that writes the final diagnosis. Required to enable AI features.",reuseTargets:[],modelPlaceholderAnthropic:"claude-opus-4-8",modelPlaceholderOpenai:"e.g. gpt-4o, llama3.1"},{key:"research",title:"Research model",icon:"i-lucide-search",help:"settings.ai-research",optional:!0,enableLabel:"Two-stage diagnosis",blurb:"A cheaper/faster model that pre-analyzes the failure before the diagnosis model writes the final answer. Also used for cluster naming and merge adjudication.",reuseTargets:["diagnosis"],modelPlaceholderAnthropic:"e.g. claude-haiku-4-5",modelPlaceholderOpenai:"e.g. llama-3.1-8b-instant"},{key:"embedding",title:"Embedding model",icon:"i-lucide-vector-square",help:"settings.embedding-model",optional:!0,enableLabel:"Semantic clustering",blurb:"Embeds failures so semantically-similar errors group together (used by failure clustering).",reuseTargets:["diagnosis","research"],modelPlaceholderAnthropic:"— Anthropic has no embeddings API —",modelPlaceholderOpenai:"e.g. text-embedding-3-small"}],de=[{label:"Anthropic API",value:"anthropic"},{label:"OpenAI-compatible",value:"openai"}],he=de.filter(t=>t.value!=="anthropic"),be=D(()=>{const t={};for(const e of P)t[e.key]=[{label:"Configure its own provider",value:"own"},...e.reuseTargets.filter(p=>d[p].enabled||p==="diagnosis").filter(p=>e.key!=="embedding"||d[p].provider==="openai").map(p=>({label:`Reuse ${P.find(S=>S.key===p).title.toLowerCase()}`,value:p}))];return t}),N=D(()=>!!i.value?.envManaged),_e=Xe(qe("ai"));se(i,t=>{if(t){for(const e of P){const p=t.roles[e.key],S=d[e.key];S.enabled=!!p,S.reuse=p?.reuse??null,S.provider=p?.provider??"",S.model=p?.model??"",S.baseUrl=p?.baseUrl??"",S.apiKey=""}n.value=t.autoDiagnose,k.value=t.customInstructions||""}},{immediate:!0});function xe(t){return!!i.value?.roles[t]?.hasApiKey}const ce=[{label:"ollama (local)",baseUrl:"http://localhost:11434/v1",model:"llama3.1"},{label:"LM Studio (local)",baseUrl:"http://localhost:1234/v1",model:""},{label:"OpenRouter",baseUrl:"https://openrouter.ai/api/v1",model:"meta-llama/llama-3.1-8b-instruct"},{label:"Groq",baseUrl:"https://api.groq.com/openai/v1",model:"llama-3.1-8b-instant"},{label:"OpenAI",baseUrl:"https://api.openai.com/v1",model:"gpt-4o"},{label:"Mistral AI",baseUrl:"https://api.mistral.ai/v1",model:"mistral-small-latest"},{label:"Custom",baseUrl:"",model:""}],ke=ce.map(t=>({label:t.label,value:t.label}));function Ae(t,e){const p=ce.find(S=>S.label===e);!p||p.label==="Custom"||(d[t].baseUrl=p.baseUrl,d[t].model=p.model)}function Q(t){const e=d[t];if(!e.enabled)return null;if(e.reuse)return{reuse:e.reuse,model:e.model||void 0};const p={provider:e.provider,model:e.model||void 0,baseUrl:e.baseUrl||void 0};return e.apiKey!==""&&(p.apiKey=e.apiKey),p}async function Ie(){$.value=!0;try{!N&&(!d.diagnosis.enabled||!d.diagnosis.provider)?await $fetch("/api/settings/ai",{method:"PUT",body:{roles:null,autoDiagnose:n.value}}):await $fetch("/api/settings/ai",{method:"PUT",body:{roles:{diagnosis:Q("diagnosis"),research:Q("research"),embedding:Q("embedding")},autoDiagnose:n.value}}),await A();for(const t of P)d[t.key].apiKey="";v.add({title:"Settings saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{$.value=!1}}async function Me(){h.value=!0;try{await $fetch("/api/settings/ai",{method:"PUT",body:{scmToken:V.value||null}}),await A(),V.value="",v.add({title:"SCM token saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{h.value=!1}}async function Se(){y.value=!0;try{await $fetch("/api/settings/ai",{method:"PUT",body:{customInstructions:k.value||null}}),await A(),v.add({title:"Instructions saved",color:"success"})}catch(t){v.add({title:"Save failed",description:String(t?.message??t),color:"error"})}finally{y.value=!1}}async function Ve(t){g[t]=!0;try{const e=d[t],p=e.reuse?d[e.reuse]:e,S=await $fetch("/api/settings/ai/test",{method:"POST",body:{role:t,provider:p.provider||void 0,apiKey:p.apiKey||void 0,model:e.model||(e.reuse?p.model:"")||void 0,baseUrl:p.baseUrl||void 0}});S.success?v.add({title:"Connection successful",description:`Model: ${S.model}`,color:"success"}):v.add({title:"Connection failed",description:S.error||"Unknown error",color:"error"})}catch(e){v.add({title:"Connection failed",description:String(e?.message??e),color:"error"})}finally{g[t]=!1}}const{data:L}=([M,U]=oe(()=>ae("/api/settings/ai/limits","$cSpsteApgW")),M=await M,U(),M),Y=$t,q=z({}),Z=R(!1),J=D(()=>new Set(L.value?.envManaged??[]));se(L,t=>{if(t)for(const e of Y)q[e.key]=t.limits[e.key]},{immediate:!0});async function we(){Z.value=!0;try{L.value=await $fetch("/api/settings/ai/limits",{method:"PUT",body:{limits:q}}),v.add({title:"Context limits saved",color:"success"})}catch(t){v.add({title:"Failed to save context limits",description:String(t?.message??t),color:"error"})}finally{Z.value=!1}}function Pe(){if(L.value)for(const t of Y)J.value.has(t.key)||(q[t.key]=L.value.defaults[t.key])}return(t,e)=>{const p=Ee,S=bt,ee=pe,te=Re,K=re,j=ye,Te=Rt,ue=G,me=ve,Ue=De,Ce=ge;return l(),m("div",Ot,[a(N)?(l(),T(p,{key:0,"env-vars":a(_e)},null,8,["env-vars"])):x("",!0),r(j,{icon:"i-lucide-sparkles",title:"Model providers",help:"settings.ai-provider"},{subtitle:c(()=>[...e[3]||(e[3]=[I(" Configure a complete provider for each model role. Optional roles can reuse another role's provider so you don't re-enter credentials. ",-1)])]),footer:c(()=>[s("div",Ft,[r(K,{color:"primary",loading:a($),icon:"i-lucide-save",onClick:Ie},{default:c(()=>[...e[5]||(e[5]=[I(" Save ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[s("div",Lt,[(l(),m(C,null,F(P,u=>r(S,{key:u.key,modelValue:a(d)[u.key],"onUpdate:modelValue":B=>a(d)[u.key]=B,meta:u,"has-api-key":xe(u.key),"reuse-options":a(be)[u.key],"provider-options":u.key==="embedding"?a(he):de,"preset-options":a(ke),disabled:a(N),"env-managed":a(N),"provider-resolved":f(u.key),models:a(E)[u.key],"loading-models":a(O)[u.key],testing:a(g)[u.key],onApplyPreset:B=>Ae(u.key,B),onLoadModels:B=>b(u.key),onTest:B=>Ve(u.key)},null,8,["modelValue","onUpdate:modelValue","meta","has-api-key","reuse-options","provider-options","preset-options","disabled","env-managed","provider-resolved","models","loading-models","testing","onApplyPreset","onLoadModels","onTest"])),64)),r(te,{label:"Auto-diagnose",help:"settings.auto-diagnose","env-managed":a(N)},{default:c(()=>[s("div",Bt,[r(ee,{modelValue:a(n),"onUpdate:modelValue":e[0]||(e[0]=u=>W(n)?n.value=u:null),disabled:a(N)||!a(d).diagnosis.enabled},null,8,["modelValue","disabled"]),e[4]||(e[4]=s("span",{class:"text-sm text-gray-500"}," Automatically diagnose new failure clusters when a run finishes — up to 3 clusters per run (research + diagnosis call each), plus one batched call to title new clusters ",-1))])]),_:1},8,["env-managed"])])]),_:1}),r(Te),r(j,{title:"Repository access",help:"project.scm-token"},{subtitle:c(()=>[...e[6]||(e[6]=[I(" Optional — required for private repositories. Per-project tokens override this. ",-1)])]),footer:c(()=>[s("div",Wt,[r(K,{color:"primary",loading:a(h),icon:"i-lucide-save",onClick:Me},{default:c(()=>[...e[7]||(e[7]=[I(" Save token ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[r(me,{label:"SCM token",description:a(i)?.hasScmToken?"Leave empty to keep the stored token, enter a new value to replace it, or save empty to remove it":"Personal access token with read access to repository contents. Supports GitHub (ghp_), GitLab (glpat-), and Bitbucket tokens."},{default:c(()=>[r(ue,{modelValue:a(V),"onUpdate:modelValue":e[1]||(e[1]=u=>W(V)?V.value=u:null),type:"password",placeholder:a(i)?.hasScmToken?"•••••••• (unchanged)":"ghp_..., glpat-..., or Bitbucket token",class:"w-full font-mono"},null,8,["modelValue","placeholder"])]),_:1},8,["description"])]),_:1}),r(j,{title:"Global analysis instructions",help:"settings.ai-instructions"},{footer:c(()=>[s("div",Nt,[r(K,{color:"primary",loading:a(y),icon:"i-lucide-save",onClick:Se},{default:c(()=>[...e[8]||(e[8]=[I(" Save instructions ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[r(Ue,{modelValue:a(k),"onUpdate:modelValue":e[2]||(e[2]=u=>W(k)?k.value=u:null),rows:6,placeholder:"e.g. Always suggest running failing tests with --repeat-each 5 to confirm flakiness. Prefer network-level evidence over ARIA snapshots. Recommend git bisect when a commit range is available.",class:"w-full font-mono text-sm"},null,8,["modelValue"]),e[9]||(e[9]=s("p",{class:"text-xs text-gray-400 mt-2"}," These instructions are appended to the base system prompt. They shape how the AI analyzes failures but cannot override the response schema or confidence requirement. ",-1))]),_:1}),r(j,{title:"Diagnosis context limits",help:"settings.ai-limits"},{subtitle:c(()=>[...e[10]||(e[10]=[I(" Leave a field empty to use its default; env-managed fields are read-only. ",-1)])]),footer:c(()=>[s("div",Xt,[r(K,{color:"neutral",variant:"ghost",size:"sm",onClick:Pe},{default:c(()=>[...e[11]||(e[11]=[I("Reset to defaults",-1)])]),_:1}),r(K,{color:"primary",loading:a(Z),icon:"i-lucide-save",size:"sm",onClick:we},{default:c(()=>[...e[12]||(e[12]=[I(" Save limits ",-1)])]),_:1},8,["loading"])])]),default:c(()=>[s("div",Dt,[(l(!0),m(C,null,F(a(Y),u=>(l(),T(me,{key:u.key,label:u.label,description:u.description,hint:`default ${a(L)?.defaults[u.key]??""}`},{default:c(()=>[r(ue,{modelValue:a(q)[u.key],"onUpdate:modelValue":B=>a(q)[u.key]=B,modelModifiers:{number:!0},type:"number",min:u.min,max:u.max,disabled:a(J).has(u.key),placeholder:`default ${a(L)?.defaults[u.key]??""}`,class:"w-full"},Le({_:2},[a(J).has(u.key)?{name:"trailing",fn:c(()=>[r(Ce,{"env-vars":[u.envVar]},null,8,["env-vars"])]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","min","max","disabled","placeholder"])]),_:2},1032,["label","description","hint"]))),128))])]),_:1}),r(j,{icon:"i-lucide-shield-check",title:"Privacy notice",help:"settings.privacy"},{default:c(()=>[...e[13]||(e[13]=[s("div",{class:"space-y-2 text-sm text-gray-600 dark:text-gray-400"},[s("p",null,"When diagnosing a failure cluster, the following data is sent to the configured LLM provider:"),s("ul",{class:"list-disc list-inside space-y-1 ml-2"},[s("li",null,"Normalized error signature and sample raw error text"),s("li",null,"Test titles and file paths for affected tests"),s("li",null,"Browser info, test steps, console error/warning entries (excerpts)"),s("li",null,"Failed network request URLs and status codes"),s("li",null,"ARIA page snapshot (if collected)"),s("li",null," Commit SHA range since last passing run, plus changed file names and diff patches fetched from GitHub/GitLab/Bitbucket (if a repository token is configured or the repo is public) ")]),s("p",{class:"mt-2"},[I(" API keys are stored encrypted in the application database (admin-only access). For stricter setups, use the "),s("code",{class:"font-mono text-xs"},"PIWI_AI_*"),I(" environment variables instead of the UI. ")])],-1)])]),_:1})])}}});export{ps as default};
@@ -1 +1 @@
1
- import{d as S,Y as L,az as N,U as C,Z as O,aA as D,o as c,f as y,g,V as h,k as a,X as I,r as q,aB as j,$ as E,B as U,af as W,j as w,Q as G,v as k,aC as Q,h as _,H as X,aD as Y,aE as Z,W as V,aF as J,aG as aa,S as ta,C as ea,a2 as ia,a3 as sa,a5 as oa,a6 as la,a7 as ra,q as x,c as B,F as $,y as M,aH as z,p as na,aI as da,m as R,t as K,s as ua,a8 as ca}from"./NQikbhmK.js";import{R as va}from"./IvQlbZk6.js";const[T,fa]=E("TabsRoot");var ga=S({__name:"TabsRoot",props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:"horizontal"},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:"automatic"},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue"],setup(d,{emit:r}){const u=d,i=r,{orientation:v,unmountOnHide:n,dir:t}=L(u),o=N(t);C();const s=O(u,"modelValue",i,{defaultValue:u.defaultValue,passive:u.modelValue===void 0}),l=q(),p=j(new Set);return fa({modelValue:s,changeModelValue:b=>{s.value=b},orientation:v,dir:o,unmountOnHide:n,activationMode:u.activationMode,baseId:D(void 0,"reka-tabs"),tabsList:l,contentIds:p,registerContent:b=>{p.value=new Set([...p.value,b])},unregisterContent:b=>{const f=new Set(p.value);f.delete(b),p.value=f}}),(b,f)=>(c(),y(a(I),{dir:a(o),"data-orientation":a(v),"as-child":b.asChild,as:b.as},{default:g(()=>[h(b.$slots,"default",{modelValue:a(s)})]),_:3},8,["dir","data-orientation","as-child","as"]))}}),pa=ga;function F(d,r){return`${d}-trigger-${r}`}function H(d,r){return`${d}-content-${r}`}var ba=S({__name:"TabsContent",props:{value:{type:[String,Number],required:!0},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const r=d,{forwardRef:u}=C(),i=T(),v=_(()=>F(i.baseId,r.value)),n=_(()=>H(i.baseId,r.value)),t=_(()=>r.value===i.modelValue.value),o=q(t.value);return U(()=>{i.registerContent(r.value),requestAnimationFrame(()=>{o.value=!1})}),W(()=>{i.unregisterContent(r.value)}),(s,l)=>(c(),y(a(Q),{present:s.forceMount||t.value,"force-mount":""},{default:g(({present:p})=>[w(a(I),{id:n.value,ref:a(u),"as-child":s.asChild,as:s.as,role:"tabpanel","data-state":t.value?"active":"inactive","data-orientation":a(i).orientation.value,"aria-labelledby":v.value,hidden:!p,tabindex:"0",style:G({animationDuration:o.value?"0s":void 0})},{default:g(()=>[!a(i).unmountOnHide.value||p?h(s.$slots,"default",{key:0}):k("v-if",!0)]),_:2},1032,["id","as-child","as","data-state","data-orientation","aria-labelledby","hidden","style"])]),_:3},8,["present"]))}}),ya=ba,ha=S({__name:"TabsIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d,{expose:r}){const u=d,i=T();r({updateIndicatorStyle:o}),C();const v=J(),n=q({size:null,thickness:null,position:null}),t=q([]);X(()=>[i.modelValue.value,i?.dir.value],()=>{o()},{immediate:!0,flush:"post"}),Y(()=>{t.value=Array.from(i.tabsList.value?.querySelectorAll('[role="tab"]')||[])}),Z(_(()=>[i.tabsList.value,...t.value]),o);function o(){const s=i.tabsList.value?.querySelector('[role="tab"][data-state="active"]');s&&(i.orientation.value==="horizontal"?n.value={size:s.offsetWidth,thickness:s.offsetHeight,position:s.offsetLeft}:n.value={size:s.offsetHeight,thickness:s.offsetWidth,position:s.offsetTop})}return(s,l)=>a(v)&&typeof n.value.size=="number"?(c(),y(a(I),V({key:0},u,{style:{"--reka-tabs-indicator-size":`${n.value.size}px`,"--reka-tabs-indicator-thickness":`${n.value.thickness}px`,"--reka-tabs-indicator-position":`${n.value.position}px`}}),{default:g(()=>[h(s.$slots,"default")]),_:3},16,["style"])):k("v-if",!0)}}),ma=ha,_a=S({__name:"TabsList",props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const r=d,{loop:u}=L(r),{forwardRef:i,currentElement:v}=C(),n=T();return n.tabsList=v,(t,o)=>(c(),y(a(aa),{"as-child":"",orientation:a(n).orientation.value,dir:a(n).dir.value,loop:a(u)},{default:g(()=>[w(a(I),{ref:a(i),role:"tablist","as-child":t.asChild,as:t.as,"aria-orientation":a(n).orientation.value},{default:g(()=>[h(t.$slots,"default")]),_:3},8,["as-child","as","aria-orientation"])]),_:3},8,["orientation","dir","loop"]))}}),xa=_a,za=S({__name:"TabsTrigger",props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(d){const r=d,{forwardRef:u}=C(),i=T(),v=_(()=>F(i.baseId,r.value)),n=_(()=>i.contentIds.value.has(r.value)?H(i.baseId,r.value):void 0),t=_(()=>r.value===i.modelValue.value);return(o,s)=>(c(),y(a(va),{"as-child":"",focusable:!o.disabled,active:t.value},{default:g(()=>[w(a(I),{id:v.value,ref:a(u),role:"tab",type:o.as==="button"?"button":void 0,as:o.as,"as-child":o.asChild,"aria-selected":t.value?"true":"false","aria-controls":n.value,"data-state":t.value?"active":"inactive",disabled:o.disabled,"data-disabled":o.disabled?"":void 0,"data-orientation":a(i).orientation.value,onMousedown:s[0]||(s[0]=ea(l=>{!o.disabled&&l.ctrlKey===!1?a(i).changeModelValue(o.value):l.preventDefault()},["left"])),onKeydown:s[1]||(s[1]=ta(l=>a(i).changeModelValue(o.value),["enter","space"])),onFocus:s[2]||(s[2]=()=>{const l=a(i).activationMode!=="manual";!t.value&&!o.disabled&&l&&a(i).changeModelValue(o.value)})},{default:g(()=>[h(o.$slots,"default")]),_:3},8,["id","type","as","as-child","aria-selected","aria-controls","data-state","disabled","data-disabled","data-orientation"])]),_:3},8,["focusable","active"]))}}),ka=za;const qa={slots:{root:"flex items-center gap-2",list:"relative flex p-1 group",indicator:"absolute transition-[translate,width] duration-200",trigger:["group relative inline-flex items-center min-w-0 data-[state=inactive]:text-muted hover:data-[state=inactive]:not-disabled:text-default font-medium rounded-md disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",label:"truncate",trailingBadge:"shrink-0",trailingBadgeSize:"sm",content:"w-full rounded-md focus-visible:outline-3"},variants:{color:{primary:{content:"outline-primary/25"},secondary:{content:"outline-secondary/25"},success:{content:"outline-success/25"},info:{content:"outline-info/25"},warning:{content:"outline-warning/25"},error:{content:"outline-error/25"},neutral:{content:"outline-inverted/25"}},variant:{pill:{list:"bg-elevated rounded-lg",trigger:["grow","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:content-[''] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:absolute in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:inset-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:rounded-md in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:shadow-xs in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:-z-10 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:isolate"],indicator:"rounded-md shadow-xs"},link:{list:"border-default",indicator:"rounded-full",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:content-[''] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:absolute in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:rounded-full"}},orientation:{horizontal:{root:"flex-col",list:"w-full",indicator:"left-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position)",trigger:"justify-center"},vertical:{list:"flex-col",indicator:"top-0 h-(--reka-tabs-indicator-size) translate-y-(--reka-tabs-indicator-position)"}},size:{xs:{trigger:"px-2 py-1 text-xs gap-1",leadingIcon:"size-4",leadingAvatarSize:"3xs"},sm:{trigger:"px-2.5 py-1.5 text-xs gap-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs"},md:{trigger:"px-3 py-1.5 text-sm gap-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs"},lg:{trigger:"px-3 py-2 text-sm gap-2",leadingIcon:"size-5",leadingAvatarSize:"2xs"},xl:{trigger:"px-3 py-2 text-base gap-2",leadingIcon:"size-6",leadingAvatarSize:"xs"}}},compoundVariants:[{orientation:"horizontal",variant:"pill",class:{indicator:"inset-y-1"}},{orientation:"horizontal",variant:"link",class:{list:"border-b -mb-px",indicator:"-bottom-px h-px",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:inset-x-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:-bottom-[calc(var(--spacing)+1px)] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:h-px"}},{orientation:"vertical",variant:"pill",class:{indicator:"inset-x-1",list:"items-center",trigger:"w-full justify-center"}},{orientation:"vertical",variant:"link",class:{list:"border-s -ms-px",indicator:"-start-px w-px",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:inset-y-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:-start-[calc(var(--spacing)+1px)] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:w-px"}},{color:"primary",variant:"pill",class:{indicator:"bg-primary",trigger:["data-[state=active]:text-inverted outline-primary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-primary"]}},{color:"secondary",variant:"pill",class:{indicator:"bg-secondary",trigger:["data-[state=active]:text-inverted outline-secondary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-secondary"]}},{color:"success",variant:"pill",class:{indicator:"bg-success",trigger:["data-[state=active]:text-inverted outline-success/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-success"]}},{color:"info",variant:"pill",class:{indicator:"bg-info",trigger:["data-[state=active]:text-inverted outline-info/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-info"]}},{color:"warning",variant:"pill",class:{indicator:"bg-warning",trigger:["data-[state=active]:text-inverted outline-warning/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-warning"]}},{color:"error",variant:"pill",class:{indicator:"bg-error",trigger:["data-[state=active]:text-inverted outline-error/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-error"]}},{color:"neutral",variant:"pill",class:{indicator:"bg-inverted",trigger:["data-[state=active]:text-inverted outline-inverted/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-inverted"]}},{color:"primary",variant:"link",class:{indicator:"bg-primary",trigger:["data-[state=active]:text-primary outline-primary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-primary"]}},{color:"secondary",variant:"link",class:{indicator:"bg-secondary",trigger:["data-[state=active]:text-secondary outline-secondary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-secondary"]}},{color:"success",variant:"link",class:{indicator:"bg-success",trigger:["data-[state=active]:text-success outline-success/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-success"]}},{color:"info",variant:"link",class:{indicator:"bg-info",trigger:["data-[state=active]:text-info outline-info/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-info"]}},{color:"warning",variant:"link",class:{indicator:"bg-warning",trigger:["data-[state=active]:text-warning outline-warning/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-warning"]}},{color:"error",variant:"link",class:{indicator:"bg-error",trigger:["data-[state=active]:text-error outline-error/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-error"]}},{color:"neutral",variant:"link",class:{indicator:"bg-inverted",trigger:["data-[state=active]:text-highlighted outline-inverted/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-inverted"]}}],defaultVariants:{color:"primary",variant:"pill",size:"md"}},Ca={__name:"UTabs",props:{as:{type:null,required:!1},items:{type:Array,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},content:{type:Boolean,required:!1,default:!0},valueKey:{type:null,required:!1,default:"value"},labelKey:{type:null,required:!1,default:"label"},class:{type:null,required:!1},ui:{type:Object,required:!1},defaultValue:{type:[String,Number],required:!1,default:"0"},modelValue:{type:[String,Number],required:!1},activationMode:{type:String,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0}},emits:["update:modelValue"],setup(d,{expose:r,emit:u}){const i=d,v=u,n=ia(),t=sa("tabs",i),o=oa(),s=la(ra(t,"as","unmountOnHide"),v),l=_(()=>ca({extend:qa,...o.ui?.tabs||{}})({color:t.color,variant:t.variant,size:t.size,orientation:t.orientation})),p=q([]);function b(f,A){p.value[f]=A}return r({triggersRef:p}),(f,A)=>(c(),y(a(pa),V(a(s),{"model-value":a(t).modelValue,"default-value":a(t).defaultValue,orientation:a(t).orientation,"activation-mode":a(t).activationMode,"data-slot":"root",class:l.value.root({class:[a(t).ui?.root,a(t).class]})}),{default:g(()=>[w(a(xa),{"data-slot":"list",class:x(l.value.list({class:a(t).ui?.list}))},{default:g(()=>[w(a(ma),{"data-slot":"indicator",class:x(l.value.indicator({class:a(t).ui?.indicator}))},null,8,["class"]),h(f.$slots,"list-leading"),(c(!0),B($,null,M(a(t).items,(e,m)=>(c(),y(a(ka),{key:a(z)(e,a(t).valueKey)??m,ref_for:!0,ref:P=>b(m,P),value:a(z)(e,a(t).valueKey)??String(m),disabled:e.disabled,"data-slot":"trigger",class:x(l.value.trigger({class:[a(t).ui?.trigger,e.ui?.trigger]}))},{default:g(()=>[h(f.$slots,"leading",{item:e,index:m,ui:l.value},()=>[e.icon?(c(),y(na,{key:0,name:e.icon,"data-slot":"leadingIcon",class:x(l.value.leadingIcon({class:[a(t).ui?.leadingIcon,e.ui?.leadingIcon]}))},null,8,["name","class"])):e.avatar?(c(),y(da,V({key:1,size:e.ui?.leadingAvatarSize||a(t).ui?.leadingAvatarSize||l.value.leadingAvatarSize()},{ref_for:!0},e.avatar,{"data-slot":"leadingAvatar",class:l.value.leadingAvatar({class:[a(t).ui?.leadingAvatar,e.ui?.leadingAvatar]})}),null,16,["size","class"])):k("",!0)]),a(z)(e,a(t).labelKey)||n.default?(c(),B("span",{key:0,"data-slot":"label",class:x(l.value.label({class:[a(t).ui?.label,e.ui?.label]}))},[h(f.$slots,"default",{item:e,index:m},()=>[R(K(a(z)(e,a(t).labelKey)),1)])],2)):k("",!0),h(f.$slots,"trailing",{item:e,index:m,ui:l.value},()=>[e.badge||e.badge===0?(c(),y(ua,V({key:0,color:"neutral",variant:"outline",size:e.ui?.trailingBadgeSize||a(t).ui?.trailingBadgeSize||l.value.trailingBadgeSize()},{ref_for:!0},typeof e.badge=="string"||typeof e.badge=="number"?{label:e.badge}:e.badge,{"data-slot":"trailingBadge",class:l.value.trailingBadge({class:[a(t).ui?.trailingBadge,e.ui?.trailingBadge]})}),null,16,["size","class"])):k("",!0)])]),_:2},1032,["value","disabled","class"]))),128)),h(f.$slots,"list-trailing")]),_:3},8,["class"]),a(t).content?(c(!0),B($,{key:0},M(a(t).items,(e,m)=>(c(),y(a(ya),{key:a(z)(e,a(t).valueKey)??m,value:a(z)(e,a(t).valueKey)??String(m),"data-slot":"content",class:x(l.value.content({class:[a(t).ui?.content,e.ui?.content,e.class]}))},{default:g(()=>[h(f.$slots,e.slot||"content",{item:e,index:m,ui:l.value},()=>[R(K(e.content),1)])]),_:2},1032,["value","class"]))),128)):k("",!0)]),_:3},16,["model-value","default-value","orientation","activation-mode","class"]))}};export{Ca as _};
1
+ import{d as S,Y as L,aA as N,U as C,Z as O,aB as D,o as c,f as y,g,V as h,k as a,X as I,r as q,aC as j,$ as E,B as U,af as W,j as w,Q as G,v as k,aD as J,h as _,H as Q,aE as X,aF as Y,W as V,aG as Z,aH as aa,S as ta,C as ea,a2 as ia,a3 as sa,a5 as oa,a6 as la,a7 as ra,q as x,c as B,F as $,y as M,aI as z,p as na,aJ as da,m as R,t as K,s as ua,a8 as ca}from"./Du2W7Jne.js";import{R as va}from"./pQqGiNch.js";const[T,fa]=E("TabsRoot");var ga=S({__name:"TabsRoot",props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:"horizontal"},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:"automatic"},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue"],setup(d,{emit:r}){const u=d,i=r,{orientation:v,unmountOnHide:n,dir:t}=L(u),o=N(t);C();const s=O(u,"modelValue",i,{defaultValue:u.defaultValue,passive:u.modelValue===void 0}),l=q(),p=j(new Set);return fa({modelValue:s,changeModelValue:b=>{s.value=b},orientation:v,dir:o,unmountOnHide:n,activationMode:u.activationMode,baseId:D(void 0,"reka-tabs"),tabsList:l,contentIds:p,registerContent:b=>{p.value=new Set([...p.value,b])},unregisterContent:b=>{const f=new Set(p.value);f.delete(b),p.value=f}}),(b,f)=>(c(),y(a(I),{dir:a(o),"data-orientation":a(v),"as-child":b.asChild,as:b.as},{default:g(()=>[h(b.$slots,"default",{modelValue:a(s)})]),_:3},8,["dir","data-orientation","as-child","as"]))}}),pa=ga;function F(d,r){return`${d}-trigger-${r}`}function H(d,r){return`${d}-content-${r}`}var ba=S({__name:"TabsContent",props:{value:{type:[String,Number],required:!0},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const r=d,{forwardRef:u}=C(),i=T(),v=_(()=>F(i.baseId,r.value)),n=_(()=>H(i.baseId,r.value)),t=_(()=>r.value===i.modelValue.value),o=q(t.value);return U(()=>{i.registerContent(r.value),requestAnimationFrame(()=>{o.value=!1})}),W(()=>{i.unregisterContent(r.value)}),(s,l)=>(c(),y(a(J),{present:s.forceMount||t.value,"force-mount":""},{default:g(({present:p})=>[w(a(I),{id:n.value,ref:a(u),"as-child":s.asChild,as:s.as,role:"tabpanel","data-state":t.value?"active":"inactive","data-orientation":a(i).orientation.value,"aria-labelledby":v.value,hidden:!p,tabindex:"0",style:G({animationDuration:o.value?"0s":void 0})},{default:g(()=>[!a(i).unmountOnHide.value||p?h(s.$slots,"default",{key:0}):k("v-if",!0)]),_:2},1032,["id","as-child","as","data-state","data-orientation","aria-labelledby","hidden","style"])]),_:3},8,["present"]))}}),ya=ba,ha=S({__name:"TabsIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d,{expose:r}){const u=d,i=T();r({updateIndicatorStyle:o}),C();const v=Z(),n=q({size:null,thickness:null,position:null}),t=q([]);Q(()=>[i.modelValue.value,i?.dir.value],()=>{o()},{immediate:!0,flush:"post"}),X(()=>{t.value=Array.from(i.tabsList.value?.querySelectorAll('[role="tab"]')||[])}),Y(_(()=>[i.tabsList.value,...t.value]),o);function o(){const s=i.tabsList.value?.querySelector('[role="tab"][data-state="active"]');s&&(i.orientation.value==="horizontal"?n.value={size:s.offsetWidth,thickness:s.offsetHeight,position:s.offsetLeft}:n.value={size:s.offsetHeight,thickness:s.offsetWidth,position:s.offsetTop})}return(s,l)=>a(v)&&typeof n.value.size=="number"?(c(),y(a(I),V({key:0},u,{style:{"--reka-tabs-indicator-size":`${n.value.size}px`,"--reka-tabs-indicator-thickness":`${n.value.thickness}px`,"--reka-tabs-indicator-position":`${n.value.position}px`}}),{default:g(()=>[h(s.$slots,"default")]),_:3},16,["style"])):k("v-if",!0)}}),ma=ha,_a=S({__name:"TabsList",props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(d){const r=d,{loop:u}=L(r),{forwardRef:i,currentElement:v}=C(),n=T();return n.tabsList=v,(t,o)=>(c(),y(a(aa),{"as-child":"",orientation:a(n).orientation.value,dir:a(n).dir.value,loop:a(u)},{default:g(()=>[w(a(I),{ref:a(i),role:"tablist","as-child":t.asChild,as:t.as,"aria-orientation":a(n).orientation.value},{default:g(()=>[h(t.$slots,"default")]),_:3},8,["as-child","as","aria-orientation"])]),_:3},8,["orientation","dir","loop"]))}}),xa=_a,za=S({__name:"TabsTrigger",props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(d){const r=d,{forwardRef:u}=C(),i=T(),v=_(()=>F(i.baseId,r.value)),n=_(()=>i.contentIds.value.has(r.value)?H(i.baseId,r.value):void 0),t=_(()=>r.value===i.modelValue.value);return(o,s)=>(c(),y(a(va),{"as-child":"",focusable:!o.disabled,active:t.value},{default:g(()=>[w(a(I),{id:v.value,ref:a(u),role:"tab",type:o.as==="button"?"button":void 0,as:o.as,"as-child":o.asChild,"aria-selected":t.value?"true":"false","aria-controls":n.value,"data-state":t.value?"active":"inactive",disabled:o.disabled,"data-disabled":o.disabled?"":void 0,"data-orientation":a(i).orientation.value,onMousedown:s[0]||(s[0]=ea(l=>{!o.disabled&&l.ctrlKey===!1?a(i).changeModelValue(o.value):l.preventDefault()},["left"])),onKeydown:s[1]||(s[1]=ta(l=>a(i).changeModelValue(o.value),["enter","space"])),onFocus:s[2]||(s[2]=()=>{const l=a(i).activationMode!=="manual";!t.value&&!o.disabled&&l&&a(i).changeModelValue(o.value)})},{default:g(()=>[h(o.$slots,"default")]),_:3},8,["id","type","as","as-child","aria-selected","aria-controls","data-state","disabled","data-disabled","data-orientation"])]),_:3},8,["focusable","active"]))}}),ka=za;const qa={slots:{root:"flex items-center gap-2",list:"relative flex p-1 group",indicator:"absolute transition-[translate,width] duration-200",trigger:["group relative inline-flex items-center min-w-0 data-[state=inactive]:text-muted hover:data-[state=inactive]:not-disabled:text-default font-medium rounded-md disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",label:"truncate",trailingBadge:"shrink-0",trailingBadgeSize:"sm",content:"w-full rounded-md focus-visible:outline-3"},variants:{color:{primary:{content:"outline-primary/25"},secondary:{content:"outline-secondary/25"},success:{content:"outline-success/25"},info:{content:"outline-info/25"},warning:{content:"outline-warning/25"},error:{content:"outline-error/25"},neutral:{content:"outline-inverted/25"}},variant:{pill:{list:"bg-elevated rounded-lg",trigger:["grow","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:content-[''] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:absolute in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:inset-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:rounded-md in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:shadow-xs in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:-z-10 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:isolate"],indicator:"rounded-md shadow-xs"},link:{list:"border-default",indicator:"rounded-full",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:content-[''] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:absolute in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:rounded-full"}},orientation:{horizontal:{root:"flex-col",list:"w-full",indicator:"left-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position)",trigger:"justify-center"},vertical:{list:"flex-col",indicator:"top-0 h-(--reka-tabs-indicator-size) translate-y-(--reka-tabs-indicator-position)"}},size:{xs:{trigger:"px-2 py-1 text-xs gap-1",leadingIcon:"size-4",leadingAvatarSize:"3xs"},sm:{trigger:"px-2.5 py-1.5 text-xs gap-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs"},md:{trigger:"px-3 py-1.5 text-sm gap-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs"},lg:{trigger:"px-3 py-2 text-sm gap-2",leadingIcon:"size-5",leadingAvatarSize:"2xs"},xl:{trigger:"px-3 py-2 text-base gap-2",leadingIcon:"size-6",leadingAvatarSize:"xs"}}},compoundVariants:[{orientation:"horizontal",variant:"pill",class:{indicator:"inset-y-1"}},{orientation:"horizontal",variant:"link",class:{list:"border-b -mb-px",indicator:"-bottom-px h-px",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:inset-x-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:-bottom-[calc(var(--spacing)+1px)] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:h-px"}},{orientation:"vertical",variant:"pill",class:{indicator:"inset-x-1",list:"items-center",trigger:"w-full justify-center"}},{orientation:"vertical",variant:"link",class:{list:"border-s -ms-px",indicator:"-start-px w-px",trigger:"in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:inset-y-0 in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:-start-[calc(var(--spacing)+1px)] in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:w-px"}},{color:"primary",variant:"pill",class:{indicator:"bg-primary",trigger:["data-[state=active]:text-inverted outline-primary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-primary"]}},{color:"secondary",variant:"pill",class:{indicator:"bg-secondary",trigger:["data-[state=active]:text-inverted outline-secondary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-secondary"]}},{color:"success",variant:"pill",class:{indicator:"bg-success",trigger:["data-[state=active]:text-inverted outline-success/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-success"]}},{color:"info",variant:"pill",class:{indicator:"bg-info",trigger:["data-[state=active]:text-inverted outline-info/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-info"]}},{color:"warning",variant:"pill",class:{indicator:"bg-warning",trigger:["data-[state=active]:text-inverted outline-warning/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-warning"]}},{color:"error",variant:"pill",class:{indicator:"bg-error",trigger:["data-[state=active]:text-inverted outline-error/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-error"]}},{color:"neutral",variant:"pill",class:{indicator:"bg-inverted",trigger:["data-[state=active]:text-inverted outline-inverted/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:before:bg-inverted"]}},{color:"primary",variant:"link",class:{indicator:"bg-primary",trigger:["data-[state=active]:text-primary outline-primary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-primary"]}},{color:"secondary",variant:"link",class:{indicator:"bg-secondary",trigger:["data-[state=active]:text-secondary outline-secondary/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-secondary"]}},{color:"success",variant:"link",class:{indicator:"bg-success",trigger:["data-[state=active]:text-success outline-success/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-success"]}},{color:"info",variant:"link",class:{indicator:"bg-info",trigger:["data-[state=active]:text-info outline-info/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-info"]}},{color:"warning",variant:"link",class:{indicator:"bg-warning",trigger:["data-[state=active]:text-warning outline-warning/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-warning"]}},{color:"error",variant:"link",class:{indicator:"bg-error",trigger:["data-[state=active]:text-error outline-error/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-error"]}},{color:"neutral",variant:"link",class:{indicator:"bg-inverted",trigger:["data-[state=active]:text-highlighted outline-inverted/25 focus-visible:outline-3","in-[[data-slot=list]:not(:has([data-slot=indicator]))]:data-[state=active]:after:bg-inverted"]}}],defaultVariants:{color:"primary",variant:"pill",size:"md"}},Ca={__name:"UTabs",props:{as:{type:null,required:!1},items:{type:Array,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},content:{type:Boolean,required:!1,default:!0},valueKey:{type:null,required:!1,default:"value"},labelKey:{type:null,required:!1,default:"label"},class:{type:null,required:!1},ui:{type:Object,required:!1},defaultValue:{type:[String,Number],required:!1,default:"0"},modelValue:{type:[String,Number],required:!1},activationMode:{type:String,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0}},emits:["update:modelValue"],setup(d,{expose:r,emit:u}){const i=d,v=u,n=ia(),t=sa("tabs",i),o=oa(),s=la(ra(t,"as","unmountOnHide"),v),l=_(()=>ca({extend:qa,...o.ui?.tabs||{}})({color:t.color,variant:t.variant,size:t.size,orientation:t.orientation})),p=q([]);function b(f,A){p.value[f]=A}return r({triggersRef:p}),(f,A)=>(c(),y(a(pa),V(a(s),{"model-value":a(t).modelValue,"default-value":a(t).defaultValue,orientation:a(t).orientation,"activation-mode":a(t).activationMode,"data-slot":"root",class:l.value.root({class:[a(t).ui?.root,a(t).class]})}),{default:g(()=>[w(a(xa),{"data-slot":"list",class:x(l.value.list({class:a(t).ui?.list}))},{default:g(()=>[w(a(ma),{"data-slot":"indicator",class:x(l.value.indicator({class:a(t).ui?.indicator}))},null,8,["class"]),h(f.$slots,"list-leading"),(c(!0),B($,null,M(a(t).items,(e,m)=>(c(),y(a(ka),{key:a(z)(e,a(t).valueKey)??m,ref_for:!0,ref:P=>b(m,P),value:a(z)(e,a(t).valueKey)??String(m),disabled:e.disabled,"data-slot":"trigger",class:x(l.value.trigger({class:[a(t).ui?.trigger,e.ui?.trigger]}))},{default:g(()=>[h(f.$slots,"leading",{item:e,index:m,ui:l.value},()=>[e.icon?(c(),y(na,{key:0,name:e.icon,"data-slot":"leadingIcon",class:x(l.value.leadingIcon({class:[a(t).ui?.leadingIcon,e.ui?.leadingIcon]}))},null,8,["name","class"])):e.avatar?(c(),y(da,V({key:1,size:e.ui?.leadingAvatarSize||a(t).ui?.leadingAvatarSize||l.value.leadingAvatarSize()},{ref_for:!0},e.avatar,{"data-slot":"leadingAvatar",class:l.value.leadingAvatar({class:[a(t).ui?.leadingAvatar,e.ui?.leadingAvatar]})}),null,16,["size","class"])):k("",!0)]),a(z)(e,a(t).labelKey)||n.default?(c(),B("span",{key:0,"data-slot":"label",class:x(l.value.label({class:[a(t).ui?.label,e.ui?.label]}))},[h(f.$slots,"default",{item:e,index:m},()=>[R(K(a(z)(e,a(t).labelKey)),1)])],2)):k("",!0),h(f.$slots,"trailing",{item:e,index:m,ui:l.value},()=>[e.badge||e.badge===0?(c(),y(ua,V({key:0,color:"neutral",variant:"outline",size:e.ui?.trailingBadgeSize||a(t).ui?.trailingBadgeSize||l.value.trailingBadgeSize()},{ref_for:!0},typeof e.badge=="string"||typeof e.badge=="number"?{label:e.badge}:e.badge,{"data-slot":"trailingBadge",class:l.value.trailingBadge({class:[a(t).ui?.trailingBadge,e.ui?.trailingBadge]})}),null,16,["size","class"])):k("",!0)])]),_:2},1032,["value","disabled","class"]))),128)),h(f.$slots,"list-trailing")]),_:3},8,["class"]),a(t).content?(c(!0),B($,{key:0},M(a(t).items,(e,m)=>(c(),y(a(ya),{key:a(z)(e,a(t).valueKey)??m,value:a(z)(e,a(t).valueKey)??String(m),"data-slot":"content",class:x(l.value.content({class:[a(t).ui?.content,e.ui?.content,e.class]}))},{default:g(()=>[h(f.$slots,e.slot||"content",{item:e,index:m,ui:l.value},()=>[R(K(e.content),1)])]),_:2},1032,["value","class"]))),128)):k("",!0)]),_:3},16,["model-value","default-value","orientation","activation-mode","class"]))}};export{Ca as _};
@@ -1 +1 @@
1
- import{d as a,o as s,c as n,j as o,p as c,i,t as r,q as d}from"./NQikbhmK.js";const l={class:"text-sm"},p=a({__name:"LoadingState",props:{text:{default:"Loading…"},padded:{type:Boolean,default:!0}},setup(e){return(_,m)=>{const t=c;return s(),n("div",{role:"status","aria-live":"polite","aria-busy":"true",class:d(["flex items-center justify-center gap-2 text-gray-400",e.padded&&"py-8"])},[o(t,{name:"i-lucide-loader-2",class:"size-4 animate-spin"}),i("span",l,r(e.text),1)],2)}}}),f=Object.assign(p,{__name:"LoadingState"});export{f as _};
1
+ import{d as a,o as s,c as n,j as o,p as c,i,t as r,q as d}from"./Du2W7Jne.js";const l={class:"text-sm"},p=a({__name:"LoadingState",props:{text:{default:"Loading…"},padded:{type:Boolean,default:!0}},setup(e){return(_,m)=>{const t=c;return s(),n("div",{role:"status","aria-live":"polite","aria-busy":"true",class:d(["flex items-center justify-center gap-2 text-gray-400",e.padded&&"py-8"])},[o(t,{name:"i-lucide-loader-2",class:"size-4 animate-spin"}),i("span",l,r(e.text),1)],2)}}}),f=Object.assign(p,{__name:"LoadingState"});export{f as _};