@vostride/agent-qa-dashboard-ui 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/dist/assets/{arrow-up-down-CKc1J6oh.js → arrow-up-down-CkXEPOSU.js} +1 -1
  2. package/dist/assets/{badge-B-yh3kbi.js → badge-MmnLIMMu.js} +1 -1
  3. package/dist/assets/batch-action-bar-Bg_1IyjJ.js +4 -0
  4. package/dist/assets/check-B2JBwjSe.js +1 -0
  5. package/dist/assets/circle-Xrl9blhh.js +1 -0
  6. package/dist/assets/{circle-dashed-WDoZ8ADk.js → circle-dashed-D2UVSTYi.js} +1 -1
  7. package/dist/assets/circle-slash-iyfIklmt.js +1 -0
  8. package/dist/assets/{circle-x-1lf_9y_c.js → circle-x-CTm-Znd9.js} +1 -1
  9. package/dist/assets/config-yByyzBwq.js +3 -0
  10. package/dist/assets/{cssMode-CIWhUqfG.js → cssMode-BBQdjXbL.js} +1 -1
  11. package/dist/assets/{display-step-opeACkeD.js → display-step-Cgs30Ul7.js} +1 -1
  12. package/dist/assets/{dist-Cy8QoEce.js → dist-DTBPY93S.js} +1 -1
  13. package/dist/assets/{empty-state-2mwYYmoQ.js → empty-state-D-rPbKI6.js} +1 -1
  14. package/dist/assets/{file-code-BTJCyvvJ.js → file-code-DJGTlQdo.js} +1 -1
  15. package/dist/assets/filename-validation-DBEhHOy2.js +1 -0
  16. package/dist/assets/{freemarker2-BiVXttLB.js → freemarker2-DrFcSVs8.js} +1 -1
  17. package/dist/assets/{grip-vertical-B87oMfre.js → grip-vertical-mXei0XVt.js} +1 -1
  18. package/dist/assets/{handlebars-C_rmhix8.js → handlebars-SaK5Z7lY.js} +1 -1
  19. package/dist/assets/hook-editor-B9JLXhOJ.js +1 -0
  20. package/dist/assets/{hook-runtime-8xwsNog-.js → hook-runtime-CdKy24OK.js} +1 -1
  21. package/dist/assets/hook-viewer-DRWIRku4.js +1 -0
  22. package/dist/assets/{hooks-BIXR5djX.js → hooks-DZxZ7qbD.js} +1 -1
  23. package/dist/assets/{html-v4GGDD2l.js → html-DUrLTy3t.js} +1 -1
  24. package/dist/assets/{htmlMode-DsnRJeF2.js → htmlMode-CpegtGCG.js} +1 -1
  25. package/dist/assets/{id-badge-CIbcJUv0.js → id-badge-NMDEQDag.js} +3 -3
  26. package/dist/assets/index-0ktcxgei.js +116 -0
  27. package/dist/assets/index-HFKr1ctG.css +2 -0
  28. package/dist/assets/{insights-CfqFVe4T.js → insights-B0435q79.js} +1 -1
  29. package/dist/assets/{insights-line-grid-EcYgqiLS.js → insights-line-grid-CtoahJE7.js} +6 -6
  30. package/dist/assets/{javascript-B12FD1Gz.js → javascript-C-l8zO8e.js} +1 -1
  31. package/dist/assets/{jsonMode-C_mhVvGR.js → jsonMode-Beeoi3Xk.js} +1 -1
  32. package/dist/assets/knowledge-view-CD1TFSLc.js +1 -0
  33. package/dist/assets/{label-CYpyu7PJ.js → label-D_Jf6y0L.js} +1 -1
  34. package/dist/assets/{liquid-l2oB7oKx.js → liquid-bJdsKvv8.js} +1 -1
  35. package/dist/assets/live-run-CyJ-cAet.js +1 -0
  36. package/dist/assets/live-step-row-CrstaK1U.js +1 -0
  37. package/dist/assets/{lspLanguageFeatures-By4f0cSm.js → lspLanguageFeatures-Cn6BXYdZ.js} +1 -1
  38. package/dist/assets/{mdx-Cyix08OW.js → mdx-LnT6x9vm.js} +1 -1
  39. package/dist/assets/{monaco-editor-BQB4vEk_.js → monaco-editor-B6mFBq9L.js} +2 -2
  40. package/dist/assets/{monaco-editor-inner-DBI8AgAJ.js → monaco-editor-inner-8PnIDLQz.js} +4 -4
  41. package/dist/assets/{monaco.contribution-C7Dknl5j.js → monaco.contribution-BBzv4yE3.js} +2 -2
  42. package/dist/assets/plus-Dat6AM-D.js +1 -0
  43. package/dist/assets/popover-DrbdiGRd.js +1 -0
  44. package/dist/assets/{python-cdSYU9zt.js → python-DPgrly9F.js} +1 -1
  45. package/dist/assets/radio-group-D7bWnAJ7.js +1 -0
  46. package/dist/assets/{razor-BWMXhgx8.js → razor-DjDnQwdx.js} +1 -1
  47. package/dist/assets/{refresh-cw-BQdOC6UA.js → refresh-cw-DpNAPQYT.js} +1 -1
  48. package/dist/assets/{resizable-om0nWp3k.js → resizable-BDrAG61s.js} +1 -1
  49. package/dist/assets/run-detail-CQ6Y6dQj.js +1 -0
  50. package/dist/assets/run-status-badge-L4mzeuUy.js +1 -0
  51. package/dist/assets/{run-stream-reducer-BXMulZq1.js → run-stream-reducer-BSkFyxB_.js} +1 -1
  52. package/dist/assets/runs-DBLAcB4A.js +1 -0
  53. package/dist/assets/scroll-area-C34fPAjC.js +1 -0
  54. package/dist/assets/select-B9PD0Kau.js +1 -0
  55. package/dist/assets/{shortcut-hints-_J-i7rAL.js → shortcut-hints-eZAIE8bW.js} +1 -1
  56. package/dist/assets/split-button-DdscN9va.js +1 -0
  57. package/dist/assets/suite-editor-YpS3BwjZ.js +5 -0
  58. package/dist/assets/suite-navbar-CFZjqNjD.js +1 -0
  59. package/dist/assets/suite-viewer-Bsz6Epuw.js +1 -0
  60. package/dist/assets/suites-BglVjv_G.js +1 -0
  61. package/dist/assets/switch-xSMwKr9Z.js +1 -0
  62. package/dist/assets/tab-console-BF977T6r.js +1 -0
  63. package/dist/assets/table-C-9N3ArO.js +1 -0
  64. package/dist/assets/{tabs-CsAJVEvt.js → tabs-BKL0XmCI.js} +1 -1
  65. package/dist/assets/test-editor-C6XNOFkP.js +9 -0
  66. package/dist/assets/test-navbar-qJSqUdYb.js +7 -0
  67. package/dist/assets/test-viewer-Bh0p09uO.js +1 -0
  68. package/dist/assets/tests-DgBSme3j.js +1 -0
  69. package/dist/assets/tests-suites-table-widths-BrDJsNpi.js +1 -0
  70. package/dist/assets/{textarea-BP7XqG3v.js → textarea-DK29qckP.js} +1 -1
  71. package/dist/assets/{trash-2-87f7wzeR.js → trash-2-2JD8nWR7.js} +1 -1
  72. package/dist/assets/{tsMode-CqMhxF8i.js → tsMode-Cajyh71r.js} +1 -1
  73. package/dist/assets/{typescript-DOy-nOZu.js → typescript-_xcF03po.js} +1 -1
  74. package/dist/assets/use-clipboard-copy-BlWDP3HN.js +1 -0
  75. package/dist/assets/{use-hook-run-session-DnSkzl1A.js → use-hook-run-session-CMEz70il.js} +1 -1
  76. package/dist/assets/{use-keyboard-shortcuts-befVnBO6.js → use-keyboard-shortcuts-Bz9HvJxb.js} +1 -1
  77. package/dist/assets/{use-page-title-fn79XYtf.js → use-page-title-qvGn8USj.js} +1 -1
  78. package/dist/assets/{use-run-status-favicon-vVlATUoT.js → use-run-status-favicon-Bt0tLQkk.js} +1 -1
  79. package/dist/assets/use-selection-queue-DE4YxhK4.js +1 -0
  80. package/dist/assets/{workers-By3SZV-o.js → workers-e5BAAjmc.js} +1 -1
  81. package/dist/assets/{wrench-y-wKZ-0A.js → wrench-Cgh_pk3j.js} +1 -1
  82. package/dist/assets/{xml-BEMkcljk.js → xml-DI6VDnOP.js} +1 -1
  83. package/dist/assets/{yaml-CfPYAxWJ.js → yaml-BzXIuQuW.js} +1 -1
  84. package/dist/assets/{zap-DKRM77fm.js → zap-B27P6HHM.js} +1 -1
  85. package/dist/index.html +2 -2
  86. package/package.json +4 -4
  87. package/dist/assets/batch-action-bar-MMUxALHz.js +0 -4
  88. package/dist/assets/check-DH5_3cK-.js +0 -1
  89. package/dist/assets/checkbox-B5x0V2a2.js +0 -1
  90. package/dist/assets/circle-DjggEctd.js +0 -1
  91. package/dist/assets/circle-slash-Baq9Dw6f.js +0 -1
  92. package/dist/assets/config-CnN4bOco.js +0 -3
  93. package/dist/assets/filename-validation-I94bcMf7.js +0 -1
  94. package/dist/assets/globe-B0WEPp3h.js +0 -1
  95. package/dist/assets/hook-editor-DetIWjh8.js +0 -1
  96. package/dist/assets/hook-viewer-C_nzb-qD.js +0 -1
  97. package/dist/assets/index-0GfHLQ0v.css +0 -2
  98. package/dist/assets/index-CXuVkD6-.js +0 -116
  99. package/dist/assets/knowledge-view-BHNh7MwX.js +0 -1
  100. package/dist/assets/live-run-DOfPiVKU.js +0 -1
  101. package/dist/assets/live-step-row-BtLYYCKS.js +0 -1
  102. package/dist/assets/plus-DNc2RueT.js +0 -1
  103. package/dist/assets/popover-DThBIgGA.js +0 -1
  104. package/dist/assets/radio-group-DDMpRS3x.js +0 -1
  105. package/dist/assets/run-detail-C9oixuvH.js +0 -1
  106. package/dist/assets/run-status-badge-DRzXddrc.js +0 -1
  107. package/dist/assets/runs-BDKh94Pq.js +0 -1
  108. package/dist/assets/scroll-area-WFIgUp-0.js +0 -1
  109. package/dist/assets/select-JI5Kadjp.js +0 -1
  110. package/dist/assets/split-button-BHdketN3.js +0 -1
  111. package/dist/assets/suite-editor-Ce16nUF9.js +0 -5
  112. package/dist/assets/suite-navbar-D8RcUReD.js +0 -1
  113. package/dist/assets/suite-viewer-Bc78bHVL.js +0 -1
  114. package/dist/assets/suites-D2VXpj7W.js +0 -1
  115. package/dist/assets/switch-BgfA6DyL.js +0 -1
  116. package/dist/assets/tab-console-CpnOoTyg.js +0 -1
  117. package/dist/assets/table-e38rtLis.js +0 -1
  118. package/dist/assets/test-editor-vZsQDd2R.js +0 -9
  119. package/dist/assets/test-navbar-BfzeL-K8.js +0 -7
  120. package/dist/assets/test-viewer-Cek_cnB3.js +0 -1
  121. package/dist/assets/tests-CzPu8CPe.js +0 -1
  122. package/dist/assets/tests-suites-table-widths-nMJHxqRN.js +0 -1
  123. package/dist/assets/use-clipboard-copy-Bmyv0FFY.js +0 -1
  124. package/dist/assets/use-selection-queue-BAssrkmC.js +0 -1
  125. /package/dist/assets/{abap-CpHUwCVK.js → abap-CK68cr9-.js} +0 -0
  126. /package/dist/assets/{apex-DlD7oJX6.js → apex-BHHyAVNb.js} +0 -0
  127. /package/dist/assets/{azcli-CmXFAbc-.js → azcli-C56lfIEP.js} +0 -0
  128. /package/dist/assets/{bat-DdNJq4hH.js → bat-BLamSaf-.js} +0 -0
  129. /package/dist/assets/{bicep-Bppz7WOA.js → bicep-lrOcEItS.js} +0 -0
  130. /package/dist/assets/{cameligo-0MRMdSmg.js → cameligo-BK_p0bgU.js} +0 -0
  131. /package/dist/assets/{clojure-B5dKj863.js → clojure-BQ7JOykv.js} +0 -0
  132. /package/dist/assets/{coffee-DSbWjzk7.js → coffee-BD3DiL5s.js} +0 -0
  133. /package/dist/assets/{cpp-SBF8SAh9.js → cpp-splnCwCh.js} +0 -0
  134. /package/dist/assets/{csharp-Lzuq_1t-.js → csharp-BCpsl-o3.js} +0 -0
  135. /package/dist/assets/{csp-BEzxZqi1.js → csp-tkCWrZmb.js} +0 -0
  136. /package/dist/assets/{css-C3D3PKln.js → css-B_xdnReq.js} +0 -0
  137. /package/dist/assets/{cypher-CQ3dEPmv.js → cypher-OL1zq-y3.js} +0 -0
  138. /package/dist/assets/{dart-DCPmxolI.js → dart-CtTlOkrm.js} +0 -0
  139. /package/dist/assets/{dockerfile-B_2_aaTO.js → dockerfile-DcQ5CNiW.js} +0 -0
  140. /package/dist/assets/{ecl-rADUeXsV.js → ecl-DZpiDRt6.js} +0 -0
  141. /package/dist/assets/{editor.api2-DXR_ThFM.js → editor.api2-S_Xxx4WR.js} +0 -0
  142. /package/dist/assets/{elixir-DOd-TuJO.js → elixir-Dzj2lqtK.js} +0 -0
  143. /package/dist/assets/{flow9-Bf7zg_j0.js → flow9-CFENCHIZ.js} +0 -0
  144. /package/dist/assets/{format-BpI4TiHn.js → format-Y_Dbfary.js} +0 -0
  145. /package/dist/assets/{fsharp-BqROZjbA.js → fsharp-D-4bv7FB.js} +0 -0
  146. /package/dist/assets/{go-oQTP5uLe.js → go-djxbTJq7.js} +0 -0
  147. /package/dist/assets/{graphql-CSHfTU3q.js → graphql-DHIFrkZ6.js} +0 -0
  148. /package/dist/assets/{hcl-CeG-RoFJ.js → hcl-CXVoowNb.js} +0 -0
  149. /package/dist/assets/{ini-B2Dv4ohc.js → ini-Crzc5kly.js} +0 -0
  150. /package/dist/assets/{java-aUDDeufb.js → java-CYLaJrdE.js} +0 -0
  151. /package/dist/assets/{julia-C5LbruO5.js → julia-BJ7tUU-T.js} +0 -0
  152. /package/dist/assets/{kotlin-C6mOuSKk.js → kotlin-CeWcU3lC.js} +0 -0
  153. /package/dist/assets/{less-D5qC3caW.js → less-CviwWNG4.js} +0 -0
  154. /package/dist/assets/{lexon-Dr2La-fj.js → lexon-Dt28jqDS.js} +0 -0
  155. /package/dist/assets/{lua-Zy6u5z6Z.js → lua-B6AOaJSi.js} +0 -0
  156. /package/dist/assets/{m3-C7XHeDz_.js → m3-VnMkHJcy.js} +0 -0
  157. /package/dist/assets/{markdown-PiF7r-2h.js → markdown-8vKNdvIM.js} +0 -0
  158. /package/dist/assets/{mips-nn07GiyE.js → mips-DoEcuzan.js} +0 -0
  159. /package/dist/assets/{msdax-DaKFVMST.js → msdax-CNzvHyEp.js} +0 -0
  160. /package/dist/assets/{mysql-C6d6xrbU.js → mysql-Buk3vUtL.js} +0 -0
  161. /package/dist/assets/{numeric-input-DcozBggQ.js → numeric-input-BfrTvhxN.js} +0 -0
  162. /package/dist/assets/{objective-c-B6KMtI-k.js → objective-c-DfOmda-5.js} +0 -0
  163. /package/dist/assets/{pascal-DYr8MPE7.js → pascal-DoAA2yjy.js} +0 -0
  164. /package/dist/assets/{pascaligo-B3pd-jJ_.js → pascaligo-C65Vn1fu.js} +0 -0
  165. /package/dist/assets/{perl-z2xUzoaL.js → perl-INlfQ_ro.js} +0 -0
  166. /package/dist/assets/{pgsql-DUvT-09-.js → pgsql-DtwRzglx.js} +0 -0
  167. /package/dist/assets/{php-CGyOmJfy.js → php-DfHqVNet.js} +0 -0
  168. /package/dist/assets/{pla-CMqgvyD0.js → pla-D3dNVRYk.js} +0 -0
  169. /package/dist/assets/{postiats-Dx5LUn4Z.js → postiats-UKXD1rM4.js} +0 -0
  170. /package/dist/assets/{powerquery-DazYxvJ6.js → powerquery-zE3E3O7s.js} +0 -0
  171. /package/dist/assets/{powershell-B3nwlDka.js → powershell-Df9b3zQl.js} +0 -0
  172. /package/dist/assets/{protobuf-BGuu2u2s.js → protobuf-BF0nUVrW.js} +0 -0
  173. /package/dist/assets/{pug-Dbte1MXA.js → pug-Bj6Yikv_.js} +0 -0
  174. /package/dist/assets/{qsharp-DJLwBOvG.js → qsharp-BI4h-raZ.js} +0 -0
  175. /package/dist/assets/{r-DmGBRSHj.js → r-DhpnmaXx.js} +0 -0
  176. /package/dist/assets/{redis-VvUYn0a4.js → redis-DwYYPr4d.js} +0 -0
  177. /package/dist/assets/{redshift-6GdDrxg3.js → redshift-D2f3Bc-4.js} +0 -0
  178. /package/dist/assets/{restructuredtext-CfAB8aRU.js → restructuredtext-Dkiif6fe.js} +0 -0
  179. /package/dist/assets/{ruby-CIYK6MXY.js → ruby-C6hLmHy0.js} +0 -0
  180. /package/dist/assets/{rust-CTHZfjj9.js → rust-X8WAGtxB.js} +0 -0
  181. /package/dist/assets/{sb-CkKTdkz_.js → sb-4M2la0Kr.js} +0 -0
  182. /package/dist/assets/{scala-Bx-Wr9TM.js → scala-CaCXz58E.js} +0 -0
  183. /package/dist/assets/{scheme-Dcfi6f83.js → scheme-CMdjpmP7.js} +0 -0
  184. /package/dist/assets/{scss-ByL-7PFQ.js → scss-QopmvPyp.js} +0 -0
  185. /package/dist/assets/{shell-Csnb9Yqd.js → shell-CDBchS00.js} +0 -0
  186. /package/dist/assets/{solidity-Dbw5-0QP.js → solidity-DvBfi5mC.js} +0 -0
  187. /package/dist/assets/{sophia-ZQ3saZQx.js → sophia-HSnXR17u.js} +0 -0
  188. /package/dist/assets/{sparql-BEtOel8u.js → sparql-DhG_ppup.js} +0 -0
  189. /package/dist/assets/{sql-DGPDbzB7.js → sql-DHeIS-tf.js} +0 -0
  190. /package/dist/assets/{st-GeW2MOgh.js → st-CMWchiRU.js} +0 -0
  191. /package/dist/assets/{swift-BVYTN8jq.js → swift-CDXvBefj.js} +0 -0
  192. /package/dist/assets/{systemverilog-Deg2a8Lr.js → systemverilog-0RTukYUE.js} +0 -0
  193. /package/dist/assets/{tcl-6DnLmROF.js → tcl-CbBF_Ttl.js} +0 -0
  194. /package/dist/assets/{twig-XbbXW9Yz.js → twig-DCcGd8FE.js} +0 -0
  195. /package/dist/assets/{typespec-CRlV8GhI.js → typespec-HTphp-Uh.js} +0 -0
  196. /package/dist/assets/{vb-BHE2izPH.js → vb-Cb_yUcVd.js} +0 -0
  197. /package/dist/assets/{viewer-url-state-BnbixmdH.js → viewer-url-state-BfJV-cGM.js} +0 -0
  198. /package/dist/assets/{wgsl-Bf5vkfmY.js → wgsl-DrKU3YXj.js} +0 -0
@@ -1 +0,0 @@
1
- import{Bs as e,Ls as t,Ms as n,Ns as r,Os as i,Sr as a,U as o,W as s,ks as c,zs as l}from"./index-CXuVkD6-.js";var u={TST:({machineId:e})=>e===void 0?void 0:a.testView(e),RUN:({machineId:e})=>e===void 0?void 0:a.runDetail(e),MEM:null,POL:null,TGT:()=>a.config};function d(e){let t=u[e.kind];return t===null?void 0:t(e)}function f(e){let t=l(e);return t===void 0?void 0:d({kind:t.kind,shortId:t.shortId})}var p={analysis:{complete:`Analysis`,running:`Analysis running`,pending:`Analysis pending`,failed:`Analysis failed`,skipped:`Analysis skipped`},curation:{complete:`Curation`,running:`Curation running`,pending:`Curation pending`,failed:`Curation failed`,skipped:`Curation skipped`}},m=`Post-processing unavailable`,h=`Post-processing status loading`,g=`Analysis complete — no issues found`,_={"gate-run":{analysis:`Analysis skipped — gate runs are not analysed`,curation:`Curation skipped — gate runs are not curated`},"outcome-excluded":{analysis:`Analysis skipped — runs excluded from outcomes are not analysed`,curation:`Curation skipped — runs excluded from outcomes are not curated`},"no-verdict":{analysis:`Analysis skipped — the run ended before it reached a verdict`,curation:`Curation skipped — the run ended before it reached a verdict`}},v=`Analysis running`,y=`Curation running`,b=`Will retry`,x=`Open Knowledge tab`,S=`Open verdict`,ee=`no memory changes`,te=`Breakdown not recorded for this run`,C={"masking-unavailable":`Breakdown not available for this run — masking unavailable`,"projection-refused":`Breakdown not available for this run — projection refused`},ne={knowledge:` — open Knowledge tab`,verdict:` — open verdict`},re={knowledge:x,verdict:S};function ie(e){let t=e.indexOf(` — `);return t===-1?void 0:e.slice(t+3)}function w(e,t,n,r){let i=n===void 0?void 0:ie(n);return[`${p[e].complete}: ${t}`,i===void 0?``:`, ${i}`,r===void 0?``:ne[r]].join(``)}var ae={handedOff:`daemon draining`,drained:`draining`,detached:`not queued for drain — the next CLI run or agent-qa daemon drains it`},oe={handedOff:`reason not recorded — drained by the daemon`,detached:`reason not recorded — drained by a later process`,drained:`reason not recorded`,unknown:`reason not recorded`},se=`post-processing status unavailable`,T=`counts not recorded for this run`;function ce(e){return w(`curation`,e.state,e.card?.outcome,`knowledge`)}function E(e){let t=i.filter(t=>e[t]>0).map(t=>`${String(e[t])} ${t}`);return t.length===0?ee:t.join(` · `)}function le(e,t){return`${String(e)} curated · ${String(t)} deprecated`}var ue=new Intl.DateTimeFormat(void 0,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hourCycle:`h23`});function D(e){if(e===void 0)return;let t=Date.parse(s(e));return Number.isNaN(t)?void 0:t}function de(e){let t=D(e);return t===void 0?void 0:ue.format(t)}function fe(e,t){if(!(e===void 0||t===void 0||t<e))return o(t-e)}function pe(e,t){if(e===void 0)return;let n=D(e.createdAt),r=D(e.startedAt),i=D(e.updatedAt),a=e.createdAt===void 0?void 0:de(e.createdAt),o=fe(n,r),s=t===`complete`||t===`failed`?fe(r,i):void 0,c=[...a===void 0?[]:[`Queued ${a}`],...o===void 0?[]:[`started after ${o}`],...t===`running`?[`running`]:s===void 0?[]:[`finished in ${s}`],...e.attempts!==void 0&&e.attempts>1?[`${String(e.attempts)} attempts`]:[]];return c.length===0?void 0:c.join(` · `)}function me(e){return e.replace(/_/g,` `)}function he(e,t){let n=`${p.analysis.complete} complete`,r=`${String(t)} ${t===1?`verdict`:`verdicts`}`;return e===void 0?`${n} — ${r}`:`${n} — root cause: ${me(e)} (${r})`}function ge(e){let t,n=0;for(let i of r){let r=e[i];r!==void 0&&r>n&&(t=i,n=r)}return t}function _e(e){return`Proposals: ${String(e)} staged for review`}function ve(e){return`Proposals failed — ${e}`}function ye(e){let t=e.status.notification?.stages.proposals;if(t!==void 0){if(t.status===`failed`){let t=e.status.stageDetails?.proposals?.lastFailureReason;return ve(t??`reason not recorded`)}return t.proposed!==void 0&&t.proposed>0?_e(t.proposed):void 0}}function be(e,t){let n=`${p[e].complete} queued`;return t===void 0?n:`${n} — ${t}`}function xe(e,t){return`${p[e].complete} failed — ${t}`}function Se(e){let t=`${p.curation.complete} complete`,{notification:n,curationSnapshot:r,curationSnapshotWithheld:i}=e.status;if(r!==void 0)return{outcome:`${t} — ${E(r.breakdown)}`};let a=n?.stages.curation;if(a?.curated!==void 0&&a.deprecated!==void 0)return{outcome:`${t} — ${le(a.curated,a.deprecated)}`,note:te};if(i!==void 0)return{outcome:t,note:C[i.reason]};if(n!==void 0)return{outcome:`${t} — ${T}`}}function Ce(e,t){switch(e.status.chips[t]){case`complete`:return`complete`;case`running`:return`running`;case`pending`:return`pending`;case`failed`:return`failed`}}var we={analysis:v,curation:y};function Te(e,t,n){if(t===`running`)return{outcome:we[e]};if(t===`pending`)return{outcome:be(e,n.disposition===void 0?void 0:ae[n.disposition])};if(t===`failed`){let t=n.failures?.[e];return{outcome:xe(e,t?.error??oe[n.disposition??`unknown`]),...t?.willRetry===!0?{retry:b}:{}}}if(t===`complete`&&e===`curation`)return Se(n);if(t===`complete`){let e=n.status.notification?.verdictSummary;return e===void 0?void 0:{outcome:e.total===0?g:he(ge(e.byClass),e.total)}}}function Ee(e,t,n){return{status:n.status.chips[e],state:`skipped`,word:p[e].skipped,card:{outcome:_[t][e]}}}function De(e,t,n,r){let i=pe(r.status.stageDetails?.[t],n),a=t===`curation`?ye(r):void 0;return{...e,...i===void 0?{}:{timing:i},...a===void 0?{}:{proposals:a}}}function Oe(e,t){let n=Ce(t,e),r=Te(e,n,t),i=r===void 0?void 0:De(r,e,n,t);return{status:t.status.chips[e],state:n,word:p[e][n],...i===void 0?{}:{card:i}}}function ke(e){if(e.kind===`unavailable`)return{kind:`unavailable`,error:e.error,...e.reason===void 0?{}:{reason:e.reason}};let t=e.status.skipped;return t===void 0?{kind:`chips`,analysis:Oe(`analysis`,e),curation:Oe(`curation`,e)}:{kind:`chips`,analysis:Ee(`analysis`,t.reason,e),curation:Ee(`curation`,t.reason,e),skipped:{reason:t.reason}}}var Ae=`No knowledge store configured for this project`,je=`Runs in this project are executed without a brief. Add a knowledge root to your config to start serving one.`,Me=`Knowledge could not be read`;function Ne(e){return`${e}. Try reloading the page; if it persists, run \`agent-qa doctor\`.`}var Pe=`This run used no stored knowledge: no step asked for a brief.`,Fe=`Knowledge used`,O=`This run used no stored knowledge: retrieval ran and found nothing that applied.`,Ie=`no brief served`;function Le(e){return`${String(e)} brief ${e===1?`line`:`lines`}`}function Re(e){return`${String(e)} canary`}var ze=`replay`,Be=`hint`;function Ve(e,t){return`Step ${String(e+1)} — ${t}`}function He(e){let t=[];e.stepsBriefed>0&&t.push(`${String(e.stepsBriefed)} ${e.stepsBriefed===1?`step`:`steps`} briefed`),e.canaryLines>0&&t.push(`${String(e.canaryLines)} canary ${e.canaryLines===1?`line`:`lines`} served`);let n=[];return e.replays>0&&n.push(`${String(e.replays)} procedure ${e.replays===1?`replay`:`replays`}`),e.hints>0&&n.push(`${String(e.hints)} ${e.hints===1?`hint`:`hints`}`),n.length>0&&t.push(n.join(`, `)),t.length===0?O:t.join(` · `)}var Ue={given:{lead:`Given in`,follow:`given in`},opened:{lead:`Opened by the agent in`,follow:`opened in`},caution:{lead:`Given as a caution in`,follow:`given as a caution in`},replayed:{lead:`Replayed in`,follow:`replayed in`},hint:{lead:`Used as a hint in`,follow:`used as a hint in`}},We=`Effect on this run`,Ge=`Retrieval details`,Ke=`Nothing was measured on this run. Only knowledge on trial and procedure replays are measured.`,qe=`Nothing to measure: this run used no stored knowledge.`;function Je(e){return e===1?`1 record`:`${String(e)} records`}function Ye(e,t){let n=`${String(e.stepIndex+1)} · ${e.stepText}`;return t===void 0?`Go to step ${n}`:`Go to ${t} · step ${n}`}function k(e,t){return e.testIndex-t.testIndex||e.stepIndex-t.stepIndex}function A(e){return{kind:`step`,address:e,label:String(e.stepIndex+1)}}function Xe(e,t){if(t===void 0||t.size===0)return j(e);let n=new Map;for(let t of[...e].sort(k)){let e=n.get(t.testIndex);e===void 0?n.set(t.testIndex,[t]):e.push(t)}let r=[];for(let[e,i]of n)r.length>0&&r.push({kind:`text`,text:`; `}),r.push({kind:`text`,text:t.get(e)??`Test ${String(e+1)}`}),r.push({kind:`text`,text:` · `}),r.push(...j(i));return r}function j(e){let t=[...e].sort(k).filter((e,t,n)=>t===0||k(n[t-1],e)!==0);if(t.length===0)return[];let n=[];for(let e of t){let t=n.at(-1),r=t?.at(-1),i=r!==void 0&&r.testIndex===e.testIndex&&e.stepIndex===r.stepIndex+1;t!==void 0&&i?t.push(e):n.push([e])}let r=n.flatMap(e=>e.length>=3?[e]:e.map(e=>[e])),i=[{kind:`text`,text:t.length===1?`step `:`steps `}];return r.forEach((e,t)=>{t>0&&i.push({kind:`text`,text:t===r.length-1?` and `:`, `}),i.push(A(e[0])),e.length>1&&(i.push({kind:`text`,text:`–`}),i.push(A(e.at(-1))))}),i}var M={fact:`Fact`,caution:`Caution`,procedure:`Procedure`,policy:`Policy`,unknown:`Open question`},Ze=new Set(Object.keys(M));function Qe(e){return Ze.has(e)}var N=`A record that can no longer be read`,$e={"not-found":`It is no longer in the knowledge store.`,"scan-incomplete":`The knowledge store could not be fully read.`,"not-bound":`This dashboard has no record reader for this project.`},et=`A procedure whose content isn't part of this run's record`;function tt(e){return`Show all ${String(e)} records`}function P(e){let t=new Map,n=(e,n)=>{t.get(e)?.content===void 0&&(n.recordContent===void 0?n.contentAbsence!==void 0&&!t.has(e)&&t.set(e,{absence:n.contentAbsence}):t.set(e,{content:n.recordContent}))};for(let t of[...e.steps].sort(k)){for(let e of t.served.channel1)n(e.id,e);for(let e of t.served.channel3)n(e.id,e);for(let e of t.served.channel2)n(e.id,e)}for(let t of e.learned.changes)n(t.recordId,t);for(let t of e.learned.sinceThen?.changes??[])n(t.recordId,t);return t}var nt=[`platform`,`page`,`flow`,`el`,`selector`,`error`,`unparsed`],rt=n.element.shape.normalized;function it(e){try{let t=rt.safeParse(JSON.parse(e));return t.success?t.data:{t:`unparsed`,raw:e}}catch{return{t:`unparsed`,raw:e}}}var at=`Applies to`;function ot(e){switch(e.t){case`platform`:return{type:`platform`,text:e.platform};case`page`:return{type:`page`,text:`page ${e.route}`};case`flow`:return{type:`flow`,text:`flow ${e.name}`};case`el`:return{type:`el`,text:`element ${e.role} "${e.name}"${e.ordinal===void 0?``:` #${String(e.ordinal)}`}`};case`selector`:return{type:`selector`,text:`selector`,literal:e.literal};case`error`:return{type:`error`,text:`error "${e.message}"`};case`unparsed`:return{type:`unparsed`,text:e.raw}}}function F(e){let t=e.product===e.scope?e.scope:`${e.product} · ${e.scope}`,n=e=>nt.indexOf(e),r=e.anchors.map(e=>ot(it(e))).sort((e,t)=>n(e.type)-n(t.type));return{lead:`${at} ${t}`,phrases:r}}var st=`on trial`,ct=`New knowledge that isn't proven yet is given to the agent on trial, so a run can show whether it holds up. This run's result counts for or against it.`,lt={active:`since proven`,candidate:`since put back on trial`,superseded:`since superseded`,deprecated:`since retired`},I={active:`in use`,candidate:`on trial`,superseded:`superseded`,deprecated:`retired`},ut=new Set(Object.keys(I));function dt(e){return ut.has(e)}function ft(e,t){if(!(e===void 0||t===void 0||!dt(e)))return e===t?void 0:t}function pt(e){return`Current status: ${I[e]}`}function L(e){return e===1?`once`:`${String(e)} times`}function mt(e,t){return`Confirmed ${L(e)} · contradicted ${L(t)}`}var ht=`Show full record`,gt=`Curator's note — written by the curator, not verified`;function _t(e){return[...R(e).values()]}function R(e){let t=new Map,n=(e,n,r)=>{let i=t.get(e);i===void 0&&(i={uses:new Map},t.set(e,i));let a=i.uses.get(n);return a===void 0?i.uses.set(n,[r]):k(a.at(-1),r)!==0&&a.push(r),i};for(let t of[...e.steps].sort(k)){let e={testIndex:t.testIndex,stepIndex:t.stepIndex,stepText:t.stepText};for(let r of t.served.channel1){let t=n(r.id,`given`,e);t.served===void 0&&(t.served=r.summary),t.servedKind===void 0&&(t.servedKind=r.kind),t.servedStatus===void 0&&(t.servedStatus=r.status),r.servedAsCanary&&(t.onTrial=!0)}for(let r of t.served.channel3){let t=n(r.id,`caution`,e);t.served===void 0&&(t.served=r.summary)}t.planSource!==void 0&&n(t.planSource.procedureId,t.planSource.kind===`procedure-replay`?`replayed`:`hint`,e);for(let r of t.served.channel2)n(r.id,`opened`,e)}let r=P(e),i=new Map,a=0;for(let[e,n]of t){let t=r.get(e),o=t?.content,s=o===void 0?t?.absence:void 0,c=[...n.uses.keys()].every(e=>e===`replayed`||e===`hint`),[l,u]=n.served===void 0?o===void 0?s!==void 0||!c?[N,`absent`]:[et,`not-recorded`]:[o.summary,`joined`]:[n.served,`served`],d=o===void 0?n.servedKind!==void 0&&Qe(n.servedKind)?n.servedKind:void 0:o.kind,f=ft(n.servedStatus,o?.currentStatus);i.set(e,{key:String(a),primary:l,leadSource:u,...d===void 0?{}:{kind:d},...o===void 0?{}:{content:o,applicability:F(o.applicability)},...s===void 0?{}:{contentAbsence:s},...n.onTrial===void 0?{}:{onTrial:n.onTrial},...f===void 0?{}:{sinceStatus:f},uses:[...n.uses].map(([e,t])=>({verb:e,addresses:t}))}),a+=1}return i}var vt=[`problem`,`positive`,`pending`,`unknown`],z={contradicted:`problem`,harmful:`problem`,"replay-stopped":`problem`,confirmed:`positive`,helpful:`positive`,"replay-complete":`positive`,pending:`pending`,unknown:`unknown`},yt={contradicted:{lead:`Didn't hold up in`,tail:` — the run saw something different`},harmful:{lead:`Misled the agent in`,tail:``},confirmed:{lead:`Held up in`,tail:` — the run saw the same thing`},helpful:{lead:`Helped in`,tail:``},pending:{lead:`On trial in`,tail:` — waiting for post-run processing`},unknown:{lead:`Couldn't be checked in`,tail:` — part of the knowledge store couldn't be read`}},bt={"descriptor-ambiguous":`more than one element matched`,"descriptor-missing":`the element wasn't found`,"page-anchor-mismatch":`the page didn't match`,"gate-refused":`a safety check refused the action`,"parameter-unbound":`a value it needed wasn't provided`,"non-replayable-action":`that action can't be replayed`,"execution-failure":`the action failed to run`,"verifier-rejection":`the result didn't pass verification`};function xt(e,t){return e===void 0||t===void 0||e===0?{lead:`Replayed in`,tail:` — every replayed action was accepted`}:e===t?{lead:t===1?`Replayed its only step in`:`Replayed all ${String(t)} of its steps in`,tail:``}:{lead:`Replayed ${String(e)} of its ${String(t)} steps in`,tail:``}}function St(e,t,n){let r=`: ${bt[n]}`;return t===1&&e===1?{lead:`Replay stopped at its only step in`,tail:r}:t!==void 0&&e<=t?{lead:`Replay stopped at its step ${String(e)} of ${String(t)} in`,tail:r}:{lead:`Replay stopped at its step ${String(e)} in`,tail:r}}var Ct={executionFailure:`execution-failure`,verifierRejection:`verifier-rejection`};function B(e){let t=J(e);if(t!==void 0)return{step:t.step+1,cause:t.cause===`miss`?t.reason:Ct[t.cause]}}function wt(e){return B(e)===void 0&&e.total>0&&e.checksPassed===e.total}function Tt(e){return e===1?`1 record on trial wasn't counted for or against by this run`:`${String(e)} records on trial weren't counted for or against by this run`}var Et=`Post-run processing finished without counting this run's result toward it.`;function Dt(e){return e===1?`1 other record has no measured effect.`:`${String(e)} other records have no measured effect.`}function Ot(e){let t=R(e),n=new Map([...t.keys()].map((e,t)=>[e,t])),r=X(e),i=e.learned.scanIncomplete===!0,a=new Map,o=new Map,s=new Map,c=new Set;for(let t of[...e.steps].sort(k)){let n={testIndex:t.testIndex,stepIndex:t.stepIndex,stepText:t.stepText};for(let o of t.served.channel1){if(!o.servedAsCanary)continue;let s=q(r,e.learned.canaryAttributions.find(e=>e.testIndex===t.testIndex&&e.stepIndex===t.stepIndex&&e.recordId===o.id),i);if(s===`skipped`)continue;if(s===`not-attributed`){c.add(o.id);continue}let l=`${s}\u0000${o.id}`,u=a.get(l);u===void 0?a.set(l,{recordId:o.id,outcome:s,parts:yt[s],addresses:[n]}):k(u.addresses.at(-1),n)!==0&&u.addresses.push(n)}if(t.planSource?.kind===`procedure-replay`){let{guard:e,procedureId:r,flow:i}=t.planSource,a=B(e),c=`${String(t.testIndex)}\u0000${r}`,l=s.get(c),u=l!==void 0&&i!==void 0&&t.stepIndex===l.stepIndex+1&&i.cursor===l.cursor+1?l.start:t.stepIndex;i===void 0?s.delete(c):s.set(c,{stepIndex:t.stepIndex,cursor:i.cursor,start:u});let d=i===void 0?``:`${String(t.testIndex)}:${String(u)}`;if(a!==void 0||wt(e)){let e=a===void 0?[r,i?.length??``,d].join(`\0`):[r,i?.length??``,a.step,a.cause].join(`\0`),t=o.get(e)??{recordId:r,length:i?.length,stop:a,addresses:[],cursors:new Set};o.set(e,t);let s=t.addresses.at(-1);(s===void 0||k(s,n)!==0)&&t.addresses.push(n),a===void 0&&i!==void 0&&i.cursor<i.length&&t.cursors.add(i.cursor)}}}let l=new Map;for(let[e,t]of o){let n=t.stop===void 0?[t.recordId,t.length??``,t.cursors.size].join(`\0`):e,r=l.get(n);if(r===void 0){l.set(n,t);continue}for(let e of t.addresses)k(r.addresses.at(-1),e)!==0&&r.addresses.push(e)}let u=[...l.values()].map(e=>({recordId:e.recordId,outcome:e.stop===void 0?`replay-complete`:`replay-stopped`,parts:e.stop===void 0?xt(e.cursors.size,e.length):St(e.stop.step,e.length,e.stop.cause),addresses:e.addresses})),d=e=>vt.indexOf(z[e.outcome]),f=[...a.values(),...u].sort((e,t)=>d(e)-d(t)||k(e.addresses[0],t.addresses[0])||(n.get(e.recordId)??0)-(n.get(t.recordId)??0)),p=f.map((e,n)=>({key:String(n),outcome:e.outcome,tone:z[e.outcome],parts:e.parts,addresses:e.addresses,record:t.get(e.recordId)?.primary??`A record that can no longer be read`})),m=new Set(f.map(e=>e.recordId)),h=[...c].filter(e=>!m.has(e)).length,g=[...t.keys()].filter(e=>!m.has(e)&&!c.has(e)).length,_=h===0?{}:{uncounted:{count:h,line:Tt(h)}};return p.length===0?{entries:p,absence:t.size===0?qe:Ke,..._}:{entries:p,..._,...g===0?{}:{unmeasured:{count:g,line:Dt(g)}}}}var kt={1:`CHANNEL 1 · BRIEF`,2:`CHANNEL 2 · READ TRACES`,3:`CHANNEL 3 · CAUTIONS`};function At(e,t,n){return`leg ${e} · rank ${String(t)} · score ${n.toFixed(3)}`}function jt(e){return`Cut candidates (${String(e)} of top 20)`}var Mt=`no trace was captured for this run`,Nt=`no evidence recorded for this step`,Pt=`on trial (canary)`;function Ft(e){return`attribution: ${e}`}function It(e,t,n){return`trust ${e.toFixed(2)} · tier ${t} · status ${n}`}function Lt(e){return`Copy record id ${e}`}var Rt=`Record id copied to the clipboard`;function zt(e){return`Could not copy — select the id to copy it: ${e}`}function Bt(e,t){let n=t===void 0?``:` — ${Hn[t]}`;return`Retrieval level: ${Vn[e]}${n}`}var Vt=`attribution pending`,Ht=`attribution skipped`,Ut=`not attributed`,Wt=`attribution unknown`,Gt=`procedure hint`,Kt=`procedure hint (demoted from replay)`;function qt(e,t){return`replayed ${String(e)}/${String(t)}`}var Jt={miss:`miss`,executionFailure:`adapter failure`,verifierRejection:`verifier rejection`};function Yt(e,t){return`broke at step ${String(e)}: ${Jt[t]}`}function Xt(e){return`Show all ${String(e)} lines`}var Zt=`Memory changes`,Qt=`Memory changes appear after post-run processing finishes.`,$t=`Curation failed — nothing was learned from this run.`,V=`Curation failed — these records were committed before it stopped.`,en=`Counts not recorded for this run.`,H=`Change records for this run are not available yet.`,U="Change records could not be read from the knowledge store. Run `agent-qa doctor`.",tn="The knowledge store could not be fully read. Run `agent-qa doctor`.",nn=`Post-run processing finished and changed nothing in memory.`,rn=`The difference could not be attributed to this run's rows.`;function an(e,t){return`${String(e)} ${e===1?`change`:`changes`} counted · ${String(t)} shown`}var W=[`added`,`confirmed`,`superseded`,`deprecated`,`promoted`],on={"deterministic-verdict-floor":`deterministic-verdict-floor`,"gate1-lower-trust":`gate1-lower-trust`,"gate1+gate2":`gate1+gate2`,"user-sovereign":`user-sovereign`};function sn(e){return on[e]}var cn=new Set(W);function G(e){return cn.has(e)}var ln={added:`Added`,confirmed:`Confirmed`,superseded:`Superseded`,deprecated:`Deprecated`,proposed:`Proposed`},un={added:`New knowledge recorded from this run.`,confirmed:`Existing knowledge this run backed up, including knowledge promoted to trusted.`,superseded:`Replaced by a newer version; agents are given the new one.`,deprecated:`Retired; agents are no longer given it.`,proposed:`Recorded, but not applied: agents are not given it.`},K={added:`added`,confirmed:`confirmed`,promoted:`confirmed`,superseded:`superseded`,deprecated:`deprecated`},dn=`recorded, not applied`,fn=`open question recorded`,pn=`Was:`,mn=`A record whose content isn't part of this run's record`;function hn(e){return`Since this run · ${String(e)} ${e===1?`change`:`changes`}`}var gn={added:`added later`,confirmed:`confirmed again, later`,promoted:`promoted to trusted, later`,superseded:`superseded later`,deprecated:`retired later`};function _n(e){return gn[e]}var vn={bucket:`Bucket`,record:`Record`,events:`Events`,promotion:`Promotion path`,receipt:`Receipt digest`,evidence:`Evidence`,observation:`Observation`,sourceRun:`Source run`,validity:`Validity`,link:`Reference`};function yn(e){return`${e.change} @ ${String(e.atOrdinal)}`}function bn(e){let t=`opened @ ${String(e.openedAtOrdinal)}`;return e.closedAtOrdinal===void 0?t:`${t} · closed @ ${String(e.closedAtOrdinal)}`}function xn(e,t){return e.served.channel1.map(e=>({...e,why:Sn(e.id,t)}))}function Sn(e,t){if(t.kind===`no-trace`)return{kind:`no-trace`,reason:t.reason};let n=t.trace.servedLines.find(t=>t.recordId===e);return n===void 0?{kind:`no-trace`,reason:`step-not-found`}:{kind:`answered`,leg:n.leg,rank:n.rank,score:n.score}}function Cn(e){if(e.kind!==`no-trace`)return{label:jt(e.trace.truncated.length),lines:e.trace.truncated}}function q(e,t,n=!1){return e===`pending`||e===`running`?`pending`:t===void 0?e===`skipped`?`skipped`:n?`unknown`:`not-attributed`:t.outcome}function wn(e){if(e.kind===`procedure-hint`)return e.demotion===void 0?Gt:Kt;let t=J(e.guard);return t===void 0?qt(e.guard.checksPassed,e.guard.total):Yt(t.step+1,t.cause)}function J(e){if(e.miss!==void 0)return{step:e.miss.procedureStepIndex,cause:`miss`,reason:e.miss.reason};if(e.executionFailure!==void 0)return{step:e.executionFailure.procedureStepIndex,cause:`executionFailure`};if(e.verifierRejection!==void 0)return{step:e.verifierRejection.procedureStepIndex,cause:`verifierRejection`}}function Tn(e){let t=wn(e),n=e.procedureId;if(e.kind===`procedure-hint`)return{kind:`procedure-hint`,procedureId:n,sentence:t,tone:`hint`};let r=J(e.guard);return{kind:`procedure-replay`,procedureId:n,sentence:t,tone:r===void 0?`ok`:`broke`,...r?.cause===`miss`?{missReason:r.reason}:{}}}function En(e){return e.length<=50?{lines:e}:{lines:e.slice(0,50),hiddenCount:e.length-50,showAllLabel:Xt(e.length)}}function Dn(e){return e.served.channel1.length+e.served.channel2.length+e.served.channel3.length}function On(e){return e.served.channel1.filter(e=>e.servedAsCanary).length}function kn(e,t,n,r){let i=Dn(e),a=On(e),o=e.planSource?.kind??`none`,s=[];return i>0&&s.push(Le(i)),a>0&&s.push(Re(a)),o===`procedure-replay`&&s.push(ze),o===`procedure-hint`&&s.push(Be),{testIndex:e.testIndex,stepIndex:e.stepIndex,title:Ve(e.stepIndex,e.stepText),briefLines:i,canaryLines:a,planSource:o,facts:s,...i===0?{noBrief:!0}:{},detail:An(e,t,n,r)}}function An(e,t,n,r){let i=xn(e,e.trace).map(i=>i.servedAsCanary?{...i,canaryOutcome:q(t,n.find(t=>t.testIndex===e.testIndex&&t.stepIndex===e.stepIndex&&t.recordId===i.id),r)}:i),a=Cn(e.trace),o=e.retrievalRung===void 0?void 0:Z(e.retrievalRung);return{channel1:i,channel2:e.served.channel2.map(e=>({id:e.id,detailLevel:e.detailLevel,bodyDigest:e.bodyDigest})),channel3:e.served.channel3.map(e=>({id:e.id,summary:e.summary})),...a===void 0?{}:{cut:a},...e.planSource===void 0?{}:{planSource:Tn(e.planSource)},...o===void 0||o.rung===`memidex`?{}:{rung:{rung:o.rung,...o.reason===void 0?{}:{reason:o.reason}}}}}function jn(n){return e(n)?.kind===`MEM`?t(`MEM`,n):void 0}function Mn(e){return c.find(t=>e.includes(t))??e[0]}function Nn(e){return[...e].reverse().find(e=>e.change===`superseded`&&e.byRecordId!==void 0)?.byRecordId}function Pn(e){let{curationSnapshot:t,sinceThen:n,changes:r}=e.learned;if(t!==void 0){let e=t.rows.map(e=>{let t=e.bucket===`superseded`&&e.byRecordId!==void 0;return{bucket:e.bucket,section:`curation`,subjectId:t?e.byRecordId:e.recordId,...t?{wasId:e.recordId}:{},changes:e.changes.map(e=>e.change)}}),r=(n?.changes??[]).flatMap(e=>{if(!G(e.change))return[];let t=e.change===`superseded`&&e.byRecordId!==void 0;return[{bucket:K[e.change],section:`since-then`,subjectId:t?e.byRecordId:e.recordId,...t?{wasId:e.recordId}:{},changes:[e],later:e.change}]});return[...e,...r]}let i=r.filter(e=>G(e.change)),a=new Map;for(let e of i)e.change===`superseded`&&e.byRecordId!==void 0&&a.set(e.byRecordId,e.recordId);let o=new Map;for(let e of i){let t=e.change===`added`?a.get(e.recordId)??e.recordId:e.recordId,n=o.get(t);n===void 0?o.set(t,[e]):n.push(e)}return[...o].map(([e,t])=>{let n=Mn(t.map(e=>K[e.change])),r=n===`superseded`?Nn(t):void 0;return{bucket:n,subjectId:r??e,...r===void 0?{}:{wasId:e},changes:t}})}function Fn(e){return e?.content===void 0?e?.absence===void 0?{primary:mn,leadSource:`not-recorded`}:{primary:N,leadSource:`absent`}:{primary:e.content.summary,leadSource:`joined`}}function In(e,t,n){let r=n.get(e.subjectId),i=r?.content,a=i===void 0?r?.absence:void 0,o=e.bucket===`proposed`?i?.kind===`unknown`?fn:dn:void 0;return{key:String(t),bucket:e.bucket,...e.section===void 0?{}:{section:e.section},...Fn(r),...i===void 0?{}:{kind:i.kind,content:i,applicability:F(i.applicability)},...a===void 0?{}:{contentAbsence:a},...e.wasId===void 0?{}:{was:Fn(n.get(e.wasId))},...o===void 0?{}:{note:o},...e.later===void 0?{}:{sinceDetail:_n(e.later)}}}function Y(e){return[...new Set(e.filter(e=>e!==void 0))]}function Ln(e,t,n){let r=jn(e.subjectId),i=r===void 0?void 0:f(r),a=e.changes.find(e=>e.promotionPath!==void 0),o=n.get(e.subjectId)?.content?.applicability;return{key:String(t),bucket:e.bucket,...e.section===void 0?{}:{section:e.section},recordIds:e.wasId===void 0?[e.subjectId]:[e.subjectId,e.wasId],events:e.changes.map(e=>({change:e.change,atOrdinal:e.atOrdinal})),...a?.promotionPath===void 0?{}:{promotionPath:a.promotionPath},...a?.promotionReceiptDigest===void 0?{}:{promotionReceiptDigest:a.promotionReceiptDigest},evidenceTokens:Y(e.changes.map(e=>e.evidenceToken)),observationIds:Y(e.changes.map(e=>e.observationId)),sourceRunIds:Y(e.changes.map(e=>e.sourceRunId)),...o===void 0?{}:{validity:{openedAtOrdinal:o.openedAtOrdinal,...o.closedAtOrdinal===void 0?{}:{closedAtOrdinal:o.closedAtOrdinal}}},...r===void 0?{}:{ref:r},...i===void 0?{}:{href:i}}}function X(e){return e.curation.skipped===void 0?e.curation.status:`skipped`}function Rn(e){let t=X(e);if(t===`pending`||t===`running`)return[];let n=P(e);return Pn(e).map((e,t)=>Ln(e,t,n))}function zn(e){let t=X(e),{counts:n,skipped:r}=e.curation,a=e.learned.scanIncomplete===!0?{scanIncomplete:!0}:{},o=e.learned.scanIncomplete===!0?{readNote:tn}:{},{curationSnapshot:s,sinceThen:c}=e.learned,l=P(e),u=Pn(e).map((e,t)=>In(e,t,l)),d=s===void 0?void 0:{breakdown:s.breakdown,...c===void 0?{}:{sinceThenCount:c.count}},f=d===void 0?{}:{curationSnapshot:d},p=d===void 0?0:i.reduce((e,t)=>e+d.breakdown[t],0),m=u.filter(e=>e.section===`curation`).length,h=e=>d===void 0||p===m?f:{curationSnapshot:{...d,reconciliation:{count:an(p,m),cause:e}}};if(r!==void 0){let e=_[r.reason].curation;return u.length>0?{state:`skipped`,rows:u,chainNote:e,...a,...o,...f}:{state:`skipped`,sentence:e,rows:[],...a,...o,...f}}if(t===`pending`||t===`running`)return{state:t,sentence:Qt,rows:[],...a,...o,...f};if(t===`failed`)return u.length>0?{state:`failed`,rows:u,chainNote:V,...a,...o,...h(V)}:{state:`failed`,sentence:$t,rows:[],...a,...o,...f};let g=n===void 0?`counts-absent`:`complete`,v=e.learned.scanIncomplete===!0?U:rn,y=s?.breakdown,b=e.learned.curationSnapshotWithheld,x=y===void 0?n===void 0?T:le(n.curated,n.deprecated):E(y),S=y===void 0?n===void 0?b===void 0?{}:{countNote:C[b.reason]}:{countNote:te}:{};return u.length>0?{state:g,countLine:x,...S,rows:u,...a,...o,...h(v)}:e.learned.scanIncomplete===!0?{state:g,countLine:x,...S,sentence:U,rows:[],scanIncomplete:!0,...h(U)}:y===void 0?n===void 0?{state:g,countLine:x,...S,sentence:en,rows:[],...f}:n.curated===0&&n.deprecated===0?{state:g,countLine:x,...S,sentence:nn,rows:[],...f}:{state:g,countLine:x,...S,sentence:H,rows:[],...f}:p===0?{state:g,countLine:x,...S,sentence:nn,rows:[],...h(v)}:{state:g,countLine:x,...S,sentence:H,rows:[],...h(v)}}function Bn(e){if(e.kind===`unavailable`)return{state:`error`,heading:Me,body:Ne(e.error)};let t=e.projection;if(t.kind===`evidence-incomplete`)return{state:`evidence-incomplete`};if(t.knowledgeStore===`unbound`)return{state:`empty-no-store`,heading:Ae,body:je};let n=t.steps.map(e=>kn(e,X(t),t.learned.canaryAttributions,t.learned.scanIncomplete===!0)),r=n.length===0?Pe:He({stepsBriefed:n.filter(e=>e.briefLines>0).length,canaryLines:n.reduce((e,t)=>e+t.canaryLines,0),replays:n.filter(e=>e.planSource===`procedure-replay`).length,hints:n.filter(e=>e.planSource===`procedure-hint`).length}),i=_t(t),a=t.retrievalRung===void 0?void 0:Z(t.retrievalRung),o=Jn(a);return{state:`ready`,used:{...i.length>0?{records:i,countLine:Je(i.length)}:{records:i,absence:n.length===0?Pe:O},...o===void 0?{}:{retrieval:o}},effect:Ot(t),ledger:{summary:r,steps:n,changes:Rn(t)},...a===void 0?{}:{rung:a},learned:zn(t)}}function Z(e){return{rung:e.rung,...e.reason===void 0?{}:{reason:e.reason}}}var Vn={"bundle-scan":`bundle scan`,"static-floor":`static-floor embeddings`,"lexical-only":`lexical-only retrieval`},Hn={"native-runtime-unavailable":`native ONNX runtime unavailable`,"profile-unresolved":`embedder profile unresolved (deferred)`,"model-not-downloaded":`embedding model not downloaded`,"embedder-load-failed":`embedder failed to load`,"index-unavailable":`knowledge index unavailable (cause not recorded), scanning bundles`,"floor-disabled":`static floor disabled`,"profile-static-configured":`static profile configured`,"index-not-built":`knowledge index not built yet, scanning bundles`,"index-locked":`knowledge index locked by another process, scanning bundles`,"index-corrupt":`knowledge index corrupt, rebuild requested, scanning bundles`},Un={"index-not-built":`fresh-index`,"index-unavailable":`cause-not-recorded`,"index-locked":`index-problem`,"index-corrupt":`index-problem`,"native-runtime-unavailable":`semantic-search-unavailable`,"model-not-downloaded":`semantic-search-unavailable`,"embedder-load-failed":`semantic-search-unavailable`,"profile-unresolved":`semantic-search-unavailable`,"profile-static-configured":`by-configuration`,"floor-disabled":`by-configuration`},Wn={"fresh-index":`info`,"cause-not-recorded":`info`,"index-problem":`warning`,"semantic-search-unavailable":`warning`,"by-configuration":`info`},Gn=`To check the store's health now, run agent-qa doctor. It reports current health and doesn't change what this run recorded.`;function Kn(e){return e.rung===`memidex`?void 0:Q(e.reason)}function Q(e){return e===void 0?`cause-not-recorded`:Un[e]}function qn(e,t){let n=Q(t);switch(n){case`fresh-index`:return`The knowledge index hadn't been built yet, so this run read knowledge straight from the bundles. Nothing was missed. The index is built after the run finishes, and later runs use it.`;case`cause-not-recorded`:return`This run used ${Vn[e]} instead of full knowledge retrieval. The reason wasn't recorded for this run.`;case`index-problem`:return`This run couldn't use the knowledge index, so it read knowledge straight from the bundles — ${$(t)}.`;case`semantic-search-unavailable`:return e===`static-floor`?`This run's knowledge retrieval used the lightweight static-floor embeddings instead of the full model — ${$(t)}.`:`This run's knowledge retrieval ran without semantic search, on keyword and anchor matching only — ${$(t)}.`;case`by-configuration`:return t===`profile-static-configured`?`This run's knowledge retrieval used the static-floor embeddings, as this project is configured to.`:`This run's knowledge retrieval used keyword and anchor matching only, as this project is configured to.`;default:return n}}function $(e){return e===void 0?``:Hn[e]}function Jn(e){if(e===void 0||e.rung===`memidex`)return;let t=Q(e.reason),n=Wn[t];return{retrievalClass:t,tone:n,rung:e.rung,...e.reason===void 0?{}:{reason:e.reason},sentence:qn(e.rung,e.reason),...n===`warning`?{pointer:Gn}:{}}}function Yn(e){let t=Jn(e);if(t?.pointer!==void 0)return`${t.sentence} ${t.pointer}`}function Xn(e){if(e===void 0||e.kind!==`read`)return;let t=e.projection;if(!(t.kind!==`ready`||t.knowledgeStore===`unbound`))return t.retrievalRung}export{ce as $,Xn as A,zt as B,Nt as C,Ue as D,Fe as E,yn as F,Ye as G,Yn as H,Bt as I,It as J,At as K,bn as L,Lt as M,pt as N,pn as O,Xe as P,m as Q,Bn as R,lt as S,Et as T,tt as U,Kn as V,hn as W,re as X,se as Y,h as Z,Mt as _,un as a,Ge as b,We as c,Pt as d,ke as et,vn as f,ct as g,st as h,ln as i,En as j,Ft as k,gt as l,Ut as m,Ht as n,kt as o,Zt as p,mt as q,Wt as r,$e as s,Vt as t,w as tt,W as u,Rt as v,Ie as w,ht as x,M as y,sn as z};
@@ -1 +0,0 @@
1
- import{r as e}from"./chunk-CilyBKbf.js";import{i as t,n,r}from"./run-stream-reducer-BXMulZq1.js";import{n as i,r as a,t as o}from"./use-run-status-favicon-vVlATUoT.js";import{t as s}from"./circle-x-1lf_9y_c.js";import{n as c,r as ee,t as l}from"./live-step-row-BtLYYCKS.js";import{Cr as te,In as u,Kt as d,Sc as f,Sr as p,Xt as m,Zt as h,_c as g,ar as _,en as v,hc as ne,tn as re,vc as ie,wr as ae,y,z as b}from"./index-CXuVkD6-.js";import{t as oe}from"./use-page-title-fn79XYtf.js";import{t as se}from"./badge-B-yh3kbi.js";import{n as x,r as ce,t as le}from"./resizable-om0nWp3k.js";import{t as ue}from"./empty-state-2mwYYmoQ.js";import{H as S}from"./knowledge-view-BHNh7MwX.js";var C=d(`monitor-play`,[[`path`,{d:`M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z`,key:`vbtd3f`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`,key:`x3v2xh`}]]),w=e(f(),1),T=m(),E=`waiting for the first step`;function de({members:e,steps:t,terminal:n}){let r=[...new Set([...e.map(e=>e.testIndex),...t.map(e=>e.testIndex)])].sort((e,t)=>e-t),i=e.some(e=>e.outcome!==void 0||e.note!==void 0),a=e=>t.filter(t=>t.testIndex===e&&c(t)),o=t.filter(c).length===0&&!i&&!n,s=r.length>1;return o?(0,T.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:(0,T.jsx)(`p`,{"data-steps-empty":!0,className:`p-6 text-sm text-muted-foreground`,children:E})}):(0,T.jsx)(`div`,{className:`flex h-full min-h-0 flex-col`,children:r.map(t=>{let n=e.find(e=>e.testIndex===t),r=a(t);return(0,T.jsxs)(`div`,{"data-member":String(t),children:[s?(0,T.jsxs)(`h3`,{className:`flex items-center gap-2 border-b bg-muted/30 px-3 py-1.5 text-xs font-medium`,children:[(0,T.jsx)(`span`,{className:`min-w-0 truncate`,children:n?.name||`member ${String(t)}`}),n?.note!==void 0&&(0,T.jsx)(`span`,{"data-member-note":!0,className:`shrink-0 text-muted-foreground`,children:n.note}),n?.outcome!==void 0&&(0,T.jsx)(`span`,{"data-member-outcome":n.outcome,className:`shrink-0 text-muted-foreground`,children:n.outcome})]}):n?.note!==void 0&&(0,T.jsx)(`p`,{"data-member-note":!0,className:`px-3 py-2 text-sm text-muted-foreground`,children:n.note}),r.length>0&&(0,T.jsx)(`ul`,{className:`flex flex-col`,children:r.map(e=>(0,T.jsx)(l,{row:e},`${String(e.testIndex)}:${String(e.stepIndex)}`))})]},t)})})}function fe(e){return e>0&&e<768?`stacked`:`docked`}var D={preview:`live-preview`,steps:`live-steps`},O={preview:`live-preview-stacked`,steps:`live-steps-stacked`};function pe(e){return e===`stacked`?O:D}function k(e){return Object.values(e).filter(e=>e.outcome===void 0).map(e=>e.testIndex).sort((e,t)=>e-t)}function me(e,t){let n=k(e.members);if(t!==void 0&&n.includes(t))return t;let r=n[0];return r===void 0?t!==void 0&&e.members[t]!==void 0?t:e.handles?.[0]??t??0:r}var A=2;function j(e,t){return`${String(t-e+1)} events missed (seq ${String(e)}–${String(t)}) — see run detail`}var M=`run ended`,N=`this run is over — view run detail`,P=2500,F=8;function I(){oe(`Live Run`);let{id:e}=ie(),c=g(),[l,d]=(0,w.useState)(n),[f,m]=(0,w.useState)(0),[E,D]=(0,w.useState)(!1),[O,k]=(0,w.useState)(null),[M,N]=(0,w.useState)(!1),[I,L]=(0,w.useState)(!1),R=(0,w.useRef)(void 0),z=(0,w.useRef)(l);z.current=l;let B=(0,w.useRef)(0),[V,he]=(0,w.useState)(null),[ge,_e]=(0,w.useState)(0);(0,w.useEffect)(()=>{if(!V)return;let e=new ResizeObserver(e=>{let t=e[e.length-1];t&&_e(t.contentRect.width)});return e.observe(V),()=>{e.disconnect()}},[V]),(0,w.useEffect)(()=>{e===void 0||l.verdict===void 0||c(p.runDetail(e),{replace:!0,state:{arrivedOnVerdict:l.verdict}})},[e,l.verdict,c]),(0,w.useEffect)(()=>{if(e===void 0)return;let t=!1;return N(!1),u(e).then(e=>{t||k(e.run)}).catch(()=>{t||N(!0)}),()=>{t=!0}},[e]);let H=(0,w.useCallback)(e=>{let n=Date.now();d(r=>t(r,e,n))},[]);(0,w.useEffect)(()=>{if(e===void 0)return;let t=!1,n=[],i=_(e,{lastEventId:R.current,onEvent:H,onError:(i,a)=>{if(t||a.readyState!==A||z.current.terminal)return;let o=z.current.lastSeq;re(e,{lastEventId:o}).then(e=>{if(!t)switch(e.kind){case`replay_floor`:d(t=>r(t,o,e.earliestAvailableSeq)),R.current=e.earliestAvailableSeq-1,m(e=>e+1);return;case`reattach`:R.current=o,m(e=>e+1);return;case`unknown_run`:{if(o>0||B.current>=F){D(!0);return}B.current+=1;let e=setTimeout(()=>{t||m(e=>e+1)},P);n.push(e);return}case`lost`:return}})}});return()=>{t=!0;for(let e of n)clearTimeout(e);i.close()}},[e,f,H]);let ve=(0,w.useMemo)(()=>Object.values(l.members),[l.members]),U=(0,w.useRef)(void 0),W=me({handles:l.handles,members:l.members},U.current);U.current=W;let G=te(l.verdict??O?.status??`unknown`),ye=l.verdict===void 0?`running`:o(l.verdict);i(e===void 0?`default`:ye);let be=(0,w.useCallback)(()=>{if(e===void 0||I)return;L(!0);let t={id:`cancel-${e}`};v(e).then(e=>{typeof e.message==`string`?e.outcome===`cancelled`?y.success(e.message,t):y.info(e.message,t):y.error(`Failed to cancel run`,t)}).catch(e=>{let n=e instanceof h&&e.status===409;y.error(n?e.message:`Failed to cancel run`,t)}).finally(()=>{L(!1)})},[e,I]);if(e===void 0)return(0,T.jsx)(ue,{icon:C,title:`No run selected`,description:`Select a test run to watch live execution`});let xe=O?.name??`Live Run`,Se=l.terminal||E,K=l.terminal&&l.verdict===void 0,q=l.retrievalRung,Ce=S(q===void 0?void 0:{rung:q.rung,...q.reason===void 0?{}:{reason:q.reason}}),J=fe(ge),Y=pe(J),X=J===`stacked`,Z=(0,T.jsx)(x,{id:Y.steps,defaultSize:X?`55%`:40,minSize:X?`20%`:20,children:(0,T.jsx)(`section`,{"data-live-pane":`steps`,className:`flex h-full min-h-0 min-w-[280px] flex-col overflow-y-auto`,children:(0,T.jsx)(de,{members:ve,steps:l.steps,terminal:l.terminal})})},`steps`),Q=(0,T.jsx)(x,{id:Y.preview,defaultSize:X?`45%`:60,minSize:X?`25%`:30,children:(0,T.jsx)(`section`,{"data-live-pane":`preview`,className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden`,children:(0,T.jsx)(ee,{subject:{kind:`run`,runId:e,handle:W,membersByHandle:l.members,terminal:l.terminal,runOver:E}})})},`preview`),$=(0,T.jsx)(le,{withHandle:!0},`handle`);return(0,T.jsxs)(`div`,{ref:he,className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden`,children:[(0,T.jsxs)(`div`,{className:`flex h-14 shrink-0 items-center justify-between gap-2 border-b px-3`,children:[(0,T.jsx)(`div`,{"data-tour-id":`tour-live-run-status`,className:`flex min-w-0 items-center gap-2`,children:(0,T.jsxs)(`div`,{className:`min-w-0`,children:[(0,T.jsx)(`h2`,{className:`truncate text-base font-semibold leading-tight`,children:xe}),O?.filePath!==void 0&&O.filePath!==null&&(0,T.jsx)(`div`,{className:`min-w-0 truncate text-xs text-muted-foreground`,children:O.filePath})]})}),(0,T.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[!Se&&(0,T.jsxs)(b,{variant:`ghost`,size:`sm`,onClick:be,disabled:I,className:`h-7 px-2 text-xs text-muted-foreground hover:bg-red-500/10 hover:text-red-400`,children:[(0,T.jsx)(s,{className:`size-3.5`}),I?`Cancelling...`:`Cancel`]}),(0,T.jsx)(ne,{"data-run-detail-link":!0,to:p.runDetail(e),className:`text-xs underline-offset-4 hover:underline`,children:`view run detail`})]})]}),(K||M||E||l.gap!==void 0||Ce!==void 0||l.notices.length>0)&&(0,T.jsxs)(`div`,{"data-run-meta-strip":!0,className:`flex shrink-0 flex-wrap items-center gap-3 border-b px-3 py-2 text-xs`,children:[K&&(0,T.jsxs)(`div`,{"data-terminal-state":G.normalized,className:`flex items-center gap-2`,children:[(0,T.jsx)(se,{className:ae(G.tone),children:G.label}),(0,T.jsx)(`span`,{className:`text-muted-foreground`,children:`run ended`})]}),E&&(0,T.jsx)(`p`,{"data-run-over":!0,className:`text-muted-foreground`,children:`this run is over — view run detail`}),l.gap!==void 0&&(0,T.jsx)(`p`,{"data-gap-marker":!0,className:`text-amber-500`,children:j(l.gap.from,l.gap.to)}),(0,T.jsx)(a,{variant:`live`,rung:q?.rung,reason:q?.reason}),M&&(0,T.jsx)(`p`,{"data-run-meta-unavailable":!0,className:`text-muted-foreground`,children:`run details unavailable — the live stream is unaffected`}),l.notices.map((e,t)=>(0,T.jsx)(`p`,{"data-run-notice":e.code,className:`text-amber-500`,children:e.message},`${e.code}:${String(t)}`))]}),(0,T.jsx)(ce,{orientation:X?`vertical`:`horizontal`,className:`min-h-0 flex-1 overflow-hidden`,children:X?[Q,$,Z]:[Z,$,Q]},`live-run-panels`)]})}export{M as RUN_ENDED_TEXT,N as RUN_OVER_TEXT,I as default,j as gapMarkerText};
@@ -1 +0,0 @@
1
- import{r as e}from"./chunk-CilyBKbf.js";import{a as t,o as n}from"./run-stream-reducer-BXMulZq1.js";import{t as r}from"./check-DH5_3cK-.js";import{t as i}from"./circle-dashed-WDoZ8ADk.js";import{t as a}from"./circle-DjggEctd.js";import{A as o,B as s,D as c,Kt as l,Mt as u,O as d,Sc as f,Sn as ee,Xt as p,jn as m}from"./index-CXuVkD6-.js";var h=l(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),g=e(f(),1),_=[`cdp-screencast`,`snapshot`,`mjpeg`,`webrtc`],v=[`runFinished`,`handleFinished`,`sessionEnded`],y=[`malformed`,`bad_signature`,`expired`,`scope_mismatch`,`unknown_run`,`unknown_handle`,`unknown_session`],b=[1e3,2e3,4e3],te=2500,ne=5e3,x=`?host=dashboard`,S=4404,C=4409,w=`Connecting to the preview…`,T=`Preview delayed`,E=`Reconnecting…`,D=`Disconnected`,O=`Link expired`,k=`Session ended`,A=`Run ended`,j=`This test finished while the run goes on`,M=`Live preview is not available here`,N=`no live preview for this target — the step list keeps advancing`,P=`waited for the live view, but nothing arrived — the step list keeps advancing`,F=`gave up`,I={reconnect:`Reconnect`,refresh:`Refresh`,"start-fresh":`Start fresh`},L={green:`Live preview healthy`,amber:`Live preview delayed`,red:`Live preview stopped`},R={green:`Frames are arriving from the browser.`,amber:`The newest frame is late, or the preview is reconnecting.`,red:`The preview stopped receiving frames.`};function z(e,t){return typeof t==`string`&&e.includes(t)}function B(e){return typeof e==`number`&&Number.isFinite(e)}function re(e){if(typeof e!=`object`||!e||Array.isArray(e))return;let t=e;switch(t.event){case`ready`:{let e=t.kind;return e===`none`||z(_,e)?{event:`ready`,kind:e}:void 0}case`frame`:{let{ts:e,kind:n,width:r,height:i}=t;return!B(r)||!B(i)?void 0:{event:`frame`,...B(e)?{ts:e}:{},...z(_,n)?{kind:n}:{},width:r,height:i}}case`ended`:return z(v,t.reason)?{event:`ended`,reason:t.reason}:void 0;case`refused`:return z(y,t.reason)?{event:`refused`,reason:t.reason}:void 0;case`lost`:return{event:`lost`};default:return}}var V=[`run-ended`,`member-ended`,`session-ended`];function H(){return{phase:`minting`}}function U(e){return{...e.skew===void 0?{}:{skew:e.skew},...e.gaveUp===!0?{gaveUp:!0}:{}}}function W(e){let t=(e.reconnectAttempts??0)+1,n=t<=b.length?`reconnecting`:`disconnected`;return{...e,phase:n,reconnectAttempts:t}}function G(e){if(e.gaveUp===!0)return{...U(e),phase:`no-stream`};let t=(e.waitingAttempts??0)+1;return t>=24?{...U(e),phase:`no-stream`,gaveUp:!0}:{...U(e),phase:`waiting`,waitingAttempts:t}}var K=[`live_view_unavailable`,`invalid_handle`,`cross_site_refused`];function q(e){return e.phase===`embedded`||e.phase===`reconnecting`}function J(e,t,n){switch(t.event){case`ready`:return q(e)?t.kind===`none`?{...U(e),phase:`no-stream`}:{...e,ready:t.kind}:e;case`frame`:{if(!q(e))return e;let r=t.ts===void 0?e.skew:Math.min(e.skew??1/0,n-t.ts),i=t.ts??n-(e.skew??0),a=t.kind??e.declared,{reconnectAttempts:o,...s}=e;return{...s,phase:`embedded`,...r===void 0?{}:{skew:r},frame:{ts:i,...a===void 0?{}:{kind:a},width:t.width,height:t.height,arrivedAt:n}}}case`ended`:return t.reason===`runFinished`?{...e,phase:`run-ended`}:t.reason===`handleFinished`?{...e,phase:`member-ended`}:{...e,phase:`session-ended`};case`refused`:return t.reason===`expired`?{...e,phase:`expired`}:t.reason===`unknown_session`?{...e,phase:`session-ended`}:t.reason===`unknown_run`||t.reason===`unknown_handle`?W(e):{...e,phase:`disconnected`};case`lost`:return q(e)?W(e):e}}function ie(e,t,n){if(t.type===`reset`)return H();if(t.type===`subject-over`)return{...e,phase:t.reason};if(V.includes(e.phase))return e;switch(t.type){case`mint-started`:case`lost-scheduled`:return e;case`wait-unanswered`:return e.phase===`waiting`?G(e):e;case`minted`:{if(t.stream.kind===`none`)return t.memberAnswered?{...U(e),phase:`no-stream`}:G(e);let n=t.stream.kind;return q(e)?{...e,declared:n}:e.phase!==`minting`&&e.phase!==`waiting`?e:{...U(e),phase:`embedded`,declared:n}}case`mint-refused`:return t.word===`unknown_session`?{...e,phase:`session-ended`}:t.word===`unknown_run`?G(e):K.includes(t.word)?{...e,phase:`unavailable`}:W(e);case`renew-failed`:return{...e,phase:`expired`};case`embed`:return J(e,t.report,n);case`retry`:return{...U(e),phase:`minting`}}}function Y(e,t){let n=e.frame;return{snapshot:!1,...t,...n===void 0?{}:{frameSize:{width:n.width,height:n.height}}}}function ae(e,t){switch(e.phase){case`minting`:return Y(e,{state:`loading`,words:w});case`waiting`:return Y(e,{state:`waiting`,words:w});case`embedded`:{let n=e.frame;return n===void 0?Y(e,{state:`loading`,words:w}):t-(n.ts+(e.skew??0))<5e3?Y(e,{state:`live`,dot:`green`,snapshot:n.kind===`snapshot`}):Y(e,{state:`delayed`,dot:`amber`,words:T})}case`reconnecting`:return Y(e,{state:`reconnecting`,dot:`amber`,words:E,retryInMs:b[Math.min(Math.max(e.reconnectAttempts??1,1),b.length)-1]});case`disconnected`:return Y(e,{state:`disconnected`,dot:`red`,words:D,action:`reconnect`});case`expired`:return Y(e,{state:`expired`,dot:`red`,words:O,action:`refresh`});case`session-ended`:return Y(e,{state:`session-ended`,dot:`red`,words:k,action:`start-fresh`});case`run-ended`:return Y(e,{state:`run-ended`,words:A});case`member-ended`:return Y(e,{state:`member-ended`,words:j});case`no-stream`:return e.gaveUp===!0?Y(e,{state:`no-stream`,words:P,label:F}):Y(e,{state:`no-stream`,words:N});case`unavailable`:return Y(e,{state:`unavailable`,words:M})}}var X=p(),Z=`focus-visible:outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50`;function oe({state:e}){let t=(0,g.useId)();return(0,X.jsxs)(c,{children:[(0,X.jsx)(o,{asChild:!0,children:(0,X.jsx)(`button`,{type:`button`,"data-live-dot":e,"aria-label":L[e],"aria-describedby":t,className:`inline-flex size-5 shrink-0 cursor-help items-center justify-center rounded-full ${Z}`,children:(0,X.jsx)(`span`,{"data-live-dot-mark":!0,"aria-hidden":!0,className:`live-dot live-dot-${e}`})})}),(0,X.jsx)(`span`,{id:t,hidden:!0,children:R[e]}),(0,X.jsx)(d,{side:`bottom`,align:`end`,sideOffset:4,className:`max-w-[280px] text-left`,children:R[e]})]})}function se({status:e,children:t}){let n=g.Children.toArray(e),r=g.Children.toArray(t);return n.length===0&&r.length===0?null:(0,X.jsxs)(`div`,{"data-preview-chrome":!0,className:`flex min-h-9 shrink-0 flex-wrap items-center gap-2 border-b px-2 py-1 text-xs`,children:[n,r]})}var ce=1e3,le=new Set([`loading`,`live`,`delayed`,`reconnecting`,`disconnected`,`expired`]),ue=new Set([`loading`,`live`,`delayed`]),de=`focus-visible:outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50`;function fe(e){let t=e.indexOf(`#`),n=t===-1?e:e.slice(0,t),r=t===-1?``:e.slice(t);return`${n}${n.includes(`?`)?`&${x.slice(1)}`:x}${r}`}function Q({subject:e,chrome:t}){let n=e.kind,r=e.kind===`run`?e.runId:e.sessionId,i=e.kind===`run`?e.terminal||e.runOver:e.sessionGone,a=e.kind===`run`?`run-ended`:`session-ended`,o=e.kind===`run`?e.handle:0,s=(0,g.useRef)(H()),[c,l]=(0,g.useState)(s.current),[u,d]=(0,g.useState)(()=>Date.now()),[f,p]=(0,g.useState)(void 0),[h,_]=(0,g.useState)(void 0),[v,y]=(0,g.useState)(0),[b,x]=(0,g.useState)(0),S=(0,g.useRef)(null),C=e.kind===`run`?e.membersByHandle[o]:void 0,w=e.kind===`editor`||C?.sawStepStarted===!0||C?.outcome!==void 0,T=(0,g.useRef)(w);T.current=w;let E=(0,g.useRef)(void 0);E.current=e.kind===`editor`?e.onStartFresh:void 0;let D=(0,g.useRef)(0),O=(0,g.useRef)(!1),k=(0,g.useRef)(void 0),A=(0,g.useRef)(void 0),j=(0,g.useRef)(void 0),[M,N]=(0,g.useState)(0),P=(0,g.useCallback)(e=>{let t=Date.now(),n=ie(s.current,e,t);return s.current=n,l(n),d(t),n},[]),F=(0,g.useCallback)(()=>{D.current+=1,O.current=!1,k.current=void 0,A.current=void 0,j.current=void 0,N(0),p(void 0)},[]),L=(0,g.useCallback)(e=>{let t=D.current+1;D.current=t,O.current=!0,P({type:`mint-started`}),(n===`run`?m(r,o):ee(r)).then(n=>{D.current===t&&(O.current=!1,_(void 0),N(0),n.stream.kind===`none`?(k.current=void 0,A.current=void 0,j.current=void 0,p(void 0)):(k.current=Date.now(),A.current=Math.max(0,n.expiresAt-Date.now()),j.current=n.expiresAt,p({liveUrl:n.liveUrl,expiresAt:n.expiresAt}),e===`remount`&&y(e=>e+1)),P({type:`minted`,stream:n.stream,memberAnswered:T.current}))},n=>{if(D.current!==t)return;if(O.current=!1,e===`renew`){let e=j.current;if(e!==void 0&&Date.now()<e){N(e=>e+1);return}k.current=void 0,A.current=void 0,j.current=void 0,P({type:`renew-failed`});return}k.current=void 0,A.current=void 0,j.current=void 0,p(void 0);let r=n instanceof Error?n.message:`live_url_mint_failed`;_(r),P({type:`mint-refused`,word:r})})},[P,n,r,o]);(0,g.useEffect)(()=>(i?P({type:`subject-over`,reason:a}):L(`open`),()=>{F(),P({type:`reset`})}),[i,a,L,F,P]),(0,g.useEffect)(()=>{let e=e=>{let t=S.current?.contentWindow;if(t==null||e.source!==t)return;let n=re(e.data);n!==void 0&&P({type:`embed`,report:n})};return window.addEventListener(`message`,e),()=>{window.removeEventListener(`message`,e)}},[P]);let R=ae(c,u),z=f!==void 0&&le.has(R.state),B=f!==void 0&&ue.has(R.state),V=R.state===`reconnecting`?R.retryInMs:void 0,U=c.reconnectAttempts,W=n===`run`&&R.state===`waiting`;(0,g.useEffect)(()=>{if(!z)return;let e=setInterval(()=>{d(Date.now())},ce);return()=>{clearInterval(e)}},[z]),(0,g.useEffect)(()=>{if(!W)return;let e=setTimeout(()=>{if(s.current.phase===`waiting`){if(x(e=>e+1),O.current){P({type:`wait-unanswered`}).phase!==`waiting`&&F();return}L(`open`)}},te);return()=>{clearTimeout(e)}},[W,b,P,F,L]),(0,g.useEffect)(()=>{if(!B||f===void 0)return;let e=f.expiresAt-Date.now(),t=M===0?Math.max(0,e/2):Math.max(0,Math.min(ne,e)),n=setTimeout(()=>{L(`renew`)},t);return()=>{clearTimeout(n)}},[B,f,M,L]),(0,g.useEffect)(()=>{if(!B)return;let e=()=>{if(document.visibilityState!==`visible`)return;let e=k.current,t=A.current;e===void 0||t===void 0||Date.now()-e<t/2||L(`renew`)};return document.addEventListener(`visibilitychange`,e),()=>{document.removeEventListener(`visibilitychange`,e)}},[B,L]),(0,g.useEffect)(()=>{if(V===void 0)return;P({type:`lost-scheduled`});let e=setTimeout(()=>{L(`remount`)},V);return()=>{clearTimeout(e)}},[V,U,P,L]);let G=e=>{if(e===`start-fresh`){E.current?.();return}F(),P({type:`retry`}),L(`remount`)},K=R.frameSize,q=K===void 0||K.width<=0||K.height<=0?{width:16,height:9}:K,J=R.dot===void 0?null:(0,X.jsx)(oe,{state:R.dot}),Y=R.action===void 0?null:(0,X.jsx)(`button`,{type:`button`,"data-preview-action":R.action,onClick:()=>{R.action!==void 0&&G(R.action)},className:`rounded-sm border bg-background px-1.5 py-0.5 text-xs font-medium text-foreground shadow-sm hover:bg-muted ${de}`,children:I[R.action]}),Z=(J!==null||z)&&(R.words!==void 0||R.snapshot||Y!==null),Q=Z?(0,X.jsxs)(`div`,{"data-preview-corner":!0,className:`flex min-w-0 flex-wrap items-center gap-2`,children:[R.snapshot&&(0,X.jsx)(`span`,{"data-snapshot-label":!0,className:`text-xs text-muted-foreground`,children:`Snapshot preview · updates every 1s`}),R.words!==void 0&&(0,X.jsx)(`span`,{"data-preview-words":!0,className:`text-xs text-foreground`,children:R.words}),Y]}):null;return(0,X.jsxs)(`section`,{"data-live-preview":!0,"data-preview-subject":n,"data-preview-state":R.state,className:`flex h-full min-h-0 flex-col`,children:[(0,X.jsx)(se,{status:Q,children:t}),(0,X.jsxs)(`div`,{className:`relative flex min-h-0 flex-1 items-center justify-center [container-type:size]${J===null?``:` pt-8`}`,children:[J!==null&&(0,X.jsx)(`div`,{"data-preview-dot-corner":!0,className:`absolute right-1 top-1 z-10`,children:J}),z&&f!==void 0?(0,X.jsx)(`div`,{"data-preview-frame":!0,className:`max-h-full max-w-full`,style:{aspectRatio:`${String(q.width)} / ${String(q.height)}`,width:`min(100cqw, calc(100cqh * ${String(q.width)} / ${String(q.height)}))`},children:(0,X.jsx)(`iframe`,{ref:S,"data-live-embed":!0,sandbox:`allow-scripts`,src:fe(f.liveUrl),title:`live preview`,className:`size-full border-0`},v)}):!Z&&R.words!==void 0&&(0,X.jsxs)(`div`,{className:`flex flex-col items-center gap-2 p-6 text-center`,children:[R.label!==void 0&&(0,X.jsx)(`span`,{"data-preview-reason-label":!0,className:`rounded-sm border border-amber-500/20 bg-amber-500/15 px-1.5 py-0.5 text-xs text-amber-500`,children:R.label}),(0,X.jsx)(`p`,{"data-preview-sentence":!0,...R.state===`no-stream`?{"data-preview-reason":R.label===void 0?`declared`:`gave-up`}:{},...R.state===`unavailable`&&h!==void 0?{"data-preview-error":h}:{},className:`text-sm text-muted-foreground`,children:R.words})]})]})]})}var pe={pending:`pending`,running:`running`,passed:`passed`,failed:`failed`,healed:`healed`,skipped:`skipped`,cancelled:`cancelled`};function me(e){return e}function $(e){return typeof e.text==`string`&&e.text.trim()!==``}var he={pending:i,running:a,passed:r,failed:u,healed:t,skipped:h,cancelled:n},ge={pending:`text-muted-foreground`,running:`text-blue-500`,passed:`text-emerald-500`,failed:`text-red-400`,healed:`text-amber-500`,skipped:`text-muted-foreground`,cancelled:`text-muted-foreground`};function _e({row:e}){if(!$(e))return null;let t=he[e.status];return(0,X.jsxs)(`li`,{"data-step-status":e.status,"data-step-ticks":String(e.ticks),className:`flex items-start gap-2 border-b border-border/40 px-3 py-1.5 text-sm last:border-b-0`,children:[(0,X.jsx)(`span`,{role:`img`,"aria-label":pe[e.status],className:`inline-flex h-5 shrink-0 items-center`,children:(0,X.jsx)(t,{className:s(`size-3.5`,ge[e.status]),"aria-hidden":`true`})}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 whitespace-normal break-words leading-5 [overflow-wrap:anywhere]`,children:me(e.text)})]})}export{C as a,S as i,$ as n,Q as r,_e as t};
@@ -1 +0,0 @@
1
- import{Kt as e}from"./index-CXuVkD6-.js";var t=e(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]);export{t};
@@ -1 +0,0 @@
1
- import{r as e}from"./chunk-CilyBKbf.js";import{$ as t,B as n,Ct as r,Dt as i,Q as a,Sc as o,Tt as s,X as c,Xt as l,Y as u,Z as d,bt as f,dt as p,ft as m,gt as h,ht as g,jt as _,kt as v,mt as y,pt as b,xt as x,yt as S}from"./index-CXuVkD6-.js";var C=e(o(),1),w=l(),T=`Popover`,[E,ee]=s(T,[t]),D=t(),[O,k]=E(T),A=e=>{let{__scopePopover:t,children:n,open:r,defaultOpen:i,onOpenChange:o,modal:s=!1}=e,c=D(t),l=C.useRef(null),[u,d]=C.useState(!1),[f,p]=x({prop:r,defaultProp:i??!1,onChange:o,caller:T});return(0,w.jsx)(a,{...c,children:(0,w.jsx)(O,{scope:t,contentId:S(),triggerRef:l,open:f,onOpenChange:p,onOpenToggle:C.useCallback(()=>p(e=>!e),[p]),hasCustomAnchor:u,onCustomAnchorAdd:C.useCallback(()=>d(!0),[]),onCustomAnchorRemove:C.useCallback(()=>d(!1),[]),modal:s,children:n})})};A.displayName=T;var j=`PopoverAnchor`,M=C.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=k(j,n),a=D(n),{onCustomAnchorAdd:o,onCustomAnchorRemove:s}=i;return C.useEffect(()=>(o(),()=>s()),[o,s]),(0,w.jsx)(u,{...a,...r,ref:t})});M.displayName=j;var N=`PopoverTrigger`,P=C.forwardRef((e,t)=>{let{__scopePopover:n,...a}=e,o=k(N,n),s=D(n),c=_(t,o.triggerRef),l=(0,w.jsx)(i.button,{type:`button`,"aria-haspopup":`dialog`,"aria-expanded":o.open,"aria-controls":o.contentId,"data-state":Y(o.open),...a,ref:c,onClick:r(e.onClick,o.onOpenToggle)});return o.hasCustomAnchor?l:(0,w.jsx)(u,{asChild:!0,...s,children:l})});P.displayName=N;var F=`PopoverPortal`,[I,L]=E(F,{forceMount:void 0}),R=e=>{let{__scopePopover:t,forceMount:n,children:r,container:i}=e,a=k(F,t);return(0,w.jsx)(I,{scope:t,forceMount:n,children:(0,w.jsx)(f,{present:n||a.open,children:(0,w.jsx)(y,{asChild:!0,container:i,children:r})})})};R.displayName=F;var z=`PopoverContent`,B=C.forwardRef((e,t)=>{let n=L(z,e.__scopePopover),{forceMount:r=n.forceMount,...i}=e,a=k(z,e.__scopePopover);return(0,w.jsx)(f,{present:r||a.open,children:a.modal?(0,w.jsx)(H,{...i,ref:t}):(0,w.jsx)(U,{...i,ref:t})})});B.displayName=z;var V=v(`PopoverContent.RemoveScroll`),H=C.forwardRef((e,t)=>{let n=k(z,e.__scopePopover),i=C.useRef(null),a=_(t,i),o=C.useRef(!1);return C.useEffect(()=>{let e=i.current;if(e)return p(e)},[]),(0,w.jsx)(m,{as:V,allowPinchZoom:!0,children:(0,w.jsx)(W,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:r(e.onCloseAutoFocus,e=>{e.preventDefault(),o.current||n.triggerRef.current?.focus()}),onPointerDownOutside:r(e.onPointerDownOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0;o.current=t.button===2||n},{checkForDefaultPrevented:!1}),onFocusOutside:r(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),U=C.forwardRef((e,t)=>{let n=k(z,e.__scopePopover),r=C.useRef(!1),i=C.useRef(!1);return(0,w.jsx)(W,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:t=>{e.onCloseAutoFocus?.(t),t.defaultPrevented||(r.current||n.triggerRef.current?.focus(),t.preventDefault()),r.current=!1,i.current=!1},onInteractOutside:t=>{e.onInteractOutside?.(t),t.defaultPrevented||(r.current=!0,t.detail.originalEvent.type===`pointerdown`&&(i.current=!0));let a=t.target;n.triggerRef.current?.contains(a)&&t.preventDefault(),t.detail.originalEvent.type===`focusin`&&i.current&&t.preventDefault()}})}),W=C.forwardRef((e,t)=>{let{__scopePopover:n,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:a,disableOutsidePointerEvents:o,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onInteractOutside:u,...f}=e,p=k(z,n),m=D(n);return b(),(0,w.jsx)(g,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:a,children:(0,w.jsx)(h,{asChild:!0,disableOutsidePointerEvents:o,onInteractOutside:u,onEscapeKeyDown:s,onPointerDownOutside:c,onFocusOutside:l,onDismiss:()=>p.onOpenChange(!1),children:(0,w.jsx)(d,{"data-state":Y(p.open),role:`dialog`,id:p.contentId,...m,...f,ref:t,style:{...f.style,"--radix-popover-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-popover-content-available-width":`var(--radix-popper-available-width)`,"--radix-popover-content-available-height":`var(--radix-popper-available-height)`,"--radix-popover-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-popover-trigger-height":`var(--radix-popper-anchor-height)`}})})})}),G=`PopoverClose`,K=C.forwardRef((e,t)=>{let{__scopePopover:n,...a}=e,o=k(G,n);return(0,w.jsx)(i.button,{type:`button`,...a,ref:t,onClick:r(e.onClick,()=>o.onOpenChange(!1))})});K.displayName=G;var q=`PopoverArrow`,J=C.forwardRef((e,t)=>{let{__scopePopover:n,...r}=e,i=D(n);return(0,w.jsx)(c,{...i,...r,ref:t})});J.displayName=q;function Y(e){return e?`open`:`closed`}var X=A,Z=P,Q=R,$=B;function te({...e}){return(0,w.jsx)(X,{"data-slot":`popover`,...e})}function ne({...e}){return(0,w.jsx)(Z,{"data-slot":`popover-trigger`,...e})}function re({className:e,align:t=`center`,sideOffset:r=4,...i}){return(0,w.jsx)(Q,{children:(0,w.jsx)($,{"data-slot":`popover-content`,align:t,sideOffset:r,className:n(`z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95`,e),...i})})}export{re as n,ne as r,te as t};
@@ -1 +0,0 @@
1
- import{r as e}from"./chunk-CilyBKbf.js";import{o as t}from"./select-JI5Kadjp.js";import{t as n}from"./circle-DjggEctd.js";import{B as r,Ct as i,Dt as a,J as o,K as s,Kt as c,Sc as l,Tt as u,Xt as d,bt as f,et as p,jt as m,q as h,vt as g,xt as _}from"./index-CXuVkD6-.js";var v=c(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),y=e(l(),1),b=d(),x=`Radio`,[S,C]=u(x),[w,T]=S(x),E=y.forwardRef((e,t)=>{let{__scopeRadio:n,name:r,checked:o=!1,required:s,disabled:c,value:l=`on`,onCheck:u,form:d,...f}=e,[p,h]=y.useState(null),g=m(t,e=>h(e)),_=y.useRef(!1),v=p?d||!!p.closest(`form`):!0;return(0,b.jsxs)(w,{scope:n,checked:o,disabled:c,children:[(0,b.jsx)(a.button,{type:`button`,role:`radio`,"aria-checked":o,"data-state":j(o),"data-disabled":c?``:void 0,disabled:c,value:l,...f,ref:g,onClick:i(e.onClick,e=>{o||u?.(),v&&(_.current=e.isPropagationStopped(),_.current||e.stopPropagation())})}),v&&(0,b.jsx)(A,{control:p,bubbles:!_.current,name:r,value:l,checked:o,required:s,disabled:c,form:d,style:{transform:`translateX(-100%)`}})]})});E.displayName=x;var D=`RadioIndicator`,O=y.forwardRef((e,t)=>{let{__scopeRadio:n,forceMount:r,...i}=e,o=T(D,n);return(0,b.jsx)(f,{present:r||o.checked,children:(0,b.jsx)(a.span,{"data-state":j(o.checked),"data-disabled":o.disabled?``:void 0,...i,ref:t})})});O.displayName=D;var k=`RadioBubbleInput`,A=y.forwardRef(({__scopeRadio:e,control:n,checked:r,bubbles:i=!0,...o},s)=>{let c=y.useRef(null),l=m(c,s),u=t(r),d=p(n);return y.useEffect(()=>{let e=c.current;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set;if(u!==r&&n){let t=new Event(`click`,{bubbles:i});n.call(e,r),e.dispatchEvent(t)}},[u,r,i]),(0,b.jsx)(a.input,{type:`radio`,"aria-hidden":!0,defaultChecked:r,...o,tabIndex:-1,ref:l,style:{...o.style,...d,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0}})});A.displayName=k;function j(e){return e?`checked`:`unchecked`}var M=[`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`],N=`RadioGroup`,[P,F]=u(N,[o,C]),I=o(),L=C(),[R,z]=P(N),B=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,name:r,defaultValue:i,value:o,required:s=!1,disabled:c=!1,orientation:l,dir:u,loop:d=!0,onValueChange:f,...p}=e,m=I(n),v=g(u),[y,x]=_({prop:o,defaultProp:i??null,onChange:f,caller:N});return(0,b.jsx)(R,{scope:n,name:r,required:s,disabled:c,value:y,onValueChange:x,children:(0,b.jsx)(h,{asChild:!0,...m,orientation:l,dir:v,loop:d,children:(0,b.jsx)(a.div,{role:`radiogroup`,"aria-required":s,"aria-orientation":l,"data-disabled":c?``:void 0,dir:v,...p,ref:t})})})});B.displayName=N;var V=`RadioGroupItem`,H=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,disabled:r,...a}=e,o=z(V,n),c=o.disabled||r,l=I(n),u=L(n),d=y.useRef(null),f=m(t,d),p=o.value===a.value,h=y.useRef(!1);return y.useEffect(()=>{let e=e=>{M.includes(e.key)&&(h.current=!0)},t=()=>h.current=!1;return document.addEventListener(`keydown`,e),document.addEventListener(`keyup`,t),()=>{document.removeEventListener(`keydown`,e),document.removeEventListener(`keyup`,t)}},[]),(0,b.jsx)(s,{asChild:!0,...l,focusable:!c,active:p,children:(0,b.jsx)(E,{disabled:c,required:o.required,checked:p,...u,...a,name:o.name,ref:f,onCheck:()=>o.onValueChange(a.value),onKeyDown:i(e=>{e.key===`Enter`&&e.preventDefault()}),onFocus:i(a.onFocus,()=>{h.current&&d.current?.click()})})})});H.displayName=V;var U=`RadioGroupIndicator`,W=y.forwardRef((e,t)=>{let{__scopeRadioGroup:n,...r}=e;return(0,b.jsx)(O,{...L(n),...r,ref:t})});W.displayName=U;var G=B,K=H,q=W;function J({className:e,...t}){return(0,b.jsx)(G,{"data-slot":`radio-group`,className:r(`grid gap-2`,e),...t})}function Y({className:e,...t}){return(0,b.jsx)(K,{"data-slot":`radio-group-item`,className:r(`aspect-square size-4 shrink-0 rounded-full border border-input text-primary shadow-xs transition-[color,box-shadow] outline-none`,`focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50`,`aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 dark:bg-input/30`,`disabled:cursor-not-allowed disabled:opacity-50`,e),...t,children:(0,b.jsx)(q,{"data-slot":`radio-group-indicator`,className:`relative flex items-center justify-center`,children:(0,b.jsx)(n,{className:`absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-primary`})})})}export{Y as n,v as r,J as t};