@piwitests/server 0.26.0 → 0.26.1
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/{BdQ7kfxJ.js → 1QWBzxLM.js} +4 -4
- package/.output/public/_nuxt/{CY1UsEbI.js → 4hW9LHwA.js} +1 -1
- package/.output/public/_nuxt/96uxfdYT.js +1 -0
- package/.output/public/_nuxt/{HGYIpJtg.js → AbnDY6Zr.js} +1 -1
- package/.output/public/_nuxt/{CZ6WR7uw.js → B-1zt4pp.js} +1 -1
- package/.output/public/_nuxt/{Sx5-c-bZ.js → B1iYmAt_.js} +1 -1
- package/.output/public/_nuxt/{CbzgEkmW.js → B2bxEmbR.js} +1 -1
- package/.output/public/_nuxt/B3hAvaCe.js +4 -0
- package/.output/public/_nuxt/{CyWOerIG.js → B4lvHjBe.js} +1 -1
- package/.output/public/_nuxt/B5S7BkC3.js +1 -0
- package/.output/public/_nuxt/{Bb_1uAHn.js → B6j5Ornu.js} +1 -1
- package/.output/public/_nuxt/{CrsaY0R_.js → B82vqOZe.js} +1 -1
- package/.output/public/_nuxt/{CTFUlsXp.js → B9oXlGro.js} +1 -1
- package/.output/public/_nuxt/{CsJ9Ce4U.js → BABCH5kE.js} +1 -1
- package/.output/public/_nuxt/{Gn1Ns00e.js → BF5qB58w.js} +1 -1
- package/.output/public/_nuxt/{CsGsLxHg.js → BFLa9ZEP.js} +1 -1
- package/.output/public/_nuxt/BIlohx1E.js +1 -0
- package/.output/public/_nuxt/{B6djubIK.js → BM5C-Oec.js} +1 -1
- package/.output/public/_nuxt/{CrZhoZuI.js → BOA-I6S9.js} +1 -1
- package/.output/public/_nuxt/{Bp2zrrkV.js → BQUhoGCh.js} +1 -1
- package/.output/public/_nuxt/{DUC3QnqW.js → BQYLGX9o.js} +1 -1
- package/.output/public/_nuxt/{CUjzhXN1.js → BRMeEHXd.js} +1 -1
- package/.output/public/_nuxt/{Cf_a8ynB.js → BRtaKOKv.js} +2 -2
- package/.output/public/_nuxt/{B7uPoZ7T.js → BS91Og__.js} +1 -1
- package/.output/public/_nuxt/{DKgbchez.js → BTGAvMoT.js} +1 -1
- package/.output/public/_nuxt/{BIamiwb7.js → BaLX92Wz.js} +1 -1
- package/.output/public/_nuxt/{LWIyaZKe.js → Bc6Zr-Xn.js} +1 -1
- package/.output/public/_nuxt/{R7AVOWi_.js → BceMEnJt.js} +1 -1
- package/.output/public/_nuxt/{Q2oJNyXL.js → BeCAVtCK.js} +1 -1
- package/.output/public/_nuxt/{D_SD71Qf.js → Bf119e7x.js} +1 -1
- package/.output/public/_nuxt/BfRcdz11.js +9 -0
- package/.output/public/_nuxt/{CxwnFFD0.js → Bl0xzETD.js} +1 -1
- package/.output/public/_nuxt/{C_eXufkv.js → BnUQ3i5l.js} +1 -1
- package/.output/public/_nuxt/{rPG7kzfL.js → Bp1WeQ0_.js} +1 -1
- package/.output/public/_nuxt/{BL8cYWsR.js → Bp31ZRcA.js} +1 -1
- package/.output/public/_nuxt/{Drh1_ASq.js → BrxUH8qL.js} +1 -1
- package/.output/public/_nuxt/{D72Ce8Ff.js → BsdfEbVC.js} +1 -1
- package/.output/public/_nuxt/BtGI4ZbP.js +1 -0
- package/.output/public/_nuxt/{BV8EzO8q.js → BuMX-4RF.js} +1 -1
- package/.output/public/_nuxt/{DPPhFZOr.js → BuXJR5tn.js} +1 -1
- package/.output/public/_nuxt/{Bh2WA4IJ.js → Bx_lfKHl.js} +1 -1
- package/.output/public/_nuxt/{vcSKeWsW.js → C4UKyPQn.js} +1 -1
- package/.output/public/_nuxt/{IoE3eJ9F.js → C9XCTbtQ.js} +1 -1
- package/.output/public/_nuxt/{BilJoEne.js → CEPU6VkU.js} +1 -1
- package/.output/public/_nuxt/CHz7LJIX.js +1 -0
- package/.output/public/_nuxt/{BPhGDGAR.js → CMhd8IBr.js} +1 -1
- package/.output/public/_nuxt/{C5X_N4R7.js → CN1M6i4K.js} +33 -33
- package/.output/public/_nuxt/CQLkowA3.js +1 -0
- package/.output/public/_nuxt/{DTtizz85.js → CU_2YLhT.js} +1 -1
- package/.output/public/_nuxt/{CMVTTE_g.js → CXkXHtcx.js} +1 -1
- package/.output/public/_nuxt/{igDJCTgt.js → CZeKW-zP.js} +1 -1
- package/.output/public/_nuxt/{9oKY4Zb7.js → CapSEET7.js} +1 -1
- package/.output/public/_nuxt/{j2eGYaRa.js → CeExxGSu.js} +1 -1
- package/.output/public/_nuxt/{CEgRB8H9.js → CfwpqSe7.js} +1 -1
- package/.output/public/_nuxt/{CFKbXp6V.js → ChOtLYkd.js} +1 -1
- package/.output/public/_nuxt/ChuJzPWz.js +1 -0
- package/.output/public/_nuxt/{Bo73sAu8.js → CiCUZGFZ.js} +1 -1
- package/.output/public/_nuxt/{C6R4tyud.js → CkL_oDa8.js} +1 -1
- package/.output/public/_nuxt/{DtGJeysS.js → CkhOMiiO.js} +1 -1
- package/.output/public/_nuxt/ClmHMP65.js +2 -0
- package/.output/public/_nuxt/{BtcDY0Du.js → Cnm0d_7S.js} +1 -1
- package/.output/public/_nuxt/{CK2AMqz_.js → CtQMagSz.js} +1 -1
- package/.output/public/_nuxt/{B1KjIR-q.js → Ctnn3S3-.js} +1 -1
- package/.output/public/_nuxt/{DCeZxpxe.js → CywiLuOD.js} +4 -4
- package/.output/public/_nuxt/{oA84LLqO.js → CzRkZLB4.js} +1 -1
- package/.output/public/_nuxt/CzyCEdYP.js +1 -0
- package/.output/public/_nuxt/{D56yp7m9.js → D-F0Rhjj.js} +1 -1
- package/.output/public/_nuxt/D4mPjHHR.js +2 -0
- package/.output/public/_nuxt/{BsGvSoPC.js → D4v7lLm3.js} +1 -1
- package/.output/public/_nuxt/{CxRTKV-K.js → D6B0WKO0.js} +1 -1
- package/.output/public/_nuxt/{jv8U_Tup.js → DAg6jtav.js} +1 -1
- package/.output/public/_nuxt/DBXXb0w8.js +1 -0
- package/.output/public/_nuxt/{ChlP20A5.js → DHN2t5Vt.js} +1 -1
- package/.output/public/_nuxt/{B8tezsWe.js → DJKHXfNS.js} +1 -1
- package/.output/public/_nuxt/{CFg5qdS0.js → DMqAUHFN.js} +1 -1
- package/.output/public/_nuxt/{C9A3sPDo.js → DURme_kn.js} +1 -1
- package/.output/public/_nuxt/{C2hIM5f9.js → DVo_e_uj.js} +1 -1
- package/.output/public/_nuxt/{DKhqIou2.js → DXh8q5KY.js} +1 -1
- package/.output/public/_nuxt/{CZXeJs2k.js → DXz1Kb4-.js} +1 -1
- package/.output/public/_nuxt/{CPrVhXJk.js → DYdwHaco.js} +1 -1
- package/.output/public/_nuxt/{WZXZeGYt.js → D_ZAGxCQ.js} +1 -1
- package/.output/public/_nuxt/{D5SN7rPK.js → D_dhjJvR.js} +1 -1
- package/.output/public/_nuxt/{DR1jFptD.js → DamZHy5M.js} +1 -1
- package/.output/public/_nuxt/{xKX9IHe3.js → DbtjJCra.js} +1 -1
- package/.output/public/_nuxt/{r6zkA1SE.js → DcOlL-oi.js} +1 -1
- package/.output/public/_nuxt/{CxspCKpR.js → DeQ9sIia.js} +1 -1
- package/.output/public/_nuxt/{BkHJoHpc.js → DjX1bLZD.js} +1 -1
- package/.output/public/_nuxt/{Be0bwdsi.js → Dly7wCCl.js} +1 -1
- package/.output/public/_nuxt/DmeogbGY.js +1 -0
- package/.output/public/_nuxt/{CfV2N201.js → Dn_-RkxP.js} +1 -1
- package/.output/public/_nuxt/{dg6uXTyR.js → DoDo3VF2.js} +1 -1
- package/.output/public/_nuxt/{BMlKQMjM.js → DoVHTl-K.js} +1 -1
- package/.output/public/_nuxt/DpM8IgHL.js +1 -0
- package/.output/public/_nuxt/{B4NjylBn.js → Dpwj_1H5.js} +1 -1
- package/.output/public/_nuxt/{DzJa19LG.js → DvSHenmZ.js} +1 -1
- package/.output/public/_nuxt/DvYU87_a.js +1 -0
- package/.output/public/_nuxt/{G2J1dVVb.js → Dx41arC8.js} +1 -1
- package/.output/public/_nuxt/DxBrlj7b.js +1 -0
- package/.output/public/_nuxt/{r-HZNbp3.js → JNpNdV-o.js} +1 -1
- package/.output/public/_nuxt/Lz9MmwKY.js +1 -0
- package/.output/public/_nuxt/OMI0cmZ0.js +1 -0
- package/.output/public/_nuxt/{CUWrUpTl.js → UAmyrRCI.js} +1 -1
- package/.output/public/_nuxt/{EJllK0wm.js → VBTxfbqU.js} +1 -1
- package/.output/public/_nuxt/VbedPPFH.js +1 -0
- package/.output/public/_nuxt/{BY9A1aOT.js → _okd7MfH.js} +1 -1
- package/.output/public/_nuxt/{BOn5q0rT.js → bmAf49LT.js} +1 -1
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/0174ebd8-8fa5-4698-aa79-7a8dd2f6527f.json +1 -0
- package/.output/public/_nuxt/{D0XWJGhG.js → e-GZmCeP.js} +1 -1
- package/.output/public/_nuxt/entry.Dv52uAyn.css +1 -0
- package/.output/public/_nuxt/{DVIIj6Vv.js → f9TbT3AM.js} +1 -1
- package/.output/public/_nuxt/gdlHFfN6.js +1 -0
- package/.output/public/_nuxt/{BTG_PmM5.js → huBoAZeM.js} +1 -1
- package/.output/public/_nuxt/{DadksxQ9.js → mYw4b7uY.js} +1 -1
- package/.output/public/_nuxt/{B0eHOux4.js → mi7tdFxN.js} +1 -1
- package/.output/public/_nuxt/sFe4Zr5j.js +1 -0
- package/.output/public/_nuxt/{CLrLFf3s.js → uspGXbik.js} +1 -1
- package/.output/public/_nuxt/{DLN-CQXF.js → w7KxwWEv.js} +1 -1
- package/.output/public/_nuxt/{Bp55g9gr.js → wa4k1aDz.js} +1 -1
- package/.output/public/_nuxt/{C2yZcDch.js → xuB8n0QL.js} +1 -1
- package/.output/public/favicon.ico +0 -0
- package/.output/public/trace-viewer/assets/codeMirrorModule-LEHpjmcn.js +32 -0
- package/.output/public/trace-viewer/assets/defaultSettingsView-BNmKHKpQ.js +264 -0
- package/.output/public/trace-viewer/assets/urlMatch-BYQrIQwR.js +1 -0
- package/.output/public/trace-viewer/assets/xtermModule-CsJ4vdCR.js +9 -0
- package/.output/public/trace-viewer/codeMirrorModule.DYBRYzYX.css +1 -0
- package/.output/public/trace-viewer/codicon.DCmgc-ay.ttf +0 -0
- package/.output/public/trace-viewer/defaultSettingsView.CjdS-WJx.css +1 -0
- package/.output/public/trace-viewer/index.CzXZzn5A.css +1 -0
- package/.output/public/trace-viewer/index.DMMX1gXU.js +2 -0
- package/.output/public/trace-viewer/index.html +44 -0
- package/.output/public/trace-viewer/manifest.webmanifest +16 -0
- package/.output/public/trace-viewer/playwright-logo.svg +9 -0
- package/.output/public/trace-viewer/snapshot.html +10 -0
- package/.output/public/trace-viewer/snapshot.v8KI4P3m.js +2 -0
- package/.output/public/trace-viewer/sw.bundle.js +5 -0
- package/.output/public/trace-viewer/uiMode.BZQ54Kgt.css +1 -0
- package/.output/public/trace-viewer/uiMode.Ut8wwJNp.js +6 -0
- package/.output/public/trace-viewer/uiMode.html +18 -0
- package/.output/public/trace-viewer/xtermModule.DYP7pi_n.css +32 -0
- package/.output/server/chunks/_/users.mjs +1 -1
- package/.output/server/chunks/build/{BreadcrumbNav-DBnGj5Jq.mjs → BreadcrumbNav-Bg4QGX0k.mjs} +11 -4
- package/.output/server/chunks/build/BreadcrumbNav-Bg4QGX0k.mjs.map +1 -0
- package/.output/server/chunks/build/{BrowserBadge-vFb1ERG_.mjs → BrowserBadge-yMgLTBUu.mjs} +17 -9
- package/.output/server/chunks/build/BrowserBadge-yMgLTBUu.mjs.map +1 -0
- package/.output/server/chunks/build/{ChartMarkerLines-BXqUpUcs.mjs → ChartMarkerLines-D0cTRlxF.mjs} +3 -3
- package/.output/server/chunks/build/ChartMarkerLines-D0cTRlxF.mjs.map +1 -0
- package/.output/server/chunks/build/{ChartTooltip-DoF6Smyc.mjs → ChartTooltip-B2t6VYYH.mjs} +3 -3
- package/.output/server/chunks/build/ChartTooltip-B2t6VYYH.mjs.map +1 -0
- package/.output/server/chunks/build/Checkbox-ChSYhiUz.mjs +1 -1
- package/.output/server/chunks/build/ClientDate-U97Z1p6-.mjs +32 -0
- package/.output/server/chunks/build/ClientDate-U97Z1p6-.mjs.map +1 -0
- package/.output/server/chunks/build/{CodeBlock-CmvKHaq8.mjs → CodeBlock-DuWhmcI2.mjs} +3 -3
- package/.output/server/chunks/build/CodeBlock-DuWhmcI2.mjs.map +1 -0
- package/.output/server/chunks/build/DashboardSidebarToggle-a5KYecZ0.mjs +1 -1
- package/.output/server/chunks/build/DashboardToolbar-BZoGc0ri.mjs +72 -0
- package/.output/server/chunks/build/DashboardToolbar-BZoGc0ri.mjs.map +1 -0
- package/.output/server/chunks/build/{DataLocationCard-ChV02QJj.mjs → DataLocationCard-DCdhQBIY.mjs} +2 -2
- package/.output/server/chunks/build/DataLocationCard-DCdhQBIY.mjs.map +1 -0
- package/.output/server/chunks/build/{DesktopRunLocallyButton-BfmbZpiL.mjs → DesktopRunLocallyButton-ChHg3GqK.mjs} +5 -5
- package/.output/server/chunks/build/{DesktopRunLocallyButton-BfmbZpiL.mjs.map → DesktopRunLocallyButton-ChHg3GqK.mjs.map} +1 -1
- package/.output/server/chunks/build/{DiagnosisPanel-C_ndadzP.mjs → DiagnosisPanel-DE-r2UV8.mjs} +5 -5
- package/.output/server/chunks/build/DiagnosisPanel-DE-r2UV8.mjs.map +1 -0
- package/.output/server/chunks/build/{DiagnosisResult-GAjo6Lt3.mjs → DiagnosisResult-CrGK--xh.mjs} +16 -10
- package/.output/server/chunks/build/DiagnosisResult-CrGK--xh.mjs.map +1 -0
- package/.output/server/chunks/build/{DurationValue-CObiBDnH.mjs → DurationValue-Dn06XQk3.mjs} +2 -2
- package/.output/server/chunks/build/DurationValue-Dn06XQk3.mjs.map +1 -0
- package/.output/server/chunks/build/EntityLinks-BcpvMt_V.mjs +1 -1
- package/.output/server/chunks/build/EnvManagedBadge-_8GfjWjE.mjs +1 -1
- package/.output/server/chunks/build/{FeatureUnavailable-Buoyoqx1.mjs → FeatureUnavailable-IaBjVCqQ.mjs} +2 -2
- package/.output/server/chunks/build/FeatureUnavailable-IaBjVCqQ.mjs.map +1 -0
- package/.output/server/chunks/build/{GetStartedWizard-tL3U_qM1.mjs → GetStartedWizard-BiyxEXWP.mjs} +3 -3
- package/.output/server/chunks/build/GetStartedWizard-BiyxEXWP.mjs.map +1 -0
- package/.output/server/chunks/build/{HelpHint-C96TlqxY.mjs → HelpHint-CdBz6deq.mjs} +2 -2
- package/.output/server/chunks/build/HelpHint-CdBz6deq.mjs.map +1 -0
- package/.output/server/chunks/build/{MetaStripGroup-Cp2WCQf7.mjs → MetaStripGroup-CDyGlsNt.mjs} +94 -21
- package/.output/server/chunks/build/MetaStripGroup-CDyGlsNt.mjs.map +1 -0
- package/.output/server/chunks/build/{NavbarActions-VCHW0u67.mjs → NavbarActions-BTWxKCVI.mjs} +2 -2
- package/.output/server/chunks/build/NavbarActions-BTWxKCVI.mjs.map +1 -0
- package/.output/server/chunks/build/NavigationMenu-D4ZpdCm_.mjs +1 -1
- package/.output/server/chunks/build/OpenInIdeLink-Bnl-_som.mjs +1 -1
- package/.output/server/chunks/build/{ProjectTestCasesTable-saHYJoyQ.mjs → ProjectTestCasesTable-DJDAZ9NQ.mjs} +9 -9
- package/.output/server/chunks/build/ProjectTestCasesTable-DJDAZ9NQ.mjs.map +1 -0
- package/.output/server/chunks/build/{RunReports-CKYYRC59.mjs → RunReports-BSo2cCNx.mjs} +4 -4
- package/.output/server/chunks/build/RunReports-BSo2cCNx.mjs.map +1 -0
- package/.output/server/chunks/build/{RunStatusBadge-CWhmAmKb.mjs → RunStatusBadge-zfeSwcTx.mjs} +2 -2
- package/.output/server/chunks/build/RunStatusBadge-zfeSwcTx.mjs.map +1 -0
- package/.output/server/chunks/build/{SectionCard-BB1O3uXd.mjs → SectionCard-CKD1s0eF.mjs} +2 -2
- package/.output/server/chunks/build/SectionCard-CKD1s0eF.mjs.map +1 -0
- package/.output/server/chunks/build/Select-COU8NARj.mjs +1 -1
- package/.output/server/chunks/build/SelectMenu-BUwwc3Qt.mjs +1 -1
- package/.output/server/chunks/build/{SettingsField-CEasBHu3.mjs → SettingsField-CDnUtiCM.mjs} +3 -3
- package/.output/server/chunks/build/SettingsField-CDnUtiCM.mjs.map +1 -0
- package/.output/server/chunks/build/Table-BET-DOtX.mjs +1 -1
- package/.output/server/chunks/build/{TestCaseHistoryChart-BgI6P_zS.mjs → TestCaseHistoryChart-Do7WK-ZY.mjs} +16 -17
- package/.output/server/chunks/build/TestCaseHistoryChart-Do7WK-ZY.mjs.map +1 -0
- package/.output/server/chunks/build/{TestStatusBar-DR8jM5th.mjs → TestStatusBar-BipoEOzd.mjs} +15 -6
- package/.output/server/chunks/build/TestStatusBar-BipoEOzd.mjs.map +1 -0
- package/.output/server/chunks/build/Tooltip-CK0ucuXC.mjs +1 -1
- package/.output/server/chunks/build/{_id_-rQhFY0fN.mjs → _id_-BLPB189b.mjs} +16 -16
- package/.output/server/chunks/build/{_id_-rQhFY0fN.mjs.map → _id_-BLPB189b.mjs.map} +1 -1
- package/.output/server/chunks/build/{_id_-kkexEH_q.mjs → _id_-BeGJOSxY.mjs} +16 -16
- package/.output/server/chunks/build/_id_-BeGJOSxY.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-B7Dw490u.mjs → _id_-CfLEW45H.mjs} +472 -304
- package/.output/server/chunks/build/_id_-CfLEW45H.mjs.map +1 -0
- package/.output/server/chunks/build/{_id_-DVPb1S93.mjs → _id_-DxHe32cW.mjs} +654 -453
- package/.output/server/chunks/build/_id_-DxHe32cW.mjs.map +1 -0
- package/.output/server/chunks/build/{about-C4AbyQ4q.mjs → about-FLAssVsA.mjs} +5 -5
- package/.output/server/chunks/build/about-FLAssVsA.mjs.map +1 -0
- package/.output/server/chunks/build/{account-B45bYZd1.mjs → account-Cvz6KkYu.mjs} +4 -4
- package/.output/server/chunks/build/account-Cvz6KkYu.mjs.map +1 -0
- package/.output/server/chunks/build/{ai-CgN9xXFf.mjs → ai-DR9Zry7B.mjs} +8 -8
- package/.output/server/chunks/build/{ai-CgN9xXFf.mjs.map → ai-DR9Zry7B.mjs.map} +1 -1
- package/.output/server/chunks/build/{analytics-BRkiUpwa.mjs → analytics-CCAQayhv.mjs} +9 -9
- package/.output/server/chunks/build/{analytics-BRkiUpwa.mjs.map → analytics-CCAQayhv.mjs.map} +1 -1
- package/.output/server/chunks/build/{auto-heal-BnTdKHQq.mjs → auto-heal-ngiiiVmq.mjs} +4 -4
- package/.output/server/chunks/build/auto-heal-ngiiiVmq.mjs.map +1 -0
- package/.output/server/chunks/build/client.precomputed.mjs +1 -1
- package/.output/server/chunks/build/{default-BGOdM_zA.mjs → default-wYpdMMvh.mjs} +15 -13
- package/.output/server/chunks/build/{default-BGOdM_zA.mjs.map → default-wYpdMMvh.mjs.map} +1 -1
- package/.output/server/chunks/build/{docs-D7R5eJ1Z.mjs → docs-BX9DoKOI.mjs} +4 -4
- package/.output/server/chunks/build/{docs-D7R5eJ1Z.mjs.map → docs-BX9DoKOI.mjs.map} +1 -1
- package/.output/server/chunks/build/{edit-BbL3k6c3.mjs → edit-DnyBC4uC.mjs} +7 -7
- package/.output/server/chunks/build/{edit-BbL3k6c3.mjs.map → edit-DnyBC4uC.mjs.map} +1 -1
- package/.output/server/chunks/build/fetch-DOcN2mHf.mjs +1 -1
- package/.output/server/chunks/build/{help-content-BK3jcgLw.mjs → help-content-3QLSe6Vd.mjs} +3 -3
- package/.output/server/chunks/build/help-content-3QLSe6Vd.mjs.map +1 -0
- package/.output/server/chunks/build/{import-ibAn_HB9.mjs → import-S-w3MXez.mjs} +8 -8
- package/.output/server/chunks/build/import-S-w3MXez.mjs.map +1 -0
- package/.output/server/chunks/build/{index-D5A0DW7Y.mjs → index-BFr7JW_2.mjs} +4 -4
- package/.output/server/chunks/build/index-BFr7JW_2.mjs.map +1 -0
- package/.output/server/chunks/build/{index-CqinXTVs.mjs → index-CdzYiYiu.mjs} +9 -9
- package/.output/server/chunks/build/{index-CqinXTVs.mjs.map → index-CdzYiYiu.mjs.map} +1 -1
- package/.output/server/chunks/build/{index-DreB_S-d.mjs → index-CgYJur1z.mjs} +31 -23
- package/.output/server/chunks/build/index-CgYJur1z.mjs.map +1 -0
- package/.output/server/chunks/build/{index-2GmuPNF-.mjs → index-CjnZ521K.mjs} +22 -4
- package/.output/server/chunks/build/index-CjnZ521K.mjs.map +1 -0
- package/.output/server/chunks/build/{index-KsRegEjT.mjs → index-xgA4P1ht.mjs} +3218 -4087
- package/.output/server/chunks/build/index-xgA4P1ht.mjs.map +1 -0
- package/.output/server/chunks/build/isValueEqualOrExist-D4lZ8uRY.mjs +1 -1
- package/.output/server/chunks/build/login-DueFS2RU.mjs +1 -1
- package/.output/server/chunks/build/{mcp-Dwj29-uG.mjs → mcp-DlZzubUF.mjs} +7 -7
- package/.output/server/chunks/build/mcp-DlZzubUF.mjs.map +1 -0
- package/.output/server/chunks/build/{notifications-CjAn5FJj.mjs → notifications-ByPVhyPX.mjs} +6 -6
- package/.output/server/chunks/build/notifications-ByPVhyPX.mjs.map +1 -0
- package/.output/server/chunks/build/{performance-DRzcu_c7.mjs → performance-Dc9FhaJr.mjs} +6 -6
- package/.output/server/chunks/build/performance-Dc9FhaJr.mjs.map +1 -0
- package/.output/server/chunks/build/{pr-feedback-DR60oGBf.mjs → pr-feedback-5kC_UmKG.mjs} +4 -4
- package/.output/server/chunks/build/pr-feedback-5kC_UmKG.mjs.map +1 -0
- package/.output/server/chunks/build/{selections-BjjolRZ9.mjs → selections-C6J9mI0s.mjs} +9 -9
- package/.output/server/chunks/build/selections-C6J9mI0s.mjs.map +1 -0
- package/.output/server/chunks/build/server.mjs +33 -33
- package/.output/server/chunks/build/{settings-B3NWV9tu.mjs → settings-DcCAv0U4.mjs} +17 -81
- package/.output/server/chunks/build/settings-DcCAv0U4.mjs.map +1 -0
- package/.output/server/chunks/build/{settings-metadata-DwJk8uSt.mjs → settings-metadata-B684YiW4.mjs} +2 -2
- package/.output/server/chunks/build/settings-metadata-B684YiW4.mjs.map +1 -0
- package/.output/server/chunks/build/{setup-BlgFTixN.mjs → setup-Cf3Mzf-W.mjs} +8 -8
- package/.output/server/chunks/build/{setup-BlgFTixN.mjs.map → setup-Cf3Mzf-W.mjs.map} +1 -1
- package/.output/server/chunks/build/{storage-C1O-FC0U.mjs → storage-B4VySiv3.mjs} +7 -7
- package/.output/server/chunks/build/storage-B4VySiv3.mjs.map +1 -0
- package/.output/server/chunks/build/{tags-dsvYrnii.mjs → tags-BvWdsd1F.mjs} +25 -11
- package/.output/server/chunks/build/tags-BvWdsd1F.mjs.map +1 -0
- package/.output/server/chunks/build/{test-cases-CFiOuyK6.mjs → test-cases-LIIu7dMu.mjs} +11 -11
- package/.output/server/chunks/build/test-cases-LIIu7dMu.mjs.map +1 -0
- package/.output/server/chunks/build/{test-functions-CbmBi6az.mjs → test-functions-Dv8nezrM.mjs} +8 -8
- package/.output/server/chunks/build/test-functions-Dv8nezrM.mjs.map +1 -0
- package/.output/server/chunks/build/{useCopyRich-DPKZKHvZ.mjs → useCopyRich-DRRKIts2.mjs} +17 -14
- package/.output/server/chunks/build/{useCopyRich-DPKZKHvZ.mjs.map → useCopyRich-DRRKIts2.mjs.map} +1 -1
- package/.output/server/chunks/build/{useDesktopDownload-R_RWSgUV.mjs → useDesktopDownload-CK-5nATq.mjs} +2 -2
- package/.output/server/chunks/build/useDesktopDownload-CK-5nATq.mjs.map +1 -0
- package/.output/server/chunks/build/{useDesktopLocalRuns-BdELBy0Y.mjs → useDesktopLocalRuns-BHZic4MJ.mjs} +3 -3
- package/.output/server/chunks/build/useDesktopLocalRuns-BHZic4MJ.mjs.map +1 -0
- package/.output/server/chunks/build/{useDesktopProjectLink-IUN7SIP2.mjs → useDesktopProjectLink-CqBvnXwG.mjs} +2 -2
- package/.output/server/chunks/build/useDesktopProjectLink-CqBvnXwG.mjs.map +1 -0
- package/.output/server/chunks/build/useOpenInIde-DS4YXevu.mjs +1 -1
- package/.output/server/chunks/build/{useSettingsNav-Dg87E7kY.mjs → useSettingsNav-dyHz-2Bz.mjs} +2 -2
- package/.output/server/chunks/build/useSettingsNav-dyHz-2Bz.mjs.map +1 -0
- package/.output/server/chunks/build/{users-DgsoiXxQ.mjs → users-CluLB8DL.mjs} +31 -13
- package/.output/server/chunks/build/users-CluLB8DL.mjs.map +1 -0
- package/.output/server/chunks/nitro/nitro.mjs +839 -680
- package/.output/server/chunks/routes/__piwi/session.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/case-files.post.mjs +5 -2
- 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/events.post.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/failure-groups.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/finish.post.mjs +42 -26
- 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 +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/heartbeat.post.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/insights.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/network-requests.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/regression-context.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/_id/summary.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/import/check.post.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/recent.get.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/submit.post.mjs +1 -1
- package/.output/server/chunks/routes/api/test-runs/upload.post.mjs +1 -1
- package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs +1 -0
- package/.output/server/chunks/routes/api/tests/cleanup.delete.mjs.map +1 -1
- package/.output/server/chunks/routes/api/traces/check.post.mjs +1 -1
- package/.output/server/chunks/routes/api/users/_id/index.post.mjs +1 -1
- package/.output/server/chunks/routes/api/users/_id/invite.post.mjs +1 -1
- package/.output/server/chunks/routes/api/users/_id/projects.get.mjs +1 -1
- package/.output/server/chunks/routes/api/users/_id/projects.put.mjs +1 -1
- package/.output/server/chunks/routes/mcp.post.mjs +1 -1
- package/.output/server/chunks/routes/renderer.mjs +1 -1
- package/.output/server/chunks/routes/share/_token_.get.mjs +1 -1
- package/.output/server/index.mjs +1 -1
- package/.output/server/package.json +1 -1
- package/package.json +1 -1
- package/.output/public/_nuxt/3HmftUHT.js +0 -1
- package/.output/public/_nuxt/B7zo6PK8.js +0 -1
- package/.output/public/_nuxt/BO4sfkbw.js +0 -1
- package/.output/public/_nuxt/BdyXNI2_.js +0 -1
- package/.output/public/_nuxt/Bg63qh8W.js +0 -1
- package/.output/public/_nuxt/BnhWd06P.js +0 -1
- package/.output/public/_nuxt/CHWW6xiX.js +0 -1
- package/.output/public/_nuxt/CIPvUOic.js +0 -2
- package/.output/public/_nuxt/CVcFbORW.js +0 -9
- package/.output/public/_nuxt/CZlz5y13.js +0 -1
- package/.output/public/_nuxt/CkV_UG8j.js +0 -1
- package/.output/public/_nuxt/D0TpBpCc.js +0 -1
- package/.output/public/_nuxt/D3LyIeiJ.js +0 -1
- package/.output/public/_nuxt/DcccidY5.js +0 -4
- package/.output/public/_nuxt/DqkCbAzo.js +0 -1
- package/.output/public/_nuxt/DwH4SIZE.js +0 -1
- package/.output/public/_nuxt/DwZS0oRm.js +0 -2
- package/.output/public/_nuxt/DxPZIuWy.js +0 -1
- package/.output/public/_nuxt/Dyb1FouX.js +0 -1
- package/.output/public/_nuxt/builds/meta/a5fb24cc-65e3-4e55-aa12-038fe2de4754.json +0 -1
- package/.output/public/_nuxt/entry.BFe0Ua9k.css +0 -1
- package/.output/public/_nuxt/i7znB42v.js +0 -1
- package/.output/server/chunks/build/BreadcrumbNav-DBnGj5Jq.mjs.map +0 -1
- package/.output/server/chunks/build/BrowserBadge-vFb1ERG_.mjs.map +0 -1
- package/.output/server/chunks/build/ChartMarkerLines-BXqUpUcs.mjs.map +0 -1
- package/.output/server/chunks/build/ChartTooltip-DoF6Smyc.mjs.map +0 -1
- package/.output/server/chunks/build/CodeBlock-CmvKHaq8.mjs.map +0 -1
- package/.output/server/chunks/build/DataLocationCard-ChV02QJj.mjs.map +0 -1
- package/.output/server/chunks/build/DiagnosisPanel-C_ndadzP.mjs.map +0 -1
- package/.output/server/chunks/build/DiagnosisResult-GAjo6Lt3.mjs.map +0 -1
- package/.output/server/chunks/build/DurationValue-CObiBDnH.mjs.map +0 -1
- package/.output/server/chunks/build/FeatureUnavailable-Buoyoqx1.mjs.map +0 -1
- package/.output/server/chunks/build/GetStartedWizard-tL3U_qM1.mjs.map +0 -1
- package/.output/server/chunks/build/HelpHint-C96TlqxY.mjs.map +0 -1
- package/.output/server/chunks/build/MetaStripGroup-Cp2WCQf7.mjs.map +0 -1
- package/.output/server/chunks/build/NavbarActions-VCHW0u67.mjs.map +0 -1
- package/.output/server/chunks/build/ProjectTestCasesTable-saHYJoyQ.mjs.map +0 -1
- package/.output/server/chunks/build/RunReports-CKYYRC59.mjs.map +0 -1
- package/.output/server/chunks/build/RunStatusBadge-CWhmAmKb.mjs.map +0 -1
- package/.output/server/chunks/build/SectionCard-BB1O3uXd.mjs.map +0 -1
- package/.output/server/chunks/build/SettingsField-CEasBHu3.mjs.map +0 -1
- package/.output/server/chunks/build/TestCaseHistoryChart-BgI6P_zS.mjs.map +0 -1
- package/.output/server/chunks/build/TestStatusBar-DR8jM5th.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-B7Dw490u.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-DVPb1S93.mjs.map +0 -1
- package/.output/server/chunks/build/_id_-kkexEH_q.mjs.map +0 -1
- package/.output/server/chunks/build/about-C4AbyQ4q.mjs.map +0 -1
- package/.output/server/chunks/build/account-B45bYZd1.mjs.map +0 -1
- package/.output/server/chunks/build/auto-heal-BnTdKHQq.mjs.map +0 -1
- package/.output/server/chunks/build/help-content-BK3jcgLw.mjs.map +0 -1
- package/.output/server/chunks/build/import-ibAn_HB9.mjs.map +0 -1
- package/.output/server/chunks/build/index-2GmuPNF-.mjs.map +0 -1
- package/.output/server/chunks/build/index-D5A0DW7Y.mjs.map +0 -1
- package/.output/server/chunks/build/index-DreB_S-d.mjs.map +0 -1
- package/.output/server/chunks/build/index-KsRegEjT.mjs.map +0 -1
- package/.output/server/chunks/build/mcp-Dwj29-uG.mjs.map +0 -1
- package/.output/server/chunks/build/notifications-CjAn5FJj.mjs.map +0 -1
- package/.output/server/chunks/build/performance-DRzcu_c7.mjs.map +0 -1
- package/.output/server/chunks/build/pr-feedback-DR60oGBf.mjs.map +0 -1
- package/.output/server/chunks/build/selections-BjjolRZ9.mjs.map +0 -1
- package/.output/server/chunks/build/settings-B3NWV9tu.mjs.map +0 -1
- package/.output/server/chunks/build/settings-metadata-DwJk8uSt.mjs.map +0 -1
- package/.output/server/chunks/build/storage-C1O-FC0U.mjs.map +0 -1
- package/.output/server/chunks/build/tags-dsvYrnii.mjs.map +0 -1
- package/.output/server/chunks/build/test-cases-CFiOuyK6.mjs.map +0 -1
- package/.output/server/chunks/build/test-functions-CbmBi6az.mjs.map +0 -1
- package/.output/server/chunks/build/useDesktopDownload-R_RWSgUV.mjs.map +0 -1
- package/.output/server/chunks/build/useDesktopLocalRuns-BdELBy0Y.mjs.map +0 -1
- package/.output/server/chunks/build/useDesktopProjectLink-IUN7SIP2.mjs.map +0 -1
- package/.output/server/chunks/build/useSettingsNav-Dg87E7kY.mjs.map +0 -1
- package/.output/server/chunks/build/users-DgsoiXxQ.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{av as B,q as H,ar as I,v as V}from"./
|
|
1
|
+
import{av as B,q as H,ar as I,v as V}from"./1QWBzxLM.js";import{g as x}from"./Bp31ZRcA.js";const R=4096;function D(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function b(e){return'"'+e.replace(/"/g,'\\"')+'"'}function p(e){return e.replace(/\\/g,"/")}function T(e){const n=new Map;for(const r of e){const i=r.projectName||"";n.has(i)||n.set(i,[]),n.get(i).push(r)}return n}function L(e){const n=new Set;return e.filter(r=>{const i=r.filePath;return n.has(i)?!1:(n.add(i),!0)}).map(r=>r.filePath)}function A(e,n){const r=n?.mode??"file-line",d=`${n?.pkgRunner??"npx"} playwright test`;if(e.length===0)return"";const P=T(e),m=[];for(const[v,f]of P){let c;if(r==="file"){const l=L(f).map(t=>b(p(t))).join(" ");c=`${d} ${l}`}else if(r==="file-line"){const a=new Set,l=f.filter(t=>{const o=t.filePath+":"+t.line;return t.line&&a.has(o)?!1:(t.line&&a.add(o),!0)}).map(t=>t.line?b(`${p(t.filePath)}:${t.line}`):b(p(t.filePath))).join(" ");c=`${d} ${l}`}else{const a=f.map(t=>D(t.title)),l=a.length===1?a[0]:`(${a.join("|")})`;c=`${d} --grep ${b(l)}`}v&&(c+=` --project=${b(v)}`),m.push(c)}let g=m.join(" && ");if(g.length>R){if(r==="grep")return A(e,{...n,mode:"file-line"});if(r==="file-line")return A(e,{...n,mode:"file"});const f=_(e).map(a=>b(p(a))).join(" ");let c=`${d} ${f}`;return c.length>R&&(c=c.slice(0,R-3)+"..."),c}return g}function _(e){const n=new Set;return e.reduce((r,i)=>(n.has(i.filePath)||(n.add(i.filePath),r.push(i.filePath)),r),[])}function C(e,n){return e==null?"":n==null?`:${e}`:`:${e}:${n}`}function w(e){return e.replace(/%/g,"%25").replace(/ /g,"%20").replace(/#/g,"%23").replace(/\?/g,"%3F")}function $(e,n){const r=p(e).replace(/\/+$/,""),i=p(n).replace(/^\.?\/+/,"");return r?`${r}/${i}`:i}function K(e){const n=w(p(e.absPath)),r=n.startsWith("/")?n:`/${n}`;return`${e.scheme}://file${r}${C(e.line,e.column)}`}function F(e){const n=w(p(e.relPath))+C(e.line,e.column);return`jetbrains://${e.product}/navigate/reference?project=${encodeURIComponent(e.projectName)}&path=${n}`}function M(e){const n=w(p(e.path));return`http://localhost:${e.port}/api/file/${n}${C(e.line,e.column)}`}const G="piwi-ide-prefs",q={method:"auto",vscodeScheme:"vscode",jetbrainsProduct:"idea",jetbrainsPort:63342,jetbrainsHttpUsesRelativePath:!1,defaultRoot:"",projectRoots:{},jetbrainsProjectNames:{}},W={vscode:"VS Code","vscode-insiders":"VS Code Insiders",vscodium:"VSCodium",cursor:"Cursor"},Q={auto:"Auto (try all)",vscode:"VS Code","jetbrains-url":"JetBrains (URL)","jetbrains-http":"JetBrains (local server)"},Z=["idea","webstorm","pycharm","phpstorm","goland","rubymine","clion","rider","rustrover"];function ee(){const e=B(G,q,{mergeDefaults:!0}),n=H(),r=I("piwi-ide-settings-open",()=>!1),i=I("piwi-ide-settings-context",()=>({}));function d(t){return t==null||t===""?null:String(t)}function P(t={}){i.value={projectKey:t.projectKey??null,projectName:t.projectName??null},r.value=!0}function m(t){const o=d(t);return((o?e.value.projectRoots[o]:void 0)||e.value.defaultRoot||"").trim()}function g(t,o){const s=d(t);return((s?e.value.jetbrainsProjectNames[s]:void 0)||o||"").trim()}function v(t,o){const s=m(o);return s?$(s,t):null}const f=V(()=>!!e.value.defaultRoot?.trim()||Object.keys(e.value.projectRoots).length>0||Object.keys(e.value.jetbrainsProjectNames).length>0);function c(t){try{const o=document.createElement("iframe");o.style.display="none",o.src=t,document.body.appendChild(o),setTimeout(()=>o.remove(),1e3)}catch{const o=document.createElement("a");o.href=t,o.style.display="none",document.body.appendChild(o),o.click(),setTimeout(()=>o.remove(),1e3)}}async function a(t,o,s){const h=M({port:e.value.jetbrainsPort,path:t,line:o,column:s});try{return await fetch(h,{mode:"no-cors",signal:AbortSignal.timeout(1200)}),!0}catch{return!1}}async function l(t){const o=t.method??e.value.method,s=t.filePath,h=t.line??null,S=t.column??null;let u=m(t.projectKey);if(!u){const j=await x(t.projectKey);j?.exists&&(u=j.path)}const y=g(t.projectKey,t.projectName),O={projectKey:d(t.projectKey),projectName:t.projectName??null},k={label:"Configure",color:"info",onClick:()=>P(O)},J=()=>u?(c(K({scheme:e.value.vscodeScheme,absPath:$(u,s),line:h,column:S})),n.add({title:`Opening ${W[e.value.vscodeScheme]}…`,description:"If nothing opens, the editor may not be installed or the workspace root is wrong.",color:"neutral",icon:"i-lucide-external-link"}),!0):(n.add({title:"Set a workspace root",description:"VS Code needs the local folder that contains this file.",color:"info",icon:"i-lucide-folder-cog",actions:[k]}),!1),E=()=>y?(c(F({product:e.value.jetbrainsProduct,projectName:y,relPath:s,line:h,column:S})),n.add({title:"Opening JetBrains…",description:"If nothing opens, JetBrains Toolbox may not be installed or the project is not open.",color:"neutral",icon:"i-lucide-external-link"}),!0):(n.add({title:"Set a JetBrains project name",description:"The jetbrains:// link needs the open IDE project name.",color:"info",icon:"i-lucide-folder-cog",actions:[k]}),!1),U=async()=>{const j=e.value.jetbrainsHttpUsesRelativePath?s:u?$(u,s):s,N=await a(j,h,S);return n.add(N?{title:"Opened in JetBrains",color:"success",icon:"i-lucide-check"}:{title:"JetBrains not reachable",description:`Nothing responded on localhost:${e.value.jetbrainsPort}. Start the IDE with the Remote Control plugin (and "Allow unsigned requests").`,color:"error",icon:"i-lucide-plug-zap"}),N};if(o==="vscode"){J();return}if(o==="jetbrains-url"){E();return}if(o==="jetbrains-http"){await U();return}if(e.value.jetbrainsHttpUsesRelativePath||!!u){const j=e.value.jetbrainsHttpUsesRelativePath?s:$(u,s);if(await a(j,h,S)){n.add({title:"Opened in JetBrains",color:"success",icon:"i-lucide-check"});return}}if(u){J();return}if(y){E();return}n.add({title:'Set up "Open in IDE"',description:"Add your local workspace folder (for VS Code) or a JetBrains project name to open files from here.",color:"info",icon:"i-lucide-folder-cog",actions:[k]})}return{prefs:e,isConfigured:f,openInIde:l,openInVscode:t=>l({...t,method:"vscode"}),openViaJetbrainsUrl:t=>l({...t,method:"jetbrains-url"}),openViaJetbrainsHttp:t=>l({...t,method:"jetbrains-http"}),resolveRoot:m,resolveJbProjectName:g,resolveAbsPath:v,settingsOpen:r,settingsContext:i,openSettings:P}}export{Q as I,Z as J,W as V,A as b,D as e,p as t,ee as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Z as D,d as G,T as L,Y,c8 as O,o as i,c as S,e as f,f as v,U as C,b as e,V as _,R as J,D as X,ai as T,W as $,l as x,F as ee,v as m,bZ as E,aQ as P,h as B,aA as ae,a2 as re,a3 as te,a5 as se,a6 as le,a7 as ie,aK as oe,aR as ne,g as de,i as c,_ as j,k as N,t as K,a8 as ue}from"./
|
|
1
|
+
import{Z as D,d as G,T as L,Y,c8 as O,o as i,c as S,e as f,f as v,U as C,b as e,V as _,R as J,D as X,ai as T,W as $,l as x,F as ee,v as m,bZ as E,aQ as P,h as B,aA as ae,a2 as re,a3 as te,a5 as se,a6 as le,a7 as ie,aK as oe,aR as ne,g as de,i as c,_ as j,k as N,t as K,a8 as ue}from"./1QWBzxLM.js";import{i as M}from"./BTGAvMoT.js";import{u as ce}from"./DpM8IgHL.js";import{u as pe}from"./DBXXb0w8.js";import{V as fe}from"./Bp1WeQ0_.js";import{R as ve}from"./D_ZAGxCQ.js";import{L as U}from"./Bl0xzETD.js";const[be]=D("CheckboxGroupRoot");function A(o){return o==="indeterminate"}function Z(o){return A(o)?"indeterminate":o?"checked":"unchecked"}const[me,he]=D("CheckboxRoot");var ge=G({inheritAttrs:!1,__name:"CheckboxRoot",props:{defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1,default:void 0},disabled:{type:Boolean,required:!1},value:{type:null,required:!1,default:"on"},id:{type:String,required:!1},trueValue:{type:null,required:!1,default:()=>!0},falseValue:{type:null,required:!1,default:()=>!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"},name:{type:String,required:!1},required:{type:Boolean,required:!1}},emits:["update:modelValue"],setup(o,{emit:h}){const r=o,l=h,{forwardRef:g,currentElement:a}=L(),s=be(null),d=Y(r,"modelValue",l,{defaultValue:r.defaultValue??r.falseValue,passive:r.modelValue===void 0}),p=m(()=>s?.disabled.value||r.disabled),q=m(()=>P(d.value,r.trueValue)),u=m(()=>E(s?.modelValue.value)?d.value==="indeterminate"?"indeterminate":q.value:M(s.modelValue.value,r.value));function z(){if(E(s?.modelValue.value))d.value==="indeterminate"?d.value=r.trueValue:d.value=q.value?r.falseValue:r.trueValue;else{const t=[...s.modelValue.value||[]];if(M(t,r.value)){const y=t.findIndex(I=>P(I,r.value));t.splice(y,1)}else t.push(r.value);s.modelValue.value=t}}const F=ce(a),k=pe(),R=O(),V=m(()=>{if(!R["aria-label"])return r.id&&a.value?document.querySelector(`[for="${r.id}"]`)?.innerText:void 0});return he({disabled:p,state:u}),(t,y)=>(i(),S(ee,null,[(i(),f(T(e(s)?.rovingFocus.value?e(ve):e($)),_({...t.$attrs,...e(k)},{id:t.id,ref:e(g),role:"checkbox","as-child":t.asChild,as:t.as,type:t.as==="button"?"button":void 0,"aria-checked":e(A)(u.value)?"mixed":u.value,"aria-required":t.required,"aria-label":t.$attrs["aria-label"]||V.value,"data-state":e(Z)(u.value),"data-disabled":p.value?"":void 0,disabled:p.value,focusable:e(s)?.rovingFocus.value?!p.value:void 0,onKeydown:J(X(()=>{},["prevent"]),["enter"]),onClick:z}),{default:v(()=>[C(t.$slots,"default",{modelValue:e(d),state:u.value})]),_:3},16,["id","as-child","as","type","aria-checked","aria-required","aria-label","data-state","data-disabled","disabled","focusable","onKeydown"])),e(F)&&t.name&&!e(s)?(i(),f(e(fe),_({key:0,type:"checkbox",checked:!!u.value,name:t.name,value:t.value,disabled:p.value,required:t.required},e(k)),null,16,["checked","name","value","disabled","required"])):x("v-if",!0)],64))}}),ye=ge,qe=G({__name:"CheckboxIndicator",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(o){const{forwardRef:h}=L(),r=me();return(l,g)=>(i(),f(e(ae),{present:l.forceMount||e(A)(e(r).state.value)||e(r).state.value===!0},{default:v(()=>[B(e($),_({ref:e(h),"data-state":e(Z)(e(r).state.value),"data-disabled":e(r).disabled.value?"":void 0,style:{pointerEvents:"none"},"as-child":l.asChild,as:l.as},l.$attrs),{default:v(()=>[C(l.$slots,"default")]),_:3},16,["data-state","data-disabled","as-child","as"])]),_:3},8,["present"]))}}),ke=qe;const Ve={slots:{root:"relative flex items-start",container:"flex items-center",base:"rounded-sm ring ring-inset ring-accented overflow-hidden focus-visible:outline-3",indicator:"flex items-center justify-center size-full text-inverted",icon:"shrink-0 size-full",wrapper:"w-full",label:"block font-medium text-default",description:"text-muted"},variants:{color:{primary:{base:"outline-primary/25 focus-visible:ring-primary",indicator:"bg-primary"},secondary:{base:"outline-secondary/25 focus-visible:ring-secondary",indicator:"bg-secondary"},success:{base:"outline-success/25 focus-visible:ring-success",indicator:"bg-success"},info:{base:"outline-info/25 focus-visible:ring-info",indicator:"bg-info"},warning:{base:"outline-warning/25 focus-visible:ring-warning",indicator:"bg-warning"},error:{base:"outline-error/25 focus-visible:ring-error",indicator:"bg-error"},neutral:{base:"outline-inverted/25 focus-visible:ring-inverted",indicator:"bg-inverted"}},variant:{list:{root:""},card:{root:"border border-muted rounded-lg"}},indicator:{start:{root:"flex-row",wrapper:"ms-2"},end:{root:"flex-row-reverse",wrapper:"me-2"},hidden:{base:"sr-only",wrapper:"text-center"}},size:{xs:{base:"size-3",container:"h-4",wrapper:"text-xs"},sm:{base:"size-3.5",container:"h-4",wrapper:"text-xs"},md:{base:"size-4",container:"h-5",wrapper:"text-sm"},lg:{base:"size-4.5",container:"h-5",wrapper:"text-sm"},xl:{base:"size-5",container:"h-6",wrapper:"text-base"}},required:{true:{label:"after:content-['*'] after:ms-0.5 after:text-error"}},disabled:{true:{root:"opacity-75",base:"cursor-not-allowed",label:"cursor-not-allowed",description:"cursor-not-allowed"}},highlight:{true:""},checked:{true:""}},compoundVariants:[{size:"xs",variant:"card",class:{root:"p-2.5"}},{size:"sm",variant:"card",class:{root:"p-3"}},{size:"md",variant:"card",class:{root:"p-3.5"}},{size:"lg",variant:"card",class:{root:"p-4"}},{size:"xl",variant:"card",class:{root:"p-4.5"}},{color:"primary",variant:"card",class:{root:"has-data-[state=checked]:border-primary"}},{color:"secondary",variant:"card",class:{root:"has-data-[state=checked]:border-secondary"}},{color:"success",variant:"card",class:{root:"has-data-[state=checked]:border-success"}},{color:"info",variant:"card",class:{root:"has-data-[state=checked]:border-info"}},{color:"warning",variant:"card",class:{root:"has-data-[state=checked]:border-warning"}},{color:"error",variant:"card",class:{root:"has-data-[state=checked]:border-error"}},{color:"neutral",variant:"card",class:{root:"has-data-[state=checked]:border-inverted"}},{variant:"card",disabled:!0,class:{root:"cursor-not-allowed"}},{color:"primary",highlight:!0,class:{base:"ring-primary"}},{color:"secondary",highlight:!0,class:{base:"ring-secondary"}},{color:"success",highlight:!0,class:{base:"ring-success"}},{color:"info",highlight:!0,class:{base:"ring-info"}},{color:"warning",highlight:!0,class:{base:"ring-warning"}},{color:"error",highlight:!0,class:{base:"ring-error"}},{color:"neutral",highlight:!0,class:{base:"ring-inverted"}}],defaultVariants:{size:"md",color:"primary",variant:"list",indicator:"start"}},Ie=Object.assign({inheritAttrs:!1},{__name:"UCheckbox",props:{as:{type:null,required:!1},label:{type:String,required:!1},description:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},indicator:{type:null,required:!1},highlight:{type:Boolean,required:!1},icon:{type:null,required:!1},indeterminateIcon:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},disabled:{type:Boolean,required:!1},required:{type:Boolean,required:!1},name:{type:String,required:!1},value:{type:null,required:!1},id:{type:String,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},trueValue:{type:null,required:!1},falseValue:{type:null,required:!1}},emits:["change","update:modelValue"],setup(o,{emit:h}){const r=o,l=re(),g=h,a=te("checkbox",r),s=se(),d=le(ie(a,"required","value","defaultValue","modelValue","trueValue","falseValue"),g),{id:p,emitFormChange:q,emitFormInput:u,size:z,color:F,highlight:k,name:R,disabled:V,ariaAttrs:t}=oe(r),y=p.value??ne(),I=O(),H=m(()=>{const{"data-state":b,...w}=I;return w}),n=m(()=>ue({extend:Ve,...s.ui?.checkbox||{}})({size:z.value??a.size,color:F.value??a.color,variant:a.variant,indicator:a.indicator,highlight:k.value??a.highlight,required:a.required,disabled:V.value}));function Q(b){const w=new Event("change",{target:{value:b}});g("change",w),q(),u()}return(b,w)=>(i(),f(e($),{as:!e(a).variant||e(a).variant==="list"?e(a).as:e(U),"data-slot":b.$attrs["data-slot"]??"root",class:c(n.value.root({class:[e(a).ui?.root,e(a).class]}))},{default:v(()=>[de("div",{"data-slot":"container",class:c(n.value.container({class:e(a).ui?.container}))},[B(e(ye),_({id:e(y)},{...e(d),...H.value,...e(t)},{name:e(R),disabled:e(V),"data-slot":"base",class:n.value.base({class:e(a).ui?.base}),"onUpdate:modelValue":Q}),{default:v(({state:W})=>[B(e(ke),{"data-slot":"indicator",class:c(n.value.indicator({class:e(a).ui?.indicator}))},{default:v(()=>[W==="indeterminate"?(i(),f(j,{key:0,name:e(a).indeterminateIcon||e(s).ui.icons.minus,"data-slot":"icon",class:c(n.value.icon({class:e(a).ui?.icon}))},null,8,["name","class"])):(i(),f(j,{key:1,name:e(a).icon||e(s).ui.icons.check,"data-slot":"icon",class:c(n.value.icon({class:e(a).ui?.icon}))},null,8,["name","class"]))]),_:2},1032,["class"])]),_:1},16,["id","name","disabled","class"])],2),e(a).label||l.label||e(a).description||l.description?(i(),S("div",{key:0,"data-slot":"wrapper",class:c(n.value.wrapper({class:e(a).ui?.wrapper}))},[e(a).label||l.label?(i(),f(T(!e(a).variant||e(a).variant==="list"?e(U):"p"),{key:0,for:e(y),"data-slot":"label",class:c(n.value.label({class:e(a).ui?.label}))},{default:v(()=>[C(b.$slots,"label",{label:e(a).label},()=>[N(K(e(a).label),1)])]),_:3},8,["for","class"])):x("",!0),e(a).description||l.description?(i(),S("p",{key:1,"data-slot":"description",class:c(n.value.description({class:e(a).ui?.description}))},[C(b.$slots,"description",{description:e(a).description},()=>[N(K(e(a).description),1)])],2)):x("",!0)],2)):x("",!0)]),_:3},8,["as","data-slot","class"]))}});export{Ie as _};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_ as Oe}from"./BV8EzO8q.js";import{_ as He}from"./B7zo6PK8.js";import{_ as ke,a as qe,b as Ke,c as Ge,d as We,e as Je,f as Qe,g as be,u as Ze,h as Xe,i as Ye,j as et,k as tt,l as st,m as nt,n as at}from"./DCeZxpxe.js";import{d as ee,o as t,e as S,f as p,g as s,h as r,c as l,t as o,l as u,m as ue,b as e,k as $,_ as se,H as $e,F as B,z as Q,j as ce,v as D,K as ot,i as Y,L as lt,r as g,a as ae,C as rt,x as J,I as Ce,G as it,M as ct,D as pe,J as ut,q as dt,u as mt,w as ft,s as pt,N as gt}from"./BdQ7kfxJ.js";import{_ as we}from"./C_eXufkv.js";import{_ as xt,a as vt}from"./B7uPoZ7T.js";import{_ as xe}from"./CrsaY0R_.js";import{_ as ht}from"./DzJa19LG.js";import{_ as yt}from"./BOn5q0rT.js";import{_ as Se}from"./dg6uXTyR.js";import{_ as _t,a as kt,i as bt,b as $t,s as he,c as Ct}from"./C5X_N4R7.js";import{c as ye,a as ie,b as wt,d as St,g as Tt,h as Te,s as ge,e as de,r as _e,i as jt}from"./DwZS0oRm.js";import{_ as ve}from"./CPrVhXJk.js";import{_ as It}from"./xKX9IHe3.js";import{_ as Rt}from"./DadksxQ9.js";import{_ as zt}from"./CUWrUpTl.js";import{_ as Ut}from"./Bh2WA4IJ.js";import{_ as Mt}from"./C2hIM5f9.js";import{_ as je}from"./CK2AMqz_.js";import{u as Vt,p as At,_ as Et}from"./CFKbXp6V.js";import{b as Lt}from"./CrZhoZuI.js";import{a as Nt,u as Ft}from"./DTtizz85.js";import"./Bo73sAu8.js";import"./CZ6WR7uw.js";import"./D0XWJGhG.js";import"./i7znB42v.js";import"./CyWOerIG.js";import"./CxwnFFD0.js";import"./CfV2N201.js";import"./B4NjylBn.js";import"./CsJ9Ce4U.js";import"./DqkCbAzo.js";import"./Gn1Ns00e.js";import"./D-c8ZSws.js";import"./HGYIpJtg.js";import"./Bg63qh8W.js";import"./BilJoEne.js";import"./9oKY4Zb7.js";import"./BO4sfkbw.js";import"./rPG7kzfL.js";import"./BL8cYWsR.js";import"./WZXZeGYt.js";import"./EJllK0wm.js";import"./Sx5-c-bZ.js";import"./B8tezsWe.js";const Bt={class:"flex items-center gap-3 flex-1 min-w-0 justify-between"},Dt={class:"flex items-center gap-3 min-w-0"},Pt={class:"font-mono text-sm truncate text-gray-600 dark:text-gray-400 min-w-0"},Ot={class:"flex items-center gap-3 shrink-0 max-sm:hidden"},Ht={class:"text-xs text-gray-500 tabular-nums whitespace-nowrap"},qt={class:"text-xs text-gray-500 tabular-nums whitespace-nowrap"},Kt={key:1,class:"text-xs text-gray-400 whitespace-nowrap"},Gt={class:"grid grid-cols-1 lg:grid-cols-12 gap-4"},Wt={class:"lg:col-span-9"},Jt={class:"space-y-3"},Qt={key:0,class:"text-sm font-medium break-words text-gray-500 dark:text-gray-400"},Zt={class:"flex flex-wrap gap-2"},Xt={class:"text-sm text-gray-500"},Yt={key:1,class:"rounded-md border border-default p-3 space-y-1.5"},es={class:"flex items-center gap-2 flex-wrap"},ts={key:0,class:"text-xs text-gray-500"},ss={class:"text-xs text-gray-500"},ns={class:"text-sm text-gray-500"},as={class:"font-mono text-xs"},os={class:"flex items-start gap-3"},ls={class:"flex flex-col gap-1 shrink-0"},rs={class:"flex-1 min-w-0 space-y-1.5"},is={class:"flex justify-end"},cs=ee({__name:"ClusterSummary",props:{cluster:{},triageStatus:{},triageNote:{},triageSaving:{type:Boolean},triageChanged:{type:Boolean}},emits:["update:triageStatus","update:triageNote","save-triage"],setup(a,{emit:I}){const m=a,C=I,d=D(()=>Tt(m.cluster.fixVerification)),w=[{label:"Open",value:"open",color:"warning"},{label:"Resolved",value:"resolved",color:"success"},{label:"Ignored",value:"ignored",color:"neutral"}];return(n,c)=>{const y=ue,z=se,A=xe,R=$e,T=ht,h=yt,j=ce,x=Se,E=_t;return t(),S(E,{"storage-key":"failure-cluster"},{folded:p(()=>[s("div",Bt,[s("div",Dt,[r(y,{color:("clusterStatusColor"in n?n.clusterStatusColor:e(St))(a.cluster.status),variant:"solid",size:"sm",class:"shrink-0 capitalize"},{default:p(()=>[$(o(a.cluster.status),1)]),_:1},8,["color"]),s("span",Pt,o(a.cluster.signature),1),a.cluster.errorType?(t(),S(y,{key:0,color:("clusterErrorTypeColor"in n?n.clusterErrorTypeColor:e(ye))(a.cluster.errorType),variant:"subtle",size:"sm"},{default:p(()=>[$(o(a.cluster.errorType),1)]),_:1},8,["color"])):u("",!0),e(d)?(t(),S(y,{key:1,color:e(d).color,variant:"subtle",size:"sm",class:"gap-1 shrink-0"},{default:p(()=>[r(z,{name:e(d).icon,class:"size-3"},null,8,["name"]),$(" "+o(e(d).label),1)]),_:1},8,["color"])):u("",!0)]),s("div",Ot,[s("span",Ht,o(a.cluster.occurrences)+" occurrence"+o(a.cluster.occurrences===1?"":"s"),1),s("span",qt,o(a.cluster.affectedTests)+" "+o(a.cluster.affectedTests===1?"test":"tests"),1),a.cluster.diagnosis?.status==="completed"&&a.cluster.diagnosis?.category?(t(),S(y,{key:0,color:"neutral",variant:"outline",size:"sm",class:"gap-1 whitespace-nowrap"},{default:p(()=>[r(z,{name:"i-lucide-sparkles",class:"size-3"}),$(" "+o(a.cluster.diagnosis.category),1)]),_:1})):u("",!0),a.cluster.lastSeenAt?(t(),l("span",Kt," last seen "+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.lastSeenAt)),1)):u("",!0)])])]),default:p(()=>[s("div",Gt,[s("div",Wt,[r(h,{title:a.cluster.signature},{default:p(()=>[s("div",Jt,[a.cluster.title?(t(),l("p",Qt,o(a.cluster.title),1)):u("",!0),s("div",Zt,[a.cluster.errorType?(t(),S(y,{key:0,color:("clusterErrorTypeColor"in n?n.clusterErrorTypeColor:e(ye))(a.cluster.errorType),variant:"subtle"},{default:p(()=>[$(o(a.cluster.errorType),1)]),_:1},8,["color"])):u("",!0),r(y,{color:"neutral",variant:"subtle"},{default:p(()=>[$(o(a.cluster.occurrences)+" occurrence"+o(a.cluster.occurrences===1?"":"s"),1)]),_:1}),r(y,{color:"neutral",variant:"subtle"},{default:p(()=>[$(o(a.cluster.affectedTests)+" "+o(a.cluster.affectedTests===1?"test":"tests")+" affected ",1)]),_:1}),a.cluster.diagnosis?.status==="completed"&&a.cluster.diagnosis?.category?(t(),S(y,{key:1,color:"neutral",variant:"outline",class:"gap-1"},{default:p(()=>[r(z,{name:"i-lucide-sparkles",class:"size-3"}),$(" "+o(a.cluster.diagnosis.category),1)]),_:1})):u("",!0),r(A,{topic:"cluster.concept"})]),s("p",Xt,[c[2]||(c[2]=$(" First seen in ",-1)),r(R,{to:`/test-runs/${a.cluster.firstSeenRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.firstSeenRunId),1)]),_:1},8,["to"]),a.cluster.firstSeenAt?(t(),l(B,{key:0},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.firstSeenAt))+") ",1)],64)):u("",!0),c[3]||(c[3]=$(" · Last seen in ",-1)),r(R,{to:`/test-runs/${a.cluster.lastSeenRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.lastSeenRunId),1)]),_:1},8,["to"]),a.cluster.lastSeenAt?(t(),l(B,{key:1},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.lastSeenAt))+") ",1)],64)):u("",!0),a.cluster.lastSeenRunStatus?(t(),S(T,{key:2,status:a.cluster.lastSeenRunStatus,size:"sm",class:"ml-1 align-middle"},null,8,["status"])):u("",!0)]),e(d)?(t(),l("div",Yt,[s("div",es,[r(y,{color:e(d).color,variant:"subtle",class:"gap-1"},{default:p(()=>[r(z,{name:e(d).icon,class:"size-3"},null,8,["name"]),$(" "+o(e(d).label),1)]),_:1},8,["color"]),a.cluster.timeToResolutionMs!=null?(t(),l("span",ts," open for "+o(("formatLongDuration"in n?n.formatLongDuration:e(wt))(a.cluster.timeToResolutionMs)),1)):u("",!0),r(A,{topic:"cluster.resolution"})]),s("p",ss,o(e(d).hint),1),s("p",ns,[a.cluster.fixLandedRunId?(t(),l(B,{key:0},[c[4]||(c[4]=$(" Fix landed in ",-1)),r(R,{to:`/test-runs/${a.cluster.fixLandedRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.fixLandedRunId),1)]),_:1},8,["to"])],64)):u("",!0),a.cluster.fixLandedAt?(t(),l(B,{key:1},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.fixLandedAt))+")",1)],64)):u("",!0),a.cluster.fixCommit?(t(),l(B,{key:2},[c[5]||(c[5]=$(" · commit ",-1)),s("code",as,o(a.cluster.fixCommit.slice(0,8)),1)],64)):u("",!0)])])):u("",!0)])]),_:1},8,["title"])]),r(h,{class:"lg:col-span-3",icon:"i-lucide-triangle-alert","icon-class":"text-amber-500",title:"Triage",help:"cluster.triage"},{default:p(()=>[s("div",os,[s("div",ls,[(t(),l(B,null,Q(w,N=>r(j,{key:N.value,size:"xs",class:"justify-start",color:a.triageStatus===N.value?N.color:"neutral",variant:a.triageStatus===N.value?"solid":"outline",onClick:O=>C("update:triageStatus",N.value)},{default:p(()=>[$(o(N.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),s("div",rs,[r(x,{"model-value":a.triageNote,placeholder:"Optional note…",rows:3,class:"text-sm w-full","onUpdate:modelValue":c[0]||(c[0]=N=>C("update:triageNote",N))},null,8,["model-value"]),s("div",is,[a.triageChanged?(t(),S(j,{key:0,size:"xs",icon:"i-lucide-check",loading:a.triageSaving,onClick:c[1]||(c[1]=N=>C("save-triage"))},{default:p(()=>[...c[6]||(c[6]=[$(" Save ",-1)])]),_:1},8,["loading"])):u("",!0)])])])]),_:1})])]),_:1})}}}),us=Object.assign(cs,{__name:"ClusterSummary"}),ds={class:"divide-y divide-default"},ms={class:"text-xs font-mono text-gray-700 dark:text-gray-300 break-all whitespace-pre-wrap"},fs={class:"text-xs font-mono text-gray-600 dark:text-gray-400 truncate"},ps=ee({__name:"TestEvidenceSignals",props:lt({consoleLogs:{},networkRequests:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(a){const I=a,m=D(()=>Array.isArray(I.consoleLogs)?I.consoleLogs.filter(c=>c.type==="error"||c.type==="warning"):[]),C=D(()=>Array.isArray(I.networkRequests)?I.networkRequests.filter(c=>c.status&&c.status>=400):[]),d=D(()=>m.value.length>0||C.value.length>0),w=D(()=>{const c=[];return m.value.length&&c.push(`${m.value.length} console`),C.value.length&&c.push(`${C.value.length} network`),c.join(", ")}),n=ot(a,"open");return(c,y)=>{const z=se,A=ue,R=ke;return e(d)?(t(),S(R,{key:0,icon:"i-lucide-triangle-alert",label:`Signals (${e(w)})`,open:n.value,"onUpdate:open":y[0]||(y[0]=T=>n.value=T)},{default:p(()=>[s("div",ds,[e(m).length>0?(t(),l(B,{key:0},[y[1]||(y[1]=s("div",{class:"px-3 py-1 bg-gray-50 dark:bg-gray-800/40"},[s("p",{class:"text-[10px] font-semibold text-gray-400 uppercase tracking-wide"},"Console")],-1)),(t(!0),l(B,null,Q(e(m),(T,h)=>(t(),l("div",{key:"log-"+h,class:"px-3 py-1.5 flex items-start gap-2"},[r(z,{name:T.type==="error"?"i-lucide-x-circle":"i-lucide-alert-triangle",class:Y(["size-3.5 mt-0.5 shrink-0",T.type==="error"?"text-red-500":"text-yellow-500"])},null,8,["name","class"]),s("p",ms,o(T.text),1)]))),128))],64)):u("",!0),e(C).length>0?(t(),l(B,{key:1},[y[2]||(y[2]=s("div",{class:"px-3 py-1 bg-gray-50 dark:bg-gray-800/40"},[s("p",{class:"text-[10px] font-semibold text-gray-400 uppercase tracking-wide"},"Network")],-1)),(t(!0),l(B,null,Q(e(C),(T,h)=>(t(),l("div",{key:"req-"+h,class:"px-3 py-1.5 flex items-center gap-2"},[r(A,{color:T.status>=500?"error":"warning",variant:"subtle",size:"sm",class:"shrink-0 font-mono"},{default:p(()=>[$(o(T.status),1)]),_:2},1032,["color"]),s("p",fs,o(T.url),1)]))),128))],64)):u("",!0)])]),_:1},8,["label","open"])):u("",!0)}}}),gs=Object.assign(ps,{__name:"TestEvidenceSignals"}),xs={class:"space-y-3"},vs={key:0,class:"flex gap-0 border-b border-default overflow-x-auto"},hs=["title","onClick"],ys={key:0,class:"opacity-60 ml-1"},_s={key:1,class:"flex items-start justify-between gap-2 flex-wrap"},ks={class:"min-w-0"},bs={class:"text-sm font-medium break-words"},$s={key:2,class:"flex items-center justify-center py-10"},Cs={key:0,class:"flex flex-wrap gap-1.5"},ws={class:"divide-y divide-default"},Ss={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Ts={key:0,class:"text-xs font-mono text-red-500 whitespace-pre-wrap break-all"},js={class:"overflow-x-auto max-h-72"},Is={class:"max-h-64 overflow-auto"},Rs=ee({__name:"ClusterTestEvidence",props:{affectedTestCases:{},projectKey:{},projectName:{}},setup(a){const I=a,m=g(I.affectedTestCases[0]?.recentTestRunsCaseId??null),C=D(()=>I.affectedTestCases.find(f=>f.recentTestRunsCaseId===m.value)),d=g(null),w=g([]),n=g(!1),c=g(!1),y=g(!1),z=g(!1),A=g(!1),R=g(!1),T=g(!1),h=new Map;function j(){y.value=!1,z.value=!1,A.value=!1,R.value=!1,T.value=!1}async function x(f){j();const _=h.get(f);if(_){d.value=_.detail,w.value=_.traces,n.value=!1,c.value=!1;return}n.value=!0,c.value=!0,d.value=null,w.value=[];const[L,K]=await Promise.allSettled([$fetch(`/api/test-run-cases/${f}`),$fetch(`/api/test-run-cases/${f}/traces`)]);L.status==="fulfilled"&&(d.value=L.value),n.value=!1,K.status==="fulfilled"&&(w.value=K.value.items),c.value=!1,L.status==="fulfilled"&&K.status==="fulfilled"&&h.set(f,{detail:L.value,traces:K.value.items})}const E=new Map,N=g(null),O=g("trace"),F=D(()=>N.value?.frames??[]);async function q(f){if(N.value=E.get(f)??null,!(E.has(f)||w.value.length===0||!d.value?.testRun?.id))try{const L=await $fetch(`/api/test-run-cases/${f}/trace-stacks`),K=L.status==="ok"&&L.frames?.length?L:null;E.set(f,K),m.value===f&&(N.value=K)}catch{E.set(f,null)}}ae([d,w],()=>{O.value="trace",m.value&&q(m.value)}),ae(m,f=>{f&&x(f)}),rt(()=>{m.value&&x(m.value)});const M=D(()=>{const f=d.value?.steps;return Array.isArray(f)?f.filter(_=>_.error):[]}),P=D(()=>d.value?.testSource?d.value.testSource.split(`
|
|
1
|
+
import{_ as Oe}from"./BuMX-4RF.js";import{_ as He}from"./OMI0cmZ0.js";import{_ as ke,a as qe,b as Ke,c as Ge,d as We,e as Je,f as Qe,g as be,u as Ze,h as Xe,i as Ye,j as et,k as tt,l as st,m as nt,n as at}from"./CywiLuOD.js";import{d as ee,o as t,e as S,f as p,g as s,h as r,c as l,t as o,l as u,m as ue,b as e,k as $,_ as se,H as $e,F as B,z as Q,j as ce,v as D,K as ot,i as Y,L as lt,r as g,a as ae,C as rt,x as J,I as Ce,G as it,M as ct,D as pe,J as ut,q as dt,u as mt,w as ft,s as pt,N as gt}from"./1QWBzxLM.js";import{_ as we}from"./BnUQ3i5l.js";import{_ as xt,a as vt}from"./BS91Og__.js";import{_ as xe}from"./B82vqOZe.js";import{_ as ht}from"./DvSHenmZ.js";import{_ as yt}from"./bmAf49LT.js";import{_ as Se}from"./DoDo3VF2.js";import{_ as _t,a as kt,i as bt,b as $t,s as he,c as Ct}from"./CN1M6i4K.js";import{c as ye,a as ie,b as wt,d as St,g as Tt,h as Te,s as ge,e as de,r as _e,i as jt}from"./D4mPjHHR.js";import{_ as ve}from"./DYdwHaco.js";import{_ as It}from"./DbtjJCra.js";import{_ as Rt}from"./mYw4b7uY.js";import{_ as zt}from"./UAmyrRCI.js";import{_ as Ut}from"./Bx_lfKHl.js";import{_ as Mt}from"./DVo_e_uj.js";import{_ as je}from"./CtQMagSz.js";import{u as Vt,p as At,_ as Et}from"./ChOtLYkd.js";import{b as Lt}from"./BOA-I6S9.js";import{a as Nt,u as Ft}from"./CU_2YLhT.js";import"./CiCUZGFZ.js";import"./B-1zt4pp.js";import"./e-GZmCeP.js";import"./DpM8IgHL.js";import"./B4lvHjBe.js";import"./Bl0xzETD.js";import"./Dn_-RkxP.js";import"./Dpwj_1H5.js";import"./BABCH5kE.js";import"./CzyCEdYP.js";import"./BF5qB58w.js";import"./D-c8ZSws.js";import"./AbnDY6Zr.js";import"./CHz7LJIX.js";import"./CEPU6VkU.js";import"./CapSEET7.js";import"./DBXXb0w8.js";import"./Bp1WeQ0_.js";import"./Bp31ZRcA.js";import"./D_ZAGxCQ.js";import"./VBTxfbqU.js";import"./B1iYmAt_.js";import"./DJKHXfNS.js";const Bt={class:"flex items-center gap-3 flex-1 min-w-0 justify-between"},Dt={class:"flex items-center gap-3 min-w-0"},Pt={class:"font-mono text-sm truncate text-gray-600 dark:text-gray-400 min-w-0"},Ot={class:"flex items-center gap-3 shrink-0 max-sm:hidden"},Ht={class:"text-xs text-gray-500 tabular-nums whitespace-nowrap"},qt={class:"text-xs text-gray-500 tabular-nums whitespace-nowrap"},Kt={key:1,class:"text-xs text-gray-400 whitespace-nowrap"},Gt={class:"grid grid-cols-1 lg:grid-cols-12 gap-4"},Wt={class:"lg:col-span-9"},Jt={class:"space-y-3"},Qt={key:0,class:"text-sm font-medium break-words text-gray-500 dark:text-gray-400"},Zt={class:"flex flex-wrap gap-2"},Xt={class:"text-sm text-gray-500"},Yt={key:1,class:"rounded-md border border-default p-3 space-y-1.5"},es={class:"flex items-center gap-2 flex-wrap"},ts={key:0,class:"text-xs text-gray-500"},ss={class:"text-xs text-gray-500"},ns={class:"text-sm text-gray-500"},as={class:"font-mono text-xs"},os={class:"flex items-start gap-3"},ls={class:"flex flex-col gap-1 shrink-0"},rs={class:"flex-1 min-w-0 space-y-1.5"},is={class:"flex justify-end"},cs=ee({__name:"ClusterSummary",props:{cluster:{},triageStatus:{},triageNote:{},triageSaving:{type:Boolean},triageChanged:{type:Boolean}},emits:["update:triageStatus","update:triageNote","save-triage"],setup(a,{emit:I}){const m=a,C=I,d=D(()=>Tt(m.cluster.fixVerification)),w=[{label:"Open",value:"open",color:"warning"},{label:"Resolved",value:"resolved",color:"success"},{label:"Ignored",value:"ignored",color:"neutral"}];return(n,c)=>{const y=ue,z=se,A=xe,R=$e,T=ht,h=yt,j=ce,x=Se,E=_t;return t(),S(E,{"storage-key":"failure-cluster"},{folded:p(()=>[s("div",Bt,[s("div",Dt,[r(y,{color:("clusterStatusColor"in n?n.clusterStatusColor:e(St))(a.cluster.status),variant:"solid",size:"sm",class:"shrink-0 capitalize"},{default:p(()=>[$(o(a.cluster.status),1)]),_:1},8,["color"]),s("span",Pt,o(a.cluster.signature),1),a.cluster.errorType?(t(),S(y,{key:0,color:("clusterErrorTypeColor"in n?n.clusterErrorTypeColor:e(ye))(a.cluster.errorType),variant:"subtle",size:"sm"},{default:p(()=>[$(o(a.cluster.errorType),1)]),_:1},8,["color"])):u("",!0),e(d)?(t(),S(y,{key:1,color:e(d).color,variant:"subtle",size:"sm",class:"gap-1 shrink-0"},{default:p(()=>[r(z,{name:e(d).icon,class:"size-3"},null,8,["name"]),$(" "+o(e(d).label),1)]),_:1},8,["color"])):u("",!0)]),s("div",Ot,[s("span",Ht,o(a.cluster.occurrences)+" occurrence"+o(a.cluster.occurrences===1?"":"s"),1),s("span",qt,o(a.cluster.affectedTests)+" "+o(a.cluster.affectedTests===1?"test":"tests"),1),a.cluster.diagnosis?.status==="completed"&&a.cluster.diagnosis?.category?(t(),S(y,{key:0,color:"neutral",variant:"outline",size:"sm",class:"gap-1 whitespace-nowrap"},{default:p(()=>[r(z,{name:"i-lucide-sparkles",class:"size-3"}),$(" "+o(a.cluster.diagnosis.category),1)]),_:1})):u("",!0),a.cluster.lastSeenAt?(t(),l("span",Kt," last seen "+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.lastSeenAt)),1)):u("",!0)])])]),default:p(()=>[s("div",Gt,[s("div",Wt,[r(h,{title:a.cluster.signature},{default:p(()=>[s("div",Jt,[a.cluster.title?(t(),l("p",Qt,o(a.cluster.title),1)):u("",!0),s("div",Zt,[a.cluster.errorType?(t(),S(y,{key:0,color:("clusterErrorTypeColor"in n?n.clusterErrorTypeColor:e(ye))(a.cluster.errorType),variant:"subtle"},{default:p(()=>[$(o(a.cluster.errorType),1)]),_:1},8,["color"])):u("",!0),r(y,{color:"neutral",variant:"subtle"},{default:p(()=>[$(o(a.cluster.occurrences)+" occurrence"+o(a.cluster.occurrences===1?"":"s"),1)]),_:1}),r(y,{color:"neutral",variant:"subtle"},{default:p(()=>[$(o(a.cluster.affectedTests)+" "+o(a.cluster.affectedTests===1?"test":"tests")+" affected ",1)]),_:1}),a.cluster.diagnosis?.status==="completed"&&a.cluster.diagnosis?.category?(t(),S(y,{key:1,color:"neutral",variant:"outline",class:"gap-1"},{default:p(()=>[r(z,{name:"i-lucide-sparkles",class:"size-3"}),$(" "+o(a.cluster.diagnosis.category),1)]),_:1})):u("",!0),r(A,{topic:"cluster.concept"})]),s("p",Xt,[c[2]||(c[2]=$(" First seen in ",-1)),r(R,{to:`/test-runs/${a.cluster.firstSeenRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.firstSeenRunId),1)]),_:1},8,["to"]),a.cluster.firstSeenAt?(t(),l(B,{key:0},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.firstSeenAt))+") ",1)],64)):u("",!0),c[3]||(c[3]=$(" · Last seen in ",-1)),r(R,{to:`/test-runs/${a.cluster.lastSeenRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.lastSeenRunId),1)]),_:1},8,["to"]),a.cluster.lastSeenAt?(t(),l(B,{key:1},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.lastSeenAt))+") ",1)],64)):u("",!0),a.cluster.lastSeenRunStatus?(t(),S(T,{key:2,status:a.cluster.lastSeenRunStatus,size:"sm",class:"ml-1 align-middle"},null,8,["status"])):u("",!0)]),e(d)?(t(),l("div",Yt,[s("div",es,[r(y,{color:e(d).color,variant:"subtle",class:"gap-1"},{default:p(()=>[r(z,{name:e(d).icon,class:"size-3"},null,8,["name"]),$(" "+o(e(d).label),1)]),_:1},8,["color"]),a.cluster.timeToResolutionMs!=null?(t(),l("span",ts," open for "+o(("formatLongDuration"in n?n.formatLongDuration:e(wt))(a.cluster.timeToResolutionMs)),1)):u("",!0),r(A,{topic:"cluster.resolution"})]),s("p",ss,o(e(d).hint),1),s("p",ns,[a.cluster.fixLandedRunId?(t(),l(B,{key:0},[c[4]||(c[4]=$(" Fix landed in ",-1)),r(R,{to:`/test-runs/${a.cluster.fixLandedRunId}`,class:"text-primary hover:underline"},{default:p(()=>[$(" run #"+o(a.cluster.fixLandedRunId),1)]),_:1},8,["to"])],64)):u("",!0),a.cluster.fixLandedAt?(t(),l(B,{key:1},[$(" ("+o(("formatRelativeTime"in n?n.formatRelativeTime:e(ie))(a.cluster.fixLandedAt))+")",1)],64)):u("",!0),a.cluster.fixCommit?(t(),l(B,{key:2},[c[5]||(c[5]=$(" · commit ",-1)),s("code",as,o(a.cluster.fixCommit.slice(0,8)),1)],64)):u("",!0)])])):u("",!0)])]),_:1},8,["title"])]),r(h,{class:"lg:col-span-3",icon:"i-lucide-triangle-alert","icon-class":"text-amber-500",title:"Triage",help:"cluster.triage"},{default:p(()=>[s("div",os,[s("div",ls,[(t(),l(B,null,Q(w,N=>r(j,{key:N.value,size:"xs",class:"justify-start",color:a.triageStatus===N.value?N.color:"neutral",variant:a.triageStatus===N.value?"solid":"outline",onClick:O=>C("update:triageStatus",N.value)},{default:p(()=>[$(o(N.label),1)]),_:2},1032,["color","variant","onClick"])),64))]),s("div",rs,[r(x,{"model-value":a.triageNote,placeholder:"Optional note…",rows:3,class:"text-sm w-full","onUpdate:modelValue":c[0]||(c[0]=N=>C("update:triageNote",N))},null,8,["model-value"]),s("div",is,[a.triageChanged?(t(),S(j,{key:0,size:"xs",icon:"i-lucide-check",loading:a.triageSaving,onClick:c[1]||(c[1]=N=>C("save-triage"))},{default:p(()=>[...c[6]||(c[6]=[$(" Save ",-1)])]),_:1},8,["loading"])):u("",!0)])])])]),_:1})])]),_:1})}}}),us=Object.assign(cs,{__name:"ClusterSummary"}),ds={class:"divide-y divide-default"},ms={class:"text-xs font-mono text-gray-700 dark:text-gray-300 break-all whitespace-pre-wrap"},fs={class:"text-xs font-mono text-gray-600 dark:text-gray-400 truncate"},ps=ee({__name:"TestEvidenceSignals",props:lt({consoleLogs:{},networkRequests:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:["update:open"],setup(a){const I=a,m=D(()=>Array.isArray(I.consoleLogs)?I.consoleLogs.filter(c=>c.type==="error"||c.type==="warning"):[]),C=D(()=>Array.isArray(I.networkRequests)?I.networkRequests.filter(c=>c.status&&c.status>=400):[]),d=D(()=>m.value.length>0||C.value.length>0),w=D(()=>{const c=[];return m.value.length&&c.push(`${m.value.length} console`),C.value.length&&c.push(`${C.value.length} network`),c.join(", ")}),n=ot(a,"open");return(c,y)=>{const z=se,A=ue,R=ke;return e(d)?(t(),S(R,{key:0,icon:"i-lucide-triangle-alert",label:`Signals (${e(w)})`,open:n.value,"onUpdate:open":y[0]||(y[0]=T=>n.value=T)},{default:p(()=>[s("div",ds,[e(m).length>0?(t(),l(B,{key:0},[y[1]||(y[1]=s("div",{class:"px-3 py-1 bg-gray-50 dark:bg-gray-800/40"},[s("p",{class:"text-[10px] font-semibold text-gray-400 uppercase tracking-wide"},"Console")],-1)),(t(!0),l(B,null,Q(e(m),(T,h)=>(t(),l("div",{key:"log-"+h,class:"px-3 py-1.5 flex items-start gap-2"},[r(z,{name:T.type==="error"?"i-lucide-x-circle":"i-lucide-alert-triangle",class:Y(["size-3.5 mt-0.5 shrink-0",T.type==="error"?"text-red-500":"text-yellow-500"])},null,8,["name","class"]),s("p",ms,o(T.text),1)]))),128))],64)):u("",!0),e(C).length>0?(t(),l(B,{key:1},[y[2]||(y[2]=s("div",{class:"px-3 py-1 bg-gray-50 dark:bg-gray-800/40"},[s("p",{class:"text-[10px] font-semibold text-gray-400 uppercase tracking-wide"},"Network")],-1)),(t(!0),l(B,null,Q(e(C),(T,h)=>(t(),l("div",{key:"req-"+h,class:"px-3 py-1.5 flex items-center gap-2"},[r(A,{color:T.status>=500?"error":"warning",variant:"subtle",size:"sm",class:"shrink-0 font-mono"},{default:p(()=>[$(o(T.status),1)]),_:2},1032,["color"]),s("p",fs,o(T.url),1)]))),128))],64)):u("",!0)])]),_:1},8,["label","open"])):u("",!0)}}}),gs=Object.assign(ps,{__name:"TestEvidenceSignals"}),xs={class:"space-y-3"},vs={key:0,class:"flex gap-0 border-b border-default overflow-x-auto"},hs=["title","onClick"],ys={key:0,class:"opacity-60 ml-1"},_s={key:1,class:"flex items-start justify-between gap-2 flex-wrap"},ks={class:"min-w-0"},bs={class:"text-sm font-medium break-words"},$s={key:2,class:"flex items-center justify-center py-10"},Cs={key:0,class:"flex flex-wrap gap-1.5"},ws={class:"divide-y divide-default"},Ss={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},Ts={key:0,class:"text-xs font-mono text-red-500 whitespace-pre-wrap break-all"},js={class:"overflow-x-auto max-h-72"},Is={class:"max-h-64 overflow-auto"},Rs=ee({__name:"ClusterTestEvidence",props:{affectedTestCases:{},projectKey:{},projectName:{}},setup(a){const I=a,m=g(I.affectedTestCases[0]?.recentTestRunsCaseId??null),C=D(()=>I.affectedTestCases.find(f=>f.recentTestRunsCaseId===m.value)),d=g(null),w=g([]),n=g(!1),c=g(!1),y=g(!1),z=g(!1),A=g(!1),R=g(!1),T=g(!1),h=new Map;function j(){y.value=!1,z.value=!1,A.value=!1,R.value=!1,T.value=!1}async function x(f){j();const _=h.get(f);if(_){d.value=_.detail,w.value=_.traces,n.value=!1,c.value=!1;return}n.value=!0,c.value=!0,d.value=null,w.value=[];const[L,K]=await Promise.allSettled([$fetch(`/api/test-run-cases/${f}`),$fetch(`/api/test-run-cases/${f}/traces`)]);L.status==="fulfilled"&&(d.value=L.value),n.value=!1,K.status==="fulfilled"&&(w.value=K.value.items),c.value=!1,L.status==="fulfilled"&&K.status==="fulfilled"&&h.set(f,{detail:L.value,traces:K.value.items})}const E=new Map,N=g(null),O=g("trace"),F=D(()=>N.value?.frames??[]);async function q(f){if(N.value=E.get(f)??null,!(E.has(f)||w.value.length===0||!d.value?.testRun?.id))try{const L=await $fetch(`/api/test-run-cases/${f}/trace-stacks`),K=L.status==="ok"&&L.frames?.length?L:null;E.set(f,K),m.value===f&&(N.value=K)}catch{E.set(f,null)}}ae([d,w],()=>{O.value="trace",m.value&&q(m.value)}),ae(m,f=>{f&&x(f)}),rt(()=>{m.value&&x(m.value)});const M=D(()=>{const f=d.value?.steps;return Array.isArray(f)?f.filter(_=>_.error):[]}),P=D(()=>d.value?.testSource?d.value.testSource.split(`
|
|
2
2
|
`).length:0),U=D(()=>{const f=d.value;if(!f)return[];const _=f.attachments.filter(k=>bt(k.path,k.contentType)).length,L=f.attachments.filter(k=>$t(k.path,k.contentType)).length,K=Array.isArray(f.consoleLogs)?f.consoleLogs.filter(k=>k.type==="error"||k.type==="warning").length:0,Z=Array.isArray(f.networkRequests)?f.networkRequests.filter(k=>(k.status??0)>=400).length:0;return[{icon:"i-lucide-image",label:"screenshots",count:_},{icon:"i-lucide-video",label:"videos",count:L},{icon:"i-lucide-bug-play",label:"traces",count:w.value.length},{icon:"i-lucide-list-checks",label:"failing steps",count:M.value.length},{icon:"i-lucide-triangle-alert",label:"signals",count:K+Z},{icon:"i-lucide-code",label:"source",count:f.testSourceFrames?.length||(f.testSource?1:0)},{icon:"i-lucide-accessibility",label:"ARIA",count:f.ariaSnapshot?1:0}].filter(k=>k.count>0)});return(f,_)=>{const L=ve,K=ce,Z=se,k=ue,i=qe,te=Ke,b=Ge,V=ke,H=gs,G=Rt,W=We,oe=Je,X=kt,ne=Qe;return t(),l("div",xs,[a.affectedTestCases.length>1?(t(),l("div",vs,[(t(!0),l(B,null,Q(a.affectedTestCases,v=>(t(),l("button",{key:v.recentTestRunsCaseId,class:Y(["px-3 py-1.5 text-xs whitespace-nowrap border-b-2 -mb-px transition-colors",e(m)===v.recentTestRunsCaseId?"border-primary text-primary font-medium":"border-transparent text-gray-500 hover:text-gray-700 dark:hover:text-gray-300"]),title:v.title,onClick:le=>m.value=v.recentTestRunsCaseId},[$(o(v.title.split(" › ").pop())+" ",1),v.runCount>1?(t(),l("span",ys,o(v.runCount)+"×",1)):u("",!0)],10,hs))),128))])):u("",!0),e(C)?(t(),l("div",_s,[s("div",ks,[s("p",bs,o(e(C).title),1),r(L,{"file-path":e(C).filePath,"project-key":a.projectKey,"project-name":a.projectName,class:"text-xs text-gray-400"},null,8,["file-path","project-key","project-name"])]),r(K,{to:`/test-run-cases/${e(C).recentTestRunsCaseId}`,size:"xs",variant:"outline",color:"neutral","trailing-icon":"i-lucide-arrow-right"},{default:p(()=>[..._[6]||(_[6]=[$(" Open execution ",-1)])]),_:1},8,["to"])])):u("",!0),e(n)?(t(),l("div",$s,[r(Z,{name:"i-lucide-loader-circle",class:"size-5 animate-spin text-gray-400"})])):e(d)?(t(),l(B,{key:3},[e(U).length?(t(),l("div",Cs,[(t(!0),l(B,null,Q(e(U),v=>(t(),S(k,{key:v.label,color:"neutral",variant:"subtle",size:"sm",class:"gap-1"},{default:p(()=>[r(Z,{name:v.icon,class:"size-3"},null,8,["name"]),$(" "+o(v.count)+" "+o(v.label),1)]),_:2},1024))),128))])):u("",!0),r(i,{attachments:e(d).attachments},null,8,["attachments"]),r(te,{attachments:e(d).attachments},null,8,["attachments"]),r(b,{traces:e(w),loading:e(c)},null,8,["traces","loading"]),e(M).length>0?(t(),S(V,{key:1,icon:"i-lucide-list-checks",label:"Failing steps",count:e(M).length,open:e(y),"onUpdate:open":_[0]||(_[0]=v=>J(y)?y.value=v:null)},{default:p(()=>[s("div",ws,[(t(!0),l(B,null,Q(e(M),(v,le)=>(t(),l("div",{key:le,class:"px-3 py-2 space-y-0.5"},[s("p",Ss,o(le+1)+". "+o(v.title),1),v.error?.message?(t(),l("p",Ts,o(v.error.message),1)):u("",!0)]))),128))])]),_:1},8,["count","open"])):u("",!0),r(H,{"console-logs":e(d).consoleLogs,"network-requests":e(d).networkRequests,open:e(z),"onUpdate:open":_[1]||(_[1]=v=>J(z)?z.value=v:null)},null,8,["console-logs","network-requests","open"]),e(d).testSourceFrames?.length||e(d).testSource||e(F).length?(t(),S(V,{key:2,icon:"i-lucide-code",label:"Test source",count:e(F).length||e(d).testSourceFrames?.length||e(P),open:e(A),"onUpdate:open":_[3]||(_[3]=v=>J(A)?A.value=v:null)},{default:p(()=>[e(F).length&&(e(d).testSourceFrames?.length||e(d).testSource)?(t(),S(G,{key:0,modelValue:e(O),"onUpdate:modelValue":_[2]||(_[2]=v=>J(O)?O.value=v:null),items:[{label:`Full stack (${e(F).length})`,value:"trace"},{label:`Captured (${e(d).testSourceFrames?.length||1})`,value:"captured"}],size:"xs",variant:"link",class:"mb-1.5",ui:{list:"gap-2",trigger:"px-1.5"}},null,8,["modelValue","items"])):u("",!0),s("div",js,[e(O)==="trace"&&e(F).length?(t(),S(W,{key:0,frames:e(F),"project-key":a.projectKey,"project-name":a.projectName},null,8,["frames","project-key","project-name"])):e(d).testSourceFrames?.length?(t(),S(oe,{key:1,frames:e(d).testSourceFrames,"project-key":a.projectKey,"project-name":a.projectName},null,8,["frames","project-key","project-name"])):e(d).testSource?(t(),S(X,{key:2,text:"```typescript\n"+e(d).testSource+"\n```"},null,8,["text"])):u("",!0)])]),_:1},8,["count","open"])):u("",!0),e(d).ariaSnapshot?(t(),S(V,{key:3,icon:"i-lucide-accessibility",label:"ARIA snapshot",open:e(R),"onUpdate:open":_[4]||(_[4]=v=>J(R)?R.value=v:null)},{default:p(()=>[s("div",Is,[r(X,{text:"```yaml\n"+e(d).ariaSnapshot+"\n```"},null,8,["text"])])]),_:1},8,["open"])):u("",!0),e(d).pageState?(t(),S(V,{key:4,icon:"i-lucide-database",label:"App state",open:e(T),"onUpdate:open":_[5]||(_[5]=v=>J(T)?T.value=v:null)},{default:p(()=>[r(ne,{"page-state":e(d).pageState,plain:""},null,8,["page-state"])]),_:1},8,["open"])):u("",!0)],64)):u("",!0)])}}}),zs=Object.assign(Rs,{__name:"ClusterTestEvidence"}),Us={key:0,class:"flex items-center gap-1.5 overflow-hidden min-w-0"},Ms={class:"text-primary shrink-0"},Vs={class:"text-gray-500 truncate text-xs font-sans"},As={key:1,class:"text-primary text-xs"},Es={key:2,class:"text-gray-400 font-sans text-xs"},Ls={class:"w-96 p-2 space-y-2"},Ns={class:"flex items-center gap-1"},Fs={class:"flex items-center gap-1"},Bs={key:0,class:"flex items-center gap-2 px-2 py-1.5 text-xs rounded-md bg-primary/5 text-gray-600 dark:text-gray-300"},Ds={class:"font-medium text-green-600 dark:text-green-400"},Ps={class:"font-medium text-red-600 dark:text-red-400"},Os={class:"text-gray-400"},Hs={key:1,class:"flex items-center justify-center gap-2 py-6 text-gray-400"},qs={key:2,class:"py-4 text-center text-sm text-red-500"},Ks={key:3,class:"flex items-start gap-2 px-2 py-2 text-xs text-amber-700 dark:text-amber-400 bg-amber-50 dark:bg-amber-900/20 rounded-md"},Gs={key:4,class:"max-h-80 overflow-y-auto space-y-px"},Ws={class:"text-xs text-primary"},Js={key:1,class:"py-4 text-center text-sm text-gray-400"},Qs=["onClick"],Zs={class:"text-xs text-primary shrink-0 w-14 pt-px"},Xs={class:"flex-1 min-w-0"},Ys={class:"text-xs font-medium leading-snug truncate"},en={class:"text-xs text-gray-400 leading-snug truncate"},tn=ee({__name:"CommitPicker",props:{modelValue:{},clusterId:{}},emits:["update:modelValue"],setup(a,{emit:I}){const m=a,C=I,d=g(!1),w=g(""),n=g([]),c=g(null),y=g(null),z=g(!1),A=g(!1),R=g(null),T=g(null),h=g([]),j=g(!1),x=g(void 0),E=D(()=>{if(!m.modelValue)return null;const U=m.modelValue.trim();return n.value.find(_=>_.sha===U||_.sha.startsWith(U))??{sha:U,shortSha:U.slice(0,7),message:"",author:"",date:""}});async function N(){if(!h.value.length){j.value=!0;try{const U=await $fetch(`/api/failure-clusters/${m.clusterId}/branches`);h.value=U.items}catch{}finally{j.value=!1}}}async function O(){const U=m.modelValue||"";z.value=!0,A.value=!1,T.value=null;try{const f={};U&&(f.baseline=U),x.value&&(f.branch=x.value);const _=await $fetch(`/api/failure-clusters/${m.clusterId}/commits`,{query:f});n.value=_.items,y.value=_.aggregate,c.value=_.error??null,T.value=U}catch{A.value=!0}finally{z.value=!1}}ae(x,()=>{n.value=[],T.value=null,O()}),ae(d,async U=>{if(U){await Promise.all([N(),O()]),await ct();const f=R.value?.$el?.querySelector("input")??R.value?.$el;f instanceof HTMLElement&&f.focus()}else w.value=""});const F=D(()=>Te(n.value,w.value)),q=D(()=>{const U=w.value.trim();return!/^[0-9a-f]{7,40}$/i.test(U)||F.value.some(f=>f.sha.startsWith(U.toLowerCase()))?null:U});function M(U){C("update:modelValue",U),d.value=!1}function P(U){U.stopPropagation(),c.value=null,y.value=null,C("update:modelValue",""),d.value=!1}return(U,f)=>{const _=ce,L=se,K=zt,Z=Ce,k=it;return t(),S(k,{open:e(d),"onUpdate:open":f[4]||(f[4]=i=>J(d)?d.value=i:null)},{content:p(()=>[s("div",Ls,[s("div",Ns,[r(L,{name:"i-lucide-git-branch",class:"size-3.5 text-gray-400 shrink-0"}),r(K,{modelValue:e(x),"onUpdate:modelValue":f[0]||(f[0]=i=>J(x)?x.value=i:null),items:e(h),placeholder:"Default branch",size:"xs",class:"flex-1",loading:e(j),disabled:e(j)},null,8,["modelValue","items","loading","disabled"])]),s("div",Fs,[r(Z,{ref_key:"searchInputRef",ref:R,modelValue:e(w),"onUpdate:modelValue":f[1]||(f[1]=i=>J(w)?w.value=i:null),placeholder:"Search message, author, SHA…",size:"xs",icon:"i-lucide-search",class:"flex-1"},null,8,["modelValue"]),a.modelValue?(t(),S(_,{key:0,size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-x",title:"Clear baseline",onClick:f[2]||(f[2]=i=>P(i))})):u("",!0)]),e(y)&&a.modelValue&&!e(z)?(t(),l("div",Bs,[r(L,{name:"i-lucide-git-compare-arrows",class:"size-3.5 shrink-0 text-primary"}),f[5]||(f[5]=s("span",null,"Since baseline:",-1)),s("span",Ds,"+"+o(e(y).linesAdded),1),s("span",Ps,"-"+o(e(y).linesRemoved),1),s("span",Os,"across "+o(e(y).filesChanged)+" file"+o(e(y).filesChanged===1?"":"s"),1)])):u("",!0),e(z)?(t(),l("div",Hs,[r(L,{name:"i-lucide-loader-2",class:"size-4 animate-spin"}),f[6]||(f[6]=s("span",{class:"text-sm"},"Loading commits…",-1))])):e(A)?(t(),l("div",qs," Failed to load commits — check your SCM token in Settings → AI ")):e(c)&&!e(z)&&e(n).length===0?(t(),l("div",Ks,[r(L,{name:"i-lucide-triangle-alert",class:"size-3.5 shrink-0 mt-0.5"}),s("span",null,o(e(c)),1)])):(t(),l("div",Gs,[e(q)?(t(),l("button",{key:0,class:"w-full text-left px-2 py-1.5 rounded flex items-center gap-2 hover:bg-elevated transition-colors border border-dashed border-default",onClick:f[3]||(f[3]=i=>M(e(q)))},[r(L,{name:"i-lucide-git-commit-horizontal",class:"size-3.5 text-gray-400 shrink-0"}),f[7]||(f[7]=s("span",{class:"text-xs text-gray-500"},"Use commit",-1)),s("code",Ws,o(e(q).slice(0,7)),1)])):u("",!0),e(F).length===0&&!e(q)?(t(),l("div",Js,o(e(w)?"No commits match":"No commits available"),1)):u("",!0),(t(!0),l(B,null,Q(e(F),i=>(t(),l("button",{key:i.sha,class:Y(["w-full text-left px-2 py-1.5 rounded flex items-start gap-2 hover:bg-elevated transition-colors",a.modelValue===i.sha?"bg-primary/10 ring-1 ring-inset ring-primary/30":""]),onClick:te=>M(i.sha)},[s("code",Zs,o(i.shortSha),1),s("div",Xs,[s("p",Ys,o(i.message),1),s("p",en,[$(o(i.author),1),i.date?(t(),l(B,{key:0},[$(" · "+o(e(ie)(i.date)),1)],64)):u("",!0)])]),a.modelValue===i.sha?(t(),S(L,{key:0,name:"i-lucide-check",class:"size-3.5 text-primary shrink-0 mt-0.5"})):u("",!0)],10,Qs))),128))]))])]),default:p(()=>[r(_,{size:"xs",color:"neutral",variant:"outline",icon:a.modelValue?"i-lucide-git-branch-plus":"i-lucide-git-branch","trailing-icon":"i-lucide-chevron-down",class:"min-w-36 max-w-48 font-mono"},{default:p(()=>[e(E)?.message?(t(),l("span",Us,[s("code",Ms,o(e(E).shortSha),1),s("span",Vs,o(e(E).message),1)])):a.modelValue?(t(),l("span",As,o(a.modelValue.slice(0,7))+"…",1)):(t(),l("span",Es,"baseline commit…"))]),_:1},8,["icon"])]),_:1},8,["open"])}}}),sn=Object.assign(tn,{__name:"CommitPicker"}),nn={class:"space-y-3"},an={key:0,class:"space-y-1"},on={class:"text-xs font-semibold text-gray-500 uppercase tracking-wide px-1"},ln={class:"rounded-md border border-default overflow-hidden divide-y divide-default"},rn={class:"text-xs text-gray-400 shrink-0"},cn={class:"text-xs text-gray-700 dark:text-gray-300 truncate"},un={class:"space-y-1"},dn={class:"text-xs font-semibold text-gray-500 uppercase tracking-wide px-1"},mn={key:0,class:"text-yellow-500 font-normal normal-case"},fn={class:"rounded-md border border-default overflow-hidden divide-y divide-default"},pn=["onClick"],gn={class:"text-xs font-mono flex-1 truncate text-gray-700 dark:text-gray-300"},xn={class:"text-xs text-gray-400 shrink-0 tabular-nums"},vn={key:0,class:"text-green-500"},hn={key:1,class:"text-gray-300 mx-0.5"},yn={key:2,class:"text-red-500"},_n={key:0,class:"border-t border-default overflow-x-auto max-h-96"},kn=ee({__name:"ScmChangesView",props:{changes:{}},setup(a){const I=g(new Set);function m(C){const d=new Set(I.value);d.has(C)?d.delete(C):d.add(C),I.value=d}return(C,d)=>{const w=se,n=be;return t(),l("div",nn,[a.changes.commits.length>0?(t(),l("div",an,[s("p",on,o(a.changes.commits.length)+" commit"+o(a.changes.commits.length===1?"":"s"),1),s("div",ln,[(t(!0),l(B,null,Q(a.changes.commits,c=>(t(),l("div",{key:c.sha,class:"flex items-center gap-2 px-3 py-1.5"},[r(w,{name:"i-lucide-git-commit-horizontal",class:"size-3.5 text-gray-400 shrink-0"}),s("code",rn,o(c.sha.slice(0,7)),1),s("span",cn,o(c.message),1)]))),128))])])):u("",!0),s("div",un,[s("p",dn,[$(o(a.changes.files.length)+" file"+o(a.changes.files.length===1?"":"s")+" changed ",1),a.changes.patchesOmitted?(t(),l("span",mn," — diff too large, file names only ")):u("",!0)]),s("div",fn,[(t(!0),l(B,null,Q(a.changes.files,c=>(t(),l("div",{key:c.filename},[s("button",{class:Y(["w-full flex items-center gap-2 px-3 py-1.5 text-left hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors",c.patch?"cursor-pointer":"cursor-default"]),onClick:y=>c.patch&&m(c.filename)},[r(w,{name:("scmFileStatusMeta"in C?C.scmFileStatusMeta:e(ge))(c.status).icon,class:Y(["size-3.5 shrink-0",("scmFileStatusMeta"in C?C.scmFileStatusMeta:e(ge))(c.status).color])},null,8,["name","class"]),s("span",gn,o(c.filename),1),s("span",xn,[c.additions?(t(),l("span",vn,"+"+o(c.additions),1)):u("",!0),c.additions&&c.deletions?(t(),l("span",hn,"/")):u("",!0),c.deletions?(t(),l("span",yn,"-"+o(c.deletions),1)):u("",!0)]),c.patch?(t(),S(w,{key:0,name:e(I).has(c.filename)?"i-lucide-chevron-up":"i-lucide-chevron-down",class:"size-3.5 text-gray-400 shrink-0"},null,8,["name"])):u("",!0)],10,pn),c.patch&&e(I).has(c.filename)?(t(),l("div",_n,[r(n,{patch:c.patch},null,8,["patch"])])):u("",!0)]))),128))])])])}}}),bn=Object.assign(kn,{__name:"ScmChangesView"}),$n={class:"border border-default rounded-lg overflow-clip text-xs font-mono"},Cn={class:"sticky top-0 z-10 flex items-center justify-between px-3 py-1.5 bg-elevated border-b border-default text-gray-600 dark:text-gray-300"},wn={class:"font-medium truncate"},Sn={class:"shrink-0 flex items-center gap-1.5 ml-2 text-[11px]"},Tn={key:0,class:"text-green-600 dark:text-green-400"},jn={key:1,class:"text-red-600 dark:text-red-400"},In={key:1,class:"px-3 py-2 text-gray-400 text-[11px]"},Rn=ee({__name:"DiffFile",props:{file:{}},setup(a){return(I,m)=>{const C=ue,d=be;return t(),l("div",$n,[s("div",Cn,[s("span",wn,o(a.file.filename),1),s("span",Sn,[a.file.additions?(t(),l("span",Tn,"+"+o(a.file.additions),1)):u("",!0),a.file.deletions?(t(),l("span",jn,"-"+o(a.file.deletions),1)):u("",!0),r(C,{label:a.file.status,size:"xs",variant:"subtle",color:("scmFileStatusMeta"in I?I.scmFileStatusMeta:e(ge))(a.file.status).badgeColor},null,8,["label","color"])])]),a.file.patch?(t(),S(d,{key:0,patch:a.file.patch},null,8,["patch"])):(t(),l("div",In,"No patch available"))])}}}),zn=Object.assign(Rn,{__name:"DiffFile"}),Un={class:"inline-flex items-center gap-1"},Mn={class:"flex h-[72vh] overflow-hidden"},Vn={class:"w-72 shrink-0 border-r border-default flex flex-col"},An={class:"p-2 border-b border-default space-y-2 shrink-0"},En={class:"flex items-center gap-2 text-xs text-gray-500"},Ln={class:"ml-auto"},Nn={key:2,class:"flex-1 overflow-y-auto flex flex-col"},Fn={key:0,class:"py-6 text-center text-sm text-gray-400 flex-1"},Bn=["onClick"],Dn=["checked","onChange"],Pn={class:"flex-1 min-w-0"},On={class:"text-xs font-medium leading-snug truncate"},Hn={class:"text-[10px] text-gray-400 leading-snug mt-0.5 flex items-center gap-1 min-w-0"},qn={class:"text-primary shrink-0"},Kn={class:"truncate"},Gn={key:0,class:"shrink-0"},Wn={key:1,class:"p-2 shrink-0 space-y-1.5"},Jn={key:0,class:"flex items-center gap-1.5 text-xs text-red-500 px-1"},Qn={class:"flex-1 overflow-y-auto flex flex-col min-w-0"},Zn={key:0,class:"flex-1 flex items-center justify-center text-gray-400 text-sm"},Xn={key:2,class:"flex-1 p-4 space-y-3"},Yn={key:0,class:"space-y-0.5 pb-3 border-b border-default"},ea={class:"flex items-center gap-2"},ta={class:"text-xs font-mono text-primary"},sa={class:"text-xs text-gray-400"},na={class:"text-sm font-semibold"},aa={key:1,class:"text-sm text-gray-400 pt-2"},oa={key:4,class:"flex-1 flex items-center justify-center text-sm text-gray-400"},la={class:"flex items-center gap-3 w-full"},ra={class:"flex-1 flex items-center gap-2 text-sm text-gray-500 min-w-0"},ia={class:"font-medium text-gray-700 dark:text-gray-200 shrink-0"},ca={class:"shrink-0"},ua={class:"text-green-600 dark:text-green-400 shrink-0 font-medium"},da={class:"text-red-600 dark:text-red-400 shrink-0 font-medium"},ma={key:1,class:"text-gray-400 text-xs shrink-0"},fa={key:1},fe=50,pa=ee({__name:"CommitBrowserModal",props:{open:{type:Boolean},clusterId:{},initialSelected:{},autoSelectedShas:{}},emits:["update:open","confirm"],setup(a,{emit:I}){const m=a,C=D(()=>new Set(m.autoSelectedShas??[])),d=I,w=g(""),n=g([]),c=g(fe),y=g(!1),z=g(!1),A=g(!1),R=g(null),T=g(null),h=g(new Set),j=g(null),x=ut({}),E=g(null),N=g(!1),O=g(null),F=D(()=>n.value.find(k=>k.sha===j.value)??null),q=D(()=>Te(n.value,w.value)),M=D(()=>{let k=0,i=0,te=0,b=0;for(const V of h.value){if(!(V in x)){b++;continue}const H=x[V];H&&(k+=H.files.length,i+=H.files.reduce((G,W)=>G+W.additions,0),te+=H.files.reduce((G,W)=>G+W.deletions,0))}return{files:k,linesAdded:i,linesRemoved:te,unreviewed:b}});async function P(k){k?(z.value=!0,R.value=null):(A.value=!0,T.value=null);try{const i=await $fetch(`/api/failure-clusters/${m.clusterId}/commits`,{query:{limit:c.value}});n.value=i.items,y.value=i.hasMore??!1,i.error&&!i.items.length&&(k?R.value=i.error:T.value=i.error),k&&i.items[0]&&f(i.items[0].sha)}catch(i){k?R.value=de(i):T.value=de(i)}finally{z.value=!1,A.value=!1}}async function U(){c.value+=fe,await P(!1)}ae(()=>m.open,async k=>{if(k){if(h.value=new Set(m.initialSelected??[]),n.value.length){!j.value&&n.value[0]&&f(n.value[0].sha);return}c.value=fe,await P(!0)}});async function f(k){if(j.value!==k){if(j.value=k,O.value=null,k in x){E.value=x[k],N.value=!1;return}E.value=null,N.value=!0;try{const i=await $fetch(`/api/failure-clusters/${m.clusterId}/commit-diff`,{query:{sha:k}});x[k]=i,j.value===k&&(E.value=i)}catch(i){j.value===k&&(O.value=de(i))}finally{j.value===k&&(N.value=!1)}}}function _(k){const i=new Set(h.value);i.has(k)?i.delete(k):i.add(k),h.value=i}function L(){h.value=new Set(q.value.map(k=>k.sha))}function K(){h.value=new Set}function Z(){d("confirm",[...h.value]),d("update:open",!1)}return(k,i)=>{const te=xe,b=Ce,V=Ut,H=ce,G=Mt,W=ue,oe=se,X=zn,ne=je;return t(),S(ne,{open:a.open,title:"Browse commits",ui:{content:"max-w-6xl",body:"p-0 overflow-hidden"},"onUpdate:open":i[4]||(i[4]=v=>d("update:open",v))},{title:p(()=>[s("span",Un,[i[5]||(i[5]=$("Browse commits ",-1)),r(te,{topic:"cluster.commit-browser"})])]),body:p(()=>[s("div",Mn,[s("div",Vn,[s("div",An,[r(b,{modelValue:e(w),"onUpdate:modelValue":i[0]||(i[0]=v=>J(w)?w.value=v:null),placeholder:"Search commits…",size:"xs",icon:"i-lucide-search"},null,8,["modelValue"]),s("div",En,[s("button",{class:"hover:text-primary transition-colors",onClick:L},"All"),i[6]||(i[6]=s("span",null,"·",-1)),s("button",{class:"hover:text-primary transition-colors",onClick:K},"None"),s("span",Ln,o(e(h).size>0?`${e(h).size} selected`:"none selected"),1)])]),e(z)?(t(),S(V,{key:0,text:"Loading…",padded:!1,class:"flex-1"})):e(R)?(t(),S(G,{key:1,text:e(R),padded:!1,class:"flex-1 p-4"},{action:p(()=>[r(H,{size:"xs",color:"neutral",variant:"outline",onClick:i[1]||(i[1]=v=>P(!0))},{default:p(()=>[...i[7]||(i[7]=[$(" Retry ",-1)])]),_:1})]),_:1},8,["text"])):(t(),l("div",Nn,[e(q).length===0?(t(),l("div",Fn,o(e(w)?"No commits match":"No commits"),1)):u("",!0),(t(!0),l(B,null,Q(e(q),v=>(t(),l("button",{key:v.sha,class:Y(["w-full text-left px-2.5 py-2 flex items-start gap-2.5 hover:bg-elevated transition-colors border-b border-default/50 last:border-0 shrink-0",e(j)===v.sha?"bg-elevated":""]),onClick:le=>f(v.sha)},[s("input",{type:"checkbox",checked:e(h).has(v.sha),class:"mt-0.5 shrink-0 cursor-pointer accent-primary",onClick:i[2]||(i[2]=pe(()=>{},["stop"])),onChange:le=>_(v.sha)},null,40,Dn),s("div",Pn,[s("p",On,o(v.message||"(no message)"),1),s("p",Hn,[s("code",qn,o(v.shortSha),1),s("span",Kn,o(v.author),1),v.date?(t(),l("span",Gn,"· "+o(e(ie)(v.date)),1)):u("",!0),e(C).has(v.sha)?(t(),S(W,{key:1,size:"xs",color:"info",variant:"soft",class:"shrink-0"},{default:p(()=>[...i[8]||(i[8]=[$(" auto ",-1)])]),_:1})):u("",!0)])])],10,Bn))),128)),e(y)&&!e(w)?(t(),l("div",Wn,[e(T)?(t(),l("p",Jn,[r(oe,{name:"i-lucide-circle-alert",class:"size-3.5 shrink-0"}),$(" "+o(e(T)),1)])):u("",!0),r(H,{size:"xs",color:"neutral",variant:"outline",block:"",loading:e(A),onClick:U},{default:p(()=>[...i[9]||(i[9]=[$(" Load more ",-1)])]),_:1},8,["loading"])])):u("",!0)]))]),s("div",Qn,[e(j)?e(N)?(t(),S(V,{key:1,text:"Loading diff…",padded:!1,class:"flex-1"})):e(E)?(t(),l("div",Xn,[e(F)?(t(),l("div",Yn,[s("div",ea,[s("code",ta,o(e(F).shortSha),1),s("span",sa,[$(o(e(F).author),1),e(F).date?(t(),l(B,{key:0},[$(" · "+o(e(ie)(e(F).date)),1)],64)):u("",!0)])]),s("p",na,o(e(F).message),1)])):u("",!0),e(E).files.length===0?(t(),l("div",aa,"No file changes in this commit")):u("",!0),(t(!0),l(B,null,Q(e(E).files,v=>(t(),S(X,{key:v.filename,file:v},null,8,["file"]))),128))])):e(O)?(t(),S(G,{key:3,text:e(O),padded:!1,class:"flex-1 p-6"},{action:p(()=>[...i[10]||(i[10]=[s("p",{class:"text-xs text-gray-400"},"Click the commit again to retry",-1)])]),_:1},8,["text"])):(t(),l("div",oa," Diff not available for this commit ")):(t(),l("div",Zn," Select a commit to view its diff "))])])]),footer:p(()=>[s("div",la,[s("div",ra,[e(h).size>0?(t(),l(B,{key:0},[s("span",ia,o(e(h).size)+" commit"+o(e(h).size===1?"":"s"),1),e(M).files>0||e(M).linesAdded>0||e(M).linesRemoved>0?(t(),l(B,{key:0},[i[11]||(i[11]=s("span",{class:"text-gray-300 dark:text-gray-600"},"·",-1)),s("span",ca,o(e(M).files)+" file"+o(e(M).files===1?"":"s"),1),s("span",ua,"+"+o(e(M).linesAdded),1),s("span",da,"-"+o(e(M).linesRemoved),1)],64)):u("",!0),e(M).unreviewed>0?(t(),l("span",ma," ("+o(e(M).unreviewed)+" unreviewed) ",1)):u("",!0)],64)):(t(),l("span",fa,"No commits selected"))]),r(H,{color:"neutral",variant:"ghost",onClick:i[3]||(i[3]=v=>d("update:open",!1))},{default:p(()=>[...i[12]||(i[12]=[$(" Cancel ",-1)])]),_:1}),r(H,{color:"primary",disabled:e(h).size===0,onClick:Z},{default:p(()=>[...i[13]||(i[13]=[$(" Add to context ",-1)])]),_:1},8,["disabled"])])]),_:1},8,["open"])}}}),ga=Object.assign(pa,{__name:"CommitBrowserModal"});function Ie(a){return{scmStatus:D(()=>{const m=a.value?.scm;if(!m)return{color:"text-gray-400",icon:"i-lucide-git-branch",text:"Git context unavailable",detail:""};if(m.baseCommitUsed){if(m.filesCount===0)return{color:"text-yellow-500",icon:"i-lucide-git-branch-plus",text:`Manual baseline ${m.baseCommitUsed.slice(0,7)} · fetch failed`,detail:"network error or missing SCM token (check AI settings)"};const w=m.patchesOmitted?", no patches (diff too large)":m.patchesTruncated?`, ${m.patchedFilesCount} with patches (some cut)`:`, ${m.patchedFilesCount} with patches`;return{color:"text-blue-500",icon:"i-lucide-git-branch-plus",text:`Manual baseline ${m.baseCommitUsed.slice(0,7)} · ${m.filesCount} files${w}`,detail:m.hasLastGreen?"overrides last passing run baseline":"no last passing run"}}if(!m.hasLastGreen)return{color:"text-gray-400",icon:"i-lucide-git-branch",text:"No last passing run",detail:"enter a baseline commit below to enable diff"};if(!m.hasCommitRange)return{color:"text-gray-400",icon:"i-lucide-git-branch",text:"No commit range",detail:"reporter did not send SCM metadata"};if(!m.provider)return{color:"text-yellow-500",icon:"i-lucide-git-branch",text:"Unsupported SCM host",detail:"only GitHub, GitLab and Bitbucket are supported"};if(m.filesCount===0)return{color:"text-yellow-500",icon:"i-lucide-git-branch",text:`${m.provider} · fetch failed`,detail:"network error or missing SCM token (check AI settings)"};if(m.patchesOmitted)return{color:"text-yellow-500",icon:"i-lucide-git-branch",text:`${m.provider} · ${m.filesCount} files`,detail:"diff too large — file list only, no patches"};const C=m.patchesTruncated?", some patches cut (budget)":"",d=m.commitsCount>0?` · ${m.commitsCount} commit${m.commitsCount>1?"s":""}`:"";return{color:"text-green-500",icon:"i-lucide-git-branch",text:`${m.provider} · ${m.filesCount} files · ${m.patchedFilesCount} with patches${C}${d}`,detail:""}})}}const xa={class:"space-y-3"},va={class:"pb-2 border-b border-default"},ha={class:"flex items-center gap-2 flex-wrap"},ya={class:"text-xs text-gray-500 font-medium shrink-0 inline-flex items-center gap-1"},_a={class:"flex items-center gap-1.5 ml-auto"},ka={key:0,class:"flex items-center gap-1 px-2 py-0.5 rounded-full bg-primary/10 text-primary text-xs font-medium"},ba={key:0,class:"flex items-start gap-1.5 text-xs px-2 py-1.5 rounded-md bg-elevated border border-default"},$a={key:0,class:"text-gray-400 ml-1"},Ca={key:1,class:"flex items-center justify-center py-6"},wa={key:3,class:"text-xs text-gray-400 text-center py-4"},Sa=ee({__name:"ClusterInvestigation",setup(a){const{clusterId:I,baseCommit:m,selectedCommitShas:C,autoSelectedCommits:d,baseCommitIsPinned:w,coverage:n,scmChanges:c,contextLoading:y,refreshContext:z}=Vt(),A=g(!1),{scmStatus:R}=Ie(n);return(T,h)=>{const j=xe,x=sn,E=se,N=we,O=ce,F=bn,q=ga;return t(),l(B,null,[s("div",xa,[s("div",va,[s("div",ha,[s("span",ya,[h[5]||(h[5]=$(" Baseline ",-1)),r(j,{topic:"cluster.baseline"})]),r(x,{modelValue:e(m),"onUpdate:modelValue":h[0]||(h[0]=M=>J(m)?m.value=M:null),"cluster-id":e(I)},null,8,["modelValue","cluster-id"]),e(w)?(t(),S(N,{key:0,text:"Baseline commit pinned for this cluster"},{default:p(()=>[r(E,{name:"i-lucide-pin",class:"size-3.5 text-primary shrink-0"})]),_:1})):u("",!0),s("div",_a,[e(C).length?(t(),l("div",ka,[r(E,{name:"i-lucide-git-commit-horizontal",class:"size-3"}),s("span",null,o(e(C).length)+" commit"+o(e(C).length===1?"":"s"),1),s("button",{class:"ml-0.5 hover:opacity-70 transition-opacity",onClick:h[1]||(h[1]=M=>C.value=[])},[r(E,{name:"i-lucide-x",class:"size-3"})])])):u("",!0),r(O,{size:"xs",color:"neutral",variant:"ghost",icon:"i-lucide-list",onClick:h[2]||(h[2]=M=>A.value=!0)},{default:p(()=>[...h[6]||(h[6]=[$(" Browse ",-1)])]),_:1}),r(O,{icon:"i-lucide-refresh-cw",size:"xs",color:"neutral",variant:"outline",loading:e(y),onClick:e(z)},null,8,["loading","onClick"])])])]),e(n)?(t(),l("div",ba,[r(E,{name:e(R).icon,class:Y(["size-3.5 mt-0.5 shrink-0",e(R).color])},null,8,["name","class"]),s("div",null,[s("span",{class:Y(e(R).color)},o(e(R).text),3),e(R).detail?(t(),l("span",$a,"— "+o(e(R).detail),1)):u("",!0)])])):u("",!0),e(y)&&!e(c)?(t(),l("div",Ca,[r(E,{name:"i-lucide-loader-circle",class:"size-4 animate-spin text-gray-400"})])):e(c)?(t(),S(F,{key:2,changes:e(c)},null,8,["changes"])):e(n)&&!e(y)&&!e(c)?(t(),l("p",wa," No changes found in this range. ")):u("",!0)]),r(q,{open:e(A),"onUpdate:open":h[3]||(h[3]=M=>J(A)?A.value=M:null),"cluster-id":e(I),"initial-selected":e(C),"auto-selected-shas":e(d),onConfirm:h[4]||(h[4]=M=>C.value=M)},null,8,["open","cluster-id","initial-selected","auto-selected-shas"])],64)}}}),Ta=Object.assign(Sa,{__name:"ClusterInvestigation"}),ja={class:"flex flex-col h-[60vh]"},Ia={class:"flex items-center gap-3 px-4 py-2.5 border-b border-default text-sm shrink-0"},Ra={key:0,class:"ml-auto text-xs text-gray-500"},za={class:"flex-1 overflow-y-auto"},Ua={class:"w-full text-sm"},Ma=["onClick"],Va={class:"px-4 py-2.5"},Aa=["checked","onChange"],Ea={class:"px-2 py-2.5 min-w-0"},La={class:"truncate font-medium text-gray-800 dark:text-gray-200 max-w-[24rem]"},Na={class:"px-2 py-2.5 text-gray-500 text-xs max-w-[16rem] hidden sm:table-cell"},Fa={class:"px-2 py-2.5 text-right text-gray-500 text-xs"},Ba={key:0},Da={class:"shrink-0 border-t border-default px-4 py-3 space-y-1.5"},Pa={key:0,class:"shrink-0 px-4 pb-3 flex items-center gap-1.5 text-xs text-red-500"},Oa={class:"flex items-center gap-3 w-full"},Ha=ee({__name:"ClusterExtractCasesModal",props:{open:{type:Boolean},clusterId:{},affectedTestCases:{},projectKey:{},projectName:{}},emits:["update:open","extracted"],setup(a,{emit:I}){const m=a,C=I,d=dt(),w=g(new Set),n=g(""),c=g(!1),y=g(null);function z(){w.value=new Set(m.affectedTestCases.map(j=>j.testCaseId))}function A(){w.value=new Set}function R(j){const x=new Set(w.value);x.has(j)?x.delete(j):x.add(j),w.value=x}ae(()=>m.open,j=>{j&&(A(),n.value="",y.value=null)});const T=D(()=>w.value.size);async function h(){if(T.value!==0){c.value=!0,y.value=null;try{await $fetch(`/api/failure-clusters/${m.clusterId}/extract-cases`,{method:"POST",body:{testCaseIds:[...w.value],triageNote:n.value.trim()||void 0}}),d.add({title:`Extracted ${T.value} test ${T.value===1?"case":"cases"}`,color:"success"}),C("extracted"),C("update:open",!1)}catch(j){y.value=de(j)}finally{c.value=!1}}}return(j,x)=>{const E=$e,N=ve,O=Se,F=se,q=ce,M=je;return t(),S(M,{open:a.open,title:"Extract test cases",ui:{content:"max-w-4xl",body:"p-0 flex flex-col overflow-hidden"},"onUpdate:open":x[4]||(x[4]=P=>C("update:open",P))},{body:p(()=>[s("div",ja,[s("div",Ia,[s("button",{class:"text-xs font-medium text-primary hover:underline",onClick:z},"Select all"),x[5]||(x[5]=s("span",{class:"text-gray-300 dark:text-gray-600"},"·",-1)),s("button",{class:"text-xs font-medium text-primary hover:underline",onClick:A},"Deselect all"),e(T)>0?(t(),l("span",Ra,o(e(T))+" selected ",1)):u("",!0)]),s("div",za,[s("table",Ua,[x[8]||(x[8]=s("thead",{class:"sticky top-0 bg-gray-50 dark:bg-gray-800 border-b border-default"},[s("tr",null,[s("th",{class:"w-10 px-4 py-2.5"}),s("th",{class:"text-left px-2 py-2.5 font-medium text-gray-500 text-xs uppercase tracking-wide"},"Test"),s("th",{class:"text-left px-2 py-2.5 font-medium text-gray-500 text-xs uppercase tracking-wide hidden sm:table-cell"}," File "),s("th",{class:"text-right px-2 py-2.5 font-medium text-gray-500 text-xs uppercase tracking-wide w-20"}," Occurrences ")])],-1)),s("tbody",null,[(t(!0),l(B,null,Q(a.affectedTestCases,P=>(t(),l("tr",{key:P.testCaseId,class:"border-b border-default/50 hover:bg-elevated transition-colors cursor-pointer",onClick:U=>R(P.testCaseId)},[s("td",Va,[s("input",{type:"checkbox",checked:e(w).has(P.testCaseId),class:"shrink-0 cursor-pointer accent-primary",onClick:x[0]||(x[0]=pe(()=>{},["stop"])),onChange:U=>R(P.testCaseId)},null,40,Aa)]),s("td",Ea,[s("p",La,o(P.title),1),r(E,{to:`/test-cases/${P.testCaseId}`,class:"text-[10px] text-primary hover:underline mt-0.5 inline-block",onClick:x[1]||(x[1]=pe(()=>{},["stop"]))},{default:p(()=>[...x[6]||(x[6]=[$(" View details ",-1)])]),_:1},8,["to"])]),s("td",Na,[r(N,{"file-path":P.filePath,"project-key":a.projectKey,"project-name":a.projectName,class:"max-w-full"},null,8,["file-path","project-key","project-name"])]),s("td",Fa,o(P.runCount),1)],8,Ma))),128)),a.affectedTestCases.length===0?(t(),l("tr",Ba,[...x[7]||(x[7]=[s("td",{colspan:"4",class:"px-4 py-8 text-center text-gray-400 text-sm"},"No test cases in this cluster.",-1)])])):u("",!0)])])]),s("div",Da,[x[9]||(x[9]=s("label",{class:"text-xs font-medium text-gray-500 uppercase tracking-wide"},"Triage note (optional)",-1)),r(O,{modelValue:e(n),"onUpdate:modelValue":x[2]||(x[2]=P=>J(n)?n.value=P:null),placeholder:"Add a note explaining why these tests were extracted…",rows:2,class:"text-sm w-full"},null,8,["modelValue"])]),e(y)?(t(),l("p",Pa,[r(F,{name:"i-lucide-circle-alert",class:"size-3.5 shrink-0"}),$(" "+o(e(y)),1)])):u("",!0)])]),footer:p(()=>[s("div",Oa,[x[11]||(x[11]=s("div",{class:"flex-1"},null,-1)),r(q,{color:"neutral",variant:"ghost",disabled:e(c),onClick:x[3]||(x[3]=P=>C("update:open",!1))},{default:p(()=>[...x[10]||(x[10]=[$(" Cancel ",-1)])]),_:1},8,["disabled"]),r(q,{color:"warning",disabled:e(T)===0,loading:e(c),onClick:h},{default:p(()=>[$(" Extract"+o(e(T)>0?` ${e(T)}`:""),1)]),_:1},8,["disabled","loading"])])]),_:1},8,["open"])}}}),qa=Object.assign(Ha,{__name:"ClusterExtractCasesModal"}),Ka={key:0,class:"flex flex-col h-full min-h-0 max-xl:overflow-y-auto xl:overflow-hidden"},Ga={class:"border-b border-default shrink-0"},Wa={class:"grid grid-cols-1 xl:grid-cols-[3fr_2fr] gap-4 p-1 xl:flex-1 xl:min-h-0 xl:overflow-hidden"},Ja={class:"space-y-4 xl:overflow-y-auto"},Qa={class:"font-mono text-xs"},Za=["innerHTML"],Xa={class:"inline-flex items-center gap-1.5"},Ya={class:"xl:overflow-y-auto"},eo={key:1,class:"flex items-center justify-center h-64 text-gray-500"},Go=ee({__name:"[id]",async setup(a){let I,m;const C=mt(),d=parseInt(String(C.params.id)),w=At(d),{data:n,refresh:c}=([I,m]=ft(()=>Ft(`/api/failure-clusters/${d}`,"$Io0yQjh0TH")),I=await I,m(),I);pt(D(()=>({title:`${n.value?.signature??"Failure cluster"} — Piwi Dashboard`})));const y=g(n.value?.status??"open"),z=g(n.value?.triageNote??""),A=g(!1);ae(()=>n.value?.status,b=>{b&&(y.value=b)}),ae(()=>n.value?.triageNote,b=>{z.value=b??""});const R=D(()=>y.value!==(n.value?.status??"open")||z.value.trim()!==(n.value?.triageNote??""));async function T(){A.value=!0;try{await $fetch(`/api/failure-clusters/${d}/status`,{method:"PATCH",body:{status:y.value,triageNote:z.value.trim()||null}}),c()}finally{A.value=!1}}const h=g(!1);function j(){h.value=!1,c()}const{copyRich:x,copied:E}=Ze();function N(){const b=n.value;if(!b)return;const V=window.location.href,H=ne=>ne.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),G=[b.errorType,`${b.occurrences} occurrence${b.occurrences===1?"":"s"}`,`${b.affectedTests} test${b.affectedTests===1?"":"s"} affected`,b.status!=="open"?b.status:null].filter(Boolean).join(" · "),W=b.diagnosis?.status==="completed"&&b.diagnosis.summary?`AI diagnosis (${b.diagnosis.category??"unknown"}, ${b.diagnosis.confidence??"?"} confidence): ${b.diagnosis.summary}`:null,oe=[`❌ Failure cluster: ${b.signature}`,G,"",...b.sampleError?["Sample error:",he(b.sampleError),""]:[],...W?[W,""]:[],`Cluster: ${V}`].join(`
|
|
3
3
|
`),X=[`<p><strong>❌ Failure cluster</strong>: <code>${H(b.signature)}</code></p>`,`<p><em>${H(G)}</em></p>`,b.sampleError?`<p><strong>Sample error:</strong></p><pre>${_e(b.sampleError)}</pre>`:"",W?`<p><strong>AI diagnosis</strong> (${H(b.diagnosis?.category??"unknown")}, ${H(b.diagnosis?.confidence??"?")} confidence):<br>${H(b.diagnosis.summary)}</p>`:"",`<p>🔗 <a href="${V}">View failure cluster</a></p>`].join("");x(oe,X,{toast:"Failure cluster copied"})}const O=D(()=>{const b=n.value?.sampleError;return b?he(b).split(`
|
|
4
4
|
`).find(V=>V.trim())??"":""}),{scmStatus:F}=Ie(w.coverage),q=D(()=>(n.value?.affectedTestCases??[]).map(b=>({filePath:b.filePath,title:b.title,line:null,projectName:null}))),M=D(()=>Lt(q.value)),{copy:P,copied:U}=Nt(),f=g(null),_=g(null),L=g(null),K=g(null),Z=g(null),k=g(null),i={sampleError:()=>f.value,executionError:()=>f.value,environmentDiff:()=>K.value,visualDiff:()=>Z.value,domSnapshot:()=>k.value,scmInvestigation:()=>L.value,selectedCommits:()=>L.value,topSuspectedCommit:()=>L.value,failingAction:()=>L.value,affectedTests:()=>_.value,testSource:()=>_.value,sourceFiles:()=>_.value,steps:()=>_.value,failingSteps:()=>_.value,console:()=>_.value,networkRequests:()=>_.value,serverTraces:()=>_.value,ariaSnapshot:()=>_.value,screenshots:()=>_.value,tracePointers:()=>_.value,artifacts:()=>_.value};gt(Ct,{canLocate:b=>b in i,open:b=>i[b]?.()?.reveal()});const te=D(()=>[{label:"Home",icon:"i-lucide-house",to:"/"},{label:"Projects",to:"/projects"},...n.value?.project?[{label:n.value.project.label||n.value.project.name||"Project",to:`/projects/${n.value.project.id}?tab=failure-clusters`}]:[{label:"Project"}],{label:`Failure cluster #${d}`}]);return(b,V)=>{const H=Oe,G=He,W=nt,oe=at,X=ce,ne=we,v=vt,le=us,me=Xe,Re=Ye,ze=et,Ue=tt,Me=st,Ve=ve,Ae=ue,Ee=It,Le=zs,Ne=se,Fe=Ta,Be=Et,De=xt,Pe=qa;return t(),l(B,null,[r(De,{id:"failure-cluster-detail"},{header:p(()=>[r(v,null,{leading:p(()=>[r(H),r(G,{items:e(te)},null,8,["items"])]),right:p(()=>[e(n)?(t(),S(W,{key:0,endpoint:`/api/failure-clusters/${e(n).id}/share-links`},null,8,["endpoint"])):u("",!0),e(n)?(t(),S(oe,{key:1,endpoint:`/api/failure-clusters/${e(n).id}/export`,"base-name":`piwi-cluster-${e(n).id}`},null,8,["endpoint","base-name"])):u("",!0),e(n)?(t(),S(ne,{key:2,text:e(E)?"Copied!":"Copy failure cluster"},{default:p(()=>[r(X,{size:"sm",variant:"ghost",color:"neutral",icon:e(E)?"i-lucide-check":"i-lucide-clipboard",onClick:N},null,8,["icon"])]),_:1},8,["text"])):u("",!0)]),_:1})]),body:p(()=>[e(n)?(t(),l("div",Ka,[s("div",Ga,[r(le,{cluster:e(n),"triage-status":e(y),"triage-note":e(z),"triage-saving":e(A),"triage-changed":e(R),"onUpdate:triageStatus":V[0]||(V[0]=re=>y.value=re),"onUpdate:triageNote":V[1]||(V[1]=re=>z.value=re),onSaveTriage:T},null,8,["cluster","triage-status","triage-note","triage-saving","triage-changed"])]),s("div",Wa,[s("div",Ja,[e(n).sampleError?(t(),S(me,{key:0,ref_key:"errorSection",ref:f,"storage-key":"cluster-error",icon:"i-lucide-circle-x","icon-class":"text-red-500",title:"Error message"},{folded:p(()=>[s("span",Qa,o(e(O)),1)]),default:p(()=>[s("div",{class:"text-xs font-mono overflow-x-auto whitespace-pre-wrap",innerHTML:e(_e)(e(n).sampleError)},null,8,Za)]),_:1},512)):u("",!0),e(n).affectedTestCases?.length&&e(n).affectedTestCases[0]?.recentTestRunsCaseId?(t(),S(Re,{key:1,ref:"locatorSection","storage-key":"cluster-locators","run-id":e(n).lastSeenRunId,"test-runs-case-id":e(n).affectedTestCases[0].recentTestRunsCaseId,"affected-count":e(n).affectedTestCases.length},null,8,["run-id","test-runs-case-id","affected-count"])):u("",!0),e(n).affectedTestCases?.length&&e(n).affectedTestCases[0]?.recentTestRunsCaseId?(t(),S(ze,{key:2,ref_key:"envDiffSection",ref:K,"storage-key":"cluster-env-diff","run-id":e(n).lastSeenRunId,"test-runs-case-id":e(n).affectedTestCases[0].recentTestRunsCaseId},null,8,["run-id","test-runs-case-id"])):u("",!0),e(n).affectedTestCases?.length&&e(n).affectedTestCases[0]?.recentTestRunsCaseId?(t(),S(Ue,{key:3,ref_key:"visualDiffSection",ref:Z,"storage-key":"cluster-visual-diff","run-id":e(n).lastSeenRunId,"test-runs-case-id":e(n).affectedTestCases[0].recentTestRunsCaseId},null,8,["run-id","test-runs-case-id"])):u("",!0),e(n).affectedTestCases?.length&&e(n).affectedTestCases[0]?.recentTestRunsCaseId?(t(),S(Me,{key:4,ref_key:"domSnapshotSection",ref:k,"storage-key":"cluster-dom-snapshot","run-id":e(n).lastSeenRunId,"test-runs-case-id":e(n).affectedTestCases[0].recentTestRunsCaseId},null,8,["run-id","test-runs-case-id"])):u("",!0),e(n).affectedTestCases?.length?(t(),S(me,{key:5,ref_key:"evidenceSection",ref:_,"storage-key":"cluster-evidence",icon:"i-lucide-flask-conical",title:"Test evidence",help:"cluster.evidence"},{folded:p(()=>[$(o(e(n).affectedTests)+" "+o(e(n).affectedTests===1?"test":"tests")+" · "+o(e(n).occurrences)+" occurrence"+o(e(n).occurrences===1?"":"s")+" · ",1),e(n).affectedTestCases[0]?.filePath?(t(),S(Ve,{key:0,"file-path":e(n).affectedTestCases[0].filePath,"project-key":e(n).project?.id,"project-name":e(n).project?.name,class:"text-xs"},null,8,["file-path","project-key","project-name"])):u("",!0)]),actions:p(()=>[r(Ae,{color:"neutral",variant:"subtle",size:"sm"},{default:p(()=>[$(o(e(n).affectedTestCases.length)+" "+o(e(n).affectedTestCases.length===1?"test":"tests"),1)]),_:1}),r(X,{size:"xs",variant:"outline",color:"neutral",icon:e(U)?"i-lucide-check":"i-lucide-play",title:e(U)?"Copied!":("copyPreview"in b?b.copyPreview:e(jt))(e(M)),onClick:V[2]||(V[2]=re=>e(P)(e(M),{toast:"Retry command copied"}))},{default:p(()=>[...V[5]||(V[5]=[$(" Copy retry command ",-1)])]),_:1},8,["icon","title"]),r(Ee,{"project-id":e(n).project?.id,"project-label":e(n).project?.name,cases:e(q),label:"Run affected locally","preset-options":{mode:"grep"}},null,8,["project-id","project-label","cases"]),r(ne,{text:"Unlink incorrectly clustered test cases from this group"},{default:p(()=>[r(X,{size:"xs",color:"warning",variant:"outline",icon:"i-lucide-arrow-up-from-line",onClick:V[3]||(V[3]=re=>h.value=!0)},{default:p(()=>[...V[6]||(V[6]=[$(" Extract ",-1)])]),_:1})]),_:1})]),default:p(()=>[r(Le,{"affected-test-cases":e(n).affectedTestCases,"project-key":e(n).project?.id,"project-name":e(n).project?.name},null,8,["affected-test-cases","project-key","project-name"])]),_:1},512)):u("",!0),r(me,{ref_key:"scmSection",ref:L,"storage-key":"cluster-scm",icon:"i-lucide-git-compare-arrows",title:"What changed",help:"cluster.scm"},{folded:p(()=>[s("span",Xa,[r(Ne,{name:e(F).icon,class:Y(["size-3.5 shrink-0",e(F).color])},null,8,["name","class"]),s("span",{class:Y(e(F).color)},o(e(F).text),3)])]),default:p(()=>[r(Fe)]),_:1},512)]),s("div",Ya,[r(Be,{"cluster-id":e(d),"last-seen-run-id":e(n)?.lastSeenRunId,"affected-test-cases":e(n)?.affectedTestCases??[]},null,8,["cluster-id","last-seen-run-id","affected-test-cases"])])])])):(t(),l("div",eo,"Cluster not found."))]),_:1}),e(n)?(t(),S(Pe,{key:0,open:e(h),"cluster-id":e(d),"affected-test-cases":e(n).affectedTestCases??[],"project-key":e(n).project?.id,"project-name":e(n).project?.name,"onUpdate:open":V[4]||(V[4]=re=>h.value=re),onExtracted:j},null,8,["open","cluster-id","affected-test-cases","project-key","project-name"])):u("",!0)],64)}}});export{Go as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as k}from"./
|
|
1
|
+
import{_ as k}from"./B-1zt4pp.js";import{d as _,e as r,f as l,b,o as n,c as a,t as u,k as v,F as g,z as V,v as f,g as y,l as h,ac as x,U as p}from"./1QWBzxLM.js";import{_ as B}from"./B82vqOZe.js";import{_ as $}from"./B2bxEmbR.js";import{_ as E}from"./B4lvHjBe.js";import{h as M}from"./CHz7LJIX.js";const F={key:0},S={key:1},q={class:"font-mono text-xs"},A={key:0},C={key:2},N=_({__name:"EnvManagedAlert",props:{envVars:{},title:{},description:{}},setup(e){const t=e,c=f(()=>t.title??"Managed by environment variables");return(o,s)=>{const d=k;return n(),r(d,{icon:"i-lucide-lock",color:"neutral",variant:"subtle",title:b(c)},{description:l(()=>[e.description?(n(),a("span",F,u(e.description),1)):e.envVars?.length?(n(),a("span",S,[s[0]||(s[0]=v(" These settings are pinned by ",-1)),(n(!0),a(g,null,V(e.envVars,(i,m)=>(n(),a(g,{key:i},[y("code",q,u(i),1),m<e.envVars.length-1?(n(),a("span",A,", ")):h("",!0)],64))),128)),s[1]||(s[1]=v(" and cannot be changed here. Edit the environment and restart to change them. ",-1))])):(n(),a("span",C," These settings are pinned by environment variables and cannot be changed here. "))]),_:1},8,["title"])}}}),L=Object.assign(N,{__name:"EnvManagedAlert"}),T={class:"inline-flex items-center gap-1"},U=_({__name:"SettingsField",props:{label:{},help:{},envVars:{},envManaged:{type:Boolean},description:{},hint:{},required:{type:Boolean},name:{},disabled:{type:Boolean}},setup(e){const t=e,c=f(()=>{if(t.envVars)return t.envVars;if(t.help)return M(t.help)});return(o,s)=>{const d=B,i=$,m=E;return n(),r(m,{label:e.label,description:e.description,hint:e.hint,required:e.required,name:e.name,disabled:e.disabled||e.envManaged},x({label:l(()=>[y("span",T,[v(u(e.label)+" ",1),e.help?(n(),r(d,{key:0,topic:e.help},null,8,["topic"])):h("",!0),e.envManaged?(n(),r(i,{key:1,"env-vars":b(c)},null,8,["env-vars"])):h("",!0)])]),default:l(()=>[p(o.$slots,"default")]),_:2},[o.$slots.trailing?{name:"trailing",fn:l(()=>[p(o.$slots,"trailing")]),key:"0"}:void 0]),1032,["label","description","hint","required","name","disabled"])}}}),G=Object.assign(U,{__name:"SettingsField"});export{L as _,G as a};
|