@piwitests/server 0.18.2 → 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.
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{Dwws9U0D.js → -f7BAm1H.js} +1 -1
- package/.output/public/_nuxt/{BjCHB89N.js → 4gYNA-d4.js} +1 -1
- package/.output/public/_nuxt/5A6ITZXj.js +1 -0
- package/.output/public/_nuxt/8PUUncmO.js +44 -0
- package/.output/public/_nuxt/A1pj0VnG.js +1 -0
- package/.output/public/_nuxt/{DZ3Vfcpz.js → AbmKWFQQ.js} +1 -1
- package/.output/public/_nuxt/B3obW6cw.js +3 -0
- package/.output/public/_nuxt/{QmMoMxLM.js → B7FTvFWq.js} +3 -3
- package/.output/public/_nuxt/{DXbPFI1d.js → B8zkOmwo.js} +1 -1
- package/.output/public/_nuxt/B96M2gdj.js +1 -0
- package/.output/public/_nuxt/{BFP6M-20.js → B99fbi73.js} +1 -1
- package/.output/public/_nuxt/{DD5HpaW9.js → B9OLmp0f.js} +1 -1
- package/.output/public/_nuxt/BKkF4pPD.js +1 -0
- package/.output/public/_nuxt/BT3wGCTI.js +1 -0
- package/.output/public/_nuxt/BUa0V0Ly.js +1 -0
- package/.output/public/_nuxt/BUkim3TM.js +1 -0
- package/.output/public/_nuxt/BVc14Ncz.js +4 -0
- package/.output/public/_nuxt/BY0HxR3t.js +17 -0
- package/.output/public/_nuxt/B_xAMWQS.js +2 -0
- package/.output/public/_nuxt/BdQoBaOv.js +1 -0
- package/.output/public/_nuxt/{Cng9gj7q.js → BdfhYr-u.js} +1 -1
- package/.output/public/_nuxt/BgRu_3tT.js +1 -0
- package/.output/public/_nuxt/{BBK2-Krn.js → BiO7RBWb.js} +2 -2
- package/.output/public/_nuxt/BicAJ6U8.js +1 -0
- package/.output/public/_nuxt/BjaRappk.js +1 -0
- package/.output/public/_nuxt/Bm62iDV5.js +1 -0
- package/.output/public/_nuxt/{C9YzQCiq.js → BmUfSNMV.js} +1 -1
- package/.output/public/_nuxt/Bnxf8nbZ.js +1 -0
- package/.output/public/_nuxt/{CsUoYK75.js → Bow4tTR0.js} +1 -1
- package/.output/public/_nuxt/{B2oUeBbA.js → BrQEE053.js} +1 -1
- package/.output/public/_nuxt/BzRRzmwm.js +1 -0
- package/.output/public/_nuxt/{CN1mJlvD.js → C0_yH0N7.js} +1 -1
- package/.output/public/_nuxt/C1gTN4Q8.js +1 -0
- package/.output/public/_nuxt/{CNMoZYMv.js → C2hkrSey.js} +1 -1
- package/.output/public/_nuxt/{rTvJTef_.js → C8e1EbJI.js} +1 -1
- package/.output/public/_nuxt/CA9B2HE5.js +1 -0
- package/.output/public/_nuxt/{oFM1KLWA.js → CAAwCT7H.js} +1 -1
- package/.output/public/_nuxt/{qpI-_f9Q.js → CAvY22RE.js} +1 -1
- package/.output/public/_nuxt/{BLIRKrbM.js → CEfS4-oS.js} +4 -4
- package/.output/public/_nuxt/CIoSMkpp.js +1 -0
- package/.output/public/_nuxt/{hH1UFE3Z.js → CIrFl3MW.js} +1 -1
- package/.output/public/_nuxt/CJFtzlQ4.js +1 -0
- package/.output/public/_nuxt/{hgHc4teu.js → CNyV9YpI.js} +1 -1
- package/.output/public/_nuxt/CSJ-eOQM.js +1 -0
- package/.output/public/_nuxt/CTU1mrhq.js +1 -0
- package/.output/public/_nuxt/CXEH9OPk.js +1 -0
- package/.output/public/_nuxt/CahpB9Z2.js +5 -0
- package/.output/public/_nuxt/{C8OCrfDP.js → Cbh--1MW.js} +1 -1
- package/.output/public/_nuxt/CeG9pBAD.js +1 -0
- package/.output/public/_nuxt/{DBtBvrYc.js → CeW8v31b.js} +1 -1
- package/.output/public/_nuxt/{DZUgX70W.js → CjPfj7ya.js} +1 -1
- package/.output/public/_nuxt/Cnsmicv2.js +79 -0
- package/.output/public/_nuxt/CsLojMwR.js +1 -0
- package/.output/public/_nuxt/{BXY_PWcx.js → Cus22Ud3.js} +2 -2
- package/.output/public/_nuxt/{4TxgDGVa.js → CwGWJbiy.js} +1 -1
- package/.output/public/_nuxt/Cx6gc2VW.js +1 -0
- package/.output/public/_nuxt/{B1X__ilH.js → CxyAzHr3.js} +1 -1
- package/.output/public/_nuxt/{BJtlcTrb.js → CzAPFPpL.js} +1 -1
- package/.output/public/_nuxt/D--H4jLI.js +1 -0
- package/.output/public/_nuxt/D-c8ZSws.js +1 -0
- package/.output/public/_nuxt/D1POo6S4.js +10 -0
- package/.output/public/_nuxt/D5tke0B5.js +1 -0
- package/.output/public/_nuxt/D8nkF-OO.js +3 -0
- package/.output/public/_nuxt/DA25RkyK.js +1 -0
- package/.output/public/_nuxt/{DZ1zNBVM.js → DIB-5fUJ.js} +1 -1
- package/.output/public/_nuxt/DJmoLeVt.js +1 -0
- package/.output/public/_nuxt/DJxlKFGb.js +1 -0
- package/.output/public/_nuxt/DMec-OLo.js +1 -0
- package/.output/public/_nuxt/DPCxhHri.js +1 -0
- package/.output/public/_nuxt/{By4YL7mx.js → DSqHUrvO.js} +1 -1
- package/.output/public/_nuxt/DabzhQB1.js +1 -0
- package/.output/public/_nuxt/{D5oNv2cB.js → DdwHkKfV.js} +1 -1
- package/.output/public/_nuxt/{CfOLBbW9.js → DeY2JkR2.js} +1 -1
- package/.output/public/_nuxt/{CPLJeOCb.js → DfgOx_ou.js} +1 -1
- package/.output/public/_nuxt/DmkUdSS4.js +1 -0
- package/.output/public/_nuxt/{CUvGJXY3.js → DoIREDVb.js} +1 -1
- package/.output/public/_nuxt/DpZ1r1HA.js +1 -0
- package/.output/public/_nuxt/{BOCwBVnz.js → Dpd16JVI.js} +1 -1
- package/.output/public/_nuxt/DqcKngf3.js +1 -0
- package/.output/public/_nuxt/{xqiPI_FQ.js → DrfE8IY0.js} +1 -1
- package/.output/public/_nuxt/{BeFDVhpA.js → DsesNydr.js} +1 -1
- package/.output/public/_nuxt/{D0cnIs93.js → DtHJgCS8.js} +1 -1
- package/.output/public/_nuxt/Dtd4rC58.js +9 -0
- package/.output/public/_nuxt/Du2W7Jne.js +254 -0
- package/.output/public/_nuxt/DuwtTfO8.js +2 -0
- package/.output/public/_nuxt/Dy-TJ0Mt.js +1 -0
- package/.output/public/_nuxt/{BlnwU1OO.js → Dy86h-7P.js} +1 -1
- package/.output/public/_nuxt/{B-IcwqZ2.js → Dyeqn3aG.js} +1 -1
- package/.output/public/_nuxt/{BlA8mIS-.js → FaFoMVKo.js} +1 -1
- package/.output/public/_nuxt/GPNI1ffD.js +4 -0
- package/.output/public/_nuxt/{DWowvnwc.js → H94BMf3L.js} +1 -1
- package/.output/public/_nuxt/HPNQD6v3.js +1 -0
- package/.output/public/_nuxt/HXadJrHu.js +2 -0
- package/.output/public/_nuxt/KyA_4Ks-.js +1 -0
- package/.output/public/_nuxt/{e7zD3uJ0.js → L3kAWB2a.js} +1 -1
- package/.output/public/_nuxt/McL25vkx.js +34 -0
- package/.output/public/_nuxt/Nn93e_Mz.js +1 -0
- package/.output/public/_nuxt/TagBadge.By1E6r4y.css +1 -0
- package/.output/public/_nuxt/UdR3DBPS.js +1 -0
- package/.output/public/_nuxt/Und3xXFc.js +5 -0
- package/.output/public/_nuxt/_mj6CfPa.js +1 -0
- package/.output/public/_nuxt/b-GYfcrQ.js +1 -0
- package/.output/public/_nuxt/bLcjFslv.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/e659b3e1-0e61-4971-940e-10063f9f4763.json +1 -0
- package/.output/public/_nuxt/entry.DmptwB51.css +1 -0
- package/.output/public/_nuxt/{wHnZ9OaL.js → hC_z4G8p.js} +1 -1
- package/.output/public/_nuxt/{DZOS7Fh7.js → hNh4CIL0.js} +1 -1
- package/.output/public/_nuxt/{kjYMoWWx.js → l5WKbU4h.js} +3 -3
- package/.output/public/_nuxt/oAClCn_h.js +1 -0
- package/.output/public/_nuxt/{gnCL8GjZ.js → pQqGiNch.js} +1 -1
- package/.output/public/_nuxt/ryMzSDUj.js +2 -0
- package/.output/public/demo/seed.version.json +2 -2
- package/.output/server/chunks/_/ai-prompt-preview.mjs +38 -0
- package/.output/server/chunks/_/ai-prompt-preview.mjs.map +1 -0
- package/.output/server/chunks/_/collect.mjs +122 -0
- package/.output/server/chunks/_/collect.mjs.map +1 -0
- package/.output/server/chunks/_/markers.mjs +1 -1
- package/.output/server/chunks/_/quarantine.mjs +112 -0
- package/.output/server/chunks/_/quarantine.mjs.map +1 -0
- package/.output/server/chunks/_/users.mjs +1 -1
- package/.output/server/chunks/build/{Alert-Bp1Wz_sq.mjs → Alert-C4xq8lao.mjs} +2 -2
- package/.output/server/chunks/build/Alert-C4xq8lao.mjs.map +1 -0
- package/.output/server/chunks/build/{Breadcrumb-C9ZPTLym.mjs → Breadcrumb-Ak2Lg3oM.mjs} +3 -3
- package/.output/server/chunks/build/Breadcrumb-Ak2Lg3oM.mjs.map +1 -0
- package/.output/server/chunks/build/{BreadcrumbNav-C3y42Vun.mjs → BreadcrumbNav-DO7I_z-n.mjs} +3 -3
- package/.output/server/chunks/build/BreadcrumbNav-DO7I_z-n.mjs.map +1 -0
- package/.output/server/chunks/build/{BrowserBadge-DNCp9pF-.mjs → BrowserBadge-MFvBwxmD.mjs} +67 -7
- package/.output/server/chunks/build/BrowserBadge-MFvBwxmD.mjs.map +1 -0
- package/.output/server/chunks/build/{ChartCard-Fr557IbV.mjs → ChartCard-Y1UKwMsf.mjs} +2 -2
- package/.output/server/chunks/build/ChartCard-Y1UKwMsf.mjs.map +1 -0
- package/.output/server/chunks/build/{Checkbox-cVOSIY93.mjs → Checkbox-4Q5d0fa0.mjs} +8 -8
- package/.output/server/chunks/build/Checkbox-4Q5d0fa0.mjs.map +1 -0
- package/.output/server/chunks/build/CiEnvCard-DB5DvBh1.mjs +1492 -0
- package/.output/server/chunks/build/CiEnvCard-DB5DvBh1.mjs.map +1 -0
- package/.output/server/chunks/build/{CodeBlock-BGwNmJ8J.mjs → CodeBlock-BgE-NSmE.mjs} +7 -22
- package/.output/server/chunks/build/CodeBlock-BgE-NSmE.mjs.map +1 -0
- package/.output/server/chunks/build/{DashboardNavbar-Bdp-OwTN.mjs → DashboardNavbar-BHmMSPX7.mjs} +3 -3
- package/.output/server/chunks/build/DashboardNavbar-BHmMSPX7.mjs.map +1 -0
- package/.output/server/chunks/build/{DashboardSidebarToggle-Ji6ADuqF.mjs → DashboardSidebarToggle-DCTnHiIv.mjs} +3 -3
- package/.output/server/chunks/build/DashboardSidebarToggle-DCTnHiIv.mjs.map +1 -0
- package/.output/server/chunks/build/{DataLocationCard-D6xSOrme.mjs → DataLocationCard-B_YHdzSz.mjs} +3 -3
- package/.output/server/chunks/build/DataLocationCard-B_YHdzSz.mjs.map +1 -0
- package/.output/server/chunks/build/{DiagnosisPanel-DV1xwGu4.mjs → DiagnosisPanel-CALyEmcJ.mjs} +17 -528
- package/.output/server/chunks/build/DiagnosisPanel-CALyEmcJ.mjs.map +1 -0
- package/.output/server/chunks/build/DurationValue-D20oGbnc.mjs +43 -0
- package/.output/server/chunks/build/DurationValue-D20oGbnc.mjs.map +1 -0
- package/.output/server/chunks/build/{EmptyState-DV3oT_xz.mjs → EmptyState-DC2q_7TD.mjs} +3 -3
- package/.output/server/chunks/build/EmptyState-DC2q_7TD.mjs.map +1 -0
- package/.output/server/chunks/build/{EntityLinks-DeOP13Kr.mjs → EntityLinks-BBHWssHH.mjs} +6 -6
- package/.output/server/chunks/build/EntityLinks-BBHWssHH.mjs.map +1 -0
- package/.output/server/chunks/build/{EnvManagedBadge-Qpn58Nmr.mjs → EnvManagedBadge-UwD2b9v2.mjs} +3 -3
- package/.output/server/chunks/build/EnvManagedBadge-UwD2b9v2.mjs.map +1 -0
- package/.output/server/chunks/build/{FormField-B-GSn_VR.mjs → FormField-B0HKsdMd.mjs} +3 -3
- package/.output/server/chunks/build/FormField-B0HKsdMd.mjs.map +1 -0
- package/.output/server/chunks/build/{HelpHint-YEMWtKu1.mjs → HelpHint-DrcIv-Oj.mjs} +53 -6
- package/.output/server/chunks/build/HelpHint-DrcIv-Oj.mjs.map +1 -0
- package/.output/server/chunks/build/{Label-DBvbHd3A.mjs → Label-DYDR1Oeh.mjs} +2 -2
- package/.output/server/chunks/build/Label-DYDR1Oeh.mjs.map +1 -0
- package/.output/server/chunks/build/{MiniRunBars-C3HG-EYm.mjs → MiniRunBars-CZMugDrh.mjs} +2 -2
- package/.output/server/chunks/build/MiniRunBars-CZMugDrh.mjs.map +1 -0
- package/.output/server/chunks/build/{Modal-CfA78Hm1.mjs → Modal-pSDlXzT3.mjs} +2 -2
- package/.output/server/chunks/build/Modal-pSDlXzT3.mjs.map +1 -0
- package/.output/server/chunks/build/{OpenInIdeLink-B92wosXu.mjs → OpenInIdeLink-CQWKKChd.mjs} +6 -6
- package/.output/server/chunks/build/{OpenInIdeLink-B92wosXu.mjs.map → OpenInIdeLink-CQWKKChd.mjs.map} +1 -1
- package/.output/server/chunks/build/{ProjectTestCasesTable-9Ia825h8.mjs → ProjectTestCasesTable-Bo61P5K1.mjs} +120 -45
- package/.output/server/chunks/build/ProjectTestCasesTable-Bo61P5K1.mjs.map +1 -0
- package/.output/server/chunks/build/{RovingFocusItem-CxhHdNGo.mjs → RovingFocusItem--OEHI2P3.mjs} +2 -2
- package/.output/server/chunks/build/RovingFocusItem--OEHI2P3.mjs.map +1 -0
- package/.output/server/chunks/build/{RunReports-BpJqLHY9.mjs → RunReports-DFLv51TX.mjs} +8 -6
- package/.output/server/chunks/build/RunReports-DFLv51TX.mjs.map +1 -0
- package/.output/server/chunks/build/{RunStatusBadge-BhmJ_RKM.mjs → RunStatusBadge-FfGb6bkW.mjs} +3 -2
- package/.output/server/chunks/build/RunStatusBadge-FfGb6bkW.mjs.map +1 -0
- package/.output/server/chunks/build/{SectionCard-COd9TuDq.mjs → SectionCard-CN-v0FZ_.mjs} +2 -2
- package/.output/server/chunks/build/SectionCard-CN-v0FZ_.mjs.map +1 -0
- package/.output/server/chunks/build/{Select-ppPz926C.mjs → Select-5DK9frQ7.mjs} +4 -4
- package/.output/server/chunks/build/Select-5DK9frQ7.mjs.map +1 -0
- package/.output/server/chunks/build/{SelectMenu-799c_Ils.mjs → SelectMenu-D-2FSqBU.mjs} +939 -7
- package/.output/server/chunks/build/{SelectMenu-799c_Ils.mjs.map → SelectMenu-D-2FSqBU.mjs.map} +1 -1
- package/.output/server/chunks/build/{Separator-CxZdx8kw.mjs → Separator-CR4WcEKD.mjs} +2 -2
- package/.output/server/chunks/build/Separator-CR4WcEKD.mjs.map +1 -0
- package/.output/server/chunks/build/{SettingsField-DDD4oqys.mjs → SettingsField-BZfx4ma1.mjs} +6 -6
- package/.output/server/chunks/build/SettingsField-BZfx4ma1.mjs.map +1 -0
- package/.output/server/chunks/build/{Slideover-B95Rj237.mjs → Slideover-D270EZZD.mjs} +3 -3
- package/.output/server/chunks/build/Slideover-D270EZZD.mjs.map +1 -0
- package/.output/server/chunks/build/{Switch-xQQ3_ME1.mjs → Switch-B5Fp8ULt.mjs} +5 -5
- package/.output/server/chunks/build/Switch-B5Fp8ULt.mjs.map +1 -0
- package/.output/server/chunks/build/{Table-CPhhVzDv.mjs → Table-BRk04Hd2.mjs} +3 -3
- package/.output/server/chunks/build/Table-BRk04Hd2.mjs.map +1 -0
- package/.output/server/chunks/build/{Tabs-BV9XqjoO.mjs → Tabs-BkSOnbaB.mjs} +3 -3
- package/.output/server/chunks/build/Tabs-BkSOnbaB.mjs.map +1 -0
- package/.output/server/chunks/build/TagBadge-DwzoFCBb.mjs +31 -0
- package/.output/server/chunks/build/TagBadge-DwzoFCBb.mjs.map +1 -0
- package/.output/server/chunks/build/TagBadge-styles.jhuZ4NjP.mjs +8 -0
- package/.output/server/chunks/build/TagBadge-styles.jhuZ4NjP.mjs.map +1 -0
- package/.output/server/chunks/build/{TestCaseHistoryChart-DMb-xSJa.mjs → TestCaseHistoryChart-CSi64vVA.mjs} +6 -6
- package/.output/server/chunks/build/TestCaseHistoryChart-CSi64vVA.mjs.map +1 -0
- package/.output/server/chunks/build/TestMetaBadges-D5_yUtIP.mjs +200 -0
- package/.output/server/chunks/build/TestMetaBadges-D5_yUtIP.mjs.map +1 -0
- package/.output/server/chunks/build/{TestStatusBar-CEzt76wk.mjs → TestStatusBar-DX3EhlyP.mjs} +15 -15
- package/.output/server/chunks/build/TestStatusBar-DX3EhlyP.mjs.map +1 -0
- package/.output/server/chunks/build/{Textarea-DrrqQUVG.mjs → Textarea-Dv2-lOvW.mjs} +2 -2
- package/.output/server/chunks/build/Textarea-Dv2-lOvW.mjs.map +1 -0
- package/.output/server/chunks/build/{Tooltip-7vwuDPrZ.mjs → Tooltip-Dv4htNP6.mjs} +3 -3
- package/.output/server/chunks/build/Tooltip-Dv4htNP6.mjs.map +1 -0
- package/.output/server/chunks/build/{VisuallyHiddenInput-C9eJVpPW.mjs → VisuallyHiddenInput-BHvzNumK.mjs} +2 -2
- package/.output/server/chunks/build/VisuallyHiddenInput-BHvzNumK.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-CE0Gso6i.mjs → _id_-BdG37K7s.mjs} +91 -42
- package/.output/server/chunks/build/_id_-BdG37K7s.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-bWcP2xFl.mjs → _id_-BdJs7BJZ.mjs} +719 -448
- package/.output/server/chunks/build/_id_-BdJs7BJZ.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-B2yirIuA.mjs → _id_-BxA6IgWr.mjs} +831 -368
- package/.output/server/chunks/build/_id_-BxA6IgWr.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-B4V5fop6.mjs → _id_-C_uSBiyU.mjs} +296 -60
- package/.output/server/chunks/build/{_id_-B4V5fop6.mjs.map → _id_-C_uSBiyU.mjs.map} +1 -1
- package/.output/server/chunks/build/{about-CoJjvUwM.mjs → about-BE0UV-8-.mjs} +456 -61
- package/.output/server/chunks/build/about-BE0UV-8-.mjs.map +1 -0
- package/.output/server/chunks/build/{account-Cn-eZqXM.mjs → account-DAfvaD-F.mjs} +21 -9
- package/.output/server/chunks/build/account-DAfvaD-F.mjs.map +1 -0
- package/.output/server/chunks/build/{ai-7jdaPOmj.mjs → ai-Cn05ch0u.mjs} +45 -23
- package/.output/server/chunks/build/{ai-7jdaPOmj.mjs.map → ai-Cn05ch0u.mjs.map} +1 -1
- package/.output/server/chunks/build/{analytics-B276WPeU.mjs → analytics-Bo_B_jko.mjs} +66 -41
- package/.output/server/chunks/build/analytics-Bo_B_jko.mjs.map +1 -0
- package/.output/server/chunks/build/client.precomputed.mjs +1 -1
- package/.output/server/chunks/build/compare-RxHSOdsO.mjs +12 -0
- package/.output/server/chunks/build/{db.client-aHcD0wyX.mjs → db.client-CQoVTYB9.mjs} +83 -5
- package/.output/server/chunks/build/db.client-CQoVTYB9.mjs.map +1 -0
- package/.output/server/chunks/build/{default-BSzdkM_L.mjs → default-CbNHaFsy.mjs} +622 -78
- package/.output/server/chunks/build/default-CbNHaFsy.mjs.map +1 -0
- package/.output/server/chunks/build/{docs-BN_x1OW3.mjs → docs-B_llWMxx.mjs} +30 -49
- package/.output/server/chunks/build/{docs-BN_x1OW3.mjs.map → docs-B_llWMxx.mjs.map} +1 -1
- package/.output/server/chunks/build/{edit-C9Z7oZeu.mjs → edit-J0asTFg8.mjs} +29 -18
- package/.output/server/chunks/build/edit-J0asTFg8.mjs.map +1 -0
- package/.output/server/chunks/build/{fetch-8kznMtBM.mjs → fetch-B4FwBOzu.mjs} +3 -3
- package/.output/server/chunks/build/fetch-B4FwBOzu.mjs.map +1 -0
- package/.output/server/chunks/build/{forgot-password-BqPF4Rxs.mjs → forgot-password-CC__1OnV.mjs} +17 -5
- package/.output/server/chunks/build/forgot-password-CC__1OnV.mjs.map +1 -0
- package/.output/server/chunks/build/{help-content-DmFnuhNu.mjs → help-content-C876a9WD.mjs} +37 -8
- package/.output/server/chunks/build/help-content-C876a9WD.mjs.map +1 -0
- package/.output/server/chunks/build/import-CS9oylTN.mjs +1021 -0
- package/.output/server/chunks/build/import-CS9oylTN.mjs.map +1 -0
- package/.output/server/chunks/build/{index-CULN3-en.mjs → index-CU2nZhAa.mjs} +113 -42
- package/.output/server/chunks/build/index-CU2nZhAa.mjs.map +1 -0
- package/.output/server/chunks/build/{index-BR9hw6qk.mjs → index-DE45ycdZ.mjs} +51 -31
- package/.output/server/chunks/build/index-DE45ycdZ.mjs.map +1 -0
- package/.output/server/chunks/build/{index-BK9PTRpd.mjs → index-e9skCi-V.mjs} +85 -69
- package/.output/server/chunks/build/{index-BK9PTRpd.mjs.map → index-e9skCi-V.mjs.map} +1 -1
- package/.output/server/chunks/build/{index-DVUtBexc.mjs → index-hGHlmyxj.mjs} +1520 -288
- package/.output/server/chunks/build/index-hGHlmyxj.mjs.map +1 -0
- package/.output/server/chunks/build/{index-Ba-Fifra.mjs → index-tR6owKzj.mjs} +18 -6
- package/.output/server/chunks/build/index-tR6owKzj.mjs.map +1 -0
- package/.output/server/chunks/build/{isValueEqualOrExist-DBZjbD_3.mjs → isValueEqualOrExist-D2qw9YEr.mjs} +3 -3
- package/.output/server/chunks/build/isValueEqualOrExist-D2qw9YEr.mjs.map +1 -0
- package/.output/server/chunks/build/{login-D2XZDuek.mjs → login-Da4u1IlW.mjs} +19 -7
- package/.output/server/chunks/build/login-Da4u1IlW.mjs.map +1 -0
- package/.output/server/chunks/build/{mcp-_o6cMS6m.mjs → mcp-uhVCCwQM.mjs} +359 -24
- package/.output/server/chunks/build/mcp-uhVCCwQM.mjs.map +1 -0
- package/.output/server/chunks/build/{notifications-Dzm9c0u_.mjs → notifications-fx_qnKGA.mjs} +27 -21
- package/.output/server/chunks/build/notifications-fx_qnKGA.mjs.map +1 -0
- package/.output/server/chunks/build/pr-feedback-X6-70iF0.mjs +368 -0
- package/.output/server/chunks/build/pr-feedback-X6-70iF0.mjs.map +1 -0
- package/.output/server/chunks/build/{reset-password-gpFzIEDj.mjs → reset-password-BmrUS4ZD.mjs} +17 -5
- package/.output/server/chunks/build/reset-password-BmrUS4ZD.mjs.map +1 -0
- package/.output/server/chunks/build/server.mjs +238 -36
- package/.output/server/chunks/build/{settings-pNyPBXVa.mjs → settings-CCYe7rsc.mjs} +23 -10
- package/.output/server/chunks/build/settings-CCYe7rsc.mjs.map +1 -0
- package/.output/server/chunks/build/{settings-metadata-B0wo5R-W.mjs → settings-metadata-DrEqWcW-.mjs} +11 -2
- package/.output/server/chunks/build/settings-metadata-DrEqWcW-.mjs.map +1 -0
- package/.output/server/chunks/build/{storage-XelzuyPy.mjs → storage-CJEmviCD.mjs} +41 -31
- package/.output/server/chunks/build/storage-CJEmviCD.mjs.map +1 -0
- package/.output/server/chunks/build/styles.mjs +1 -0
- package/.output/server/chunks/build/{tags-DrCQ7QSw.mjs → tags-DauTe_F-.mjs} +22 -10
- package/.output/server/chunks/build/tags-DauTe_F-.mjs.map +1 -0
- package/.output/server/chunks/build/{test-cases-pmOxi-AN.mjs → test-cases-thBbAykw.mjs} +38 -24
- package/.output/server/chunks/build/test-cases-thBbAykw.mjs.map +1 -0
- package/.output/server/chunks/build/{timeout-hygiene-CNs71Iah.mjs → timeout-hygiene-CbnSaVbK.mjs} +20 -8
- package/.output/server/chunks/build/timeout-hygiene-CbnSaVbK.mjs.map +1 -0
- package/.output/server/chunks/build/{useAiStatus-ZO987RY7.mjs → useAiStatus-CxjMmDDY.mjs} +89 -89
- package/.output/server/chunks/build/useAiStatus-CxjMmDDY.mjs.map +1 -0
- package/.output/server/chunks/build/{useCopy-BQQKcwlq.mjs → useCopy-CeKWgHyT.mjs} +2 -2
- package/.output/server/chunks/build/useCopy-CeKWgHyT.mjs.map +1 -0
- package/.output/server/chunks/build/{PageStateCard-Bwee6JTk.mjs → useCopyRich-RJKhWoyj.mjs} +472 -63
- package/.output/server/chunks/build/useCopyRich-RJKhWoyj.mjs.map +1 -0
- package/.output/server/chunks/build/useDesktopDownload-BepjqxOt.mjs +46 -0
- package/.output/server/chunks/build/useDesktopDownload-BepjqxOt.mjs.map +1 -0
- package/.output/server/chunks/build/{useFormControl-BLpq1s4O.mjs → useFormControl-CZ9So7iX.mjs} +2 -2
- package/.output/server/chunks/build/useFormControl-CZ9So7iX.mjs.map +1 -0
- package/.output/server/chunks/build/{useOpenInIde-kMZ7Jw5c.mjs → useOpenInIde-BbTnPhFA.mjs} +3 -3
- package/.output/server/chunks/build/useOpenInIde-BbTnPhFA.mjs.map +1 -0
- package/.output/server/chunks/build/{useSettingsNav-NjI2seBy.mjs → useSettingsNav-DnQKacz8.mjs} +6 -6
- package/.output/server/chunks/build/useSettingsNav-DnQKacz8.mjs.map +1 -0
- package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs +11 -0
- package/.output/server/chunks/build/useTauri-Kf3HE_42.mjs.map +1 -0
- package/.output/server/chunks/build/{useTreeViewCookie-DVYpxW-p.mjs → useTreeViewCookie-CQjQdTkH.mjs} +2 -2
- package/.output/server/chunks/build/useTreeViewCookie-CQjQdTkH.mjs.map +1 -0
- package/.output/server/chunks/build/{users-NmAUZs3i.mjs → users-CTUqXyGh.mjs} +22 -10
- package/.output/server/chunks/build/users-CTUqXyGh.mjs.map +1 -0
- package/.output/server/chunks/build/{wasted-time-CguAF9zc.mjs → wasted-time-BNTPIyrC.mjs} +26 -14
- package/.output/server/chunks/build/wasted-time-BNTPIyrC.mjs.map +1 -0
- package/.output/server/chunks/nitro/nitro.mjs +6438 -1964
- package/.output/server/chunks/nitro/nitro.mjs.map +1 -1
- package/.output/server/chunks/routes/__piwi/session.get.mjs +13 -1
- package/.output/server/chunks/routes/__piwi/session.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/admin/cleanup.delete.mjs +12 -0
- package/.output/server/chunks/routes/api/admin/cleanup.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/admin/stats.get.mjs +12 -0
- package/.output/server/chunks/routes/api/admin/stats.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/ai/status.get.mjs +12 -0
- package/.output/server/chunks/routes/api/ai/status.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/analytics/_widget_.get.mjs +12 -0
- package/.output/server/chunks/routes/api/analytics/_widget_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/change-password.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/change-password.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/forgot-password.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/forgot-password.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/login.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/login.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/logout.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/logout.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/me.get.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/me.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/oauth/_provider/callback.get.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/oauth/_provider/callback.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/oauth/_provider/login.get.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/oauth/_provider/login.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/oauth/_provider/unlink.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/oauth/_provider/unlink.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/reset-password.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/reset-password.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/send-verify-email.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/send-verify-email.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/setup.get.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/setup.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/setup.post.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/setup.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/auth/verify-email.get.mjs +12 -0
- package/.output/server/chunks/routes/api/auth/verify-email.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/channels/_id/test.post.mjs +12 -0
- package/.output/server/chunks/routes/api/channels/_id/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/channels/_id_.delete.mjs +12 -0
- package/.output/server/chunks/routes/api/channels/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/approve.post.mjs +12 -0
- package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/approve.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/reject.post.mjs +12 -0
- package/.output/server/chunks/routes/api/cluster-merge-suggestions/_id/reject.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/desktop/import-local.post.mjs +88 -0
- package/.output/server/chunks/routes/api/desktop/import-local.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/desktop/reporter-config.get.mjs +12 -0
- package/.output/server/chunks/routes/api/desktop/reporter-config.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/base-commit.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/base-commit.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/branches.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/branches.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/commit-diff.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/commit-diff.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/commits.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/commits.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/context.get.mjs +24 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/context.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose/stream.post.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose/stream.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose.post.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnose.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnoses.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnoses.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnosis.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/diagnosis.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/export.get.mjs +64 -0
- package/.output/server/chunks/routes/api/failure-clusters/_id/export.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/failure-clusters/_id/extract-cases.post.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/extract-cases.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/fix-plan.get.mjs +56 -0
- package/.output/server/chunks/routes/api/failure-clusters/_id/fix-plan.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/failure-clusters/_id/status.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id/status.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id_.get.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-clusters/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/failure-diagnoses/_id/feedback.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/failure-diagnoses/_id/feedback.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/files/_...path_.get.mjs +13 -32
- package/.output/server/chunks/routes/api/files/_...path_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/health.get.mjs +13 -1
- package/.output/server/chunks/routes/api/health.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get.mjs +12 -0
- package/.output/server/chunks/routes/api/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get2.mjs +13 -1
- package/.output/server/chunks/routes/api/index.get2.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get3.mjs +13 -1
- package/.output/server/chunks/routes/api/index.get3.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get4.mjs +13 -1
- package/.output/server/chunks/routes/api/index.get4.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.get5.mjs +12 -0
- package/.output/server/chunks/routes/api/index.get5.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post.mjs +12 -0
- package/.output/server/chunks/routes/api/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post2.mjs +13 -1
- package/.output/server/chunks/routes/api/index.post2.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post3.mjs +13 -1
- package/.output/server/chunks/routes/api/index.post3.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post4.mjs +13 -1
- package/.output/server/chunks/routes/api/index.post4.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post5.mjs +13 -1
- package/.output/server/chunks/routes/api/index.post5.mjs.map +1 -1
- package/.output/server/chunks/routes/api/index.post6.mjs +12 -0
- package/.output/server/chunks/routes/api/index.post6.mjs.map +1 -1
- package/.output/server/chunks/routes/api/links/_id/refresh.post.mjs +13 -1
- package/.output/server/chunks/routes/api/links/_id/refresh.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/links/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/links/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/links/_id_.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/links/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/markers/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/markers/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/markers/_id_.put.mjs +13 -1
- package/.output/server/chunks/routes/api/markers/_id_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/notifications/stream.get.mjs +13 -1
- package/.output/server/chunks/routes/api/notifications/stream.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/cluster-merge-suggestions.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/cluster-merge-suggestions.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/failure-clusters.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/failure-clusters.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/flaky-classify.post.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/flaky-classify.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/flaky-tests.get.mjs +22 -2
- package/.output/server/chunks/routes/api/projects/_id/flaky-tests.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/latest-run.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/latest-run.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/markers.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/markers.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/markers.post.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/markers.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/members.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/members.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/members.put.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/members.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/performance.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/performance.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/quarantine/_testCaseId_.delete.mjs +58 -0
- package/.output/server/chunks/routes/api/projects/_id/quarantine/_testCaseId_.delete.mjs.map +1 -0
- package/.output/server/chunks/routes/api/projects/_id/quarantine.get.mjs +57 -0
- package/.output/server/chunks/routes/api/projects/_id/quarantine.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/projects/_id/quarantine.post.mjs +72 -0
- package/.output/server/chunks/routes/api/projects/_id/quarantine.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/projects/_id/slow-tests.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/slow-tests.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/spec-health.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/spec-health.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/test-cases.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/test-cases.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id/timeout-opportunities.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id/timeout-opportunities.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id_.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/_id_.put.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/_id_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/menu.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/menu.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects/overview.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects/overview.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/projects.get.mjs +13 -1
- package/.output/server/chunks/routes/api/projects.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/search.get.mjs +13 -1
- package/.output/server/chunks/routes/api/search.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai/limits.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai/limits.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai/limits.put.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai/limits.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai/models.post.mjs +12 -0
- package/.output/server/chunks/routes/api/settings/ai/models.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai/test.post.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai/usage.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai/usage.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/ai.put.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/ai.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/pr-feedback.get.mjs +57 -0
- package/.output/server/chunks/routes/api/settings/pr-feedback.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/settings/pr-feedback.put.mjs +63 -0
- package/.output/server/chunks/routes/api/settings/pr-feedback.put.mjs.map +1 -0
- package/.output/server/chunks/routes/api/settings/smtp/test.post.mjs +12 -0
- package/.output/server/chunks/routes/api/settings/smtp/test.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/smtp.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/smtp.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/timeout-hygiene.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/timeout-hygiene.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/timeout-hygiene.put.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/timeout-hygiene.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/wasted-waits.get.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/wasted-waits.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/settings/wasted-waits.put.mjs +13 -1
- package/.output/server/chunks/routes/api/settings/wasted-waits.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/stream.get.mjs +13 -1
- package/.output/server/chunks/routes/api/stream.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/subscriptions/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/subscriptions/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/subscriptions/_id_.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/subscriptions/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tags/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/tags/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tags/_id_.put.mjs +13 -1
- package/.output/server/chunks/routes/api/tags/_id_.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-cases/_id/history.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-cases/_id/history.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-cases/_id/stability-trend.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-cases/_id/stability-trend.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-cases/_id_.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-cases/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnose.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnose.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis-context.get.mjs +25 -3
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis-context.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/diagnosis.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/export.get.mjs +60 -0
- package/.output/server/chunks/routes/api/test-run-cases/_id/export.get.mjs.map +1 -0
- package/.output/server/chunks/routes/api/test-run-cases/_id/traces.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id/traces.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id_.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-run-cases/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/begin.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/begin.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs +17 -3
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/dom-snapshot.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/environment-diff.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/environment-diff.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-healing.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-healing.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-pick.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/locator-pick.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network-body.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network-body.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-network.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-stacks.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/trace-stacks.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/visual-diff.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/cases/_caseId/visual-diff.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/events.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/events.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs +15 -1
- package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/gate.post.mjs +196 -0
- package/.output/server/chunks/routes/api/test-runs/_id/gate.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/stream.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/stream.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.delete.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.patch.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs +77 -0
- package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/test-runs/import.post.mjs +77 -0
- package/.output/server/chunks/routes/api/test-runs/import.post.mjs.map +1 -0
- package/.output/server/chunks/routes/api/test-runs/recent.get.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/recent.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/setup.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/setup.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/start.post.mjs +13 -1
- package/.output/server/chunks/routes/api/test-runs/start.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/submit.post.mjs +32 -15
- package/.output/server/chunks/routes/api/test-runs/submit.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/test-runs/upload.post.mjs +21 -6
- package/.output/server/chunks/routes/api/test-runs/upload.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs +156 -3
- package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/traces/check.post.mjs +13 -1
- package/.output/server/chunks/routes/api/traces/check.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/api-keys/_keyId_.delete.mjs +12 -0
- package/.output/server/chunks/routes/api/users/_id/api-keys/_keyId_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/index.get.mjs +12 -0
- package/.output/server/chunks/routes/api/users/_id/index.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/index.post.mjs +13 -1
- package/.output/server/chunks/routes/api/users/_id/index.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/invite.post.mjs +13 -1
- package/.output/server/chunks/routes/api/users/_id/invite.post.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/projects.get.mjs +13 -1
- package/.output/server/chunks/routes/api/users/_id/projects.get.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id/projects.put.mjs +13 -1
- package/.output/server/chunks/routes/api/users/_id/projects.put.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs +12 -0
- package/.output/server/chunks/routes/api/users/_id_.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/users/_id_.patch.mjs +12 -0
- package/.output/server/chunks/routes/api/users/_id_.patch.mjs.map +1 -1
- package/.output/server/chunks/routes/api/version.get.mjs +13 -1
- package/.output/server/chunks/routes/api/version.get.mjs.map +1 -1
- package/.output/server/chunks/routes/mcp.post.mjs +13 -1
- package/.output/server/chunks/routes/mcp.post.mjs.map +1 -1
- package/.output/server/chunks/routes/renderer.mjs +1 -1
- package/.output/server/chunks/tasks/sweep.mjs +12 -0
- package/.output/server/chunks/tasks/sweep.mjs.map +1 -1
- package/.output/server/chunks/tasks/sweep2.mjs +12 -0
- package/.output/server/chunks/tasks/sweep2.mjs.map +1 -1
- package/.output/server/database/migrations/0039_remarkable_jean_grey.sql +2 -0
- package/.output/server/database/migrations/0040_organic_phalanx.sql +8 -0
- package/.output/server/database/migrations/0041_tense_gravity.sql +5 -0
- package/.output/server/database/migrations/0042_burly_hemingway.sql +19 -0
- package/.output/server/database/migrations/meta/0039_snapshot.json +3403 -0
- package/.output/server/database/migrations/meta/0040_snapshot.json +3457 -0
- package/.output/server/database/migrations/meta/0041_snapshot.json +3492 -0
- package/.output/server/database/migrations/meta/0042_snapshot.json +3618 -0
- package/.output/server/database/migrations/meta/_journal.json +28 -0
- package/.output/server/database/migrations-pg/0040_lazy_layla_miller.sql +2 -0
- package/.output/server/database/migrations-pg/0041_light_screwball.sql +8 -0
- package/.output/server/database/migrations-pg/0042_serious_layla_miller.sql +5 -0
- package/.output/server/database/migrations-pg/0043_wonderful_mordo.sql +19 -0
- package/.output/server/database/migrations-pg/meta/0040_snapshot.json +4060 -0
- package/.output/server/database/migrations-pg/meta/0041_snapshot.json +4123 -0
- package/.output/server/database/migrations-pg/meta/0042_snapshot.json +4153 -0
- package/.output/server/database/migrations-pg/meta/0043_snapshot.json +4308 -0
- package/.output/server/database/migrations-pg/meta/_journal.json +28 -0
- package/.output/server/index.mjs +13 -1
- package/.output/server/index.mjs.map +1 -1
- package/.output/server/node_modules/fflate/esm/index.mjs +2710 -0
- package/.output/server/node_modules/fflate/package.json +128 -0
- package/.output/server/node_modules/highlight.js/es/languages/yaml.js +213 -0
- package/.output/server/node_modules/marked/lib/marked.esm.js +72 -0
- package/.output/server/node_modules/marked/package.json +103 -0
- package/.output/server/package.json +3 -1
- package/package.json +2 -2
- package/.output/public/_nuxt/9-wVZMur.js +0 -4
- package/.output/public/_nuxt/B-5GukRk.js +0 -1
- package/.output/public/_nuxt/B1G3GGhQ.js +0 -1
- package/.output/public/_nuxt/B1zMFx24.js +0 -1
- package/.output/public/_nuxt/B4jvLMfS.js +0 -1
- package/.output/public/_nuxt/BBnX5xw4.js +0 -2
- package/.output/public/_nuxt/BHpUiv6j.js +0 -3
- package/.output/public/_nuxt/BLOUs6AE.js +0 -5
- package/.output/public/_nuxt/BT6p4Pgt.js +0 -2
- package/.output/public/_nuxt/BUXSUkJ_.js +0 -1
- package/.output/public/_nuxt/BVf6Yx9V.js +0 -26
- package/.output/public/_nuxt/BbS6Bwby.js +0 -1
- package/.output/public/_nuxt/Bd3HqPMF.js +0 -1
- package/.output/public/_nuxt/BeKvLsja.js +0 -2
- package/.output/public/_nuxt/BeUm5UNV.js +0 -1
- package/.output/public/_nuxt/BfV444H3.js +0 -3
- package/.output/public/_nuxt/BjKamgHq.js +0 -1
- package/.output/public/_nuxt/BoJdjCVl.js +0 -4
- package/.output/public/_nuxt/BreO2PiA.js +0 -1
- package/.output/public/_nuxt/BvIDC_R-.js +0 -1
- package/.output/public/_nuxt/ByuJWADR.js +0 -34
- package/.output/public/_nuxt/C1dyLp_j.js +0 -1
- package/.output/public/_nuxt/CAUgpKsF.js +0 -2
- package/.output/public/_nuxt/CL9-VLTJ.js +0 -1
- package/.output/public/_nuxt/CazDIG_m.js +0 -1
- package/.output/public/_nuxt/CcXaak_K.js +0 -1
- package/.output/public/_nuxt/CdMuck_X.js +0 -1
- package/.output/public/_nuxt/CfPSts5n.js +0 -1
- package/.output/public/_nuxt/CfROFPse.js +0 -1
- package/.output/public/_nuxt/Cnapl7lZ.js +0 -1
- package/.output/public/_nuxt/CscWZxCi.js +0 -1
- package/.output/public/_nuxt/CuicKV-B.js +0 -34
- package/.output/public/_nuxt/Cyiu1VQD.js +0 -1
- package/.output/public/_nuxt/D6PUPmRC.js +0 -1
- package/.output/public/_nuxt/DCl2yo4g.js +0 -8
- package/.output/public/_nuxt/DHXWp5yD.js +0 -1
- package/.output/public/_nuxt/DHltYerF.js +0 -114
- package/.output/public/_nuxt/DLXydYJb.js +0 -47
- package/.output/public/_nuxt/DRPSi76A.js +0 -1
- package/.output/public/_nuxt/DS53kyHJ.js +0 -1
- package/.output/public/_nuxt/DWhBqv_7.js +0 -1
- package/.output/public/_nuxt/Dd0kK5WH.js +0 -1
- package/.output/public/_nuxt/Df7kUO0m.js +0 -1
- package/.output/public/_nuxt/Dga3Av-m.js +0 -1
- package/.output/public/_nuxt/DgwTpwfB.js +0 -1
- package/.output/public/_nuxt/DkI145a5.js +0 -1
- package/.output/public/_nuxt/DoFBTaDR.js +0 -1
- package/.output/public/_nuxt/Dr_dI5hB.js +0 -1
- package/.output/public/_nuxt/EPZOxdgq.js +0 -1
- package/.output/public/_nuxt/R1nNqTru.js +0 -1
- package/.output/public/_nuxt/S5DLdEpg.js +0 -4
- package/.output/public/_nuxt/builds/meta/7caf3cb3-d272-4dbd-bb3f-1eeb64fab5d1.json +0 -1
- package/.output/public/_nuxt/entry.ChQMshd4.css +0 -1
- package/.output/public/_nuxt/gCELhaU9.js +0 -1
- package/.output/public/_nuxt/ipDzNHcs.js +0 -5
- package/.output/public/_nuxt/kS3boz40.js +0 -1
- package/.output/public/_nuxt/qH_j2A3a.js +0 -1
- package/.output/public/_nuxt/r3SBLxtE.js +0 -1
- package/.output/public/_nuxt/rsiRgrVM.js +0 -1
- package/.output/public/_nuxt/swrbBdtB.js +0 -1
- package/.output/public/sw.js +0 -1
- package/.output/public/workbox-2fbc6a65.js +0 -1
- package/.output/server/chunks/build/Alert-Bp1Wz_sq.mjs.map +0 -1
- package/.output/server/chunks/build/Breadcrumb-C9ZPTLym.mjs.map +0 -1
- package/.output/server/chunks/build/BreadcrumbNav-C3y42Vun.mjs.map +0 -1
- package/.output/server/chunks/build/BrowserBadge-DNCp9pF-.mjs.map +0 -1
- package/.output/server/chunks/build/ChartCard-Fr557IbV.mjs.map +0 -1
- package/.output/server/chunks/build/Checkbox-cVOSIY93.mjs.map +0 -1
- package/.output/server/chunks/build/CiEnvCard-DXPOhdSG.mjs +0 -640
- package/.output/server/chunks/build/CiEnvCard-DXPOhdSG.mjs.map +0 -1
- package/.output/server/chunks/build/CodeBlock-BGwNmJ8J.mjs.map +0 -1
- package/.output/server/chunks/build/DashboardNavbar-Bdp-OwTN.mjs.map +0 -1
- package/.output/server/chunks/build/DashboardSidebarToggle-Ji6ADuqF.mjs.map +0 -1
- package/.output/server/chunks/build/DataLocationCard-D6xSOrme.mjs.map +0 -1
- package/.output/server/chunks/build/DiagnosisPanel-DV1xwGu4.mjs.map +0 -1
- package/.output/server/chunks/build/EmptyState-DV3oT_xz.mjs.map +0 -1
- package/.output/server/chunks/build/EntityLinks-DeOP13Kr.mjs.map +0 -1
- package/.output/server/chunks/build/EnvManagedBadge-Qpn58Nmr.mjs.map +0 -1
- package/.output/server/chunks/build/FormField-B-GSn_VR.mjs.map +0 -1
- package/.output/server/chunks/build/HelpHint-YEMWtKu1.mjs.map +0 -1
- package/.output/server/chunks/build/Label-DBvbHd3A.mjs.map +0 -1
- package/.output/server/chunks/build/MiniRunBars-C3HG-EYm.mjs.map +0 -1
- package/.output/server/chunks/build/Modal-CfA78Hm1.mjs.map +0 -1
- package/.output/server/chunks/build/PageStateCard-Bwee6JTk.mjs.map +0 -1
- package/.output/server/chunks/build/ProjectTestCasesTable-9Ia825h8.mjs.map +0 -1
- package/.output/server/chunks/build/RovingFocusItem-CxhHdNGo.mjs.map +0 -1
- package/.output/server/chunks/build/RunReports-BpJqLHY9.mjs.map +0 -1
- package/.output/server/chunks/build/RunStatusBadge-BhmJ_RKM.mjs.map +0 -1
- package/.output/server/chunks/build/SectionCard-COd9TuDq.mjs.map +0 -1
- package/.output/server/chunks/build/Select-ppPz926C.mjs.map +0 -1
- package/.output/server/chunks/build/Separator-CxZdx8kw.mjs.map +0 -1
- package/.output/server/chunks/build/SettingsField-DDD4oqys.mjs.map +0 -1
- package/.output/server/chunks/build/Slideover-B95Rj237.mjs.map +0 -1
- package/.output/server/chunks/build/Switch-xQQ3_ME1.mjs.map +0 -1
- package/.output/server/chunks/build/Table-CPhhVzDv.mjs.map +0 -1
- package/.output/server/chunks/build/Tabs-BV9XqjoO.mjs.map +0 -1
- package/.output/server/chunks/build/TagBadge-BDcvvGxw.mjs +0 -47
- package/.output/server/chunks/build/TagBadge-BDcvvGxw.mjs.map +0 -1
- package/.output/server/chunks/build/TestCaseHistoryChart-DMb-xSJa.mjs.map +0 -1
- package/.output/server/chunks/build/TestStatusBar-CEzt76wk.mjs.map +0 -1
- package/.output/server/chunks/build/Textarea-DrrqQUVG.mjs.map +0 -1
- package/.output/server/chunks/build/Tooltip-7vwuDPrZ.mjs.map +0 -1
- package/.output/server/chunks/build/VisuallyHiddenInput-C9eJVpPW.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-B2yirIuA.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-CE0Gso6i.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-bWcP2xFl.mjs.map +0 -1
- package/.output/server/chunks/build/about-CoJjvUwM.mjs.map +0 -1
- package/.output/server/chunks/build/account-Cn-eZqXM.mjs.map +0 -1
- package/.output/server/chunks/build/analytics-B276WPeU.mjs.map +0 -1
- package/.output/server/chunks/build/db.client-aHcD0wyX.mjs.map +0 -1
- package/.output/server/chunks/build/default-BSzdkM_L.mjs.map +0 -1
- package/.output/server/chunks/build/edit-C9Z7oZeu.mjs.map +0 -1
- package/.output/server/chunks/build/fetch-8kznMtBM.mjs.map +0 -1
- package/.output/server/chunks/build/forgot-password-BqPF4Rxs.mjs.map +0 -1
- package/.output/server/chunks/build/help-content-DmFnuhNu.mjs.map +0 -1
- package/.output/server/chunks/build/index-BR9hw6qk.mjs.map +0 -1
- package/.output/server/chunks/build/index-Ba-Fifra.mjs.map +0 -1
- package/.output/server/chunks/build/index-CULN3-en.mjs.map +0 -1
- package/.output/server/chunks/build/index-DVUtBexc.mjs.map +0 -1
- package/.output/server/chunks/build/isValueEqualOrExist-DBZjbD_3.mjs.map +0 -1
- package/.output/server/chunks/build/login-D2XZDuek.mjs.map +0 -1
- package/.output/server/chunks/build/mcp-_o6cMS6m.mjs.map +0 -1
- package/.output/server/chunks/build/notifications-Dzm9c0u_.mjs.map +0 -1
- package/.output/server/chunks/build/reset-password-gpFzIEDj.mjs.map +0 -1
- package/.output/server/chunks/build/settings-metadata-B0wo5R-W.mjs.map +0 -1
- package/.output/server/chunks/build/settings-pNyPBXVa.mjs.map +0 -1
- package/.output/server/chunks/build/storage-XelzuyPy.mjs.map +0 -1
- package/.output/server/chunks/build/tags-DrCQ7QSw.mjs.map +0 -1
- package/.output/server/chunks/build/test-cases-pmOxi-AN.mjs.map +0 -1
- package/.output/server/chunks/build/timeout-hygiene-CNs71Iah.mjs.map +0 -1
- package/.output/server/chunks/build/useAiStatus-ZO987RY7.mjs.map +0 -1
- package/.output/server/chunks/build/useCopy-BQQKcwlq.mjs.map +0 -1
- package/.output/server/chunks/build/useFormControl-BLpq1s4O.mjs.map +0 -1
- package/.output/server/chunks/build/useOpenInIde-kMZ7Jw5c.mjs.map +0 -1
- package/.output/server/chunks/build/useSettingsNav-NjI2seBy.mjs.map +0 -1
- package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs +0 -7
- package/.output/server/chunks/build/useTauri-lRT8zkLv.mjs.map +0 -1
- package/.output/server/chunks/build/useTreeViewCookie-DVYpxW-p.mjs.map +0 -1
- package/.output/server/chunks/build/users-NmAUZs3i.mjs.map +0 -1
- package/.output/server/chunks/build/virtualizer-ZaqK4guJ.mjs +0 -940
- package/.output/server/chunks/build/virtualizer-ZaqK4guJ.mjs.map +0 -1
- package/.output/server/chunks/build/wasted-time-CguAF9zc.mjs.map +0 -1
- /package/.output/public/_nuxt/{PageStateCard.BrM5HWjY.css → useCopyRich.BrM5HWjY.css} +0 -0
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import{_ as ke,a as Re}from"./B4jvLMfS.js";import{d as Q,o as r,c as d,f as y,g as u,i as e,j as l,v as X,p as F,t as c,l as se,k as n,q as f,m,h as g,_ as Z,x as oe,F as A,y as L,r as J,C as we,s as $e,K as Ce,e as Te,aa as Fe}from"./DHltYerF.js";import{_ as je}from"./EPZOxdgq.js";import{_ as Se}from"./xqiPI_FQ.js";import{_ as Pe,a as ze}from"./CdMuck_X.js";import{_ as Ie}from"./qpI-_f9Q.js";import{_ as Ue}from"./B-IcwqZ2.js";import{_ as Ne}from"./B2oUeBbA.js";import{_ as Ve}from"./Dga3Av-m.js";import{_ as Ae}from"./Cyiu1VQD.js";import{_ as ie}from"./DS53kyHJ.js";import{_ as De}from"./BXY_PWcx.js";import{_ as Ee}from"./C1dyLp_j.js";import{_ as le}from"./CN1mJlvD.js";import{f as ne,h as ue,B as M,e as Oe}from"./BeKvLsja.js";import{a as Be,d as Le,_ as We}from"./DHXWp5yD.js";import{_ as He}from"./BHpUiv6j.js";import{_ as de}from"./Dwws9U0D.js";import{u as Me}from"./Cnapl7lZ.js";import{u as re}from"./DXbPFI1d.js";import{u as Ke}from"./DWowvnwc.js";import{u as Ge}from"./BbS6Bwby.js";import"./Bd3HqPMF.js";import"./qH_j2A3a.js";import"./CcXaak_K.js";import"./BFP6M-20.js";import"./CPLJeOCb.js";import"./DkI145a5.js";import"./gnCL8GjZ.js";import"./e7zD3uJ0.js";import"./r3SBLxtE.js";import"./By4YL7mx.js";const Ye={class:"flex items-center gap-3 flex-wrap"},qe={class:"flex items-center gap-1.5"},Je={key:0,class:"text-gray-500"},Qe={key:1},Xe={key:2},Ze={class:"flex items-center gap-1.5 cursor-pointer select-none text-sm text-gray-600 dark:text-gray-400 hover:text-gray-900 dark:hover:text-gray-100 transition-colors"},et=Q({__name:"HomeFilters",props:{modelValue:{},availableEnvironments:{}},emits:["update:modelValue"],setup(D,{emit:$}){const C=D,v=$,I=g({get:()=>C.modelValue.environments,set:S=>v("update:modelValue",{...C.modelValue,environments:S})}),R=g({get:()=>C.modelValue.fullRunsOnly,set:S=>v("update:modelValue",{...C.modelValue,fullRunsOnly:S})}),U=g(()=>C.modelValue.environments.length>0||!C.modelValue.fullRunsOnly);function N(){v("update:modelValue",{environments:[],fullRunsOnly:!0})}return(S,_)=>{const E=X,o=je,x=Se,h=Z;return r(),d("div",Ye,[D.availableEnvironments.length>0?(r(),y(o,{key:0,modelValue:n(I),"onUpdate:modelValue":_[0]||(_[0]=t=>se(I)?I.value=t:null),items:D.availableEnvironments,multiple:"",placeholder:"All environments",size:"sm",class:"min-w-[160px]"},{default:u(({modelValue:t})=>[e("div",qe,[l(E,{name:"i-lucide-server",class:F(["size-3.5 shrink-0",t.length?"text-primary":"text-gray-400"])},null,8,["class"]),t.length?t.length===1?(r(),d("span",Qe,c(t[0]),1)):(r(),d("span",Xe,c(t.length)+" environments",1)):(r(),d("span",Je,"All environments"))])]),_:1},8,["modelValue","items"])):f("",!0),e("label",Ze,[l(x,{modelValue:n(R),"onUpdate:modelValue":_[1]||(_[1]=t=>se(R)?R.value=t:null),size:"sm"},null,8,["modelValue"]),_[2]||(_[2]=m(" Full runs only ",-1))]),n(U)?(r(),y(h,{key:1,variant:"ghost",size:"sm",color:"neutral",icon:"i-lucide-x",onClick:N},{default:u(()=>[..._[3]||(_[3]=[m(" Reset ",-1)])]),_:1})):f("",!0)])}}}),tt=Object.assign(et,{__name:"HomeFilters"}),st={class:"hidden md:block overflow-x-auto -mx-4 px-4 sm:mx-0 sm:px-0"},nt={key:0,class:"flex flex-wrap gap-1 mt-0.5"},rt={class:"w-40"},at={key:1,class:"text-gray-400 text-sm"},ot={class:"text-xs text-gray-500 dark:text-gray-400"},it={key:0},lt={key:1,class:"text-gray-400 text-sm"},ut={key:0,class:"tabular-nums text-sm text-gray-600 dark:text-gray-400"},dt={key:1,class:"text-gray-400"},ct={class:"space-y-2 md:hidden"},mt={class:"flex items-start justify-between gap-2"},pt={key:0,class:"flex flex-wrap gap-1"},gt={class:"flex items-center justify-between gap-2 text-xs"},ft={class:"text-gray-500 dark:text-gray-400 truncate"},yt={key:1,class:"text-gray-400"},xt={key:2,class:"shrink-0 tabular-nums text-gray-500 dark:text-gray-400"},_t=Q({__name:"ProjectTrendTable",props:{projects:{},limit:{default:10}},setup(D){const $=D,C={failing:0,flaky:1,passing:2,unknown:3},v=J(!1),I=g(()=>$.projects.length>$.limit),R=g(()=>{const o=[...$.projects].sort((x,h)=>{const t=C[x.tendency]-C[h.tendency];if(t!==0)return t;const T=x.latestFullRun?new Date(x.latestFullRun.startTime).getTime():0;return(h.latestFullRun?new Date(h.latestFullRun.startTime).getTime():0)-T});return v.value?o:o.slice(0,$.limit)});function U(o){return o>=90?"text-green-600 dark:text-green-400":o>=50?"text-yellow-600 dark:text-yellow-400":"text-red-600 dark:text-red-400"}function N(o){switch(o){case"failing":return"text-red-700 dark:text-red-400 bg-red-50 dark:bg-red-900/20 border-red-200 dark:border-red-800";case"flaky":return"text-amber-700 dark:text-amber-400 bg-amber-50 dark:bg-amber-900/20 border-amber-200 dark:border-amber-800";case"passing":return"text-green-700 dark:text-green-400 bg-green-50 dark:bg-green-900/20 border-green-200 dark:border-green-800";default:return"text-gray-500 dark:text-gray-400 bg-gray-50 dark:bg-gray-800 border-gray-200 dark:border-gray-700"}}function S(o){return o==="unknown"?"Unknown":o.charAt(0).toUpperCase()+o.slice(1)}function _(o){switch(o){case"failing":return"i-lucide-trending-down";case"flaky":return"i-lucide-shuffle";case"passing":return"i-lucide-trending-up";default:return"i-lucide-minus"}}const E=[{accessorKey:"name",header:"Project"},{id:"recentRuns",header:"Last 20 runs"},{accessorKey:"tendency",header:"Tendency"},{id:"passRate",header:"Pass rate"},{id:"latestRun",header:"Latest run"},{id:"tests",header:"Tests"}];return(o,x)=>{const h=Z,t=oe,T=Ve,b=Ae,V=X,P=ie,j=De,W=Ee,K=le;return r(),y(K,{icon:"i-lucide-layout-dashboard",title:"Project health",help:"home.project-health"},{actions:u(()=>[n(I)&&!n(v)?(r(),y(h,{key:0,variant:"ghost",size:"sm","trailing-icon":"i-lucide-chevron-down",onClick:x[0]||(x[0]=s=>v.value=!0)},{default:u(()=>[m(" Show all "+c($.projects.length),1)]),_:1})):n(v)?(r(),y(h,{key:1,variant:"ghost",size:"sm","trailing-icon":"i-lucide-chevron-up",onClick:x[1]||(x[1]=s=>v.value=!1)},{default:u(()=>[...x[2]||(x[2]=[m(" Show less ",-1)])]),_:1})):f("",!0),l(h,{to:"/projects",variant:"outline",size:"sm"},{default:u(()=>[...x[3]||(x[3]=[m("View all",-1)])]),_:1})]),default:u(()=>[e("div",st,[l(j,{data:n(R),columns:E,ui:{base:"min-w-[700px]",td:"py-3",th:"py-3 text-xs uppercase tracking-wide"}},{"name-cell":u(({row:s})=>[l(t,{to:`/projects/${s.original.id}`,class:"font-medium text-primary hover:underline truncate block max-w-[200px]"},{default:u(()=>[m(c(s.original.label||s.original.name),1)]),_:2},1032,["to"]),s.original.tags.length>0?(r(),d("div",nt,[(r(!0),d(A,null,L(s.original.tags,k=>(r(),y(T,{key:k.id,text:k.text,color:k.color},null,8,["text","color"]))),128))])):f("",!0)]),"recentRuns-cell":u(({row:s})=>[e("div",rt,[l(b,{runs:s.original.recentRuns,height:28},null,8,["runs"])])]),"tendency-cell":u(({row:s})=>[e("span",{class:F(["inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-xs font-medium border whitespace-nowrap",N(s.original.tendency)])},[l(V,{name:_(s.original.tendency),class:"size-3 shrink-0"},null,8,["name"]),m(" "+c(S(s.original.tendency)),1)],2)]),"passRate-cell":u(({row:s})=>[s.original.latestFullRun?(r(),d("span",{key:0,class:F(["font-semibold tabular-nums text-sm",U(("passRate"in o?o.passRate:n(M))(s.original.latestFullRun))])},c(("passRate"in o?o.passRate:n(M))(s.original.latestFullRun))+"% ",3)):(r(),d("span",at,"—"))]),"latestRun-cell":u(({row:s})=>[s.original.latestFullRun?(r(),y(t,{key:0,to:`/test-runs/${s.original.latestFullRun.id}`,class:"flex items-center gap-2 min-w-[140px] hover:opacity-80 transition-opacity"},{default:u(()=>[l(P,{status:s.original.latestFullRun.status},null,8,["status"]),e("div",ot,[e("div",null,c(("formatRelativeTime"in o?o.formatRelativeTime:n(ne))(s.original.latestFullRun.startTime)),1),s.original.latestFullRun.duration?(r(),d("div",it,c(("formatDuration"in o?o.formatDuration:n(ue))(s.original.latestFullRun.duration)),1)):f("",!0)])]),_:2},1032,["to"])):(r(),d("span",lt,"No full runs"))]),"tests-cell":u(({row:s})=>[s.original.latestFullRun?(r(),d("span",ut,c(s.original.latestFullRun.passedTests)+"/"+c(s.original.latestFullRun.totalTests),1)):(r(),d("span",dt,"—"))]),_:1},8,["data"])]),e("div",ct,[(r(!0),d(A,null,L(n(R),s=>(r(),d("div",{key:s.id,class:"rounded-lg border border-default p-3 space-y-2"},[e("div",mt,[l(t,{to:`/projects/${s.id}`,class:"font-medium text-primary hover:underline truncate"},{default:u(()=>[m(c(s.label||s.name),1)]),_:2},1032,["to"]),e("span",{class:F(["inline-flex shrink-0 items-center gap-1 rounded border px-1.5 py-0.5 text-xs font-medium whitespace-nowrap",N(s.tendency)])},[l(V,{name:_(s.tendency),class:"size-3 shrink-0"},null,8,["name"]),m(" "+c(S(s.tendency)),1)],2)]),s.tags.length>0?(r(),d("div",pt,[(r(!0),d(A,null,L(s.tags,k=>(r(),y(T,{key:k.id,text:k.text,color:k.color},null,8,["text","color"]))),128))])):f("",!0),l(b,{runs:s.recentRuns,height:24},null,8,["runs"]),e("div",gt,[s.latestFullRun?(r(),y(t,{key:0,to:`/test-runs/${s.latestFullRun.id}`,class:"flex items-center gap-1.5 min-w-0 hover:opacity-80"},{default:u(()=>[l(P,{status:s.latestFullRun.status},null,8,["status"]),e("span",ft,c(("formatRelativeTime"in o?o.formatRelativeTime:n(ne))(s.latestFullRun.startTime)),1)]),_:2},1032,["to"])):(r(),d("span",yt,"No full runs")),s.latestFullRun?(r(),d("span",xt,[e("span",{class:F(["font-semibold",U(("passRate"in o?o.passRate:n(M))(s.latestFullRun))])},c(("passRate"in o?o.passRate:n(M))(s.latestFullRun))+"% ",3),m(" · "+c(s.latestFullRun.passedTests)+"/"+c(s.latestFullRun.totalTests),1)])):f("",!0)])]))),128))]),n(R).length===0?(r(),y(W,{key:0,text:"No projects yet",padded:!1,class:"py-8"})):f("",!0)]),_:1})}}}),ht=Object.assign(_t,{__name:"ProjectTrendTable"}),vt={class:"flex items-center gap-3"},bt={class:"p-2 bg-primary/10 rounded-lg shrink-0"},kt={class:"text-xl font-semibold inline-flex items-center gap-1"},Rt={class:"text-sm text-gray-500 dark:text-gray-400"},wt={class:"flex flex-col items-center shrink-0"},$t={key:1},Ct={key:0,class:"w-px flex-1 mt-2 min-h-6 bg-gray-200 dark:bg-gray-700"},Tt={class:"flex-1 pb-6"},Ft={class:"flex items-center gap-2 mb-1"},jt={class:"font-medium"},St={class:"text-sm text-gray-600 dark:text-gray-400 mb-3"},Pt={class:"border-t border-gray-200 dark:border-gray-700 pt-4 mt-2"},zt={key:0,class:"mt-4 space-y-6"},It={class:"text-sm text-gray-600 dark:text-gray-400 mb-3"},Ut={class:"flex items-center justify-between text-sm text-gray-500 dark:text-gray-400"},Nt=`// tests/fixtures.ts
|
|
2
|
-
import { test as base, expect } from '@playwright/test'
|
|
3
|
-
import { piwiFixtures } from '@piwitests/reporter'
|
|
4
|
-
|
|
5
|
-
export const test = base.extend(piwiFixtures)
|
|
6
|
-
export { expect }`,Vt=`// your test file
|
|
7
|
-
import { test, expect } from './fixtures'
|
|
8
|
-
|
|
9
|
-
test('homepage loads', async ({ page }) => {
|
|
10
|
-
await page.goto('/')
|
|
11
|
-
// network requests, web vitals, console errors, and ARIA snapshots
|
|
12
|
-
// are captured automatically and appear in the dashboard
|
|
13
|
-
})`,At=`// tests/fixtures.ts
|
|
14
|
-
import { test as base } from '@playwright/test'
|
|
15
|
-
import { extendPiwiFixtures } from '@piwitests/reporter'
|
|
16
|
-
|
|
17
|
-
export const test = extendPiwiFixtures(base)
|
|
18
|
-
export { expect } from '@playwright/test'`,Dt=Q({__name:"GetStartedWizard",setup(D){const $=Ce(),C=g(()=>!!$.public.authEnabled),v=Me(),{data:I}=re("/api/desktop/reporter-config",{immediate:v,default:()=>null},"$1biRnknxaz"),R=J("http://localhost:3000");we(()=>{R.value=window.location.origin});const U=g(()=>v&&I.value?`
|
|
19
|
-
apiKey: '${I.value.token}',`:C.value?`
|
|
20
|
-
apiKey: process.env.PIWI_API_KEY,`:""),N=g(()=>`import { defineConfig } from '@playwright/test'
|
|
21
|
-
|
|
22
|
-
export default defineConfig({
|
|
23
|
-
reporter: [
|
|
24
|
-
['list'],
|
|
25
|
-
['@piwitests/reporter', {
|
|
26
|
-
serverUrl: '${R.value}',
|
|
27
|
-
projectName: 'my-project',${U.value}
|
|
28
|
-
}],
|
|
29
|
-
],
|
|
30
|
-
use: {
|
|
31
|
-
trace: 'retain-on-failure',
|
|
32
|
-
},
|
|
33
|
-
})`),S=g(()=>`import { defineConfig } from '@playwright/test'
|
|
34
|
-
import PiwiDashboard from '@piwitests/reporter'
|
|
35
|
-
|
|
36
|
-
export default PiwiDashboard.wrapConfig(
|
|
37
|
-
defineConfig({
|
|
38
|
-
// your existing config
|
|
39
|
-
use: {
|
|
40
|
-
trace: 'retain-on-failure',
|
|
41
|
-
},
|
|
42
|
-
}),
|
|
43
|
-
{
|
|
44
|
-
serverUrl: '${R.value}',
|
|
45
|
-
projectName: 'my-project',${U.value}
|
|
46
|
-
},
|
|
47
|
-
)`),_=g(()=>{const h=[{title:"Start the dashboard",description:"You're already here — the dashboard is running.",done:!0},{title:"Install the reporter",description:"Add the Piwi reporter to your Playwright project.",code:"npm install --save-dev @piwitests/reporter",lang:"bash"}];return C.value&&h.push({title:"Create an API key",description:"Authentication is enabled on this instance, so the reporter needs a key to submit results. Create one, then set it as PIWI_API_KEY in your CI secrets (used by the snippet below).",action:"create-api-key"}),h.push({title:"Configure Playwright",description:v?"Add the reporter to your playwright.config.ts. The apiKey below is this app's local access token.":"Add the reporter to your playwright.config.ts.",code:N.value,lang:"typescript"},{title:"Run your tests",description:"Results appear in the dashboard automatically. The project is created on first submit.",code:"npx playwright test",lang:"bash"}),h.map((t,T)=>({id:T+1,...t}))}),E=["zero","one","two","three","four","five","six"],o=g(()=>E[_.value.length]??String(_.value.length)),x=J(!1);return(h,t)=>{const T=X,b=We,V=$e,P=Z,j=He,W=Be,K=de;return r(),y(K,null,{header:u(()=>[e("div",vt,[e("div",bt,[l(T,{name:"i-lucide-rocket",class:"size-5 text-primary"})]),e("div",null,[e("h2",kt,[t[1]||(t[1]=m(" Get started in 60 seconds ",-1)),l(b,{topic:"home.get-started"})]),e("p",Rt,"Send your first test run in "+c(n(o))+" steps",1)])])]),footer:u(()=>[e("div",Ut,[e("span",null,[t[18]||(t[18]=m("Need more options? See the ",-1)),l(W,{to:"reporter","no-icon":"",class:"text-primary hover:underline"},{default:u(()=>[...t[17]||(t[17]=[m("full reporter docs",-1)])]),_:1}),t[19]||(t[19]=m(".",-1))]),l(P,{to:n(Le)("demo/"),target:"_blank",variant:"ghost",size:"sm",color:"neutral","trailing-icon":"i-lucide-external-link"},{default:u(()=>[...t[20]||(t[20]=[m(" View demo with sample data ",-1)])]),_:1},8,["to"])])]),default:u(()=>[e("div",null,[(r(!0),d(A,null,L(n(_),(s,k)=>(r(),d("div",{key:s.id,class:"flex gap-4"},[e("div",wt,[e("div",{class:F(["flex size-8 items-center justify-center rounded-full text-sm font-semibold",s.done?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":"bg-primary/10 text-primary"])},[s.done?(r(),y(T,{key:0,name:"i-lucide-check",class:"size-4"})):(r(),d("span",$t,c(s.id),1))],2),k<n(_).length-1?(r(),d("div",Ct)):f("",!0)]),e("div",Tt,[e("div",Ft,[e("h3",jt,c(s.title),1),s.done?(r(),y(V,{key:0,color:"success",variant:"subtle",size:"xs"},{default:u(()=>[...t[2]||(t[2]=[m("Done",-1)])]),_:1})):f("",!0)]),e("p",St,c(s.description),1),s.action==="create-api-key"?(r(),y(P,{key:0,to:"/settings/users",icon:"i-lucide-key-round",size:"sm",variant:"soft"},{default:u(()=>[...t[3]||(t[3]=[m(" Create an API key ",-1)])]),_:1})):f("",!0),s.code?(r(),y(j,{key:1,code:s.code,lang:s.lang},null,8,["code","lang"])):f("",!0)])]))),128)),e("div",Pt,[e("button",{class:"flex items-center gap-2 text-sm font-medium text-gray-600 dark:text-gray-300 hover:text-primary dark:hover:text-primary transition-colors w-full text-left",onClick:t[0]||(t[0]=s=>x.value=!n(x))},[l(T,{name:"i-lucide-chevron-right",class:F(["size-4 transition-transform duration-200",n(x)?"rotate-90":""])},null,8,["class"]),t[4]||(t[4]=m(" Go further — simpler config & capture fixtures ",-1))]),n(x)?(r(),d("div",zt,[e("div",null,[t[5]||(t[5]=e("h4",{class:"font-medium text-sm mb-1"},[m(" Simpler config with "),e("code",{class:"text-primary text-xs"},"wrapConfig")],-1)),t[6]||(t[6]=e("p",{class:"text-sm text-gray-600 dark:text-gray-400 mb-3"},[m(" Instead of manually adding the reporter array entry, "),e("code",{class:"text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded"},"wrapConfig"),m(" auto-injects the reporter and chains the global setup in one call. It also registers the run on the dashboard "),e("em",null,"before"),m(" your "),e("code",{class:"text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded"},"globalSetup"),m(" runs, so the dashboard shows an initializing state during setup. ")],-1)),l(j,{code:n(S),lang:"typescript"},null,8,["code"])]),e("div",null,[t[14]||(t[14]=e("h4",{class:"font-medium text-sm mb-1"},[m(" Capture fixtures — network, Web Vitals, console & locator healing with "),e("code",{class:"text-primary text-xs"},"piwiFixtures")],-1)),e("p",It,[t[8]||(t[8]=m(" Extend your Playwright ",-1)),t[9]||(t[9]=e("code",{class:"text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded"},"test",-1)),t[10]||(t[10]=m(" with ",-1)),t[11]||(t[11]=e("code",{class:"text-xs bg-gray-100 dark:bg-gray-800 px-1 py-0.5 rounded"},"piwiFixtures",-1)),t[12]||(t[12]=m(" to automatically capture network timing, browser Web Vitals, console errors, ARIA snapshots on failure, and the locator snapshots that power locator healing. See the ",-1)),l(W,{to:"capture-fixtures","no-icon":"",class:"text-primary hover:underline"},{default:u(()=>[...t[7]||(t[7]=[m("capture fixtures guide",-1)])]),_:1}),t[13]||(t[13]=m(". ",-1))]),t[15]||(t[15]=e("p",{class:"text-xs font-semibold uppercase tracking-wide text-gray-400 dark:text-gray-500 mb-2"}," Option A — extend your existing fixtures ",-1)),l(j,{code:Nt,lang:"typescript",class:"mb-3"}),l(j,{code:Vt,lang:"typescript",class:"mb-4"}),t[16]||(t[16]=e("p",{class:"text-xs font-semibold uppercase tracking-wide text-gray-400 dark:text-gray-500 mb-2"}," Option B — one-line extend ",-1)),l(j,{code:At,lang:"typescript"})])])):f("",!0)])])]),_:1})}}}),Et=Object.assign(Dt,{__name:"GetStartedWizard"}),Ot={key:0,class:"p-6"},Bt={key:1,class:"p-6 space-y-8","aria-busy":"true"},Lt={class:"grid grid-cols-1 xl:grid-cols-3 gap-6 items-start"},Wt={class:"xl:col-span-2 space-y-3"},Ht={class:"space-y-3"},Mt={key:2,class:"p-6 space-y-8"},Kt={key:1,class:"flex flex-wrap items-center gap-x-8 gap-y-3 text-sm border border-gray-200 dark:border-gray-700 rounded-xl px-6 py-4 bg-gray-50 dark:bg-gray-900/50"},Gt={class:"flex items-center gap-1.5"},Yt={class:"font-semibold tabular-nums"},qt={class:"flex items-center gap-1.5"},Jt={class:"flex items-center gap-1.5"},Qt={key:0,class:"flex items-center gap-1.5"},Xt={class:"font-semibold tabular-nums"},Zt={class:"flex items-center gap-1.5"},es={class:"font-semibold tabular-nums"},ts={key:2,class:"grid grid-cols-1 xl:grid-cols-3 gap-6 items-start"},ss={class:"xl:col-span-2"},ns={class:"divide-y divide-gray-100 dark:divide-gray-800 text-sm"},rs={class:"flex-1 min-w-0"},as={class:"font-medium truncate"},os={class:"text-xs text-gray-400"},is={class:"text-right tabular-nums shrink-0"},ls={key:0,class:"text-xs text-gray-400"},us={key:3,class:"text-center py-12 text-gray-500 dark:text-gray-400"},ds={class:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4"},cs={class:"flex flex-col gap-3 h-full"},ms={class:"p-2 bg-primary/10 rounded-lg w-fit"},ps={class:"text-xs font-semibold uppercase tracking-wide text-primary mb-1"},gs={class:"font-semibold mb-1"},fs={class:"text-sm text-gray-600 dark:text-gray-400"},ae=6,Ys=Q({__name:"index",setup(D){Te({title:"Piwi Dashboard"});const{data:$,error:C,refresh:v,status:I}=re("/api/projects/overview",{lazy:!0,default:()=>[]},"$cnA6-rHww6"),{data:R,error:U,refresh:N}=re("/api/test-runs/recent",{lazy:!0},"$LEgADC56ri");Ke(()=>Promise.all([v(),N()]));const S=g(()=>I.value==="pending"&&!$.value?.length),_=g(()=>C.value||U.value);function E(){v(),N()}const o=Ge("piwi-home-filters",{default:()=>({environments:[],fullRunsOnly:!0}),encode:i=>JSON.stringify(i),decode:i=>{try{return i?JSON.parse(i):{environments:[],fullRunsOnly:!0}}catch{return{environments:[],fullRunsOnly:!0}}}}),x=g(()=>{const i=new Set;for(const a of R.value??[])a.environment&&i.add(a.environment);for(const a of $.value??[])for(const w of a.recentRuns)w.environment&&i.add(w.environment);return[...i].sort()});function h(i){return o.value.environments.length===0?!0:!!i&&o.value.environments.includes(i)}const t=g(()=>{let i=R.value??[];return o.value.fullRunsOnly&&(i=i.filter(a=>a.isFullRun)),o.value.environments.length>0&&(i=i.filter(a=>h(a.environment))),i}),T=g(()=>{let i=$.value??[];return o.value.environments.length>0&&(i=i.map(a=>({...a,recentRuns:a.recentRuns.filter(w=>h(w.environment))})).filter(a=>a.recentRuns.length>0)),i}),b=g(()=>{const i=T.value,a=i.length,w=i.filter(z=>z.tendency==="failing").length,H=i.filter(z=>z.tendency==="flaky").length;let O=0,G=0;for(const z of i)z.latestFullRun&&(O+=z.latestFullRun.passedTests,G+=z.latestFullRun.totalTests);const Y=G>0?Math.round(O/G*100):null,te=Date.now()-1440*60*1e3,B=t.value.filter(z=>new Date(z.startTime).getTime()>te).length;return{totalProjects:a,failingNow:w,flakyNow:H,avgPassRate:Y,runs24h:B}}),V=new Set(["running","initialising","finalizing"]),P=J(!1),j=g(()=>[...t.value].sort((a,w)=>{const H=V.has(a.status)?0:1,O=V.has(w.status)?0:1;return H!==O?H-O:new Date(w.startTime).getTime()-new Date(a.startTime).getTime()})),W=g(()=>P.value?j.value:j.value.slice(0,ae)),K=g(()=>j.value.length>ae),s=g(()=>t.value.length>0),k=g(()=>($.value?.length??0)>0),ee=g(()=>o.value.fullRunsOnly?(R.value??[]).filter(w=>h(w.environment)).filter(w=>!w.isFullRun).length:0);function ce(){o.value={...o.value,fullRunsOnly:!1}}function me(i){const a=M(i);return a>=90?"text-green-600 dark:text-green-400":a>=50?"text-yellow-600 dark:text-yellow-400":"text-red-600 dark:text-red-400"}function pe(i){return V.has(i)?"border-l-blue-400":i==="passed"?"border-l-green-500":i==="failed"||i==="timedout"||i==="interrupted"?"border-l-red-500":"border-l-gray-300 dark:border-l-gray-600"}const ge=[{icon:"i-lucide-radio",tagline:"Watch your CI run live",title:"Live streaming",description:"Follow test execution in real time. Investigate failures while the suite is still running — no waiting for the CI job to finish."},{icon:"i-lucide-layers",tagline:"10 failures, 2 root causes",title:"Failure clustering",description:"Tests sharing the same error are grouped automatically. Triage one cluster instead of scrolling through unrelated failures."},{icon:"i-lucide-brain-circuit",tagline:"Diagnosis grounded in your code",title:"AI diagnosis",description:"AI analyzes failure clusters using your actual SCM diff, trace files, and run history — not a generic prompt."},{icon:"i-lucide-archive",tagline:"Every run, forever",title:"Permanent test intelligence",description:"Test results, traces, and HTML reports stored permanently. Compare runs, track flakiness trends, and never lose a CI result again."}];return(i,a)=>{const w=ke,H=Re,O=tt,G=ze,Y=Z,te=Ie,B=Ue,z=Ne,q=X,fe=ht,ye=ie,xe=oe,_e=le,he=Et,ve=de,be=Pe;return r(),y(be,{id:"home"},{header:u(()=>[l(G,null,Fe({leading:u(()=>[l(w),l(H,{items:[{label:"Home",icon:"i-lucide-house",to:"/"}]})]),_:2},[n(k)?{name:"trailing",fn:u(()=>[l(O,{modelValue:n(o),"onUpdate:modelValue":a[0]||(a[0]=p=>se(o)?o.value=p:null),"available-environments":n(x)},null,8,["modelValue","available-environments"])]),key:"0"}:void 0]),1024)]),body:u(()=>[n(_)?(r(),d("div",Ot,[l(te,{text:`Couldn't load the dashboard: ${n(Oe)(n(_))}`},{action:u(()=>[l(Y,{size:"sm",color:"neutral",variant:"outline",icon:"i-lucide-refresh-cw",onClick:E},{default:u(()=>[...a[3]||(a[3]=[m(" Retry ",-1)])]),_:1})]),_:1},8,["text"])])):n(S)?(r(),d("div",Bt,[a[4]||(a[4]=e("span",{class:"sr-only",role:"status"},"Loading dashboard…",-1)),l(B,{class:"h-14 w-full rounded-xl"}),e("div",Lt,[e("div",Wt,[l(B,{class:"h-7 w-40"}),l(B,{class:"h-72 w-full rounded-lg"})]),e("div",Ht,[l(B,{class:"h-7 w-32"}),(r(),d(A,null,L(5,p=>l(B,{key:p,class:"h-12 w-full rounded-lg"})),64))])])])):(r(),d("div",Mt,[n(ee)>0?(r(),y(z,{key:0,icon:"i-lucide-info",color:"primary",variant:"subtle",title:n(ee)===1?"1 partial run is hidden":`${n(ee)} partial runs are hidden`,description:"The “Full runs only” filter hides runs that only cover part of the suite (e.g. a single spec or --grep).",actions:[{label:"Show them",color:"primary",variant:"solid",size:"xs",onClick:ce}]},null,8,["title","actions"])):f("",!0),n(k)?(r(),d("div",Kt,[e("div",Gt,[l(q,{name:"i-lucide-folder",class:"size-4 text-primary shrink-0"}),e("span",Yt,c(n(b).totalProjects),1),a[5]||(a[5]=e("span",{class:"text-gray-500"},"projects",-1))]),e("div",qt,[e("div",{class:F(["w-2 h-2 rounded-full shrink-0",n(b).failingNow>0?"bg-red-500":"bg-green-500"])},null,2),e("span",{class:F(["font-semibold tabular-nums",n(b).failingNow>0?"text-red-600 dark:text-red-400":""])},c(n(b).failingNow),3),a[6]||(a[6]=e("span",{class:"text-gray-500"},"failing now",-1))]),e("div",Jt,[e("div",{class:F(["w-2 h-2 rounded-full shrink-0",n(b).flakyNow>0?"bg-amber-400":"bg-gray-300 dark:bg-gray-600"])},null,2),e("span",{class:F(["font-semibold tabular-nums",n(b).flakyNow>0?"text-amber-600 dark:text-amber-400":""])},c(n(b).flakyNow),3),a[7]||(a[7]=e("span",{class:"text-gray-500"},"flaky",-1))]),n(b).avgPassRate!==null?(r(),d("div",Qt,[l(q,{name:"i-lucide-check-circle",class:"size-4 text-green-500 shrink-0"}),e("span",Xt,c(n(b).avgPassRate)+"%",1),a[8]||(a[8]=e("span",{class:"text-gray-500"},"avg pass rate",-1))])):f("",!0),e("div",Zt,[l(q,{name:"i-lucide-play-circle",class:"size-4 text-primary shrink-0"}),e("span",es,c(n(b).runs24h),1),a[9]||(a[9]=e("span",{class:"text-gray-500"},"runs today",-1))])])):f("",!0),n(k)||n(s)?(r(),d("div",ts,[e("div",ss,[n(k)?(r(),y(fe,{key:0,projects:n(T)},null,8,["projects"])):f("",!0)]),n(s)?(r(),y(_e,{key:0,icon:"i-lucide-activity",title:"Recent activity"},{actions:u(()=>[n(K)&&!n(P)?(r(),y(Y,{key:0,variant:"ghost",size:"sm","trailing-icon":"i-lucide-chevron-down",onClick:a[1]||(a[1]=p=>P.value=!0)},{default:u(()=>[m(" Show all "+c(n(j).length),1)]),_:1})):n(P)?(r(),y(Y,{key:1,variant:"ghost",size:"sm","trailing-icon":"i-lucide-chevron-up",onClick:a[2]||(a[2]=p=>P.value=!1)},{default:u(()=>[...a[10]||(a[10]=[m(" Show less ",-1)])]),_:1})):f("",!0)]),default:u(()=>[e("div",ns,[(r(!0),d(A,null,L(n(W),p=>(r(),y(xe,{key:p.id,to:`/test-runs/${p.id}`,class:F(["flex items-center gap-3 py-3 pl-3 border-l-2 hover:bg-gray-50 dark:hover:bg-gray-800/60 rounded-r transition-colors",pe(p.status)])},{default:u(()=>[l(ye,{status:p.status},null,8,["status"]),e("div",rs,[e("div",as,c(p.projectLabel||p.projectName),1),e("div",os,"Run #"+c(p.id)+" · "+c(("formatRelativeTime"in i?i.formatRelativeTime:n(ne))(p.startTime)),1)]),e("div",is,[e("div",{class:F(me(p))},c(("passRate"in i?i.passRate:n(M))(p))+"%",3),p.duration?(r(),d("div",ls,c(("formatDuration"in i?i.formatDuration:n(ue))(p.duration)),1)):f("",!0)])]),_:2},1032,["to","class"]))),128))])]),_:1})):f("",!0)])):f("",!0),n(k)&&!n(s)&&n(T).length===0?(r(),d("div",us,[l(q,{name:"i-lucide-filter-x",class:"size-8 mx-auto mb-2 opacity-40"}),a[11]||(a[11]=e("p",null,"No runs match the current filters.",-1))])):f("",!0),n(k)?f("",!0):(r(),d(A,{key:4},[l(he),e("div",ds,[(r(),d(A,null,L(ge,p=>l(ve,{key:p.title,class:"flex flex-col"},{default:u(()=>[e("div",cs,[e("div",ms,[l(q,{name:p.icon,class:"size-5 text-primary"},null,8,["name"])]),e("div",null,[e("p",ps,c(p.tagline),1),e("h3",gs,c(p.title),1),e("p",fs,c(p.description),1)])])]),_:2},1024)),64))])],64))]))]),_:1})}}});export{Ys as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as z,X as ke,W as me,S as P,o as f,f as x,g as h,T as D,k as e,V as K,Y as le,az as se,r as B,B as he,C as _e,aL as Ve,j as T,U as O,q as V,aB as ue,h as N,G as Be,aM as Te,ay as Se,Q as $e,bS as Le,bj as Z,b6 as ie,bT as Re,at as Ce,a7 as je,bl as Ge,bo as Ue,b0 as Je,bU as qe,af as Ae,aD as re,c as $,F as j,bH as Qe,bV as Xe,a0 as Ye,a1 as Ze,a3 as et,a4 as Ee,a5 as tt,b3 as Me,aH as at,bu as nt,v as W,p as q,aG as Q,m as ce,t as ee,ae as oe,s as lt,aJ as fe,b1 as pe,E as it,b2 as te,i as X,y as ae,b4 as ve,bx as Oe,a6 as ot,bz as rt,L as st,a9 as ut,K as dt}from"./DHltYerF.js";import{i as ct}from"./CPLJeOCb.js";import{_ as ft}from"./D6PUPmRC.js";import{S as pt}from"./C8OCrfDP.js";import{u as vt}from"./Cnapl7lZ.js";const[ze,gt]=le("CollapsibleRoot");var ht=z({__name:"CollapsibleRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:open"],setup(s,{expose:r,emit:l}){const n=s,t=ke(n,"open",l,{defaultValue:n.defaultOpen,passive:n.open===void 0}),{disabled:u,unmountOnHide:d}=me(n);return gt({contentId:"",disabled:u,open:t,unmountOnHide:d,onOpenToggle:()=>{u.value||(t.value=!t.value)}}),r({open:t}),P(),(c,_)=>(f(),x(e(K),{as:c.as,"as-child":n.asChild,"data-state":e(t)?"open":"closed","data-disabled":e(u)?"":void 0},{default:h(()=>[D(c.$slots,"default",{open:e(t)})]),_:3},8,["as","as-child","data-state","data-disabled"]))}}),bt=ht,yt=z({inheritAttrs:!1,__name:"CollapsibleContent",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["contentFound"],setup(s,{emit:r}){const l=s,n=r,i=ze();i.contentId||=se(void 0,"reka-collapsible-content");const t=B(),{forwardRef:u,currentElement:d}=P(),c=B(0),_=B(0),I=N(()=>i.open.value),y=B(I.value),M=B();he(()=>[I.value,t.value?.present],async()=>{await Be();const p=d.value;if(!p)return;M.value=M.value||{transitionDuration:p.style.transitionDuration,animationName:p.style.animationName},p.style.transitionDuration="0s",p.style.animationName="none";const C=p.getBoundingClientRect();_.value=C.height,c.value=C.width,y.value||(p.style.transitionDuration=M.value.transitionDuration,p.style.animationName=M.value.animationName)},{immediate:!0});const L=N(()=>y.value&&i.open.value);return _e(()=>{requestAnimationFrame(()=>{y.value=!1})}),Ve(d,"beforematch",p=>{requestAnimationFrame(()=>{i.onOpenToggle(),n("contentFound")})}),(p,C)=>(f(),x(e(ue),{ref_key:"presentRef",ref:t,present:p.forceMount||e(i).open.value,"force-mount":!0},{default:h(({present:o})=>[T(e(K),O(p.$attrs,{id:e(i).contentId,ref:e(u),"as-child":l.asChild,as:p.as,hidden:o?void 0:e(i).unmountOnHide.value?"":"until-found","data-state":L.value?void 0:e(i).open.value?"open":"closed","data-disabled":e(i).disabled?.value?"":void 0,style:{"--reka-collapsible-content-height":`${_.value}px`,"--reka-collapsible-content-width":`${c.value}px`}}),{default:h(()=>[!e(i).unmountOnHide.value||o?D(p.$slots,"default",{key:0}):V("v-if",!0)]),_:2},1040,["id","as-child","as","hidden","data-state","data-disabled","style"])]),_:3},8,["present"]))}}),kt=yt,mt=z({__name:"CollapsibleTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(s){const r=s;P();const l=ze();return(n,i)=>(f(),x(e(K),{type:n.as==="button"?"button":void 0,as:n.as,"as-child":r.asChild,"aria-controls":e(l).contentId,"aria-expanded":e(l).open.value,"data-state":e(l).open.value?"open":"closed","data-disabled":e(l).disabled?.value?"":void 0,disabled:e(l).disabled?.value,onClick:e(l).onOpenToggle},{default:h(()=>[D(n.$slots,"default")]),_:3},8,["type","as","as-child","aria-controls","aria-expanded","data-state","data-disabled","disabled","onClick"]))}}),_t=mt;function Lt({type:s,defaultValue:r,modelValue:l}){const n=l||r;return l!==void 0||r!==void 0?Array.isArray(n)?"multiple":"single":s??"single"}function Ct({type:s,defaultValue:r,modelValue:l}){return s||Lt({type:s,defaultValue:r,modelValue:l})}function xt({type:s,defaultValue:r}){return r!==void 0?r:s==="single"?void 0:[]}function wt(s,r){const l=N(()=>Ct(s)),n=ke(s,"modelValue",r,{defaultValue:xt(s),passive:s.modelValue===void 0,deep:!0});function i(u){if(l.value==="single")n.value=Te(u,n.value)?void 0:u;else{const d=Array.isArray(n.value)?[...n.value||[]]:[n.value].filter(Boolean);if(ct(d,u)){const c=d.findIndex(_=>Te(_,u));d.splice(c,1)}else d.push(u);n.value=d}}const t=N(()=>l.value==="single");return{modelValue:n,changeModelValue:i,isSingle:t}}const[xe,It]=le("AccordionRoot");var Tt=z({__name:"AccordionRoot",props:{collapsible:{type:Boolean,required:!1,default:!1},disabled:{type:Boolean,required:!1,default:!1},dir:{type:String,required:!1},orientation:{type:String,required:!1,default:"vertical"},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},type:{type:String,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1}},emits:["update:modelValue"],setup(s,{emit:r}){const l=s,n=r,{dir:i,disabled:t,unmountOnHide:u}=me(l),d=Se(i),{modelValue:c,changeModelValue:_,isSingle:I}=wt(l,n),{forwardRef:y,currentElement:M}=P();return It({disabled:t,direction:d,orientation:l.orientation,parentElement:M,isSingle:I,collapsible:l.collapsible,modelValue:c,changeModelValue:_,unmountOnHide:u}),(L,p)=>(f(),x(e(K),{ref:e(y),"as-child":L.asChild,as:L.as},{default:h(()=>[D(L.$slots,"default",{modelValue:e(c)})]),_:3},8,["as-child","as"]))}}),De=Tt,be=(function(s){return s.Open="open",s.Closed="closed",s})(be||{});const[Pe,qt]=le("AccordionItem");var Et=z({__name:"AccordionItem",props:{disabled:{type:Boolean,required:!1},value:{type:String,required:!0},unmountOnHide:{type:Boolean,required:!1,default:void 0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(s,{expose:r}){const l=s,n=xe(),i=N(()=>n.isSingle.value?l.value===n.modelValue.value:Array.isArray(n.modelValue.value)&&n.modelValue.value.includes(l.value)),t=N(()=>n.disabled.value||l.disabled),u=N(()=>t.value?"":void 0),d=N(()=>i.value?be.Open:be.Closed);r({open:i,dataDisabled:u});const{currentRef:c,currentElement:_}=P();qt({open:i,dataState:d,disabled:t,dataDisabled:u,triggerId:"",currentRef:c,currentElement:_,value:N(()=>l.value)});function I(y){const M=y.target;if(Array.from(n.parentElement.value?.querySelectorAll("[data-reka-collection-item]")??[]).findIndex(C=>C===M)===-1)return null;Le(y,M,n.parentElement.value,{arrowKeyOptions:n.orientation,dir:n.direction.value,focus:!0})}return(y,M)=>(f(),x(e(bt),{"data-orientation":e(n).orientation,"data-disabled":u.value,"data-state":d.value,disabled:t.value,open:i.value,as:l.as,"as-child":l.asChild,"unmount-on-hide":l.unmountOnHide??e(n).unmountOnHide.value,onKeydown:$e(I,["up","down","left","right","home","end"])},{default:h(()=>[D(y.$slots,"default",{open:i.value})]),_:3},8,["data-orientation","data-disabled","data-state","disabled","open","as","as-child","unmount-on-hide"]))}}),Mt=Et,Ot=z({__name:"AccordionContent",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(s){const r=s,l=xe(),n=Pe();return P(),(i,t)=>(f(),x(e(kt),{role:"region","as-child":r.asChild,as:i.as,"force-mount":r.forceMount,"aria-labelledby":e(n).triggerId,"data-state":e(n).dataState.value,"data-disabled":e(n).dataDisabled.value,"data-orientation":e(l).orientation,style:{"--reka-accordion-content-width":"var(--reka-collapsible-content-width)","--reka-accordion-content-height":"var(--reka-collapsible-content-height)"},onContentFound:t[0]||(t[0]=u=>e(l).changeModelValue(e(n).value.value))},{default:h(()=>[D(i.$slots,"default")]),_:3},8,["as-child","as","force-mount","aria-labelledby","data-state","data-disabled","data-orientation"]))}}),Dt=Ot,Nt=z({__name:"AccordionTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(s){const r=s,l=xe(),n=Pe();n.triggerId||=se(void 0,"reka-accordion-trigger");function i(){const t=l.isSingle.value&&n.open.value&&!l.collapsible;n.disabled.value||t||l.changeModelValue(n.value.value)}return(t,u)=>(f(),x(e(_t),{id:e(n).triggerId,ref:e(n).currentRef,"data-reka-collection-item":"",as:r.as,"as-child":r.asChild,"aria-disabled":e(n).disabled.value||void 0,"aria-expanded":e(n).open.value||!1,"data-disabled":e(n).dataDisabled.value,"data-orientation":e(l).orientation,"data-state":e(n).dataState.value,disabled:e(n).disabled.value,onClick:i},{default:h(()=>[D(t.$slots,"default")]),_:3},8,["id","as","as-child","aria-disabled","aria-expanded","data-disabled","data-orientation","data-state","disabled"]))}}),Ne=Nt;function de(s){return s?"open":"closed"}function Ke(s,r){return`${s}-trigger-${r}`}function we(s,r){return`${s}-content-${r}`}const Vt="navigationMenu.linkSelect",ne="navigationMenu.rootContentDismiss";function ye(s){const r=[],l=document.createTreeWalker(s,NodeFilter.SHOW_ELEMENT,{acceptNode:n=>{const i=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||i?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;l.nextNode();)r.push(l.currentNode);return r}function Fe(s){const r=Z();return s.some(l=>l===r?!0:(l.focus(),Z()!==r))}function Bt(s){return s.forEach(r=>{r.dataset.tabindex=r.getAttribute("tabindex")||"",r.setAttribute("tabindex","-1")}),()=>{s.forEach(r=>{const l=r.dataset.tabindex;r.setAttribute("tabindex",l)})}}function He(s){return r=>r.pointerType==="mouse"?s(r):void 0}const[Y,St]=le(["NavigationMenuRoot","NavigationMenuSub"],"NavigationMenuContext");var $t=z({__name:"NavigationMenuRoot",props:{modelValue:{type:String,required:!1,default:void 0},defaultValue:{type:String,required:!1},dir:{type:String,required:!1},orientation:{type:String,required:!1,default:"horizontal"},delayDuration:{type:Number,required:!1,default:200},skipDelayDuration:{type:Number,required:!1,default:300},disableClickTrigger:{type:Boolean,required:!1,default:!1},disableHoverTrigger:{type:Boolean,required:!1,default:!1},disablePointerLeaveClose:{type:Boolean,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"nav"}},emits:["update:modelValue"],setup(s,{emit:r}){const l=s,i=ke(l,"modelValue",r,{defaultValue:l.defaultValue??"",passive:l.modelValue===void 0}),t=B(""),{forwardRef:u,currentElement:d}=P(),c=B(),_=B(),I=B(),{getItems:y,CollectionSlot:M}=ie({key:"NavigationMenu",isProvider:!0}),{delayDuration:L,skipDelayDuration:p,dir:C,disableClickTrigger:o,disableHoverTrigger:R,unmountOnHide:g}=me(l),b=Se(C),E=Re(!1,p),v=B(!1),w=N(()=>i.value!==""||E.value?150:L.value),a=je(k=>{if(typeof k=="string"){if(k===""&&v.value){v.value=!1;return}t.value=i.value,i.value=k,k===""&&(E.value=!0)}},w);Ce(()=>{if(!i.value)return;const k=y().map(S=>S.ref);I.value=k.find(S=>S.id.includes(i.value))}),Ve(d,ne,m),St({isRootMenu:!0,modelValue:i,previousValue:t,baseId:se(void 0,"reka-navigation-menu"),disableClickTrigger:o,disableHoverTrigger:R,dir:b,unmountOnHide:g,orientation:l.orientation,rootNavigationMenu:d,indicatorTrack:c,activeTrigger:I,onIndicatorTrackChange:k=>{c.value=k},viewport:_,onViewportChange:k=>{_.value=k},onTriggerEnter:k=>{i.value!==""?(v.value=!0,t.value=i.value,i.value=k):a(k)},onTriggerLeave:()=>{v.value=!1,a("")},onContentEnter:()=>{a()},onContentLeave:()=>{l.disablePointerLeaveClose||(v.value=!1,a(""))},onItemSelect:k=>{t.value=i.value,i.value=k},onItemDismiss:m});function m(){t.value=i.value,i.value=""}return(k,S)=>(f(),x(e(M),null,{default:h(()=>[T(e(K),{ref:e(u),as:k.as,"as-child":k.asChild,"data-orientation":k.orientation,dir:e(b),"data-reka-navigation-menu":""},{default:h(()=>[D(k.$slots,"default",{modelValue:e(i)})]),_:3},8,["as","as-child","data-orientation","dir"])]),_:3}))}}),Rt=$t;const[Ie,At]=le("NavigationMenuItem");var zt=z({__name:"NavigationMenuItem",props:{value:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"li"}},setup(s){const r=s;P();const{getItems:l}=ie({key:"NavigationMenu"}),n=Y(),i=se(r.value),t=B(),u=B(),d=we(n.baseId,i);let c=()=>({});const _=B(!1);async function I(p="start"){const C=document.getElementById(d);if(C){c();const o=ye(C);o.length&&Fe(p==="start"?o:o.reverse())}}function y(){const p=document.getElementById(d);if(p){const C=ye(p);C.length&&(c=Bt(C))}}At({value:i,contentId:d,triggerRef:t,focusProxyRef:u,wasEscapeCloseRef:_,onEntryKeyDown:I,onFocusProxyEnter:I,onContentFocusOutside:y,onRootContentClose:y});function M(){n.onItemDismiss(),t.value?.focus()}function L(p){const C=Z();if(p.keyCode===32||p.key==="Enter")if(n.modelValue.value===i){M(),p.preventDefault();return}else{p.target.click(),p.preventDefault();return}const o=l().filter(g=>g.ref.parentElement?.hasAttribute("data-menu-item")).map(g=>g.ref);if(!o.includes(C))return;const R=Le(p,C,void 0,{itemsArray:o,loop:!1});R&&R?.focus(),p.preventDefault(),p.stopPropagation()}return(p,C)=>(f(),x(e(K),{"as-child":p.asChild,as:p.as,"data-menu-item":"",onKeydown:$e(L,["up","down","left","right","home","end","space"])},{default:h(()=>[D(p.$slots,"default")]),_:3},8,["as-child","as"]))}}),Pt=zt,Kt=z({__name:"NavigationMenuContentImpl",props:{disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(s,{emit:r}){const l=s,n=r,{getItems:i}=ie({key:"NavigationMenu"}),{forwardRef:t,currentElement:u}=P(),d=Y(),c=Ie(),_=Ke(d.baseId,c.value),I=we(d.baseId,c.value),y=B(null),M=N(()=>{const g=i().map(m=>m.ref.id.split("trigger-")[1]);d.dir.value==="rtl"&&g.reverse();const b=g.indexOf(d.modelValue.value),E=g.indexOf(d.previousValue.value),v=c.value===d.modelValue.value,w=E===g.indexOf(c.value);if(!v&&!w)return y.value;const a=(()=>{if(b!==E){if(v&&E!==-1)return b>E?"from-end":"from-start";if(w&&b!==-1)return b>E?"to-start":"to-end"}return null})();return y.value=a,a});function L(g){if(n("focusOutside",g),n("interactOutside",g),g.detail.originalEvent.target.hasAttribute("data-navigation-menu-trigger")&&g.preventDefault(),!g.defaultPrevented){c.onContentFocusOutside();const E=g.target;d.rootNavigationMenu?.value?.contains(E)&&g.preventDefault()}}function p(g){if(n("pointerDownOutside",g),!g.defaultPrevented){const b=g.target,E=i().some(w=>w.ref.contains(b)),v=d.isRootMenu&&d.viewport.value?.contains(b);(E||v||!d.isRootMenu)&&g.preventDefault()}}Ce(g=>{const b=u.value;if(d.isRootMenu&&b){const E=()=>{d.onItemDismiss(),c.onRootContentClose(),b.contains(Z())&&c.triggerRef.value?.focus()};b.addEventListener(ne,E),g(()=>b.removeEventListener(ne,E))}});function C(g){n("escapeKeyDown",g),g.defaultPrevented||(d.onItemDismiss(),c.triggerRef?.value?.focus(),c.wasEscapeCloseRef.value=!0)}function o(g){if(g.target.closest("[data-reka-navigation-menu]")!==d.rootNavigationMenu.value)return;const b=g.altKey||g.ctrlKey||g.metaKey,E=g.key==="Tab"&&!b,v=ye(g.currentTarget);if(E){const a=Z(),m=v.findIndex(A=>A===a),S=g.shiftKey?v.slice(0,m).reverse():v.slice(m+1,v.length);if(Fe(S))g.preventDefault();else{c.focusProxyRef.value?.focus();return}}Le(g,Z(),void 0,{itemsArray:v,loop:!1,enableIgnoredElement:!0})?.focus()}function R(){if(d.modelValue.value!==c.value)return;const g=new Event(ne,{bubbles:!0,cancelable:!0});u.value?.dispatchEvent(g)}return(g,b)=>(f(),x(e(Ge),O({id:e(I),ref:e(t),"aria-labelledby":e(_),"data-motion":M.value,"data-state":e(de)(e(d).modelValue.value===e(c).value),"data-orientation":e(d).orientation},l,{onKeydown:o,onEscapeKeyDown:C,onPointerDownOutside:p,onFocusOutside:L,onDismiss:R}),{default:h(()=>[D(g.$slots,"default")]),_:3},16,["id","aria-labelledby","data-motion","data-state","data-orientation"]))}}),Ft=Kt,Ht=z({inheritAttrs:!1,__name:"NavigationMenuContent",props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(s,{emit:r}){const l=s,n=r,i=Ue(Je(l,"forceMount"),n),{forwardRef:t}=P(),u=Y(),d=Ie(),c=N(()=>d.value===u.modelValue.value),_=N(()=>u.viewport.value&&!u.modelValue.value&&u.previousValue.value?u.previousValue.value===d.value:!1);return(I,y)=>(f(),x(Ae,{to:e(qe)&&e(u).viewport.value?e(u).viewport.value:"body",disabled:e(qe)&&e(u).viewport.value?!e(u).viewport.value:!0},[T(e(ue),{present:I.forceMount||c.value||_.value,"force-mount":!e(u).unmountOnHide.value},{default:h(({present:M})=>[T(Ft,O({ref:e(t),"data-state":e(de)(c.value),style:{pointerEvents:!c.value&&e(u).isRootMenu?"none":void 0}},{...I.$attrs,...e(i)},{hidden:!M,onPointerenter:y[0]||(y[0]=L=>e(u).onContentEnter(e(d).value)),onPointerleave:y[1]||(y[1]=L=>e(He)(()=>e(u).onContentLeave())(L)),onPointerDownOutside:y[2]||(y[2]=L=>n("pointerDownOutside",L)),onFocusOutside:y[3]||(y[3]=L=>n("focusOutside",L)),onInteractOutside:y[4]||(y[4]=L=>n("interactOutside",L))}),{default:h(()=>[D(I.$slots,"default")]),_:2},1040,["data-state","style","hidden"])]),_:3},8,["present","force-mount"])],8,["to","disabled"]))}}),Wt=Ht,jt=z({inheritAttrs:!1,__name:"NavigationMenuIndicator",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(s){const r=s,{forwardRef:l}=P(),n=Y(),i=B(),t=N(()=>n.orientation==="horizontal"),u=N(()=>!!n.modelValue.value),{activeTrigger:d}=n;function c(){d.value&&(i.value={size:t.value?d.value.offsetWidth:d.value.offsetHeight,position:t.value?d.value.offsetLeft:d.value.offsetTop})}return Ce(()=>{n.modelValue.value&&c()}),re(d,c),re(n.indicatorTrack,c),(_,I)=>e(n).indicatorTrack.value?(f(),x(Ae,{key:0,to:e(n).indicatorTrack.value},[T(e(ue),{present:_.forceMount||u.value},{default:h(()=>[T(e(K),O({ref:e(l),"aria-hidden":"true","data-state":u.value?"visible":"hidden","data-orientation":e(n).orientation,"as-child":r.asChild,as:_.as,style:{...i.value?{"--reka-navigation-menu-indicator-size":`${i.value.size}px`,"--reka-navigation-menu-indicator-position":`${i.value.position}px`}:{}}},_.$attrs),{default:h(()=>[D(_.$slots,"default")]),_:3},16,["data-state","data-orientation","as-child","as","style"])]),_:3},8,["present"])],8,["to"])):V("v-if",!0)}}),Gt=jt,Ut=z({__name:"NavigationMenuLink",props:{active:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"a"}},emits:["select"],setup(s,{emit:r}){const l=s,n=r,{CollectionItem:i}=ie({key:"NavigationMenu"});P();async function t(u){const d=new CustomEvent(Vt,{bubbles:!0,cancelable:!0,detail:{originalEvent:u}});if(n("select",d),!d.defaultPrevented&&!u.metaKey){const c=new CustomEvent(ne,{bubbles:!0,cancelable:!0});u.target?.dispatchEvent(c)}}return(u,d)=>(f(),x(e(i),null,{default:h(()=>[T(e(K),{as:u.as,"data-active":u.active?"":void 0,"aria-current":u.active?"page":void 0,"as-child":l.asChild,onClick:t},{default:h(()=>[D(u.$slots,"default")]),_:3},8,["as","data-active","aria-current","as-child"])]),_:3}))}}),ge=Ut,Jt=z({inheritAttrs:!1,__name:"NavigationMenuList",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"ul"}},setup(s){const r=s,l=Y(),{forwardRef:n,currentElement:i}=P();return _e(()=>{l.onIndicatorTrackChange(i.value)}),(t,u)=>(f(),x(e(K),{ref:e(n),style:{position:"relative"}},{default:h(()=>[T(e(K),O(t.$attrs,{"as-child":r.asChild,as:t.as,"data-orientation":e(l).orientation}),{default:h(()=>[D(t.$slots,"default")]),_:3},16,["as-child","as","data-orientation"])]),_:3},512))}}),Qt=Jt;const Xt=["aria-owns"];var Yt=z({inheritAttrs:!1,__name:"NavigationMenuTrigger",props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(s){const r=s,l=Y(),n=Ie(),{CollectionItem:i}=ie({key:"NavigationMenu"}),{forwardRef:t,currentElement:u}=P(),d=B(""),c=B(""),_=Re(!1,300),I=B(!1),y=N(()=>n.value===l.modelValue.value);_e(()=>{n.triggerRef=u,d.value=Ke(l.baseId,n.value),c.value=we(l.baseId,n.value)});function M(){l.disableHoverTrigger.value||(I.value=!1,n.wasEscapeCloseRef.value=!1)}function L(b){if(!l.disableHoverTrigger.value&&b.pointerType==="mouse"){if(r.disabled||I.value||n.wasEscapeCloseRef.value||_.value)return;l.onTriggerEnter(n.value),_.value=!0}}function p(b){if(!l.disableHoverTrigger.value&&b.pointerType==="mouse"){if(r.disabled)return;l.onTriggerLeave(),_.value=!1}}function C(b){(!("pointerType"in b)||b.pointerType==="mouse")&&l.disableClickTrigger.value||_.value||(y.value?l.onItemSelect(""):l.onItemSelect(n.value),I.value=y.value)}function o(b){const v={horizontal:"ArrowDown",vertical:l.dir.value==="rtl"?"ArrowLeft":"ArrowRight"}[l.orientation];y.value&&b.key===v&&(n.onEntryKeyDown(),b.preventDefault(),b.stopPropagation())}function R(b){b&&(n.focusProxyRef.value=Xe(b))}function g(b){const E=document.getElementById(n.contentId),v=b.relatedTarget,w=v===u.value,a=E?.contains(v);(w||!a)&&n.onFocusProxyEnter(w?"start":"end")}return(b,E)=>(f(),$(j,null,[T(e(i),null,{default:h(()=>[T(e(K),O({id:d.value,ref:e(t),disabled:b.disabled,"data-disabled":b.disabled?"":void 0,"data-state":e(de)(y.value),"data-navigation-menu-trigger":"","aria-expanded":y.value,"aria-controls":c.value,"as-child":r.asChild,as:b.as},b.$attrs,{onPointerenter:M,onPointermove:L,onPointerleave:p,onClick:C,onKeydown:o}),{default:h(()=>[D(b.$slots,"default")]),_:3},16,["id","disabled","data-disabled","data-state","aria-expanded","aria-controls","as-child","as"])]),_:3}),y.value?(f(),$(j,{key:0},[T(e(Qe),{ref:R,"aria-hidden":"true",tabindex:0,onFocus:g}),e(l).viewport?(f(),$("span",{key:0,"aria-owns":c.value},null,8,Xt)):V("v-if",!0)],64)):V("v-if",!0)],64))}}),Zt=Yt,ea=z({inheritAttrs:!1,__name:"NavigationMenuViewport",props:{forceMount:{type:Boolean,required:!1},align:{type:String,required:!1,default:"center"},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(s){const r=s,{forwardRef:l,currentElement:n}=P(),i=Y(),{activeTrigger:t,rootNavigationMenu:u,modelValue:d}=i,c=B(),_=B(),I=N(()=>!!i.modelValue.value);he(n,()=>{i.onViewportChange(n.value)});const y=B();he([d,I],()=>{Be(()=>{n.value&&requestAnimationFrame(()=>{const L=n.value?.querySelector("[data-state=open]");y.value=L})})},{immediate:!0});function M(){if(y.value&&t.value&&u.value){const L=document.documentElement.offsetWidth,p=document.documentElement.offsetHeight,C=u.value.getBoundingClientRect(),o=t.value.getBoundingClientRect(),{offsetWidth:R,offsetHeight:g}=y.value,b=o.left-C.left,E=o.top-C.top;let v=null,w=null;switch(r.align){case"start":v=b,w=E;break;case"end":v=b-R+o.width,w=E-g+o.height;break;default:v=b-R/2+o.width/2,w=E-g/2+o.height/2}const a=10;v+C.left<a&&(v=a-C.left);const m=v+C.left+R;m>L-a&&(v-=m-L+a,v<a-C.left&&(v=a-C.left)),w+C.top<a&&(w=a-C.top);const k=w+C.top+g;k>p-a&&(w-=k-p+a,w<a-C.top&&(w=a-C.top)),v=Math.round(v),w=Math.round(w),_.value={left:v,top:w}}}return re(y,()=>{y.value&&(c.value={width:y.value.offsetWidth,height:y.value.offsetHeight},M())}),re([globalThis.document?.body,u],()=>{M()}),(L,p)=>(f(),x(e(ue),{present:L.forceMount||I.value,"force-mount":!e(i).unmountOnHide.value,onAfterLeave:p[2]||(p[2]=()=>{c.value=void 0,_.value=void 0})},{default:h(({present:C})=>[T(e(K),O(L.$attrs,{ref:e(l),as:L.as,"as-child":L.asChild,"data-state":e(de)(I.value),"data-orientation":e(i).orientation,style:{pointerEvents:!I.value&&e(i).isRootMenu?"none":void 0,"--reka-navigation-menu-viewport-width":c.value?`${c.value?.width}px`:void 0,"--reka-navigation-menu-viewport-height":c.value?`${c.value?.height}px`:void 0,"--reka-navigation-menu-viewport-left":_.value?`${_.value?.left}px`:void 0,"--reka-navigation-menu-viewport-top":_.value?`${_.value?.top}px`:void 0},hidden:!C,onPointerenter:p[0]||(p[0]=o=>e(i).onContentEnter(e(i).modelValue.value)),onPointerleave:p[1]||(p[1]=o=>e(He)(()=>e(i).onContentLeave())(o))}),{default:h(()=>[D(L.$slots,"default")]),_:2},1040,["as","as-child","data-state","data-orientation","style","hidden"])]),_:3},8,["present","force-mount"]))}}),ta=ea;const aa={slots:{root:"relative flex gap-1.5 [&>div]:min-w-0",list:"isolate min-w-0",label:"w-full flex items-center gap-1.5 font-semibold text-xs/5 text-highlighted px-2.5 py-1.5",item:"min-w-0",link:"group relative w-full flex items-center gap-1.5 font-medium text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3",linkLeadingIcon:"shrink-0 size-5",linkLeadingAvatar:"shrink-0",linkLeadingAvatarSize:"2xs",linkLeadingChipSize:"sm",linkTrailing:"group ms-auto inline-flex gap-1.5 items-center",linkTrailingBadge:"shrink-0",linkTrailingBadgeSize:"sm",linkTrailingIcon:"size-5 transform shrink-0 group-data-[state=open]:rotate-180 transition-transform duration-200",linkLabel:"truncate",linkLabelExternalIcon:"inline-block size-3 align-top text-dimmed",childList:"isolate",childLabel:"text-xs text-highlighted",childItem:"",childLink:"group relative size-full flex items-start text-start text-sm before:absolute before:z-[-1] before:rounded-md focus:outline-none focus-visible:outline-none focus-visible:before:outline-3",childLinkWrapper:"min-w-0",childLinkIcon:"size-5 shrink-0",childLinkLabel:"truncate",childLinkLabelExternalIcon:"inline-block size-3 align-top text-dimmed",childLinkDescription:"text-muted",separator:"px-2 h-px bg-border",viewportWrapper:"absolute top-full start-0 flex w-full",viewport:"relative overflow-hidden bg-default shadow-lg rounded-md ring ring-default h-(--reka-navigation-menu-viewport-height) w-full transition-[width,height,left,right] duration-200 origin-[top_center] data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] z-1",content:"",indicator:"absolute left-0 data-[state=visible]:animate-[fade-in_100ms_ease-out] data-[state=hidden]:animate-[fade-out_100ms_ease-in] data-[state=hidden]:opacity-0 bottom-0 z-2 w-(--reka-navigation-menu-indicator-size) translate-x-(--reka-navigation-menu-indicator-position) flex h-2.5 items-end justify-center overflow-hidden transition-[translate,width] duration-200",arrow:"relative top-[50%] size-2.5 rotate-45 border border-default bg-default z-1 rounded-xs"},variants:{color:{primary:{link:"before:outline-primary/25",childLink:"before:outline-primary/25"},secondary:{link:"before:outline-secondary/25",childLink:"before:outline-secondary/25"},success:{link:"before:outline-success/25",childLink:"before:outline-success/25"},info:{link:"before:outline-info/25",childLink:"before:outline-info/25"},warning:{link:"before:outline-warning/25",childLink:"before:outline-warning/25"},error:{link:"before:outline-error/25",childLink:"before:outline-error/25"},neutral:{link:"before:outline-inverted/25",childLink:"before:outline-inverted/25"}},highlightColor:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{pill:"",link:""},orientation:{horizontal:{root:"items-center justify-between",list:"flex items-center",item:"py-2",link:"px-2.5 py-1.5 before:inset-x-px before:inset-y-0",childList:"grid p-2",childLink:"px-3 py-2 gap-2 before:inset-x-px before:inset-y-0",childLinkLabel:"font-medium",content:"absolute top-0 start-0 w-full max-h-[70vh] overflow-y-auto"},vertical:{root:"flex-col",link:"flex-row px-2.5 py-1.5 before:inset-y-px before:inset-x-0",childLabel:"px-1.5 py-0.5",childLink:"p-1.5 gap-1.5 before:inset-y-px before:inset-x-0"}},contentOrientation:{horizontal:{viewportWrapper:"justify-center",content:"data-[motion=from-start]:animate-[enter-from-left_200ms_ease] data-[motion=from-end]:animate-[enter-from-right_200ms_ease] data-[motion=to-start]:animate-[exit-to-left_200ms_ease] data-[motion=to-end]:animate-[exit-to-right_200ms_ease]"},vertical:{viewport:"sm:w-(--reka-navigation-menu-viewport-width) left-(--reka-navigation-menu-viewport-left) rtl:left-auto rtl:right-[calc(100%-var(--reka-navigation-menu-viewport-left)-var(--reka-navigation-menu-viewport-width))]"}},active:{true:{childLink:"before:bg-elevated text-highlighted",childLinkIcon:"text-default"},false:{link:"text-muted",linkLeadingIcon:"text-dimmed",childLink:["hover:before:bg-elevated/50 text-default hover:text-highlighted","transition-colors before:transition-colors"],childLinkIcon:["text-dimmed group-hover:text-default","transition-colors"]}},disabled:{true:{link:"cursor-not-allowed opacity-75"}},highlight:{true:""},level:{true:""},collapsed:{true:""}},compoundVariants:[{orientation:"horizontal",contentOrientation:"horizontal",class:{childList:"grid-cols-2 gap-2"}},{orientation:"horizontal",contentOrientation:"vertical",class:{childList:"gap-1",content:"w-60"}},{orientation:"vertical",collapsed:!1,class:{childList:"ms-5 border-s border-default",childItem:"ps-1.5 -ms-px",content:"data-[state=open]:animate-[collapsible-down_200ms_ease-out] data-[state=closed]:animate-[collapsible-up_200ms_ease-out] data-[state=closed]:overflow-hidden"}},{orientation:"vertical",collapsed:!0,class:{link:"px-1.5",linkLabel:"hidden",linkTrailing:"hidden",content:"shadow-sm rounded-sm min-h-6 p-1"}},{orientation:"horizontal",highlight:!0,class:{link:["after:absolute after:-bottom-2 after:inset-x-2.5 after:block after:h-px after:rounded-full","after:transition-colors"]}},{orientation:"vertical",highlight:!0,level:!0,class:{link:["after:absolute after:-start-1.5 after:inset-y-0.5 after:block after:w-px after:rounded-full","after:transition-colors"]}},{disabled:!1,active:!1,variant:"pill",class:{link:["hover:text-highlighted hover:before:bg-elevated/50","transition-colors before:transition-colors"],linkLeadingIcon:["group-hover:text-default","transition-colors"]}},{disabled:!1,active:!1,variant:"pill",orientation:"horizontal",class:{link:"data-[state=open]:text-highlighted",linkLeadingIcon:"group-data-[state=open]:text-default"}},{disabled:!1,variant:"pill",highlight:!0,orientation:"horizontal",class:{link:"data-[state=open]:before:bg-elevated/50"}},{disabled:!1,variant:"pill",highlight:!1,active:!1,orientation:"horizontal",class:{link:"data-[state=open]:before:bg-elevated/50"}},{color:"primary",variant:"pill",active:!0,class:{link:"text-primary",linkLeadingIcon:"text-primary group-data-[state=open]:text-primary"}},{color:"secondary",variant:"pill",active:!0,class:{link:"text-secondary",linkLeadingIcon:"text-secondary group-data-[state=open]:text-secondary"}},{color:"success",variant:"pill",active:!0,class:{link:"text-success",linkLeadingIcon:"text-success group-data-[state=open]:text-success"}},{color:"info",variant:"pill",active:!0,class:{link:"text-info",linkLeadingIcon:"text-info group-data-[state=open]:text-info"}},{color:"warning",variant:"pill",active:!0,class:{link:"text-warning",linkLeadingIcon:"text-warning group-data-[state=open]:text-warning"}},{color:"error",variant:"pill",active:!0,class:{link:"text-error",linkLeadingIcon:"text-error group-data-[state=open]:text-error"}},{color:"neutral",variant:"pill",active:!0,class:{link:"text-highlighted",linkLeadingIcon:"text-highlighted group-data-[state=open]:text-highlighted"}},{variant:"pill",active:!0,highlight:!1,class:{link:"before:bg-elevated"}},{variant:"pill",active:!0,highlight:!0,disabled:!1,class:{link:["hover:before:bg-elevated/50","before:transition-colors"]}},{disabled:!1,active:!1,variant:"link",class:{link:["hover:text-highlighted","transition-colors"],linkLeadingIcon:["group-hover:text-default","transition-colors"]}},{disabled:!1,active:!1,variant:"link",orientation:"horizontal",class:{link:"data-[state=open]:text-highlighted",linkLeadingIcon:"group-data-[state=open]:text-default"}},{color:"primary",variant:"link",active:!0,class:{link:"text-primary",linkLeadingIcon:"text-primary group-data-[state=open]:text-primary"}},{color:"secondary",variant:"link",active:!0,class:{link:"text-secondary",linkLeadingIcon:"text-secondary group-data-[state=open]:text-secondary"}},{color:"success",variant:"link",active:!0,class:{link:"text-success",linkLeadingIcon:"text-success group-data-[state=open]:text-success"}},{color:"info",variant:"link",active:!0,class:{link:"text-info",linkLeadingIcon:"text-info group-data-[state=open]:text-info"}},{color:"warning",variant:"link",active:!0,class:{link:"text-warning",linkLeadingIcon:"text-warning group-data-[state=open]:text-warning"}},{color:"error",variant:"link",active:!0,class:{link:"text-error",linkLeadingIcon:"text-error group-data-[state=open]:text-error"}},{color:"neutral",variant:"link",active:!0,class:{link:"text-highlighted",linkLeadingIcon:"text-highlighted group-data-[state=open]:text-highlighted"}},{highlightColor:"primary",highlight:!0,level:!0,active:!0,class:{link:"after:bg-primary"}},{highlightColor:"secondary",highlight:!0,level:!0,active:!0,class:{link:"after:bg-secondary"}},{highlightColor:"success",highlight:!0,level:!0,active:!0,class:{link:"after:bg-success"}},{highlightColor:"info",highlight:!0,level:!0,active:!0,class:{link:"after:bg-info"}},{highlightColor:"warning",highlight:!0,level:!0,active:!0,class:{link:"after:bg-warning"}},{highlightColor:"error",highlight:!0,level:!0,active:!0,class:{link:"after:bg-error"}},{highlightColor:"neutral",highlight:!0,level:!0,active:!0,class:{link:"after:bg-inverted"}}],defaultVariants:{color:"primary",highlightColor:"primary",variant:"pill"}},sa=Object.assign({inheritAttrs:!1},{__name:"UNavigationMenu",props:{as:{type:null,required:!1},type:{type:null,required:!1,default:"multiple"},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},trailingIcon:{type:null,required:!1},externalIcon:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},items:{type:null,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},collapsed:{type:Boolean,required:!1},tooltip:{type:[Boolean,Object],required:!1},popover:{type:[Boolean,Object],required:!1},highlight:{type:Boolean,required:!1},highlightColor:{type:null,required:!1},content:{type:Object,required:!1},contentOrientation:{type:null,required:!1,default:"horizontal"},arrow:{type:Boolean,required:!1},valueKey:{type:null,required:!1,default:"value"},labelKey:{type:null,required:!1,default:"label"},class:{type:null,required:!1},ui:{type:Object,required:!1},delayDuration:{type:Number,required:!1,default:0},disableClickTrigger:{type:Boolean,required:!1},disableHoverTrigger:{type:Boolean,required:!1},skipDelayDuration:{type:Number,required:!1},disablePointerLeaveClose:{type:Boolean,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},disabled:{type:Boolean,required:!1},collapsible:{type:Boolean,required:!1,default:!0}},emits:["update:modelValue"],setup(s,{emit:r}){const l=s,n=r,i=Ye(),t=Ze("navigationMenu",l),u=et(),d=Ee(N(()=>({as:t.as,delayDuration:t.delayDuration,skipDelayDuration:t.skipDelayDuration,orientation:t.orientation,disableClickTrigger:t.disableClickTrigger,disableHoverTrigger:t.disableHoverTrigger,disablePointerLeaveClose:t.disablePointerLeaveClose,unmountOnHide:t.unmountOnHide})),n),c=Ee(tt(t,"collapsible","disabled","type","unmountOnHide"),n),_=ve(()=>t.content),I=ve(()=>Oe(typeof t.tooltip=="boolean"?{}:t.tooltip,{...t.orientation==="vertical"&&{delayDuration:0,content:{side:"right"}}})),y=ve(()=>Oe(typeof t.popover=="boolean"?{}:t.popover,{mode:"hover",content:{side:"right",align:"start",alignOffset:2}})),[M,L]=Me(),[p,C]=Me({props:{item:Object,index:Number,level:Number,listIndex:Number}}),o=N(()=>ot({extend:aa,...u.ui?.navigationMenu||{}})({orientation:t.orientation,contentOrientation:t.orientation==="vertical"?void 0:t.contentOrientation,collapsed:t.collapsed,color:t.color,variant:t.variant,highlight:t.highlight,highlightColor:t.highlightColor||t.color})),R=N(()=>t.items?.length?rt(t.items)?t.items:[t.items]:[]);function g(v,w,a,m){const k=R.value.length>1?`group-${m}-`:"";return Q(v,t.valueKey)??(a>0?`${k}item-${a}-${w}`:`${k}item-${w}`)}function b(v,w=0,a=0){const m=v.reduce((k,S,A)=>((S.defaultOpen||S.open)&&k.push(g(S,A,w,a)),k),[]);return t.type==="single"?m[0]:m}function E(v,w){w.children?.length&&(t.orientation==="horizontal"?v.preventDefault():t.orientation==="vertical"&&!t.collapsed&&(v.preventDefault(),v.stopPropagation()))}return(v,w)=>(f(),$(j,null,[T(e(M),null,{default:h(({item:a,active:m,index:k})=>[D(v.$slots,a.slot||"item",{item:a,index:k,active:m,ui:o.value},()=>[D(v.$slots,a.slot?`${a.slot}-leading`:"item-leading",{item:a,active:m,index:k,ui:o.value},()=>[a.avatar?(f(),x(at,O({key:0,size:a.ui?.linkLeadingAvatarSize||e(t).ui?.linkLeadingAvatarSize||o.value.linkLeadingAvatarSize()},a.avatar,{"data-slot":"linkLeadingAvatar",class:o.value.linkLeadingAvatar({class:[e(t).ui?.linkLeadingAvatar,a.ui?.linkLeadingAvatar],active:m,disabled:!!a.disabled})}),null,16,["size","class"])):a.icon&&a.chip?(f(),x(nt,O({key:1,size:a.ui?.linkLeadingChipSize||e(t).ui?.linkLeadingChipSize||o.value.linkLeadingChipSize(),inset:""},typeof a.chip=="object"?a.chip:{},{"data-slot":"linkLeadingChip"}),{default:h(()=>[T(W,{name:a.icon,"data-slot":"linkLeadingIcon",class:q(o.value.linkLeadingIcon({class:[e(t).ui?.linkLeadingIcon,a.ui?.linkLeadingIcon],active:m,disabled:!!a.disabled}))},null,8,["name","class"])]),_:2},1040,["size"])):a.icon?(f(),x(W,{key:2,name:a.icon,"data-slot":"linkLeadingIcon",class:q(o.value.linkLeadingIcon({class:[e(t).ui?.linkLeadingIcon,a.ui?.linkLeadingIcon],active:m,disabled:!!a.disabled}))},null,8,["name","class"])):V("",!0)]),e(Q)(a,e(t).labelKey)||i[a.slot?`${a.slot}-label`:"item-label"]?(f(),$("span",{key:0,"data-slot":"linkLabel",class:q(o.value.linkLabel({class:[e(t).ui?.linkLabel,a.ui?.linkLabel]}))},[D(v.$slots,a.slot?`${a.slot}-label`:"item-label",{item:a,active:m,index:k},()=>[ce(ee(e(Q)(a,e(t).labelKey)),1)]),a.target==="_blank"&&e(t).externalIcon!==!1?(f(),x(W,{key:0,name:typeof e(t).externalIcon=="string"?e(t).externalIcon:e(u).ui.icons.external,"data-slot":"linkLabelExternalIcon",class:q(o.value.linkLabelExternalIcon({class:[e(t).ui?.linkLabelExternalIcon,a.ui?.linkLabelExternalIcon],active:m}))},null,8,["name","class"])):V("",!0)],2)):V("",!0),a.badge||a.badge===0||e(t).orientation==="horizontal"&&(a.children?.length||i[a.slot?`${a.slot}-content`:"item-content"])||e(t).orientation==="vertical"&&a.children?.length||a.trailingIcon||i[a.slot?`${a.slot}-trailing`:"item-trailing"]?(f(),x(oe(e(t).orientation==="vertical"&&a.children?.length&&!e(t).collapsed?e(Ne):"span"),{key:1,as:e(t).orientation==="vertical"&&a.children?.length&&!e(t).collapsed?"span":void 0,"data-slot":"linkTrailing",class:q(o.value.linkTrailing({class:[e(t).ui?.linkTrailing,a.ui?.linkTrailing]})),onClick:S=>E(S,a)},{default:h(()=>[D(v.$slots,a.slot?`${a.slot}-trailing`:"item-trailing",{item:a,active:m,index:k,ui:o.value},()=>[a.badge||a.badge===0?(f(),x(lt,O({key:0,color:"neutral",variant:"outline",size:a.ui?.linkTrailingBadgeSize||e(t).ui?.linkTrailingBadgeSize||o.value.linkTrailingBadgeSize()},typeof a.badge=="string"||typeof a.badge=="number"?{label:a.badge}:a.badge,{"data-slot":"linkTrailingBadge",class:o.value.linkTrailingBadge({class:[e(t).ui?.linkTrailingBadge,a.ui?.linkTrailingBadge]})}),null,16,["size","class"])):V("",!0),e(t).orientation==="horizontal"&&(a.children?.length||i[a.slot?`${a.slot}-content`:"item-content"])||e(t).orientation==="vertical"&&a.children?.length?(f(),x(W,{key:1,name:a.trailingIcon||e(t).trailingIcon||e(u).ui.icons.chevronDown,"data-slot":"linkTrailingIcon",class:q(o.value.linkTrailingIcon({class:[e(t).ui?.linkTrailingIcon,a.ui?.linkTrailingIcon],active:m}))},null,8,["name","class"])):a.trailingIcon?(f(),x(W,{key:2,name:a.trailingIcon,"data-slot":"linkTrailingIcon",class:q(o.value.linkTrailingIcon({class:[e(t).ui?.linkTrailingIcon,a.ui?.linkTrailingIcon],active:m}))},null,8,["name","class"])):V("",!0)])]),_:2},1032,["as","class","onClick"])):V("",!0)])]),_:3}),T(e(p),null,{default:h(({item:a,index:m,level:k=0,listIndex:S=0})=>[(f(),x(oe(e(t).orientation==="vertical"&&!e(t).collapsed?e(Mt):e(Pt)),O({as:"li"},e(t).orientation==="vertical"&&!e(t).collapsed?{disabled:!!a.disabled}:{},{value:g(a,m,k,S)}),{default:h(()=>[e(t).orientation==="vertical"&&a.type==="label"&&!e(t).collapsed?(f(),$("div",{key:0,"data-slot":"label",class:q(o.value.label({class:[e(t).ui?.label,a.ui?.label,a.class]}))},[T(e(L),{item:a,index:m},null,8,["item","index"])],2)):a.type!=="label"?(f(),x(fe,O({key:1},e(t).orientation==="vertical"&&a.children?.length&&!e(t).collapsed&&a.type==="trigger"?{}:e(pe)(a),{custom:""}),{default:h(({active:A,...U})=>[(f(),x(oe(e(t).orientation==="horizontal"&&(a.children?.length||i[a.slot?`${a.slot}-content`:"item-content"])?e(Zt):e(t).orientation==="vertical"&&a.children?.length&&!e(t).collapsed&&!U.href?e(Ne):e(ge)),{"as-child":"",active:A||a.active,disabled:a.disabled,onSelect:a.onSelect},{default:h(()=>[e(t).orientation==="vertical"&&e(t).collapsed&&a.children?.length&&(e(t).popover||a.popover)?(f(),x(it,O({key:0},{...y.value,...typeof a.popover=="boolean"?{}:a.popover||{}},{ui:{content:o.value.content({class:[e(t).ui?.content,a.ui?.content]})}}),{content:h(({close:F})=>[D(v.$slots,a.slot?`${a.slot}-content`:"item-content",{item:a,active:A||a.active,index:m,ui:o.value,close:F},()=>[X("ul",{"data-slot":"childList",class:q(o.value.childList({class:[e(t).ui?.childList,a.ui?.childList]}))},[X("li",{"data-slot":"childLabel",class:q(o.value.childLabel({class:[e(t).ui?.childLabel,a.ui?.childLabel]}))},ee(e(Q)(a,e(t).labelKey)),3),(f(!0),$(j,null,ae(a.children,(H,G)=>(f(),$("li",{key:G,"data-slot":"childItem",class:q(o.value.childItem({class:[e(t).ui?.childItem,a.ui?.childItem]}))},[T(fe,O({ref_for:!0},e(pe)(H),{custom:""}),{default:h(({active:J,...We})=>[T(e(ge),{"as-child":"",active:J,onSelect:H.onSelect},{default:h(()=>[T(te,O({ref_for:!0},We,{"data-slot":"childLink",class:o.value.childLink({class:[e(t).ui?.childLink,a.ui?.childLink,H.class],active:J})}),{default:h(()=>[H.icon?(f(),x(W,{key:0,name:H.icon,"data-slot":"childLinkIcon",class:q(o.value.childLinkIcon({class:[e(t).ui?.childLinkIcon,a.ui?.childLinkIcon],active:J}))},null,8,["name","class"])):V("",!0),X("span",{"data-slot":"childLinkLabel",class:q(o.value.childLinkLabel({class:[e(t).ui?.childLinkLabel,a.ui?.childLinkLabel],active:J}))},[ce(ee(e(Q)(H,e(t).labelKey))+" ",1),H.target==="_blank"&&e(t).externalIcon!==!1?(f(),x(W,{key:0,name:typeof e(t).externalIcon=="string"?e(t).externalIcon:e(u).ui.icons.external,"data-slot":"childLinkLabelExternalIcon",class:q(o.value.childLinkLabelExternalIcon({class:[e(t).ui?.childLinkLabelExternalIcon,a.ui?.childLinkLabelExternalIcon],active:J}))},null,8,["name","class"])):V("",!0)],2)]),_:2},1040,["class"])]),_:2},1032,["active","onSelect"])]),_:2},1040)],2))),128))],2)])]),default:h(()=>[T(te,O(U,{"data-slot":"link",class:o.value.link({class:[e(t).ui?.link,a.ui?.link,a.class],active:A||a.active,disabled:!!a.disabled,level:k>0})}),{default:h(()=>[T(e(L),{item:a,active:A||a.active,index:m},null,8,["item","active","index"])]),_:2},1040,["class"])]),_:2},1040,["ui"])):e(t).orientation==="vertical"&&e(t).collapsed&&(e(t).tooltip||a.tooltip)||e(t).orientation==="horizontal"&&a.tooltip?(f(),x(ft,O({key:1,text:e(Q)(a,e(t).labelKey)},{...I.value,...typeof a.tooltip=="boolean"?{}:a.tooltip||{}}),{default:h(()=>[T(te,O(U,{"data-slot":"link",class:o.value.link({class:[e(t).ui?.link,a.ui?.link,a.class],active:A||a.active,disabled:!!a.disabled,level:k>0})}),{default:h(()=>[T(e(L),{item:a,active:A||a.active,index:m},null,8,["item","active","index"])]),_:2},1040,["class"])]),_:2},1040,["text"])):(f(),x(te,O({key:2},U,{"data-slot":"link",class:o.value.link({class:[e(t).ui?.link,a.ui?.link,a.class],active:A||a.active,disabled:!!a.disabled,level:e(t).orientation==="horizontal"||k>0})}),{default:h(()=>[T(e(L),{item:a,active:A||a.active,index:m},null,8,["item","active","index"])]),_:2},1040,["class"]))]),_:2},1064,["active","disabled","onSelect"])),e(t).orientation==="horizontal"&&(a.children?.length||i[a.slot?`${a.slot}-content`:"item-content"])?(f(),x(e(Wt),O({key:0},_.value,{"data-slot":"content",class:o.value.content({class:[e(t).ui?.content,a.ui?.content]})}),{default:h(()=>[D(v.$slots,a.slot?`${a.slot}-content`:"item-content",{item:a,active:A||a.active,index:m,ui:o.value},()=>[X("ul",{"data-slot":"childList",class:q(o.value.childList({class:[e(t).ui?.childList,a.ui?.childList]}))},[(f(!0),$(j,null,ae(a.children,(F,H)=>(f(),$("li",{key:H,"data-slot":"childItem",class:q(o.value.childItem({class:[e(t).ui?.childItem,a.ui?.childItem]}))},[T(fe,O({ref_for:!0},e(pe)(F),{custom:""}),{default:h(({active:G,...J})=>[T(e(ge),{"as-child":"",active:G,onSelect:F.onSelect},{default:h(()=>[T(te,O({ref_for:!0},J,{"data-slot":"childLink",class:o.value.childLink({class:[e(t).ui?.childLink,a.ui?.childLink,F.class],active:G})}),{default:h(()=>[F.icon?(f(),x(W,{key:0,name:F.icon,"data-slot":"childLinkIcon",class:q(o.value.childLinkIcon({class:[e(t).ui?.childLinkIcon,a.ui?.childLinkIcon],active:G}))},null,8,["name","class"])):V("",!0),X("div",{"data-slot":"childLinkWrapper",class:q(o.value.childLinkWrapper({class:[e(t).ui?.childLinkWrapper,a.ui?.childLinkWrapper]}))},[X("p",{"data-slot":"childLinkLabel",class:q(o.value.childLinkLabel({class:[e(t).ui?.childLinkLabel,a.ui?.childLinkLabel],active:G}))},[ce(ee(e(Q)(F,e(t).labelKey))+" ",1),F.target==="_blank"&&e(t).externalIcon!==!1?(f(),x(W,{key:0,name:typeof e(t).externalIcon=="string"?e(t).externalIcon:e(u).ui.icons.external,"data-slot":"childLinkLabelExternalIcon",class:q(o.value.childLinkLabelExternalIcon({class:[e(t).ui?.childLinkLabelExternalIcon,a.ui?.childLinkLabelExternalIcon],active:G}))},null,8,["name","class"])):V("",!0)],2),F.description?(f(),$("p",{key:0,"data-slot":"childLinkDescription",class:q(o.value.childLinkDescription({class:[e(t).ui?.childLinkDescription,a.ui?.childLinkDescription],active:G}))},ee(F.description),3)):V("",!0)],2)]),_:2},1040,["class"])]),_:2},1032,["active","onSelect"])]),_:2},1040)],2))),128))],2)])]),_:2},1040,["class"])):V("",!0)]),_:2},1040)):V("",!0),e(t).orientation==="vertical"&&a.children?.length&&!e(t).collapsed?(f(),x(e(Dt),{key:2,"data-slot":"content",class:q(o.value.content({class:[e(t).ui?.content,a.ui?.content]}))},{default:h(()=>[T(e(De),O({...e(c),defaultValue:b(a.children,k+1,S)},{as:"ul","data-slot":"childList",class:o.value.childList({class:[e(t).ui?.childList,a.ui?.childList]})}),{default:h(()=>[(f(!0),$(j,null,ae(a.children,(A,U)=>(f(),x(e(C),{key:U,item:A,index:U,level:k+1,"list-index":S,"data-slot":"childItem",class:q(o.value.childItem({class:[e(t).ui?.childItem,A.ui?.childItem]}))},null,8,["item","index","level","list-index","class"]))),128))]),_:2},1040,["class"])]),_:2},1032,["class"])):V("",!0)]),_:2},1040,["value"]))]),_:3}),T(e(Rt),O({"data-slot":"root"},{...e(d),...e(t).orientation==="horizontal"?{modelValue:e(t).modelValue,defaultValue:e(t).defaultValue}:{},...v.$attrs},{"data-collapsed":e(t).collapsed,class:o.value.root({class:[e(t).ui?.root,e(t).class]})}),{default:h(()=>[D(v.$slots,"list-leading"),(f(!0),$(j,null,ae(R.value,(a,m)=>(f(),$(j,{key:`list-${m}`},[(f(),x(oe(e(t).orientation==="vertical"?e(De):e(Qt)),O({ref_for:!0},e(t).orientation==="vertical"&&!e(t).collapsed?{...e(c),modelValue:e(t).modelValue,defaultValue:e(t).defaultValue??b(a,0,m)}:{},{as:"ul","data-slot":"list",class:o.value.list({class:e(t).ui?.list})}),{default:h(()=>[(f(!0),$(j,null,ae(a,(k,S)=>(f(),x(e(C),{key:`list-${m}-${S}`,item:k,index:S,"list-index":m,"data-slot":"item",class:q(o.value.item({class:[e(t).ui?.item,k.ui?.item]}))},null,8,["item","index","list-index","class"]))),128))]),_:2},1040,["class"])),e(t).orientation==="vertical"&&m<R.value.length-1?(f(),$("div",{key:0,"data-slot":"separator",class:q(o.value.separator({class:e(t).ui?.separator}))},null,2)):V("",!0)],64))),128)),D(v.$slots,"list-trailing"),e(t).orientation==="horizontal"?(f(),$("div",{key:0,"data-slot":"viewportWrapper",class:q(o.value.viewportWrapper({class:e(t).ui?.viewportWrapper}))},[e(t).arrow?(f(),x(e(Gt),{key:0,"data-slot":"indicator",class:q(o.value.indicator({class:e(t).ui?.indicator}))},{default:h(()=>[X("div",{"data-slot":"arrow",class:q(o.value.arrow({class:e(t).ui?.arrow}))},null,2)]),_:1},8,["class"])):V("",!0),T(e(ta),{"data-slot":"viewport",class:q(o.value.viewport({class:e(t).ui?.viewport}))},null,8,["class"])],2)):V("",!0)]),_:3},16,["data-collapsed","class"])],64))}});function ua(s){const{isAdmin:r}=st(),l=dt(),n=N(()=>!l.public.authEnabled||r.value),i=vt();return N(()=>{const u=n.value,d=s?ut(s):void 0;return pt.filter(c=>(!c.roles||u)&&!(i&&c.authOnly)).map(c=>{const _=d?.[c.id]??!1;return{label:c.label,icon:c.icon,to:c.to,..._?{badge:{icon:"i-lucide-lock",color:"neutral"}}:{}}})})}export{sa as _,ua as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as o,o as a,f as e,g as c,v as u,q as r,m,t as l,k as g,s as d}from"./DHltYerF.js";import{i as f}from"./BeKvLsja.js";const _=o({__name:"RunStatusBadge",props:{status:{},size:{}},setup(t){return(s,z)=>{const n=u,i=d;return a(),e(i,{color:("getStatusColor"in s?s.getStatusColor:g(f))(t.status),size:t.size,class:"capitalize gap-1 items-center"},{default:c(()=>[t.status==="running"||t.status==="initialising"||t.status==="finalizing"?(a(),e(n,{key:0,name:"i-lucide-loader-circle",class:"size-3 animate-spin shrink-0"})):r("",!0),m(" "+l(t.status),1)]),_:1},8,["color","size"])}}}),k=Object.assign(_,{__name:"RunStatusBadge"});export{k as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as a,o,c as n,i as l,T as s,O as i,p as m}from"./DHltYerF.js";const r=a({__name:"TableScroller",props:{minWidth:{},bleed:{type:Boolean,default:!0}},setup(e){return(t,c)=>(o(),n("div",{class:m(["overflow-x-auto",e.bleed?"-mx-4 px-4 sm:mx-0 sm:px-0":""])},[l("div",{style:i(e.minWidth?{minWidth:e.minWidth}:void 0)},[s(t.$slots,"default")],4)],2))}}),p=Object.assign(r,{__name:"TableScroller"});export{p as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as ct,a as ut}from"./B4jvLMfS.js";import{_ as dt,a as mt}from"./DHXWp5yD.js";import{_ as pt}from"./DZUgX70W.js";import{_ as _t,a as ft}from"./CdMuck_X.js";import{d as gt,e as yt,b as xt,c as l,j as o,g as s,F as R,P as bt,o as a,i as c,D as vt,m as d,y as P,f as p,_ as ht,q as _,t as y,k as i,x as kt,h as N,r as x,I as jt}from"./DHltYerF.js";import{_ as Rt}from"./Dga3Av-m.js";import{_ as $t}from"./DS53kyHJ.js";import{_ as Ct}from"./DoFBTaDR.js";import{_ as Tt}from"./CfROFPse.js";import{_ as Pt}from"./BXY_PWcx.js";import{_ as Nt}from"./DWhBqv_7.js";import{_ as Dt}from"./B-IcwqZ2.js";import{_ as Ut}from"./C1dyLp_j.js";import{_ as Ft}from"./Dr_dI5hB.js";import{o as St,s as D,_ as Bt}from"./BLIRKrbM.js";import{_ as Kt}from"./B-5GukRk.js";import{h as Lt,p as wt,g as b}from"./BeKvLsja.js";import{u as V}from"./DXbPFI1d.js";import"./BbS6Bwby.js";import"./r3SBLxtE.js";import"./By4YL7mx.js";import"./D6PUPmRC.js";import"./BFP6M-20.js";import"./DZ3Vfcpz.js";import"./e7zD3uJ0.js";import"./BeFDVhpA.js";import"./EPZOxdgq.js";import"./Bd3HqPMF.js";import"./qH_j2A3a.js";import"./CcXaak_K.js";const Vt={class:"flex flex-wrap items-center gap-3 mb-4"},zt={key:0,class:"flex flex-wrap items-center gap-2"},Ht={class:"text-sm text-muted shrink-0 inline-flex items-center gap-1"},It=["onClick"],qt={class:"flex flex-col gap-1"},At={class:"flex items-center gap-2"},Ot={key:0,class:"flex flex-wrap gap-1"},Mt={key:0,class:"text-xs text-gray-600 italic"},Et={key:1},Gt={key:0,class:"text-xs text-gray-600"},Qt={key:1,class:"text-xs text-gray-600 italic"},Xt={key:0,class:"flex items-center gap-1 flex-wrap"},Jt={key:0,class:"text-xs font-medium bg-gray-100 dark:bg-gray-800 px-1.5 py-0.5 rounded"},Wt={key:1,class:"text-xs text-gray-500"},Yt={key:0,class:"text-sm text-gray-600"},Zt={key:1,class:"text-xs text-gray-600 italic"},te={key:1,class:"text-xs text-gray-600 italic"},ee={key:1,class:"text-xs text-gray-600 italic"},ae={class:"flex justify-end gap-2"},se={key:1,class:"space-y-2","aria-busy":"true"},oe={key:2,class:"text-center py-12 text-gray-500"},ne={class:"text-xs text-gray-400 max-w-sm"},le={class:"flex w-full justify-end gap-2"},Ve=gt({__name:"index",setup(re){yt({title:"Projects — Piwi Dashboard"});const{data:v,refresh:U,status:z}=V("/api/projects",{key:"projects",lazy:!0,default:()=>[]},"$AIGg5yw_0K"),{data:H,refresh:I}=V("/api/tags",{lazy:!0},"$qcllBXh9C_"),F=xt(),$=N(()=>H.value?.tags||[]),q=N(()=>z.value==="pending"&&!v.value?.length),h=x(""),u=x([]),S=N(()=>{let n=v.value||[];if(h.value.trim()){const e=h.value.trim().toLowerCase();n=n.filter(m=>(m.label||m.name).toLowerCase().includes(e)||m.name.toLowerCase().includes(e))}return u.value.length>0&&(n=n.filter(e=>u.value.some(m=>(e.tags||[]).some(T=>T.id===m)))),n});function A(n){const e=u.value.indexOf(n);e===-1?u.value.push(n):u.value.splice(e,1)}function O(n){return u.value.includes(n)}const f=x(!1),M=St({name:D().min(1,"Project name is required").max(100),label:D().optional(),description:D().optional()}),r=jt({name:"",label:"",description:""}),k=x([]),C=x(!1);async function E(){if(r.name?.trim())try{C.value=!0,await $fetch("/api/projects",{method:"POST",body:{name:r.name.trim(),label:r.label?.trim()||null,description:r.description?.trim()||null,tagIds:k.value.map(n=>n.id)}}),F.add({title:"Project created",description:`Project "${r.name}" has been created`,color:"success"}),f.value=!1,r.name="",r.label="",r.description="",k.value=[],await U()}catch(n){const e=n&&typeof n=="object"&&"data"in n?n.data?.message:void 0;F.add({title:"Failed to create project",description:e||"An error occurred",color:"error"})}finally{C.value=!1}}const G=[{header:"Project",columns:[{accessorKey:"name",header:b("Name")},{accessorKey:"totalRuns",header:b("Runs")}]},{accessorKey:"latestRunData",header:"Latest run",columns:[{accessorKey:"latestRun",header:b("Date")},{accessorKey:"branch",header:"Branch"},{accessorKey:"duration",header:b("Duration")},{accessorKey:"status",header:b("Status")},{accessorKey:"testRatio",header:"Test status"},{accessorKey:"report",header:"Reports"}]},{accessorKey:"actions",header:"Project actions"}];return(n,e)=>{const m=ct,T=ut,B=dt,Q=pt,X=ft,J=vt,K=Rt,g=ht,L=kt,W=$t,Y=Ct,Z=Tt,tt=Pt,et=Nt,w=Dt,at=mt,st=Ut,ot=_t,nt=Ft,lt=Bt,rt=Kt,it=bt;return a(),l(R,null,[o(ot,{id:"projects"},{header:s(()=>[o(X,null,{leading:s(()=>[o(m),o(T,{items:[{label:"Home",icon:"i-lucide-house",to:"/"},{label:"Projects"}]})]),right:s(()=>[o(Q,{actions:[{label:"New project",icon:"i-lucide-plus",onClick:()=>f.value=!0},{label:"Refresh",icon:"i-lucide-refresh-cw",variant:"outline",onClick:()=>i(U)()}]},{leading:s(()=>[o(B,{topic:"projects.table",size:"sm"})]),_:1},8,["actions"])]),_:1})]),body:s(()=>[c("div",Vt,[o(J,{modelValue:h.value,"onUpdate:modelValue":e[0]||(e[0]=t=>h.value=t),icon:"i-lucide-search",placeholder:"Search projects by name...",class:"min-w-48 flex-1",ui:{base:"w-full"}},null,8,["modelValue"]),$.value.length>0?(a(),l("div",zt,[c("span",Ht,[e[10]||(e[10]=d(" Filter by tag (any match): ",-1)),o(B,{topic:"projects.tag-filter"})]),(a(!0),l(R,null,P($.value,t=>(a(),l("button",{key:t.id,type:"button",class:"cursor-pointer focus:outline-none",onClick:j=>A(t.id)},[o(K,{text:t.text,color:t.color,variant:O(t.id)?"solid":"outline"},null,8,["text","color","variant"])],8,It))),128)),u.value.length>0?(a(),p(g,{key:0,size:"xs",variant:"ghost",color:"neutral",icon:"i-lucide-x",label:"Clear filters",onClick:e[1]||(e[1]=t=>u.value=[])})):_("",!0)])):_("",!0)]),S.value.length>0?(a(),p(et,{key:0,"min-width":"60rem",bleed:!1},{default:s(()=>[o(tt,{data:S.value,columns:G,ui:{base:"table-fixed border-separate border-spacing-0",thead:"[&>tr]:bg-elevated/50 [&>tr]:after:content-none",tbody:"[&>tr]:last:[&>td]:border-b-0",th:"first:rounded-l-lg last:rounded-r-lg border-y border-default first:border-l last:border-r",td:"border-b border-default"}},{"name-cell":s(({row:t})=>[c("div",qt,[c("div",At,[o(L,{to:`/projects/${t.original.id}`,class:"text-primary hover:underline font-medium"},{default:s(()=>[d(y(t.original.label||t.original.name),1)]),_:2},1032,["to"])]),t.original.tags?.length?(a(),l("div",Ot,[(a(!0),l(R,null,P(t.original.tags,j=>(a(),p(K,{key:j.id,text:j.text,color:j.color},null,8,["text","color"]))),128))])):_("",!0)])]),"totalRuns-cell":s(({row:t})=>[t.original.totalRuns===0?(a(),l("span",Mt,"No data")):(a(),l("span",Et,y(t.original.totalRuns)+" runs",1))]),"latestRun-cell":s(({row:t})=>[t.original.latestRun?(a(),l("span",Gt,y(("prettyDateFormat"in n?n.prettyDateFormat:i(wt))(t.original.latestRun.startTime)),1)):(a(),l("span",Qt,"No data"))]),"branch-cell":s(({row:t})=>[t.original.latestRun?.metadata?.scm?(a(),l("div",Xt,[t.original.latestRun.metadata.scm.branch?(a(),l("span",Jt,y(t.original.latestRun.metadata.scm.branch),1)):_("",!0),t.original.latestRun.metadata.scm.commit?(a(),l("code",Wt,y(t.original.latestRun.metadata.scm.commit.substring(0,7)),1)):_("",!0)])):_("",!0)]),"duration-cell":s(({row:t})=>[t.original.latestRun?.duration!=null?(a(),l("span",Yt,y(("formatDuration"in n?n.formatDuration:i(Lt))(t.original.latestRun.duration)),1)):(a(),l("span",Zt,"No data"))]),"status-cell":s(({row:t})=>[t.original.latestRun?(a(),p(W,{key:0,status:t.original.latestRun.status},null,8,["status"])):(a(),l("span",te,"No data"))]),"testRatio-cell":s(({row:t})=>[t.original.latestRun?(a(),p(Y,{key:0,passed:t.original.latestRun.passedTests,failed:t.original.latestRun.failedTests,skipped:t.original.latestRun.skippedTests,flaky:t.original.latestRun.flakyTests,"did-not-run":t.original.latestRun.didNotRunTests??0,total:t.original.latestRun.totalTests},null,8,["passed","failed","skipped","flaky","did-not-run","total"])):(a(),l("span",ee,"No data"))]),"report-cell":s(({row:t})=>[t.original.latestRun?(a(),p(Z,{key:0,reports:t.original.latestRun.reports},null,8,["reports"])):_("",!0)]),"actions-header":s(()=>[...e[11]||(e[11]=[c("div",{class:"text-right"},"Project actions",-1)])]),"actions-cell":s(({row:t})=>[c("div",ae,[o(g,{to:`/projects/${t.original.id}`,size:"sm",variant:"outline"},{default:s(()=>[...e[12]||(e[12]=[d("View details",-1)])]),_:1},8,["to"]),o(g,{to:`/projects/${t.original.id}/edit`,size:"sm",variant:"ghost",icon:"i-lucide-pencil"},null,8,["to"])])]),_:1},8,["data"])]),_:1})):q.value?(a(),l("div",se,[e[13]||(e[13]=c("span",{class:"sr-only",role:"status"},"Loading projects…",-1)),o(w,{class:"h-10 w-full rounded-lg"}),(a(),l(R,null,P(6,t=>o(w,{key:t,class:"h-14 w-full rounded-lg"})),64))])):i(v)&&i(v).length>0?(a(),l("div",oe,[...e[14]||(e[14]=[c("p",{class:"text-lg mb-2"},"No projects match your search",-1),c("p",{class:"text-sm"},"Try adjusting your search or filters",-1)])])):(a(),p(st,{key:3,icon:"i-lucide-rocket",text:"No projects yet"},{default:s(()=>[c("p",ne,[e[17]||(e[17]=d(" Projects are created automatically once the reporter submits its first run — see the ",-1)),o(L,{to:"/",class:"text-primary hover:underline"},{default:s(()=>[...e[15]||(e[15]=[d("home page",-1)])]),_:1}),e[18]||(e[18]=d(" for a copy-paste setup snippet, or the ",-1)),o(at,{to:"reporter","no-icon":"",class:"text-primary hover:underline"},{default:s(()=>[...e[16]||(e[16]=[d("reporter docs",-1)])]),_:1}),e[19]||(e[19]=d(". ",-1))]),o(g,{icon:"i-lucide-plus",label:"New project",variant:"ghost",size:"sm",class:"mt-2",onClick:e[2]||(e[2]=t=>f.value=!0)})]),_:1}))]),_:1}),o(it,null,{default:s(()=>[o(rt,{open:f.value,title:"Create new project","onUpdate:open":e[9]||(e[9]=t=>f.value=t)},{body:s(()=>[o(lt,{schema:i(M),state:i(r)},{default:s(()=>[o(nt,{mode:"create",name:i(r).name,"onUpdate:name":e[3]||(e[3]=t=>i(r).name=t),label:i(r).label,"onUpdate:label":e[4]||(e[4]=t=>i(r).label=t),description:i(r).description,"onUpdate:description":e[5]||(e[5]=t=>i(r).description=t),tags:k.value,"onUpdate:tags":e[6]||(e[6]=t=>k.value=t),"all-tags":$.value,onTagCreated:e[7]||(e[7]=t=>i(I)())},null,8,["name","label","description","tags","all-tags"])]),_:1},8,["schema","state"])]),footer:s(()=>[c("div",le,[o(g,{color:"neutral",variant:"ghost",label:"Cancel",onClick:e[8]||(e[8]=t=>f.value=!1)}),o(g,{label:"Create project",icon:"i-lucide-plus",loading:C.value,onClick:E},null,8,["loading"])])]),_:1},8,["open"])]),_:1})],64)}}});export{Ve as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{av as B,b as H,an as I,h as V}from"./DHltYerF.js";const k=4096;function x(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function j(e){return'"'+e.replace(/"/g,'\\"')+'"'}function u(e){return e.replace(/\\/g,"/")}function T(e){const n=new Map;for(const r of e){const i=r.projectName||"";n.has(i)||n.set(i,[]),n.get(i).push(r)}return n}function D(e){const n=new Set;return e.filter(r=>{const i=r.filePath;return n.has(i)?!1:(n.add(i),!0)}).map(r=>r.filePath)}function A(e,n){const r=n?.mode??"file-line",p=`${n?.pkgRunner??"npx"} playwright test`;if(e.length===0)return"";const v=T(e),m=[];for(const[g,d]of v){let c;if(r==="file"){const l=D(d).map(t=>j(u(t))).join(" ");c=`${p} ${l}`}else if(r==="file-line"){const a=new Set,l=d.filter(t=>{const o=t.filePath+":"+t.line;return t.line&&a.has(o)?!1:(t.line&&a.add(o),!0)}).map(t=>t.line?j(`${u(t.filePath)}:${t.line}`):j(u(t.filePath))).join(" ");c=`${p} ${l}`}else{const a=d.map(t=>x(t.title)),l=a.length===1?a[0]:`(${a.join("|")})`;c=`${p} --grep ${j(l)}`}g&&(c+=` --project=${j(g)}`),m.push(c)}let b=m.join(" && ");if(b.length>k){if(r==="grep")return A(e,{...n,mode:"file-line"});if(r==="file-line")return A(e,{...n,mode:"file"});const d=_(e).map(a=>j(u(a))).join(" ");let c=`${p} ${d}`;return c.length>k&&(c=c.slice(0,k-3)+"..."),c}return b}function _(e){const n=new Set;return e.reduce((r,i)=>(n.has(i.filePath)||(n.add(i.filePath),r.push(i.filePath)),r),[])}function C(e,n){return e==null?"":n==null?`:${e}`:`:${e}:${n}`}function w(e){return e.replace(/%/g,"%25").replace(/ /g,"%20").replace(/#/g,"%23").replace(/\?/g,"%3F")}function S(e,n){const r=u(e).replace(/\/+$/,""),i=u(n).replace(/^\.?\/+/,"");return r?`${r}/${i}`:i}function L(e){const n=w(u(e.absPath)),r=n.startsWith("/")?n:`/${n}`;return`${e.scheme}://file${r}${C(e.line,e.column)}`}function F(e){const n=w(u(e.relPath))+C(e.line,e.column);return`jetbrains://${e.product}/navigate/reference?project=${encodeURIComponent(e.projectName)}&path=${n}`}function K(e){const n=w(u(e.path));return`http://localhost:${e.port}/api/file/${n}${C(e.line,e.column)}`}const M="piwi-ide-prefs",G={method:"auto",vscodeScheme:"vscode",jetbrainsProduct:"idea",jetbrainsPort:63342,jetbrainsHttpUsesRelativePath:!1,defaultRoot:"",projectRoots:{},jetbrainsProjectNames:{}},W={vscode:"VS Code","vscode-insiders":"VS Code Insiders",vscodium:"VSCodium",cursor:"Cursor"},X={auto:"Auto (try all)",vscode:"VS Code","jetbrains-url":"JetBrains (URL)","jetbrains-http":"JetBrains (local server)"},Y=["idea","webstorm","pycharm","phpstorm","goland","rubymine","clion","rider","rustrover"];function Q(){const e=B(M,G,{mergeDefaults:!0}),n=H(),r=I("piwi-ide-settings-open",()=>!1),i=I("piwi-ide-settings-context",()=>({}));function p(t){return t==null||t===""?null:String(t)}function v(t={}){i.value={projectKey:t.projectKey??null,projectName:t.projectName??null},r.value=!0}function m(t){const o=p(t);return((o?e.value.projectRoots[o]:void 0)||e.value.defaultRoot||"").trim()}function b(t,o){const s=p(t);return((s?e.value.jetbrainsProjectNames[s]:void 0)||o||"").trim()}function g(t,o){const s=m(o);return s?S(s,t):null}const d=V(()=>!!e.value.defaultRoot?.trim()||Object.keys(e.value.projectRoots).length>0||Object.keys(e.value.jetbrainsProjectNames).length>0);function c(t){try{const o=document.createElement("iframe");o.style.display="none",o.src=t,document.body.appendChild(o),setTimeout(()=>o.remove(),1e3)}catch{const o=document.createElement("a");o.href=t,o.style.display="none",document.body.appendChild(o),o.click(),setTimeout(()=>o.remove(),1e3)}}async function a(t,o,s){const f=K({port:e.value.jetbrainsPort,path:t,line:o,column:s});try{return await fetch(f,{mode:"no-cors",signal:AbortSignal.timeout(1200)}),!0}catch{return!1}}async function l(t){const o=t.method??e.value.method,s=t.filePath,f=t.line??null,P=t.column??null,h=m(t.projectKey),$=b(t.projectKey,t.projectName),O={projectKey:p(t.projectKey),projectName:t.projectName??null},y={label:"Configure",color:"info",onClick:()=>v(O)},J=()=>h?(c(L({scheme:e.value.vscodeScheme,absPath:S(h,s),line:f,column:P})),n.add({title:`Opening ${W[e.value.vscodeScheme]}…`,description:"If nothing opens, the editor may not be installed or the workspace root is wrong.",color:"neutral",icon:"i-lucide-external-link"}),!0):(n.add({title:"Set a workspace root",description:"VS Code needs the local folder that contains this file.",color:"info",icon:"i-lucide-folder-cog",actions:[y]}),!1),E=()=>$?(c(F({product:e.value.jetbrainsProduct,projectName:$,relPath:s,line:f,column:P})),n.add({title:"Opening JetBrains…",description:"If nothing opens, JetBrains Toolbox may not be installed or the project is not open.",color:"neutral",icon:"i-lucide-external-link"}),!0):(n.add({title:"Set a JetBrains project name",description:"The jetbrains:// link needs the open IDE project name.",color:"info",icon:"i-lucide-folder-cog",actions:[y]}),!1),U=async()=>{const R=e.value.jetbrainsHttpUsesRelativePath?s:h?S(h,s):s,N=await a(R,f,P);return n.add(N?{title:"Opened in JetBrains",color:"success",icon:"i-lucide-check"}:{title:"JetBrains not reachable",description:`Nothing responded on localhost:${e.value.jetbrainsPort}. Start the IDE with the Remote Control plugin (and "Allow unsigned requests").`,color:"error",icon:"i-lucide-plug-zap"}),N};if(o==="vscode"){J();return}if(o==="jetbrains-url"){E();return}if(o==="jetbrains-http"){await U();return}if(e.value.jetbrainsHttpUsesRelativePath||!!h){const R=e.value.jetbrainsHttpUsesRelativePath?s:S(h,s);if(await a(R,f,P)){n.add({title:"Opened in JetBrains",color:"success",icon:"i-lucide-check"});return}}if(h){J();return}if($){E();return}n.add({title:'Set up "Open in IDE"',description:"Add your local workspace folder (for VS Code) or a JetBrains project name to open files from here.",color:"info",icon:"i-lucide-folder-cog",actions:[y]})}return{prefs:e,isConfigured:d,openInIde:l,openInVscode:t=>l({...t,method:"vscode"}),openViaJetbrainsUrl:t=>l({...t,method:"jetbrains-url"}),openViaJetbrainsHttp:t=>l({...t,method:"jetbrains-http"}),resolveRoot:m,resolveJbProjectName:b,resolveAbsPath:g,settingsOpen:r,settingsContext:i,openSettings:v}}export{X as I,Y as J,W as V,A as b,Q as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as u,o as f,c as m,t as g,O as d}from"./DHltYerF.js";const p=u({__name:"TagBadge",props:{text:{},color:{},variant:{}},setup(t){function s(n,o){const e=parseInt(n.slice(1,3),16),c=parseInt(n.slice(3,5),16),a=parseInt(n.slice(5,7),16);return`rgba(${e},${c},${a},${o})`}function l(n){const o=i=>{const r=i/255;return r<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)},e=o(parseInt(n.slice(1,3),16)),c=o(parseInt(n.slice(3,5),16)),a=o(parseInt(n.slice(5,7),16));return .2126*e+.7152*c+.0722*a>.179?"#1a1a1a":"#ffffff"}return(n,o)=>(f(),m("span",{class:"inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium whitespace-nowrap",style:d(t.variant==="outline"?{border:`1px solid ${t.color}`,color:t.color,backgroundColor:s(t.color,.08)}:{backgroundColor:t.color,color:l(t.color)})},g(t.text),5))}}),I=Object.assign(p,{__name:"TagBadge"});export{I as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as W}from"./B4jvLMfS.js";import{_ as X}from"./rsiRgrVM.js";import{_ as Y}from"./DZUgX70W.js";import{_ as Z,a as tt}from"./CdMuck_X.js";import{_ as et}from"./swrbBdtB.js";import{d as st,u as at,w as C,B as ot,e as nt,f as m,g as a,h as D,o as r,i,t as l,k as t,q as d,c as u,j as o,s as rt,m as _,x as it,_ as lt,F as T,y as w,p as ct,v as ut,r as dt,n as _t}from"./DHltYerF.js";import{_ as mt,a as pt}from"./CUvGJXY3.js";import{_ as ft}from"./DHXWp5yD.js";import{_ as gt}from"./DBtBvrYc.js";import{_ as ht}from"./hgHc4teu.js";import{_ as yt}from"./D6PUPmRC.js";import{_ as xt}from"./BXY_PWcx.js";import{_ as vt}from"./C1dyLp_j.js";import{_ as kt}from"./CN1mJlvD.js";import{_ as bt}from"./wHnZ9OaL.js";import{h as S,f as $t,i as Rt}from"./BeKvLsja.js";import{u as I}from"./DXbPFI1d.js";import"./BbS6Bwby.js";import"./BUXSUkJ_.js";import"./Df7kUO0m.js";import"./By4YL7mx.js";import"./r3SBLxtE.js";import"./rTvJTef_.js";import"./BlA8mIS-.js";import"./D7W_4Sqc.js";import"./4TxgDGVa.js";import"./BFP6M-20.js";import"./Dwws9U0D.js";const jt={class:"flex flex-col gap-4 p-4"},Ct={class:"flex items-start gap-4 flex-wrap"},Dt={class:"flex-1 min-w-0"},Tt={class:"text-xl font-bold truncate"},wt={key:1,class:"flex items-center gap-2 mt-2"},St={key:0,class:"grid grid-cols-1 lg:grid-cols-2 gap-4"},It={class:"flex items-center gap-1 flex-wrap max-h-[200px] overflow-y-auto py-1"},zt={key:0,class:"text-sm text-gray-400"},Lt={key:1,class:"text-center py-6 text-gray-400"},Nt={class:"text-xs whitespace-nowrap"},Ut={class:"text-gray-500"},Pt={class:"text-gray-400 ml-1"},Et={key:0},Bt={key:1,class:"text-gray-400"},Ft=["title"],At={class:"flex justify-end"},Kt={class:"space-y-2"},Vt={class:"flex items-center gap-2 min-w-0"},Ht={class:"text-sm truncate"},Mt={key:0,class:"text-xs text-gray-400 shrink-0"},be=st({__name:"[id]",async setup(Ot){let p,y;const h=at().params.id,{data:s,refresh:z}=([p,y]=C(()=>I(`/api/test-cases/${h}`,"$lGxJwg8IQ6")),p=await p,y(),p),{data:f}=([p,y]=C(()=>I(`/api/test-cases/${h}/history`,"$6RWgXFRP_s")),p=await p,y(),p),R=dt([]);ot(()=>s.value?.project?.id,async n=>{if(n)try{R.value=(await $fetch(`/api/projects/${n}/markers`)).markers??[]}catch{}},{immediate:!0});function L(){const n=s.value?.project?.id;n&&_t(`/projects/${n}?tab=timeline`)}nt(D(()=>({title:`${s.value?.title||`Test case #${h}`} — Piwi Dashboard`})));const x=D(()=>{const n=s.value;return!n||!n.totalRuns?null:Math.round((n.passedRuns+n.skippedRuns)/n.totalRuns*100)}),N=n=>n==="open"?"error":n==="resolved"?"success":"neutral",U=[{accessorKey:"startTime",header:"Date"},{accessorKey:"status",header:"Status"},{accessorKey:"duration",header:"Duration"},{accessorKey:"retries",header:"Retries"},{accessorKey:"runId",header:"Run"},{accessorKey:"error",header:"Error"},{id:"actions",header:"Actions"}];return(n,c)=>{const P=W,E=X,B=Y,F=tt,A=et,v=rt,k=lt,b=it,g=pt,K=ft,V=mt,H=gt,j=ht,M=yt,O=ut,G=xt,q=vt,$=kt,J=bt,Q=Z;return r(),m(Q,{id:"test-case-evolution"},{header:a(()=>[o(F,null,{leading:a(()=>[o(P),o(E,{items:[{label:"Home",icon:"i-lucide-house",to:"/"},{label:"Projects",to:"/projects"},...t(s)?.project?.id?[{label:t(s).project.name||"Project",to:`/projects/${t(s).project.id}`}]:[{label:"Project"}],{label:t(s)?.title||`Test case #${t(h)}`}]},null,8,["items"])]),right:a(()=>[o(B,{actions:[{label:"Refresh",icon:"i-lucide-refresh-cw",onClick:()=>t(z)()}]},null,8,["actions"])]),_:1})]),body:a(()=>[i("div",jt,[i("div",Ct,[i("div",Dt,[i("h1",Tt,l(t(s)?.title),1),t(s)?.filePath?(r(),m(A,{key:0,"file-path":t(s).filePath,"project-key":t(s)?.project?.id,"project-name":t(s)?.project?.name,class:"text-sm text-gray-500 mt-0.5"},null,8,["file-path","project-key","project-name"])):d("",!0),t(s)?.project?(r(),u("div",wt,[o(v,{color:"neutral",variant:"soft",size:"xs",class:"font-mono"},{default:a(()=>[_(l(t(s).project.name),1)]),_:1}),t(s)?.flakyRuns>0?(r(),m(v,{key:0,color:"warning",variant:"soft",size:"xs"},{default:a(()=>[_(l(t(s).flakyRuns)+" flaky run"+l(t(s).flakyRuns===1?"":"s"),1)]),_:1})):d("",!0)])):d("",!0)]),t(s)?.lastExecutionId?(r(),m(b,{key:0,to:`/test-run-cases/${t(s).lastExecutionId}`,class:"shrink-0"},{default:a(()=>[o(k,{size:"sm",variant:"outline","trailing-icon":"i-lucide-arrow-right"},{default:a(()=>[...c[0]||(c[0]=[_(" Latest execution ",-1)])]),_:1})]),_:1},8,["to"])):d("",!0)]),o(V,null,{default:a(()=>[o(g,{label:"Total runs",value:t(s)?.totalRuns??0},null,8,["value"]),o(g,{label:"Pass rate",value:t(x)!==null?`${t(x)}%`:"—","value-class":(t(x)??0)>=80?"text-green-600":(t(x)??0)>=50?"text-yellow-600":"text-red-600"},null,8,["value","value-class"]),o(g,{label:"Failed",value:t(s)?.failedRuns??0,"value-class":"text-red-600"},null,8,["value"]),o(g,{label:"Avg duration",value:t(s)?.avgDuration!=null?("formatDuration"in n?n.formatDuration:t(S))(t(s).avgDuration):"—"},null,8,["value"]),o(g,{label:"Flaky",value:t(s)?.flakyRuns??0,"value-class":(t(s)?.flakyRuns??0)>0?"text-purple-600":""},{label:a(()=>[c[1]||(c[1]=_(" Flaky ",-1)),o(K,{topic:"case.flaky-count"})]),_:1},8,["value","value-class"]),o(g,{label:"Last run",size:"sm",value:t(s)?.lastRunAt?("formatRelativeTime"in n?n.formatRelativeTime:t($t))(t(s).lastRunAt):"—"},null,8,["value"])]),_:1}),t(f)&&t(f).length>1?(r(),u("div",St,[o(j,{title:"Duration trend",icon:"i-lucide-trending-up",help:"case.history-chart"},{default:a(()=>[o(H,{data:t(f),height:200,markers:t(R),onMarkerClick:L},null,8,["data","markers"])]),_:1}),o(j,{title:"Status history",icon:"i-lucide-check-circle",help:"case.sparkline"},{default:a(()=>[i("div",It,[(r(!0),u(T,null,w(t(f),(e,qt)=>(r(),m(M,{key:e.id,text:`Run #${e.runId}: ${e.status} — ${new Date(e.startTime).toLocaleDateString("en-US",{month:"short",day:"numeric"})}`},{default:a(()=>[o(b,{to:`/test-run-cases/${e.id}`,class:ct([{"bg-red-500 hover:bg-red-600":e.status==="failed"||e.status==="timedOut","bg-green-500 hover:bg-green-600":e.status==="passed","bg-yellow-500 hover:bg-yellow-600":e.status==="skipped","bg-gray-400 hover:bg-gray-500":!["passed","failed","skipped","timedOut"].includes(e.status)},"size-3.5 rounded-sm inline-block transition-colors"]),title:`Run #${e.runId}: ${e.status}`},null,8,["to","class","title"])]),_:2},1032,["text"]))),128)),t(f).length===0?(r(),u("span",zt,"No history yet")):d("",!0)])]),_:1})])):t(f)&&t(f).length<=1?(r(),u("div",Lt,[o(O,{name:"i-lucide-trending-up",class:"size-6 mx-auto mb-1"}),c[2]||(c[2]=i("p",{class:"text-sm"},"Need at least 2 runs to show trends.",-1))])):d("",!0),o($,{icon:"i-lucide-list-checks",title:`Recent executions (${t(s)?.recentExecutions?.length??0})`},{default:a(()=>[t(s)?.recentExecutions?.length?(r(),m(G,{key:0,data:t(s).recentExecutions,columns:U,ui:{base:"table-fixed border-separate border-spacing-0",thead:"[&>tr]:bg-elevated/50 [&>tr]:after:content-none",tbody:"[&>tr]:last:[&>td]:border-b-0",th:"first:rounded-l-lg last:rounded-r-lg border-y border-default first:border-l last:border-r",td:"border-b border-default"}},{"startTime-cell":a(({row:e})=>[i("span",Nt,[i("span",Ut,l(new Date(e.original.startTime).toLocaleDateString("en-US",{month:"short",day:"numeric"})),1),i("span",Pt,l(new Date(e.original.startTime).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})),1)])]),"status-cell":a(({row:e})=>[o(v,{color:("getStatusColor"in n?n.getStatusColor:t(Rt))(e.original.status),class:"capitalize"},{default:a(()=>[_(l(e.original.status),1)]),_:2},1032,["color"])]),"duration-cell":a(({row:e})=>[e.original.duration!==null?(r(),u("span",Et,l(("formatDuration"in n?n.formatDuration:t(S))(e.original.duration)),1)):(r(),u("span",Bt,"—"))]),"retries-cell":a(({row:e})=>[_(l(e.original.retries&&e.original.retries>0?e.original.retries:""),1)]),"runId-cell":a(({row:e})=>[o(b,{to:`/test-runs/${e.original.runId}`,class:"text-primary hover:underline"},{default:a(()=>[_(l(e.original.runLabel?`${e.original.runLabel} (#${e.original.runId})`:`#${e.original.runId}`),1)]),_:2},1032,["to"])]),"error-cell":a(({row:e})=>[e.original.error?(r(),u("span",{key:0,class:"text-red-600 text-xs truncate max-w-xs block",title:e.original.error},l(e.original.error.length>80?`${e.original.error.substring(0,80)}…`:e.original.error),9,Ft)):d("",!0)]),"actions-header":a(()=>[...c[3]||(c[3]=[i("div",{class:"text-right"},"Actions",-1)])]),"actions-cell":a(({row:e})=>[i("div",At,[o(k,{to:`/test-run-cases/${e.original.id}`,size:"sm",variant:"outline","trailing-icon":"i-lucide-arrow-right"},{default:a(()=>[...c[4]||(c[4]=[_(" View ",-1)])]),_:1},8,["to"])])]),_:1},8,["data"])):(r(),m(q,{key:1,icon:"i-lucide-inbox",text:"No executions yet"}))]),_:1},8,["title"]),t(s)?.failureClusters?.length?(r(),m($,{key:2,icon:"i-lucide-bug",title:`Failure clusters (${t(s).failureClusters.length})`,help:"cluster.concept"},{default:a(()=>[i("div",Kt,[(r(!0),u(T,null,w(t(s).failureClusters,e=>(r(),u("div",{key:e.id,class:"flex items-center justify-between py-2 px-2 rounded hover:bg-gray-50 dark:hover:bg-gray-800"},[i("div",Vt,[o(v,{color:N(e.status),variant:"soft",size:"xs",class:"capitalize"},{default:a(()=>[_(l(e.status),1)]),_:2},1032,["color"]),i("span",Ht,l(e.signature),1),e.occurrences>1?(r(),u("span",Mt,l(e.occurrences)+" occurrences ",1)):d("",!0)]),o(k,{to:`/failure-clusters/${e.id}`,size:"xs",variant:"outline","trailing-icon":"i-lucide-arrow-right"},{default:a(()=>[...c[5]||(c[5]=[_(" View ",-1)])]),_:1},8,["to"])]))),128))])]),_:1},8,["title"])):d("",!0),t(s)?.links?.length?(r(),m($,{key:3,icon:"i-lucide-link",title:"Links",help:"shared.entity-links"},{default:a(()=>[o(J,{"entity-type":"test_case","entity-id":Number(t(h)),links:t(s).links??null},null,8,["entity-id","links"])]),_:1})):d("",!0)])]),_:1})}}});export{be as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{as as o}from"./DHltYerF.js";function n(){const e=o()?.vnode?.scopeId;return e?{[e]:""}:{}}export{n as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_}from"./D6PUPmRC.js";import{d as f,o as a,f as b,g as r,c as o,F as d,y as u,k as p,O as h,p as m,i as l,t as n,h as x}from"./DHltYerF.js";const g={key:0,class:"flex h-2.5 w-full min-w-30 overflow-hidden rounded-full bg-gray-200 dark:bg-gray-700"},w={key:1,class:"text-xs text-gray-400 dark:text-gray-500 italic"},v={class:"min-w-52 space-y-1.5 rounded-md bg-gray-900 px-3 py-2 text-sm shadow-lg"},B={class:"font-semibold text-white"},C={class:"text-white"},F={class:"ml-4 tabular-nums font-medium text-white"},N={class:"ml-auto tabular-nums text-gray-300 text-xs"},P=f({__name:"TestStatusBar",props:{passed:{},failed:{},skipped:{},flaky:{},total:{},didNotRun:{}},setup(i){const t=i,c=x(()=>t.total?[{key:"passed",label:"Passed",count:t.passed-t.flaky,color:"bg-green-500"},{key:"failed",label:"Failed",count:t.failed,color:"bg-red-500"},{key:"flaky",label:"Flaky",count:t.flaky,color:"bg-purple-500"},{key:"skipped",label:"Skipped",count:t.skipped,color:"bg-gray-400"},{key:"didNotRun",label:"Didn't run",count:t.didNotRun??0,color:"bg-amber-300 dark:bg-amber-700"}].filter(s=>s.count>0).map(s=>({...s,widthPct:s.count/t.total*100,displayPct:(s.count/t.total*100).toFixed(1)})):[]);return(y,s)=>{const k=_;return a(),b(k,{ui:{content:"overflow-visible !p-0"}},{content:r(()=>[l("div",v,[l("div",B,n(i.total)+" tests total",1),(a(!0),o(d,null,u(p(c),e=>(a(),o("div",{key:e.key,class:"flex items-center gap-2 whitespace-nowrap"},[l("span",{class:m([e.color,"inline-block h-2.5 w-2.5 shrink-0 rounded-sm"])},null,2),l("span",C,n(e.label),1),l("span",F,n(e.count),1),l("span",N,n(e.displayPct)+"%",1)]))),128))])]),default:r(()=>[i.total>0?(a(),o("div",g,[(a(!0),o(d,null,u(p(c),e=>(a(),o("div",{key:e.key,class:m([e.color,"h-full transition-all"]),style:h({width:e.widthPct+"%"})},null,6))),128))])):(a(),o("div",w,"No tests"))]),_:1})}}}),T=Object.assign(P,{__name:"TestStatusBar"});export{T as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as C,b as S,o as r,f as k,g as s,i as y,O as U,c as g,F as j,y as F,z as p,j as o,D as I,q as v,m as h,A as w}from"./DHltYerF.js";import{_ as A}from"./DZ3Vfcpz.js";import{_ as $}from"./BeFDVhpA.js";import{_ as B}from"./DHXWp5yD.js";import{_ as L}from"./Dga3Av-m.js";import{_ as O}from"./EPZOxdgq.js";import{A as P}from"./BeKvLsja.js";const D={key:0,class:"flex flex-wrap gap-1 py-0.5"},H={key:1,class:"text-[var(--ui-text-muted)]"},N=C({__name:"TagsSelect",props:{modelValue:{},allTags:{}},emits:["update:modelValue","tagCreated"],setup(t,{emit:V}){const u=t,d=V,b=S();async function _(f){const n=f.trim();if(!n)return;const i=u.allTags.find(a=>a.text.toLowerCase()===n.toLowerCase());if(i){u.modelValue.some(a=>a.id===i.id)||d("update:modelValue",[...u.modelValue,i]);return}try{const a=await $fetch("/api/tags",{method:"POST",body:{text:n,color:P()}});d("tagCreated",a.tag),d("update:modelValue",[...u.modelValue,a.tag])}catch(a){const e=a&&typeof a=="object"&&"data"in a?a.data?.message:void 0;b.add({title:"Failed to create tag",description:e||"An error occurred",color:"error"})}}return(f,n)=>{const i=L,a=O;return r(),k(a,{"model-value":t.modelValue,items:t.allTags,multiple:"","create-item":"always","label-key":"text",by:"id",placeholder:"Select or create tags…",class:"w-full","onUpdate:modelValue":n[0]||(n[0]=e=>d("update:modelValue",e)),onCreate:_},{default:s(({modelValue:e})=>[e.length?(r(),g("div",D,[(r(!0),g(j,null,F(e,m=>(r(),k(i,{key:m.id,text:m.text,color:m.color},null,8,["text","color"]))),128))])):(r(),g("span",H,"Select or create tags…"))]),"item-leading":s(({item:e})=>[y("span",{class:"inline-block size-2 rounded-full shrink-0",style:U({backgroundColor:e.color})},null,4)]),_:1},8,["model-value","items"])}}}),q=Object.assign(N,{__name:"TagsSelect"}),z={class:"space-y-5"},E={class:"inline-flex items-center gap-1"},G={class:"inline-flex items-center gap-1"},J=C({__name:"ProjectFormFields",props:w({mode:{},allTags:{},hasToken:{type:Boolean,default:!1}},{name:{default:""},nameModifiers:{},label:{default:""},labelModifiers:{},description:{default:""},descriptionModifiers:{},diagnosisInstructions:{default:""},diagnosisInstructionsModifiers:{},scmToken:{default:""},scmTokenModifiers:{},tags:{default:()=>[]},tagsModifiers:{}}),emits:w(["tag-created"],["update:name","update:label","update:description","update:diagnosisInstructions","update:scmToken","update:tags"]),setup(t,{emit:V}){const u=V,d=p(t,"name"),b=p(t,"label"),_=p(t,"description"),f=p(t,"diagnosisInstructions"),n=p(t,"scmToken"),i=p(t,"tags");return(a,e)=>{const m=I,c=A,x=$,T=B,M=q;return r(),g("div",z,[t.mode==="create"?(r(),k(c,{key:0,label:"Project name",name:"name",required:"",description:"A unique identifier used to match test results from the reporter."},{default:s(()=>[o(m,{modelValue:d.value,"onUpdate:modelValue":e[0]||(e[0]=l=>d.value=l),placeholder:"e.g. my-app",class:"w-full"},null,8,["modelValue"])]),_:1})):v("",!0),o(c,{label:"Display label",name:"label",description:"A friendly name shown in the UI (defaults to project name if not set)."},{default:s(()=>[o(m,{modelValue:b.value,"onUpdate:modelValue":e[1]||(e[1]=l=>b.value=l),placeholder:"e.g. My Application",class:"w-full"},null,8,["modelValue"])]),_:1}),o(c,{label:"Description",name:"description",description:"Optional description of this project."},{default:s(()=>[o(x,{modelValue:_.value,"onUpdate:modelValue":e[2]||(e[2]=l=>_.value=l),placeholder:"Enter project description",rows:3,class:"w-full"},null,8,["modelValue"])]),_:1}),t.mode==="edit"?(r(),g(j,{key:1},[o(c,{name:"diagnosisInstructions",description:"Combined with the global instructions from Settings → AI."},{label:s(()=>[y("span",E,[e[7]||(e[7]=h(" AI diagnosis instructions ",-1)),o(T,{topic:"project.ai-instructions"})])]),default:s(()=>[o(x,{modelValue:f.value,"onUpdate:modelValue":e[3]||(e[3]=l=>f.value=l),placeholder:"e.g. This project tests the payment checkout flow. The backend uses Stripe for payments and the payment API is at /api/v2/payments. Database errors are usually caused by connection pool exhaustion under load.",rows:5,class:"w-full font-mono text-sm"},null,8,["modelValue"])]),_:1}),o(c,{name:"scmToken",description:t.hasToken?"Leave empty to keep the stored token, enter a new value to replace it, or save empty to remove it":"For GitHub, GitLab, or Bitbucket. Falls back to the global SCM token if not set."},{label:s(()=>[y("span",G,[e[8]||(e[8]=h("SCM token ",-1)),o(T,{topic:"project.scm-token"})])]),default:s(()=>[o(m,{modelValue:n.value,"onUpdate:modelValue":e[4]||(e[4]=l=>n.value=l),type:"password",placeholder:t.hasToken?"•••••••• (unchanged)":"ghp_..., glpat-..., or bitbucket token",class:"w-full font-mono"},null,8,["modelValue","placeholder"])]),_:1},8,["description"])],64)):v("",!0),o(c,{label:"Tags",name:"tags",description:"Select existing tags or type a new name and press Enter to create one."},{default:s(()=>[o(M,{modelValue:i.value,"onUpdate:modelValue":e[5]||(e[5]=l=>i.value=l),"all-tags":t.allTags,class:"w-full",onTagCreated:e[6]||(e[6]=l=>u("tag-created"))},null,8,["modelValue","all-tags"])]),_:1})])}}}),ee=Object.assign(J,{__name:"ProjectFormFields"});export{ee as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{d as L,W as He,ay as st,X as Le,C as ae,o as n,f as c,g as u,j as y,k as e,U as C,l as Ye,T as v,ba as nt,bb as Ee,G as Ce,bc as ut,r as G,h as w,as as dt,Y as Te,bd as pt,S as Q,V as le,be as ct,bf as ft,bg as mt,bh as gt,bi as vt,ab as Fe,bj as bt,bk as Ze,H as qe,bl as yt,ae as ht,bm as _t,Z as te,bn as xt,q as A,bo as Ct,az as Ie,aB as qt,m as ee,B as Ae,Q as It,bp as St,bq as zt,t as Z,$ as me,br as wt,a0 as Bt,a1 as kt,z as Ot,a2 as Lt,a3 as At,a4 as Et,a5 as Tt,bs as Ft,aN as Vt,bt as $t,aY as Pt,b3 as Ne,aP as Be,b4 as Y,c as F,p as h,i as ce,aG as se,v as xe,aH as je,bu as Rt,F as J,y as ke,_ as Dt,bv as Mt,D as Kt,A as Ge,bw as Ue,bx as fe,au as Nt,aZ as jt,a6 as Gt,by as Ut,bz as Wt,bA as Ht}from"./DHltYerF.js";import{L as Yt,a as Zt,b as Qt,i as Xt,c as Jt,d as ea,e as ta,f as aa,g as la}from"./Bd3HqPMF.js";const[D,ia]=Te("ComboboxRoot");var oa=L({__name:"ComboboxRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},openOnFocus:{type:Boolean,required:!1,default:!1},openOnClick:{type:Boolean,required:!1,default:!1},ignoreFilter:{type:Boolean,required:!1},resetModelValueOnClear:{type:Boolean,required:!1,default:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},multiple:{type:Boolean,required:!1},dir:{type:String,required:!1},disabled:{type:Boolean,required:!1},highlightOnHover:{type:Boolean,required:!1,default:!0},by:{type:[String,Function],required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue","highlight","update:open"],setup(m,{expose:f,emit:o}){const s=m,a=o,{primitiveElement:l,currentElement:t}=Ee(),{multiple:p,disabled:b,ignoreFilter:E,resetSearchTermOnSelect:_,openOnFocus:V,openOnClick:T,dir:M,resetModelValueOnClear:B,highlightOnHover:q}=He(s),I=st(M),K=Le(s,"modelValue",a,{defaultValue:s.defaultValue??(p.value?[]:void 0),passive:s.modelValue===void 0,deep:!0}),N=Le(s,"open",a,{defaultValue:s.defaultOpen,passive:s.open===void 0});async function g(S){N.value=S,oe.value="",S?(await Ce(),l.value?.highlightSelected(),j.value=!0,U.value?.focus()):(j.value=!1,setTimeout(()=>{!S&&s.resetSearchTermOnBlur&&k.trigger()},1))}const k=ut(),j=G(!1),ie=G(!1),U=G(),ne=G(),ge=w(()=>l.value?.highlightedElement??void 0),ue=G(new Map),de=G(new Map),{contains:Se}=pt({sensitivity:"base"}),oe=G(""),ve=w(S=>{if(!oe.value||s.ignoreFilter||ie.value)return{count:ue.value.size,items:S?.items??new Map,groups:S?.groups??new Set(de.value.keys())};let $=0;const P=new Map,X=new Set;for(const[pe,H]of ue.value){const re=Se(H,oe.value);P.set(pe,re?1:0),re&&$++}for(const[pe,H]of de.value)for(const re of H)if(P.get(re)>0){X.add(pe);break}return{count:$,items:P,groups:X}}),W=dt();return ae(()=>{W?.exposed&&(W.exposed.highlightItem=l.value?.highlightItem,W.exposed.highlightFirstItem=l.value?.highlightFirstItem,W.exposed.highlightSelected=l.value?.highlightSelected)}),f({filtered:ve,highlightedElement:ge,highlightItem:l.value?.highlightItem,highlightFirstItem:l.value?.highlightFirstItem,highlightSelected:l.value?.highlightSelected}),ia({modelValue:K,multiple:p,disabled:b,open:N,onOpenChange:g,contentId:"",isUserInputted:j,isVirtual:ie,inputElement:U,highlightedElement:ge,onInputElementChange:S=>U.value=S,triggerElement:ne,onTriggerElementChange:S=>ne.value=S,parentElement:t,resetSearchTermOnSelect:_,onResetSearchTerm:k.on,allItems:ue,allGroups:de,filterSearch:oe,filterState:ve,ignoreFilter:E,openOnFocus:V,openOnClick:T,resetModelValueOnClear:B}),(S,$)=>(n(),c(e(nt),null,{default:u(()=>[y(e(Yt),C({ref_key:"primitiveElement",ref:l},S.$attrs,{modelValue:e(K),"onUpdate:modelValue":$[0]||($[0]=P=>Ye(K)?K.value=P:null),style:{pointerEvents:e(N)?"auto":void 0},as:S.as,"as-child":S.asChild,dir:e(I),multiple:e(p),name:S.name,required:S.required,disabled:e(b),"highlight-on-hover":e(q),by:s.by,onHighlight:$[1]||($[1]=P=>a("highlight",P))}),{default:u(()=>[v(S.$slots,"default",{open:e(N),modelValue:e(K)})]),_:3},16,["modelValue","style","as","as-child","dir","multiple","name","required","disabled","highlight-on-hover","by"])]),_:3}))}}),ra=oa,sa=L({__name:"ComboboxAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(m){const{forwardRef:f}=Q();return(o,s)=>(n(),c(e(ct),{"as-child":"",reference:o.reference},{default:u(()=>[y(e(le),C({ref:e(f),"as-child":o.asChild,as:o.as},o.$attrs),{default:u(()=>[v(o.$slots,"default")]),_:3},16,["as-child","as"])]),_:3},8,["reference"]))}}),na=sa;const[ua,da]=Te("ComboboxContent");var pa=L({__name:"ComboboxContentImpl",props:{position:{type:String,required:!1,default:"inline"},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},dir:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(m,{emit:f}){const o=m,s=f,{position:a}=He(o),l=D(),t=w(()=>l.ignoreFilter.value?l.allItems.value.size===0:l.filterState.value.count===0),{forwardRef:p,currentElement:b}=Q();ft(o.bodyLock),mt(),gt(l.parentElement);const E=w(()=>o.position==="popper"?o:{}),_=vt(E.value),V={boxSizing:"border-box","--reka-combobox-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-combobox-content-available-width":"var(--reka-popper-available-width)","--reka-combobox-content-available-height":"var(--reka-popper-available-height)","--reka-combobox-trigger-width":"var(--reka-popper-anchor-width)","--reka-combobox-trigger-height":"var(--reka-popper-anchor-height)"};da({position:a});const T=G(!1);ae(()=>{l.inputElement.value&&(T.value=b.value.contains(l.inputElement.value),T.value&&l.inputElement.value.focus())}),Fe(()=>{const B=bt();T.value&&(!B||B===document.body)&&l.triggerElement.value?.focus()});function M(B){if(l.parentElement.value?.contains(B))return!0;const I=(B instanceof Element?B.closest("label"):null)?.control;return!!I&&!!l.parentElement.value?.contains(I)}return(B,q)=>(n(),c(e(Zt),{"as-child":""},{default:u(()=>[y(e(Ze),{"as-child":"",onMountAutoFocus:q[5]||(q[5]=qe(()=>{},["prevent"])),onUnmountAutoFocus:q[6]||(q[6]=qe(()=>{},["prevent"]))},{default:u(()=>[y(e(yt),{"as-child":"","disable-outside-pointer-events":B.disableOutsidePointerEvents,onDismiss:q[0]||(q[0]=I=>e(l).onOpenChange(!1)),onFocusOutside:q[1]||(q[1]=I=>{M(I.target)&&I.preventDefault(),s("focusOutside",I)}),onInteractOutside:q[2]||(q[2]=I=>s("interactOutside",I)),onEscapeKeyDown:q[3]||(q[3]=I=>s("escapeKeyDown",I)),onPointerDownOutside:q[4]||(q[4]=I=>{M(I.target)&&I.preventDefault(),s("pointerDownOutside",I)})},{default:u(()=>[(n(),c(ht(e(a)==="popper"?e(_t):e(le)),C({...B.$attrs,...e(_)},{id:e(l).contentId,ref:e(p),"memo-dependencies":e(a)==="popper"?[e(l).filterSearch.value,e(l).filterState.value]:void 0,"data-state":e(l).open.value?"open":"closed","data-empty":t.value?"":void 0,style:{display:o.hideWhenEmpty&&t.value?"none":"flex",flexDirection:"column",outline:"none",...e(a)==="popper"?V:{}}}),{default:u(()=>[v(B.$slots,"default")]),_:3},16,["id","memo-dependencies","data-state","data-empty","style"]))]),_:3},8,["disable-outside-pointer-events"])]),_:3})]),_:3}))}}),ca=pa,fa=L({__name:"ComboboxArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(m){const f=m,o=D(),s=ua();return Q(),(a,l)=>e(o).open.value&&e(s).position.value==="popper"?(n(),c(e(xt),te(C({key:0},f)),{default:u(()=>[v(a.$slots,"default")]),_:3},16)):A("v-if",!0)}}),ma=fa,ga=L({__name:"ComboboxCancel",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(m){const f=m;Q();const o=D();function s(){o.filterSearch.value="",o.inputElement.value&&(o.inputElement.value.value="",o.inputElement.value.focus()),o.resetModelValueOnClear?.value&&(o.modelValue.value=o.multiple.value?[]:null)}return(a,l)=>(n(),c(e(le),C({type:a.as==="button"?"button":void 0},f,{tabindex:"-1",onClick:s}),{default:u(()=>[v(a.$slots,"default")]),_:3},16,["type"]))}}),va=ga,ba=L({__name:"ComboboxContent",props:{forceMount:{type:Boolean,required:!1},position:{type:String,required:!1},bodyLock:{type:Boolean,required:!1},hideWhenEmpty:{type:Boolean,required:!1},memoDependencies:{type:Array,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},dir:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(m,{emit:f}){const a=Ct(m,f),{forwardRef:l}=Q(),t=D();return t.contentId||=Ie(void 0,"reka-combobox-content"),(p,b)=>(n(),c(e(qt),{present:p.forceMount||e(t).open.value},{default:u(()=>[y(ca,C({...e(a),...p.$attrs},{ref:e(l)}),{default:u(()=>[v(p.$slots,"default")]),_:3},16)]),_:3},8,["present"]))}}),ya=ba,ha=L({__name:"ComboboxEmpty",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(m){const f=m,o=D(),s=w(()=>o.ignoreFilter.value?o.allItems.value.size===0:o.filterState.value.count===0);return(a,l)=>s.value?(n(),c(e(le),te(C({key:0},f)),{default:u(()=>[v(a.$slots,"default",{},()=>[l[0]||(l[0]=ee("No options"))])]),_:3},16)):A("v-if",!0)}}),_a=ha;const[Qe,xa]=Te("ComboboxGroup");var Ca=L({__name:"ComboboxGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(m){const f=m,o=Ie(void 0,"reka-combobox-group"),s=D(),a=w(()=>s.ignoreFilter.value?!0:s.filterSearch.value?s.filterState.value.groups.has(o):!0),l=xa({id:o,labelId:""});return ae(()=>{s.allGroups.value.has(o)||s.allGroups.value.set(o,new Set)}),Fe(()=>{s.allGroups.value.delete(o)}),(t,p)=>(n(),c(e(Qt),C({id:e(o),"aria-labelledby":e(l).labelId},f,{hidden:a.value?void 0:!0}),{default:u(()=>[v(t.$slots,"default")]),_:3},16,["id","aria-labelledby","hidden"]))}}),Oe=Ca,qa=L({__name:"ComboboxInput",props:{displayValue:{type:Function,required:!1},modelValue:{type:String,required:!1},autoFocus:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"input"}},emits:["update:modelValue"],setup(m,{emit:f}){const o=m,s=f,a=D(),l=Xt(),{primitiveElement:t,currentElement:p}=Ee(),b=Le(o,"modelValue",s,{passive:o.modelValue===void 0});ae(()=>{p.value&&a.onInputElementChange(p.value)});const{isComposing:E,handleCompositionStart:_,handleCompositionEnd:V}=St(g=>{const k=g.target;k&&M(k.value)});function T(g){E.value||(g.preventDefault(),a.open.value||a.onOpenChange(!0))}function M(g){a.open.value?a.filterSearch.value=g:(a.onOpenChange(!0),Ce(()=>{g&&(a.filterSearch.value=g,l.highlightFirstItem())}))}function B(g){E.value||M(g.target.value)}function q(){a.openOnFocus.value&&!a.open.value&&a.onOpenChange(!0)}function I(g){if(!a.open.value)return;const k=g.relatedTarget;if(!k)return;const j=a.parentElement.value?.contains(k),ie=document.getElementById(a.contentId)?.contains(k);!j&&!ie&&requestAnimationFrame(()=>{if(!a.open.value)return;const U=document.activeElement;!a.parentElement.value?.contains(U)&&!document.getElementById(a.contentId)?.contains(U)&&a.onOpenChange(!1)})}function K(){a.openOnClick.value&&!a.open.value&&a.onOpenChange(!0)}function N(){const g=a.modelValue.value;o.displayValue?b.value=o.displayValue(g):!a.multiple.value&&g&&!Array.isArray(g)&&typeof g!="object"?b.value=g.toString():b.value="",Ce(()=>{b.value=b.value})}return a.onResetSearchTerm(()=>{N()}),Ae(a.modelValue,async()=>{!a.isUserInputted.value&&a.resetSearchTermOnSelect.value&&N()},{immediate:!0,deep:!0}),Ae(a.filterState,(g,k)=>{!a.isVirtual.value&&k.count===0&&l.highlightFirstItem()}),(g,k)=>(n(),c(e(Jt),{ref_key:"primitiveElement",ref:t,modelValue:e(b),"onUpdate:modelValue":k[0]||(k[0]=j=>Ye(b)?b.value=j:null),as:g.as,"as-child":g.asChild,"auto-focus":g.autoFocus,disabled:g.disabled,"aria-expanded":e(a).open.value,"aria-controls":e(a).contentId,"aria-autocomplete":"list",role:"combobox",autocomplete:"off",onClick:K,onInput:B,onKeydown:It(T,["down","up"]),onFocus:q,onBlur:I,onCompositionstart:e(_),onCompositionend:e(V)},{default:u(()=>[v(g.$slots,"default")]),_:3},8,["modelValue","as","as-child","auto-focus","disabled","aria-expanded","aria-controls","onCompositionstart","onCompositionend"]))}}),Ia=qa,Sa=L({__name:"ComboboxItem",props:{textValue:{type:String,required:!1},value:{type:null,required:!0},disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(m,{emit:f}){const o=m,s=f,a=Ie(void 0,"reka-combobox-item"),l=D(),t=Qe(null),{primitiveElement:p,currentElement:b}=Ee();if(o.value==="")throw new Error("A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.");const E=w(()=>{if(l.isVirtual.value||l.ignoreFilter.value||!l.filterSearch.value)return!0;{const _=l.filterState.value.items.get(a);return _===void 0?!0:_>0}});return ae(()=>{l.allItems.value.set(a,o.textValue||b.value.textContent||b.value.innerText);const _=t?.id;_&&(l.allGroups.value.has(_)?l.allGroups.value.get(_)?.add(a):l.allGroups.value.set(_,new Set([a])))}),Fe(()=>{l.allItems.value.delete(a)}),(_,V)=>E.value?zt([E.value,e(l).filterSearch.value,e(l).disabled.value,_.disabled,o.value,o.as,o.asChild,...Object.values(_.$attrs)],()=>(n(),c(e(ea),C({key:0},o,{id:e(a),ref_key:"primitiveElement",ref:p,disabled:e(l).disabled.value||_.disabled,onSelect:V[0]||(V[0]=T=>{s("select",T),!T.defaultPrevented&&(!e(l).multiple.value&&!_.disabled&&!e(l).disabled.value?(T.preventDefault(),e(l).onOpenChange(!1),e(l).modelValue.value=o.value):e(l).multiple.value&&e(l).inputElement.value?.focus())})}),{default:u(()=>[v(_.$slots,"default",{},()=>[ee(Z(_.value),1)])]),_:3},16,["id","disabled"])),V,1):A("v-if",!0)}}),We=Sa,za=L({__name:"ComboboxItemIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(m){const f=m;return(o,s)=>(n(),c(e(ta),te(me(f)),{default:u(()=>[v(o.$slots,"default")]),_:3},16))}}),wa=za,Ba=L({__name:"ComboboxLabel",props:{for:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(m){const f=m;Q();const o=Qe({id:"",labelId:""});return o.labelId||=Ie(void 0,"reka-combobox-group-label"),(s,a)=>(n(),c(e(le),C(f,{id:e(o).labelId}),{default:u(()=>[v(s.$slots,"default")]),_:3},16,["id"]))}}),ka=Ba,Oa=L({__name:"ComboboxPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(m){const f=m;return(o,s)=>(n(),c(e(wt),te(me(f)),{default:u(()=>[v(o.$slots,"default")]),_:3},16))}}),La=Oa,Aa=L({__name:"ComboboxSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(m){const f=m;return Q(),(o,s)=>(n(),c(e(le),C(f,{"aria-hidden":"true"}),{default:u(()=>[v(o.$slots,"default")]),_:3},16))}}),Ea=Aa,Ta=L({__name:"ComboboxTrigger",props:{disabled:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(m){const f=m,{forwardRef:o,currentElement:s}=Q(),a=D(),l=w(()=>f.disabled||a.disabled.value||!1);return ae(()=>{s.value&&a.onTriggerElementChange(s.value)}),(t,p)=>(n(),c(e(le),C(f,{ref:e(o),type:t.as==="button"?"button":void 0,tabindex:"-1","aria-label":"Show popup","aria-haspopup":"listbox","aria-expanded":e(a).open.value,"aria-controls":e(a).contentId,"data-state":e(a).open.value?"open":"closed",disabled:l.value,"data-disabled":l.value?"":void 0,"aria-disabled":l.value??void 0,onClick:p[0]||(p[0]=b=>e(a).onOpenChange(!e(a).open.value))}),{default:u(()=>[v(t.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","disabled","data-disabled","aria-disabled"]))}}),Fa=Ta,Va=L({__name:"ComboboxVirtualizer",props:{options:{type:Array,required:!0},overscan:{type:Number,required:!1},estimateSize:{type:[Number,Function],required:!1},textContent:{type:Function,required:!1}},setup(m){const f=m,o=D();return o.isVirtual.value=!0,(s,a)=>(n(),c(aa,te(me(f)),{default:u(l=>[v(s.$slots,"default",te(me(l)))]),_:3},16))}}),$a=Va;const Pa={slots:{base:["relative group rounded-md inline-flex items-center disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",value:"truncate pointer-events-none",placeholder:"truncate text-dimmed",arrow:"fill-bg stroke-default",content:["max-h-[min(15rem,var(--reka-select-content-available-height,15rem))] w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden origin-(--reka-select-content-transform-origin) pointer-events-auto flex flex-col","max-h-[min(15rem,var(--reka-combobox-content-available-height,15rem))] origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)"],viewport:"relative scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",empty:"text-center text-muted",label:"font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:["group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default","transition-colors"],itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemLeadingChip:"shrink-0",itemLeadingChipSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemWrapper:"flex-1 flex flex-col min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",input:"border-b border-default",focusScope:"flex flex-col min-h-0",trailingClear:"p-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1 text-[10px]/3 gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-2 text-xs"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1.5 text-[10px]/3 gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-2.5 text-xs"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-2.5 text-sm"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-2 text-xs gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-3 text-sm"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",label:"p-2 text-sm gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemLeadingChip:"size-6",itemLeadingChipSize:"lg",itemTrailingIcon:"size-6",empty:"p-3 text-base"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented hover:bg-elevated disabled:bg-default",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented hover:bg-accented/75 disabled:bg-elevated",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent focus:outline-none"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},fixed:{false:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},position:{popper:{content:"data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in]"},"item-aligned":{content:""}},multiple:{true:""},virtualize:{true:{viewport:"p-1 isolate"},false:{viewport:"divide-y divide-default"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"outline-success/25 focus-visible:outline-3 focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"outline-info/25 focus-visible:outline-3 focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"outline-error/25 focus-visible:outline-3 focus-visible:ring-error"},{color:"primary",variant:["soft","ghost"],class:"outline-primary/25 focus-visible:outline-3"},{color:"secondary",variant:["soft","ghost"],class:"outline-secondary/25 focus-visible:outline-3"},{color:"success",variant:["soft","ghost"],class:"outline-success/25 focus-visible:outline-3"},{color:"info",variant:["soft","ghost"],class:"outline-info/25 focus-visible:outline-3"},{color:"warning",variant:["soft","ghost"],class:"outline-warning/25 focus-visible:outline-3"},{color:"error",variant:["soft","ghost"],class:"outline-error/25 focus-visible:outline-3"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted"},{color:"neutral",variant:["soft","ghost"],class:"outline-inverted/25 focus-visible:outline-3"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}},{fixed:!1,size:"xs",class:"md:text-xs"},{fixed:!1,size:"sm",class:"md:text-xs"},{fixed:!1,size:"md",class:"md:text-sm"},{fixed:!1,size:"lg",class:"md:text-sm"}],defaultVariants:{size:"md",color:"primary",variant:"outline",position:"popper"}},Ma=Object.assign({inheritAttrs:!1},{__name:"USelectMenu",props:Ge({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},clear:{type:[Boolean,Object],required:!1},clearIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:null,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:Object,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},resetModelValueOnClear:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:""},searchTermModifiers:{}}),emits:Ge(["change","blur","focus","create","clear","highlight","update:modelValue","update:open"],["update:searchTerm"]),setup(m,{expose:f,emit:o}){const s=m,a=o,l=Bt(),t=kt("selectMenu",s),p=Ot(m,"searchTerm",{type:String,default:""}),{t:b}=Lt(),E=At(),{filterGroups:_}=Ht(),V=Et(Tt(t,"modelValue","defaultValue","open","defaultOpen","required","multiple","resetSearchTermOnBlur","resetSearchTermOnSelect","resetModelValueOnClear","highlightOnHover","by"),a),T=Ft(Y(()=>t.portal)),M=Y(()=>fe(t.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),B=Y(()=>fe(t.arrow,{rounded:!0})),q=w(()=>typeof t.clear=="object"?t.clear:{}),I=Y(()=>t.virtualize?fe(typeof t.virtualize=="boolean"?{}:t.virtualize,{estimateSize:la(be.value,X.value||"md",t.descriptionKey,!!l["item-description"])}):!1),K=Y(()=>fe(t.searchInput,{placeholder:b("selectMenu.search"),variant:"none"})),{emitFormBlur:N,emitFormFocus:g,emitFormInput:k,emitFormChange:j,size:ie,color:U,id:ne,name:ge,highlight:ue,disabled:de,ariaAttrs:Se}=Vt(s),{orientation:oe,size:ve}=$t(s),{isLeading:W,isTrailing:S,leadingIconName:$,trailingIconName:P}=Pt(Y(()=>fe(t,{trailingIcon:E.ui.icons.chevronDown}))),X=w(()=>ve.value||ie.value),[pe,H]=Ne(),[re,Ve]=Ne({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),d=w(()=>Gt({extend:Pa,...E.ui?.selectMenu||{}})({color:U.value??t.color,variant:t.variant,size:X?.value??t.size,loading:t.loading,highlight:ue.value??t.highlight,leading:W.value||!!t.avatar||!!l.leading,trailing:S.value||!!l.trailing,fieldGroup:oe.value,virtualize:!!t.virtualize,multiple:t.multiple}));function Xe(r){if(t.multiple&&Array.isArray(r)){const x=r.map(i=>Ue($e.value,i,{labelKey:t.labelKey,valueKey:t.valueKey,by:t.by})).filter(i=>i!=null&&i!=="");return x.length>0?x.join(", "):void 0}return Ue($e.value,r,{labelKey:t.labelKey,valueKey:t.valueKey,by:t.by})}const ze=w(()=>t.items?.length?Wt(t.items)?t.items:[t.items]:[]),$e=w(()=>ze.value.flatMap(r=>r)),Pe=w(()=>{if(t.ignoreFilter||!p.value)return ze.value;const r=Array.isArray(t.filterFields)?t.filterFields:[t.labelKey];return _(ze.value,p.value,{fields:r,isStructural:x=>z(x)&&!!x.type&&["label","separator"].includes(x.type)})}),be=w(()=>Pe.value.flatMap(r=>r)),ye=w(()=>{if(!t.createItem||!p.value)return!1;const r=t.valueKey?{[t.valueKey]:p.value}:p.value;return typeof t.createItem=="object"&&t.createItem.when==="always"||t.createItem==="always"?!be.value.find(x=>Ut(x,r,t.by??t.valueKey)):!be.value.length}),he=w(()=>typeof t.createItem=="object"?t.createItem.position:"bottom"),we=Be("triggerRef");function Je(){t.autofocus&&we.value?.$el?.focus({focusVisible:!0})}ae(()=>{setTimeout(()=>{Je()},t.autofocusDelay)});function et(r){if(Nt(t.modelValue)===r)return;t.modelModifiers?.trim&&(typeof r=="string"||r===null||r===void 0)&&(r=r?.trim()??null),t.modelModifiers?.number&&(r=jt(r)),t.modelModifiers?.nullable&&(r??=null),t.modelModifiers?.optional&&!t.modelModifiers?.nullable&&r!==null&&(r??=void 0);const x=new Event("change",{target:{value:r}});a("change",x),j(),k(),t.resetSearchTermOnSelect&&(p.value="")}const Re=G(!1);function tt(r){Re.value=r;let x;if(r){const i=new FocusEvent("focus");a("focus",i),g(),clearTimeout(x)}else{const i=new FocusEvent("blur");a("blur",i),N(),t.resetSearchTermOnBlur&&(x=setTimeout(()=>{p.value=""},100))}}function at(r){r.preventDefault(),r.stopPropagation(),a("create",p.value)}function lt(r,x){if(z(x)){if(x.disabled){r.preventDefault();return}x.onSelect?.(r)}}function z(r){return typeof r=="object"&&r!==null}function it(r){return t.multiple&&Array.isArray(r)?r.length===0:r==null||r===""}function ot(){a("clear")}const De=Be("viewportRef"),Me=Be("comboboxRootRef");return Ae(()=>t.items,async()=>{!Re.value||!t.createItem||(await Ce(),Me.value?.highlightFirstItem?.())},{flush:"post"}),f({triggerRef:Y(()=>we.value?.$el),viewportRef:Y(()=>De.value)}),(r,x)=>(n(),F(J,null,[y(e(pe),null,{default:u(()=>[y(e(We),{"data-slot":"item",class:h(d.value.item({class:e(t).ui?.item})),value:p.value,onSelect:at},{default:u(()=>[ce("span",{"data-slot":"itemLabel",class:h(d.value.itemLabel({class:e(t).ui?.itemLabel}))},[v(r.$slots,"create-item-label",{item:p.value},()=>[ee(Z(e(b)("selectMenu.create",{label:p.value})),1)])],2)]),_:3},8,["class","value"])]),_:3}),y(e(re),null,{default:u(({item:i,index:R})=>[z(i)&&i.type==="label"?(n(),c(e(ka),{key:0,"data-slot":"label",class:h(d.value.label({class:[e(t).ui?.label,i.ui?.label,i.class]}))},{default:u(()=>[ee(Z(e(se)(i,e(t).labelKey)),1)]),_:2},1032,["class"])):z(i)&&i.type==="separator"?(n(),c(e(Ea),{key:1,"data-slot":"separator",class:h(d.value.separator({class:[e(t).ui?.separator,i.ui?.separator,i.class]}))},null,8,["class"])):(n(),c(e(We),{key:2,"data-slot":"item",class:h(d.value.item({class:[e(t).ui?.item,z(i)&&i.ui?.item,z(i)&&i.class]})),disabled:z(i)&&i.disabled,value:e(t).valueKey&&z(i)?e(se)(i,e(t).valueKey):i,onSelect:O=>lt(O,i)},{default:u(()=>[v(r.$slots,"item",{item:i,index:R,ui:d.value},()=>[v(r.$slots,"item-leading",{item:i,index:R,ui:d.value},()=>[z(i)&&i.icon?(n(),c(xe,{key:0,name:i.icon,"data-slot":"itemLeadingIcon",class:h(d.value.itemLeadingIcon({class:[e(t).ui?.itemLeadingIcon,i.ui?.itemLeadingIcon]}))},null,8,["name","class"])):z(i)&&i.avatar?(n(),c(je,C({key:1,size:i.ui?.itemLeadingAvatarSize||e(t).ui?.itemLeadingAvatarSize||d.value.itemLeadingAvatarSize()},i.avatar,{"data-slot":"itemLeadingAvatar",class:d.value.itemLeadingAvatar({class:[e(t).ui?.itemLeadingAvatar,i.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):z(i)&&i.chip?(n(),c(Rt,C({key:2,size:i.ui?.itemLeadingChipSize||e(t).ui?.itemLeadingChipSize||d.value.itemLeadingChipSize(),inset:"",standalone:""},i.chip,{"data-slot":"itemLeadingChip",class:d.value.itemLeadingChip({class:[e(t).ui?.itemLeadingChip,i.ui?.itemLeadingChip]})}),null,16,["size","class"])):A("",!0)]),ce("span",{"data-slot":"itemWrapper",class:h(d.value.itemWrapper({class:[e(t).ui?.itemWrapper,z(i)&&i.ui?.itemWrapper]}))},[ce("span",{"data-slot":"itemLabel",class:h(d.value.itemLabel({class:[e(t).ui?.itemLabel,z(i)&&i.ui?.itemLabel]}))},[v(r.$slots,"item-label",{item:i,index:R},()=>[ee(Z(z(i)?e(se)(i,e(t).labelKey):i),1)])],2),z(i)&&(e(se)(i,e(t).descriptionKey)||l["item-description"])?(n(),F("span",{key:0,"data-slot":"itemDescription",class:h(d.value.itemDescription({class:[e(t).ui?.itemDescription,z(i)&&i.ui?.itemDescription]}))},[v(r.$slots,"item-description",{item:i,index:R},()=>[ee(Z(e(se)(i,e(t).descriptionKey)),1)])],2)):A("",!0)],2),ce("span",{"data-slot":"itemTrailing",class:h(d.value.itemTrailing({class:[e(t).ui?.itemTrailing,z(i)&&i.ui?.itemTrailing]}))},[v(r.$slots,"item-trailing",{item:i,index:R,ui:d.value}),y(e(wa),{"as-child":""},{default:u(()=>[y(xe,{name:e(t).selectedIcon||e(E).ui.icons.check,"data-slot":"itemTrailingIcon",class:h(d.value.itemTrailingIcon({class:[e(t).ui?.itemTrailingIcon,z(i)&&i.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))]),_:3}),y(e(ra),C({ref_key:"comboboxRootRef",ref:Me},e(V),{"ignore-filter":"","as-child":"",name:e(ge),disabled:e(de),"onUpdate:modelValue":et,"onUpdate:open":tt}),{default:u(({modelValue:i,open:R})=>[y(e(na),{"as-child":""},{default:u(()=>[y(e(Fa),C({id:e(ne),ref_key:"triggerRef",ref:we,"data-slot":"base",class:d.value.base({class:[e(t).ui?.base,e(t).class]}),tabindex:"0"},{...r.$attrs,...e(Se)}),{default:u(()=>[e(W)||e(t).avatar||l.leading?(n(),F("span",{key:0,"data-slot":"leading",class:h(d.value.leading({class:e(t).ui?.leading}))},[v(r.$slots,"leading",{modelValue:i,open:R,ui:d.value},()=>[e(W)&&e($)?(n(),c(xe,{key:0,name:e($),"data-slot":"leadingIcon",class:h(d.value.leadingIcon({class:e(t).ui?.leadingIcon}))},null,8,["name","class"])):e(t).avatar?(n(),c(je,C({key:1,size:e(t).ui?.itemLeadingAvatarSize||d.value.itemLeadingAvatarSize()},e(t).avatar,{"data-slot":"itemLeadingAvatar",class:d.value.itemLeadingAvatar({class:e(t).ui?.itemLeadingAvatar})}),null,16,["size","class"])):A("",!0)])],2)):A("",!0),v(r.$slots,"default",{modelValue:i,open:R,ui:d.value},()=>[(n(!0),F(J,null,ke([Xe(i)],O=>(n(),F(J,{key:O},[O!=null?(n(),F("span",{key:0,"data-slot":"value",class:h(d.value.value({class:e(t).ui?.value}))},Z(O),3)):(n(),F("span",{key:1,"data-slot":"placeholder",class:h(d.value.placeholder({class:e(t).ui?.placeholder}))},Z(e(t).placeholder??" "),3))],64))),128))]),e(S)||l.trailing||e(t).clear?(n(),F("span",{key:1,"data-slot":"trailing",class:h(d.value.trailing({class:e(t).ui?.trailing}))},[v(r.$slots,"trailing",{modelValue:i,open:R,ui:d.value},()=>[e(t).clear&&!it(i)?(n(),c(e(va),{key:0,"as-child":""},{default:u(()=>[y(Dt,C({as:"span",icon:e(t).clearIcon||e(E).ui.icons.close,size:X.value,variant:"link",color:"neutral",tabindex:"-1"},q.value,{"data-slot":"trailingClear",class:d.value.trailingClear({class:e(t).ui?.trailingClear}),onClick:qe(ot,["stop"])}),null,16,["icon","size","class"])]),_:1})):e(P)?(n(),c(xe,{key:1,name:e(P),"data-slot":"trailingIcon",class:h(d.value.trailingIcon({class:e(t).ui?.trailingIcon}))},null,8,["name","class"])):A("",!0)])],2)):A("",!0)]),_:2},1040,["id","class"])]),_:2},1024),y(e(La),te(me(e(T))),{default:u(()=>[y(e(Mt),null,{default:u(()=>[y(e(ya),C({"data-slot":"content",class:d.value.content({class:e(t).ui?.content})},M.value),{default:u(()=>[y(e(Ze),{trapped:"","data-slot":"focusScope",class:h(d.value.focusScope({class:e(t).ui?.focusScope}))},{default:u(()=>[v(r.$slots,"content-top"),e(t).searchInput?(n(),c(e(Ia),{key:0,modelValue:p.value,"onUpdate:modelValue":x[1]||(x[1]=O=>p.value=O),"display-value":()=>p.value,"as-child":""},{default:u(()=>[y(Kt,C({autofocus:"",autocomplete:"off",size:X.value},K.value,{"model-modifiers":{trim:e(t).modelModifiers?.trim},"data-slot":"input",class:d.value.input({class:e(t).ui?.input}),onChange:x[0]||(x[0]=qe(()=>{},["stop"]))}),null,16,["size","model-modifiers","class"])]),_:1},8,["modelValue","display-value"])):A("",!0),y(e(_a),{"data-slot":"empty",class:h(d.value.empty({class:e(t).ui?.empty}))},{default:u(()=>[v(r.$slots,"empty",{searchTerm:p.value},()=>[ee(Z(p.value?e(b)("selectMenu.noMatch",{searchTerm:p.value}):e(b)("selectMenu.noData")),1)])]),_:3},8,["class"]),ce("div",{ref_key:"viewportRef",ref:De,role:"presentation","data-slot":"viewport",class:h(d.value.viewport({class:e(t).ui?.viewport}))},[e(t).virtualize?(n(),F(J,{key:0},[ye.value&&he.value==="top"?(n(),c(e(H),{key:0})):A("",!0),y(e($a),C({options:be.value,"text-content":O=>z(O)?e(se)(O,e(t).labelKey):String(O)},I.value),{default:u(({option:O,virtualItem:_e})=>[y(e(Ve),{item:O,index:_e.index},null,8,["item","index"])]),_:1},16,["options","text-content"]),ye.value&&he.value==="bottom"?(n(),c(e(H),{key:1})):A("",!0)],64)):(n(),F(J,{key:1},[ye.value&&he.value==="top"?(n(),c(e(Oe),{key:0,"data-slot":"group",class:h(d.value.group({class:e(t).ui?.group}))},{default:u(()=>[y(e(H))]),_:1},8,["class"])):A("",!0),(n(!0),F(J,null,ke(Pe.value,(O,_e)=>(n(),c(e(Oe),{key:`group-${_e}`,"data-slot":"group",class:h(d.value.group({class:e(t).ui?.group}))},{default:u(()=>[(n(!0),F(J,null,ke(O,(rt,Ke)=>(n(),c(e(Ve),{key:`group-${_e}-${Ke}`,item:rt,index:Ke},null,8,["item","index"]))),128))]),_:2},1032,["class"]))),128)),ye.value&&he.value==="bottom"?(n(),c(e(Oe),{key:1,"data-slot":"group",class:h(d.value.group({class:e(t).ui?.group}))},{default:u(()=>[y(e(H))]),_:1},8,["class"])):A("",!0)],64))],2),v(r.$slots,"content-bottom")]),_:3},8,["class"]),e(t).arrow?(n(),c(e(ma),C({key:0},B.value,{"data-slot":"arrow",class:d.value.arrow({class:e(t).ui?.arrow})}),null,16,["class"])):A("",!0)]),_:3},16,["class"])]),_:3})]),_:3},16)]),_:3},16,["name","disabled"])],64))}});export{Ma as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as f}from"./B4jvLMfS.js";import{_ as b}from"./rsiRgrVM.js";import{_ as h}from"./DZUgX70W.js";import{_ as j,a as x}from"./CdMuck_X.js";import{_ as y}from"./BvIDC_R-.js";import{d as C,u as $,w as v,e as w,f as P,g as a,h as g,o as k,i as B,j as t,k as e,r as N}from"./DHltYerF.js";import{u as R}from"./DXbPFI1d.js";import"./BbS6Bwby.js";import"./B1zMFx24.js";import"./qH_j2A3a.js";import"./BjCHB89N.js";import"./BJtlcTrb.js";import"./qpI-_f9Q.js";import"./C1dyLp_j.js";import"./B2oUeBbA.js";import"./DoFBTaDR.js";import"./D6PUPmRC.js";import"./BeKvLsja.js";import"./swrbBdtB.js";import"./BUXSUkJ_.js";import"./Df7kUO0m.js";import"./By4YL7mx.js";import"./BXY_PWcx.js";import"./BFP6M-20.js";import"./CN1mJlvD.js";import"./DHXWp5yD.js";import"./r3SBLxtE.js";import"./Dwws9U0D.js";import"./CfOLBbW9.js";const D={class:"p-4"},pe=C({__name:"test-cases",async setup(T){let r,n;const i=$(),s=String(i.params.id),{data:o}=([r,n]=v(()=>R(`/api/projects/${s}`,"$yKRg49mBCi")),r=await r,n(),r),c=N(null);return w(g(()=>({title:`${o.value?.label||o.value?.name||"Project"} — Test cases — Piwi Dashboard`}))),(U,A)=>{const m=f,p=b,_=h,l=x,u=y,d=j;return k(),P(d,{id:"project-test-cases"},{header:a(()=>[t(l,null,{leading:a(()=>[t(m),t(p,{items:[{label:"Home",icon:"i-lucide-house",to:"/"},{label:"Projects",to:"/projects"},{label:e(o)?.label||e(o)?.name||"Project",to:`/projects/${e(s)}`},{label:"Test cases"}]},null,8,["items"])]),right:a(()=>[t(_,{actions:[{label:"Refresh",icon:"i-lucide-refresh-cw",onClick:()=>e(c)?.refresh()}]},null,8,["actions"])]),_:1})]),body:a(()=>[B("div",D,[t(u,{ref_key:"tableRef",ref:c,"project-id":e(s),"project-name":e(o)?.name,"sync-query":""},null,8,["project-id","project-name"])])]),_:1})}}});export{pe as default};
|