@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 +1 @@
|
|
|
1
|
-
import{d as T,o as r,c as x,j as p,k as a,
|
|
1
|
+
import{d as T,o as r,c as x,j as p,k as a,p as U,t as E,v as b,i as k,f as _,g as y,m as I,_ as j,h as w,s as N,r as h,H as O,F as S,y as Z,C as D,I as R,l as C,J as H}from"./Du2W7Jne.js";import{u as J}from"./DSqHUrvO.js";const M=[{provider:"jira",tests:[/^https:\/\/([^./]+)\.atlassian\.net\/browse\//i,/^https:\/\/[^/]+\/jira\/software\/c\/projects\//i,/^https:\/\/[^/]+\/.+\/browse\//i],keyExtract:/\/([A-Z][A-Z0-9_]+-\d+)(?:\?|$|#)/i},{provider:"github-issue",tests:[/^https:\/\/github\.com\/[^/]+\/[^/]+\/issues\//i],keyExtract:/\/issues\/(\d+)/},{provider:"github-pr",tests:[/^https:\/\/github\.com\/[^/]+\/[^/]+\/pull\//i],keyExtract:/\/pull\/(\d+)/},{provider:"gitlab-issue",tests:[/^https:\/\/(gitlab\.[^/]+|[^/]+\.gitlab\.io)\/[^/]+\/[^/]+\/-\/issues\//i],keyExtract:/\/issues\/(\d+)/},{provider:"gitlab-mr",tests:[/^https:\/\/(gitlab\.[^/]+|[^/]+\.gitlab\.io)\/[^/]+\/[^/]+\/-\/merge_requests\//i],keyExtract:/\/merge_requests\/(\d+)/},{provider:"bitbucket",tests:[/^https:\/\/bitbucket\.org\/[^/]+\/[^/]+\/pull-requests\//i],keyExtract:/\/pull-requests\/(\d+)/},{provider:"confluence",tests:[/^https:\/\/([^./]+)\.atlassian\.net\/wiki\//i]},{provider:"slack",tests:[/^https:\/\/[^/]+\.slack\.com\//i]},{provider:"linear",tests:[/^https:\/\/linear\.app\//i],keyExtract:/\/([A-Za-z]+-\d+)(?:\/|\?|$|#)/},{provider:"notion",tests:[/^https:\/\/(www\.)?notion\.so\//i]}];function G(t){for(const c of M)if(c.tests.some(e=>e.test(t)))return c.provider;return"generic"}function z(t){return{jira:"i-simple-icons-jira","github-issue":"i-simple-icons-github","github-pr":"i-simple-icons-github","gitlab-issue":"i-simple-icons-gitlab","gitlab-mr":"i-simple-icons-gitlab",bitbucket:"i-simple-icons-bitbucket",confluence:"i-simple-icons-confluence",slack:"i-simple-icons-slack",linear:"i-simple-icons-linear",notion:"i-simple-icons-notion",generic:"i-lucide-link"}[t]}const K={class:"inline-flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs font-medium bg-gray-100 dark:bg-gray-800 text-gray-700 dark:text-gray-300 group hover:bg-gray-200 dark:hover:bg-gray-700 transition-colors"},Q={key:0,class:"font-mono text-primary font-medium"},W=["title"],X=T({__name:"LinkChip",props:{link:{},removable:{type:Boolean}},emits:["remove"],setup(t,{emit:c}){const e=t,v=c,g=w(()=>e.link.title||e.link.key||e.link.url.replace(/^https?:\/\//,"").slice(0,50)),o=w(()=>z(e.link.provider));return(s,l)=>{const d=U,f=N,m=j;return r(),x("span",K,[p(d,{name:a(o),class:"w-3.5 h-3.5 shrink-0"},null,8,["name"]),t.link.key?(r(),x("span",Q,E(t.link.key),1)):b("",!0),k("span",{class:"max-w-48 truncate",title:t.link.title||t.link.url},E(a(g)),9,W),t.link.statusText?(r(),_(f,{key:1,color:t.link.statusColor||"neutral",variant:"subtle",size:"xs"},{default:y(()=>[I(E(t.link.statusText),1)]),_:1},8,["color"])):b("",!0),p(m,{to:t.link.url,target:"_blank",size:"xs",variant:"ghost",color:"neutral",icon:"i-lucide-external-link",class:"opacity-0 group-hover:opacity-100 transition-opacity -my-1"},null,8,["to"]),t.removable?(r(),_(m,{key:2,size:"xs",variant:"ghost",color:"error",icon:"i-lucide-x",class:"opacity-0 group-hover:opacity-100 transition-opacity -my-1",onClick:l[0]||(l[0]=L=>v("remove",t.link.id))})):b("",!0)])}}}),Y=Object.assign(X,{__name:"LinkChip"}),tt={class:"flex flex-wrap items-center gap-1.5"},et={class:"relative"},it={class:"flex justify-end gap-2"},st=T({__name:"EntityLinks",props:{entityType:{},entityId:{},links:{}},emits:["updated"],setup(t,{emit:c}){const e=t,v=c,{copy:g}=J(),o=h(e.links??[]),s=h(""),l=h(!1),d=h(!1),f=w(()=>{try{return s.value?G(s.value):null}catch{return null}}),m=w(()=>f.value?z(f.value):null);async function L(){const n=await $fetch("/api/links",{params:{entityType:e.entityType,entityId:e.entityId}});o.value=n.links}async function B(){if(!(!s.value||d.value)){d.value=!0;try{const n=await $fetch("/api/links",{method:"POST",body:{entityType:e.entityType,entityId:e.entityId,url:s.value}});o.value.push(n.link),s.value="",l.value=!1,v("updated")}catch(n){g(n?.data?.message||"Failed to add link",{toast:!0})}finally{d.value=!1}}}async function V(n){try{await $fetch(`/api/links/${n}`,{method:"DELETE"}),o.value=o.value.filter(i=>i.id!==n),v("updated")}catch{g("Failed to remove link",{toast:!0})}}return O(()=>[e.entityType,e.entityId],()=>{e.links?o.value=e.links:L()},{immediate:!0}),(n,i)=>{const A=Y,$=j,P=R,q=U,F=H;return r(),x("div",tt,[(r(!0),x(S,null,Z(a(o),u=>(r(),_(A,{key:u.id,link:u,removable:"",onRemove:V},null,8,["link"]))),128)),p(F,{open:a(l),"onUpdate:open":i[2]||(i[2]=u=>C(l)?l.value=u:null)},{content:y(()=>[k("form",{class:"p-3 space-y-3 min-w-72",onSubmit:D(B,["prevent"])},[i[5]||(i[5]=k("p",{class:"text-sm font-medium"},"Add link",-1)),k("div",et,[p(P,{modelValue:a(s),"onUpdate:modelValue":i[0]||(i[0]=u=>C(s)?s.value=u:null),placeholder:"https://...",size:"sm",class:"w-full",autofocus:""},null,8,["modelValue"]),a(m)?(r(),_(q,{key:0,name:a(m),class:"absolute right-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"},null,8,["name"])):b("",!0)]),k("div",it,[p($,{size:"xs",variant:"ghost",color:"neutral",onClick:i[1]||(i[1]=u=>l.value=!1)},{default:y(()=>[...i[3]||(i[3]=[I(" Cancel ",-1)])]),_:1}),p($,{size:"xs",color:"primary",type:"submit",loading:a(d),disabled:!a(s).trim()},{default:y(()=>[...i[4]||(i[4]=[I(" Add ",-1)])]),_:1},8,["loading","disabled"])])],32)]),default:y(()=>[p($,{size:"xs",variant:"ghost",color:"neutral",icon:"i-lucide-plus",class:"text-gray-400 hover:text-gray-600 dark:hover:text-gray-300",title:"Add link"})]),_:1},8,["open"])])}}}),ot=Object.assign(st,{__name:"EntityLinks"});export{ot as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as
|
|
1
|
+
import{d as R,u as q,a as F,b as S,c as g,j as t,g as n,o as i,k as e,f as h,F as T,v as j,i as d,C as A,I as M,l as k,_ as D,m as b,t as x,D as z,p as E,h as V,r as u}from"./Du2W7Jne.js";import{_ as L}from"./BrQEE053.js";import{_ as O}from"./AbmKWFQQ.js";import{_ as G}from"./-f7BAm1H.js";import"./L3kAWB2a.js";const H={class:"min-h-screen flex items-center justify-center bg-elevated/50"},J={class:"flex items-center gap-2"},K={class:"text-2xl font-bold"},Q={class:"mt-4 text-center"},te=R({__name:"reset-password",setup(W){const f=q(),U=F(),$=S(),m=V(()=>f.query.token),p=V(()=>f.query.mode==="invite"),o=u(""),c=u(""),r=u(!1),a=u("");async function B(){if(a.value="",!m.value){a.value="Missing reset token";return}if(o.value.length<8){a.value="Password must be at least 8 characters";return}if(o.value!==c.value){a.value="Passwords do not match";return}r.value=!0;try{await $fetch("/api/auth/reset-password",{method:"POST",body:{token:m.value,password:o.value}}),$.add({title:p.value?"Account activated!":"Password reset!",color:"success"}),U.push("/login")}catch(l){const s=l&&typeof l=="object"&&"data"in l?l.data?.message:void 0;a.value=s||"Invalid or expired link"}finally{r.value=!1}}return(l,s)=>{const C=E,v=L,w=M,y=O,I=D,N=z,P=G;return i(),g("div",H,[t(P,{class:"w-full max-w-md"},{header:n(()=>[d("div",J,[t(C,{name:"i-lucide-lock",class:"size-6"}),d("h1",K,x(e(p)?"Set your password":"Reset your password"),1)])]),default:n(()=>[e(m)?(i(),g(T,{key:1},[e(a)?(i(),h(v,{key:0,color:"error",title:e(a),variant:"subtle",class:"mb-4"},null,8,["title"])):j("",!0),d("form",{class:"space-y-4",onSubmit:A(B,["prevent"])},[t(y,{label:"New password",name:"password",required:""},{default:n(()=>[t(w,{modelValue:e(o),"onUpdate:modelValue":s[0]||(s[0]=_=>k(o)?o.value=_:null),type:"password",placeholder:"Min 8 characters",autocomplete:"new-password",disabled:e(r),class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),t(y,{label:"Confirm password",name:"confirmPassword",required:""},{default:n(()=>[t(w,{modelValue:e(c),"onUpdate:modelValue":s[1]||(s[1]=_=>k(c)?c.value=_:null),type:"password",placeholder:"Repeat password",autocomplete:"new-password",disabled:e(r),class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),t(I,{type:"submit",block:"",loading:e(r)},{default:n(()=>[b(x(e(p)?"Activate account":"Reset password"),1)]),_:1},8,["loading"])],32)],64)):(i(),h(v,{key:0,color:"error",title:"Invalid link",description:"This link is missing or malformed."})),d("div",Q,[t(N,{to:"/login",class:"text-sm text-gray-500 hover:text-gray-700 dark:hover:text-gray-300"},{default:n(()=>[...s[2]||(s[2]=[b(" Back to login ",-1)])]),_:1})])]),_:1})])}}});export{te as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{x as U,y as g,z as q,A as Q,B as Z,D as ee,E as
|
|
1
|
+
import{x as U,y as g,z as q,A as Q,B as Z,D as ee,E as V,X as te,C as ne,c as E,d as ae,i as re,e as se,F as $,j as ie,G as R,f as Y,g as X,k as oe,r as O,n as P,s as T,l as W,H as z,I,J as le,K as ce,p as ue,t as he,P as de,v as ye}from"./CwGWJbiy.js";import{d as fe,an as pe,B as ve,K as ge,ad as me,H as K,o as ke,c as xe,h as be,r as Se}from"./Du2W7Jne.js";function Ae(p,n,e){var r=null,s=g(!0),l=null,o=q,c=null,m=U(a);p=typeof p=="function"?p:p===void 0?Q:g(+p),n=typeof n=="function"?n:n===void 0?g(0):g(+n),e=typeof e=="function"?e:e===void 0?Z:g(+e);function a(t){var u,x,h,d=(t=ee(t)).length,f,v=!1,b,i=new Array(d),y=new Array(d);for(l==null&&(c=o(b=m())),u=0;u<=d;++u){if(!(u<d&&s(f=t[u],u,t))===v)if(v=!v)x=u,c.areaStart(),c.lineStart();else{for(c.lineEnd(),c.lineStart(),h=u-1;h>=x;--h)c.point(i[h],y[h]);c.lineEnd(),c.areaEnd()}v&&(i[u]=+p(f,u,t),y[u]=+n(f,u,t),c.point(r?+r(f,u,t):i[u],e?+e(f,u,t):y[u]))}if(b)return c=null,b+""||null}function k(){return V().defined(s).curve(o).context(l)}return a.x=function(t){return arguments.length?(p=typeof t=="function"?t:g(+t),r=null,a):p},a.x0=function(t){return arguments.length?(p=typeof t=="function"?t:g(+t),a):p},a.x1=function(t){return arguments.length?(r=t==null?null:typeof t=="function"?t:g(+t),a):r},a.y=function(t){return arguments.length?(n=typeof t=="function"?t:g(+t),e=null,a):n},a.y0=function(t){return arguments.length?(n=typeof t=="function"?t:g(+t),a):n},a.y1=function(t){return arguments.length?(e=t==null?null:typeof t=="function"?t:g(+t),a):e},a.lineX0=a.lineY0=function(){return k().x(p).y(n)},a.lineY1=function(){return k().x(p).y(e)},a.lineX1=function(){return k().x(r).y(n)},a.defined=function(t){return arguments.length?(s=typeof t=="function"?t:g(!!t),a):s},a.curve=function(t){return arguments.length?(o=t,l!=null&&(c=o(l)),a):o},a.context=function(t){return arguments.length?(t==null?l=c=null:c=o(l=t),a):l},a}const De=Object.assign(Object.assign({},te),{color:void 0,curveType:ne.MonotoneX,baseline:()=>0,opacity:1,cursor:null,line:!1,lineColor:void 0,lineWidth:2,lineDashArray:void 0,minHeight1Px:!1,minHeight:void 0,stackMinHeight:!1}),J=E`
|
|
2
2
|
label: area-component;
|
|
3
3
|
`,Ce=re`
|
|
4
4
|
:root {
|
|
@@ -15,7 +15,7 @@ import{x as U,y as g,z as q,A as Q,B as Z,D as ee,E as J,X as te,C as ne,c as E,
|
|
|
15
15
|
--vis-dark-area-stroke-color: none;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
${ae} ${`.${
|
|
18
|
+
${ae} ${`.${J}`} {
|
|
19
19
|
--vis-area-fill-opacity: 0.5;
|
|
20
20
|
--vis-area-stroke-color: var(--vis-dark-area-stroke-color);
|
|
21
21
|
}
|
|
@@ -38,4 +38,4 @@ import{x as U,y as g,z as q,A as Q,B as Z,D as ee,E as J,X as te,C as ne,c as E,
|
|
|
38
38
|
fill: none;
|
|
39
39
|
stroke-dasharray: var(--vis-line-stroke-dasharray);
|
|
40
40
|
stroke-dashoffset: var(--vis-line-stroke-dashoffset);
|
|
41
|
-
`,Me=Object.freeze(Object.defineProperty({__proto__:null,area:w,areaLinePath:B,globalStyles:Ce,root:
|
|
41
|
+
`,Me=Object.freeze(Object.defineProperty({__proto__:null,area:w,areaLinePath:B,globalStyles:Ce,root:J},Symbol.toStringTag,{value:"Module"}));class H extends se{constructor(n){super(),this._defaultConfig=De,this.config=this._defaultConfig,this.stacked=!0,this.events={[H.selectors.area]:{}},n&&this.setConfig(n),this.stacked=Array.isArray(this.config.y)}get bleed(){const{config:{line:n,lineWidth:e}}=this;if(!n)return{top:0,bottom:0,left:0,right:0};const r=this.yScale.domain(),l=(this.yScale.range()[0]>this.yScale.range()[1]?$.North:$.South)===$.South,o=e>3,c=e>=10;return{top:!c&&(!l&&r[1]===0||l&&r[0]===0)?0:e/2,bottom:!c&&(!l&&r[0]===0||l&&r[1]===0)?0:e/2,left:o?e/2:0,right:o?e/2:0}}_render(n){super._render(n);const{config:e,datamodel:{data:r}}=this,s=ie(n)?n:e.duration,l=R[e.curveType];this._areaGen=Ae().x(i=>i.x).y0(i=>i.y0).y1(i=>i.y1).curve(l);const o=Y(e.y)?e.y:[e.y],c=r.map((i,y)=>this.xScale(X(i,e.x,y))),m=oe(r,e.baseline,o,this._prevNegative);this._prevNegative=m.map(i=>!!i.isMostlyNegative);const a=this.yScale.range(),k=Math.min(a[0],a[1]),t=Math.max(a[0],a[1]),u=[],x=m.map(i=>i.map((y,A)=>{var S,D;const F=c[A],j=O(this.yScale(y[0]),k,t),G=O(this.yScale(y[1]),k,t),L=G>j,C=e.stackMinHeight&&u[A]||0,N=L?j+C:j-C,M=L?G+C:G-C;let _=0;return(e.minHeight||e.minHeight1Px)&&Math.abs(M-N)<((S=e.minHeight)!==null&&S!==void 0?S:1)&&(_=((D=e.minHeight)!==null&&D!==void 0?D:1)-Math.abs(M-N),e.stackMinHeight&&(u[A]=C+_)),{x:F,y0:N,y1:L?M+_:M-_}})),h=x.length-1,d=[...x].reverse(),f=this.g.selectAll(`.${w}`).data(d),v=f.enter().append("path").attr("class",w).attr("d",i=>this._areaGen(i)||this._emptyPath()).style("opacity",0).style("fill",(i,y)=>P(r,e.color,h-y)),b=T(v.merge(f),s).style("opacity",(i,y)=>i.some(S=>S.y0-S.y1!==0)?X(r,e.opacity,h-y):0).style("fill",(i,y)=>P(r,e.color,h-y)).style("cursor",(i,y)=>W(r,e.cursor,h-y));s?b.attrTween("d",(y,A,S)=>{const D=z(S[A]).attr("d"),F=this._areaGen(y)||this._emptyPath();return I(D,F)}):b.attr("d",i=>this._areaGen(i)||this._emptyPath()),T(f.exit(),s).style("opacity",0).remove(),this._renderLines(s,e.line?x:[])}_renderLines(n,e){var r;const{config:s,datamodel:{data:l}}=this,o=e.length-1,c=[...e].reverse(),m=(r=s.lineColor)!==null&&r!==void 0?r:s.color,a=this.g.selectAll(`.${B}`).data(c),k=this.g.selectAll(`.${w}`).nodes(),t=a.enter().insert("path",(h,d)=>k[d+1]).attr("class",B).attr("stroke",(h,d)=>P(l,m,o-d)).attr("stroke-width",s.lineWidth).attr("stroke-opacity",0),u=T(t.merge(a),n).attr("stroke",(h,d)=>P(l,m,o-d)).attr("stroke-width",s.lineWidth).attr("stroke-opacity",1).attr("cursor",(h,d)=>W(l,s.cursor,o-d)).style("stroke-dasharray",(h,d)=>{var f,v;return(v=(f=le(l,s.lineDashArray,d))===null||f===void 0?void 0:f.join(" "))!==null&&v!==void 0?v:null}),x=R[s.curveType];this._lineGen=V().x(h=>h.x).y(h=>h.y1).curve(x),n?u.attrTween("d",(d,f,v)=>{const b=z(v[f]).attr("d")||this._emptyLinePath(),i=this._lineGen(d)||this._emptyLinePath();return I(b,i)}):u.attr("d",h=>this._lineGen(h)||this._emptyLinePath()),T(a.exit(),n).style("opacity",0).remove()}getYDataExtent(n){const{config:e,datamodel:r}=this,s=Y(e.y)?e.y:[e.y],l=this.xScale.domain(),o=n?ce(r.data,l,e.x,!0):r.data;return ue(o,e.baseline,...s)}_emptyPath(){const n=this.xScale.range(),e=this.yScale.domain(),r=this.yScale((e[0]+e[1])/2),s=r;return this._areaGen([{y0:r,y1:s,x:n[0]},{y0:r,y1:s,x:n[1]}])}_emptyLinePath(){const n=this.xScale.range(),e=this.yScale.range();return`M${n[0]},${e[0]} L${n[1]},${e[0]}`}}H.selectors=Me;const _e={"data-vis-component":""},we=fe({__name:"index",props:{color:{type:[Function,String,Array,null]},curveType:{},baseline:{type:[Function,Number,null]},opacity:{type:[Function,Number,null]},cursor:{type:[Function,String,null]},line:{type:Boolean},lineColor:{type:[Function,String,Array,null]},lineWidth:{},lineDashArray:{type:[Function,Array,null]},minHeight1Px:{type:Boolean},minHeight:{},stackMinHeight:{type:Boolean},x:{type:[Function,Number,null]},y:{type:[Function,Number,null,Array]},id:{type:Function},xScale:{type:[Object,Function]},yScale:{type:[Object,Function]},excludeFromDomainCalculation:{type:Boolean},duration:{},events:{},attributes:{},data:{}},setup(p,{expose:n}){const e=pe(he),r=p,s=be(()=>e.data.value??r.data),l=de(r),o=Se();return ve(()=>{ge(()=>{o.value=new H(l.value),o.value?.setData(s.value),e.update(o.value)})}),me(()=>{o.value?.destroy(),e.destroy()}),K(l,(c,m)=>{ye(c,m)||(o.value?.setConfig(l.value),o.value?.render())}),K(s,()=>{o.value?.setData(s.value)}),n({component:o}),(c,m)=>(ke(),xe("div",_e))}});export{we as N};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as a,o as t,c as n,t as o,Q as s,q as c,aj as l}from"./Du2W7Jne.js";const r=a({__name:"TagBadge",props:{text:{},color:{},variant:{}},setup(e){return(i,m)=>(t(),n("span",{class:c(["tag-badge inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium whitespace-nowrap",e.variant==="outline"?"tag-badge--outline":""]),style:s({"--tag-color":e.color})},o(e.text),7))}}),p=Object.assign(l(r,[["__scopeId","data-v-58fcc931"]]),{__name:"TagBadge"});export{p as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as v,
|
|
1
|
+
import{d as v,b6 as I,aB as y,b7 as F,B as g,ad as h,H as K,o as S,f as B,g as i,j as C,k as r,X as w,V as R,h as u,b8 as T,b9 as q,K as k,ba as x}from"./Du2W7Jne.js";var _=v({__name:"RovingFocusItem",props:{tabStopId:{type:String,required:!1},focusable:{type:Boolean,required:!1,default:!0},active:{type:Boolean,required:!1},allowShiftKey:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(d){const n=d,a=I(),f=y(),l=u(()=>n.tabStopId||f),c=u(()=>a.currentTabStopId.value===l.value),{getItems:p,CollectionItem:b}=F();g(()=>{n.focusable&&a.onFocusableItemAdd()}),h(()=>{n.focusable&&a.onFocusableItemRemove()}),K(()=>n.focusable,(e,t)=>{e!==t&&(e?a.onFocusableItemAdd():a.onFocusableItemRemove())});function m(e){if(e.key==="Tab"&&e.shiftKey){a.onItemShiftTab();return}if(e.target!==e.currentTarget)return;const t=T(e,a.orientation.value,a.dir.value);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||!n.allowShiftKey&&e.shiftKey)return;e.preventDefault();let o=[...p().map(s=>s.ref).filter(s=>s.dataset.disabled!=="")];if(t==="last")o.reverse();else if(t==="prev"||t==="next"){t==="prev"&&o.reverse();const s=o.indexOf(e.currentTarget);o=a.loop.value?q(o,s+1):o.slice(s+1)}k(()=>x(o))}}return(e,t)=>(S(),B(r(b),null,{default:i(()=>[C(r(w),{tabindex:c.value?0:-1,"data-orientation":r(a).orientation.value,"data-active":e.active?"":void 0,"data-disabled":e.focusable?void 0:"",as:e.as,"as-child":e.asChild,onMousedown:t[0]||(t[0]=o=>{e.focusable?r(a).onItemFocus(l.value):o.preventDefault()}),onFocus:t[1]||(t[1]=o=>r(a).onItemFocus(l.value)),onKeydown:m},{default:i(()=>[R(e.$slots,"default")]),_:3},8,["tabindex","data-orientation","data-active","data-disabled","as","as-child"])]),_:3}))}}),j=_;export{j as R};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{am as he,h as B,ao as X,r as _,ap as be,d as M,E as se,H as Y,o as s,f as S,g as h,i as m,k as a,s as ne,m as w,t as f,c as l,j as o,_ as ae,v as u,F as G,p as N,l as A,I as ve,y as le,q as V,G as oe,K as ye,B as ke,ac as xe,V as F}from"./Du2W7Jne.js";import{_ as we}from"./BT3wGCTI.js";import{_ as _e}from"./BrQEE053.js";import{_ as ie}from"./A1pj0VnG.js";import{_ as $e}from"./AbmKWFQQ.js";import{_ as Ce}from"./Dpd16JVI.js";import{_ as je}from"./B3obW6cw.js";import{_ as Ie}from"./BUkim3TM.js";import{e as Se,t as Z,u as Ve}from"./BicAJ6U8.js";import{g as Ue,B as ee,A as ze,k as Be,j as Me}from"./DuwtTfO8.js";import{_ as Le}from"./b-GYfcrQ.js";import{_ as Re}from"./Bm62iDV5.js";import{_ as Ee}from"./-f7BAm1H.js";import{_ as Pe}from"./CxyAzHr3.js";const Fe={normal:[],headed:["--headed"],debug:["--debug"],ui:["--ui"]};function Ne(e){const t=new Map;for(const i of e){const n=i.projectName||"";t.has(n)||t.set(n,[]),t.get(n).push(i)}return t}function De(e,t){if(t==="grep"){const r=e.map(g=>Se(g.title));return["--grep",r.length===1?r[0]:`(${r.join("|")})`]}const i=new Set,n=[];for(const r of e){const g=t==="file-line"&&r.line?`${Z(r.filePath)}:${r.line}`:Z(r.filePath);i.has(g)||(i.add(g),n.push(g))}return n}function Te(e){return/[\s"'()|]/.test(e)?`"${e.replace(/"/g,'\\"')}"`:e}function Oe(e,t={}){if(e.length===0)return[];const i=t.mode??"file-line",n=t.runMode??"normal",r=Math.min(1e3,Math.max(1,Math.floor(t.repeatEach??1))),g=[];for(const[d,p]of Ne(e)){const b=De(p,i);d&&b.push(`--project=${d}`),b.push(...Fe[n]),t.trace&&b.push("--trace=on"),r>1&&b.push(`--repeat-each=${r}`),g.push({args:b,display:["playwright","test",...b.map(Te)].join(" ")})}return g}const te=2e3;function Ae(){const e=_("idle"),t=_([]),i=_(null),n=_(0),r=_(0),g=B(()=>e.value==="running");let d=null,p=!1,b=!1,C=[],j=null,v=null;function D(y,k){t.value.push({text:y,error:k}),t.value.length>te&&t.value.splice(0,t.value.length-te)}function T(y){if(y.kind==="exit"){v?.(y.code);return}D(y.line??"",y.kind!=="stdout")}async function L(){if(j)return;const y=be();if(!y)throw new Error("The desktop bridge is unavailable.");j=await y.listen("piwi:local-run",({payload:k})=>{k.id===d?T(k):p&&C.push(k)})}async function R(y,k){const $=X();if(!$)throw new Error("The desktop bridge is unavailable.");const z=new Promise(I=>{v=I});p=!0,C=[];try{d=await $.invoke("desktop_run_local_tests",{projectId:String(y),args:k.args})}finally{p=!1}for(const I of C)I.id===d&&T(I);C=[];const P=await z;return d=null,v=null,P}async function E(y,k){if(!(g.value||k.length===0)){b=!1,t.value=[],i.value=null,r.value=k.length,n.value=0,e.value="running";try{await L();let $=0;for(const[z,P]of k.entries()){if(b)break;n.value=z,k.length>1&&D(`$ ${P.display}`,!1);const I=await R(y,P);if(b)break;I!==0&&($=I??1)}b?e.value="stopped":(i.value=typeof $=="number"?$:1,e.value=$===0?"passed":"failed")}catch($){D(Ue($),!0),e.value="error"}}}async function U(){if(!g.value)return;b=!0;const y=X(),k=d;if(y&&k!=null)try{await y.invoke("desktop_stop_local_tests",{runId:k})}catch{}v?.(null),e.value="stopped"}return he(()=>{g.value&&U(),j?.(),j=null}),{status:e,running:g,lines:t,exitCode:i,stepIndex:n,stepCount:r,start:E,stop:U}}const He={class:"flex items-center gap-2 min-w-0"},qe={class:"space-y-4"},Ge={key:0,class:"space-y-3"},Ke={class:"text-sm text-muted"},Xe={class:"flex items-center justify-between gap-3"},Je={class:"flex items-center gap-2 min-w-0 text-sm"},Qe={class:"text-xs break-all"},We={class:"grid grid-cols-2 gap-3"},Ye={class:"space-y-1"},Ze={key:0,class:"space-y-2"},et={class:"flex items-center justify-between w-full gap-3"},tt={key:1},st={class:"flex items-center gap-2"},nt=M({__name:"DesktopRunLocallyModal",props:oe({projectId:{},projectLabel:{},cases:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(e){const t=e,i=se(e,"open"),{link:n,busy:r,pickAndLink:g}=Ve(()=>t.projectId),{status:d,running:p,lines:b,exitCode:C,stepIndex:j,stepCount:v,start:D,stop:T}=Ae(),L=_("file-line"),R=_("normal"),E=_(!1),U=_(1),y=[{label:"File:line",value:"file-line"},{label:"Title (grep)",value:"grep"},{label:"File only",value:"file"}],k=[{label:"Headless",value:"normal"},{label:"Headed",value:"headed"},{label:"Debug (inspector)",value:"debug"},{label:"UI mode",value:"ui"}],$=B(()=>!!n.value?.exists),z=B(()=>Oe(t.cases,{mode:L.value,runMode:R.value,trace:E.value,repeatEach:U.value})),P=B(()=>z.value.map(H=>H.display).join(`
|
|
2
|
+
`)),I=B(()=>{switch(d.value){case"running":return{label:v.value>1?`Running ${j.value+1}/${v.value}…`:"Running…",color:"info"};case"passed":return{label:"Passed",color:"success"};case"failed":return{label:C.value!=null?`Failed (exit ${C.value})`:"Failed",color:"error"};case"stopped":return{label:"Stopped",color:"neutral"};case"error":return{label:"Could not run",color:"error"};default:return null}});async function ce(){await D(t.projectId,z.value)}Y(i,H=>{!H&&p.value&&T()});const K=_(null);return Y(()=>b.value.length,async()=>{await ye(),K.value?.scrollTo({top:K.value.scrollHeight})}),(H,c)=>{const J=N,Q=ne,ue=_e,O=ae,W=ie,q=$e,de=ve,me=Ce,fe=je,ge=Ie;return s(),S(ge,{open:i.value,"onUpdate:open":c[7]||(c[7]=x=>i.value=x),ui:{content:"max-w-2xl"}},{header:h(()=>[m("div",He,[o(J,{name:"i-lucide-monitor-play",class:"size-5 text-primary shrink-0"}),c[8]||(c[8]=m("h2",{class:"text-base font-semibold truncate"},"Run tests locally",-1)),o(Q,{color:"neutral",variant:"subtle",size:"sm"},{default:h(()=>[w(f(e.cases.length)+" test"+f(e.cases.length===1?"":"s"),1)]),_:1})])]),body:h(()=>[m("div",qe,[a($)?(s(),l(G,{key:1},[m("div",Xe,[m("div",Je,[o(J,{name:"i-lucide-folder-check",class:"size-4 text-success shrink-0"}),m("code",Qe,f(a(n)?.path),1)]),o(O,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-folder-search",loading:a(r),disabled:a(p),onClick:a(g)},{default:h(()=>[...c[10]||(c[10]=[w(" Change ",-1)])]),_:1},8,["loading","disabled","onClick"])]),m("div",We,[o(q,{label:"Select tests by",name:"mode"},{default:h(()=>[o(W,{modelValue:a(L),"onUpdate:modelValue":c[0]||(c[0]=x=>A(L)?L.value=x:null),items:y,disabled:a(p),class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(q,{label:"Browser",name:"runMode"},{default:h(()=>[o(W,{modelValue:a(R),"onUpdate:modelValue":c[1]||(c[1]=x=>A(R)?R.value=x:null),items:k,disabled:a(p),class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(q,{label:"Repeat each",name:"repeatEach",description:"Run every test N times — flake reproduction."},{default:h(()=>[o(de,{modelValue:a(U),"onUpdate:modelValue":c[2]||(c[2]=x=>A(U)?U.value=x:null),modelModifiers:{number:!0},type:"number",min:"1",max:"1000",disabled:a(p),class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(q,{label:"Trace",name:"trace",description:"Force trace recording (--trace=on)."},{default:h(()=>[o(me,{modelValue:a(E),"onUpdate:modelValue":c[3]||(c[3]=x=>A(E)?E.value=x:null),disabled:a(p)},null,8,["modelValue","disabled"])]),_:1})]),m("div",Ye,[c[11]||(c[11]=m("div",{class:"text-xs text-muted"},"Runs in the linked folder",-1)),o(fe,{code:a(P),lang:"sh"},null,8,["code"])]),c[12]||(c[12]=m("p",{class:"text-xs text-muted"}," Results are reported by the folder's own Playwright config — with the Piwi reporter set up, the new run appears in this app automatically. ",-1)),a(d)!=="idle"?(s(),l("div",Ze,[m("div",{ref_key:"outputEl",ref:K,class:"h-64 overflow-y-auto rounded-md bg-zinc-950 p-3"},[(s(!0),l(G,null,le(a(b),(x,pe)=>(s(),l("p",{key:pe,class:V(["font-mono text-xs whitespace-pre-wrap",x.error?"text-red-400":"text-zinc-300"])},f(x.text||" "),3))),128))],512)])):u("",!0)],64)):(s(),l("div",Ge,[m("p",Ke," Link "+f(e.projectLabel||"this project")+" to its local checkout — the folder that contains these tests. Piwi runs that folder's own Playwright with the app's bundled Node, so nothing else needs to be installed. ",1),a(n)&&!a(n).exists?(s(),S(ue,{key:0,color:"warning",variant:"soft",icon:"i-lucide-folder-x",title:"The linked folder no longer exists",description:a(n).path},null,8,["description"])):u("",!0),o(O,{icon:"i-lucide-folder-plus",loading:a(r),onClick:a(g)},{default:h(()=>[...c[9]||(c[9]=[w("Choose folder…",-1)])]),_:1},8,["loading","onClick"])]))])]),footer:h(()=>[m("div",et,[a(I)?(s(),S(Q,{key:0,color:a(I).color,variant:"subtle"},{default:h(()=>[w(f(a(I).label),1)]),_:1},8,["color"])):(s(),l("span",tt)),m("div",st,[o(O,{color:"neutral",variant:"ghost",onClick:c[4]||(c[4]=x=>i.value=!1)},{default:h(()=>[...c[13]||(c[13]=[w("Close",-1)])]),_:1}),a(p)?(s(),S(O,{key:0,color:"error",icon:"i-lucide-square",onClick:c[5]||(c[5]=x=>a(T)())},{default:h(()=>[...c[14]||(c[14]=[w("Stop",-1)])]),_:1})):(s(),S(O,{key:1,icon:"i-lucide-play",disabled:!a($)||a(z).length===0||a(r),onClick:c[6]||(c[6]=x=>ce())},{default:h(()=>[w(f(a(d)==="idle"?"Run":"Run again"),1)]),_:1},8,["disabled"]))])])]),_:1},8,["open"])}}}),at=Object.assign(nt,{__name:"DesktopRunLocallyModal"}),lt={key:0,class:"inline-flex"},ot=M({__name:"DesktopRunLocallyButton",props:{projectId:{},projectLabel:{},cases:{}},setup(e){const t=e,i=_(!1);ke(()=>{i.value=!!X()});const n=_(!1),r=B(()=>i.value&&t.projectId!=null&&t.cases.length>0);return(g,d)=>{const p=ae,b=we,C=at;return a(r)?(s(),l("span",lt,[o(b,{text:"Run these tests on this machine"},{default:h(()=>[o(p,{size:"xs",color:"warning",variant:"subtle",icon:"i-lucide-monitor-play",onClick:d[0]||(d[0]=j=>n.value=!0)},{default:h(()=>[...d[2]||(d[2]=[w(" Run locally ",-1)])]),_:1})]),_:1}),o(C,{open:a(n),"onUpdate:open":d[1]||(d[1]=j=>A(n)?n.value=j:null),"project-id":e.projectId,"project-label":e.projectLabel,cases:e.cases},null,8,["open","project-id","project-label","cases"])])):u("",!0)}}}),cs=Object.assign(ot,{__name:"DesktopRunLocallyButton"}),it={class:"flex items-center gap-2.5"},rt=M({__name:"StatusBlock",props:{status:{},size:{}},setup(e){return(t,i)=>{const n=N,r=ne;return s(),l("div",it,[m("div",{class:V(["shrink-0 rounded-lg flex items-center justify-center",[e.size==="sm"?"size-7":"size-8",{"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-400":e.status==="passed","bg-rose-100 text-rose-700 dark:bg-rose-900/40 dark:text-rose-400":e.status==="failed"||e.status==="timedout","bg-zinc-100 text-zinc-600 dark:bg-zinc-800 dark:text-zinc-400":e.status==="cancelled"||e.status==="skipped","bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-400":e.status==="didnotrun","bg-blue-100 text-blue-700 dark:bg-blue-900/40 dark:text-blue-400":e.status==="running"||e.status==="initialising"||e.status==="finalizing"}]])},[o(n,{name:("getStatusIcon"in t?t.getStatusIcon:a(ze))(e.status),class:V([e.size==="sm"?"size-3.5":"size-4.5",{"animate-spin":("isStatusInFlight"in t?t.isStatusInFlight:a(ee))(e.status)}])},null,8,["name","class"])],2),o(r,{color:("getStatusColor"in t?t.getStatusColor:a(Me))(e.status),variant:"subtle",class:"capitalize gap-1 items-center"},{default:h(()=>[("isStatusInFlight"in t?t.isStatusInFlight:a(ee))(e.status)?(s(),S(n,{key:0,name:"i-lucide-loader-circle",class:"size-3 animate-spin shrink-0"})):u("",!0),w(" "+f(("formatStatusLabel"in t?t.formatStatusLabel:a(Be))(e.status)),1)]),_:1},8,["color"])])}}}),us=Object.assign(rt,{__name:"StatusBlock"}),ct={class:"flex items-start justify-between gap-2"},ut={class:"flex items-center gap-2 min-w-0"},dt={class:"min-w-0"},mt={class:"text-sm font-medium inline-flex items-center gap-1"},ft={key:0,class:"text-xs text-gray-400 mt-0.5"},gt={key:0,class:"flex items-center gap-1 shrink-0"},pt=M({__name:"BlockCard",props:{title:{},icon:{},subtitle:{},iconClass:{default:"text-primary"},help:{}},setup(e){return(t,i)=>{const n=N,r=Re,g=Ee;return s(),S(g,{class:"shadow-xs",ui:{header:"px-3 py-2.5 sm:px-3",body:"p-3 sm:p-3"}},xe({header:h(()=>[m("div",ct,[m("div",ut,[e.icon?(s(),S(n,{key:0,name:e.icon,class:V(["w-4 h-4 shrink-0",e.iconClass])},null,8,["name","class"])):u("",!0),m("div",dt,[m("span",mt,[w(f(e.title),1),e.help?(s(),S(r,{key:0,topic:e.help},null,8,["topic"])):u("",!0)]),e.subtitle||t.$slots.subtitle?(s(),l("p",ft,[F(t.$slots,"subtitle",{},()=>[w(f(e.subtitle),1)])])):u("",!0)])]),t.$slots.actions?(s(),l("div",gt,[F(t.$slots,"actions")])):u("",!0)])]),default:h(()=>[F(t.$slots,"default")]),_:2},[t.$slots.footer?{name:"footer",fn:h(()=>[F(t.$slots,"footer")]),key:"0"}:void 0]),1024)}}}),re=Object.assign(pt,{__name:"BlockCard"}),ht={class:"space-y-1.5 text-sm"},bt={key:0,class:"flex items-center gap-x-3 gap-y-1 flex-wrap"},vt={key:0,class:"flex items-center gap-1.5"},yt={class:"font-medium"},kt={key:1,class:"flex items-center gap-1.5"},xt={class:"text-xs font-mono bg-gray-100 dark:bg-gray-800 px-1 rounded"},wt={key:2,class:"flex items-center gap-1.5"},_t={class:"text-gray-600 dark:text-gray-400"},$t={key:1,class:"text-gray-400 text-xs break-words"},Ct=M({__name:"SourceInfoCard",props:{scm:{},class:{}},setup(e){return(t,i)=>{const n=N,r=re;return s(),S(r,{class:V(t.$props.class),title:"Source",icon:"i-lucide-git-branch"},{default:h(()=>[m("div",ht,[e.scm.branch||e.scm.commit||e.scm.author?(s(),l("div",bt,[e.scm.branch?(s(),l("span",vt,[o(n,{name:"i-lucide-git-branch",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),m("span",yt,f(e.scm.branch),1)])):u("",!0),e.scm.commit?(s(),l("span",kt,[o(n,{name:"i-lucide-git-commit-horizontal",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),m("code",xt,f(e.scm.commit.length>=8?e.scm.commit.substring(0,8):e.scm.commit),1)])):u("",!0),e.scm.author?(s(),l("span",wt,[o(n,{name:"i-lucide-user",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),m("span",_t,f(e.scm.author),1)])):u("",!0)])):u("",!0),e.scm.commitMessage?(s(),l("p",$t,f(e.scm.commitMessage),1)):u("",!0)])]),_:1},8,["class"])}}}),ds=Object.assign(Ct,{__name:"SourceInfoCard"}),jt={class:"space-y-1.5 text-sm"},It={key:0,class:"flex items-center gap-x-2 gap-y-1 flex-wrap"},St={key:0,class:"rounded-full border border-default px-2 py-0.5 text-xs bg-elevated/60"},Vt={key:1},Ut={key:1,class:"flex items-center gap-1.5"},zt=["href"],Bt={key:1},Mt={key:2,class:"flex items-center gap-x-1.5 gap-y-1 flex-wrap"},Lt={key:0},Rt={key:1,class:"text-gray-300 dark:text-gray-600"},Et={key:2},Pt={key:3,class:"flex items-center gap-x-1.5 gap-y-1 flex-wrap"},Ft={key:0},Nt={key:1,class:"text-gray-300 dark:text-gray-600"},Dt={key:2},Tt={key:4,class:"flex items-center gap-1.5"},Ot={key:0,class:"tabular-nums"},At={key:0,class:"text-gray-400"},Ht=M({__name:"CiEnvCard",props:{ci:{},environment:{},playwrightVersion:{},reporterVersion:{},browser:{},class:{}},setup(e){return(t,i)=>{const n=N,r=Le,g=re;return s(),S(g,{class:V(t.$props.class),title:"CI / Env",icon:"i-lucide-cloud",help:"run.ci-env"},{default:h(()=>[m("div",jt,[e.environment||e.ci?.provider?(s(),l("div",It,[o(n,{name:"i-lucide-cloud",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),e.environment?(s(),l("span",St,f(e.environment),1)):u("",!0),e.ci?.provider?(s(),l("span",Vt,f(e.ci.provider),1)):u("",!0)])):u("",!0),e.ci?.buildNumber||e.ci?.buildUrl?(s(),l("div",Ut,[o(n,{name:"i-lucide-hash",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),e.ci?.buildUrl?(s(),l("a",{key:0,href:e.ci.buildUrl,target:"_blank",class:"text-primary hover:underline"},f(e.ci?.buildNumber?`Build #${e.ci.buildNumber}`:"View build"),9,zt)):(s(),l("span",Bt,"Build #"+f(e.ci.buildNumber),1))])):u("",!0),e.ci?.workflow||e.ci?.jobName?(s(),l("div",Mt,[o(n,{name:"i-lucide-workflow",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),e.ci?.workflow?(s(),l("span",Lt,f(e.ci.workflow),1)):u("",!0),e.ci?.workflow&&e.ci?.jobName?(s(),l("span",Rt,"·")):u("",!0),e.ci?.jobName?(s(),l("span",Et,f(e.ci.jobName),1)):u("",!0)])):u("",!0),e.playwrightVersion||e.reporterVersion?(s(),l("div",Pt,[o(n,{name:"i-lucide-tag",class:"w-3.5 h-3.5 text-gray-400 shrink-0"}),e.playwrightVersion?(s(),l("span",Ft,"Playwright v"+f(e.playwrightVersion),1)):u("",!0),e.playwrightVersion&&e.reporterVersion?(s(),l("span",Nt,"·")):u("",!0),e.reporterVersion?(s(),l("span",Dt,"Piwi v"+f(e.reporterVersion),1)):u("",!0)])):u("",!0),e.browser?(s(),l("div",Tt,[o(r,{browser:{...e.browser,viewport:void 0},size:"sm"},null,8,["browser"]),e.browser.viewport?(s(),l("span",Ot,[w(f(e.browser.viewport.width)+"×"+f(e.browser.viewport.height)+" ",1),e.browser.deviceScaleFactor&&e.browser.deviceScaleFactor!==1?(s(),l("span",At,"@"+f(e.browser.deviceScaleFactor)+"x",1)):u("",!0)])):u("",!0)])):u("",!0)])]),_:1},8,["class"])}}}),ms=Object.assign(Ht,{__name:"CiEnvCard"}),qt={class:"flex flex-col h-full gap-4 p-1 max-lg:overflow-y-auto lg:overflow-hidden"},Gt={key:0,class:"lg:shrink-0"},Kt={class:"lg:shrink-0 max-lg:sticky max-lg:top-0 max-lg:z-10 max-lg:-mx-1 max-lg:bg-(--ui-bg-canvas) max-lg:px-1 max-lg:py-1.5"},Xt=M({__name:"DetailPageLayout",props:oe({tabItems:{},tabPanelClass:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(e){const t=e,i=se(e,"modelValue"),n=_(!1),r=B(()=>t.tabItems.find(d=>d.value===i.value)?.icon);function g(d){return["min-h-0","lg:flex-1",t.tabPanelClass?.[d]??"overflow-y-auto","max-lg:!block","max-lg:!overflow-visible"]}return(d,p)=>{const b=N,C=ie,j=Pe;return s(),l("div",qt,[d.$slots.summary?(s(),l("div",Gt,[m("div",{class:V(a(n)?"max-lg:hidden":"")},[F(d.$slots,"summary")],2),m("button",{type:"button",class:"lg:hidden mt-2 w-full flex items-center justify-center gap-1 rounded-md border border-default py-1.5 text-xs font-medium text-muted hover:bg-elevated/60 transition-colors",onClick:p[0]||(p[0]=v=>n.value=!a(n))},[o(b,{name:a(n)?"i-lucide-chevron-down":"i-lucide-chevron-up",class:"size-3.5"},null,8,["name"]),w(" "+f(a(n)?"Show summary":"Hide summary"),1)])])):u("",!0),m("div",Kt,[o(C,{modelValue:i.value,"onUpdate:modelValue":p[1]||(p[1]=v=>i.value=v),items:e.tabItems,icon:a(r),size:"md",class:"w-full sm:hidden"},null,8,["modelValue","items","icon"]),o(j,{modelValue:i.value,"onUpdate:modelValue":p[2]||(p[2]=v=>i.value=v),items:e.tabItems,size:"sm",class:"hidden sm:flex",ui:{list:"overflow-x-auto",trigger:"shrink-0"}},null,8,["modelValue","items"])]),(s(!0),l(G,null,le(e.tabItems,v=>(s(),l(G,{key:v.value},[i.value===v.value?(s(),l("div",{key:0,class:V(g(v.value))},[F(d.$slots,`tab-${v.slot??v.value}`)],2)):u("",!0)],64))),128))])}}}),fs=Object.assign(Xt,{__name:"DetailPageLayout"});export{us as _,ds as a,ms as b,re as c,fs as d,cs as e};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const RULE = "=".repeat(72);
|
|
2
|
+
function section(title, body) {
|
|
3
|
+
return `${RULE}
|
|
4
|
+
${title}
|
|
5
|
+
${RULE}
|
|
6
|
+
|
|
7
|
+
${body.trim()}
|
|
8
|
+
`;
|
|
9
|
+
}
|
|
10
|
+
function buildPromptPreview(input) {
|
|
11
|
+
const parts = [];
|
|
12
|
+
const header = [
|
|
13
|
+
"Piwi \u2014 AI diagnosis request preview",
|
|
14
|
+
input.model ? `Model: ${input.model}` : null,
|
|
15
|
+
// Both are assembled at diagnosis time and cannot be known in advance, so
|
|
16
|
+
// say so rather than letting the preview imply it is byte-exact.
|
|
17
|
+
"Not included: any additional context you type when starting a diagnosis, and",
|
|
18
|
+
"the research block, which a two-stage pipeline generates from a live model call."
|
|
19
|
+
].filter(Boolean).join("\n");
|
|
20
|
+
parts.push(section("REQUEST", header));
|
|
21
|
+
parts.push(section("SYSTEM", input.system || "(none)"));
|
|
22
|
+
parts.push(section("USER", input.user || "(none)"));
|
|
23
|
+
if (input.imageCount) {
|
|
24
|
+
parts.push(
|
|
25
|
+
section(
|
|
26
|
+
"IMAGES",
|
|
27
|
+
`${input.imageCount} screenshot${input.imageCount === 1 ? "" : "s"} attached as image parts, downscaled before sending.`
|
|
28
|
+
)
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
if (input.jsonSchema) {
|
|
32
|
+
parts.push(section("RESPONSE FORMAT (JSON SCHEMA)", JSON.stringify(input.jsonSchema, null, 2)));
|
|
33
|
+
}
|
|
34
|
+
return parts.join("\n");
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { buildPromptPreview as b };
|
|
38
|
+
//# sourceMappingURL=ai-prompt-preview.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-prompt-preview.mjs","sources":["../../../../shared/ai-prompt-preview.ts"],"names":[],"mappings":"AAsBA,MAAM,IAAA,GAAO,GAAA,CAAI,MAAA,CAAO,EAAE,CAAA;AAE1B,SAAS,OAAA,CAAQ,OAAe,IAAA,EAAsB;AACpD,EAAA,OAAO,GAAG,IAAI;AAAA,EAAK,KAAK;AAAA,EAAK,IAAI;;AAAA,EAAO,IAAA,CAAK,MAAM;AAAA,CAAA;AACrD;AAEO,SAAS,mBAAmB,KAAA,EAAmC;AACpE,EAAA,MAAM,QAAkB,EAAC;AAEzB,EAAA,MAAM,MAAA,GAAS;AAAA,IACb,0CAAA;AAAA,IACA,KAAA,CAAM,KAAA,GAAQ,CAAA,OAAA,EAAU,KAAA,CAAM,KAAK,CAAA,CAAA,GAAK,IAAA;AAAA;AAAA;AAAA,IAGxC,8EAAA;AAAA,IACA;AAAA,GACF,CACG,MAAA,CAAO,OAAO,CAAA,CACd,KAAK,IAAI,CAAA;AACZ,EAAA,KAAA,CAAM,IAAA,CAAK,OAAA,CAAQ,SAAA,EAAW,MAAM,CAAC,CAAA;AAErC,EAAA,KAAA,CAAM,KAAK,OAAA,CAAQ,QAAA,EAAU,KAAA,CAAM,MAAA,IAAU,QAAQ,CAAC,CAAA;AACtD,EAAA,KAAA,CAAM,KAAK,OAAA,CAAQ,MAAA,EAAQ,KAAA,CAAM,IAAA,IAAQ,QAAQ,CAAC,CAAA;AAElD,EAAA,IAAI,MAAM,UAAA,EAAY;AACpB,IAAA,KAAA,CAAM,IAAA;AAAA,MACJ,OAAA;AAAA,QACE,QAAA;AAAA,QACA,CAAA,EAAG,MAAM,UAAU,CAAA,WAAA,EAAc,MAAM,UAAA,KAAe,CAAA,GAAI,KAAK,GAAG,CAAA,oDAAA;AAAA;AACpE,KACF;AAAA,EACF;AAEA,EAAA,IAAI,MAAM,UAAA,EAAY;AACpB,IAAA,KAAA,CAAM,IAAA,CAAK,OAAA,CAAQ,+BAAA,EAAiC,IAAA,CAAK,SAAA,CAAU,MAAM,UAAA,EAAY,IAAA,EAAM,CAAC,CAAC,CAAC,CAAA;AAAA,EAChG;AAEA,EAAA,OAAO,KAAA,CAAM,KAAK,IAAI,CAAA;AACxB;;;;"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { ad as getFailureCluster, at as getClusterDiagnosis, az as getTestRunCase, aA as getTestRunCaseTraces, aB as getExecutionDiagnosis, aC as classifyEvidenceFile, aD as contentTypeForPath } from '../nitro/nitro.mjs';
|
|
2
|
+
|
|
3
|
+
function caseSlug(title, executionId) {
|
|
4
|
+
const base = title.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "").slice(0, 60);
|
|
5
|
+
return `${base || "case"}-${executionId}`;
|
|
6
|
+
}
|
|
7
|
+
function assetsForCase(detail, traces, slug) {
|
|
8
|
+
var _a, _b, _c, _d, _e;
|
|
9
|
+
const assets = [];
|
|
10
|
+
for (const att of (_a = detail.attachments) != null ? _a : []) {
|
|
11
|
+
if (!(att == null ? void 0 : att.path)) continue;
|
|
12
|
+
const kind = classifyEvidenceFile({
|
|
13
|
+
type: "attachment",
|
|
14
|
+
subtype: (_b = att.name) != null ? _b : null,
|
|
15
|
+
label: (_c = att.contentType) != null ? _c : null,
|
|
16
|
+
path: att.path
|
|
17
|
+
});
|
|
18
|
+
const name = String(att.name || att.path.split("/").pop() || "attachment");
|
|
19
|
+
assets.push({
|
|
20
|
+
storagePath: att.path,
|
|
21
|
+
zipPath: `evidence/${slug}/${kind === "attachment" ? "attachments" : `${kind}s`}/${fileNameOf(att.path, name)}`,
|
|
22
|
+
kind,
|
|
23
|
+
name,
|
|
24
|
+
contentType: contentTypeForPath(att.path, att.contentType),
|
|
25
|
+
size: (_d = att.size) != null ? _d : null
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
for (const trace of traces) {
|
|
29
|
+
if (!(trace == null ? void 0 : trace.filePath)) continue;
|
|
30
|
+
assets.push({
|
|
31
|
+
storagePath: trace.filePath,
|
|
32
|
+
zipPath: `evidence/${slug}/traces/${fileNameOf(trace.filePath, "trace.zip")}`,
|
|
33
|
+
kind: "trace",
|
|
34
|
+
name: fileNameOf(trace.filePath, "trace.zip"),
|
|
35
|
+
contentType: "application/zip",
|
|
36
|
+
size: (_e = trace.size) != null ? _e : null
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
return { assets };
|
|
40
|
+
}
|
|
41
|
+
function fileNameOf(storagePath, fallback) {
|
|
42
|
+
const raw = storagePath.split("/").pop() || fallback;
|
|
43
|
+
return raw.replace(/[^a-zA-Z0-9._-]/g, "_");
|
|
44
|
+
}
|
|
45
|
+
async function collectCase(db, executionId) {
|
|
46
|
+
var _a, _b, _c, _d, _e;
|
|
47
|
+
const detail = await getTestRunCase(db, executionId);
|
|
48
|
+
if (!detail) return null;
|
|
49
|
+
const [traces, diagnosis] = await Promise.all([
|
|
50
|
+
getTestRunCaseTraces(db, executionId),
|
|
51
|
+
getExecutionDiagnosis(db, executionId).catch(() => null)
|
|
52
|
+
]);
|
|
53
|
+
const title = String((_a = detail.title) != null ? _a : `Execution ${executionId}`);
|
|
54
|
+
const slug = caseSlug(title, executionId);
|
|
55
|
+
const { assets } = assetsForCase(detail, traces, slug);
|
|
56
|
+
return {
|
|
57
|
+
executionId,
|
|
58
|
+
testCaseId: (_b = detail.testCaseId) != null ? _b : null,
|
|
59
|
+
title,
|
|
60
|
+
filePath: (_c = detail.filePath) != null ? _c : null,
|
|
61
|
+
location: (_d = detail.location) != null ? _d : null,
|
|
62
|
+
status: String((_e = detail.status) != null ? _e : "unknown"),
|
|
63
|
+
slug,
|
|
64
|
+
detail,
|
|
65
|
+
traces,
|
|
66
|
+
diagnosis: diagnosis != null ? diagnosis : null,
|
|
67
|
+
assets
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
async function collectExecutionBundle(db, executionId, opts) {
|
|
71
|
+
var _a, _b, _c, _d, _e;
|
|
72
|
+
const exportCase = await collectCase(db, executionId);
|
|
73
|
+
if (!exportCase) return null;
|
|
74
|
+
const project = (_b = (_a = exportCase.detail.testRun) == null ? void 0 : _a.project) != null ? _b : null;
|
|
75
|
+
return {
|
|
76
|
+
kind: "execution",
|
|
77
|
+
generatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
78
|
+
piwiVersion: (_c = opts.piwiVersion) != null ? _c : null,
|
|
79
|
+
sourceUrl: (_d = opts.sourceUrl) != null ? _d : null,
|
|
80
|
+
title: exportCase.title,
|
|
81
|
+
project: project ? { id: project.id, name: project.name, label: (_e = project.label) != null ? _e : null } : null,
|
|
82
|
+
cluster: null,
|
|
83
|
+
cases: [exportCase],
|
|
84
|
+
truncatedCases: [],
|
|
85
|
+
omitted: []
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
async function collectClusterBundle(db, clusterId, opts) {
|
|
89
|
+
var _a, _b, _c, _d, _e;
|
|
90
|
+
const cluster = await getFailureCluster(db, clusterId);
|
|
91
|
+
if (!cluster) return null;
|
|
92
|
+
const { diagnosis } = await getClusterDiagnosis(db, clusterId);
|
|
93
|
+
const members = (_a = cluster.affectedTestCases) != null ? _a : [];
|
|
94
|
+
const expanded = members.slice(0, Math.max(1, opts.maxCases));
|
|
95
|
+
const truncated = members.slice(expanded.length);
|
|
96
|
+
const collected = await Promise.all(
|
|
97
|
+
expanded.filter((m) => m.recentTestRunsCaseId != null).map((m) => collectCase(db, Number(m.recentTestRunsCaseId)))
|
|
98
|
+
);
|
|
99
|
+
const cases = collected.filter((c) => c !== null);
|
|
100
|
+
return {
|
|
101
|
+
kind: "cluster",
|
|
102
|
+
generatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
103
|
+
piwiVersion: (_b = opts.piwiVersion) != null ? _b : null,
|
|
104
|
+
sourceUrl: (_c = opts.sourceUrl) != null ? _c : null,
|
|
105
|
+
title: String(cluster.title || cluster.signature || `Failure cluster ${clusterId}`),
|
|
106
|
+
project: cluster.project ? { id: cluster.project.id, name: cluster.project.name, label: (_d = cluster.project.label) != null ? _d : null } : null,
|
|
107
|
+
cluster: { ...cluster, diagnosis: (_e = diagnosis != null ? diagnosis : cluster.diagnosis) != null ? _e : null },
|
|
108
|
+
cases,
|
|
109
|
+
truncatedCases: truncated.map((m) => {
|
|
110
|
+
var _a2, _b2;
|
|
111
|
+
return {
|
|
112
|
+
testCaseId: Number(m.testCaseId),
|
|
113
|
+
title: String((_a2 = m.title) != null ? _a2 : ""),
|
|
114
|
+
filePath: (_b2 = m.filePath) != null ? _b2 : null
|
|
115
|
+
};
|
|
116
|
+
}),
|
|
117
|
+
omitted: []
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export { collectExecutionBundle as a, collectClusterBundle as c };
|
|
122
|
+
//# sourceMappingURL=collect.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collect.mjs","sources":["../../../../shared/export/collect.ts"],"names":["_a","_b"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { aW as markers, t as testRuns } from '../nitro/nitro.mjs';
|
|
2
2
|
import { eq, asc, and, lt, desc } from 'drizzle-orm';
|
|
3
3
|
import { D as DEFAULT_MARKER_CATEGORY, M as MARKER_CATEGORY_IDS } from './marker-categories.mjs';
|
|
4
4
|
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { eq, and, isNull, asc, desc, inArray, gt, sql } from 'drizzle-orm';
|
|
2
|
+
import { b4 as testCases, be as quarantinedTests, t as testRuns, w as testRunsCases } from '../nitro/nitro.mjs';
|
|
3
|
+
|
|
4
|
+
const RELEASE_AFTER_CONSECUTIVE_PASSES = 5;
|
|
5
|
+
const STREAK_SCAN_LIMIT = 30;
|
|
6
|
+
const FAIL_STATUSES = ["failed", "timedOut", "timedout"];
|
|
7
|
+
async function getQuarantinedCaseIds(db, projectId) {
|
|
8
|
+
const rows = await db.select({ testCaseId: quarantinedTests.testCaseId }).from(quarantinedTests).where(and(eq(quarantinedTests.projectId, projectId), isNull(quarantinedTests.releasedAt)));
|
|
9
|
+
return new Set(rows.map((row) => row.testCaseId));
|
|
10
|
+
}
|
|
11
|
+
async function computeStreaks(db, entries) {
|
|
12
|
+
const streaks = /* @__PURE__ */ new Map();
|
|
13
|
+
if (entries.length === 0) return streaks;
|
|
14
|
+
for (const entry of entries) {
|
|
15
|
+
const rows = await db.select({ status: testRunsCases.status, id: testRunsCases.id }).from(testRunsCases).where(
|
|
16
|
+
and(
|
|
17
|
+
eq(testRunsCases.testCaseId, entry.testCaseId),
|
|
18
|
+
entry.quarantinedAtRunId != null ? gt(testRunsCases.testRunId, entry.quarantinedAtRunId) : sql`1 = 1`
|
|
19
|
+
)
|
|
20
|
+
).orderBy(desc(testRunsCases.id)).limit(STREAK_SCAN_LIMIT);
|
|
21
|
+
let passes = 0;
|
|
22
|
+
for (const row of rows) {
|
|
23
|
+
if (row.status === "passed") passes++;
|
|
24
|
+
else if (FAIL_STATUSES.includes(row.status)) break;
|
|
25
|
+
}
|
|
26
|
+
streaks.set(entry.testCaseId, { passes, runs: rows.length });
|
|
27
|
+
}
|
|
28
|
+
return streaks;
|
|
29
|
+
}
|
|
30
|
+
async function listQuarantine(db, projectId) {
|
|
31
|
+
const rows = await db.select({
|
|
32
|
+
id: quarantinedTests.id,
|
|
33
|
+
testCaseId: quarantinedTests.testCaseId,
|
|
34
|
+
reason: quarantinedTests.reason,
|
|
35
|
+
source: quarantinedTests.source,
|
|
36
|
+
quarantinedAtRunId: quarantinedTests.quarantinedAtRunId,
|
|
37
|
+
createdAt: quarantinedTests.createdAt,
|
|
38
|
+
title: testCases.title,
|
|
39
|
+
filePath: testCases.filePath,
|
|
40
|
+
owner: testCases.owner,
|
|
41
|
+
tags: testCases.tags
|
|
42
|
+
}).from(quarantinedTests).innerJoin(testCases, eq(quarantinedTests.testCaseId, testCases.id)).where(and(eq(quarantinedTests.projectId, projectId), isNull(quarantinedTests.releasedAt))).orderBy(asc(quarantinedTests.createdAt));
|
|
43
|
+
const streaks = await computeStreaks(db, rows);
|
|
44
|
+
const now = Date.now();
|
|
45
|
+
const entries = rows.map((row) => {
|
|
46
|
+
var _a, _b;
|
|
47
|
+
const streak = (_a = streaks.get(row.testCaseId)) != null ? _a : { passes: 0, runs: 0 };
|
|
48
|
+
const createdMs = row.createdAt instanceof Date ? row.createdAt.getTime() : new Date(row.createdAt).getTime();
|
|
49
|
+
return {
|
|
50
|
+
id: row.id,
|
|
51
|
+
testCaseId: row.testCaseId,
|
|
52
|
+
title: row.title,
|
|
53
|
+
filePath: row.filePath,
|
|
54
|
+
reason: row.reason,
|
|
55
|
+
source: row.source,
|
|
56
|
+
owner: (_b = row.owner) != null ? _b : null,
|
|
57
|
+
tags: Array.isArray(row.tags) ? row.tags : null,
|
|
58
|
+
createdAt: row.createdAt,
|
|
59
|
+
ageMs: Math.max(0, now - createdMs),
|
|
60
|
+
consecutivePasses: streak.passes,
|
|
61
|
+
releaseProposed: streak.passes >= RELEASE_AFTER_CONSECUTIVE_PASSES,
|
|
62
|
+
runsSinceQuarantine: streak.runs
|
|
63
|
+
};
|
|
64
|
+
});
|
|
65
|
+
const debt = {
|
|
66
|
+
active: entries.length,
|
|
67
|
+
readyToRelease: entries.filter((entry) => entry.releaseProposed).length,
|
|
68
|
+
oldestAgeMs: entries.reduce((max, entry) => Math.max(max, entry.ageMs), 0),
|
|
69
|
+
stillFailing: entries.filter((entry) => entry.runsSinceQuarantine > 0 && entry.consecutivePasses === 0).length
|
|
70
|
+
};
|
|
71
|
+
return { entries, debt };
|
|
72
|
+
}
|
|
73
|
+
async function addQuarantine(db, projectId, testCaseId, options = {}) {
|
|
74
|
+
var _a, _b;
|
|
75
|
+
const [testCase] = await db.select({ id: testCases.id, projectId: testCases.projectId }).from(testCases).where(eq(testCases.id, testCaseId));
|
|
76
|
+
if (!testCase || testCase.projectId !== projectId) throw new Error("Test case not found in this project");
|
|
77
|
+
const existing = await db.select({ id: quarantinedTests.id }).from(quarantinedTests).where(and(eq(quarantinedTests.testCaseId, testCaseId), isNull(quarantinedTests.releasedAt)));
|
|
78
|
+
if (existing.length > 0) return { created: false };
|
|
79
|
+
const [latestRun] = await db.select({ id: testRuns.id }).from(testRuns).where(eq(testRuns.projectId, projectId)).orderBy(desc(testRuns.id)).limit(1);
|
|
80
|
+
await db.insert(quarantinedTests).values({
|
|
81
|
+
projectId,
|
|
82
|
+
testCaseId,
|
|
83
|
+
reason: (_a = options.reason) != null ? _a : null,
|
|
84
|
+
source: options.source === "proposed" ? "proposed" : "manual",
|
|
85
|
+
quarantinedAtRunId: (_b = latestRun == null ? void 0 : latestRun.id) != null ? _b : null,
|
|
86
|
+
// With authentication disabled the request carries a synthetic user whose
|
|
87
|
+
// id is 0, which no `users` row has — store null rather than tripping the
|
|
88
|
+
// foreign key on an instance that has no accounts at all.
|
|
89
|
+
createdBy: typeof options.createdBy === "number" && options.createdBy > 0 ? options.createdBy : null
|
|
90
|
+
});
|
|
91
|
+
return { created: true };
|
|
92
|
+
}
|
|
93
|
+
async function releaseQuarantine(db, projectId, testCaseId, reason) {
|
|
94
|
+
const active = await db.select({ id: quarantinedTests.id }).from(quarantinedTests).where(
|
|
95
|
+
and(
|
|
96
|
+
eq(quarantinedTests.projectId, projectId),
|
|
97
|
+
eq(quarantinedTests.testCaseId, testCaseId),
|
|
98
|
+
isNull(quarantinedTests.releasedAt)
|
|
99
|
+
)
|
|
100
|
+
);
|
|
101
|
+
if (active.length === 0) return { released: false };
|
|
102
|
+
await db.update(quarantinedTests).set({ releasedAt: /* @__PURE__ */ new Date(), releasedReason: reason != null ? reason : null }).where(
|
|
103
|
+
inArray(
|
|
104
|
+
quarantinedTests.id,
|
|
105
|
+
active.map((row) => row.id)
|
|
106
|
+
)
|
|
107
|
+
);
|
|
108
|
+
return { released: true };
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export { RELEASE_AFTER_CONSECUTIVE_PASSES as R, addQuarantine as a, getQuarantinedCaseIds as g, listQuarantine as l, releaseQuarantine as r };
|
|
112
|
+
//# sourceMappingURL=quarantine.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quarantine.mjs","sources":["../../../../shared/handlers/quarantine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useSlots, computed, unref, mergeProps, withCtx, renderSlot, openBlock, createBlock, createCommentVNode, createVNode, createTextVNode, toDisplayString, Fragment, renderList, useSSRContext } from 'vue';
|
|
2
2
|
import { ssrRenderComponent, ssrRenderSlot, ssrRenderClass, ssrInterpolate, ssrRenderList } from 'vue/server-renderer';
|
|
3
|
-
import { a as useComponentProps,
|
|
3
|
+
import { a as useComponentProps, C as useLocale, b as useAppConfig, t as tv, P as Primitive, V as _sfc_main$n, o as _sfc_main$p, m as _sfc_main$k } from './server.mjs';
|
|
4
4
|
|
|
5
5
|
const theme = {
|
|
6
6
|
"slots": {
|
|
@@ -476,4 +476,4 @@ _sfc_main.setup = (props, ctx) => {
|
|
|
476
476
|
};
|
|
477
477
|
|
|
478
478
|
export { _sfc_main as _ };
|
|
479
|
-
//# sourceMappingURL=Alert-
|
|
479
|
+
//# sourceMappingURL=Alert-C4xq8lao.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Alert-C4xq8lao.mjs","sources":["../../../../node_modules/.cache/nuxt/.nuxt/dist/server/_nuxt/Alert-C4xq8lao.js"],"names":["_sfc_main$1","_sfc_main$2","_sfc_main$3"],"mappings":"","x_google_ignoreList":[0]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ref, computed, mergeProps, unref, useSlots, withCtx, renderSlot, openBlock, createBlock, createCommentVNode, createTextVNode, toDisplayString, createVNode, Fragment, renderList, useSSRContext } from 'vue';
|
|
2
2
|
import { ssrRenderComponent, ssrRenderClass, ssrRenderList, ssrRenderSlot, ssrInterpolate } from 'vue/server-renderer';
|
|
3
|
-
import { a as useComponentProps,
|
|
4
|
-
import { u as useDashboard } from './DashboardSidebarToggle-
|
|
3
|
+
import { a as useComponentProps, D as useForwardProps, Y as reactiveOmit, C as useLocale, b as useAppConfig, t as tv, m as _sfc_main$k, P as Primitive, q as _sfc_main$l, Z as pickLinkProps, $ as _sfc_main$m, o as _sfc_main$p, V as _sfc_main$n, U as get } from './server.mjs';
|
|
4
|
+
import { u as useDashboard } from './DashboardSidebarToggle-DCTnHiIv.mjs';
|
|
5
5
|
|
|
6
6
|
const theme$1 = {
|
|
7
7
|
"base": "hidden lg:flex",
|
|
@@ -519,4 +519,4 @@ _sfc_main.setup = (props, ctx) => {
|
|
|
519
519
|
};
|
|
520
520
|
|
|
521
521
|
export { _sfc_main$1 as _, _sfc_main as a };
|
|
522
|
-
//# sourceMappingURL=Breadcrumb-
|
|
522
|
+
//# sourceMappingURL=Breadcrumb-Ak2Lg3oM.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Breadcrumb-Ak2Lg3oM.mjs","sources":["../../../../node_modules/.cache/nuxt/.nuxt/dist/server/_nuxt/Breadcrumb-Ak2Lg3oM.js"],"names":["_sfc_main$2","_sfc_main$3","_sfc_main$4","_sfc_main$5","_sfc_main$6"],"mappings":"","x_google_ignoreList":[0]}
|
package/.output/server/chunks/build/{BreadcrumbNav-C3y42Vun.mjs → BreadcrumbNav-DO7I_z-n.mjs}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as _sfc_main$1 } from './Breadcrumb-
|
|
2
|
-
import {
|
|
1
|
+
import { a as _sfc_main$1 } from './Breadcrumb-Ak2Lg3oM.mjs';
|
|
2
|
+
import { K as _sfc_main$a, m as _sfc_main$k, o as _sfc_main$p } from './server.mjs';
|
|
3
3
|
import { defineComponent, computed, createSlots, renderList, withCtx, renderSlot, unref, createVNode, useSSRContext } from 'vue';
|
|
4
4
|
import { ssrRenderComponent, ssrRenderSlot, ssrInterpolate } from 'vue/server-renderer';
|
|
5
5
|
|
|
@@ -108,4 +108,4 @@ _sfc_main.setup = (props, ctx) => {
|
|
|
108
108
|
const __nuxt_component_3 = Object.assign(_sfc_main, { __name: "BreadcrumbNav" });
|
|
109
109
|
|
|
110
110
|
export { __nuxt_component_3 as _ };
|
|
111
|
-
//# sourceMappingURL=BreadcrumbNav-
|
|
111
|
+
//# sourceMappingURL=BreadcrumbNav-DO7I_z-n.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreadcrumbNav-DO7I_z-n.mjs","sources":["../../../../node_modules/.cache/nuxt/.nuxt/dist/server/_nuxt/BreadcrumbNav-DO7I_z-n.js"],"names":["_sfc_main$2","_sfc_main$3","_sfc_main$4"],"mappings":"","x_google_ignoreList":[0]}
|