sparkforensics-server 0.6.0 → 0.8.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.
Files changed (410) hide show
  1. package/index.js +16 -7
  2. package/package.json +1 -1
  3. package/public/assets/AutoscalingChurn-DenWKTv-.js +1 -0
  4. package/public/assets/CacheUtilization-DLz7NdjV.js +1 -0
  5. package/public/assets/CachingOpportunity-zpQIqhzm.js +1 -0
  6. package/public/assets/ChartTheme-DAiARbLP.js +8 -0
  7. package/public/assets/ColdStart-C-9HjxWl.js +1 -0
  8. package/public/assets/ConfigAudit-D0V9tcrJ.js +1 -0
  9. package/public/assets/CoreUsageArea-yeerrljd.js +1 -0
  10. package/public/assets/Dashboard-DkUPrHKV.js +1 -0
  11. package/public/assets/DisclosureContext-DK1_iz6J.js +1 -0
  12. package/public/assets/DuplicatePlanSubtree-xDNDbCd3.js +1 -0
  13. package/public/assets/DurationHistogram-B6jsE0Ov.js +1 -0
  14. package/public/assets/EmptyState-C1uL40VU.js +1 -0
  15. package/public/assets/ExecutorUtilization-DXDZKmSc.js +1 -0
  16. package/public/assets/GcPressure-MRf7I4IG.js +1 -0
  17. package/public/assets/ImpactEstimate-Dm3xWbzV.js +1 -0
  18. package/public/assets/IncompleteRun-CaLOhMtf.js +1 -0
  19. package/public/assets/JobFailures-CzmzlvhO.js +1 -0
  20. package/public/assets/MemoryUtilization-AWUMUjCH.js +1 -0
  21. package/public/assets/NestedLoopJoin-C9sNr6Ss.js +1 -0
  22. package/public/assets/OverBroadcast-BOmRE6ca.js +1 -0
  23. package/public/assets/PartitionHint-BL2EmJfE.js +1 -0
  24. package/public/assets/PartitionSizing-BzBySvUq.js +1 -0
  25. package/public/assets/PlanExplorer-DdiQRcJU.js +1 -0
  26. package/public/assets/PlanGraphRoute-CIH9gBuR.js +1 -0
  27. package/public/assets/PlanView-B1hxzFRs.js +2 -0
  28. package/public/assets/PythonUdf-DvgCCueD.js +1 -0
  29. package/public/assets/RetryWaste-uXXu_CyM.js +1 -0
  30. package/public/assets/RowPagination-C-LzWkI5.js +1 -0
  31. package/public/assets/RowStatusCluster-Dbtmte7l.js +1 -0
  32. package/public/assets/ShuffleIO-nALwzC1_.js +1 -0
  33. package/public/assets/Skew-CHMEKgvk.js +1 -0
  34. package/public/assets/SlowHost-yyvjpHk6.js +1 -0
  35. package/public/assets/SmallFiles-y6odJ97n.js +1 -0
  36. package/public/assets/SpeculationWaste-C-SD2LOt.js +1 -0
  37. package/public/assets/Spill-DHTMmOup.js +1 -0
  38. package/public/assets/StageFailed-CQ3DxC9R.js +1 -0
  39. package/public/assets/StageFindingGroup-BgYLyj5q.js +1 -0
  40. package/public/assets/StageHeader-CIETkjVZ.js +1 -0
  41. package/public/assets/StagePill--P7PDd3s.js +1 -0
  42. package/public/assets/StageShape-BIv8vx_o.js +1 -0
  43. package/public/assets/StageSlowness-MMqzERxN.js +1 -0
  44. package/public/assets/Straggler-BgrY7AyW.js +1 -0
  45. package/public/assets/TaskFailures-BHHyKYTs.js +1 -0
  46. package/public/assets/TinyTask-DDScNhCl.js +1 -0
  47. package/public/assets/UnderBroadcast-CGIC04TI.js +1 -0
  48. package/public/assets/WidgetLeadSummary-CXFZP00C.js +1 -0
  49. package/public/assets/button-DbpTz2yk.js +1 -0
  50. package/public/assets/charts-vendor-CtTxwTeu.js +59 -0
  51. package/public/assets/composite-C9Nu2EI9.js +1 -0
  52. package/public/assets/d3-vendor-DNlD2-cz.js +1 -0
  53. package/public/assets/detector-registry-Bp8hrLua.js +2 -0
  54. package/public/assets/downsample-WmNM1qc9.js +1 -0
  55. package/public/assets/finding-anchor-Dr40LkS9.js +1 -0
  56. package/public/assets/findings-of-type-BL2u3RGZ.js +1 -0
  57. package/public/assets/impact-sort-mC5ISgX8.js +1 -0
  58. package/public/assets/inbox-KPU1Gppm.js +1 -0
  59. package/public/assets/index-CaRVPvAT.css +2 -0
  60. package/public/assets/index-fDiwfuoO.js +14 -0
  61. package/public/assets/inertValue-L9VxV0VE.js +1 -0
  62. package/public/assets/layout.worker-CLcBHxVp.js +3 -0
  63. package/public/assets/{parser-worker-CA5RxqKc.js → parser-worker-CRIOPMOW.js} +8 -8
  64. package/public/assets/plan-graph-vendor-Ce6d4HU6.js +7 -0
  65. package/public/assets/react-vendor-C6KcUD36.js +9 -0
  66. package/public/assets/select-BHqOqun5.js +1 -0
  67. package/public/assets/toggle-DPeN6aNa.js +1 -0
  68. package/public/assets/toggle-group-Kl3uyHSr.js +1 -0
  69. package/public/assets/usePagedRows-BafD6bEN.js +1 -0
  70. package/public/assets/useRecentFiles-DzJZAoOT.js +3 -0
  71. package/public/assets/useRegisterFieldControl-pQv-ZDoU.js +1 -0
  72. package/public/assets/useScrollLock-BCxn_dMp.js +1 -0
  73. package/public/assets/useSortMode-DjrAN-z4.js +1 -0
  74. package/public/docs/404.html +3 -3
  75. package/public/docs/assets/{app.CnWL6bKV.js → app.1gvzd5Zb.js} +1 -1
  76. package/public/docs/assets/chunks/@localSearchIndexroot.DS2TQP5_.js +1 -0
  77. package/public/docs/assets/chunks/{VPLocalSearchBox.C0IBKeRQ.js → VPLocalSearchBox.CNxT3s0I.js} +1 -1
  78. package/public/docs/assets/chunks/{theme.BH-2HuRf.js → theme.C5lLqUv7.js} +2 -2
  79. package/public/docs/assets/contributor-guide_architecture_board-widgets.md.CqKM_jEG.js +1 -0
  80. package/public/docs/assets/contributor-guide_architecture_board-widgets.md.CqKM_jEG.lean.js +1 -0
  81. package/public/docs/assets/{contributor-guide_architecture_board-widgets_caching-and-memory.md.CQgn1t_M.js → contributor-guide_architecture_board-widgets_caching-and-memory.md.BYDo3ClR.js} +1 -1
  82. package/public/docs/assets/contributor-guide_architecture_board-widgets_plan-advisor.md.ajUAVdbc.js +1 -0
  83. package/public/docs/assets/{contributor-guide_architecture_board-widgets_visual-system-and-templating.md.wulOueeB.js → contributor-guide_architecture_board-widgets_visual-system-and-templating.md.WqY74T0T.js} +1 -1
  84. package/public/docs/assets/contributor-guide_architecture_board-widgets_visual-system-and-templating.md.WqY74T0T.lean.js +1 -0
  85. package/public/docs/assets/contributor-guide_architecture_detector-contract.md.CHHgywoP.js +1 -0
  86. package/public/docs/assets/{contributor-guide_architecture_detector-contract.md.N4hhenrA.lean.js → contributor-guide_architecture_detector-contract.md.CHHgywoP.lean.js} +1 -1
  87. package/public/docs/assets/contributor-guide_architecture_detector-contract_plan-attribution.md.DIz3_oz9.js +1 -0
  88. package/public/docs/assets/contributor-guide_architecture_detector-contract_plan-attribution.md.DIz3_oz9.lean.js +1 -0
  89. package/public/docs/assets/contributor-guide_architecture_detector-contract_threshold-tables.md.WH4tRHPL.js +1 -0
  90. package/public/docs/assets/{contributor-guide_architecture_detector-contract_threshold-tables.md.Dp3c40rx.lean.js → contributor-guide_architecture_detector-contract_threshold-tables.md.WH4tRHPL.lean.js} +1 -1
  91. package/public/docs/assets/{contributor-guide_architecture_drill-down.md.CqZPrdo9.js → contributor-guide_architecture_drill-down.md.yB-Hz2XT.js} +1 -1
  92. package/public/docs/assets/{contributor-guide_architecture_drill-down.md.CqZPrdo9.lean.js → contributor-guide_architecture_drill-down.md.yB-Hz2XT.lean.js} +1 -1
  93. package/public/docs/assets/contributor-guide_architecture_drill-down_plan-graph.md.BQZE04sw.js +1 -0
  94. package/public/docs/assets/{contributor-guide_architecture_drill-down_plan-graph.md.DwOozIEs.lean.js → contributor-guide_architecture_drill-down_plan-graph.md.BQZE04sw.lean.js} +1 -1
  95. package/public/docs/assets/contributor-guide_architecture_impact-estimation.md.K71YB-Rr.js +1 -0
  96. package/public/docs/assets/{contributor-guide_architecture_impact-estimation.md.DfvbqEUu.lean.js → contributor-guide_architecture_impact-estimation.md.K71YB-Rr.lean.js} +1 -1
  97. package/public/docs/assets/contributor-guide_architecture_impact-estimation_caveats-tuning-and-coverage.md.DLCAffwn.js +1 -0
  98. package/public/docs/assets/{contributor-guide_architecture_impact-estimation_caveats-tuning-and-coverage.md.Cwm1jHmn.lean.js → contributor-guide_architecture_impact-estimation_caveats-tuning-and-coverage.md.DLCAffwn.lean.js} +1 -1
  99. package/public/docs/assets/contributor-guide_architecture_impact-estimation_stage-union-rollup.md.JFrzDMwo.js +1 -0
  100. package/public/docs/assets/contributor-guide_architecture_impact-estimation_stage-union-rollup.md.JFrzDMwo.lean.js +1 -0
  101. package/public/docs/assets/contributor-guide_architecture_overview.md.nxkpOhgf.js +1 -0
  102. package/public/docs/assets/contributor-guide_architecture_state-and-history_run-comparison-internals.md.U-9KMDFK.js +1 -0
  103. package/public/docs/assets/{contributor-guide_architecture_state-and-history_run-comparison-internals.md.CZA0JLtV.lean.js → contributor-guide_architecture_state-and-history_run-comparison-internals.md.U-9KMDFK.lean.js} +1 -1
  104. package/public/docs/assets/contributor-guide_architecture_widget-rendering.md.BrSz8Ezh.js +1 -0
  105. package/public/docs/assets/contributor-guide_architecture_widget-rendering_findings-tab.md.B7rjSF_h.js +1 -0
  106. package/public/docs/assets/contributor-guide_architecture_widget-rendering_findings-tab.md.B7rjSF_h.lean.js +1 -0
  107. package/public/docs/assets/{contributor-guide_architecture_widget-rendering_list-sort-mode.md.BuHKgH0C.js → contributor-guide_architecture_widget-rendering_list-sort-mode.md.37hcZJ7q.js} +1 -1
  108. package/public/docs/assets/{contributor-guide_architecture_widget-rendering_row-expand-contract.md.ZT89u9f1.js → contributor-guide_architecture_widget-rendering_row-expand-contract.md.mK_VmAWk.js} +1 -1
  109. package/public/docs/assets/{contributor-guide_architecture_worker-protocol.md.BAnhi2-d.js → contributor-guide_architecture_worker-protocol.md.Br6OE7RW.js} +1 -1
  110. package/public/docs/assets/contributor-guide_architecture_worker-protocol.md.Br6OE7RW.lean.js +1 -0
  111. package/public/docs/assets/contributor-guide_architecture_worker-protocol_cli-and-mcp.md.IVyaXrGe.js +1 -0
  112. package/public/docs/assets/{contributor-guide_architecture_worker-protocol_cli-and-mcp.md.BX1XnFbq.lean.js → contributor-guide_architecture_worker-protocol_cli-and-mcp.md.IVyaXrGe.lean.js} +1 -1
  113. package/public/docs/assets/{contributor-guide_architecture_worker-protocol_core-and-event-validation.md.DSVFPpWb.js → contributor-guide_architecture_worker-protocol_core-and-event-validation.md.DVSXn-bb.js} +1 -1
  114. package/public/docs/assets/{contributor-guide_architecture_worker-protocol_evidence-availability.md.CjimIDBY.js → contributor-guide_architecture_worker-protocol_evidence-availability.md.D3S5cyOW.js} +2 -2
  115. package/public/docs/assets/{contributor-guide_architecture_worker-protocol_evidence-availability.md.CjimIDBY.lean.js → contributor-guide_architecture_worker-protocol_evidence-availability.md.D3S5cyOW.lean.js} +1 -1
  116. package/public/docs/assets/contributor-guide_architecture_worker-protocol_evidence-report.md.CtmCU57I.js +1 -0
  117. package/public/docs/assets/{contributor-guide_architecture_worker-protocol_evidence-report.md.CiQl1MLb.lean.js → contributor-guide_architecture_worker-protocol_evidence-report.md.CtmCU57I.lean.js} +1 -1
  118. package/public/docs/assets/contributor-guide_contributing.md.DBW4drtZ.js +1 -0
  119. package/public/docs/assets/contributor-guide_development-setup.md.B21ZTDhn.js +15 -0
  120. package/public/docs/assets/contributor-guide_development-setup.md.B21ZTDhn.lean.js +1 -0
  121. package/public/docs/assets/contributor-guide_testing.md.DpkozNoG.js +4 -0
  122. package/public/docs/assets/{contributor-guide_testing.md.By6XGR9a.lean.js → contributor-guide_testing.md.DpkozNoG.lean.js} +1 -1
  123. package/public/docs/assets/{index.md.CHJVslga.js → index.md.lMm7SUMz.js} +1 -1
  124. package/public/docs/assets/{index.md.CHJVslga.lean.js → index.md.lMm7SUMz.lean.js} +1 -1
  125. package/public/docs/assets/{style.CyK9Ss73.css → style.Cfxqlj0y.css} +1 -1
  126. package/public/docs/assets/user-guide_getting-started_ci-and-automation.md.C0pcQoNc.js +29 -0
  127. package/public/docs/assets/{user-guide_getting-started_ci-and-automation.md.BEepbDDL.lean.js → user-guide_getting-started_ci-and-automation.md.C0pcQoNc.lean.js} +1 -1
  128. package/public/docs/assets/user-guide_getting-started_reading-the-dashboard.md.CGaxPX_1.js +1 -0
  129. package/public/docs/assets/{user-guide_getting-started_tuning-thresholds.md.B_MyjyZm.js → user-guide_getting-started_tuning-thresholds.md.BGVE-wrc.js} +2 -2
  130. package/public/docs/assets/{user-guide_getting-started_tuning-thresholds.md.B_MyjyZm.lean.js → user-guide_getting-started_tuning-thresholds.md.BGVE-wrc.lean.js} +1 -1
  131. package/public/docs/assets/{user-guide_mcp-tools.md.C65SjWUL.js → user-guide_mcp-tools.md.49r3L2YE.js} +1 -1
  132. package/public/docs/assets/{user-guide_mcp-tools_compare-runs.md.Cc_gLoix.js → user-guide_mcp-tools_compare-runs.md.BQ_kIptC.js} +11 -6
  133. package/public/docs/assets/user-guide_mcp-tools_compare-runs.md.BQ_kIptC.lean.js +1 -0
  134. package/public/docs/assets/user-guide_mcp-tools_diagnose-run.md.azCZXkH8.js +44 -0
  135. package/public/docs/assets/{user-guide_mcp-tools_diagnose-run.md.BP1vnHA5.lean.js → user-guide_mcp-tools_diagnose-run.md.azCZXkH8.lean.js} +1 -1
  136. package/public/docs/assets/{user-guide_mcp-tools_evaluate-budgets.md.BB0nDY3Z.js → user-guide_mcp-tools_evaluate-budgets.md.dpQpRQ7z.js} +2 -2
  137. package/public/docs/assets/{user-guide_mcp-tools_evaluate-budgets.md.BB0nDY3Z.lean.js → user-guide_mcp-tools_evaluate-budgets.md.dpQpRQ7z.lean.js} +1 -1
  138. package/public/docs/assets/{user-guide_mcp-tools_get-finding-evidence.md.rKyu4wts.js → user-guide_mcp-tools_get-finding-evidence.md.CH6FkNLX.js} +2 -1
  139. package/public/docs/assets/{user-guide_mcp-tools_get-finding-evidence.md.rKyu4wts.lean.js → user-guide_mcp-tools_get-finding-evidence.md.CH6FkNLX.lean.js} +1 -1
  140. package/public/docs/assets/user-guide_run-comparison.md.B_LOkdBf.js +1 -0
  141. package/public/docs/assets/user-guide_run-comparison.md.B_LOkdBf.lean.js +1 -0
  142. package/public/docs/assets/user-guide_understanding-findings.md.C4riKCKl.js +1 -0
  143. package/public/docs/assets/user-guide_understanding-findings.md.C4riKCKl.lean.js +1 -0
  144. package/public/docs/contributor-guide/architecture/board-widgets/caching-and-memory.html +6 -6
  145. package/public/docs/contributor-guide/architecture/board-widgets/plan-advisor.html +6 -6
  146. package/public/docs/contributor-guide/architecture/board-widgets/visual-system-and-templating.html +6 -6
  147. package/public/docs/contributor-guide/architecture/board-widgets.html +6 -6
  148. package/public/docs/contributor-guide/architecture/detector-contract/plan-attribution.html +6 -6
  149. package/public/docs/contributor-guide/architecture/detector-contract/threshold-tables.html +6 -6
  150. package/public/docs/contributor-guide/architecture/detector-contract.html +6 -6
  151. package/public/docs/contributor-guide/architecture/drill-down/plan-graph.html +6 -6
  152. package/public/docs/contributor-guide/architecture/drill-down.html +6 -6
  153. package/public/docs/contributor-guide/architecture/impact-estimation/caveats-tuning-and-coverage.html +6 -6
  154. package/public/docs/contributor-guide/architecture/impact-estimation/stage-union-rollup.html +6 -6
  155. package/public/docs/contributor-guide/architecture/impact-estimation.html +6 -6
  156. package/public/docs/contributor-guide/architecture/index.html +5 -5
  157. package/public/docs/contributor-guide/architecture/overview.html +6 -6
  158. package/public/docs/contributor-guide/architecture/state-and-history/history-server-intake.html +5 -5
  159. package/public/docs/contributor-guide/architecture/state-and-history/run-comparison-internals.html +6 -6
  160. package/public/docs/contributor-guide/architecture/state-and-history.html +5 -5
  161. package/public/docs/contributor-guide/architecture/widget-rendering/findings-tab.html +6 -6
  162. package/public/docs/contributor-guide/architecture/widget-rendering/investigation-routing.html +5 -5
  163. package/public/docs/contributor-guide/architecture/widget-rendering/list-sort-mode.html +6 -6
  164. package/public/docs/contributor-guide/architecture/widget-rendering/reference-section.html +5 -5
  165. package/public/docs/contributor-guide/architecture/widget-rendering/row-expand-contract.html +6 -6
  166. package/public/docs/contributor-guide/architecture/widget-rendering.html +6 -6
  167. package/public/docs/contributor-guide/architecture/worker-protocol/cli-and-mcp.html +6 -6
  168. package/public/docs/contributor-guide/architecture/worker-protocol/core-and-event-validation.html +6 -6
  169. package/public/docs/contributor-guide/architecture/worker-protocol/evidence-availability.html +7 -7
  170. package/public/docs/contributor-guide/architecture/worker-protocol/evidence-report.html +6 -6
  171. package/public/docs/contributor-guide/architecture/worker-protocol.html +6 -6
  172. package/public/docs/contributor-guide/contributing.html +6 -6
  173. package/public/docs/contributor-guide/development-setup.html +8 -8
  174. package/public/docs/contributor-guide/testing.html +9 -6
  175. package/public/docs/hashmap.json +1 -1
  176. package/public/docs/index.html +6 -6
  177. package/public/docs/logo-dark.svg +1 -0
  178. package/public/docs/logo-light.svg +1 -0
  179. package/public/docs/tuning-reference/anti-patterns.html +5 -5
  180. package/public/docs/tuning-reference/aqe.html +5 -5
  181. package/public/docs/tuning-reference/bottleneck-broadcast-sizing.html +5 -5
  182. package/public/docs/tuning-reference/bottleneck-cold-start.html +5 -5
  183. package/public/docs/tuning-reference/bottleneck-duplicate-plan-subtree.html +5 -5
  184. package/public/docs/tuning-reference/bottleneck-failures.html +5 -5
  185. package/public/docs/tuning-reference/bottleneck-gc.html +5 -5
  186. package/public/docs/tuning-reference/bottleneck-job-failure-rate.html +5 -5
  187. package/public/docs/tuning-reference/bottleneck-memory-utilization.html +5 -5
  188. package/public/docs/tuning-reference/bottleneck-retry-waste.html +5 -5
  189. package/public/docs/tuning-reference/bottleneck-shuffle.html +5 -5
  190. package/public/docs/tuning-reference/bottleneck-skew.html +5 -5
  191. package/public/docs/tuning-reference/bottleneck-slow-host.html +5 -5
  192. package/public/docs/tuning-reference/bottleneck-small-files.html +5 -5
  193. package/public/docs/tuning-reference/bottleneck-spill.html +5 -5
  194. package/public/docs/tuning-reference/bottleneck-straggler.html +5 -5
  195. package/public/docs/tuning-reference/bottleneck-tiny-tasks.html +5 -5
  196. package/public/docs/tuning-reference/bottleneck-utilization.html +5 -5
  197. package/public/docs/tuning-reference/caching.html +5 -5
  198. package/public/docs/tuning-reference/cluster-config.html +5 -5
  199. package/public/docs/tuning-reference/config.html +5 -5
  200. package/public/docs/tuning-reference/data-formats.html +5 -5
  201. package/public/docs/tuning-reference/index.html +5 -5
  202. package/public/docs/tuning-reference/intro.html +5 -5
  203. package/public/docs/tuning-reference/joins.html +5 -5
  204. package/public/docs/tuning-reference/memory-model.html +5 -5
  205. package/public/docs/tuning-reference/metrics.html +5 -5
  206. package/public/docs/tuning-reference/partitioning.html +5 -5
  207. package/public/docs/tuning-reference/pyspark.html +5 -5
  208. package/public/docs/tuning-reference/shuffle.html +5 -5
  209. package/public/docs/tuning-reference/spark-architecture.html +5 -5
  210. package/public/docs/tuning-reference/table-formats.html +5 -5
  211. package/public/docs/user-guide/alternative-log-retrieval/managed-platforms.html +5 -5
  212. package/public/docs/user-guide/alternative-log-retrieval/ssh-bastion.html +5 -5
  213. package/public/docs/user-guide/alternative-log-retrieval.html +5 -5
  214. package/public/docs/user-guide/getting-started/ci-and-automation.html +16 -11
  215. package/public/docs/user-guide/getting-started/reading-the-dashboard.html +6 -6
  216. package/public/docs/user-guide/getting-started/regression-metric-keys.html +5 -5
  217. package/public/docs/user-guide/getting-started/tuning-thresholds.html +7 -7
  218. package/public/docs/user-guide/getting-started.html +5 -5
  219. package/public/docs/user-guide/mcp-tools/compare-runs.html +16 -11
  220. package/public/docs/user-guide/mcp-tools/diagnose-run.html +28 -7
  221. package/public/docs/user-guide/mcp-tools/evaluate-budgets.html +6 -6
  222. package/public/docs/user-guide/mcp-tools/get-finding-documentation.html +5 -5
  223. package/public/docs/user-guide/mcp-tools/get-finding-evidence.html +7 -6
  224. package/public/docs/user-guide/mcp-tools/get-reference-doc.html +5 -5
  225. package/public/docs/user-guide/mcp-tools/get-run-summary.html +5 -5
  226. package/public/docs/user-guide/mcp-tools/list-runs.html +5 -5
  227. package/public/docs/user-guide/mcp-tools.html +6 -6
  228. package/public/docs/user-guide/run-comparison/how-stages-are-matched.html +5 -5
  229. package/public/docs/user-guide/run-comparison.html +6 -6
  230. package/public/docs/user-guide/understanding-findings.html +6 -6
  231. package/public/export-template.html +45 -45
  232. package/public/index.html +8 -7
  233. package/public/sample-runs/sample-run.ndjson.gz +0 -0
  234. package/vendor-core/allocation.js +25 -23
  235. package/vendor-core/analyzer.js +85 -58
  236. package/vendor-core/api-merge-writes.js +2 -0
  237. package/vendor-core/aqe-skew.js +347 -0
  238. package/vendor-core/cli/budgets.js +6 -4
  239. package/vendor-core/cli/collect-run-pair.js +89 -0
  240. package/vendor-core/cli/collect-run-worker.js +16 -0
  241. package/vendor-core/cli/collect-run.js +1 -2
  242. package/vendor-core/cli/native-zstd.js +12 -16
  243. package/vendor-core/comparability.js +234 -0
  244. package/vendor-core/comparison-output.js +15 -7
  245. package/vendor-core/comparison-verdict.js +105 -25
  246. package/vendor-core/core-source-hash.txt +1 -1
  247. package/vendor-core/core-time-series.js +0 -1
  248. package/vendor-core/core-usage-locality.js +1 -1
  249. package/vendor-core/detectors.js +1007 -380
  250. package/vendor-core/docs-config.js +0 -4
  251. package/vendor-core/docs-content/detection/cache.md +2 -1
  252. package/vendor-core/docs-content/detection/cfg.md +19 -11
  253. package/vendor-core/docs-content/detection/cold.md +2 -1
  254. package/vendor-core/docs-content/detection/gc.md +7 -3
  255. package/vendor-core/docs-content/detection/host.md +11 -1
  256. package/vendor-core/docs-content/detection/mem.md +17 -6
  257. package/vendor-core/docs-content/detection/part.md +3 -1
  258. package/vendor-core/docs-content/detection/plan.md +55 -13
  259. package/vendor-core/docs-content/detection/shfl.md +11 -5
  260. package/vendor-core/docs-content/detection/skew.md +47 -1
  261. package/vendor-core/docs-content/detection/slow.md +4 -2
  262. package/vendor-core/docs-content/detection/spec.md +6 -1
  263. package/vendor-core/docs-content/detection/spill.md +6 -3
  264. package/vendor-core/docs-content/detection/strag.md +19 -6
  265. package/vendor-core/docs-content/detection/tiny.md +9 -3
  266. package/vendor-core/effective-conf.js +7 -10
  267. package/vendor-core/efficiency-model.js +2 -2
  268. package/vendor-core/etl-phases.js +1 -2
  269. package/vendor-core/event-handlers.js +175 -57
  270. package/vendor-core/event-schemas.js +21 -16
  271. package/vendor-core/evidence-availability.js +9 -2
  272. package/vendor-core/evidence-report.js +118 -35
  273. package/vendor-core/executor-peaks.js +41 -0
  274. package/vendor-core/export-data.js +5 -5
  275. package/vendor-core/finding-identity.js +78 -0
  276. package/vendor-core/finding-presentation.js +116 -33
  277. package/vendor-core/finding-types.js +88 -21
  278. package/vendor-core/format-utils.js +14 -15
  279. package/vendor-core/html-export.js +1 -1
  280. package/vendor-core/impact-band.js +2 -2
  281. package/vendor-core/impact-format.js +47 -19
  282. package/vendor-core/impact-model.js +26 -15
  283. package/vendor-core/job-groups.js +4 -4
  284. package/vendor-core/mcp-server-factory.js +48 -12
  285. package/vendor-core/mcp-tools.js +179 -24
  286. package/vendor-core/median.js +2 -2
  287. package/vendor-core/nested-loop-join.js +73 -0
  288. package/vendor-core/occupancy.js +1 -2
  289. package/vendor-core/parser-worker.js +1 -1
  290. package/vendor-core/plan-graph-model.js +14 -22
  291. package/vendor-core/plan-node-detail.js +2 -3
  292. package/vendor-core/plan-summary.js +24 -19
  293. package/vendor-core/plan-tree-walk.js +6 -8
  294. package/vendor-core/python-stage.js +12 -1
  295. package/vendor-core/recommendation-rollup.js +13 -12
  296. package/vendor-core/redact.js +52 -46
  297. package/vendor-core/run-aggregates.js +6 -8
  298. package/vendor-core/run-comparison.js +226 -66
  299. package/vendor-core/run-identity.js +12 -0
  300. package/vendor-core/run-interpretation.js +21 -0
  301. package/vendor-core/run-metrics.js +2 -2
  302. package/vendor-core/run-output.js +32 -10
  303. package/vendor-core/run-totals.js +12 -0
  304. package/vendor-core/run-verdict.js +76 -3
  305. package/vendor-core/scaling-sim.js +3 -4
  306. package/vendor-core/snappy-block.js +2 -2
  307. package/vendor-core/spark-conf.js +168 -0
  308. package/vendor-core/sql-stages.js +2 -2
  309. package/vendor-core/stage-alignment.js +2 -12
  310. package/vendor-core/stage-identity.js +58 -3
  311. package/vendor-core/stage-label.js +14 -0
  312. package/vendor-core/stage-plan-nodes.js +17 -3
  313. package/vendor-core/stage-quantiles.js +141 -9
  314. package/vendor-core/stage-structure.js +17 -3
  315. package/vendor-core/threshold-overrides.js +9 -3
  316. package/vendor-core/types.js +58 -21
  317. package/vendor-core/wasted-core-hours.js +0 -1
  318. package/vendor-core/write-targets.js +114 -14
  319. package/vendor-core/zstd-worker-client.js +1 -1
  320. package/vendor-core/zstd-worker.js +1 -1
  321. package/public/assets/AutoscalingChurn-CRA2Mb7F.js +0 -1
  322. package/public/assets/CacheUtilization-Bh9OY_V9.js +0 -1
  323. package/public/assets/CachingOpportunity-oCiQwmTJ.js +0 -1
  324. package/public/assets/ColdStart-BJrtjfmn.js +0 -1
  325. package/public/assets/ConfigAudit-DMvKxySP.js +0 -1
  326. package/public/assets/CoreUsageArea-REC2zsKw.js +0 -1
  327. package/public/assets/Dashboard-BHZ76JCu.js +0 -2
  328. package/public/assets/DisclosureContext-OO7X1HAx.js +0 -1
  329. package/public/assets/DuplicatePlanSubtree-BgG-L-cK.js +0 -1
  330. package/public/assets/ExecutorUtilization-D2KhSVbY.js +0 -1
  331. package/public/assets/GcPressure-D1BTE8qh.js +0 -1
  332. package/public/assets/IncompleteRun-DD40xUpy.js +0 -1
  333. package/public/assets/JobFailures-YwNzCF19.js +0 -1
  334. package/public/assets/MemoryUtilization-9b8ee_3_.js +0 -1
  335. package/public/assets/OverBroadcast-CfctS8a8.js +0 -1
  336. package/public/assets/PartitionHint-CUvbnnxy.js +0 -1
  337. package/public/assets/PartitionSizing-VG8kBgG5.js +0 -1
  338. package/public/assets/PlanExplorer-DmubTAOP.js +0 -1
  339. package/public/assets/PlanGraphRoute-DctPZjS0.js +0 -1
  340. package/public/assets/RetryWaste-CnpM8bB7.js +0 -1
  341. package/public/assets/ShuffleIO-D13vGmas.js +0 -1
  342. package/public/assets/Skew-DlagstYP.js +0 -1
  343. package/public/assets/SlowHost-cSkLRZ_e.js +0 -1
  344. package/public/assets/SmallFiles-B-kERMcq.js +0 -1
  345. package/public/assets/SpeculationWaste-DaysAzXO.js +0 -1
  346. package/public/assets/Spill-H44Gz4US.js +0 -1
  347. package/public/assets/StageFailed-DCfii9h_.js +0 -1
  348. package/public/assets/StageFindingGroup-BXJ0Mj5n.js +0 -1
  349. package/public/assets/StageHeader--oN2J-oD.js +0 -1
  350. package/public/assets/StageShape-IZ80CZiJ.js +0 -1
  351. package/public/assets/StageSlowness--BRIaBc1.js +0 -1
  352. package/public/assets/Straggler-Ctq0Df_o.js +0 -1
  353. package/public/assets/TaskFailures-Bks_gqhL.js +0 -1
  354. package/public/assets/TinyTask-BssfzGFB.js +0 -1
  355. package/public/assets/UnderBroadcast-DsScrxc-.js +0 -1
  356. package/public/assets/charts-vendor-0VMaLVLN.js +0 -59
  357. package/public/assets/finding-anchor-BYW1oz5R.js +0 -1
  358. package/public/assets/impact-sort-xzy0g-Vh.js +0 -1
  359. package/public/assets/index-DhpRGMZc.css +0 -2
  360. package/public/assets/index-DwqkFUFk.js +0 -14
  361. package/public/assets/plan-graph-vendor-BYl-AzN5.js +0 -7
  362. package/public/assets/react-vendor-DfpuPQZf.js +0 -9
  363. package/public/assets/select-C8edjYTq.js +0 -1
  364. package/public/assets/usePagedRows-CsuUFeYx.js +0 -1
  365. package/public/assets/useRecentFiles-BvkKo3JN.js +0 -11
  366. package/public/assets/useSortMode-joX71BZN.js +0 -1
  367. package/public/docs/assets/chunks/@localSearchIndexroot.tE5pz54z.js +0 -1
  368. package/public/docs/assets/contributor-guide_architecture_board-widgets.md.YQcj5EI4.js +0 -1
  369. package/public/docs/assets/contributor-guide_architecture_board-widgets.md.YQcj5EI4.lean.js +0 -1
  370. package/public/docs/assets/contributor-guide_architecture_board-widgets_plan-advisor.md.RlzvUmNm.js +0 -1
  371. package/public/docs/assets/contributor-guide_architecture_board-widgets_visual-system-and-templating.md.wulOueeB.lean.js +0 -1
  372. package/public/docs/assets/contributor-guide_architecture_detector-contract.md.N4hhenrA.js +0 -1
  373. package/public/docs/assets/contributor-guide_architecture_detector-contract_plan-attribution.md.yNex4bys.js +0 -1
  374. package/public/docs/assets/contributor-guide_architecture_detector-contract_plan-attribution.md.yNex4bys.lean.js +0 -1
  375. package/public/docs/assets/contributor-guide_architecture_detector-contract_threshold-tables.md.Dp3c40rx.js +0 -1
  376. package/public/docs/assets/contributor-guide_architecture_drill-down_plan-graph.md.DwOozIEs.js +0 -1
  377. package/public/docs/assets/contributor-guide_architecture_impact-estimation.md.DfvbqEUu.js +0 -1
  378. package/public/docs/assets/contributor-guide_architecture_impact-estimation_caveats-tuning-and-coverage.md.Cwm1jHmn.js +0 -1
  379. package/public/docs/assets/contributor-guide_architecture_impact-estimation_stage-union-rollup.md.DdCGtAGu.js +0 -1
  380. package/public/docs/assets/contributor-guide_architecture_impact-estimation_stage-union-rollup.md.DdCGtAGu.lean.js +0 -1
  381. package/public/docs/assets/contributor-guide_architecture_overview.md.C1sSvm9i.js +0 -1
  382. package/public/docs/assets/contributor-guide_architecture_state-and-history_run-comparison-internals.md.CZA0JLtV.js +0 -1
  383. package/public/docs/assets/contributor-guide_architecture_widget-rendering.md.BOZ1azXG.js +0 -1
  384. package/public/docs/assets/contributor-guide_architecture_widget-rendering_findings-tab.md.BQXycK6G.js +0 -1
  385. package/public/docs/assets/contributor-guide_architecture_widget-rendering_findings-tab.md.BQXycK6G.lean.js +0 -1
  386. package/public/docs/assets/contributor-guide_architecture_worker-protocol.md.BAnhi2-d.lean.js +0 -1
  387. package/public/docs/assets/contributor-guide_architecture_worker-protocol_cli-and-mcp.md.BX1XnFbq.js +0 -1
  388. package/public/docs/assets/contributor-guide_architecture_worker-protocol_evidence-report.md.CiQl1MLb.js +0 -1
  389. package/public/docs/assets/contributor-guide_contributing.md.CQMvGwFt.js +0 -1
  390. package/public/docs/assets/contributor-guide_development-setup.md.DQdzera7.js +0 -15
  391. package/public/docs/assets/contributor-guide_development-setup.md.DQdzera7.lean.js +0 -1
  392. package/public/docs/assets/contributor-guide_testing.md.By6XGR9a.js +0 -1
  393. package/public/docs/assets/user-guide_getting-started_ci-and-automation.md.BEepbDDL.js +0 -24
  394. package/public/docs/assets/user-guide_getting-started_reading-the-dashboard.md.Obf3W3__.js +0 -1
  395. package/public/docs/assets/user-guide_mcp-tools_compare-runs.md.Cc_gLoix.lean.js +0 -1
  396. package/public/docs/assets/user-guide_mcp-tools_diagnose-run.md.BP1vnHA5.js +0 -23
  397. package/public/docs/assets/user-guide_run-comparison.md.BUALkohi.js +0 -1
  398. package/public/docs/assets/user-guide_run-comparison.md.BUALkohi.lean.js +0 -1
  399. package/public/docs/assets/user-guide_understanding-findings.md.3C7KCEZO.js +0 -1
  400. package/public/docs/assets/user-guide_understanding-findings.md.3C7KCEZO.lean.js +0 -1
  401. /package/public/docs/assets/{contributor-guide_architecture_board-widgets_caching-and-memory.md.CQgn1t_M.lean.js → contributor-guide_architecture_board-widgets_caching-and-memory.md.BYDo3ClR.lean.js} +0 -0
  402. /package/public/docs/assets/{contributor-guide_architecture_board-widgets_plan-advisor.md.RlzvUmNm.lean.js → contributor-guide_architecture_board-widgets_plan-advisor.md.ajUAVdbc.lean.js} +0 -0
  403. /package/public/docs/assets/{contributor-guide_architecture_overview.md.C1sSvm9i.lean.js → contributor-guide_architecture_overview.md.nxkpOhgf.lean.js} +0 -0
  404. /package/public/docs/assets/{contributor-guide_architecture_widget-rendering.md.BOZ1azXG.lean.js → contributor-guide_architecture_widget-rendering.md.BrSz8Ezh.lean.js} +0 -0
  405. /package/public/docs/assets/{contributor-guide_architecture_widget-rendering_list-sort-mode.md.BuHKgH0C.lean.js → contributor-guide_architecture_widget-rendering_list-sort-mode.md.37hcZJ7q.lean.js} +0 -0
  406. /package/public/docs/assets/{contributor-guide_architecture_widget-rendering_row-expand-contract.md.ZT89u9f1.lean.js → contributor-guide_architecture_widget-rendering_row-expand-contract.md.mK_VmAWk.lean.js} +0 -0
  407. /package/public/docs/assets/{contributor-guide_architecture_worker-protocol_core-and-event-validation.md.DSVFPpWb.lean.js → contributor-guide_architecture_worker-protocol_core-and-event-validation.md.DVSXn-bb.lean.js} +0 -0
  408. /package/public/docs/assets/{contributor-guide_contributing.md.CQMvGwFt.lean.js → contributor-guide_contributing.md.DBW4drtZ.lean.js} +0 -0
  409. /package/public/docs/assets/{user-guide_getting-started_reading-the-dashboard.md.Obf3W3__.lean.js → user-guide_getting-started_reading-the-dashboard.md.CGaxPX_1.lean.js} +0 -0
  410. /package/public/docs/assets/{user-guide_mcp-tools.md.C65SjWUL.lean.js → user-guide_mcp-tools.md.49r3L2YE.lean.js} +0 -0
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n}from"./react-vendor-C6KcUD36.js";import{An as r,Bn as i,Cn as a,Dn as o,F as s,Hn as c,J as l,K as u,On as d,P as f,R as p,Sn as m,W as h,Y as g,at as _,bn as v,dt as y,ft as b,gn as x,j as S,jn as C,kn as w,mn as T,nn as E,nt as D,pn as O,rn as k,vn as A,yn as j}from"./DisclosureContext-DK1_iz6J.js";import{t as M,v as N}from"./inertValue-L9VxV0VE.js";import{E as P,N as F,S as I,St as ee,W as L,_ as R,dt as z,i as B,k as V,mt as H,n as U,nt as te,ot as ne,pt as re,r as ie,ut as W,v as ae,x as oe,xt as se}from"./useScrollLock-BCxn_dMp.js";import{_ as ce,a as le,b as G,c as K,d as ue,f as de,g as fe,h as pe,i as me,l as q,m as he,n as ge,o as _e,r as J,s as ve,t as ye,u as be,v as xe,y as Se}from"./useRegisterFieldControl-pQv-ZDoU.js";import{_ as Ce,a as we}from"./composite-C9Nu2EI9.js";import{Et as Te}from"./index-fDiwfuoO.js";import{c as Ee,d as De,l as Oe,o as ke,p as Ae}from"./toggle-DPeN6aNa.js";function je(e){let{open:t=!1,onOpenChange:n,elements:r={}}=e,i=O(),a=P()!=null,o=C(()=>new R({open:t,transitionStatus:void 0,onOpenChange:n,referenceElement:r.reference??null,floatingElement:r.floating??null,triggerElements:new ie,floatingId:i,syncOnly:!1,nested:a})).current;return w(()=>{let e={open:t,floatingId:i};r.reference!==void 0&&(e.referenceElement=r.reference,e.domReferenceElement=c(r.reference)?r.reference:null),r.floating!==void 0&&(e.floatingElement=r.floating),o.update(e)},[t,i,r.reference,r.floating,o]),o.context.onOpenChange=n,o.context.nested=a,o}var Y=n(),X=e(t(),1),Me=X.createContext(void 0),Ne={disableStyleElements:!1};function Pe(){return X.useContext(Me)??Ne}function Fe(e){let[t,n]=X.useState({current:e,previous:null});return Object.is(e,t.current)||n({current:e,previous:t.current}),t.previous}function Ie(e){let t=X.useRef(!0);t.current&&(t.current=!1,e())}var Le=X.createContext(void 0),Re=X.createContext(void 0),ze=X.createContext(void 0);function Z(){let e=X.useContext(Le);if(e===void 0)throw Error(o(60));return e}function Be(){let e=X.useContext(Re);if(e===void 0)throw Error(o(101));return e}function Ve(){let e=X.useContext(ze);if(e===void 0)throw Error(o(61));return e}function He(e,t,n=Object.is){let{length:r}=e;if(r!==t.length)return!1;for(let i=0;i<r;i+=1)if(!n(e[i],t[i]))return!1;return!0}var Ue=(e,t)=>Object.is(e,t);function Q(e,t,n){return e==null||t==null?Object.is(e,t):n(e,t)}function We(e,t,n){return Array.isArray(e)&&Array.isArray(t)?!He(e,t,(e,t)=>Q(e,t,n)):e!==t}function Ge(e,t,n){return e?e.some(e=>e!==void 0&&Q(t,e,n)):!1}function $(e,t,n){return e?e.findIndex(e=>e!==void 0&&Q(e,t,n)):-1}function Ke(e,t){if(t!==Ue)return n=>Ge(e,n,t);let n=new Set(e);return n.delete(void 0),t=>n.has(t)&&(t!==0||e.some(e=>Object.is(t,e)))}function qe(e,t,n,r){let i=r&&Array.isArray(t)?e.findIndex(Ke(t,n)):$(e,t,n);return i===-1?null:i}function Je(e,t,n,r,i,a){return Ge(r,t,i)?a!=null&&e>a&&Ge(r,n[a],i)?a:e:e===a?qe(n,r,i,!0):a}function Ye(e,t,n){return e.filter(e=>!Q(t,e,n))}function Xe(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e)}catch{return String(e)}}function Ze(e){return typeof e==`object`&&!!e&&Array.isArray(e.items)}function Qe(e){return Ze(e?.[0])}function $e(e){return Qe(e)?e.flatMap(e=>e.items):e}function et(e){if(!Array.isArray(e))return e!=null&&`null`in e;let t=e;if(Qe(t)){for(let e of t)for(let t of e.items)if(t&&t.value==null&&t.label!=null)return!0;return!1}for(let e of t)if(e&&e.value==null&&e.label!=null)return!0;return!1}function tt(e,t){if(t&&e!=null)return t(e)??``;if(e&&typeof e==`object`){if(`label`in e&&e.label!=null)return String(e.label);if(`value`in e)return String(e.value)}return Xe(e)}function nt(e,t){return t&&e!=null?t(e)??``:e&&typeof e==`object`&&`value`in e&&`label`in e?Xe(e.value):Xe(e)}function rt(e,t,n){function r(){return tt(e,n)}if(n&&e!=null)return n(e);if(e&&typeof e==`object`&&`label`in e&&e.label!=null)return e.label;if(t&&!Array.isArray(t))return(Object.hasOwn(t,e)?t[e]:void 0)??r();if(Array.isArray(t)){let n=$e(t);if(typeof e!=`object`||!e){let t=n.find(t=>t.value===e);return t&&t.label!=null?t.label:r()}if(`value`in e){let t=n.find(t=>t&&t.value===e.value);if(t&&t.label!=null)return t.label}}return r()}function it(e,t,n){return e.reduce((e,r,i)=>(i>0&&e.push(`, `),e.push((0,Y.jsx)(X.Fragment,{children:rt(r,t,n)},i)),e),[])}var at={id:e=>e.id,labelId:e=>e.labelId,modal:e=>e.modal,items:e=>e.items,itemToStringLabel:e=>e.itemToStringLabel,isItemEqualToValue:e=>e.isItemEqualToValue,value:e=>e.value,hasSelectedValue:e=>{let{value:t,multiple:n,itemToStringValue:r}=e;return t==null?!1:n&&Array.isArray(t)?t.length>0:nt(t,r)!==``},hasNullItemLabel:(e,t)=>t?et(e.items):!1,open:e=>e.open,mounted:e=>e.mounted,forceMount:e=>e.forceMount,transitionStatus:e=>e.transitionStatus,openMethod:e=>e.openMethod,activeIndex:e=>e.activeIndex,selectedIndex:e=>e.selectedIndex,isActive:(e,t)=>e.activeIndex===t,isSelected:(e,t)=>{let n=e.isItemEqualToValue,r=e.value;return e.multiple?Array.isArray(r)&&r.some(e=>Q(t,e,n)):Q(t,r,n)},isSelectedByFocus:(e,t)=>e.selectedIndex===t,popupProps:e=>e.popupProps,triggerProps:e=>e.triggerProps,triggerElement:e=>e.triggerElement,positionerElement:e=>e.positionerElement,listElement:e=>e.listElement,popupSide:e=>e.popupSide,scrollUpArrowVisible:e=>e.scrollUpArrowVisible,scrollDownArrowVisible:e=>e.scrollDownArrowVisible,hasScrollArrows:e=>e.hasScrollArrows};function ot(e,t){return Math.max(0,e-t)}function st(e,t){if(t<=0)return 0;let n=Te(e,0,t),r=n,i=t-n,a=r<=1,o=i<=1;return a&&o?r<=i?0:t:a?0:o?t:n}function ct(e){let{id:t,value:n,defaultValue:i=null,onValueChange:a,open:o,defaultOpen:s=!1,onOpenChange:c,name:u,form:p,autoComplete:g,disabled:y=!1,readOnly:x=!1,required:T=!1,modal:E=!0,actionsRef:D,inputRef:O,onOpenChangeComplete:k,items:M,multiple:N=!1,itemToStringLabel:P,itemToStringValue:F,isItemEqualToValue:I=Ue,highlightItemOnHover:L=!0,children:R}=e,{clearErrors:z}=me(),{setDirty:V,setTouched:H,setFocused:U,validityData:te,setFilled:ne,name:re,disabled:ie,validation:W,validationMode:ce}=le(),G=ge({id:t}),K=ie||y,ue=re??u,[q,_e]=b({controlled:n,default:N?i??A:i,name:`Select`,state:`value`}),[J,ve]=b({controlled:o,default:s,name:`Select`,state:`open`}),be=X.useRef([]),Se=X.useRef([]),Ce=X.useRef(null),we=X.useRef(null),Te=X.useRef(0),Ee=X.useRef(null),De=X.useRef([]),ke=X.useRef(!1),Ae=X.useRef(null),Me=X.useRef(null),Ne=X.useRef({allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0}),Pe=X.useRef(!1),Z=X.useRef(q),{mounted:Be,setMounted:Ve,transitionStatus:He}=h(J),{openMethod:Q,triggerProps:Ge}=de(J),$=C(()=>new ae({id:G,labelId:void 0,modal:E,multiple:N,itemToStringLabel:P,itemToStringValue:F,isItemEqualToValue:I,value:q,open:J,mounted:Be,transitionStatus:He,items:M,forceMount:!1,openMethod:null,activeIndex:null,selectedIndex:null,popupProps:j,triggerProps:j,triggerElement:null,positionerElement:null,listElement:null,popupSide:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1,hasScrollArrows:!1},{setValue:v,setOpen:v,handleScrollArrowVisibility:v,onOpenChangeComplete:v,listRef:be,popupRef:Ce,scrollHandlerRef:we,scrollArrowsMountedCountRef:Te,valueRef:Ee,valuesRef:De,labelsRef:Se,typingRef:ke,selectionRef:Ne,firstItemTextRef:Ae,selectedItemTextRef:Me,alignItemWithTriggerActiveRef:Pe,initialValueRef:Z},at)).current,Ke=$.useState(`activeIndex`),Je=$.useState(`selectedIndex`),Ye=$.useState(`triggerElement`),Xe=$.useState(`positionerElement`),Ze=Fe(Q),Qe=Q??Ze,$e=X.useMemo(()=>N?``:nt(q,F),[N,q,F]),et=X.useMemo(()=>N&&Array.isArray(q)?q.map(e=>nt(e,F)):nt(q,F),[N,q,F]),rt=f(Ye),it=r(()=>et);ye(rt,G,q,it,!K,u);let ct=N?Array.isArray(q)&&q.length>0:q!=null&&$e!==``;w(()=>{ne(ct)},[ct,ne]),w(function(){let e=qe(De.current,q,I,N);e===null&&(Me.current=null),!J&&$.set(`selectedIndex`,e)},[N,J,q,I,$]),he(q,()=>{z(ue),V(We(q,te.initialValue,I)),W.change(q)});let lt=r((e,t)=>{c?.(e,t),!t.isCanceled&&(ve(e),!e&&(t.reason===`focus-out`||t.reason===`outside-press`)&&(H(!0),U(!1),ce===`onBlur`&&W.commit(q)))}),ut=r(()=>{Ve(!1),$.update({activeIndex:null,openMethod:null,scrollUpArrowVisible:!1,scrollDownArrowVisible:!1}),k?.(!1)});S({enabled:!D,open:J,ref:Ce,onComplete(){J||ut()}}),X.useImperativeHandle(D,()=>({unmount:ut}),[ut]);let dt=r((e,t)=>{a?.(e,t),!t.isCanceled&&_e(e)}),ft=r(e=>{let t=ot(e.scrollHeight,e.clientHeight),n=st(e.scrollTop,t),r=n>0,i=n<t;$.set(`scrollUpArrowVisible`,r),$.set(`scrollDownArrowVisible`,i)}),pt=je({open:J,onOpenChange:lt,elements:{reference:Ye,floating:Xe}}),mt=xe(pt,{enabled:!K,event:`mousedown`}),ht=oe(pt),gt=fe(pt,{enabled:!K,listRef:be,activeIndex:Ke,selectedIndex:Je,disabledIndices:A,onNavigate(e){(e!==null||J)&&$.set(`activeIndex`,e)},focusItemOnHover:L}),_t=pe(pt,{enabled:!K&&(J||!x&&!N),listRef:Se,activeIndex:Ke,selectedIndex:Je,disabledIndices:e=>Oe(be.current[e]),onMatch(e){J?$.set(`activeIndex`,e):dt(De.current[e],l(_))},onTyping(e){ke.current=e}}),vt=X.useMemo(()=>d(_t.reference,gt.reference,ht.reference,mt.reference,Ge),[mt.reference,_t.reference,gt.reference,ht.reference,Ge]),yt=X.useMemo(()=>d(B,_t.floating,gt.floating,ht.floating),[_t.floating,gt.floating,ht.floating]),bt=gt.item??j;$.useContextCallback(`setValue`,dt),$.useContextCallback(`setOpen`,lt),$.useContextCallback(`handleScrollArrowVisibility`,ft),$.useContextCallback(`onOpenChangeComplete`,k),Ie(()=>{$.update({popupProps:yt,triggerProps:vt})}),$.useSyncedValues({id:G,modal:E,multiple:N,value:q,open:J,mounted:Be,transitionStatus:He,popupProps:yt,triggerProps:vt,items:M,itemToStringLabel:P,itemToStringValue:F,isItemEqualToValue:I,openMethod:Qe});let xt=X.useMemo(()=>({disabled:K,readOnly:x,required:T,multiple:N,highlightItemOnHover:L,itemProps:bt}),[K,x,T,N,L,bt]),St=m(O,W.inputRef),Ct=N?void 0:ue,wt=X.useMemo(()=>!N||!Array.isArray(q)||!ue?null:q.map(e=>{let t=nt(e,F);return(0,Y.jsx)(`input`,{type:`hidden`,form:p,name:ue,value:t,disabled:K},t)}),[N,q,p,ue,F,K]);return(0,Y.jsxs)(Le.Provider,{value:$,children:[(0,Y.jsx)(Re.Provider,{value:xt,children:(0,Y.jsx)(ze.Provider,{value:pt,children:R})}),(0,Y.jsx)(`input`,{...W.getValidationProps(K,{onFocus(){$.state.triggerElement?.focus({focusVisible:!0})},onChange(e){if(e.nativeEvent.defaultPrevented||K||x)return;let t=e.currentTarget.value,n=l(_,e.nativeEvent);function r(){if(N)return;let e=t.toLowerCase(),r=De.current.findIndex(t=>nt(t,F).toLowerCase()===e||tt(t,P).toLowerCase()===e);r===-1&&(r=De.current.findIndex((t,n)=>{let r=Se.current[n];return r!=null&&r.toLowerCase()===e}));let i=De.current[r];i!=null&&dt(i,n)}$.set(`forceMount`,!0),queueMicrotask(r)}}),id:G&&Ct==null?`${G}-hidden-input`:void 0,form:p,name:Ct,autoComplete:g,value:$e,disabled:K,required:T&&!(N&&ct),readOnly:x,ref:St,style:ue?ee:se,tabIndex:-1,"aria-hidden":!0,suppressHydrationWarning:!0}),wt]})}function lt(e,t){return e??t}var ut=`data-popup-side`,dt=400,ft={...re,..._e,popupSide:e=>e?{[ut]:e}:null,value:()=>null},pt=X.forwardRef(function(e,t){let{render:n,className:r,id:i,disabled:o=!1,nativeButton:s=!0,style:c,...u}=e,{setTouched:p,setFocused:m,validationMode:h,validation:v,state:y,disabled:b}=le(),{labelId:S}=J(),C=Z(),{readOnly:w,required:T,disabled:E}=Be(),D=b||E||o,O=C.useState(`open`),k=C.useState(`mounted`),A=C.useState(`value`),j=C.useState(`triggerProps`),M=C.useState(`positionerElement`),P=C.useState(`listElement`),F=C.useState(`popupSide`),I=C.useState(`id`),ee=C.useState(`labelId`),R=C.useState(`hasSelectedValue`),z=k&&M?F:null,B=i??I,V=lt(S,ee);ge({id:i});let H=f(M),U=X.useRef(null),{getButtonProps:te,buttonRef:ne}=a({disabled:D,native:s}),re=C.useStateSetter(`triggerElement`),ie=W(),ae=W(),oe=W();X.useEffect(()=>{if(O)return oe.start(dt,()=>{C.context.selectionRef.current.allowUnselectedMouseUp=!0,C.context.selectionRef.current.allowSelectedMouseUp=!0}),()=>{oe.clear()};C.context.selectionRef.current={allowSelectedMouseUp:!1,allowUnselectedMouseUp:!1,dragY:0},ae.clear()},[O,C,ae,oe]);let se=d(j,{id:B,role:`combobox`,"aria-expanded":O,"aria-haspopup":`listbox`,"aria-controls":O?P?.id??L(M)?.id:void 0,"aria-labelledby":V,"aria-readonly":w||void 0,"aria-required":T||void 0,tabIndex:D?-1:0,onFocus(e){m(!0),O&&C.context.alignItemWithTriggerActiveRef.current&&C.context.setOpen(!1,l(_,e.nativeEvent)),ie.start(0,()=>{C.set(`forceMount`,!0)})},onBlur(e){Ce(M,e.relatedTarget)||(p(!0),m(!1),h===`onBlur`&&v.commit(A))},onMouseDown(e){if(O)return;let t=N(e.currentTarget);function n(e){if(!U.current)return;let t=e.target;Ce(U.current,t)||Ce(H.current,t)||ve(e,U.current)||C.context.setOpen(!1,l(g,e))}ae.start(0,()=>{t.addEventListener(`mouseup`,n,{once:!0})})}},u,te),ce=v.getValidationProps(D,se);ce.role=`combobox`;let G={...y,open:O,disabled:D,value:A,readOnly:w,popupSide:z,placeholder:!R};return x(`button`,e,{ref:[t,U,ne,re],state:G,stateAttributesMapping:ft,props:ce})}),mt={value:()=>null},ht=X.forwardRef(function(e,t){let{className:n,render:r,children:i,placeholder:a,style:o,...s}=e,c=Z(),l=c.useState(`value`),u=c.useState(`items`),d=c.useState(`itemToStringLabel`),f=c.useState(`hasSelectedValue`),p=!f&&a!=null&&i==null,m=c.useState(`hasNullItemLabel`,p),h={value:l,placeholder:!f},g=null;return g=typeof i==`function`?i(l):i??(p&&!m?a:Array.isArray(l)?it(l,u,d):rt(l,u,d)),x(`span`,e,{state:h,ref:[t,c.context.valueRef],props:[{children:g},s],stateAttributesMapping:mt})}),gt=X.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o={open:Z().useState(`open`)};return x(`span`,e,{state:o,ref:t,props:[{"aria-hidden":!0,children:`▼`},a],stateAttributesMapping:H})}),_t=X.forwardRef(function(e,t){let n=Z(),r=n.useState(`mounted`),i=n.useState(`forceMount`);return r||i?(0,Y.jsx)(V,{ref:t,...e}):null}),vt=X.createContext(void 0);function yt(){let e=X.useContext(vt);if(!e)throw Error(o(59));return e}function bt(e,t){e&&Object.assign(e.style,t)}var xt={position:`relative`,maxHeight:`100%`,overflowX:`hidden`,overflowY:`auto`},St={position:`fixed`},Ct=X.forwardRef(function(e,t){let{anchor:n,className:i,render:a,positionMethod:o,side:s,align:c,sideOffset:u,alignOffset:d,collisionBoundary:f=`clipping-ancestors`,collisionPadding:p,arrowPadding:m,sticky:h,disableAnchorTracking:g,alignItemWithTrigger:v=!0,collisionAvoidance:y=F,style:b,...x}=e,S=Z(),C=Ve(),T=S.useState(`open`),E=S.useState(`mounted`),D=S.useState(`modal`),O=S.useState(`value`),k=S.useState(`openMethod`),A=S.useState(`positionerElement`),j=S.useState(`triggerElement`),N=S.useState(`isItemEqualToValue`),P=S.useState(`transitionStatus`),I=X.useRef(null),ee=X.useRef(null),[L,R]=X.useState(v),z=E&&L&&k!==`touch`;!E&&L!==v&&R(v),X.useImperativeHandle(S.context.alignItemWithTriggerActiveRef,()=>z),K((z||D)&&T,k===`touch`,A,j);let B=be({anchor:n,floatingRootContext:C,positionMethod:o,mounted:E,side:s,sideOffset:u,align:c,alignOffset:d,arrowPadding:m,collisionBoundary:f,collisionPadding:p,sticky:h,disableAnchorTracking:g??z,collisionAvoidance:y,keepMounted:!0}),V=z?`none`:B.side,H=z?St:B.positionerStyles,te={open:T,side:V,align:B.align,anchorHidden:B.anchorHidden};w(()=>{S.set(`popupSide`,B.side)},[S,B.side]);let ne=S.useStateSetter(`positionerElement`),re=q(e,te,{styles:H,transitionStatus:P,props:x,refs:[t,ne],hidden:!E,inert:!T}),ie=X.useRef(0),W=r(e=>{if(S.context.valuesRef.current.length===0)return;let t=ie.current;ie.current=e.size;let n=l(_);if(t!==0&&!S.state.multiple&&O!==null&&$(S.context.valuesRef.current,O,N)===-1){let e=S.context.initialValueRef.current,t=e!=null&&$(S.context.valuesRef.current,e,N)!==-1?e:null;S.context.setValue(t,n),t===null&&(S.set(`selectedIndex`,null),S.context.selectedItemTextRef.current=null)}if(t!==0&&S.state.multiple&&Array.isArray(O)){let e=O.filter(e=>$(S.context.valuesRef.current,e,N)!==-1);e.length!==O.length&&(S.context.setValue(e,n),e.length===0&&(S.set(`selectedIndex`,null),S.context.selectedItemTextRef.current=null))}if(T&&z){S.update({scrollUpArrowVisible:!1,scrollDownArrowVisible:!1});let e={height:``};bt(A,e),bt(S.context.popupRef.current,e)}}),ae=X.useMemo(()=>({...B,side:V,alignItemWithTriggerActive:z,setControlledAlignItemWithTrigger:R,scrollUpArrowRef:I,scrollDownArrowRef:ee}),[B,V,z,R]);return(0,Y.jsx)(Ae,{elementsRef:S.context.listRef,labelsRef:S.context.labelsRef,onMapChange:W,children:(0,Y.jsxs)(vt.Provider,{value:ae,children:[E&&D&&(0,Y.jsx)(U,{inert:M(!T),cutout:j}),re]})})}),wt=`base-ui-disable-scrollbar`,Tt={className:wt,getElement(e){return(0,Y.jsx)(`style`,{nonce:e,href:wt,precedence:`base-ui:low`,children:`.${wt}{scrollbar-width:none}.${wt}::-webkit-scrollbar{display:none}`})}},Et=`--transform-origin`,Dt={...z,...p},Ot=X.forwardRef(function(e,t){let{render:n,className:a,style:o,finalFocus:c,...d}=e,f=Z(),{multiple:p,readOnly:m,highlightItemOnHover:h}=Be(),g=Ve(),{side:_,align:v,alignItemWithTriggerActive:b,isPositioned:C,setControlledAlignItemWithTrigger:T}=yt(),E=ke(!0)!=null,D=Ee(),{nonce:O,disableStyleElements:k}=Pe(),A=f.useState(`id`),j=f.useState(`open`),M=f.useState(`openMethod`),P=f.useState(`mounted`),F=f.useState(`popupProps`),ee=f.useState(`transitionStatus`),L=f.useState(`triggerElement`),R=f.useState(`positionerElement`),z=f.useState(`listElement`),B=X.useRef(!1),V=X.useRef(!1),H=X.useRef({}),U=u(),te=r(e=>{if(!R||!f.context.popupRef.current||!V.current)return;let t=R.style.top===`0px`,n=R.style.bottom===`0px`;if(B.current||!b||!t&&!n){f.context.handleScrollArrowVisibility(e);return}let r=jt(R),a=Mt(R.getBoundingClientRect().height,`y`,r),o=N(R),s=i(R),c=s.getComputedStyle(R),l=parseFloat(c.marginTop),u=parseFloat(c.marginBottom),d=kt(s.getComputedStyle(f.context.popupRef.current)),p=Math.min(o.documentElement.clientHeight-l-u,d),m=e.scrollTop,h=At(e),g=null,_=e=>{R.style.height=`${e}px`},v=t?h-m:m,y=Math.min(a+v,p);if(v<=1){let n=Te(v,0,p-a);n>0&&_(a+n),e.scrollTop=t?h:0,p-(a+n)<=1&&(B.current=!0),f.context.handleScrollArrowVisibility(e);return}p-y>1?g=t?1/0:0:n&&m<h&&(g=m-(v-(a+v-p)));let x=Math.ceil(y);if(x!==0&&_(x),g!=null){let t=Te(g,0,At(e));Math.abs(e.scrollTop-t)>1&&(e.scrollTop=t)}x>=p-1&&(B.current=!0),f.context.handleScrollArrowVisibility(e)});X.useImperativeHandle(f.context.scrollHandlerRef,()=>te,[te]),S({open:j,ref:f.context.popupRef,onComplete(){j&&f.context.onOpenChangeComplete(!0)}});let re={open:j,transitionStatus:ee,side:_,align:v};w(()=>{R&&f.context.popupRef.current&&!Object.keys(H.current).length&&(H.current={top:R.style.top||`0`,left:R.style.left||`0`,right:R.style.right,height:R.style.height,bottom:R.style.bottom,minHeight:R.style.minHeight,maxHeight:R.style.maxHeight,marginTop:R.style.marginTop,marginBottom:R.style.marginBottom})},[f,R]),w(()=>{j||b||(V.current=!1,B.current=!1,bt(R,H.current))},[j,b,R]),w(()=>{let e=f.context.popupRef.current;if(!j||!L||!R||!e||b&&!C||f.state.transitionStatus===`ending`)return;if(V.current=!0,e.style.removeProperty(Et),!b){U.request(()=>f.context.handleScrollArrowVisibility(z||e));return}let t=Ft(e);try{let t=f.context.selectedItemTextRef.current;t?.isConnected||(t=!f.select(`hasSelectedValue`)&&f.context.firstItemTextRef.current?.isConnected?f.context.firstItemTextRef.current:null);let n=f.context.valueRef.current,r=i(R),a=r.getComputedStyle(R),o=r.getComputedStyle(e),s=N(L),c=jt(L),l=Nt(L.getBoundingClientRect(),c),u=Nt(R.getBoundingClientRect(),c),d=l.height,p=z||e,m=p.scrollHeight,g=parseFloat(o.borderBottomWidth),_=parseFloat(a.marginTop)||10,v=parseFloat(a.marginBottom)||10,y=parseFloat(a.minHeight)||100,b=kt(o),x=s.documentElement.clientHeight-_-v,S=s.documentElement.clientWidth,C=x-l.bottom+d,w,E=D===`rtl`?l.right-u.width:l.left,O=0;if(t&&n){let e=Nt(n.getBoundingClientRect(),c);w=Nt(t.getBoundingClientRect(),c),E=u.left+(D===`rtl`?e.right-w.right:e.left-w.left);let r=e.top-l.top+e.height/2;O=w.top-u.top+w.height/2-r}let k=C+O+v+g,A=Math.min(x,k),j=x-_-v,M=k-A,P=S-5;R.style.left=`${Te(E,5,P-u.width)}px`,R.style.height=`${A}px`,R.style.maxHeight=`none`,R.style.marginTop=`${_}px`,R.style.marginBottom=`${v}px`,e.style.height=`100%`;let F=At(p),I=M>=F-1;I&&(A=Math.min(x,u.height)-(M-F));let ee=l.top<20||l.bottom>x-20||Math.ceil(A)+1<Math.min(m,y),V=(r.visualViewport?.scale??1)!==1&&ne;if(ee||V){bt(R,H.current),T(!1);return}let U=Math.max(y,A);if(I){let e=Math.max(0,x-k);R.style.top=u.height>=j?`0`:`${e}px`,R.style.height=`${A}px`,p.scrollTop=At(p)}else R.style.bottom=`0`,p.scrollTop=M;if(w){let t=u.top,n=u.height,r=w.top+w.height/2,i=Te(n>0?(r-t)/n*100:50,0,100);e.style.setProperty(Et,`50% ${i}%`)}(U===x||A>=b)&&(B.current=!0),f.context.handleScrollArrowVisibility(p),h&&f.state.selectedIndex===null&&f.state.activeIndex===null&&f.context.listRef.current[0]!=null&&f.set(`activeIndex`,0)}finally{t()}},[f,j,R,L,b,T,U,z,h,D,C]),X.useEffect(()=>{if(!b||!R||!j)return;let e=i(R);function t(e){f.context.setOpen(!1,l(y,e))}return s(e,`resize`,t)},[f,b,R,j]);let ie={...z?{role:`presentation`}:{role:`listbox`,"aria-multiselectable":p||void 0,"aria-readonly":m||void 0,id:`${A}-list`},onKeyDown(e){E&&we.has(e.key)&&e.stopPropagation()},onScroll(e){z||te(e.currentTarget)},...b&&{style:z?{height:`100%`}:xt},className:!z&&b?Tt.className:void 0},W=x(`div`,e,{ref:[t,f.context.popupRef],state:re,stateAttributesMapping:Dt,props:[F,ie,ue(ee),d]});return(0,Y.jsxs)(X.Fragment,{children:[!k&&Tt.getElement(O),(0,Y.jsx)(I,{context:g,modal:!1,disabled:!P,openInteractionType:M,returnFocus:c,restoreFocus:!0,children:W})]})});function kt(e){let t=e.maxHeight;return t.endsWith(`px`)&&parseFloat(t)||1/0}function At(e){return ot(e.scrollHeight,e.clientHeight)}function jt(e){return ce.getScale(e)}function Mt(e,t,n){return e/n[t]}function Nt(e,t){return Se({x:Mt(e.x,`x`,t),y:Mt(e.y,`y`,t),width:Mt(e.width,`x`,t),height:Mt(e.height,`y`,t)})}var Pt=[[`transform`,`none`],[`scale`,`1`],[`translate`,`0 0`]];function Ft(e){let{style:t}=e,n={};for(let[e,r]of Pt)n[e]=t.getPropertyValue(e),t.setProperty(e,r,`important`);return()=>{for(let[e]of Pt){let r=n[e];r?t.setProperty(e,r):t.removeProperty(e)}}}var It=X.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=Z(),{multiple:s,readOnly:c}=Be(),{alignItemWithTriggerActive:l}=yt(),u=o.useState(`hasScrollArrows`),d=o.useState(`openMethod`),f={id:`${o.useState(`id`)}-list`,role:`listbox`,"aria-multiselectable":s||void 0,"aria-readonly":c||void 0,onScroll(e){o.context.scrollHandlerRef.current?.(e.currentTarget)},...l&&{style:xt},className:u&&d!==`touch`?Tt.className:void 0},p=o.useStateSetter(`listElement`);return x(`div`,e,{ref:[t,p],props:[f,a]})}),Lt=X.createContext(void 0);function Rt(){let e=X.useContext(Lt);if(!e)throw Error(o(57));return e}var zt=X.memo(X.forwardRef(function(e,t){let{render:n,className:r,style:i,value:o=null,label:s,disabled:c=!1,nativeButton:u=!1,...d}=e,f=X.useRef(null),p=De({guess:!0,label:s,textRef:f}),m=Z(),{itemProps:h,multiple:g,disabled:_,readOnly:v}=Be(),y=_||c,b=m.useState(`isActive`,p.index),S=m.useState(`open`),C=m.useState(`isSelected`,o),T=m.useState(`isSelectedByFocus`,p.index),E=m.useState(`isItemEqualToValue`),O=p.index,k=X.useRef(null);w(()=>{let e=m.context.valuesRef.current;return e[O]=o,()=>{delete e[O]}},[O,o,m]),w(()=>{let e=m.state.value,t=m.state.selectedIndex,n=t,r;g&&Array.isArray(e)?(n=Je(O,o,m.context.valuesRef.current,e,E,t),r=n===O,O===t&&!r&&(m.context.selectedItemTextRef.current=null)):(r=e!==void 0&&Q(o,e,E),r&&(n=O)),m.set(`selectedIndex`,n),r&&f.current&&(m.context.selectedItemTextRef.current=f.current)},[O,g,E,m,o]);let A=X.useRef(`mouse`),j=X.useRef(!1),{getButtonProps:M,buttonRef:N}=a({disabled:y,focusableWhenDisabled:!0,native:u,composite:!0}),P={disabled:y,selected:C,highlighted:b};function F(e){if(_||v)return;let t=m.state.value;if(g){let n=Array.isArray(t)?t:[],r=C?Ye(n,o,E):[...n,o];m.context.setValue(r,l(D,e))}else m.context.setValue(o,l(D,e)),m.context.setOpen(!1,l(D,e))}function I(){m.context.selectionRef.current.dragY=0}let ee={role:`option`,"aria-selected":C,tabIndex:S&&b?0:-1,onKeyDown(e){m.set(`activeIndex`,O),e.key===` `&&m.context.typingRef.current&&e.preventDefault()},onClick(e){let t=A.current!==`touch`,n=e.nativeEvent.pointerType,r=t&&te(e.nativeEvent)&&(n!==void 0||b),i=t&&!r&&!j.current;j.current=!1,!(y||i)&&F(e.nativeEvent)},onPointerEnter(e){A.current=e.pointerType},onPointerMove(e){if(e.pointerType===`mouse`&&e.buttons===1){let t=m.context.selectionRef.current;t.dragY+=e.movementY,t.dragY**2>=64&&(t.allowUnselectedMouseUp=!0)}},onPointerDown(e){A.current=e.pointerType,j.current=!0,I()},onMouseUp(){if(I(),y||A.current===`touch`||j.current)return;let e=!m.context.selectionRef.current.allowSelectedMouseUp&&C,t=!m.context.selectionRef.current.allowUnselectedMouseUp&&!C;e||t||(j.current=!0,k.current?.click(),j.current=!1)}},L=x(`div`,e,{ref:[N,t,p.ref,k],state:P,props:[h,ee,d,M]}),R=X.useMemo(()=>({selected:C,index:O,textRef:f,selectedByFocus:T}),[C,O,f,T]);return(0,Y.jsx)(Lt.Provider,{value:R,children:L})})),Bt=X.forwardRef(function(e,t){let{selected:n}=Rt();return e.keepMounted||n?(0,Y.jsx)(Vt,{...e,ref:t}):null}),Vt=X.memo(X.forwardRef((e,t)=>{let{render:n,className:r,style:i,keepMounted:a,...o}=e,{selected:s}=Rt(),c=X.useRef(null),{transitionStatus:l,setMounted:u}=h(s),d=x(`span`,e,{ref:[t,c],state:{selected:s,transitionStatus:l},props:[{"aria-hidden":!0,children:`✔️`},o],stateAttributesMapping:p});return S({batch:!0,enabled:!s,open:s,ref:c,onComplete(){s||u(!1)}}),d})),Ht=X.memo(X.forwardRef(function(e,t){let{index:n,textRef:r,selectedByFocus:i}=Rt(),a=Z(),{render:o,className:s,style:c,...l}=e,u=X.useCallback(e=>{e&&(n===0&&(a.context.firstItemTextRef.current=e),i&&(a.context.selectedItemTextRef.current=e))},[a,n,i]);return x(`div`,e,{ref:[u,t,r],props:l})})),Ut=X.forwardRef(function(e,t){let{render:n,className:r,style:i,direction:a,keepMounted:o,...s}=e,c=a===`up`,l=Z(),{side:u,scrollDownArrowRef:d,scrollUpArrowRef:f}=yt(),m=c?`scrollUpArrowVisible`:`scrollDownArrowVisible`,g=l.useState(m),_=l.useState(`openMethod`),v=g&&_!==`touch`,y=W(),b=c?f:d,{mounted:C,transitionStatus:T,setMounted:E}=h(v);w(()=>(l.context.scrollArrowsMountedCountRef.current+=1,l.set(`hasScrollArrows`,!0),()=>{l.context.scrollArrowsMountedCountRef.current=Math.max(0,l.context.scrollArrowsMountedCountRef.current-1),l.context.scrollArrowsMountedCountRef.current===0&&l.set(`hasScrollArrows`,!1)}),[l]),S({open:v,ref:b,onComplete(){v||E(!1)}});let D=x(`div`,e,{ref:[t,b],state:{direction:a,visible:v,side:u,transitionStatus:T},props:[{"aria-hidden":!0,children:c?`▲`:`▼`,style:{position:`absolute`},onMouseMove(e){if(e.movementX===0&&e.movementY===0||y.isStarted())return;l.set(`activeIndex`,null);function t(){let e=l.state.listElement??l.context.popupRef.current;if(!e)return;l.set(`activeIndex`,null),l.context.handleScrollArrowVisibility(e);let n=ot(e.scrollHeight,e.clientHeight),r=st(e.scrollTop,n),i=r===(c?0:n),a=l.context.listRef.current;if(r!==e.scrollTop&&(e.scrollTop=r),i){y.clear();return}if(a.length>0){let t=b.current?.offsetHeight||0;e.scrollTop=Wt(a,c,r,e.clientHeight,t,n)}y.start(40,t)}y.start(40,t)},onMouseLeave(){y.clear()}},s],stateAttributesMapping:p});return C||o?D:null});function Wt(e,t,n,r,i,a){if(t){let t=0,r=n+i-1;for(let n=0;n<e.length;n+=1){let i=e[n];if(i&&i.offsetTop>=r){t=n;break}}let o=Math.max(0,t-1),s=e[o];return o<t&&s?st(s.offsetTop-i,a):0}let o=e.length-1,s=n+r-i+1;for(let t=0;t<e.length;t+=1){let n=e[t];if(n&&n.offsetTop+n.offsetHeight>s){o=Math.max(0,t-1);break}}let c=Math.min(e.length-1,o+1),l=e[c];return c>o&&l?st(l.offsetTop+l.offsetHeight-r+i,a):a}var Gt=X.forwardRef(function(e,t){return(0,Y.jsx)(Ut,{...e,ref:t,direction:`down`})}),Kt=X.forwardRef(function(e,t){return(0,Y.jsx)(Ut,{...e,ref:t,direction:`up`})}),qt=ct;function Jt({className:e,...t}){return(0,Y.jsx)(ht,{"data-slot":`select-value`,className:T(`flex flex-1 text-left`,e),...t})}function Yt({className:e,size:t=`default`,children:n,...r}){return(0,Y.jsxs)(pt,{"data-slot":`select-trigger`,"data-size":t,className:T(`flex w-fit cursor-pointer items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,e),...r,children:[n,(0,Y.jsx)(gt,{render:(0,Y.jsx)(k,{className:`pointer-events-none size-4 text-muted-foreground`})})]})}function Xt({className:e,children:t,side:n=`bottom`,sideOffset:r=4,align:i=`center`,alignOffset:a=0,alignItemWithTrigger:o=!0,...s}){return(0,Y.jsx)(_t,{children:(0,Y.jsx)(Ct,{side:n,sideOffset:r,align:i,alignOffset:a,alignItemWithTrigger:o,className:`isolate z-50`,children:(0,Y.jsxs)(Ot,{"data-slot":`select-content`,"data-align-trigger":o,className:T(`relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...s,children:[(0,Y.jsx)(Qt,{}),(0,Y.jsx)(It,{children:t}),(0,Y.jsx)($t,{})]})})})}function Zt({className:e,children:t,...n}){return(0,Y.jsxs)(zt,{"data-slot":`select-item`,className:T(`relative flex w-full cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2`,e),...n,children:[(0,Y.jsx)(Ht,{className:`flex flex-1 shrink-0 gap-2 whitespace-nowrap`,children:t}),(0,Y.jsx)(Bt,{render:(0,Y.jsx)(`span`,{className:`pointer-events-none absolute right-2 flex size-4 items-center justify-center`}),children:(0,Y.jsx)(G,{className:`pointer-events-none`})})]})}function Qt({className:e,...t}){return(0,Y.jsx)(Kt,{"data-slot":`select-scroll-up-button`,className:T(`top-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4`,e),...t,children:(0,Y.jsx)(E,{})})}function $t({className:e,...t}){return(0,Y.jsx)(Gt,{"data-slot":`select-scroll-down-button`,className:T(`bottom-0 z-10 flex w-full cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4`,e),...t,children:(0,Y.jsx)(k,{})})}export{Jt as a,Yt as i,Xt as n,Zt as r,qt as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n}from"./react-vendor-C6KcUD36.js";import{An as r,Cn as i,Dn as a,En as o,J as s,Sn as c,Tn as l,at as u,fn as d,ft as f,gn as p,hn as m,jn as h,kn as g,mn as _,vn as v,yn as y}from"./DisclosureContext-DK1_iz6J.js";import{a as b,c as x,d as S,f as C,h as w,i as T,l as E,m as D,n as O,r as k,s as A,t as j,u as M,v as N}from"./composite-C9Nu2EI9.js";var P=e(t(),1),F=P.createContext({register:()=>{},unregister:()=>{},subscribeMapChange:()=>()=>{},nextIndexRef:{current:0}});function I(){return P.useContext(F)}var L=n();function R(e){let{children:t,elementsRef:n,labelsRef:i,onMapChange:a}=e,o=r(a),[,s]=P.useState(!1),c=h(B).current,l=h(z).current,u=P.useRef(0),d=P.useRef(!0),f=P.useRef(null),p=P.useRef(null),m=r(()=>{d.current||(d.current=!0,s(e=>!e))}),_=r((e,t)=>{l.set(e,t),m()}),v=r(e=>{l.delete(e),m()}),y=r(e=>{let t=new Map;return n.current.length=0,i&&(i.current.length=0),e.forEach(e=>{t.set(e.element,{...e.registration.metadata??{},index:e.index}),n.current[e.index]=e.element,i&&(i.current[e.index]=e.registration.label===void 0?e.registration.textRef?.current?.textContent??e.element.textContent:e.registration.label)}),u.current=n.current.length,t});function b(e){if(p.current?.disconnect(),p.current=null,typeof MutationObserver!=`function`||e.length<2)return;let t=new MutationObserver(n=>{if(!U(n))return;let r=null;for(let n of e)if(n.isConnected){if(r&&W(r,n)>0){t.disconnect(),m();return}r=n}});p.current=t;let n=new Set;for(let t=1;t<e.length;t+=1){let r=H(e[t-1],e[t]);r&&n.add(r)}n.forEach(e=>t.observe(e,{childList:!0}))}let x=r(()=>{let[e,t]=V(l),n=y(e),r=f.current,i=!r||r.length!==e.length||e.some((e,t)=>{let n=r[t];return e.index!==n.index||e.element!==n.element||e.registration.index!==n.registration.index||e.registration.metadata!==n.registration.metadata});b(t),f.current=e,d.current=!1,i&&(c.forEach(e=>e(n)),o(n))});g(()=>(!d.current&&f.current&&y(f.current),()=>{n.current=[],i&&(i.current=[])}),[n,i,y]),g(()=>{d.current&&x()}),g(()=>()=>{p.current?.disconnect(),d.current=!0},[]);let S=r(e=>(c.add(e),()=>{c.delete(e)})),C=P.useMemo(()=>({register:_,unregister:v,subscribeMapChange:S,nextIndexRef:u}),[_,v,S,u]);return(0,L.jsx)(F.Provider,{value:C,children:t})}function z(){return new Map}function B(){return new Set}function V(e){let t=new Set,n=[],r=[];e.forEach((e,i)=>{if(!i.isConnected)return;let a=e.index,o={index:a??-1,element:i,registration:e};a===null?r.push(o):a>=0&&(t.add(a),n.push(o))});let i=0;return r.sort((e,t)=>W(e.element,t.element)),r.forEach(e=>{for(;t.has(i);)i+=1;e.index=i,n.push(e),i+=1}),t.size>0&&n.sort((e,t)=>e.index-t.index),[n,r.map(e=>e.element)]}function H(e,t){let n=e.parentElement;for(;n&&!n.contains(t);)n=n.parentElement;return n}function U(e){for(let t of e)for(let e=0;e<t.removedNodes.length;e+=1)if(t.removedNodes[e].isConnected)return!0;return!1}function W(e,t){return e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1}var G=`data-composite-item-active`;function K(e={}){let{guess:t,label:n,metadata:r,textRef:i,index:a}=e,{register:o,unregister:s,subscribeMapChange:c,nextIndexRef:l}=I(),u=P.useRef(-1),[d,f]=P.useState(a==null&&t?()=>{if(u.current===-1){let e=l.current;l.current+=1,u.current=e}return u.current}:-1),p=a??d,m=P.useRef(null),h=P.useCallback(e=>{let t=m.current;t&&s(t),m.current=e,e&&o(e,{metadata:r??null,index:a??null,label:n,textRef:i})},[a,o,s,r,n,i]);return g(()=>{if(a==null)return c(e=>{let t=m.current?e.get(m.current)?.index:null;t!=null&&f(t)})},[a,c]),{ref:h,index:p}}function q(e={}){let{highlightItemOnHover:t,highlightedIndex:n,onHighlightedIndexChange:r}=o(),{ref:i,index:a}=K(e),s=n===a,l=P.useRef(null),u=c(i,l);return{compositeProps:{tabIndex:s?0:-1,onFocus(){r(a)},onMouseMove(){let e=l.current;if(!t||!e)return;let n=e.hasAttribute(`disabled`)||e.ariaDisabled===`true`;!s&&!n&&e.focus()}},compositeRef:u,index:a}}function J(e){return e==null||e.hasAttribute(`disabled`)||e.getAttribute(`aria-disabled`)===`true`}function ee(e){let{loopFocus:t=!0,orientation:n=`both`,grid:i,onLoop:a,direction:o,highlightedIndex:s,onHighlightedIndexChange:l,rootRef:u,enableHomeAndEndKeys:d=!1,stopEventPropagation:f,disabledIndices:p,modifierKeys:m=v}=e,[h,_]=P.useState(0),y=i!=null,A=P.useRef(null),F=c(A,u),I=P.useRef([]),L=P.useRef(!1),R=P.useRef(null),z=s??h,B=r((e,t=!1)=>{if(R.current=I.current[e]??null,(l??_)(e),t){let t=I.current[e];E(A.current,t,o,n)}}),V=r(e=>{if(e.size===0)return;if(L.current){let e=I.current,t=e.indexOf(R.current);if(t===-1){let t=e[z];!t||w(e,z,p)?B(te(e,p)):R.current=t}else t!==z&&B(t);return}L.current=!0;let t=Array.from(e.keys()),r=t.find(e=>e?.hasAttribute(`data-composite-item-active`))??null,i=r?e.get(r)?.index??-1:-1;if(i!==-1)B(i);else if(w(t,z,p)){let e=M(t,{disabledIndices:p});D(t,e)||B(e)}E(A.current,r,o,n)});g(()=>{if(p==null||s!=null||!L.current)return;let e=I.current;if(w(e,z,p)){let t=M(e,{disabledIndices:p});D(e,t)||B(t)}},[p,s,z,I,B]);let H=r((e,t,n)=>a?a(e,t,n,I):n),U=r(e=>{let r=e.key===`Home`||e.key===`End`;if(!b.has(e.key)||!d&&r||ne(e,m)||!A.current)return;let s=o===`rtl`,c=s?O:k,l=s?k:O,u=n===`vertical`?j:c,h=n===`vertical`?T:l,g=N(e.nativeEvent);if(g!=null&&x(g)&&!J(g)){let t=g.selectionStart,n=g.selectionEnd,r=g.value;if(t==null||e.shiftKey||t!==n||e.key!==h&&t<r.length||e.key!==u&&t>0)return}let _=z,v=C(I,p),w=S(I,p);i!=null&&(_=i({disabledIndices:p,elementsRef:I,event:e,highlightedIndex:z,loopFocus:t,maxIndex:w,minIndex:v,onLoop:H,orientation:n,rtl:s}));let E=n!==`vertical`&&e.key===c||n!==`horizontal`&&e.key===`ArrowDown`,P=n!==`vertical`&&e.key===l||n!==`horizontal`&&e.key===`ArrowUp`;d&&(e.key===`Home`?_=v:e.key===`End`&&(_=w)),_===z&&(E||P)&&(t&&_===w&&E?(_=v,a&&(_=a(e,z,_,I))):t&&_===v&&P?(_=w,a&&(_=a(e,z,_,I))):_=M(I.current,{startingIndex:_,decrement:P,disabledIndices:p})),_!==z&&!D(I.current,_)&&(f&&e.stopPropagation(),(y||r||E||P)&&e.preventDefault(),B(_,!0),queueMicrotask(()=>{I.current[_]?.focus()}))});return{props:{ref:F,onFocus(e){let t=A.current,n=N(e.nativeEvent);t&&n!=null&&x(n)&&n.setSelectionRange(0,n.value.length)},onKeyDown:U},highlightedIndex:z,onHighlightedIndexChange:B,elementsRef:I,onMapChange:V,relayKeyboardEvent:U}}function te(e,t){let n=-1;for(let r=0;r<e.length;r+=1){let i=e[r];if(i&&!w(e,r,t)){if(i.hasAttribute(`data-composite-item-active`))return r;n===-1&&(n=r)}}return Math.max(n,0)}function ne(e,t){for(let n of A)if(!t.includes(n)&&e.getModifierState(n))return!0;return!1}var re=P.createContext(void 0);function Y(){return P.useContext(re)?.direction??`ltr`}function ie(e){let{render:t,className:n,style:r,refs:i=v,props:a=v,state:o=y,stateAttributesMapping:s,highlightedIndex:c,onHighlightedIndexChange:u,orientation:d,grid:f,loopFocus:m,onLoop:h,enableHomeAndEndKeys:g,onMapChange:_,stopEventPropagation:b=!0,rootRef:x,disabledIndices:S,modifierKeys:C,highlightItemOnHover:w=!1,tag:T=`div`,...E}=e,{props:D,highlightedIndex:O,onHighlightedIndexChange:k,elementsRef:A,onMapChange:j,relayKeyboardEvent:M}=ee({grid:f,loopFocus:m,onLoop:h,orientation:d,highlightedIndex:c,onHighlightedIndexChange:u,rootRef:x,stopEventPropagation:b,enableHomeAndEndKeys:g,direction:Y(),disabledIndices:S,modifierKeys:C}),N=p(T,e,{state:o,ref:i,props:[D,...a,E],stateAttributesMapping:s}),F=P.useMemo(()=>({highlightedIndex:O,onHighlightedIndexChange:k,highlightItemOnHover:w,relayKeyboardEvent:M}),[O,k,w,M]);return(0,L.jsx)(l.Provider,{value:F,children:(0,L.jsx)(R,{elementsRef:A,onMapChange:e=>{_?.(e),j(e)},children:N})})}var ae=P.createContext(void 0);function oe(e){let t=P.useContext(ae);if(t===void 0&&!e)throw Error(a(69));return t}function X(e){let{render:t,className:n,style:r,state:i=y,props:a=v,refs:o=v,metadata:s,stateAttributesMapping:c,tag:l=`div`,...u}=e,{compositeProps:d,compositeRef:f}=q({metadata:s});return p(l,e,{state:i,ref:[f,...o],props:[d,...a,u],stateAttributesMapping:c})}var Z=P.createContext(void 0);function se(){return P.useContext(Z)}var Q=P.forwardRef(function(e,t){let{className:n,defaultPressed:r=!1,disabled:a=!1,form:o,onPressedChange:c,pressed:l,render:m,type:h,value:g,nativeButton:_=!0,style:v,...y}=e,b=d(g||void 0),x=se(),S=x?.value??[],C=(a||x?.disabled)??!1,[w,T]=f({controlled:x?b!==void 0&&S.indexOf(b)>-1:l,default:r,name:`Toggle`,state:`pressed`}),{getButtonProps:E,buttonRef:D}=i({disabled:C,native:_}),O={disabled:C,pressed:w},k=[D,t],A=[{"aria-pressed":w,onClick(e){let t=!w,n=s(u,e.nativeEvent);c?.(t,n),!n.isCanceled&&(b&&x?.setGroupValue?.(b,t,n),!n.isCanceled&&T(t))}},y,E],j=p(`button`,e,{enabled:!x,state:O,ref:k,props:A}),M=P.useMemo(()=>({disabled:C,focusableWhenDisabled:!1}),[C]);return x?(0,L.jsx)(X,{tag:`button`,render:m,className:n,style:v,metadata:M,state:O,refs:k,props:A}):j}),$=m(`group/toggle inline-flex cursor-pointer items-center justify-center gap-1 rounded-lg text-sm font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-default disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-transparent`,outline:`border border-input bg-transparent hover:bg-muted`},size:{default:`h-8 min-w-8 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,sm:`h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,lg:`h-9 min-w-9 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`}},defaultVariants:{variant:`default`,size:`default`}});function ce({className:e,variant:t=`default`,size:n=`default`,...r}){return(0,L.jsx)(Q,{"data-slot":`toggle`,className:_($({variant:t,size:n,className:e})),...r})}export{X as a,Y as c,K as d,G as f,Z as i,J as l,$ as n,oe as o,R as p,Q as r,ie as s,ce as t,q as u};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n}from"./react-vendor-C6KcUD36.js";import{An as r,ft as i,gn as a,mn as o,vn as s}from"./DisclosureContext-DK1_iz6J.js";import{i as c,n as l,o as u,r as d,s as f}from"./toggle-DPeN6aNa.js";var p=e(t(),1),m=p.createContext(void 0);function h(){return p.useContext(m)}var g=n(),_=p.forwardRef(function(e,t){let{defaultValue:n,disabled:o=!1,loopFocus:l=!0,onValueChange:d,orientation:m=`horizontal`,multiple:_=!1,value:v,className:y,render:b,style:x,...S}=e,C=u(!0),w=h(),T=n??s,E=v!==void 0||n!==void 0,D=(C?.disabled??!1)||(w?.disabled??!1)||o,[O,k]=i({controlled:v,default:T,name:`ToggleGroup`,state:`value`}),A=r((e,t,n)=>{let r;_?(r=O.slice(),t?r.push(e):r.splice(O.indexOf(e),1)):r=t?[e]:[],d?.(r,n),!n.isCanceled&&k(r)}),j={disabled:D,multiple:_,orientation:m},M=p.useMemo(()=>({disabled:D,setGroupValue:A,value:O,isValueInitialized:E}),[D,A,O,E]),N={role:`group`},P=a(`div`,e,{enabled:!!C,state:j,ref:t,props:[N,S]});return(0,g.jsx)(c.Provider,{value:M,children:C?P:(0,g.jsx)(f,{render:b,className:y,style:x,state:j,refs:[t],props:[N,S],loopFocus:l,enableHomeAndEndKeys:!0,orientation:m})})}),v=p.createContext({size:`default`,variant:`default`,spacing:2,orientation:`horizontal`});function y({className:e,variant:t,size:n,spacing:r=2,orientation:i=`horizontal`,children:a,...s}){return(0,g.jsx)(_,{"data-slot":`toggle-group`,"data-variant":t,"data-size":n,"data-spacing":r,"data-orientation":i,style:{"--gap":r},className:o(`group/toggle-group flex w-fit flex-row items-center gap-[--spacing(var(--gap))] rounded-lg data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-vertical:flex-col data-vertical:items-stretch`,e),...s,children:(0,g.jsx)(v.Provider,{value:{variant:t,size:n,spacing:r,orientation:i},children:a})})}function b({className:e,children:t,variant:n=`default`,size:r=`default`,...i}){let a=p.useContext(v);return(0,g.jsx)(d,{"data-slot":`toggle-group-item`,"data-variant":a.variant||n,"data-size":a.size||r,"data-spacing":a.spacing,className:o(`shrink-0 group-data-[spacing=0]/toggle-group:rounded-none group-data-[spacing=0]/toggle-group:px-2 focus:z-10 focus-visible:z-10 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-end]:pr-1.5 group-data-[spacing=0]/toggle-group:has-data-[icon=inline-start]:pl-1.5 group-data-horizontal/toggle-group:data-[spacing=0]:first:rounded-l-lg group-data-vertical/toggle-group:data-[spacing=0]:first:rounded-t-lg group-data-horizontal/toggle-group:data-[spacing=0]:last:rounded-r-lg group-data-vertical/toggle-group:data-[spacing=0]:last:rounded-b-lg group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:border-l-0 group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:border-t-0 group-data-horizontal/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-l group-data-vertical/toggle-group:data-[spacing=0]:data-[variant=outline]:first:border-t`,l({variant:a.variant||n,size:a.size||r}),e),...i,children:t})}export{b as n,y as t};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t}from"./react-vendor-C6KcUD36.js";import"./DisclosureContext-DK1_iz6J.js";var n=e(t(),1);function r(e,t,r,i=null){let a=Math.ceil(e.length/6),o=Math.min(t,Math.max(0,a-1)),s=i==null||i===-1?o:Math.floor(i/6),c=e.slice(s*6,(s+1)*6);return(0,n.useLayoutEffect)(()=>{if(i==null||i===-1)return;let e=Math.floor(i/6);r(t=>t===e?t:e)},[i]),{totalPages:a,effectivePage:s,visible:c}}export{r as t};
@@ -0,0 +1,3 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n,r,s as i}from"./react-vendor-C6KcUD36.js";import{$ as a,An as o,Bn as s,Cn as c,Dn as l,En as u,F as d,Ft as f,Hn as p,Ht as m,It as h,J as g,Lt as _,M as v,On as y,Ot as b,P as x,R as S,S as C,Sn as w,St as T,Un as E,W as D,Wn as O,Xt as k,Y as A,Yt as j,_t as M,an as N,at as P,bn as F,bt as I,ct as L,et as R,f as z,fn as B,ft as V,gn as H,in as U,j as ee,jn as te,kn as W,l as ne,lt as G,mn as K,nt as re,on as q,pn as ie,q as ae,r as oe,rn as se,s as ce,sn as le,st as ue,tn as de,v as fe,vn as pe,vt as me,wn as he,yn as ge,yt as _e,zn as ve}from"./DisclosureContext-DK1_iz6J.js";import{_ as ye,m as be,t as xe,v as Se}from"./inertValue-L9VxV0VE.js";import{n as Ce,t as we}from"./button-DbpTz2yk.js";import{B as Te,C as Ee,D as De,E as Oe,G as ke,H as Ae,I as je,J as Me,K as Ne,L as Pe,N as Fe,O as Ie,P as Le,R as Re,S as ze,T as Be,U as Ve,V as He,Y as Ue,a as We,b as Ge,ct as Ke,d as qe,f as Je,ft as Ye,g as Xe,h as Ze,i as Qe,k as $e,l as et,lt as tt,n as nt,ot as rt,pt as it,r as at,s as ot,tt as st,u as ct,ut as lt,v as ut,w as dt,x as ft,y as pt,z as mt}from"./useScrollLock-BCxn_dMp.js";import{a as ht,b as gt,c as _t,d as vt,f as yt,g as bt,h as xt,i as St,l as Ct,m as wt,n as Tt,o as Et,r as Dt,s as Ot,t as kt,u as At,v as jt}from"./useRegisterFieldControl-pQv-ZDoU.js";import{_ as J,a as Mt,g as Nt,v as Pt}from"./composite-C9Nu2EI9.js";import{$ as Ft,C as It,Ct as Lt,D as Rt,G as zt,J as Bt,K as Vt,O as Ht,Q as Ut,T as Wt,X as Gt,Y as Kt,Z as qt,_ as Jt,_t as Yt,a as Xt,at as Zt,bt as Qt,c as $t,ct as en,d as tn,dt as nn,et as rn,f as an,ft as on,g as sn,gt as cn,h as ln,i as un,it as dn,lt as fn,m as pn,n as mn,nt as hn,o as gn,ot as _n,p as vn,pt as yn,r as bn,rt as xn,s as Sn,st as Cn,t as wn,tt as Tn,ut as En,v as Dn,vt as On,w as kn,wt as An}from"./index-fDiwfuoO.js";import{a as jn,c as Mn,d as Nn,o as Pn,p as Fn,t as In}from"./toggle-DPeN6aNa.js";import{t as Ln}from"./findings-of-type-BL2u3RGZ.js";var Rn={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Rn.node;var zn=U(Rn),Bn={name:`ellipsis`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]],aliases:[`more-horizontal`]};Bn.node;var Vn=U(Bn),Hn={name:`file-braces`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]],aliases:[`file-json`]};Hn.node;var Un=U(Hn),Wn={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]};Wn.node;var Gn=U(Wn),Kn={name:`keyboard`,size:24,node:[[`path`,{d:`M10 8h.01`,key:`1r9ogq`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M14 8h.01`,key:`1primd`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`M18 8h.01`,key:`emo2bl`}],[`path`,{d:`M6 8h.01`,key:`x9i8wu`}],[`path`,{d:`M7 16h10`,key:`wp8him`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}]]};Kn.node;var qn=U(Kn),Jn={name:`layout-dashboard`,size:24,node:[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]};Jn.node;var Yn=U(Jn),Y=e(t(),1);function Xn(e,t){return t!=null&&!st(t)?0:typeof e==`function`?e():e}function Zn(e,t,n){let r=Xn(e,n);return typeof r==`number`?r:r?.[t]}function Qn(e){return typeof e==`function`?e():e}function $n(e,t){return t||e===`click`||e===`mousedown`}function er(e){return e?.includes(`mouse`)&&e!==`mousedown`}var tr=r();function nr(e){let t=Y.useCallback(t=>e===void 0?F:e.subscribeStore(t),[e]),n=Y.useCallback(()=>e===void 0?void 0:e.store,[e]);return(0,tr.useSyncExternalStore)(t,n,()=>e?.serverStore)}var rr=Ke&&rt;function ir(e,t={}){let{enabled:n=!0,delay:r}=t,i=`rootStore`in e?e.rootStore:e,{events:a,dataRef:o}=i.context,c=Y.useRef(!1),l=Y.useRef(null),u=Y.useRef(!0),f=lt();Y.useEffect(()=>{let e=i.select(`domReferenceElement`);if(!n)return;let t=s(e);function r(){let e=i.select(`domReferenceElement`);!i.select(`open`)&&E(e)&&e===Nt(Se(e))&&(c.current=!0,l.current=e)}function a(){u.current=!0}function o(){u.current=!1}return Ve(d(t,`blur`,r),rr&&d(t,`keydown`,a,!0),rr&&d(t,`pointerdown`,o,!0))},[i,n]),Y.useEffect(()=>{if(!n)return;function e(e){if(e.reason===`trigger-press`||e.reason===`escape-key`){let e=i.select(`domReferenceElement`);p(e)&&(l.current=e,c.current=!0)}}return a.on(`openchange`,e),()=>{a.off(`openchange`,e)}},[a,n,i]);let m=Y.useMemo(()=>{function e(){c.current=!1,l.current=null}return{onMouseLeave(){e()},onFocus(t){let n=t.currentTarget;if(c.current){if(l.current===n)return;e()}let a=Pt(t.nativeEvent);if(p(a)){if(rr&&!t.relatedTarget){if(!u.current&&!Me(a))return}else if(!Ue(a))return}let o=Ne(t.relatedTarget,i.context.triggerElements),{nativeEvent:s,currentTarget:d}=t,m=typeof r==`function`?r():r;if(i.select(`open`)&&o||m===0||m===void 0){i.setOpen(!0,g(L,s,d));return}f.start(m,()=>{c.current||i.setOpen(!0,g(L,s,d))})},onBlur(t){e();let n=t.relatedTarget,r=t.nativeEvent,a=p(n)&&n.hasAttribute(je(`focus-guard`))&&n.getAttribute(`data-type`)===`outside`;f.start(0,()=>{let e=i.select(`domReferenceElement`),t=Nt(Se(e));(n||t!==e)&&(J(o.current.floatingContext?.refs.floating.current,t)||J(e,t)||a||Ne(n??t,i.context.triggerElements)||i.setOpen(!1,g(L,r)))})}}},[o,r,i,f]);return Y.useMemo(()=>n?{reference:m,trigger:m}:{},[n,m])}var ar=class e{constructor(){this.pointerType=void 0,this.interactedInside=!1,this.handler=void 0,this.blockMouseMove=!0,this.performedPointerEventsMutation=!1,this.pointerEventsScopeElement=null,this.pointerEventsReferenceElement=null,this.pointerEventsFloatingElement=null,this.restTimeoutPending=!1,this.openChangeTimeout=new tt,this.restTimeout=new tt,this.handleCloseOptions=void 0}static create(){return new e}dispose=()=>{this.openChangeTimeout.clear(),this.restTimeout.clear()};disposeEffect=()=>this.dispose},or=new WeakMap;function sr(e){if(!e.performedPointerEventsMutation)return;let t=e.pointerEventsScopeElement;t&&or.get(t)===e&&(e.pointerEventsScopeElement?.style.removeProperty(`pointer-events`),e.pointerEventsReferenceElement?.style.removeProperty(`pointer-events`),e.pointerEventsFloatingElement?.style.removeProperty(`pointer-events`),or.delete(t)),e.performedPointerEventsMutation=!1,e.pointerEventsScopeElement=null,e.pointerEventsReferenceElement=null,e.pointerEventsFloatingElement=null}function cr(e,t){let{scopeElement:n,referenceElement:r,floatingElement:i}=t,a=or.get(n);a&&a!==e&&sr(a),sr(e),e.performedPointerEventsMutation=!0,e.pointerEventsScopeElement=n,e.pointerEventsReferenceElement=r,e.pointerEventsFloatingElement=i,or.set(n,e),n.style.pointerEvents=`none`,r.style.pointerEvents=`auto`,i.style.pointerEvents=`auto`}function lr(e){let t=e.context.dataRef.current,n=te(()=>t.hoverInteractionState??ar.create()).current;return t.hoverInteractionState||=n,ae(t.hoverInteractionState.disposeEffect),t.hoverInteractionState}function ur(e,t={}){let{enabled:n=!0,closeDelay:r=0,nodeId:i}=t,a=`rootStore`in e?e.rootStore:e,s=a.useState(`open`),c=a.useState(`floatingElement`),l=a.useState(`domReferenceElement`),{dataRef:u}=a.context,f=De(),m=Oe(),h=lr(a),_=lt(),v=o(()=>$n(u.current.openEvent?.type,h.interactedInside)),y=o(()=>er(u.current.openEvent?.type)),b=o(()=>{sr(h)});W(()=>{s||(h.pointerType=void 0,h.restTimeoutPending=!1,h.interactedInside=!1,b())},[s,h,b]),Y.useEffect(()=>b,[b]),W(()=>{if(n&&s&&h.handleCloseOptions?.blockPointerEvents&&y()&&p(l)&&c){let e=l,t=c,n=Se(c),r=f?.nodesRef.current.find(e=>e.id===m)?.context?.elements.floating;r&&(r.style.pointerEvents=``);let i=h.pointerEventsScopeElement===t?null:h.pointerEventsScopeElement,a=r===t?null:r,o=h.handleCloseOptions?.getScope?.()??i??a??e.closest(`[data-rootownerid]`)??n.body;return cr(h,{scopeElement:o,referenceElement:e,floatingElement:t}),()=>{b()}}},[n,s,l,c,h,y,f,m,b]),Y.useEffect(()=>{if(!n)return;function e(){return!!(f&&m&&Pe(f.nodesRef.current,m).length>0)}function t(e){let t=Zn(r,`close`,h.pointerType),n=()=>{a.setOpen(!1,g(G,e)),f?.events.emit(`floating.closed`,e)};t?h.openChangeTimeout.start(t,n):(h.openChangeTimeout.clear(),n())}function o(e){let t=Pt(e);if(!ke(t)){h.interactedInside=!1;return}h.interactedInside=t?.closest(`[aria-haspopup]`)!=null}function s(){h.openChangeTimeout.clear(),_.clear(),f?.events.off(`floating.closed`,x),b()}function l(n){if(e()&&f){f.events.on(`floating.closed`,x);return}if(Ne(n.relatedTarget,a.context.triggerElements))return;let r=u.current.floatingContext?.nodeId??i,o=n.relatedTarget;if(!(f&&r&&p(o)&&Pe(f.nodesRef.current,r,!1).some(e=>J(e.context?.elements.floating,o)))){if(h.handler){h.handler(n);return}b(),y()&&!v()&&t(n)}}function x(t){f&&m&&!e()&&_.start(0,()=>{f.events.off(`floating.closed`,x),a.setOpen(!1,g(G,t)),f.events.emit(`floating.closed`,t)})}let S=c;return Ve(S&&d(S,`mouseenter`,s),S&&d(S,`mouseleave`,l),S&&d(S,`pointerdown`,o,!0),()=>{f?.events.off(`floating.closed`,x)})},[n,c,a,u,r,i,y,v,b,h,f,m,_])}var dr=e(i(),1),fr={current:null};function pr(e,t={}){let{enabled:n=!0,delay:r=0,handleClose:i=null,mouseOnly:a=!1,restMs:s=0,move:c=!0,triggerElementRef:l=fr,externalTree:u,isActiveTrigger:f=!0,getHandleCloseContext:m,isClosing:h,shouldOpen:_,guardStaleOpen:v=!1}=t,y=`rootStore`in e?e.rootStore:e,{dataRef:b,events:S}=y.context,C=De(u),w=lr(y),T=Y.useRef(!1),E=x(i),D=x(r),O=x(s),k=x(n),A=x(_),j=x(h),M=o(()=>$n(b.current.openEvent?.type,w.interactedInside)),N=o(()=>A.current?.()!==!1),P=o((e,t,n)=>{let r=y.context.triggerElements;if(r.hasElement(t))return!e||!J(e,t);if(!p(n))return!1;let i=n;return r.hasMatchingElement(e=>J(e,i))&&(!e||!J(e,i))}),F=o(()=>{w.handler&&=(Se(y.select(`domReferenceElement`)).removeEventListener(`mousemove`,w.handler),void 0)}),I=o(()=>{sr(w)});return f&&(w.handleCloseOptions=i?.__options),Y.useEffect(()=>F,[F]),Y.useEffect(()=>{if(!n)return;function e(e){e.open?T.current=!1:(T.current=e.reason===G,F(),w.openChangeTimeout.clear(),w.restTimeout.clear(),w.blockMouseMove=!0,w.restTimeoutPending=!1)}return S.on(`openchange`,e),()=>{S.off(`openchange`,e)}},[n,S,w,F]),Y.useEffect(()=>{if(!n)return;function e(e,t=!0){let n=Zn(D.current,`close`,w.pointerType);n?w.openChangeTimeout.start(n,()=>{y.setOpen(!1,g(G,e)),C?.events.emit(`floating.closed`,e)}):t&&(w.openChangeTimeout.clear(),y.setOpen(!1,g(G,e)),C?.events.emit(`floating.closed`,e))}let t=l.current??(f?y.select(`domReferenceElement`):null);if(!p(t))return;function r(e){if(w.openChangeTimeout.clear(),w.blockMouseMove=!1,a&&!st(w.pointerType))return;let t=Qn(O.current),n=Zn(D.current,`open`,w.pointerType),r=Pt(e),i=e.currentTarget??null,o=y.select(`domReferenceElement`),s=i;if(p(r)&&!y.context.triggerElements.hasElement(r)){for(let e of y.context.triggerElements.elements())if(J(e,r)){s=e;break}}p(i)&&p(o)&&!y.context.triggerElements.hasElement(i)&&J(i,o)&&(s=o);let c=s!=null&&P(o,s,r),l=y.select(`open`),u=j.current?.()??y.select(`transitionStatus`)===`ending`,d=!l&&u&&T.current,f=!c&&p(s)&&p(o)&&J(o,s)&&d,m=t>0&&!n,h=c&&(l||d)||f,_=!l||c;if(h){N()&&y.setOpen(!0,g(G,e,s));return}m||(n?w.openChangeTimeout.start(n,()=>{_&&N()&&y.setOpen(!0,g(G,e,s))}):_&&N()&&y.setOpen(!0,g(G,e,s)))}function i(t){if(M()){I();return}F();let n=y.select(`domReferenceElement`),r=Se(n);w.restTimeout.clear(),w.restTimeoutPending=!1;let i=b.current.floatingContext??m?.();if(!Ne(t.relatedTarget,y.context.triggerElements)){if(E.current&&i){y.select(`open`)||w.openChangeTimeout.clear();let n=l.current;w.handler=E.current({...i,tree:C,x:t.clientX,y:t.clientY,onClose(){I(),F(),k.current&&!M()&&n===y.select(`domReferenceElement`)&&e(t,!0)}}),r.addEventListener(`mousemove`,w.handler),w.handler(t);return}(w.pointerType!==`touch`||!J(y.select(`floatingElement`),t.relatedTarget))&&e(t)}}function o(e){J(t,e.relatedTarget)||(w.openChangeTimeout.clear(),w.restTimeout.clear(),w.restTimeoutPending=!1)}let s=v?d(t,`mouseout`,o):void 0;return c?Ve(d(t,`mousemove`,r,{once:!0}),d(t,`mouseenter`,r),d(t,`mouseleave`,i),s):Ve(d(t,`mouseenter`,r),d(t,`mouseleave`,i),s)},[F,I,b,D,y,n,E,w,f,P,M,a,c,O,l,C,k,m,j,N,v]),Y.useMemo(()=>{if(!n)return;function e(e){w.pointerType=e.pointerType}return{onPointerDown:e,onPointerEnter:e,onMouseMove(e){let{nativeEvent:t}=e,n=e.currentTarget,r=y.select(`domReferenceElement`),i=y.select(`open`),o=P(r,n,e.target);if(a&&!st(w.pointerType))return;if(i&&o&&w.handleCloseOptions?.blockPointerEvents){let e=y.select(`floatingElement`);if(e){let t=w.handleCloseOptions?.getScope?.()??n.ownerDocument.body;cr(w,{scopeElement:t,referenceElement:n,floatingElement:e})}}let s=Qn(O.current);if(i&&!o||s===0||!o&&w.restTimeoutPending&&e.movementX**2+e.movementY**2<2)return;w.restTimeout.clear();function c(){if(w.restTimeoutPending=!1,M())return;let e=y.select(`open`);!w.blockMouseMove&&(!e||o)&&N()&&y.setOpen(!0,g(G,t,n))}w.pointerType===`touch`?dr.flushSync(()=>{c()}):o&&i?c():(w.restTimeoutPending=!0,w.restTimeout.start(s,c))}}},[n,w,M,P,a,y,O,N])}var mr=.1,hr=mr*mr,X=.5;function gr(e,t,n,r,i,a){return r>=t!=a>=t&&e<=(i-n)*(t-r)/(a-r)+n}function _r(e,t,n,r,i,a,o,s,c,l){let u=!1;return gr(e,t,n,r,i,a)&&(u=!u),gr(e,t,i,a,o,s)&&(u=!u),gr(e,t,o,s,c,l)&&(u=!u),gr(e,t,c,l,n,r)&&(u=!u),u}function vr(e,t,n){return e>=n.x&&e<=n.x+n.width&&t>=n.y&&t<=n.y+n.height}function yr(e,t,n,r,i,a){return e>=Math.min(n,i)&&e<=Math.max(n,i)&&t>=Math.min(r,a)&&t<=Math.max(r,a)}function br(e={}){let{blockPointerEvents:t=!1}=e,n=new tt,r=({x:e,y:t,placement:r,elements:i,onClose:a,nodeId:o,tree:s})=>{let c=r?.split(`-`)[0],l=!1,u=null,d=null,f=typeof performance<`u`?performance.now():0;function m(e,t){let n=performance.now(),r=n-f;if(u===null||d===null||r===0)return u=e,d=t,f=n,!1;let i=e-u,a=t-d,o=i*i+a*a,s=r*r*hr;return u=e,d=t,f=n,o<s}function h(){n.clear(),a()}return function(r){n.clear();let a=i.domReference,u=i.floating;if(!a||!u||c==null||e==null||t==null)return;let{clientX:d,clientY:f}=r,g=Pt(r),_=r.type===`mouseleave`,v=J(u,g),y=J(a,g);if(v&&(l=!0,!_))return;if(y&&(l=!1,!_)){l=!0;return}if(_&&p(r.relatedTarget)&&J(u,r.relatedTarget))return;function b(){return!!(s&&Pe(s.nodesRef.current,o).length>0)}function x(){b()||h()}if(b())return;let S=a.getBoundingClientRect(),C=u.getBoundingClientRect(),w=e>C.right-C.width/2,T=t>C.bottom-C.height/2,E=C.width>S.width,D=C.height>S.height,O=(E?S:C).left,k=(E?S:C).right,A=(D?S:C).top,j=(D?S:C).bottom;if(c===`top`&&t>=S.bottom-1||c===`bottom`&&t<=S.top+1||c===`left`&&e>=S.right-1||c===`right`&&e<=S.left+1){x();return}let M=!1;switch(c){case`top`:M=yr(d,f,O,S.top+1,k,C.bottom-1);break;case`bottom`:M=yr(d,f,O,C.top+1,k,S.bottom-1);break;case`left`:M=yr(d,f,C.right-1,j,S.left+1,A);break;case`right`:M=yr(d,f,S.right-1,j,C.left+1,A)}if(M)return;if(l&&!vr(d,f,S)){x();return}if(!_&&m(d,f)){x();return}let N=!1;switch(c){case`top`:{let n=E?X/2:X*4,r=E||w?e+n:e-n,i=E?e-n:w?e+n:e-n,a=t+X+1,o=w||E?C.bottom-X:C.top,s=w?E?C.bottom-X:C.top:C.bottom-X;N=_r(d,f,r,a,i,a,C.left,o,C.right,s);break}case`bottom`:{let n=E?X/2:X*4,r=E||w?e+n:e-n,i=E?e-n:w?e+n:e-n,a=t-X,o=w||E?C.top+X:C.bottom,s=w?E?C.top+X:C.bottom:C.top+X;N=_r(d,f,r,a,i,a,C.left,o,C.right,s);break}case`left`:{let n=D?X/2:X*4,r=D||T?t+n:t-n,i=D?t-n:T?t+n:t-n,a=e+X+1,o=T||D?C.right-X:C.left,s=T?D?C.right-X:C.left:C.right-X;N=_r(d,f,o,C.top,s,C.bottom,a,r,a,i);break}case`right`:{let n=D?X/2:X*4,r=D||T?t+n:t-n,i=D?t-n:T?t+n:t-n,a=e-X,o=T||D?C.left+X:C.right,s=T?D?C.left+X:C.right:C.left+X;N=_r(d,f,a,r,a,i,o,C.top,s,C.bottom);break}}N?l||n.start(40,x):x()}};return r.__options={...e,blockPointerEvents:t},r}var xr=Y.createContext(void 0);function Sr(e){let t=Y.useContext(xr);if(t===void 0&&!e)throw Error(l(33));return t}var Cr=Y.createContext(void 0);function wr(e){let t=Y.useContext(Cr);if(t===void 0&&!e)throw Error(l(36));return t}var Tr=Y.createContext(void 0);function Er(e=!0){let t=Y.useContext(Tr);if(t===void 0&&!e)throw Error(l(25));return t}var Dr=Y.createContext(void 0);function Or(){let e=Y.useContext(Dr);if(e===void 0)throw Error(l(30));return e}function kr(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:a,typingRef:o,itemRef:s,itemMetadata:c}=e,{events:l}=a.useState(`floatingTreeRoot`),u=a.useState(`open`),d=Er(!0),f=d!==void 0;return Y.useMemo(()=>({id:r,role:`menuitem`,tabIndex:u&&n?0:-1,onKeyDown(e){e.key===` `&&o?.current&&e.preventDefault()},onMouseMove(e){i&&l.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&l.emit(`close`,{domEvent:e,reason:re})},onMouseUp(e){if(d){let t=d.initialCursorPointRef.current;if(d.initialCursorPointRef.current=null,f&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||f&&!Ke&&e.button===2)return}s.current&&a.context.allowMouseUpTriggerRef.current&&(!f||e.button===2)&&c.type===`regular-item`&&he(s.current,e,{detail:1})}}),[t,n,r,l,i,u,a,o,s,d,f,c])}var Ar={type:`regular-item`};function jr(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:l,nodeId:u}=e,d=Y.useRef(null),{getButtonProps:f,buttonRef:p}=c({disabled:n,focusableWhenDisabled:!0,native:s,composite:!0}),m=kr({closeOnClick:t,highlighted:r,id:i,nodeId:u,store:a,typingRef:o,itemRef:d,itemMetadata:l}),h=Y.useCallback(e=>y(m,{onMouseEnter(){l.type===`submenu-trigger`&&l.setActive()}},e,f),[m,f,l]),g=w(d,p);return Y.useMemo(()=>({getItemProps:h,itemRef:g}),[h,g])}var Mr=`data-checked`,Nr=`data-unchecked`,Pr={checked(e){return e?{[Mr]:``}:{[Nr]:``}},...S},Z=n(),Fr=Y.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!1,checked:l,defaultChecked:u,onCheckedChange:d,style:f,...p}=e,m=Nn({guess:!0,label:a}),h=Sr(!0),_=B(i),{store:v}=wr(),y=v.useState(`disabled`),b=s||y,x=v.useState(`isActive`,m.index),S=v.useState(`itemProps`),[C,w]=V({controlled:l,default:u??!1,name:`MenuCheckboxItem`,state:`checked`}),{getItemProps:T,itemRef:E}=jr({closeOnClick:c,disabled:b,highlighted:x,id:_,store:v,nativeButton:o,nodeId:h?.context.nodeId,itemMetadata:Ar}),D=Y.useMemo(()=>({disabled:b,highlighted:x,checked:C}),[b,x,C]);function O(e){let t=g(re,e.nativeEvent,void 0,{preventUnmountOnClose:F});d?.(!C,t),!t.isCanceled&&w(e=>!e)}let k=H(`div`,e,{state:D,stateAttributesMapping:Pr,props:[S,{role:`menuitemcheckbox`,"aria-checked":C,onClick:O},p,T],ref:[E,t,m.ref]});return(0,Z.jsx)(Dr.Provider,{value:D,children:k})}),Ir=Y.forwardRef(function(e,t){let{render:n,className:r,style:i,keepMounted:a=!1,...o}=e,s=Or(),c=Y.useRef(null),{transitionStatus:l,mounted:u,setMounted:d}=D(s.checked);ee({batch:!0,enabled:!s.checked,open:s.checked,ref:c,onComplete(){s.checked||d(!1)}});let f={checked:s.checked,disabled:s.disabled,highlighted:s.highlighted,transitionStatus:l};return H(`span`,e,{state:f,ref:[t,c],stateAttributesMapping:Pr,props:{"aria-hidden":!0,...o},enabled:a||u})}),Lr=Y.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=Nn({guess:!0,label:a}),f=Sr(!0),p=B(i),{store:m}=wr(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=jr({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:Ar});return H(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),Rr=Y.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=wr(),{side:c,align:l}=Sr(),u=Pn(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),_=s.useState(`activeTriggerElement`),v=s.useState(`parent`),y=s.useState(`lastOpenChangeReason`),b=s.useState(`rootId`),x=s.useState(`floatingRootContext`),S=s.useState(`floatingTreeRoot`),C=s.useState(`closeDelay`),w=s.useState(`hoverEnabled`),T=s.useState(`disabled`),E=s.useState(`openMethod`),D=v.type===`context-menu`;ee({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),Y.useEffect(()=>{function e(e){s.setOpen(!1,g(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,s]),ur(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=s.useStateSetter(`popupElement`),k={transitionStatus:f,side:c,align:l,open:d,nested:v.type===`menu`,instant:h},A=H(`div`,e,{state:k,ref:[t,s.context.popupRef,O],stateAttributesMapping:Ye,props:[p,{onKeyDown(e){u&&Mt.has(e.key)&&e.stopPropagation()}},vt(f),o,{"data-rootownerid":b}]}),j=v.type===void 0||D;return(_||v.type===`menubar`&&y!==`outside-press`)&&(j=!0),(0,Z.jsx)(ze,{context:x,openInteractionType:E,modal:D,disabled:!m,returnFocus:a===void 0?j:a,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:_,nextFocusableElement:v.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:A})}),zr=Y.createContext(void 0);function Br(){let e=Y.useContext(zr);if(e===void 0)throw Error(l(32));return e}var Vr=Y.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i,parent:a}=wr();if(!(i.useState(`mounted`)||n))return null;let o=a.type===`menu`||a.type===`menubar`?`group`:void 0;return(0,Z.jsx)(zr.Provider,{value:n,children:(0,Z.jsx)($e,{ref:t,...r,portalOwnerRole:o})})}),Hr=Y.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=Fe,style:_,...y}=e,{store:b}=wr(),x=Br(),S=Er(!0),C=b.useState(`parent`),w=b.useState(`floatingRootContext`),T=b.useState(`floatingTreeRoot`),E=b.useState(`mounted`),D=b.useState(`open`),O=b.useState(`modal`),k=b.useState(`openMethod`),A=b.useState(`activeTriggerElement`),j=b.useState(`transitionStatus`),M=b.useState(`positionerElement`),N=b.useState(`instantType`),P=b.useState(`adaptiveOrigin`),F=b.useState(`lastOpenChangeReason`),I=b.useState(`floatingNodeId`),L=b.useState(`floatingParentNodeId`),R=w.useState(`domReferenceElement`),z=Y.useRef(null),B=v(M),V=n,H=c,U=l,ee=s,te=h;C.type===`context-menu`&&(V=n??C.context?.anchor,ee??=`start`,!o&&ee!==`center`&&(U=e.alignOffset??2,H=e.sideOffset??-5));let ne=o,G=ee;C.type===`menu`?(ne??=`inline-end`,G??=`start`,te=e.collisionAvoidance??Le):C.type===`menubar`&&(ne??=C.context.orientation===`vertical`?`inline-end`:`bottom`,G??=`start`);let K=C.type===`context-menu`,re=At({anchor:V,floatingRootContext:w,positionMethod:S?`fixed`:r,mounted:E,side:ne,sideOffset:H,align:G,alignOffset:U,arrowPadding:K?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:I,keepMounted:x,disableAnchorTracking:m,collisionAvoidance:te,shift:K?{crossAxis:!(`side`in te&&te.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:T,adaptiveOrigin:P});Y.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===I&&b.set(`hoverEnabled`,!1),e.nodeId!==I&&e.parentNodeId===b.select(`floatingParentNodeId`)&&b.setOpen(!1,g(ue)))}return T.events.on(`menuopenchange`,e),()=>{T.events.off(`menuopenchange`,e)}},[b,T.events,I]),Y.useEffect(()=>{if(b.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==b.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;b.setOpen(!1,g(t))}return T.events.on(`menuopenchange`,e),()=>{T.events.off(`menuopenchange`,e)}},[T.events,b]);let q=lt();Y.useEffect(()=>{D||q.clear()},[D,q]),Y.useEffect(()=>{function e(e){if(D&&e.nodeId===b.select(`floatingParentNodeId`)){if(e.target&&A&&A!==e.target){let e=b.select(`closeDelay`);e>0?q.isStarted()||q.start(e,()=>{b.setOpen(!1,g(ue))}):b.setOpen(!1,g(ue))}else q.clear()}}return T.events.on(`itemhover`,e),()=>{T.events.off(`itemhover`,e)}},[T.events,D,A,b,q]),Y.useEffect(()=>{let e={open:D,nodeId:I,parentNodeId:L,reason:b.select(`lastOpenChangeReason`)};T.events.emit(`menuopenchange`,e)},[T.events,D,b,I,L]),W(()=>{let e=R,t=z.current;if(e&&(z.current=e),t&&e&&e!==t){b.set(`instantType`,void 0);let e=new AbortController;return B(()=>{b.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[R,B,b]);let ie={open:D,side:re.side,align:re.align,anchorHidden:re.anchorHidden,nested:C.type===`menu`,instant:N},ae=C.type===`menubar`&&C.context.modal;_t(D&&(ae||O&&F!==`trigger-hover`),k===`touch`,M,A);let oe=Ct(e,ie,{styles:re.positionerStyles,transitionStatus:j,props:y,refs:[t,b.useStateSetter(`positionerElement`)],hidden:!E,inert:!D}),se=E&&C.type!==`menu`&&(C.type!==`menubar`&&O&&F!==`trigger-hover`||C.type===`menubar`&&C.context.modal),ce=null;return C.type===`menubar`?ce=C.context.contentElement:C.type===void 0&&(ce=A),(0,Z.jsxs)(xr.Provider,{value:re,children:[se&&(0,Z.jsx)(nt,{ref:C.type===`context-menu`||C.type===`nested-context-menu`?C.context.internalBackdropRef:null,inert:xe(!D),cutout:ce}),(0,Z.jsx)(Ee,{id:I,children:(0,Z.jsx)(Fn,{elementsRef:b.context.itemDomElements,labelsRef:b.context.itemLabels,children:oe})})]})}),Ur=Y.createContext(null);function Wr(e){let t=Y.useContext(Ur);if(t===null&&!e)throw Error(l(5));return t}var Gr={...Vt,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},Kr=class extends ut{constructor(e,t,n=!1){let r=new at,i=Jr(r,t,n,e);super(i,qr(r),Gr),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function qr(e){return{positionerRef:Y.createRef(),popupRef:Y.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:Y.createRef(),beforeContentFocusGuardRef:Y.createRef(),onOpenChangeComplete:void 0,triggerElements:e}}function Jr(e,t,n=!1,r){return{...zt(e,t,n),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new Ie,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:ge,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0,...r}}var Yr=Y.createContext(void 0);function Xr(){return Y.useContext(Yr)}var Zr=pt(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:s=!1,modal:c,loopFocus:l=!0,orientation:u=`vertical`,actionsRef:d,closeParentOnEsc:f=!1,handle:p,triggerId:m,defaultTriggerId:h=null,highlightItemOnHover:_=!0}=e,b=Er(!0),x=wr(!0),S=Wr(!0),C=Xr(),w=Y.useMemo(()=>C&&x?{type:`menu`,store:x.store}:S?{type:`menubar`,context:S}:b&&!x?{type:`context-menu`,context:b}:{type:void 0},[b,x,S,C]),T=ie(),E=ie(),D=Oe(),O=w.type===`menu`?w.store:void 0,k=(n??a)&&O?.state.transitionStatus===`starting`,A=te(()=>k?O?.state.instantType:void 0).current,j=Qr({open:a,openProp:n,activeTriggerId:h,triggerIdProp:m,parent:w,disabled:s,highlightItemOnHover:_,modal:w.type===void 0?c:void 0,rootId:T,instantType:A},E,D!=null);j.useControlledProp(`openProp`,n),j.useControlledProp(`triggerIdProp`,m),j.useContextCallback(`onOpenChangeComplete`,i);let M=j.useState(`floatingTreeRoot`),N=Be(M),P=j.useState(`open`),F=j.useState(`activeTriggerElement`),I=j.useState(`positionerElement`),L=j.useState(`hoverEnabled`),z=j.useState(`disabled`),B=j.useState(`lastOpenChangeReason`),V=j.useState(`parent`),H=j.useState(`activeIndex`),U=j.useState(`payload`),ee=j.useState(`floatingParentNodeId`),ne=Y.useRef(null),G=Y.useRef(V.type!==`context-menu`),K=lt(),re=Y.useRef(!0),q=lt(),ae=ee!=null,{openMethod:oe,triggerProps:se}=yt(P);j.useSyncedValues({disabled:s,highlightItemOnHover:_,modal:V.type===void 0?c:void 0,openMethod:oe,rootId:T}),ct(j);let{forceUnmount:ce,transitionStatus:le}=qe(P,j,()=>{j.set(`allowMouseEnter`,!1)},k),ue=v(j.context.popupRef);Y.useEffect(()=>{if(A===void 0)return;let e=()=>{j.state.instantType===A&&j.set(`instantType`,void 0)};if(!P){e();return}if(le!==void 0)return;if(j.context.popupRef.current==null){e();return}let t=new AbortController;return ue(e,t.signal),()=>{t.abort()}},[A,P,le,ue,j]),W(()=>{b&&!x?j.update({parent:{type:`context-menu`,context:b},floatingNodeId:N,floatingParentNodeId:D}):x&&j.update({floatingNodeId:N,floatingParentNodeId:D})},[b,x,N,D,j]),Y.useEffect(()=>{if(P||(ne.current=null),V.type===`context-menu`){if(!P){K.clear(),G.current=!1;return}K.start(500,()=>{G.current=!0})}},[K,P,V.type]),W(()=>{!P&&!L&&j.set(`hoverEnabled`,!0)},[P,L,j]);let de=o((e,t)=>{let n=t.reason;if(!e&&!j.select(`open`)||P===e&&t.trigger===F&&B===n)return;let i=ot(t);if(!e&&t.trigger==null&&(t.trigger=F??void 0),r?.(e,t),t.isCanceled)return;j.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!re.current)return;e&&n===`trigger-focus`?(re.current=!1,q.start(300,()=>{re.current=!0})):(re.current=!0,q.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null);ne.current=t.event;let c=et(j.state,e,t.trigger,i());c.openChangeReason=n,c.instantType=V.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?`group`:o||s?o?`click`:`dismiss`:void 0,j.update(c)}),fe=Xe({popupStore:j,floatingRootContext:j.state.floatingRootContext,floatingId:E,nested:D!=null,onOpenChange:de}),me=fe.context.events;W(()=>{let e=({open:e,eventDetails:t})=>de(e,t);return me.on(`setOpen`,e),()=>{me?.off(`setOpen`,e)}},[me,de]);let he=Y.useCallback(()=>{j.setOpen(!1,g(R))},[j]);Y.useImperativeHandle(d,()=>({unmount:ce,close:he}),[ce,he]);let _e;V.type===`context-menu`&&(_e=V.context),Y.useImperativeHandle(_e?.positionerRef,()=>I,[I]),Y.useImperativeHandle(_e?.actionsRef,()=>({setOpen:de}),[de]);let ve=ft(fe,{enabled:!z,bubbles:{escapeKey:f&&V.type===`menu`},outsidePress(){return V.type!==`context-menu`||ne.current?.type===`contextmenu`||G.current},externalTree:ae?M:void 0}),ye=Mn(),be=Y.useCallback(e=>{j.select(`activeIndex`)!==e&&j.set(`activeIndex`,e)},[j]),xe=bt(fe,{enabled:!z,listRef:j.context.itemDomElements,activeIndex:H,nested:V.type!==void 0,loopFocus:l,orientation:u,parentOrientation:V.type===`menubar`?V.context.orientation:void 0,rtl:ye===`rtl`,disabledIndices:pe,onNavigate:be,openOnArrowKeyDown:V.type!==`context-menu`,externalTree:ae?M:void 0,focusItemOnHover:_}),Se=Y.useCallback(e=>{j.context.typingRef.current=e},[j]),Ce=xt(fe,{enabled:!z,listRef:j.context.itemLabels,elementsRef:j.context.itemDomElements,activeIndex:H,resetMs:500,onMatch:e=>{P&&e!==H&&j.set(`activeIndex`,e)},onTyping:Se}),we=Y.useMemo(()=>{let e=y(Ce.reference,xe.reference,ve.reference,{onMouseMove(){j.set(`allowMouseEnter`,!0)}},se);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=P,e},[j,Ce.reference,xe.reference,ve.reference,se,P]),Te=Y.useMemo(()=>{let e=y(xe.trigger,ve.trigger,se);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[xe.trigger,ve.trigger,se]);te(()=>(j.update({inactiveTriggerProps:Te}),null));let Ee=Y.useMemo(()=>y(Qe,{id:E,role:`menu`,"aria-orientation":u===`horizontal`?`horizontal`:void 0,"aria-labelledby":F?.id,onMouseMove(){j.set(`allowMouseEnter`,!0),V.type===`menu`&&j.set(`hoverEnabled`,!1)},onClick(){j.select(`hoverEnabled`)&&j.set(`hoverEnabled`,!1)},onKeyDown(e){let t=j.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},Ce.floating,xe.floating,ve.floating),[F,E,u,V.type,j,Ce.floating,xe.floating,ve.floating]),De=xe.item??ge;Je(j,{floatingRootContext:fe,activeTriggerProps:we,inactiveTriggerProps:Te,popupProps:Ee,itemProps:De});let ke=Y.useMemo(()=>({store:j,parent:w}),[j,w]),Ae=(0,Z.jsxs)(Cr.Provider,{value:ke,children:[p&&(0,Z.jsx)(We,{handle:p,store:j}),typeof t==`function`?t({payload:U}):t]});return V.type===void 0||V.type===`context-menu`?(0,Z.jsx)(dt,{externalTree:M,children:Ae}):Ae});function Qr(e,t,n){return te(()=>new Kr(e,t,n)).current}function $r(e){if(E(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!O(e))return $r(ve(e))}function ei(e,t){let n=Y.useRef(null);function r(t){dr.flushSync(()=>{e.setOpen(!1,g(a,t.nativeEvent,t.currentTarget))}),Te(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&He(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{dr.flushSync(()=>{e.setOpen(!1,g(a,n.nativeEvent,n.currentTarget))});let i=mt(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&J(r,i);){let e=i;if(i=Re(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function ti(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=Y.useRef(!1);return Y.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,Se(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:ge,[t,n,r])}var ni=Ge(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:s=!0,id:d,openOnHover:f,delay:p=100,closeDelay:m=0,handle:h,payload:g,..._}=e,v=wr(!0),b=nr(h)??v?.store;if(!b)throw Error(l(85));let x=B(d),S=b.useState(`isTriggerActive`,x),C=b.useState(`floatingRootContext`),w=b.useState(`isOpenedByTrigger`,x),T=b.useState(`triggerPopupId`,x),E=Y.useRef(null),D=ii(),O=u(!0),k=De(),j=Y.useMemo(()=>k??new Ie,[k]),M=Be(j),N=Oe(),{registerTrigger:P,isMountedByThisTrigger:F}=Ze(x,E,b,{payload:g,closeDelay:m,parent:D,floatingTreeRoot:j,floatingNodeId:M,floatingParentNodeId:N,keyboardEventRelay:O?.relayKeyboardEvent}),I=D.type===`menubar`,L=b.useState(`disabled`),R=a||L||I&&D.context.disabled,{getButtonProps:z,buttonRef:V}=c({disabled:R,native:s});Y.useEffect(()=>{!w&&D.type===void 0&&(b.context.allowMouseUpTriggerRef.current=!1)},[b,w,D.type]);let U=Y.useRef(null),ee=lt(),te=o(e=>{if(!U.current)return;ee.clear(),b.context.allowMouseUpTriggerRef.current=!1;let t=e.target;J(U.current,t)||J(b.select(`positionerElement`),t)||t===U.current||(t==null||$r(t)!==b.select(`rootId`))&&(Ot(e,U.current)||j.events.emit(`close`,{domEvent:e,reason:A}))});Y.useEffect(()=>{w&&b.select(`lastOpenChangeReason`)===`trigger-hover`&&Se(U.current).addEventListener(`mouseup`,te,{once:!0})},[w,te,b]);let W=I&&D.context.hasSubmenuOpen,ne=pr(C,{enabled:(f??W)&&!R&&(!I||W&&!F),handleClose:br({blockPointerEvents:!I}),mouseOnly:!0,move:!1,restMs:D.type===void 0?p:void 0,delay:{close:m},triggerElementRef:E,externalTree:j,isActiveTrigger:S,isClosing:()=>b.select(`transitionStatus`)===`ending`}),G=ri(w,b.select(`lastOpenChangeReason`)),K=jt(C,{enabled:!R,event:w&&I?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:D.type===void 0&&G}),re=ir(C,{enabled:!R&&W}),q=ti({open:w,enabled:I,mouseDownAction:`open`}),ie=Y.useMemo(()=>y(re.reference,K.reference),[re.reference,K.reference]),ae=b.useState(`triggerProps`,F),{preFocusGuardRef:oe,handlePreFocusGuardFocus:se,handleFocusTargetFocus:ce}=ei(b,E),le={disabled:R,open:w},ue=[U,t,V,P,E],de=[ie,ne??ge,ae,{"aria-haspopup":`menu`,"aria-controls":T,id:x,onMouseDown:e=>{b.select(`open`)||(ee.start(200,()=>{b.context.allowMouseUpTriggerRef.current=!0}),Se(e.currentTarget).addEventListener(`mouseup`,te,{once:!0}))}},I?{role:`menuitem`}:{},q,_,z],fe=H(`button`,e,{enabled:!I,stateAttributesMapping:it,state:le,ref:ue,props:de});return I?(0,Z.jsx)(jn,{tag:`button`,render:n,className:r,style:i,state:le,refs:ue,props:de,stateAttributesMapping:it}):w?(0,Z.jsxs)(Y.Fragment,{children:[(0,Z.jsx)(Ae,{ref:oe,onFocus:se},`${x}-pre-focus-guard`),(0,Z.jsx)(Y.Fragment,{children:fe},x),(0,Z.jsx)(Ae,{ref:b.context.triggerFocusTargetRef,onFocus:ce},`${x}-post-focus-guard`)]}):(0,Z.jsx)(Y.Fragment,{children:fe},x)});function ri(e,t){let n=lt(),[r,i]=Y.useState(!1);return W(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function ii(){let e=Wr(!0);return Y.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}var ai=Y.forwardRef(function(e,t){let{className:n,render:r,orientation:i=`horizontal`,style:a,...o}=e;return H(`div`,e,{state:{orientation:i},ref:t,props:[{role:`separator`,"aria-orientation":i},o]})});function oi({...e}){return(0,Z.jsx)(Zr,{"data-slot":`dropdown-menu`,...e})}function si({...e}){return(0,Z.jsx)(ni,{"data-slot":`dropdown-menu-trigger`,...e})}function ci({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,Z.jsx)(Vr,{children:(0,Z.jsx)(Hr,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,Z.jsx)(Rr,{"data-slot":`dropdown-menu-content`,className:K(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none`,i),...a})})})}function li({className:e,inset:t,variant:n=`default`,...r}){return(0,Z.jsx)(Lr,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:K(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}function ui({className:e,children:t,checked:n,inset:r,indicatorPosition:i=`end`,...a}){return(0,Z.jsxs)(Fr,{"data-slot":`dropdown-menu-checkbox-item`,"data-inset":r,className:K(`relative flex cursor-default items-center gap-1.5 rounded-md py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,i===`start`?`pr-1.5 pl-7`:`pr-8 pl-1.5`,e),checked:n,...a,children:[(0,Z.jsx)(`span`,{className:K(`pointer-events-none absolute flex items-center justify-center`,i===`start`?`left-1.5`:`right-2`),"data-slot":`dropdown-menu-checkbox-item-indicator`,children:(0,Z.jsx)(Ir,{children:(0,Z.jsx)(gt,{})})}),t]})}function di({className:e,...t}){return(0,Z.jsx)(ai,{"data-slot":`dropdown-menu-separator`,className:K(`-mx-1 my-1 h-px bg-border`,e),...t})}var fi=Y.forwardRef(function(e,t){let{render:n,className:r,id:i,name:a,value:s,disabled:c=!1,onValueChange:l,defaultValue:u,autoFocus:d=!1,style:f,...p}=e,{state:m,name:h,disabled:_,setTouched:v,setDirty:y,validityData:b,setFocused:x,setFilled:S,validationMode:C,validation:w}=ht(),{clearErrors:T,elementRef:E,submitCountRef:D}=St(),O=_||c,k=h??a,A={...m,disabled:O},{labelId:j}=Dt(),M=Tt({id:i}),[N]=V({controlled:s,default:u,name:`FieldControl`,state:`value`}),F=s!==void 0,I=F?N:void 0,L=I==null?void 0:String(I),R=o(()=>w.inputRef.current?.value);kt(w.inputRef,M,L,R,!O,a),W(()=>{let e=L??w.inputRef.current?.value;e!==void 0&&S(e!==``)},[L,w.inputRef,S]),wt(L,()=>{L!==void 0&&(T(k),y(L!==(b.initialValue??``)),w.change(L))});let z=Y.useRef(null),B=lt();return W(()=>{d&&z.current===Nt(Se(z.current))&&x(!0)},[d,x]),H(`input`,e,{ref:[t,z],state:A,props:[{id:M,disabled:O,name:k,ref:w.inputRef,"aria-labelledby":j,autoFocus:d,...F?{value:I}:{defaultValue:u},onChange(e){let t=e.currentTarget.value,n=g(P,e.nativeEvent);l?.(t,n),!F&&(y(t!==(b.initialValue??``)),S(t!==``),!e.nativeEvent.defaultPrevented&&!n.isCanceled&&(T(k),w.change(t)))},onFocus(){x(!0)},onBlur(e){if(v(!0),x(!1),C===`onBlur`){let t=e.currentTarget.value;w.commit(t),F&&queueMicrotask(()=>{let e=w.inputRef.current?.value;e!==void 0&&e!==t&&e!==(b.initialValue??``)&&w.commit(e)})}},onKeyDown(e){if(e.currentTarget.tagName===`INPUT`&&e.key===`Enter`){v(!0);let t=e.currentTarget.value,n=e.currentTarget.form;if(n&&n===E.current&&!e.defaultPrevented){let t=e.currentTarget,n=D.current;B.start(0,()=>{D.current===n&&w.commit(t.value)})}else w.commit(t)}}},p,e=>w.getValidationProps(O,e)],stateAttributesMapping:Et})}),pi=Y.forwardRef(function(e,t){return(0,Z.jsx)(fi,{ref:t,...e})});function mi({className:e,type:t,...n}){return(0,Z.jsx)(pi,{type:t,"data-slot":`input`,className:K(`h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...n})}function hi(e,t){let n=t?.startTime!=null&&t?.endTime!=null?t.endTime-t.startTime:null,r=e.impactEstimate?.wallClock?.high;return n==null||n<=0||r==null?null:r/n}function gi(e){let t=e*100;return t>0&&t<1?`<1% of run`:`${Math.round(t)}% of run`}var _i=`0.1.0`;function vi(e,t,n,r,i,a){return xi({schemaVersion:3,provenance:a,app:e.app,stages:[...e.stages.values()],jobs:[...e.jobs.values()],sql:[...e.sql.values()],executors:e.executors,runAggregates:e.runAggregates,evidenceAvailability:e.evidenceAvailability,catalog:t,configFindings:n,skippedLines:r,interpretation:i})}var yi=`__sparkforensicsMap`,bi=`__sparkforensicsSet`;function xi(e){return e instanceof Map?{[yi]:[...e].map(([e,t])=>[xi(e),xi(t)])}:e instanceof Set?{[bi]:[...e].map(xi)}:Array.isArray(e)?e.map(xi):e&&typeof e==`object`?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,xi(t)])):e}function Si(e){if(Array.isArray(e))return e.map(Si);if(e&&typeof e==`object`){let t=e;return Array.isArray(t[yi])?new Map(t[yi].map(([e,t])=>[Si(e),Si(t)])):Array.isArray(t[bi])?new Set(t[bi].map(Si)):Object.fromEntries(Object.entries(t).map(([e,t])=>[e,Si(t)]))}return e}var Ci=[/\bip(?:-\d{1,3}){4}(?:\.[a-z0-9][a-z0-9-]*)*/gi,/\b(?:\d{1,3}\.){3}\d{1,3}\b/g],wi=[/\bapplication_\d{10,}_\d+\b/g];function Ti(e,t){if(typeof e==`string`){for(let{patterns:n,out:r}of t)for(let t of n){let n=e.match(t);if(n)for(let e of n)r.add(e)}return}if(Array.isArray(e)){for(let n of e)Ti(n,t);return}if(e&&typeof e==`object`)for(let n of Object.values(e))Ti(n,t)}function Ei(e,t){if(Array.isArray(e)){for(let n of e)Ei(n,t);return}if(e&&typeof e==`object`)for(let[n,r]of Object.entries(e))n===`host`&&typeof r==`string`&&r.length>0?t.add(r):Ei(r,t)}function Di(e){if(Array.isArray(e))return e.map(e=>Di(e));if(e&&typeof e==`object`){let t={};for(let[n,r]of Object.entries(e))t[n]=n===`failureGroups`&&Array.isArray(r)?r.map(e=>e&&typeof e==`object`?nn(e):e):Di(r);return t}return e}var Oi=new Set([`stageFailureReason`,`exception`,`failureReason`]);function ki(e){if(Array.isArray(e))return e.map(e=>ki(e));if(e&&typeof e==`object`){let t=e.type===`stageFailed`,n={};for(let[r,i]of Object.entries(e))n[r]=(Oi.has(r)||t&&r===`valueText`)&&typeof i==`string`?fn:ki(i);return n}return e}function Ai(e){return ki(Di(e))}function ji(e,t){if(e)for(let[n,r]of Object.entries(e)){let e=n.slice(n.lastIndexOf(`.`)+1).toLowerCase();(e===`host`||e===`hostname`)&&r&&t.add(r)}}function Mi(e){let t=new Set,n=new Set,r=e?.summary?.app?.id;return typeof r==`string`&&r.length>0&&t.add(r),Ei(e?.findings,n),Ti(e,[{patterns:Ci,out:n},{patterns:wi,out:t}]),{appIds:t,hosts:n}}function Ni(e,t){let n=new Map;return[...e].sort((e,t)=>e.localeCompare(t,`en`,{numeric:!0})).forEach((e,r)=>n.set(e,`${t}-${r+1}`)),n}function Pi(e,t){if(typeof e==`string`){let n=e;for(let[e,r]of t)n=n.split(e).join(r);return n}if(Array.isArray(e))return e.map(e=>Pi(e,t));if(e&&typeof e==`object`){let n={};for(let[r,i]of Object.entries(e))n[r]=Pi(i,t);return n}return e}function Fi(e,t){let n=[...t.appIds?Ni(t.appIds,`app`):[],...Ni(t.hosts,`host`)];return n.sort((e,t)=>t[0].length-e[0].length),Pi(e,n)}function Ii(e){return e.name==null?e:{...e,name:e.id??null}}function Li(e){let t=Ai(e),{appIds:n,hosts:r}=Mi(t),i=Fi(t,{appIds:n,hosts:r}),a=i.summary?.app;return a?{...i,summary:{...i.summary,app:Ii(a)}}:i}function Ri(e){if(!e.modifiedConfigs)return e;let t=Object.fromEntries(Object.entries(e.modifiedConfigs).map(([e,t])=>[e,yn(e)?t:on]));return{...e,modifiedConfigs:t}}function zi(e){let t=e.executors.removed.map(e=>({...e,reason:fn}));return{...e,executors:{...e.executors,removed:t}}}function Bi(e){let t=zi(Ai(e)),n=new Set,r=new Set,i=t.app?.id;typeof i==`string`&&i.length>0&&n.add(i),Ei(t.executors.added,r),Ei(t.executors.removed,r),Ei(t.catalog,r),Ei(t.configFindings,r),ji(t.app?.config,r);for(let e of t.sql??[])ji(e.modifiedConfigs,r);Ti(t,[{patterns:Ci,out:r},{patterns:wi,out:n}]);let a=Fi(t,{appIds:n,hosts:r}),o=a.sql?{...a,sql:a.sql.map(Ri)}:a;if(!o.app)return o;let s=Ii(o.app);return s.config?.[`spark.app.name`]==null?{...o,app:s}:{...o,app:{...s,config:{...s.config,"spark.app.name":s.id??``}}}}function Vi(e,t,n){let r=Si(Bi(xi({app:e.app,stages:[...e.stages.values()],jobs:[...e.jobs.values()],sql:[...e.sql.values()],executors:e.executors,runAggregates:e.runAggregates,evidenceAvailability:e.evidenceAvailability,catalog:t,configFindings:n}))),i=e=>new Map(e.map(e=>[e.id,e]));return{appModel:{app:r.app,stages:i(r.stages),jobs:i(r.jobs),sql:i(r.sql),executors:r.executors,runAggregates:r.runAggregates,evidenceAvailability:r.evidenceAvailability,skippedLines:e.skippedLines,unreadableSqlExecutions:e.unreadableSqlExecutions},catalog:r.catalog,configFindings:r.configFindings}}var Hi=String.raw`(?:\`(?:[^\`]|\`\`)*\`|[A-Za-z0-9_$]+)`,Ui=RegExp(`^${Hi}(?:\\.${Hi})*$`),Wi=new RegExp(Hi,`g`),Gi=/\.\.\.(?:\s*\d+ more fields)?/;function Ki(e){let t=[],n=0,r=!1,i=0;for(let a=0;a<e.length;a++){let o=e[a];if(o==="`")r=!r;else if(r)continue;else o===`(`||o===`[`||o===`{`?n++:o===`)`||o===`]`||o===`}`?n--:o===`,`&&n===0&&(t.push({text:e.slice(i,a).trim(),terminated:!0}),i=a+1)}return t.push({text:e.slice(i).trim(),terminated:!1}),t}function qi(e){return e===``||Gi.test(e)}function Ji(e){return Ui.test(e)?(e.match(Wi)??[]).map(e=>{if(!e.startsWith("`"))return e;let t=e.slice(1,-1).replace(/``/g,"`");return/[.`]/.test(t)?e:t}).join(`.`):null}var Yi=/((?:[A-Za-z][A-Za-z0-9+.-]*:\/{1,3}|\/)[^\s,[\]()#]+?)\/_delta_log(?=[/[\],\s)]|$)/g,Xi=/^file:(?:\/|\/\/\/)(?=[^/])/;function Zi(e){return e.replace(Xi,`file:///`).replace(/\/+$/,``)}function Qi(e){let t=new Set,n=!1;for(let r of e){if(!r.planTree){n=!0;continue}ye(r.planTree,e=>{for(let r of[e.name,e.detail??``]){let e=r.split(`/_delta_log`).length-1;if(e===0)continue;let i=[...r.matchAll(Yi)];i.length<e&&(n=!0);for(let e of i)qi(e[1])?n=!0:t.add(Zi(e[1]))}},{dedupe:!0})}return{paths:t,unreliable:n}}function $i(e){let{paths:t,unreliable:n}=Qi(e),[r]=t;return!n&&t.size===1?{kind:`path`,target:r}:null}var ea=`DeltaMerge`,ta=/^(?:Delta: )?MERGE operation\b/,na=/\b(?:re)?writing\b/i;function ra(e){let t=t=>t!==void 0&&/^Execute\s+MergeIntoCommand\b/.test(e.get(t)?.planTree?.name??``);return[...e.values()].filter(e=>ta.test(e.description??``)&&!t(e.rootExecutionId)).sort((e,t)=>e.id-t.id)}function ia(e){let t=[];for(let n of e){let e=t[t.length-1];e&&e.members[e.members.length-1].id+1===n.id?e.members.push(n):t.push({members:[n],unclean:null})}let n=t.map(({members:e})=>{let t=e.map(e=>e.startTime);return t.every(e=>typeof e==`number`)?[Math.min(...t),Math.max(...t)]:null});return t.forEach((e,t)=>{let r=n[t];if(r===null){e.unclean=`start time missing`;return}n.some((e,n)=>n!==t&&e!==null&&e[0]<=r[1]&&r[0]<=e[1])?e.unclean=`overlaps another merge in time`:e.members.some(e=>na.test(e.description??``))||(e.unclean=`no write phase`)}),t}function aa(e){return ia(ra(e)).map(e=>{let t=e.members[0].id,n=e.members[e.members.length-1].id,r=e.unclean===null?$i(e.members):null,i=t===n?`${t}`:`${t}-${n}`;return{sqlExecutionId:t,nodeId:null,command:ea,recognized:!0,kind:r?.kind??null,target:r?.target??null,outputRows:null,outputRowsSource:null,outputBytes:null,mergeRows:null,raw:`Delta MERGE operation, executions ${i}${e.unclean?` (${e.unclean})`:``}`}})}var oa=[`MergeIntoCommand`,`UpdateCommand`,`DeleteCommand`,`WriteIntoDelta`,`WriteIntoDeltaCommand`,`SaveIntoDataSourceCommand`];function sa(e){return oa.includes(e)}function ca(e){let t=new Map;for(let n of e.values()){if(n.rootExecutionId===void 0||n.rootExecutionId===n.id)continue;let e=t.get(n.rootExecutionId);e?e.push(n):t.set(n.rootExecutionId,[n])}return t}function la(e,t){let n=e.commandArguments,r=`${t}\nArguments: `;return n!==void 0&&n.startsWith(r)?n.slice(r.length):null}var ua=/^`[^`]+`(?:\.`[^`]+`){1,2}$/;function da(e){let t=Ki(e).filter(e=>ua.test(e.text));if(t.length!==1||!t[0].terminated)return null;let n=Ji(t[0].text);if(!n||qi(n))return null;let r=n.split(`.`);return{kind:`table`,target:r.length===3&&r[0]===`spark_catalog`?r.slice(1).join(`.`):n}}function fa(e){let t=Ki(e)[1];if(!t?.terminated||!/^\[[\s\S]*\]$/.test(t.text))return null;let n=t.text.slice(1,-1),r=[...n.matchAll(/(?:^|, )([A-Za-z0-9_.-]+)=/g)],i=r.flatMap((e,t)=>e[1].toLowerCase()===`path`?[n.slice(e.index+e[0].length,t+1<r.length?r[t+1].index:n.length)]:[]);return i.length!==1||qi(i[0])||/\*{5,}\(redacted\)/.test(i[0])?null:{kind:`path`,target:i[0]}}var pa={fromArguments:da,scansTarget:!1},ma={...pa,scansTarget:!0},ha={MergeIntoCommand:ma,UpdateCommand:ma,DeleteCommand:ma,WriteIntoDelta:pa,WriteIntoDeltaCommand:pa,SaveIntoDataSourceCommand:{fromArguments:e=>e.includes(`DeltaDataSource`)?fa(e):null,scansTarget:!1}};function ga(e,t,n,r){if(!sa(e)||n!==t.planTree)return null;let i=ha[e],a=la(t,e),o=a===null?null:i.fromArguments(a);return o||!i.scansTarget?o:t.rootExecutionId===t.id?$i(r.get(t.id)??[]):null}var _a=/^\w+ DeltaTableV2\([^,\s]*,([^,\n]*),(?:Some\(CatalogTable\(\n(?:Catalog: (\S+)\n)?Database: (\S+)\nTable: (\S+)\n|None,)/,va=/^[A-Za-z0-9_$]+$/;function ya(e){let t=_a.exec(e);if(!t)return null;let[,n,r,i,a]=t;if(a===void 0)return n&&!qi(n)?{kind:`path`,target:n}:null;if(![i,a,r??`spark_catalog`].every(e=>va.test(e)))return null;let o=`${i}.${a}`;return{kind:`table`,target:r===void 0||r===`spark_catalog`?o:`${r}.${o}`}}function ba(e){return(e.command===`AppendDataExecV1`||e.command===`OverwriteByExpressionExecV1`)&&/^\w+ \S*DeltaCatalog\$StagedDeltaTableV2@/.test(e.raw)}var xa=new Set([`Write`,`Insert`,`Save`,`Overwrite`,`Append`,`Merge`,`Update`,`Delete`,`Truncate`,`Replace`,`Drop`,`Load`,`Vacuum`,`Convert`,`Clone`,`Restore`,`Optimize`,`Alter`,`Reorg`,`Rename`,`Call`]),Sa=[`TableAsSelect`,`AddPartition`,`DropPartition`,`RenamePartition`,`RecoverPartitions`],Ca=new Set([`WriteFiles`,`AppendColumns`,`AppendColumnsWithObject`,`MergeRows`,`StateStoreSave`,`StateStoreRestore`,`SessionWindowStateStoreSave`,`SessionWindowStateStoreRestore`,`UpdateEventTimeWatermarkColumn`]);function wa(e){return e.replace(/^Execute\s+/,``).trim().replace(/Exec$/,``)}function Ta(e){if(Ha(e))return!0;let t=e.split(/\s/,1)[0];return Ca.has(t)||t.includes(`Join`)?!1:Sa.some(e=>t.includes(e))?!0:(t.match(/[A-Z][a-z0-9]*/g)??[]).some(e=>xa.has(e))}function Ea(e,t){let n=/^(?:Execute\s+)?(\S+)\s*([\s\S]*)$/.exec(e.trim());return!n||wa(n[1])!==t?``:n[2]}function Da(e){let[t,n,r]=e,i=n&&/^(Map\(.*\)|\[.*\])$/s.test(n.text)&&n.terminated?r:n;return!t?.terminated||qi(t.text)||!i||!/^(true|false)$/.test(i.text)?null:{kind:`path`,target:t.text}}function Oa(e){let t=e[0];if(!t)return null;let n=/^\[Database: ([^,\]]+), TableName: ([^,\]]+)[,\]]/.exec(t.text);if(n&&/\]$/.test(t.text)){let e=Ji(`${n[1].trim()}.${n[2].trim()}`);return e&&!qi(e)?{kind:`table`,target:e}:null}if(!t.terminated||qi(t.text))return null;let r=Ji(t.text);return r?{kind:`table`,target:r}:null}function ka(e){let t=/^Map\(([\s\S]*)\)$/.exec(e);if(!t)return null;let n=t[1],r=[...n.matchAll(/(?:^|, )([A-Za-z0-9_.\-]+) -> /g)],i=new Map;return r.forEach((e,t)=>{let a=e.index+e[0].length,o=t+1<r.length?r[t+1].index:n.length;i.set(e[1].toLowerCase(),n.slice(a,o))}),i}function Aa(e){let[,t,n]=e;if(!t?.terminated||!n||n.text===``)return null;let r=ka(t.text);if(!r)return null;let i=r.get(`path`),a=r.get(`dbtable`)??r.get(`table`);if(i===void 0==(a===void 0))return null;let o=i??a;return qi(o)||/\*{5,}\(redacted\)/.test(o)?null:i===void 0?{kind:`jdbcTable`,target:o}:{kind:`path`,target:o}}function ja(e,t,n){let r=new Set;for(let i of e.matchAll(t))r.add(i[2]===void 0||qi(i[1])?null:n(i[1]));let[i]=r;return r.size===1?i:null}function Ma(e){return e?{kind:(e.match(Wi)?.length??0)>=3?`table`:`unqualifiedTable`,target:e}:null}function Na(e){return Ma(ja(e,/\b\w*Write\(table=([^,()\s]*)([,)])?/g,Ji))}function Pa(e){let[t,n]=e;return!t?.terminated||!/^[\w.$]+@[0-9a-f]+$/.test(t.text)||!n?.terminated||qi(n.text)?null:Ma(Ji(n.text))}function Fa(e){let[t]=e,n=t?.terminated?/^delta\.`([^`]*)`$/.exec(t.text):null;return n&&!qi(n[1])?{kind:`path`,target:n[1]}:null}var Ia=new Set([`AppendData`,`OverwriteByExpression`,`OverwritePartitionsDynamic`,`ReplaceData`,`WriteDelta`,`WriteToDataSourceV2`,`AppendDataExecV1`,`OverwriteByExpressionExecV1`]),La=new Set([`CreateTableAsSelect`,`AtomicCreateTableAsSelect`,`ReplaceTableAsSelect`,`AtomicReplaceTableAsSelect`]),Ra=new Set([`WriteIntoDelta`,`WriteIntoDeltaCommand`,`MergeIntoCommand`,`UpdateCommand`,`DeleteCommand`,`CreateDeltaTableCommand`,`OptimizeTableCommand`,`RestoreTableCommand`,`DeltaReorgTableCommand`]),za=new Set([`MergeIntoCommand`,`UpdateCommand`,`DeleteCommand`,`DeltaMerge`,`ReplaceData`,`WriteDelta`,`CreateDeltaTableCommand`,`OptimizeTableCommand`,`RestoreTableCommand`,`DeltaReorgTableCommand`]),Ba={InsertIntoHadoopFsRelationCommand:Da,InsertIntoHiveTable:Oa,CreateHiveTableAsSelectCommand:Oa,OptimizedCreateHiveTableAsSelectCommand:Oa,CreateDataSourceTableAsSelectCommand:Oa,SaveIntoDataSourceCommand:Aa};function Va(e){return e.recognized&&!za.has(e.command)}function Ha(e){return e in Ba||Ia.has(e)||La.has(e)||Ra.has(e)}function Ua(e,t){let n=Ba[e];return n?[!0,n(Ki(Ea(t,e)))]:Ia.has(e)?[!0,ya(t)??Na(t)]:La.has(e)?[!0,Pa(Ki(Ea(t,e)))]:e===`MergeIntoCommand`?[!0,null]:Ra.has(e)?[!0,Fa(Ki(Ea(t,e)))]:[!1,null]}function Wa(e){let t=e.metrics?.find(e=>e.name===`number of output rows`);return t!==void 0&&Number.isFinite(t.value)?t.value:null}function Ga(e,...t){let n=e.metrics?.find(e=>t.includes(e.name));return n!==void 0&&Number.isFinite(n.value)?n.value:null}var Ka=[`number of rows copied.`,`number of rows copied`];function qa(e,t){if(e===`MergeIntoCommand`){let e=[Ga(t,`number of inserted rows`),Ga(t,`number of updated rows`),Ga(t,`number of target rows rewritten unmodified`,`number of rows copied`)];return{rows:e.some(e=>e===null)?null:e.reduce((e,t)=>e+t,0),bytes:Ga(t,`number of target bytes added`)}}return e===`UpdateCommand`?{rows:Ga(t,`number of rows touched (copied + updated)`),bytes:Ga(t,`number of bytes added`)}:e===`DeleteCommand`?{rows:Ga(t,...Ka),bytes:Ga(t,`number of bytes added`)}:{rows:null,bytes:null}}function Ja(e,t){if(e!==`MergeIntoCommand`)return null;let n={inserted:Ga(t,`number of inserted rows`),updated:Ga(t,`number of updated rows`),deleted:Ga(t,`number of deleted rows`),copied:Ga(t,`number of target rows rewritten unmodified`,`number of rows copied`)};return Object.values(n).every(e=>e===null)?null:n}function Ya(e,t,n,r){ye(t,t=>{let i=wa(t.name);if(!Ta(i))return;let a=t.detail??``,[o,s]=Ua(i,a),c=s??ga(i,e,t,n),l=Wa(t),u=qa(i,t),d=l??u.rows;r.push({sqlExecutionId:e.id,nodeId:t.id??null,command:i,recognized:o,kind:c?.kind??null,target:c?.target??null,outputRows:d,outputRowsSource:l===null?d===null?null:`commandMetric`:`nodeMetric`,outputBytes:u.bytes,mergeRows:Ja(i,t),raw:a===``?t.name:a})},{dedupe:!0})}function Xa(e,t){for(let n of e){if(n.target!==null||!ba(n))continue;let r=t.get(n.sqlExecutionId)?.rootExecutionId;if(r===void 0||r===n.sqlExecutionId)continue;let i=e.filter(e=>e.sqlExecutionId===r&&La.has(e.command));i.length===1&&i[0].target!==null&&(n.kind=i[0].kind,n.target=i[0].target)}}function Za(e,t,n){let r=ca(t),i=new Map;for(let e of n.values()){if(e.sqlExecutionId==null)continue;let t=i.get(e.sqlExecutionId);t?t.push(e):i.set(e.sqlExecutionId,[e])}let a=e=>t.get(e.sqlExecutionId)?.rootExecutionId??e.sqlExecutionId,o=new Map;e.forEach((e,t)=>{let n=Va(e)&&e.target!==null?`${e.kind}:${e.target}`:`#${t}`,r=a(e),i=o.get(r);i?i.add(n):o.set(r,new Set([n]))});for(let t of e){let e=a(t);if(!Va(t)||o.get(e)?.size!==1)continue;let n=[e,...(r.get(e)??[]).map(e=>e.id)].flatMap(e=>i.get(e)??[]);if(n.length===0)continue;let s=n.filter(e=>e.outputBytes!=null);if(s.length>0&&(t.outputBytes=s.reduce((e,t)=>e+t.outputBytes,0)),t.outputRows!==null)continue;let c=n.filter(e=>e.outputRecords!=null);c.length!==0&&(t.outputRows=c.reduce((e,t)=>e+t.outputRecords,0),t.outputRowsSource=`stageSum`)}}function Qa(e,t={}){let n=[],r=new Map;for(let n of t.unreadableSqlExecutions??[])e.get(n)?.planTree||r.set(n,`unreadableStart`);let i=ca(e);for(let t of[...e.keys()].sort((e,t)=>e-t)){let a=e.get(t);a.planTree?Ya(a,a.planTree,i,n):r.set(t,r.get(t)??`noPlan`)}return Xa(n,e),n.push(...aa(e)),t.stages&&Za(n,e,t.stages),n.sort((e,t)=>e.sqlExecutionId-t.sqlExecutionId),{writes:n,executionsWithoutPlan:[...r].sort((e,t)=>e[0]-t[0]).map(([e,t])=>({sqlExecutionId:e,reason:t})),skippedLines:t.skippedLines??null}}var $a={skew:[`origin`,`aqeSkew`,`cause`,`dataRatio`],stageShape:[`rule`],shuffle:[`partitions`],partitionSizing:[`rule`,`origin`,`aqeSkew`,`partitions`],spill:[`spillMagnitude`,`reads`],gc:[`direction`],slowHost:[`variant`,`host`,`hostTaskShare`,`hostMeanMs`,`dimension`,`executorId`,`execMaxValue`,`executorCount`,`taskCount`],stageSlowness:[`reads`],stageFailed:[`variant`,`numTasks`,`memoryBytesSpilled`,`failedTaskDetails`],failures:[`failedTasks`,`dominantReason`,`dominantError`,`failureGroups`,`otherFailedTasks`],straggler:[`unit`,`speculativeTasks`,`stragglerCount`,`origin`,`aqeSkew`,`cause`,`causeSharePct`,`host`,`hostTasks`,`cpuPct`],speculationWaste:[],retryWaste:[`numTasks`,`memoryBytesSpilled`,`retriedTaskDetails`],tinyTask:[`reads`],incompleteRun:[],coldStart:[`dynamicAllocation`],utilization:[`cpuUtilizationPct`],memoryUtilization:[`variant`,`rule`,`executorId`,`heap`,`dataUnavailable`],cacheUtilization:[`variant`,`rddId`,`rddName`,`memorySize`,`diskSize`,`numCachedPartitions`,`numPartitions`,`dataUnavailable`],coreLocality:[`nonLocalTaskCount`],autoscalingChurn:[`shortLivedExecutorCount`,`dynamicAllocation`],cachingOpportunity:[`variant`,`relation`,`format`,`relations`,`operator`,`executionIds`,`totalReadBytes`],jobFailureRate:[`failedJobs`,`totalJobs`,`failedTasks`,`totalTasks`,`avgJobDurationMs`,`taskFailureRate`],configAudit:[`property`],duplicatePlanSubtree:[`executionId`,`stageIds`,`stageShares`,`occurrencesIdentical`,`rootName`,`subtreeSize`,`sampleRelation`,`groupIndex`],smallFiles:[`executionId`,`stageIds`,`fileCount`,`direction`,`nodeName`],pythonUdf:[`executionId`,`stageIds`,`dataSentBytes`,`dataReturnedBytes`,`stageDurationMs`],nestedLoopJoin:[`executionId`,`stageIds`,`nodeName`,`joinType`,`condition`,`outputRows`,`leftRows`,`rightRows`],underBroadcast:[`executionId`,`stageIds`,`largerSideBytes`,`joinType`,`buildSide`,`broadcastThreshold`],overBroadcast:[`executionId`,`stageIds`,`broadcastThreshold`]};function eo(e){let t=e,n={};for(let r of[...$a[e.type]].sort())t[r]!==void 0&&(n[r]=t[r]);return n}function to(e,t){let n={id:e.id??null,key:t,type:e.type,name:tn($t(e.type)),tag:j(e.type),impactBand:e.impactBand,stageId:e.stageId??null,metric:e.metric??null,value:e.value??null,...e.valueText==null?{}:{valueText:e.valueText},recommendation:e.recommendation??null,detectorVersion:e.detectorVersion??1,evidence:eo(e),remediation:e.remediation??[],actionLabel:Sn(e)};e.confidence!=null&&(n.confidence=e.confidence),e.validationRequired!=null&&(n.validationRequired=e.validationRequired),e.docAnchor!=null&&(n.docAnchor=e.docAnchor),e.impactEstimate!=null&&(n.impactEstimate=e.impactEstimate);let r=pn(e.impactEstimate);r&&(n.impact=r.text,n.impactMeaning=r.meaning);let i=vn(e);return i&&(n.estimateProvenance=i),e.tunedThresholds!=null&&(n.tunedThresholds=e.tunedThresholds),n}function no(e){return[...e].sort((e,t)=>{let n=(b[e.impactBand]??9)-(b[t.impactBand]??9);if(n!==0)return n;if(e.type!==t.type)return e.type<t.type?-1:1;let r=e.stageId??-1,i=t.stageId??-1;return r===i?(e.id??``)<(t.id??``)?-1:+((e.id??``)>(t.id??``)):r-i})}function ro(e,t){let n=e.filter(me);return M(n,t).map(e=>{let t=I(e.findings),n=t[0],r=t.map(e=>e.id).filter(e=>e!=null),i={type:e.type,tag:j(e.type),actionLabel:Sn(n),findingCount:e.findingCount,findingIds:r};if(e.kind===`time`)return{...i,kind:`time`,stageCount:e.stageCount,recoverableMsHigh:e.recoverableMsHigh,impact:m(e.recoverableMsHigh,e.recoverableMsHigh),impactMeaning:`of run time`};if(e.kind===`resource`){let t=T(e);return{...i,kind:`resource`,unit:e.unit,total:e.total,impact:t,impactMeaning:t?sn(n):null}}return{...i,kind:`count`,byImpactBand:e.byImpactBand,impact:null,impactMeaning:null}})}function io(e,t,n){let r=new Set(e.filter(_e).map(e=>e.type)),i=Gt(t,e),a=[],o=[];for(let[e,{thresholdSummary:t}]of Object.entries(Jt())){if(r.has(e))continue;let s=en(e,n),c=s?{type:e,tag:j(e),thresholdSummary:Dn(e,n),tunedThresholds:s}:{type:e,tag:j(e),thresholdSummary:t},l=i.notRunReason(e);l?o.push({...c,reason:l}):a.push(c)}return{cleanChecks:a,notRunChecks:o}}var ao=`writeOutputRows`,oo=5;function so(e){let t=e.writes.filter(e=>Va(e)&&e.outputRows===null);if(t.length===0)return null;let n=t.slice(0,oo).map(e=>`execution ${e.sqlExecutionId} ${e.command}`).join(`, `),r=t.length>oo?` and ${t.length-oo} more`:``;return{type:ao,tag:`INCMP`,thresholdSummary:`an output row count for every plain write, from its node metric or from the stages of its root execution`,reason:`${t.length} write${t.length===1?` has`:`s have`} no output row count (${n}${r}): the write node has no row metric and the stages under its root execution report no rows written, or that root holds more than one write.`}}function co(e){let t={critical:0,warning:0,info:0};for(let n of e)n.impactBand in t&&(t[n.impactBand]+=1);return t}function lo(e){return{title:e.title,summary:e.summary,steps:e.shown.map(t=>{let n=bn(t,e.outcome);return{key:t.key,stageId:t.stageId,type:t.lead.type,tag:j(t.lead.type),leadFindingId:t.lead.id??null,actionLabel:Sn(t.lead),recommendation:n,impact:ln(t.lead),impactMeaning:sn(t.lead),relatedTypes:t.related.map(e=>e.type),text:un(t.lead,n,t.stageId)}}),costSteps:e.costLane.map(({finding:e,coreTimeMs:t,figure:n})=>({stageId:gn(e),type:e.type,tag:j(e.type),leadFindingId:e.id??null,actionLabel:Sn(e),coreTimeMs:t,coreTime:n})),idle:e.idle,remainingPlaces:e.remaining,copyText:e.copyText}}var uo={},fo=new WeakMap,po=new WeakMap;function mo(e,t){let n=t??uo,r=e.get(n);return r||(r=new WeakMap,e.set(n,r)),r}var ho=new WeakMap;function go(e,t){let n=mo(ho,t),r=n.get(e);if(r)return r;let{app:i,stages:a,executors:o,sql:s,jobs:c,runAggregates:l}=e,u={catalog:hn(i,a,o?.added??[],o?.removed??[],c??new Map,s??new Map,l??null,{thresholds:t}),config:xn(i,a)};return n.set(e,u),u}function _o(e,t){let n=mo(po,t),r=n.get(e);if(r)return r;let{catalog:i,config:a}=go(e,t),o=Vi(e,i,a),s=Li(vo(o.appModel,t,{catalog:o.catalog,config:o.configFindings}));return n.set(e,s),s}function vo(e,t,n){let r=mo(fo,t),i=r.get(e);if(i)return i;let{app:a,stages:o,executors:s,sql:c,jobs:l,evidenceAvailability:u}=e,{catalog:d,config:f}=n??go(e,t),p=[...d,...f],m=Kt({stages:o??new Map,sql:c??new Map}),h=no(p.map(e=>to(e,m(e)))),g=ro(p,o??new Map),{cleanChecks:_,notRunChecks:v}=io(p,o??new Map,t),y=Qa(c??new Map,{stages:o,skippedLines:e.skippedLines,unreadableSqlExecutions:e.unreadableSqlExecutions}),b=so(y);b&&v.push(b);let x=_n(t),S=p.filter(me),C={...e,stages:o??new Map,jobs:l??new Map,executors:s??{added:[],removed:[]}},w=mn(C,p),T=w.outcome,E={schemaVersion:5,summary:{app:{id:a?.id??null,name:a?.name??null,sparkVersion:a?.sparkVersion??null},stageCount:o?.size??0,jobCount:l?.size??0,sqlExecutionCount:c?.size??0,findingCount:h.length,impactBandCounts:co(h),actionableFindingCount:S.length,actionableImpactBandCounts:co(S),clean:qt({jobs:l??new Map,stages:o??new Map},p),outcome:{failedJobs:T.failedJobs,totalJobs:T.totalJobs,failureReason:T.reason,failureReasonStageId:T.reason==null?null:T.reasonStageId},runShape:an(C),...x?{tunedThresholds:x}:{}},verdict:lo(w),evidenceAvailability:u??null,detectors:Zt(t),findings:h,writeTargets:y,recommendations:g,cleanChecks:_,notRunChecks:v};return r.set(e,E),E}function yo(e,t){return typeof t==`number`&&/bytes$/i.test(e)?f(t):typeof t==`object`&&t?JSON.stringify(t):String(t)}function bo(e){let t=[` - failureGroups: ${e.length}`];for(let n of e)if(t.push(` - ${n.count} task(s): ${En(n)}`),n.stackExcerpt){t.push(``);for(let e of n.stackExcerpt.split(`
2
+ `))t.push(` ${e}`);t.push(``)}return t}function xo(e){let t=pn(e);return t?`${t.text}${t.meaning?` ${t.meaning}`:``} (estimateMethod: ${e.estimateMethod})`:null}function So(e,t){let{failedJobs:n,totalJobs:r,failureReason:i,failureReasonStageId:a}=e;if(r===0)return null;if(n>0){let e=n<r?`${n} of ${r} jobs failed.`:r===1?`The run's one job failed.`:`All ${r} jobs failed.`;return i?`${e} Spark's recorded reason${a==null?``:` (stage ${a})`}: ${i}`:e}let o=r===1?`Its one job succeeded.`:`All ${r} jobs succeeded.`;return t?`${o} The log has no end-of-run record, so jobs still running when it stops are not counted.`:o}function Co(e){let t=[];if(e.wallClockMs!=null&&t.push(`- Wall-clock: ${_(e.wallClockMs)}`),e.efficiencyPct!=null&&t.push(`- Efficiency: ${e.efficiencyPct}% (share of the run with a stage running)`),e.unusedCoreTimePct!=null&&t.push(`- Unused core time: ${e.unusedCoreTimePct}% (driver idle plus executor slack, as a share of available core time)`),e.peakBusyCores!=null&&t.push(`- Peak busy cores: ${h(e.peakBusyCores)}`),e.etlPhasesMs){let{extract:n,transform:r,load:i}=e.etlPhasesMs;t.push(`- ETL phases (summed stage time): extract ${_(n)}, transform ${_(r)}, load ${_(i)}`)}return t}function wo(e){let t=[`## Verdict`,``,e.title];if(e.summary.length>0&&t.push(``,e.summary.join(` `)),e.idle&&t.push(``,e.idle.text),e.steps.length>0&&(t.push(``,`By wall clock (run time):`,``),e.steps.forEach((e,n)=>{if(t.push(`${n+1}. [${e.tag}] ${e.text}`),e.relatedTypes.length>0){let n=e.relatedTypes.map($t).join(`, `);t.push(` - Also flagged here, likely the same cause: ${n}.`)}}),e.remainingPlaces>0)){let n=`${e.remainingPlaces} more place${e.remainingPlaces===1?``:`s`}`;t.push(``,`${n} to look at in the Findings section below.`)}return e.costSteps.length>0&&(t.push(``,`By core time (measured busy core time a fix removes):`,``),e.costSteps.forEach((e,n)=>{let r=e.stageId==null?``:` in Stage ${e.stageId}`;t.push(`${n+1}. [${e.tag}] ${e.actionLabel}${r}: ${e.coreTime} of core time.`)})),t.push(``),t}function To(e,t){let{summary:n,verdict:r,findings:i,evidenceAvailability:a,detectors:o,recommendations:s,cleanChecks:c,notRunChecks:l}=e,u=[];u.push(`# Spark run evidence report`),u.push(``),u.push(`- Application: ${n.app.name??`(unknown)`} (${n.app.id??`n/a`})`),u.push(`- Spark version: ${n.app.sparkVersion??`n/a`}`),n.tunedThresholds&&u.push(`- Tuned thresholds: ${Cn(n.tunedThresholds)}`),u.push(`- Stages: ${n.stageCount} · Jobs: ${n.jobCount} · SQL executions: ${n.sqlExecutionCount}`),u.push(`- Findings: ${n.findingCount} (critical ${n.impactBandCounts.critical}, warning ${n.impactBandCounts.warning}, info ${n.impactBandCounts.info})`);let d=n.actionableImpactBandCounts;u.push(`- Findings to act on: ${n.actionableFindingCount} (critical ${d.critical}, warning ${d.warning}, info ${d.info})`);let f=So(n.outcome,t);f&&u.push(`- Outcome: ${f}`),n.clean&&u.push(`- Clean run: no findings, no failed jobs, and every check could run.`),u.push(...Co(n.runShape)),u.push(``),u.push(...wo(r)),s.length>0&&(u.push(`## Fix these first (${s.length})`),u.push(``),s.forEach((e,t)=>{u.push(`${t+1}. [${e.tag}] ${e.actionLabel}`);let n=e.kind===`count`?Object.entries(e.byImpactBand??{}).map(([e,t])=>`${t} ${e}`).join(`, `):e.impact&&`${e.impact}${e.impactMeaning?` ${e.impactMeaning}`:``}`;u.push(` - ${n?`${n} · `:``}×${e.findingCount} finding(s)`)}),u.push(``)),u.push(`## Findings (${i.length})`),u.push(``);for(let e of i){let t=e.stageId==null?``:` (stage ${e.stageId})`;u.push(`### ${e.name} · ${e.impactBand}${t}`),u.push(`- action: ${e.actionLabel}`),e.metric!=null&&u.push(`- ${e.metric}: ${e.valueText??e.value}`),e.recommendation&&u.push(`- ${e.recommendation}`),e.confidence&&u.push(`- confidence: ${e.confidence}`),e.validationRequired&&u.push(`- validation: ${e.validationRequired}`),e.tunedThresholds&&u.push(`- tuned thresholds: ${dn(e.tunedThresholds)}`);let n=e.impactEstimate?xo(e.impactEstimate):null;n&&u.push(`- impact: ${n}`);let r=e.impactEstimate?vn(e):null;r&&u.push(`- estimate: ${r}`),u.push(`- detector version: ${e.detectorVersion}`);let i=Object.entries(e.evidence??{}).sort(([e],[t])=>e<t?-1:+(e>t));if(i.length){u.push(`- evidence:`);for(let[e,t]of i)e===`failureGroups`&&Array.isArray(t)?u.push(...bo(t)):u.push(` - ${e}: ${yo(e,t)}`)}u.push(``)}if(a?.entries?.length){u.push(`## Evidence availability`),u.push(``);for(let e of a.entries)u.push(`- ${e.key}: ${e.state} (${e.summary})`);u.push(``)}if(Array.isArray(o)&&o.length){u.push(`## Detectors`),u.push(``);for(let e of o){let t=e.tunedThresholds?` (tuned: ${dn(e.tunedThresholds)})`:``;u.push(`- ${e.type} (v${e.version}, ${e.scope}), thresholds: ${JSON.stringify(e.thresholds)}${t}`)}u.push(``)}if(l.length>0){u.push(`## Not checked on this log (${l.length})`),u.push(``),u.push(`The log lacked the data these checks need, so they neither passed nor failed.`),u.push(``);for(let e of l)u.push(`- [${e.tag}] ${e.type}: ${e.reason}`);u.push(``)}if(c.length>0){u.push(`## Clean checks (${c.length})`),u.push(``);for(let e of c){let t=e.tunedThresholds?` (tuned: ${dn(e.tunedThresholds)})`:``;u.push(`- [${e.tag}] ${e.type}: ${e.thresholdSummary}${t}`)}u.push(``)}return u.join(`
3
+ `)}function Eo(e,t){let n=`stageIds`in e.evidence?e.evidence.stageIds:null;return t.minBand&&(b[e.impactBand]??9)>b[t.minBand]?!1:Xt({...e,stageId:gn({stageId:e.stageId,stageIds:n})},t)}function Do(e,{redact:t=!1,markdown:n=!0,findingsFilter:r,thresholds:i}={}){let a=t?_o(e,i):vo(e,i),o=a.findings.some(e=>e.type===`incompleteRun`),s=a.findings.length;if(r){let e=a.findings.filter(e=>Eo(e,r));s=e.length,a={...a,findings:r.maxFindings===void 0?e:e.slice(0,r.maxFindings)}}return{markdown:n?To(a,o):``,json:a,findingsMatched:s}}var Q=Uint8Array,Oo=Uint16Array,ko=Int32Array,Ao=new Q([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),jo=new Q([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Mo=new Q([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),No=function(e,t){for(var n=new Oo(31),r=0;r<31;++r)n[r]=t+=1<<e[r-1];for(var i=new ko(n[30]),r=1;r<30;++r)for(var a=n[r];a<n[r+1];++a)i[a]=a-n[r]<<5|r;return{b:n,r:i}},Po=No(Ao,2),Fo=Po.b,Io=Po.r;Fo[28]=258,Io[258]=28;var Lo=No(jo,0);Lo.b;for(var Ro=Lo.r,zo=new Oo(32768),$=0;$<32768;++$){var Bo=($&43690)>>1|($&21845)<<1;Bo=(Bo&52428)>>2|(Bo&13107)<<2,Bo=(Bo&61680)>>4|(Bo&3855)<<4,zo[$]=((Bo&65280)>>8|(Bo&255)<<8)>>1}for(var Vo=(function(e,t,n){for(var r=e.length,i=0,a=new Oo(t);i<r;++i)e[i]&&++a[e[i]-1];var o=new Oo(t);for(i=1;i<t;++i)o[i]=o[i-1]+a[i-1]<<1;var s;if(n){s=new Oo(1<<t);var c=15-t;for(i=0;i<r;++i)if(e[i])for(var l=i<<4|e[i],u=t-e[i],d=o[e[i]-1]++<<u,f=d|(1<<u)-1;d<=f;++d)s[zo[d]>>c]=l}else for(s=new Oo(r),i=0;i<r;++i)e[i]&&(s[i]=zo[o[e[i]-1]++]>>15-e[i]);return s}),Ho=new Q(288),$=0;$<144;++$)Ho[$]=8;for(var $=144;$<256;++$)Ho[$]=9;for(var $=256;$<280;++$)Ho[$]=7;for(var $=280;$<288;++$)Ho[$]=8;for(var Uo=new Q(32),$=0;$<32;++$)Uo[$]=5;var Wo=Vo(Ho,9,0),Go=Vo(Uo,5,0),Ko=function(e){return(e+7)/8|0},qo=function(e,t,n){return(t==null||t<0)&&(t=0),(n==null||n>e.length)&&(n=e.length),new Q(e.subarray(t,n))},Jo=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8},Yo=function(e,t,n){n<<=t&7;var r=t/8|0;e[r]|=n,e[r+1]|=n>>8,e[r+2]|=n>>16},Xo=function(e,t){for(var n=[],r=0;r<e.length;++r)e[r]&&n.push({s:r,f:e[r]});var i=n.length,a=n.slice();if(!i)return{t:rs,l:0};if(i==1){var o=new Q(n[0].s+1);return o[n[0].s]=1,{t:o,l:1}}n.sort(function(e,t){return e.f-t.f}),n.push({s:-1,f:25001});var s=n[0],c=n[1],l=0,u=1,d=2;for(n[0]={s:-1,f:s.f+c.f,l:s,r:c};u!=i-1;)s=n[n[l].f<n[d].f?l++:d++],c=n[l!=u&&n[l].f<n[d].f?l++:d++],n[u++]={s:-1,f:s.f+c.f,l:s,r:c};for(var f=a[0].s,r=1;r<i;++r)a[r].s>f&&(f=a[r].s);var p=new Oo(f+1),m=Zo(n[u-1],p,0);if(m>t){var r=0,h=0,g=m-t,_=1<<g;for(a.sort(function(e,t){return p[t.s]-p[e.s]||e.f-t.f});r<i;++r){var v=a[r].s;if(p[v]>t)h+=_-(1<<m-p[v]),p[v]=t;else break}for(h>>=g;h>0;){var y=a[r].s;p[y]<t?h-=1<<t-p[y]++-1:++r}for(;r>=0&&h;--r){var b=a[r].s;p[b]==t&&(--p[b],++h)}m=t}return{t:new Q(p),l:m}},Zo=function(e,t,n){return e.s==-1?Math.max(Zo(e.l,t,n+1),Zo(e.r,t,n+1)):t[e.s]=n},Qo=function(e){for(var t=e.length;t&&!e[--t];);for(var n=new Oo(++t),r=0,i=e[0],a=1,o=function(e){n[r++]=e},s=1;s<=t;++s)if(e[s]==i&&s!=t)++a;else{if(!i&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(i),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(i);a=1,i=e[s]}return{c:n.subarray(0,r),n:t}},$o=function(e,t){for(var n=0,r=0;r<t.length;++r)n+=e[r]*t[r];return n},es=function(e,t,n){var r=n.length,i=Ko(t+2);e[i]=r&255,e[i+1]=r>>8,e[i+2]=e[i]^255,e[i+3]=e[i+1]^255;for(var a=0;a<r;++a)e[i+a+4]=n[a];return(i+4+r)*8},ts=function(e,t,n,r,i,a,o,s,c,l,u){Jo(t,u++,n),++i[256];for(var d=Xo(i,15),f=d.t,p=d.l,m=Xo(a,15),h=m.t,g=m.l,_=Qo(f),v=_.c,y=_.n,b=Qo(h),x=b.c,S=b.n,C=new Oo(19),w=0;w<v.length;++w)++C[v[w]&31];for(var w=0;w<x.length;++w)++C[x[w]&31];for(var T=Xo(C,7),E=T.t,D=T.l,O=19;O>4&&!E[Mo[O-1]];--O);var k=l+5<<3,A=$o(i,Ho)+$o(a,Uo)+o,j=$o(i,f)+$o(a,h)+o+14+3*O+$o(C,E)+2*C[16]+3*C[17]+7*C[18];if(c>=0&&k<=A&&k<=j)return es(t,u,e.subarray(c,c+l));var M,N,P,F;if(Jo(t,u,1+(j<A)),u+=2,j<A){M=Vo(f,p,0),N=f,P=Vo(h,g,0),F=h;var I=Vo(E,D,0);Jo(t,u,y-257),Jo(t,u+5,S-1),Jo(t,u+10,O-4),u+=14;for(var w=0;w<O;++w)Jo(t,u+3*w,E[Mo[w]]);u+=3*O;for(var L=[v,x],R=0;R<2;++R)for(var z=L[R],w=0;w<z.length;++w){var B=z[w]&31;Jo(t,u,I[B]),u+=E[B],B>15&&(Jo(t,u,z[w]>>5&127),u+=z[w]>>12)}}else M=Wo,N=Ho,P=Go,F=Uo;for(var w=0;w<s;++w){var V=r[w];if(V>255){var B=V>>18&31;Yo(t,u,M[B+257]),u+=N[B+257],B>7&&(Jo(t,u,V>>23&31),u+=Ao[B]);var H=V&31;Yo(t,u,P[H]),u+=F[H],H>3&&(Yo(t,u,V>>5&8191),u+=jo[H])}else Yo(t,u,M[V]),u+=N[V]}return Yo(t,u,M[256]),u+N[256]},ns=new ko([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),rs=new Q(0),is=function(e,t,n,r,i,a){var o=a.z||e.length,s=new Q(r+o+5*(1+Math.ceil(o/7e3))+i),c=s.subarray(r,s.length-i),l=a.l,u=(a.r||0)&7;if(t){u&&(c[0]=a.r>>3);for(var d=ns[t-1],f=d>>13,p=d&8191,m=(1<<n)-1,h=a.p||new Oo(32768),g=a.h||new Oo(m+1),_=Math.ceil(n/3),v=2*_,y=function(t){return(e[t]^e[t+1]<<_^e[t+2]<<v)&m},b=new ko(25e3),x=new Oo(288),S=new Oo(32),C=0,w=0,T=a.i||0,E=0,D=a.w||0,O=0;T+2<o;++T){var k=y(T),A=T&32767,j=g[k];if(h[A]=j,g[k]=A,D<=T){var M=o-T;if((C>7e3||E>24576)&&(M>423||!l)){u=ts(e,c,0,b,x,S,w,E,O,T-O,u),E=C=w=0,O=T;for(var N=0;N<286;++N)x[N]=0;for(var N=0;N<30;++N)S[N]=0}var P=2,F=0,I=p,L=A-j&32767;if(M>2&&k==y(T-L))for(var R=Math.min(f,M)-1,z=Math.min(32767,T),B=Math.min(258,M);L<=z&&--I&&A!=j;){if(e[T+P]==e[T+P-L]){for(var V=0;V<B&&e[T+V]==e[T+V-L];++V);if(V>P){if(P=V,F=L,V>R)break;for(var H=Math.min(L,V-2),U=0,N=0;N<H;++N){var ee=T-L+N&32767,te=ee-h[ee]&32767;te>U&&(U=te,j=ee)}}}A=j,j=h[A],L+=A-j&32767}if(F){b[E++]=268435456|Io[P]<<18|Ro[F];var W=Io[P]&31,ne=Ro[F]&31;w+=Ao[W]+jo[ne],++x[257+W],++S[ne],D=T+P,++C}else b[E++]=e[T],++x[e[T]]}}for(T=Math.max(T,D);T<o;++T)b[E++]=e[T],++x[e[T]];u=ts(e,c,l,b,x,S,w,E,O,T-O,u),l||(a.r=u&7|c[u/8|0]<<3,u-=7,a.h=g,a.p=h,a.i=T,a.w=D)}else{for(var T=a.w||0;T<o+l;T+=65535){var G=T+65535;G>=o&&(c[u/8|0]=l,G=o),u=es(c,u+1,e.subarray(T,G))}a.i=o}return qo(s,0,r+Ko(u)+i)},as=(function(){for(var e=new Int32Array(256),t=0;t<256;++t){for(var n=t,r=9;--r;)n=(n&1&&-306674912)^n>>>1;e[t]=n}return e})(),os=function(){var e=-1;return{p:function(t){for(var n=e,r=0;r<t.length;++r)n=as[n&255^t[r]]^n>>>8;e=n},d:function(){return~e}}},ss=function(e,t,n,r,i){if(!i&&(i={l:1},t.dictionary)){var a=t.dictionary.subarray(-32768),o=new Q(a.length+e.length);o.set(a),o.set(e,a.length),e=o,i.w=a.length}return is(e,t.level==null?6:t.level,t.mem==null?i.l?Math.ceil(Math.max(8,Math.min(13,Math.log(e.length)))*1.5):20:12+t.mem,n,r,i)},cs=function(e,t,n){for(;n;++t)e[t]=n,n>>>=8},ls=function(e,t){var n=t.filename;if(e[0]=31,e[1]=139,e[2]=8,e[8]=t.level<2?4:t.level==9?2:0,e[9]=3,t.mtime!=0&&cs(e,4,Math.floor(new Date(t.mtime||Date.now())/1e3)),n){e[3]=8;for(var r=0;r<=n.length;++r)e[r+10]=n.charCodeAt(r)}},us=function(e){return 10+(e.filename?e.filename.length+1:0)};function ds(e,t){t||={};var n=os(),r=e.length;n.p(e);var i=ss(e,t,us(t),8),a=i.length;return ls(i,t),cs(i,a-8,n.d()),cs(i,a-4,r),i}var fs=typeof TextEncoder<`u`&&new TextEncoder,ps=typeof TextDecoder<`u`&&new TextDecoder;try{ps.decode(rs,{stream:!0})}catch{}function ms(e,t){if(t){for(var n=new Q(e.length),r=0;r<e.length;++r)n[r]=e.charCodeAt(r);return n}if(fs)return fs.encode(e);for(var i=e.length,a=new Q(e.length+(e.length>>1)),o=0,s=function(e){a[o++]=e},r=0;r<i;++r){if(o+5>a.length){var c=new Q(o+8+(i-r<<1));c.set(a),a=c}var l=e.charCodeAt(r);l<128||t?s(l):l<2048?(s(192|l>>6),s(128|l&63)):l>55295&&l<57344?(l=65536+(l&1047552)|e.charCodeAt(++r)&1023,s(240|l>>18),s(128|l>>12&63),s(128|l>>6&63),s(128|l&63)):(s(224|l>>12),s(128|l>>6&63),s(128|l&63))}return qo(a,0,o)}function hs(e,t,n,{redact:r,buildId:i,producer:a}){let o={appModel:e,catalog:t,configFindings:xn(e.app,e.stages)},s=r?Vi(o.appModel,o.catalog,o.configFindings):o,c=wn(s.appModel,s.catalog,s.configFindings),l={coreVersion:_i,buildId:i,producer:a};return vi(s.appModel,s.catalog,s.configFindings,n,c,l)}var gs=32768;function _s(e){let t=``;for(let n=0;n<e.length;n+=gs)t+=String.fromCharCode(...e.subarray(n,n+gs));return btoa(t)}function vs(e){return _s(ds(ms(JSON.stringify(e))))}var ys=`__SPARKFORENSICS_RUN_GZ__`;function bs(e){return`window.${ys} = "${e}";`}var xs=`export-template.html`,Ss=`<script src="./data.js"><\/script>`;function Cs(e,t){let n=e.indexOf(Ss);if(n===-1||e.indexOf(Ss,n+1)!==-1)throw Error(`The HTML export template is missing or malformed in this build.`);let r=`<script>${bs(t)}<\/script>`;return e.slice(0,n)+r+e.slice(n+33)}var ws=`06b1ffacd20e0b5e1d7b6a19ed645fb088c6049114893b77cf4662261d610924`,Ts=`sparkforensics-web 0.30.1`,Es={markdown:`md`,json:`json`,html:`html`};function Ds(e,t,n){let r=new Blob([e],{type:n}),i=URL.createObjectURL(r),a=document.createElement(`a`);a.href=i,a.download=t,document.body.appendChild(a),a.click(),a.remove(),URL.revokeObjectURL(i)}function Os(e,t,n){return`evidence-${String(e??`report`).replace(/[^\w.-]/g,`_`)}${n?`-redacted`:``}.${Es[t]}`}async function ks(){let e=await fetch(xs);if(!e.ok)throw Error(`The HTML export template could not be loaded (HTTP ${e.status}).`);return e.text()}function As(){let e=q(e=>e.appModel),t=q(e=>e.catalog),n=q(e=>e.skippedLines),[r,i]=(0,Y.useState)(!1),a=async()=>{try{let i=hs(e,t,n,{redact:r,buildId:ws,producer:Ts});Ds(Cs(await ks(),vs(i)),Os(i.app?.id??null,`html`,r),`text/html`)}catch(e){console.error(`HTML export failed`,e),Lt.error(`HTML export failed`,{description:e instanceof Error?e.message:String(e)})}},o=t=>{try{let{markdown:n,json:i}=Do(e,{redact:r}),a=Os(i.summary?.app?.id??null,t,r);t===`json`?Ds(`${JSON.stringify(i,null,2)}\n`,a,`application/json`):Ds(`${n}\n`,a,`text/markdown`)}catch(e){console.error(`Evidence export failed`,e),Lt.error(`Evidence export failed`,{description:e instanceof Error?e.message:String(e)})}};return{redact:r,setRedact:i,download:e=>{e===`html`?a():o(e)}}}function js({redact:e,setRedact:t,download:n}){return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ui,{indicatorPosition:`start`,checked:e,onClick:e=>e.preventDefault(),onCheckedChange:e=>t(!!e),children:(0,Z.jsx)(`span`,{className:`whitespace-nowrap`,children:`Redact identifiers`})}),(0,Z.jsx)(di,{className:`my-1.5 bg-foreground/25`}),(0,Z.jsxs)(li,{className:`whitespace-nowrap`,onClick:()=>n(`markdown`),children:[(0,Z.jsx)(de,{"aria-hidden":`true`}),`Download Markdown`]}),(0,Z.jsxs)(li,{className:`whitespace-nowrap`,onClick:()=>n(`json`),children:[(0,Z.jsx)(Un,{"aria-hidden":`true`}),`Download JSON`]}),(0,Z.jsxs)(li,{className:`whitespace-nowrap`,onClick:()=>n(`html`),children:[(0,Z.jsx)(Yn,{"aria-hidden":`true`}),`Download HTML dashboard`]})]})}function Ms(){let e=As();return(0,Z.jsxs)(oi,{children:[(0,Z.jsxs)(si,{render:(0,Z.jsx)(we,{variant:`ghost`,size:`sm`}),children:[(0,Z.jsx)(zn,{"aria-hidden":`true`}),`Export evidence`]}),(0,Z.jsx)(ci,{align:`end`,className:`min-w-56`,children:(0,Z.jsx)(js,{...e})})]})}function Ns({activeName:e,activeSub:t,activeId:n=null,entries:r,onPick:i,onRemove:a,onOpenNew:o}){let{pickRecent:s}=Ut(),c=(0,Y.useCallback)(e=>{if(i){i(e);return}s(e,r.find(t=>t.id===e)?.handle)},[i,r,s]);return(0,Z.jsxs)(oi,{children:[(0,Z.jsxs)(si,{className:K(Ce({variant:`ghost`}),`h-auto min-w-0 shrink max-w-40 flex-col items-start justify-center gap-0 py-1 sm:max-w-80`),children:[(0,Z.jsxs)(`span`,{className:`flex w-full min-w-0 items-center gap-1.5`,children:[(0,Z.jsx)(`span`,{className:`min-w-0 truncate font-heading text-sm font-semibold`,children:e??`No file`}),(0,Z.jsx)(se,{"aria-hidden":`true`,className:`ml-auto shrink-0 opacity-60`})]}),t?(0,Z.jsx)(`span`,{className:`w-full min-w-0 truncate text-left font-mono text-xs text-muted-foreground`,children:t}):null]}),(0,Z.jsxs)(ci,{className:`w-72 p-2`,children:[(0,Z.jsx)(Bt,{entries:r,activeId:n,onPick:c,onRemove:a}),(0,Z.jsx)(di,{}),(0,Z.jsx)(li,{onClick:()=>o?.(),children:`Load new file…`})]})]})}function Ps({open:e,entries:t,onSelect:n,onOpenChange:r}){let[i,a]=(0,Y.useState)(``),o=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{e||a(``)},[e]);let s=i.trim().toLowerCase(),c=s?t.filter(e=>e.label.toLowerCase().includes(s)||e.secondary.toLowerCase().includes(s)||String(e.executionId).includes(s)):t;function l(e){(o.current?.querySelectorAll(`button`)??[])[e]?.focus()}function u(e,t){e.key===`ArrowDown`?(e.preventDefault(),l(t+1)):e.key===`ArrowUp`&&(e.preventDefault(),l(t-1))}function d(e){e.key===`Enter`?c.length===1&&n(c[0].stageId):e.key===`ArrowDown`&&(e.preventDefault(),l(0))}return(0,Z.jsx)(It,{open:e,onOpenChange:r,children:(0,Z.jsxs)(kn,{className:`flex max-h-[85vh] flex-col sm:max-w-xl`,children:[(0,Z.jsxs)(Rt,{children:[(0,Z.jsxs)(Ht,{className:`flex items-center gap-1.5`,children:[(0,Z.jsx)(cn,{"aria-hidden":`true`,className:`size-4 text-plan-aggregate`}),`Open plan graph`]}),(0,Z.jsx)(Wt,{children:`Choose which SQL execution's plan to open.`})]}),(0,Z.jsx)(mi,{autoFocus:!0,placeholder:`Filter executions…`,value:i,onChange:e=>a(e.target.value),onKeyDown:d}),c.length===0?(0,Z.jsx)(`p`,{className:`px-1.5 py-1 text-sm text-muted-foreground`,children:`No matching executions`}):(0,Z.jsx)(`ul`,{ref:o,className:`flex min-h-0 flex-1 flex-col gap-0.5 overflow-y-auto`,children:c.map((e,t)=>(0,Z.jsx)(`li`,{children:(0,Z.jsxs)(`button`,{type:`button`,className:`flex w-full min-w-0 cursor-pointer flex-col items-start gap-0.5 rounded-md px-1.5 py-1 text-left hover:bg-muted`,onClick:()=>n(e.stageId),onKeyDown:e=>u(e,t),children:[(0,Z.jsxs)(`span`,{className:`flex w-full min-w-0 items-center gap-1.5`,children:[e.impactBand!=null&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(ce,{impactBand:e.impactBand}),(0,Z.jsxs)(`span`,{className:`shrink-0 text-xs font-normal text-muted-foreground`,children:[e.findingCount,` finding`,e.findingCount===1?``:`s`]})]}),(0,Z.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.secondary})]}),(0,Z.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:e.label})]})},e.executionId))})]})})}var Fs={name:`sparkforensics-web`,version:`0.30.1`,description:`Zero-backend browser dashboard that parses Apache Spark event logs to diagnose performance bottlenecks: skew, spill, GC pressure, stragglers, cache utilization, and more.`,private:!0,type:`module`,workspaces:[`.`,`packages/*`],license:`MIT`,author:`Agustin Recoba`,repository:{type:`git`,url:`git+https://github.com/shuffle-works/sparkforensics.git`},bugs:{url:`https://github.com/shuffle-works/sparkforensics/issues`},homepage:`https://github.com/shuffle-works/sparkforensics#readme`,keywords:[`apache-spark`,`spark`,`spark-history-server`,`performance`,`diagnostics`,`observability`,`event-log`,`dashboard`,`query-plan`],engines:{node:`>=22.18.0 <23.0.0 || >=23.6.0`},scripts:{test:`vitest run`,"test:watch":`vitest`,"test:coverage":`vitest run --coverage`,"test:core":`npm run test:coverage --workspace packages/core`,"test:cli":`npm run test:coverage --workspace packages/cli`,"test:mcp":`npm run test:coverage --workspace packages/mcp`,"test:server":`npm test --workspace packages/server`,lint:`eslint .`,release:`node scripts/publish-packages.mjs`,"local-server":`node packages/server/index.js`,"capture-components":`node dev/component-capture/capture.mjs`,"docs:fetch":`node scripts/fetch-tuning-docs.mjs`,"docs:bump":`node scripts/fetch-tuning-docs.mjs bump`,"doc-anchor-coverage":`node scripts/doc-anchor-coverage.js`,"split-detection-docs":`node scripts/split-detection-docs.mjs`,prepare:`git config core.hooksPath .githooks`,dev:`vite`,build:`npm run docs:build && vite build && vite build --config vite.export.config.ts --mode template`,"build:export":`vite build --config vite.export.config.ts`,preview:`vite preview`,"docs:dev":`node scripts/fetch-tuning-docs.mjs --allow-stale && node scripts/split-detection-docs.mjs && node scripts/build-tuning-reference.mjs && vitepress dev docs-site`,"docs:build":`node scripts/fetch-tuning-docs.mjs && node scripts/split-detection-docs.mjs && node scripts/build-tuning-reference.mjs && vitepress build docs-site`,"docs:preview":`vitepress preview docs-site`},devDependencies:{"@changesets/cli":`^3.0.3`,"@eslint/js":`^10.0.1`,"@tailwindcss/vite":`^4.3.3`,"@testing-library/jest-dom":`^7.0.1`,"@testing-library/react":`^16.3.3`,"@testing-library/user-event":`^14.6.7`,"@types/node":`^26.6.4`,"@types/react":`^19.3.0`,"@types/react-dom":`^19.3.0`,"@vitejs/plugin-react":`^5.2.0`,"@vitest/coverage-v8":`^5.0.3`,eslint:`^10.12.0`,"fake-indexeddb":`^6.2.5`,globals:`^17.13.0`,"js-yaml":`^5.4.2`,jsdom:`^30.1.1`,"markdown-it-footnote":`^4.0.0`,playwright:`^1.63.0`,shadcn:`^4.21.1`,tailwindcss:`^4.3.3`,typescript:`^7.0.2`,vite:`^8.3.2`,"vite-plugin-singlefile":`^2.3.3`,vitepress:`^1.6.4`,vitest:`^5.0.3`},dependencies:{"@base-ui/react":`^1.8.0`,"@dagrejs/dagre":`^3.1.1`,"@fontsource-variable/instrument-sans":`^5.3.0`,"@fontsource-variable/jetbrains-mono":`^5.3.0`,"@modelcontextprotocol/sdk":`^1.32.0`,"@sparkforensics/core":`*`,"@tanstack/react-table":`^9.2.4`,"@xyflow/react":`^12.12.0`,"class-variance-authority":`^0.7.1`,clsx:`^2.1.1`,"lucide-react":`^1.51.0`,react:`^19.3.0`,"react-dom":`^19.3.0`,"react-resizable-panels":`^4.14.2`,recharts:`^3.8.0`,sonner:`^2.0.8`,"tailwind-merge":`^3.7.0`,"tw-animate-css":`^1.4.0`,zod:`^4.6.5`,zustand:`^5.0.15`}};function Is({keys:e}){return(0,Z.jsx)(`span`,{className:`flex shrink-0 items-center gap-1`,children:e.map((e,t)=>(0,Z.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t>0?(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`or`}):null,(0,Z.jsx)(`kbd`,{className:`rounded-md border border-border bg-muted px-1.5 py-0.5 font-mono text-xs font-medium text-foreground`,children:e})]},e))})}function Ls({keys:e,children:t}){return(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-4 py-1.5`,children:[(0,Z.jsx)(`span`,{className:`text-sm text-foreground`,children:t}),(0,Z.jsx)(Is,{keys:e})]})}function Rs({title:e,children:t}){return(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`h3`,{className:`mb-1 text-xs font-semibold tracking-wide text-muted-foreground uppercase`,children:e}),(0,Z.jsx)(`div`,{className:`divide-y divide-border/60`,children:t})]})}function zs({open:e,onOpenChange:t}){return(0,Z.jsx)(It,{open:e,onOpenChange:t,children:(0,Z.jsxs)(kn,{className:`sm:max-w-md`,children:[(0,Z.jsxs)(Rt,{children:[(0,Z.jsx)(Ht,{children:`Keyboard shortcuts`}),(0,Z.jsx)(Wt,{children:`Everything below works from anywhere the board is loaded.`})]}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Z.jsxs)(Rs,{title:`Navigation`,children:[(0,Z.jsx)(Ls,{keys:[`Tab`,`Shift+Tab`],children:`Move between controls`}),(0,Z.jsx)(Ls,{keys:[`Enter`,`Space`],children:`Activate the focused control, open a stage's details, or sort a column`}),(0,Z.jsx)(Ls,{keys:[`Esc`],children:`Close the open dialog, or leave a full-page view like Plan graph`})]}),(0,Z.jsxs)(Rs,{title:`Menus and lists`,children:[(0,Z.jsx)(Ls,{keys:[`↑`,`↓`],children:`Move between menu items or picker rows`}),(0,Z.jsx)(Ls,{keys:[`A–Z`,`0–9`],children:`Filter the Type and Stage dropdowns, and the plan execution picker, as you type`})]}),(0,Z.jsxs)(Rs,{title:`Triage (Advanced view only)`,children:[(0,Z.jsx)(Ls,{keys:[`j`,`k`],children:`Next or previous finding, starting with the verdict's steps`}),(0,Z.jsx)(Ls,{keys:[`Enter`],children:`Show the focused finding's evidence, or expand a grouped finding`}),(0,Z.jsx)(Ls,{keys:[`f`],children:`Jump to the finding filters`}),(0,Z.jsx)(Ls,{keys:[`1`,`2`],children:`Switch to Findings or Full app report`})]}),(0,Z.jsx)(Rs,{title:`Help`,children:(0,Z.jsx)(Ls,{keys:[`?`],children:`Open this list`})})]}),(0,Z.jsxs)(`p`,{className:`text-center text-xs text-muted-foreground`,children:[`SparkForensics v`,Fs.version]})]})})}var Bs=`Show confidence levels, evidence, documentation links, finding filters and triage shortcuts (j/k, f, 1/2)`;function Vs(){let e=le()===`advanced`;return(0,Z.jsxs)(In,{variant:`outline`,pressed:e,onPressedChange:e=>N.getState().setWidgetDensity(e?`advanced`:`basic`),className:`tap-target-comfortable border-transparent bg-accent-soft text-accent hover:bg-accent-soft hover:text-accent aria-pressed:border-accent aria-pressed:bg-accent-soft aria-pressed:text-accent aria-pressed:hover:bg-accent-soft`,title:Bs,children:[e?(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`size-1.5 shrink-0 rounded-full bg-accent`}):null,`Advanced view`]})}function Hs(){let e=le()===`advanced`;return(0,Z.jsx)(ui,{checked:e,onCheckedChange:e=>N.getState().setWidgetDensity(e?`advanced`:`basic`),title:Bs,children:`Advanced view`})}var Us=`docs/`;function Ws(e,t,n=null){let r=e===`warning`?`${t} warning${t===1?``:`s`}`:`${t} ${e}`;return n==null?r:`${r}, ${t>1?`up to `:``}${gi(n)}`}function Gs(e,t,n){if(e!==`critical`)return null;let r=t.map(e=>hi(e,n));return r.some(e=>e==null)?null:Math.max(...r)}function Ks(e,t){return e.stageId!=null&&t.includes(e.stageId)?!0:Ln(e)?.some(e=>t.includes(e))??!1}function qs(e,t){let n=[];for(let[r,i]of e.sql){if(!i.planTree)continue;let a=be(r,e.stages),o=a.length>0?Math.min(...a):null;if(o==null)continue;let s=i.description,c=typeof s==`string`&&s.trim()?s:`SQL execution #${r}`,l=i.startTime,u=i.endTime,d=typeof l==`number`&&typeof u==`number`?_(u-l):null,f=t.filter(e=>Ks(e,a)),p=k(f)??null,m=f.length;n.push({executionId:r,stageId:o,label:c,secondary:d?`#${r} · ${d}`:`#${r}`,impactBand:p,findingCount:m})}return n.sort((e,t)=>{let n=e.impactBand?b[e.impactBand]:1/0,r=t.impactBand?b[t.impactBand]:1/0;return n===r?e.executionId-t.executionId:n-r}),n}function Js({onLoadNew:e,recentEntries:t,activeFileId:n,onPickRecent:r,onRemoveRecent:i,onCompare:a,onJumpToFindings:o,sectionControls:s,leadingContent:c}){let l=q(e=>e.appModel.app),u=q(e=>e.catalog),d=q(e=>e.skippedLines),f=q(e=>e.exportMode),{theme:p,toggle:m}=An(),h=(0,Y.useRef)(null),g=q(e=>e.comparison),_=a!=null&&!s&&!f&&n!=null&&l!=null&&!g.baselineId,v=As(),y=q(e=>e.appModel),b=(0,Y.useMemo)(()=>qs(y,u),[y,u]),[x,S]=(0,Y.useState)(!1),[w,T]=(0,Y.useState)(!1);(0,Y.useEffect)(()=>{function e(e){if(e.key!==`?`)return;let t=e.target,n=t?.tagName;n===`INPUT`||n===`TEXTAREA`||t?.isContentEditable||(e.preventDefault(),T(!0))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);function E(){if(b.length!==0){if(b.length===1){N.getState().openPlanGraph(b[0].stageId,{initialScope:`full`});return}S(!0)}}function D(e){N.getState().openPlanGraph(e,{initialScope:`full`}),S(!1)}let O=l?.name||`Spark Application`,A=[l?.id,l?.sparkVersion?`Spark ${l.sparkVersion}`:null].filter(Boolean).join(` · `),j=fe(),M=(0,Y.useMemo)(()=>z(j),[j]),P=k(M),F=P?M.filter(e=>e.impactBand===P):[],I=F.length,L=Gs(P,F,l),R=P?Ws(P,I,L):``,B=j?.data.verdict,V=B?.clean??!1,H=B?.failed??!1;return(0,Z.jsxs)(`header`,{className:`sticky top-0 z-30 flex min-w-0 flex-wrap items-center gap-3 border-b border-border bg-card px-4 py-2 sm:px-8`,children:[s?null:(0,Z.jsx)(`h1`,{className:`sr-only`,children:`SparkForensics`}),(0,Z.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[!s&&!f?(0,Z.jsx)(we,{variant:`ghost`,size:`icon`,className:`tap-target-comfortable shrink-0`,"aria-label":`New analysis`,title:`Start a new analysis`,onClick:e,children:(0,Z.jsx)(Gn,{"aria-hidden":`true`})}):null,(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`hidden shrink-0 font-mono text-[13px] font-semibold tracking-[.02em] md:inline`,children:`sparkforensics`}),(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`hidden shrink-0 text-muted-foreground md:inline`,children:`/`}),f?(0,Z.jsxs)(`div`,{className:`flex min-w-0 shrink flex-col items-start justify-center gap-0 py-1`,children:[(0,Z.jsx)(`span`,{className:`min-w-0 truncate font-heading text-sm font-semibold`,children:O}),A?(0,Z.jsx)(`span`,{className:`w-full min-w-0 truncate text-left font-mono text-xs text-muted-foreground`,children:A}):null]}):(0,Z.jsx)(Ns,{activeName:O,activeSub:A,activeId:n,entries:t,onPick:r,onRemove:i,onOpenNew:e}),d>0?(0,Z.jsxs)(`div`,{className:`min-w-0 truncate text-xs text-warning`,children:[d,` line`,d===1?``:`s`,` skipped: malformed or invalid data`]}):null,c]}),s?(0,Z.jsx)(`div`,{className:`flex min-w-0 shrink-0 flex-wrap items-center gap-3 max-sm:order-3 max-sm:w-full max-sm:shrink max-sm:gap-2`,children:s}):P?o?(0,Z.jsx)(`button`,{type:`button`,"aria-label":`${R}: show them in Findings`,title:`Show them in Findings`,onClick:()=>o(P),className:K(C(),ne({impactBand:P}),`tap-target-comfortable cursor-pointer overflow-visible font-mono text-xs font-semibold hover:underline focus-visible:outline-none`),children:R}):(0,Z.jsx)(oe,{label:R,impactBand:P,className:`shrink-0`}):H?(0,Z.jsx)(oe,{label:`Run failed`,impactBand:`critical`,className:`shrink-0`}):V?(0,Z.jsxs)(`span`,{className:K(`inline-flex shrink-0 items-center gap-1.5 rounded-sm bg-clean/10 px-2 py-0.5 font-mono text-xs font-semibold text-clean`),children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`inline-block size-2 shrink-0 rounded-full bg-clean`}),`No findings`]}):(0,Z.jsx)(`span`,{className:`inline-flex shrink-0 items-center rounded-sm border border-border px-2 py-0.5 font-mono text-xs font-medium text-muted-foreground`,children:`Not fully checked`}),(0,Z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[!s&&g.baselineId&&!g.active?(0,Z.jsx)(we,{variant:`ghost`,size:`sm`,className:`tap-target-comfortable`,onClick:()=>N.getState().setComparisonActive(!0),children:`← Back to comparison`}):null,(0,Z.jsxs)(`div`,{className:`hidden items-center gap-1 sm:flex`,children:[_?(0,Z.jsxs)(we,{variant:`ghost`,size:`sm`,className:`tap-target-comfortable`,"aria-label":`Compare with another run`,title:`Compare with another run`,onClick:a,children:[(0,Z.jsx)(Qt,{"aria-hidden":`true`}),(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`xl:hidden`,children:`Compare`}),(0,Z.jsx)(`span`,{"aria-hidden":`true`,className:`hidden xl:inline`,children:`Compare with another run`})]}):null,!s&&!f?(0,Z.jsx)(Ms,{}):null,!s&&b.length>0?(0,Z.jsxs)(we,{variant:`ghost`,size:`sm`,className:`tap-target-comfortable`,onClick:E,children:[(0,Z.jsx)(cn,{"aria-hidden":`true`,className:`text-plan-aggregate`}),`Plan graph`]}):null,s?null:(0,Z.jsx)(Vs,{}),f?null:(0,Z.jsx)(we,{variant:`ghost`,size:`icon`,className:`tap-target-comfortable`,"aria-label":`Docs`,title:`Read the docs`,nativeButton:!1,render:(0,Z.jsx)(`a`,{href:Us,target:`_blank`,rel:`noopener noreferrer`}),children:(0,Z.jsx)(de,{"aria-hidden":`true`})}),(0,Z.jsx)(we,{variant:`ghost`,size:`icon`,className:`tap-target-comfortable`,"aria-label":`Keyboard shortcuts`,title:`Keyboard shortcuts (?)`,onClick:()=>T(!0),children:(0,Z.jsx)(qn,{"aria-hidden":`true`})}),(0,Z.jsx)(we,{variant:`ghost`,size:`icon`,className:`tap-target-comfortable`,"aria-label":`Toggle theme`,"aria-pressed":p===`light`,title:`Toggle theme`,onClick:m,children:p===`dark`?(0,Z.jsx)(Yt,{"aria-hidden":`true`}):(0,Z.jsx)(On,{"aria-hidden":`true`})})]}),(0,Z.jsxs)(oi,{onOpenChange:(e,t)=>{!e&&t.reason===`outside-press`&&setTimeout(()=>{document.activeElement===document.body&&h.current?.focus()})},children:[(0,Z.jsx)(si,{ref:h,className:`tap-target-comfortable inline-flex size-8 items-center justify-center rounded-lg hover:bg-muted hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring/50 sm:hidden`,"aria-label":`More options`,children:(0,Z.jsx)(Vn,{"aria-hidden":`true`})}),(0,Z.jsxs)(ci,{align:`end`,children:[_?(0,Z.jsxs)(li,{onClick:a,children:[(0,Z.jsx)(Qt,{"aria-hidden":`true`}),`Compare with another run`]}):null,!s&&!f?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(js,{...v}),(0,Z.jsx)(di,{})]}):null,!s&&b.length>0?(0,Z.jsxs)(li,{onClick:E,children:[(0,Z.jsx)(cn,{"aria-hidden":`true`,className:`text-plan-aggregate`}),`Plan graph`]}):null,s?null:(0,Z.jsx)(Hs,{}),f?null:(0,Z.jsx)(li,{nativeButton:!1,render:(0,Z.jsx)(`a`,{href:Us,target:`_blank`,rel:`noopener noreferrer`}),children:`Docs`}),(0,Z.jsx)(li,{onClick:()=>T(!0),children:`Keyboard shortcuts`}),(0,Z.jsx)(li,{onClick:m,children:`Toggle theme`})]})]})]}),(0,Z.jsx)(Ps,{open:x,entries:b,onSelect:D,onOpenChange:S}),(0,Z.jsx)(zs,{open:w,onOpenChange:T})]})}function Ys(e){let{pickRecent:t}=Ut(),[n,r]=(0,Y.useState)([]),i=(0,Y.useCallback)(()=>{rn().then(e=>r(e)).catch(()=>r([]))},[]);return(0,Y.useEffect)(()=>{i()},[i,e]),{recentEntries:n,onPickRecent:(0,Y.useCallback)(async e=>{let r=n.find(t=>t.id===e),a=await t(e,r?.handle);(a===`restored`||a===`gone`)&&i()},[n,t,i]),onRemoveRecent:(0,Y.useCallback)(e=>{let t=n.find(t=>t.id===e);Tn(e).catch(()=>{}).finally(i),t&&Lt(`Removed "${t.appName||t.name}" from recent files`,{action:{label:`Undo`,onClick:()=>{Ft(t).catch(()=>{}).finally(i)}}})},[n,i])}}export{ui as a,ai as c,pr as d,ur as f,Zn as g,nr as h,oi as i,ei as l,ir as m,Js as n,ci as o,lr as p,mi as r,si as s,Ys as t,br as u};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,s as n}from"./react-vendor-C6KcUD36.js";import{$ as r,An as i,Bn as a,Dn as o,Fn as s,Hn as c,In as l,J as u,Jn as d,K as f,Kn as p,Ln as m,Mn as h,Nn as g,P as _,Pn as v,Rn as y,Un as b,Vn as x,Wn as S,Xn as C,Yn as w,bn as T,fn as E,gn as D,in as O,jn as k,kn as A,rt as j,ut as M,vn as N,yn as P,zn as ee}from"./DisclosureContext-DK1_iz6J.js";import{v as te}from"./inertValue-L9VxV0VE.js";import{$ as ne,D as re,E as ie,F as ae,J as oe,M as se,Q as F,W as ce,Z as le,at as ue,dt as I,et as L,it as R,nt as de,ot as z,q as fe,rt as pe,st as B,t as me,tt as he,ut as V}from"./useScrollLock-BCxn_dMp.js";import{_ as ge,d as _e,f as ve,g as ye,h as be,m as xe,p as H,u as Se,v as Ce}from"./composite-C9Nu2EI9.js";import{c as we}from"./toggle-DPeN6aNa.js";var Te={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};Te.node;var U=O(Te),W=e(t(),1),G=Math.min,K=Math.max,Ee=Math.round,q=Math.floor,J=e=>({x:e,y:e}),De={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Y(e,t,n){return K(e,G(t,n))}function X(e,t){return typeof e==`function`?e(t):e}function Z(e){return e.split(`-`)[0]}function Q(e){return e.split(`-`)[1]}function Oe(e){return e===`x`?`y`:`x`}function ke(e){return e===`y`?`height`:`width`}function $(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Ae(e){return Oe($(e))}function je(e,t,n){n===void 0&&(n=!1);let r=Q(e),i=Ae(e),a=ke(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Be(o)),[o,Be(o)]}function Me(e){let t=Be(e);return[Ne(e),t,Ne(t)]}function Ne(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Pe=[`left`,`right`],Fe=[`right`,`left`],Ie=[`top`,`bottom`],Le=[`bottom`,`top`];function Re(e,t,n){switch(e){case`top`:case`bottom`:return n?t?Fe:Pe:t?Pe:Fe;case`left`:case`right`:return t?Ie:Le;default:return[]}}function ze(e,t,n,r){let i=Q(e),a=Re(Z(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Ne)))),a}function Be(e){let t=Z(e);return De[t]+e.slice(t.length)}function Ve(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function He(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Ve(e)}function Ue(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function We(e,t={}){let{enabled:n=!0,event:r=`click`,toggle:i=!0,ignoreMouse:a=!1,stickIfOpen:o=!0,touchOpenDelay:s=0,reason:c=M}=t,l=`rootStore`in e?e.rootStore:e,d=l.context.dataRef,p=W.useRef(void 0),m=f(),h=V(),g=W.useMemo(()=>{function e(e,t,n,r){let i=u(c,t,n);e&&r===`touch`&&s>0?h.start(s,()=>{l.setOpen(!0,i)}):l.setOpen(e,i)}function t(e,t,n){let r=d.current.openEvent,a=l.select(`domReferenceElement`)!==t;return e&&a||!e||!i?!0:r&&o?!n(r.type):!1}return{onPointerDown(e){p.current=he(e.pointerType,!0)&&pe(e.nativeEvent)?`virtual`:e.pointerType},onMouseDown(n){let i=p.current,o=n.nativeEvent,s=l.select(`open`);if(n.button!==0||r===`click`||he(i,!0)&&a)return;let c=t(s,n.currentTarget,e=>e===`click`||e===`mousedown`),u=Ce(o);if(oe(u)){e(c,o,u,i);return}let d=n.currentTarget;m.request(()=>{e(c,o,d,i)})},onClick(n){if(r===`mousedown-only`)return;let i=p.current;if(r===`mousedown`&&i){p.current=void 0;return}he(i,!0)&&a||e(t(l.select(`open`),n.currentTarget,e=>e===`click`||e===`mousedown`||e===`keydown`||e===`keyup`),n.nativeEvent,n.currentTarget,i)},onKeyDown(){p.current=void 0}}},[d,r,a,c,l,o,i,m,h,s]);return W.useMemo(()=>n?{reference:g}:P,[n,g])}function Ge(e,t,n){let{reference:r,floating:i}=e,a=$(t),o=Ae(t),s=ke(o),c=Z(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=Q(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function Ke(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=X(t,e),p=He(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Ue(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=Ue(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var qe=50,Je=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Ke},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Ge(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<qe&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=Ge(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Ye=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=X(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Z(r),_=$(o),v=Z(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Be(o)]:Me(o)),x=p!==`none`;!d&&x&&b.push(...ze(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=je(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===$(t)||T.every(e=>$(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=$(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}},Xe=new Set([`left`,`top`]);async function Ze(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Z(n),s=Q(n),c=$(n)===`y`,l=Xe.has(o)?-1:1,u=a&&c?-1:1,d=X(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Qe=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Ze(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},$e=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=X(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=$(i),p=Oe(f),m=u[p],h=u[f],g=(e,t)=>Y(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}},et=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=X(e,t),u={x:n,y:r},d=$(i),f=Oe(d),p=u[f],m=u[d],h=X(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:h.mainAxis??0,crossAxis:h.crossAxis??0};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=Xe.has(Z(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},tt=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){let{placement:n,rects:r,platform:i,elements:a}=t,{apply:o=()=>{},...s}=X(e,t),c=await i.detectOverflow(t,s),l=Z(n),u=Q(n),d=$(n)===`y`,{width:f,height:p}=r.floating,m,h;l===`top`||l===`bottom`?(m=l,h=u===(await(i.isRTL==null?void 0:i.isRTL(a.floating))?`start`:`end`)?`left`:`right`):(h=l,m=u===`end`?`top`:`bottom`);let g=p-c.top-c.bottom,_=f-c.left-c.right,v=G(p-c[m],g),y=G(f-c[h],_),b=t.middlewareData.shift,x=!b,S=v,C=y;b!=null&&b.enabled.x&&(C=_),b!=null&&b.enabled.y&&(S=g),x&&!u&&(d?C=f-2*K(c.left,c.right):S=p-2*K(c.top,c.bottom)),await o({...t,availableWidth:C,availableHeight:S});let w=await i.getDimensions(a.floating);return f!==w.width||p!==w.height?{reset:{rects:!0}}:{}}}};function nt(e){let t=h(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=b(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Ee(n)!==a||Ee(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function rt(e){return c(e)?e:e.contextElement}function it(e){let t=rt(e);if(!b(t))return J(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=nt(t),o=(a?Ee(n.width):n.width)/r,s=(a?Ee(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var at=J(0);function ot(e){let t=a(e);return!C()||!t.visualViewport?at:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function st(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===a(e)}function ct(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),o=rt(e),l=J(1);t&&(r?c(r)&&(l=it(r)):l=it(e));let u=st(o,n,r)?ot(o):J(0),d=(i.left+u.x)/l.x,f=(i.top+u.y)/l.y,p=i.width/l.x,m=i.height/l.y;if(o&&r){let e=a(o),t=c(r)?a(r):r,n=e,i=s(n);for(;i&&t!==n;){let e=it(i),t=i.getBoundingClientRect(),r=h(i),o=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,c=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;d*=e.x,f*=e.y,p*=e.x,m*=e.y,d+=o,f+=c,n=a(i),i=s(n)}}return Ue({width:p,height:m,x:d,y:f})}function lt(e,t){let n=m(e).scrollLeft;return t?t.left+n:ct(v(e)).left+n}function ut(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-lt(e,n),y:n.top+t.scrollTop}}function dt(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=v(r),s=t?w(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},u=J(1),d=J(0),f=b(r);if((f||!a)&&((l(r)!==`body`||p(o))&&(c=m(r)),f)){let e=ct(r);u=it(r),d.x=e.x+r.clientLeft,d.y=e.y+r.clientTop}let h=o&&!f&&!a?ut(o,c):J(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-c.scrollLeft*u.x+d.x+h.x,y:n.y*u.y-c.scrollTop*u.y+d.y+h.y}}function ft(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function pt(e){let t=m(e),n=e.ownerDocument.body,r=K(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=K(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+lt(e),o=-t.scrollTop;return h(n).direction===`rtl`&&(a+=K(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var mt=25;function ht(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=a(e),o=v(e),s=i.visualViewport,c=o.clientWidth,l=o.clientHeight,u=0,d=0;if(s){let e=!C()||t===`fixed`;r?e||(u=-s.offsetLeft,d=-s.offsetTop):(c=s.width,l=s.height,e&&(u=s.offsetLeft,d=s.offsetTop))}if(lt(o)<=0){let e=o.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(o.clientWidth-t.clientWidth-r),a=getComputedStyle(o).scrollbarGutter===`stable both-edges`?i/2:i;a<=mt&&(c-=a)}return{width:c,height:l,x:u,y:d}}function gt(e,t){let n=ct(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=it(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function _t(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=ht(e,n,t);else if(t===`document`)r=pt(v(e));else if(c(t))r=gt(t,n);else{let n=ot(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Ue(r)}function vt(e,t){let n=t.get(e);if(n)return n;let r=y(e,[],!1).filter(e=>c(e)&&l(e)!==`body`),i=null,a=h(e).position===`fixed`,o=a?ee(e):e;for(;c(o)&&!S(o);){let e=h(o),t=x(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=ee(o)}return t.set(e,r),r}function yt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?w(t)?[]:vt(t,this._c):[].concat(n),r],o=_t(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=_t(t,a[e],i);s=K(n.top,s),c=G(n.right,c),l=G(n.bottom,l),u=K(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function bt(e){let{width:t,height:n}=nt(e);return{width:t,height:n}}function xt(e,t,n){let r=b(t),i=v(t),a=n===`fixed`,o=ct(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=J(0);if((r||!a)&&((l(t)!==`body`||p(i))&&(s=m(t)),r)){let e=ct(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=lt(i));let u=i&&!r&&!a?ut(i,s):J(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function St(e){return h(e).position===`static`}function Ct(e,t){if(!b(e)||h(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return v(e)===n&&(n=n.ownerDocument.body),n}function wt(e,t){let n=a(e);if(w(e))return n;if(!b(e)){let t=ee(e);for(;t&&!S(t);){if(c(t)&&!St(t))return t;t=ee(t)}return n}let r=Ct(e,t);for(;r&&d(r)&&St(r);)r=Ct(r,t);return r&&S(r)&&St(r)&&!x(r)?n:r||g(e)||n}var Tt=async function(e){let t=this.getOffsetParent||wt,n=this.getDimensions,r=await n(e.floating);return{reference:xt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Et(e){return h(e).direction===`rtl`}var Dt={convertOffsetParentRelativeRectToViewportRelativeRect:dt,getDocumentElement:v,getClippingRect:yt,getOffsetParent:wt,getElementRects:Tt,getClientRects:ft,getDimensions:bt,getScale:it,isElement:c,isRTL:Et};function Ot(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function kt(e,t,n){let r=null,i,o=v(e);function s(){var e;clearTimeout(i),(e=r)==null||e.disconnect(),r=null}function c(n,a){n===void 0&&(n=!1),a===void 0&&(a=1),s();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(n||t(),!f||!p)return;let m=q(d),h=q(o.clientWidth-(u+f)),g=q(o.clientHeight-(d+p)),_=q(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:K(0,G(1,a))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(!Ot(l,e.getBoundingClientRect()))return c();if(n!==a){if(!y)return c();n?c(!1,n):i=setTimeout(()=>{c(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:o.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let l=a(e),u=()=>c(n);return l.addEventListener(`resize`,u),c(!0),()=>{l.removeEventListener(`resize`,u),s()}}function At(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=rt(e),u=i||a?[...l?y(l):[],...t?y(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?kt(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?ct(e):null;c&&g();function g(){let t=ct(e);h&&!Ot(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var jt=Qe,Mt=$e,Nt=Ye,Pt=tt,Ft=et,It=(e,t,n)=>{let r=new Map,i=n??{},a={...Dt,...i.platform,_c:r};return Je(e,t,{...i,platform:a})},Lt=e(n(),1),Rt=typeof document<`u`?W.useLayoutEffect:function(){};function zt(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!zt(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!zt(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Bt(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Vt(e,t){let n=Bt(e);return Math.round(t*n)/n}function Ht(e){let t=W.useRef(e);return Rt(()=>{t.current=e}),t}function Ut(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=W.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,p]=W.useState(r);zt(f,r)||p(r);let[m,h]=W.useState(null),[g,_]=W.useState(null),v=W.useCallback(e=>{e!==S.current&&(S.current=e,h(e))},[]),y=W.useCallback(e=>{e!==C.current&&(C.current=e,_(e))},[]),b=a||m,x=o||g,S=W.useRef(null),C=W.useRef(null),w=W.useRef(u),T=c!=null,E=Ht(c),D=Ht(i),O=Ht(l),k=W.useCallback(()=>{if(!S.current||!C.current)return;let e={placement:t,strategy:n,middleware:f};D.current&&(e.platform=D.current),It(S.current,C.current,e).then(e=>{let t={...e,isPositioned:O.current!==!1};A.current&&!zt(w.current,t)&&(w.current=t,Lt.flushSync(()=>{d(t)}))})},[f,t,n,D,O]);Rt(()=>{l===!1&&w.current.isPositioned&&(w.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let A=W.useRef(!1);Rt(()=>(A.current=!0,()=>{A.current=!1}),[]),Rt(()=>{if(b&&(S.current=b),x&&(C.current=x),b&&x){if(E.current)return E.current(b,x,k);k()}},[b,x,k,E,T]);let j=W.useMemo(()=>({reference:S,floating:C,setReference:v,setFloating:y}),[v,y]),M=W.useMemo(()=>({reference:b,floating:x}),[b,x]),N=W.useMemo(()=>{let e={position:n,left:0,top:0};if(!M.floating)return e;let t=Vt(M.floating,u.x),r=Vt(M.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Bt(M.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,M.floating,u.x,u.y]);return W.useMemo(()=>({...u,update:k,refs:j,elements:M,floatingStyles:N}),[u,k,j,M,N])}var Wt=(e,t)=>{let n=jt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Gt=(e,t)=>{let n=Mt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Kt=(e,t)=>({fn:Ft(e).fn,options:[e,t]}),qt=(e,t)=>{let n=Nt(e);return{name:n.name,fn:n.fn,options:[e,t]}},Jt=(e,t)=>{let n=Pt(e);return{name:n.name,fn:n.fn,options:[e,t]}};function Yt(e){return Xt(e,e.rootContext)}function Xt(e,t){let{nodeId:n,externalTree:r}=e,i=t.useState(`referenceElement`),a=t.useState(`floatingElement`),o=t.useState(`domReferenceElement`),s=t.useState(`open`),l=t.useState(`floatingId`),[u,d]=W.useState(null),[f,p]=W.useState(void 0),[m,h]=W.useState(void 0),g=W.useRef(null),_=re(r),v=W.useMemo(()=>({reference:i,floating:a,domReference:o}),[i,a,o]),y=Ut({...e,elements:{...v,...u&&{reference:u}}}),b=c(f)?f:null,x=m===void 0?t.state.floatingElement:m;t.useSyncedValue(`referenceElement`,f??null),t.useSyncedValue(`domReferenceElement`,f===void 0?o:b),t.useSyncedValue(`floatingElement`,x);let S=W.useCallback(e=>{let t=c(e)?{getBoundingClientRect:()=>e.getBoundingClientRect(),getClientRects:()=>e.getClientRects(),contextElement:e}:e;d(t),y.refs.setReference(t)},[y.refs]),C=W.useCallback(e=>{(c(e)||e===null)&&(g.current=e,p(e)),(c(y.refs.reference.current)||y.refs.reference.current===null||e!==null&&!c(e))&&y.refs.setReference(e)},[y.refs,p]),w=W.useCallback(e=>{h(e),y.refs.setFloating(e)},[y.refs]),T=W.useMemo(()=>({...y.refs,setReference:C,setFloating:w,setPositionReference:S,domReference:g}),[y.refs,C,w,S]),E=W.useMemo(()=>({...y.elements,domReference:o}),[y.elements,o]),D=W.useMemo(()=>({...y,dataRef:t.context.dataRef,open:s,onOpenChange:t.setOpen,events:t.context.events,floatingId:l,refs:T,elements:E,nodeId:n,rootStore:t}),[y,T,E,n,t,s,l]);return A(()=>{o&&(g.current=o)},[o]),A(()=>{t.context.dataRef.current.floatingContext=D;let e=_?.nodesRef.current.find(e=>e.id===n);e&&(e.context=D)}),W.useMemo(()=>({...y,context:D,refs:T,elements:E,rootStore:t}),[y,T,E,D,t])}var Zt=`Escape`;function Qt(e){return z&&e.movementX===0&&e.movementY===0}function $t(e,t,n){switch(e){case`vertical`:return t;case`horizontal`:return n;default:return t||n}}function en(e,t){return $t(t,e===`ArrowUp`||e===`ArrowDown`,e===`ArrowLeft`||e===`ArrowRight`)}function tn(e,t,n){return $t(t,e===`ArrowDown`,n?e===`ArrowLeft`:e===`ArrowRight`)||e===`Enter`||e===` `||e===``}function nn(e,t,n){return $t(t,n?e===F:e===ne,e===le)}function rn(e,t,n,r){return t===`both`||t===`horizontal`&&r?e===Zt:$t(t,n?e===ne:e===F,e===L)}function an(e,t){let{listRef:n,activeIndex:a,onNavigate:o=()=>{},enabled:s=!0,selectedIndex:c=null,allowEscape:l=!1,loopFocus:d=!1,nested:p=!1,rtl:m=!1,virtual:h=!1,focusItemOnOpen:g=`auto`,focusItemOnHover:v=!0,openOnArrowKeyDown:y=!0,disabledIndices:x=void 0,orientation:S=`vertical`,parentOrientation:C,id:w,resetOnPointerLeave:T=!0,externalTree:E,grid:D}=t,O=D!=null,k=`rootStore`in e?e.rootStore:e,M=k.useState(`open`),N=k.useState(`floatingElement`),P=k.useState(`domReferenceElement`),ee=k.context.dataRef,ne=ce(N),oe=fe(P),se=_(ne),F=ie(),le=re(E),ue=W.useRef(g),I=W.useRef(c??-1),L=W.useRef(null),z=W.useRef(!0),B=i(e=>{o(I.current===-1?null:I.current,e)}),me=W.useRef(!!N),he=W.useRef(M),V=W.useRef(!1),be=W.useRef(!1),H=W.useRef(null),we=_(x),Te=_(M),U=_(c),G=_(T),K=f(),Ee=f(),q=i(()=>{function e(e){h?le?.events.emit(`virtualfocus`,e):H.current=ae(e,{sync:V.current,preventScroll:!0})}let t=n.current[I.current],r=be.current;t&&e(t),(V.current?e=>e():e=>K.request(e))(()=>{let i=n.current[I.current]||t;i&&(t||e(i),Q&&(r||!z.current)&&i.scrollIntoView?.({block:`nearest`,inline:`nearest`}))})});A(()=>{ee.current.orientation=S},[ee,S]),A(()=>{s&&(M&&N?(I.current=c??-1,ue.current&&c!=null&&(be.current=!0,B())):me.current&&(I.current=-1,B()))},[s,M,N,c,B]),A(()=>{if(s){if(!M){V.current=!1;return}if(N){if(a==null){if(V.current=!1,U.current!=null)return;if(me.current&&(I.current=-1,q()),(!he.current||!me.current)&&ue.current&&(L.current!=null||ue.current===!0&&L.current==null)){let e=0,t=()=>{n.current[0]==null?(e<2&&(e?e=>Ee.request(e):queueMicrotask)(t),e+=1):(I.current=L.current==null||tn(L.current,S,m)||p?ve(n):_e(n),L.current=null,B())};t()}}else xe(n.current,a)||(I.current=a,q(),be.current=!1)}}},[s,M,N,a,U,p,n,S,m,B,q,Ee]),A(()=>{if(!s||N||!le||h||!me.current)return;let e=le.nodesRef.current,t=e.find(e=>e.id===F)?.context?.elements.floating,n=ye(te(P??t??null)),r=e.some(e=>e.context&&ge(e.context.elements.floating,n));t&&!r&&z.current&&t.focus({preventScroll:!0})},[s,N,P,le,F,h]),A(()=>{he.current=M,me.current=!!N}),A(()=>{M||(L.current=null,ue.current=g)},[M,g]);let J=a!=null,De=i(e=>{if(!Te.current)return;let t=n.current.indexOf(e.currentTarget);t!==-1&&(I.current!==t||a!==t)&&(I.current=t,B(e))}),Y=i(()=>C??le?.nodesRef.current.find(e=>e.id===F)?.context?.dataRef?.current.orientation),X=i(()=>ve(n,we.current)),Z=i(e=>{if(z.current=!1,V.current=!0,e.which===229||!Te.current&&e.currentTarget===se.current)return;if(p&&rn(e.key,S,m,O)){en(e.key,Y())||R(e),k.setOpen(!1,u(j,e.nativeEvent)),b(P)&&(h?le?.events.emit(`virtualfocus`,P):P.focus());return}let t=I.current,r=ve(n,x),i=_e(n,x);if(oe||(e.key===`Home`&&(R(e),I.current=r,B(e)),e.key===`End`&&(R(e),I.current=i,B(e))),D!=null){let t=D(e,I.current,n,S,d,m,x,r,i);if(t!=null&&(I.current=t,B(e)),S===`both`)return}if(en(e.key,S)){if(R(e),M&&!h&&ye(e.currentTarget.ownerDocument)===e.currentTarget){I.current=tn(e.key,S,m)?r:i,B(e);return}tn(e.key,S,m)?d?t>=i?l&&t!==n.current.length?I.current=-1:(V.current=!1,I.current=r):I.current=Se(n.current,{startingIndex:t,disabledIndices:x}):I.current=Math.min(i,Se(n.current,{startingIndex:t,disabledIndices:x})):d?t<=r?l&&t!==-1?I.current=n.current.length:(V.current=!1,I.current=i):I.current=Se(n.current,{startingIndex:t,decrement:!0,disabledIndices:x}):I.current=Math.max(r,Se(n.current,{startingIndex:t,decrement:!0,disabledIndices:x})),xe(n.current,I.current)&&(I.current=-1),B(e)}}),Q=W.useMemo(()=>({onFocus(e){V.current=!0,De(e)},onClick:({currentTarget:e})=>e.focus({preventScroll:!0}),onMouseMove(e){Qt(e)||(V.current=!0,be.current=!1,v&&De(e))},onPointerLeave(e){if(!Te.current||!z.current||e.pointerType===`touch`)return;V.current=!0;let t=e.relatedTarget;if(v&&!n.current.includes(t)&&G.current&&(H.current?.(),H.current=null,I.current=-1,B(e),!h)){let e=se.current,t=ye(te(e));e&&ge(e,t)&&e.focus({preventScroll:!0})}}}),[De,Te,se,v,n,B,G,h]),Oe=W.useMemo(()=>h&&M&&J&&{"aria-activedescendant":`${w}-${a}`},[h,M,J,w,a]),ke=W.useMemo(()=>({...oe?{}:Oe,onKeyDown(e){if(e.key===`Tab`&&e.shiftKey&&M&&!h){let t=Ce(e.nativeEvent);if(t&&!ge(se.current,t))return;R(e),k.setOpen(!1,u(r,e.nativeEvent)),b(P)&&P.focus();return}Z(e)},onPointerMove(e){Qt(e)||(z.current=!0)}}),[Oe,Z,se,oe,k,M,h,P]),$=W.useMemo(()=>{function e(e){k.setOpen(!0,u(j,e.nativeEvent,e.currentTarget))}function t(e){g===`auto`&&de(e.nativeEvent)&&(ue.current=!h)}function n(e){ue.current=g,g===`auto`&&pe(e.nativeEvent)&&(ue.current=!0)}return{onKeyDown(t){let n=k.select(`open`);z.current=!1;let r=t.key.startsWith(`Arrow`),i=nn(t.key,Y(),m),a=en(t.key,S),o=(p?i:a)||t.key===`Enter`||t.key.trim()===``;if(h&&n)return Z(t);if(n||y||!r){if(o){let e=en(t.key,Y());L.current=p&&e?null:t.key}if(p){i&&(R(t),n?(I.current=X(),B(t)):e(t));return}a&&(U.current!=null&&(I.current=U.current),R(t),!n&&y?e(t):Z(t),n&&B(t))}},onFocus(e){k.select(`open`)&&!h&&(I.current=-1,B(e))},onPointerDown:n,onPointerEnter:n,onMouseDown:t,onClick:t}},[Z,g,X,p,B,k,y,S,Y,m,U,h]),Ae=W.useMemo(()=>({...Oe,...$}),[Oe,$]);return W.useMemo(()=>s?{reference:Ae,floating:ke,item:Q,trigger:$}:{},[s,Ae,ke,$,Q])}function on(e,t){let{listRef:n,elementsRef:r,activeIndex:a,onMatch:o,disabledIndices:s,onTyping:c,enabled:l=!0,resetMs:u=750,selectedIndex:d=null}=t,f=`rootStore`in e?e.rootStore:e,p=f.useState(`open`),m=V(),h=W.useRef(``),g=W.useRef(d??a??-1),_=W.useRef(null),v=i(e=>{function t(e){return r?.current[e]}function i(e){let n=t(e);return n&&!H(n)||n?.matches(`:disabled`)?!1:s==null||!be(N,e,s)}function l(e,t,n=0){if(e.length===0)return-1;let r=(n%e.length+e.length)%e.length,a=t.toLowerCase();for(let t=0;t<e.length;t+=1){let n=(r+t)%e.length;if(e[n]?.toLowerCase().startsWith(a)&&i(n))return n}return-1}let f=n.current;if(h.current.length>0&&e.key===` `&&(R(e),c?.(!0)),h.current.length>0&&h.current[0]!==` `&&l(f,h.current)===-1&&e.key!==` `&&c?.(!1),f==null||e.key.length!==1||e.ctrlKey||e.metaKey||e.altKey)return;p&&e.key!==` `&&(R(e),c?.(!0));let v=h.current===``;v&&(g.current=d??a??-1),f.every((e,t)=>e&&i(t)?e[0]?.toLowerCase()!==e[1]?.toLowerCase():!0)&&h.current===e.key&&(h.current=``,g.current=_.current),h.current+=e.key,m.start(u,()=>{h.current=``,g.current=_.current,c?.(!1)});let y=((v?d??a??-1:g.current)??0)+1,b=l(f,h.current,y);b===-1?e.key!==` `&&(h.current=``,c?.(!1)):(o?.(b),_.current=b)}),y=i(e=>{let t=e.relatedTarget,n=f.select(`domReferenceElement`),r=f.select(`floatingElement`);ge(n,t)||ge(r,t)||(m.clear(),h.current=``,g.current=_.current,c?.(!1))});A(()=>{(p||d===null)&&(m.clear(),_.current=null,h.current!==``&&(h.current=``))},[p,d,m]);let b=W.useMemo(()=>({onKeyDown:v,onBlur:y}),[v,y]);return W.useMemo(()=>l?{reference:b,floating:b}:{},[l,b])}function sn(e){let t=W.useRef(``),n=W.useCallback(n=>{n.defaultPrevented||(t.current=n.pointerType,e(n,n.pointerType))},[e]);return{onClick:W.useCallback(n=>{if(n.detail===0){e(n,`keyboard`);return}`pointerType`in n?e(n,n.pointerType):e(n,t.current),t.current=``},[e]),onPointerDown:n}}function cn(e,t){let n=W.useRef(e),r=i(t);A(()=>{n.current!==e&&r(n.current),n.current=e},[e,r])}function ln(e,t){let{onClick:n,onPointerDown:r}=sn(i((n,r)=>{(typeof e==`function`?e():e)||t(r||(B?`touch`:``))}));return W.useMemo(()=>({onClick:n,onPointerDown:r}),[n,r])}function un(e){let[t,n]=W.useState(null),r=ln(e,n);return cn(e,t=>{t&&!e&&n(null)}),W.useMemo(()=>({openMethod:t,triggerProps:r}),[t,r])}function dn(e){return e===`starting`?se:P}var fn=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0,offsetParent:d=`real`}=X(e,t)||{};if(l==null)return{};let f=He(u),p={x:n,y:r},m=Ae(i),h=ke(m),g=await o.getDimensions(l),_=m===`y`,v=_?`top`:`left`,y=_?`bottom`:`right`,b=_?`clientHeight`:`clientWidth`,x=a.reference[h]+a.reference[m]-p[m]-a.floating[h],S=p[m]-a.reference[m],C=d===`real`?await o.getOffsetParent?.(l):s.floating,w=s.floating[b]||a.floating[h];(!w||!await o.isElement?.(C))&&(w=s.floating[b]||a.floating[h]);let T=x/2-S/2,E=w/2-g[h]/2-1,D=Math.min(f[v],E),O=Math.min(f[y],E),k=D,A=w-g[h]-O,j=w/2-g[h]/2+T,M=Y(k,j,A),N=!c.arrow&&Q(i)!=null&&j!==M&&a.reference[h]/2-(j<k?D:O)-g[h]/2<0,P=N?j<k?j-k:j-A:0;return{[m]:p[m]+P,data:{[m]:M,centerOffset:j-M-P,...N&&{alignmentOffset:P}},reset:N}}}),pn=(e,t)=>{let{name:n,fn:r}=fn(e);return{name:n,fn:r,options:[e,t]}},mn={name:`hide`,async fn(e){let{width:t,height:n,x:r,y:i}=e.rects.reference,a=t===0&&n===0&&r===0&&i===0,o=await e.platform.detectOverflow(e,{elementContext:`reference`});return{data:{referenceHidden:o.top-n>=0||o.right-t>=0||o.bottom-n>=0||o.left-t>=0||a}}}},hn={sideX:`left`,sideY:`top`},gn=`--available-width`,_n=`--available-height`,vn=`--anchor-width`,yn=`--anchor-height`,bn=`--transform-origin`,xn=gn,Sn=_n;function Cn(e,t,n){let r=e===`inline-start`||e===`inline-end`;return{top:`top`,right:r?n?`inline-start`:`inline-end`:`right`,bottom:`bottom`,left:r?n?`inline-end`:`inline-start`:`left`}[t]}function wn(e,t,n){let{rects:r,placement:i}=e;return{side:Cn(t,Z(i),n),align:Q(i)||`center`,anchor:{width:r.reference.width,height:r.reference.height},positioner:{width:r.floating.width,height:r.floating.height}}}function Tn(e){return En(e,Yt)}function En(e,t){let{anchor:n,positionMethod:r=`absolute`,side:o=`bottom`,sideOffset:s=0,align:c=`center`,alignOffset:l=0,collisionBoundary:u,collisionPadding:d=5,sticky:f=!1,arrowPadding:p=5,disableAnchorTracking:m=!1,inline:h,keepMounted:g=!1,floatingRootContext:v,mounted:y,collisionAvoidance:b,shift:x,nodeId:S,adaptiveOrigin:C,lazyFlip:w=!1,externalTree:T}=e,[E,D]=W.useState(null);!y&&E!==null&&D(null);let O=b.side||`flip`,k=b.align||`flip`,j=b.fallbackAxisSide||`end`,M=x?.crossAxis??!1,N=x?.rootBoundary,P=typeof n==`function`?n:void 0,ee=i(P),ne=P?ee:n,re=_(n),ie=_(y),ae=we()===`rtl`,oe=E||{top:`top`,right:`right`,bottom:`bottom`,left:`left`,"inline-end":ae?`left`:`right`,"inline-start":ae?`right`:`left`}[o],se=c===`center`?oe:`${oe}-${c}`,F=d;typeof F==`number`?F={top:F,right:F,bottom:F,left:F}:F&&={top:F.top||0,right:F.right||0,bottom:F.bottom||0,left:F.left||0};let ce=+(o===`bottom`),le=+(o===`top`),ue=+(o===`right`),I=+(o===`left`),L={boundary:u===`clipping-ancestors`?`clippingAncestors`:u,padding:F},R=W.useRef(null),de=_(s),z=_(l),fe=typeof s==`function`?0:s,pe=typeof l==`function`?0:l,B=[];h&&B.push(h),B.push(Wt(e=>{let t=wn(e,o,ae),n=typeof de.current==`function`?de.current(t):de.current,r=typeof z.current==`function`?z.current(t):z.current;return{mainAxis:n,crossAxis:r,alignmentAxis:r}},[fe,pe,ae,o]));let me=k===`none`&&O!==`shift`,he=!me&&(f||M||O===`shift`),V=O===`none`?null:qt({...L,padding:{top:F.top+1+ce,right:F.right+1+I,bottom:F.bottom+1+le,left:F.left+1+ue},mainAxis:!M&&O===`flip`,crossAxis:k===`flip`&&`alignment`,fallbackAxisSideDirection:j}),ge=me?null:Gt({...L,rootBoundary:N,mainAxis:k!==`none`,crossAxis:he,limiter:f||M?void 0:Kt(e=>{if(!R.current)return{};let{width:t,height:n}=R.current.getBoundingClientRect(),r=$(Z(e.placement)),i=r===`y`?t:n,a=r===`y`?F.left+F.right:F.top+F.bottom;return{offset:i/2+a/2}})},[L,f,M,N,F,k]);O===`shift`||k===`shift`||c===`center`?B.push(ge,V):B.push(V,ge),B.push(Jt({...L,apply({elements:{floating:e},availableWidth:t,availableHeight:n,rects:r}){if(!ie.current)return;let i=e.style;i.setProperty(xn,`${t}px`),i.setProperty(Sn,`${n}px`);let o=a(e).devicePixelRatio||1,{x:s,y:c,width:l,height:u}=r.reference,d=(Math.round((s+l)*o)-Math.round(s*o))/o,f=(Math.round((c+u)*o)-Math.round(c*o))/o;i.setProperty(vn,`${d}px`),i.setProperty(yn,`${f}px`)}}),pn(e=>({element:R.current||te(e.elements.floating).createElement(`div`),padding:R.current?p:0,offsetParent:`floating`}),[p]),{name:`transformOrigin`,fn(e){let{elements:{floating:t},middlewareData:n,placement:r,platform:i,rects:a,y:c}=e,l=Z(r),u=Q(r),d=$(l)===`y`,f=R.current,p=typeof s==`function`?s(wn(e,o,ae)):s,m;m=!f&&u&&Math.abs(d?n.shift?.x||0:n.shift?.y||0)<=1?u===`start`===(d&&i.isRTL?.(t)===!0)?`100%`:`0%`:`${(d?n.arrow?.x||0:n.arrow?.y||0)+(d?f?.clientWidth||0:f?.clientHeight||0)/2}px`;let h=l===`top`||l===`left`?`calc(100% + ${p}px)`:`${-p}px`;return he&&d&&Math.abs(n.shift?.y||0)>p&&(h=`${a.reference.y+a.reference.height/2-c}px`),t.style.setProperty(bn,d?`${m} ${h}`:`${h} ${m}`),{}}},mn,C),A(()=>{!y&&v&&v.update({referenceElement:null,floatingElement:null,domReferenceElement:null,positionReference:null})},[y,v]);let _e=W.useMemo(()=>({ancestorScroll:!m,elementResize:!m&&typeof ResizeObserver<`u`,layoutShift:!m&&typeof IntersectionObserver<`u`}),[m]),{refs:ve,elements:ye,x:be,y:xe,middlewareData:H,update:Se,placement:Ce,context:Te,isPositioned:U,floatingStyles:G}=t({rootContext:v,open:g?y:void 0,placement:se,middleware:B,strategy:r,whileElementsMounted:g?void 0:(...e)=>At(...e,_e),nodeId:S,externalTree:T}),{sideX:K,sideY:Ee}=H.adaptiveOrigin||hn,q=U?r:`fixed`,J=W.useMemo(()=>{let e;return e=U?C?{position:q,[K]:be,[Ee]:xe}:{...G,position:q}:{position:q,top:0,left:0},e[xn]=`100vw`,e[Sn]=`100vh`,U||(e.opacity=0),e},[C,q,K,be,Ee,xe,G,U]),De=W.useRef(null);A(()=>{if(!y)return;let e=re.current,t=typeof e==`function`?e():e,n=(Dn(t)?t.current:t)||null;n!==De.current&&(ve.setPositionReference(n),De.current=n)},[y,ve,ne,re]),W.useEffect(()=>{if(!y)return;let e=re.current;typeof e!=`function`&&Dn(e)&&e.current!==De.current&&(ve.setPositionReference(e.current),De.current=e.current)},[y,ve,ne,re]),W.useEffect(()=>{if(g&&y&&ye.reference&&ye.floating)return At(ye.reference,ye.floating,Se,_e)},[g,y,ye,Se,_e]);let Y=Z(Ce),X=Cn(o,Y,ae),Oe=Q(Ce)||`center`,ke=!!H.hide?.referenceHidden;A(()=>{w&&y&&U&&Y!==oe&&D(Y)},[w,y,U,Y,oe]);let Ae=W.useMemo(()=>({position:`absolute`,top:H.arrow?.y,left:H.arrow?.x}),[H.arrow]),je=H.arrow?.centerOffset!==0;return W.useMemo(()=>({positionerStyles:J,arrowStyles:Ae,arrowRef:R,arrowUncentered:je,side:X,align:Oe,physicalSide:Y,anchorHidden:ke,refs:ve,context:Te,isPositioned:U,update:Se}),[J,Ae,R,je,X,Oe,Y,ke,ve,Te,U,Se])}function Dn(e){return e!=null&&`current`in e}function On(e,t,{styles:n,transitionStatus:r,props:i,refs:a,hidden:o,inert:s=!1}){let c={...n};return s&&(c.pointerEvents=`none`),D(`div`,e,{state:t,ref:a,props:[{role:`presentation`,hidden:o,style:c},dn(r),i],stateAttributesMapping:I})}var kn=20;function An(e,t,n,r){let[i,a]=W.useState(!1);A(()=>{if(!e||!t||n==null){a(!1);return}let r=te(n).documentElement.clientWidth,i=n.offsetWidth;a(r>0&&i>0&&i>=r-kn)},[e,t,n]),me(e&&(!t||i),r)}var jn=5;function Mn(e,t){let n=Nn(t);return e.clientX>=n.left-jn&&e.clientX<=n.right+jn&&e.clientY>=n.top-jn&&e.clientY<=n.bottom+jn}function Nn(e){let t=e.getBoundingClientRect(),n=a(e);if(ue)return t;let r=n.getComputedStyle(e,`::before`),i=n.getComputedStyle(e,`::after`);if(r.content===`none`&&i.content===`none`)return t;let o=parseFloat(r.width)||0,s=parseFloat(r.height)||0,c=parseFloat(i.width)||0,l=parseFloat(i.height)||0,u=Math.max(t.width,o,c),d=Math.max(t.height,s,l),f=u-t.width,p=d-t.height;return{left:t.left-f/2,right:t.right+f/2,top:t.top-p/2,bottom:t.bottom+p/2}}var Pn=`data-valid`,Fn=`data-invalid`,In={badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},Ln={disabled:!1,valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},Rn={valid(e){return e===null?null:e?{[Pn]:``}:{[Fn]:``}}},zn={invalid:void 0,name:void 0,validityData:{state:In,errors:[],error:``,value:``,initialValue:null},setValidityData:T,disabled:void 0,setTouched:T,setDirty:T,setFilled:T,setFocused:T,validationMode:`onSubmit`,shouldValidateOnChange:()=>!1,state:Ln,registerFieldControl:T,validation:{getValidationProps:(e,t=P)=>t,inputRef:{current:null},registeredInputs:new Map,registerInput:T,getInputControl:()=>null,commit:async()=>{},change:T}},Bn=W.createContext(zn);function Vn(e=!0){let t=W.useContext(Bn);if(t.setValidityData===T&&!e)throw Error(o(28));return t}var Hn=W.createContext({elementRef:{current:null},formRef:{current:{fields:new Map}},errors:{},clearErrors:T,validationMode:`onSubmit`,submitCountRef:{current:0}});function Un(){return W.useContext(Hn)}var Wn=W.createContext({controlId:void 0,registerControlId:T,resetControlId:T,labelId:void 0,setLabelId:T,messageIds:[],setMessageIds:T,getDescriptionProps:e=>e});function Gn(){return W.useContext(Wn)}function Kn(e={}){let{id:t,enabled:n=!0}=e,{controlId:r,registerControlId:a,resetControlId:o}=Gn(),s=E(),c=k(()=>Symbol()),l=W.useRef(!1),u=W.useRef(!1),d=i(()=>{l.current&&a!==T&&(l.current=!1,a(c.current,void 0))});return A(()=>{if(!n||a===T){d();return}let e;if(t!==void 0)u.current=!0,e=t;else if(u.current)e=s;else{o();return}if(e===void 0){d();return}l.current=!0,a(c.current,e)},[t,n,a,o,s,c,d]),A(()=>d,[d]),(n?r:void 0)??t??s}function qn(e,t,n,r,i=!0,a){let{registerFieldControl:o}=Vn(),s=k(()=>Symbol());A(()=>{let c=s.current;if(!i){o(c,void 0);return}o(c,{controlRef:e,getValue:r,id:t,name:a,value:n})},[e,i,r,t,a,o,s,n]),A(()=>{let e=s.current;return()=>{o(e,void 0)}},[o,s])}export{Dt as _,Vn as a,U as b,An as c,dn as d,un as f,an as g,on as h,Un as i,On as l,cn as m,Kn as n,Rn as o,ln as p,Gn as r,Mn as s,qn as t,Tn as u,We as v,Ue as y};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n,n as r,r as i,s as a}from"./react-vendor-C6KcUD36.js";import{$ as o,An as s,B as c,Bn as l,F as u,G as d,Gn as f,Hn as p,In as m,J as h,K as g,Kn as _,Mn as v,N as y,P as b,Q as x,R as S,Sn as ee,Un as C,W as w,Wn as T,at as E,bn as D,gn as O,j as k,jn as A,kn as j,lt as te,ot as M,pn as N,q as P,qn as ne,ut as re,xn as F,yn as I,z as L,zn as ie}from"./DisclosureContext-DK1_iz6J.js";import{v as R}from"./inertValue-L9VxV0VE.js";import{_ as z,g as B,p as V,v as H}from"./composite-C9Nu2EI9.js";var U=e(t(),1),W={clipPath:`inset(50%)`,overflow:`hidden`,whiteSpace:`nowrap`,border:0,padding:0,width:1,height:1,margin:-1},G={...W,position:`fixed`,top:0,left:0},K={...W,position:`absolute`},q=n(),J=`data-open`,Y=`data-closed`,ae=c,oe=L,se=`data-anchor-hidden`,ce=`data-popup-open`,le=`data-pressed`,ue={[ce]:``},de={[ce]:``,[le]:``},X={[J]:``},Z={[Y]:``},Q={[se]:``},fe={open(e){return e?ue:null}},pe={open(e){return e?de:null}},me={open(e){return e?X:Z},anchorHidden(e){return e?Q:null}},he={...me,...S},ge=0,_e=class e{static create(){return new e}currentId=ge;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=ge,t()},e)}isStarted(){return this.currentId!==ge}clear=()=>{this.currentId!==ge&&(clearTimeout(this.currentId),this.currentId=ge)};disposeEffect=()=>this.clear};function ve(){let e=A(_e.create).current;return P(e.disposeEffect),e}function ye(){return typeof navigator>`u`?{userAgent:``,platform:``,maxTouchPoints:0}:{userAgent:navigator.userAgent,platform:navigator.platform??``,maxTouchPoints:navigator.maxTouchPoints??0}}var{userAgent:be,platform:xe,maxTouchPoints:Se}=ye(),Ce=be.toLowerCase(),we=xe.toLowerCase(),Te=/^i(os$|p)/.test(we)||we===`macintel`&&Se>1,Ee=`android`,De=we===Ee||Ce.includes(Ee),Oe=!Te&&we.startsWith(`mac`);we.startsWith(`win`),!De&&/^(linux|chrome os)/.test(we);var ke=Oe||Te,Ae=typeof CSS<`u`&&!!CSS.supports?.(`-webkit-backdrop-filter:none`);!Ae&&Ce.includes(`firefox`),!Ae&&Ce.includes(`chrom`);var je=ke,Me=/jsdom|happydom/.test(Ce);function Ne(e){e.preventDefault(),e.stopPropagation()}function Pe(e){return`nativeEvent`in e}function Fe(e){return e.pointerType===``&&e.isTrusted?!0:De&&e.pointerType?e.type===`click`&&e.buttons===1:e.detail===0&&!e.pointerType}function Ie(e){return Me?!1:!De&&e.width===0&&e.height===0||De&&e.width===1&&e.height===1&&e.pressure===0&&e.detail===0&&e.pointerType===`mouse`||e.width<1&&e.height<1&&e.pressure===0&&e.detail===0&&e.pointerType===`touch`}function Le(e,t){let n=[`mouse`,`pen`];return t||n.push(``,void 0),n.includes(e)}function Re(e){let t=e.type;return t===`click`||t===`mousedown`||t===`keydown`||t===`keyup`}var ze=`data-base-ui-focusable`,Be=`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`,Ve=`ArrowLeft`,He=`ArrowRight`,Ue=`ArrowUp`,We=`ArrowDown`,Ge=`data-trigger-disabled`;function Ke(e,t){if(!p(e))return!1;let n=e;if(t.hasElement(n))return!n.hasAttribute(Ge);for(let[,e]of t.entries())if(z(e,n))return!e.hasAttribute(Ge);return!1}function qe(e,t){if(t==null)return!1;if(`composedPath`in e)return e.composedPath().includes(t);let n=e;return n.target!=null&&t.contains(n.target)}function Je(e){return e.matches(`html,body`)}function Ye(e){return C(e)&&e.matches(`input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])`)}function Xe(e){return e?.closest(`button,a[href],[role="button"],select,[tabindex]:not([tabindex="-1"]),${Be}`)!=null}function Ze(e){return e?e.getAttribute(`role`)===`combobox`&&Ye(e):!1}function Qe(e){if(!e||Me)return!0;try{return e.matches(`:focus-visible`)}catch{return!0}}function $e(e){return e?e.hasAttribute(`data-base-ui-focusable`)?e:e.querySelector(`[data-base-ui-focusable]`)||e:null}function et(...e){return()=>{for(let t=0;t<e.length;t+=1){let n=e[t];n&&n()}}}var tt=U.forwardRef(function(e,t){let[n,r]=U.useState();j(()=>{je&&Ae&&r(`button`)},[]);let i={tabIndex:0,role:n};return(0,q.jsx)(`span`,{...e,ref:t,style:G,"aria-hidden":!n||void 0,...i,"data-base-ui-focus-guard":``})}),nt=`a[href],button,input,select,textarea,summary,details,iframe,object,embed,[tabindex],[contenteditable]:not([contenteditable="false"]),audio[controls],video[controls]`;function rt(e){let t=e.assignedSlot;if(t)return t;if(e.parentElement)return e.parentElement;let n=e.getRootNode();return ne(n)?n.host:null}function it(e){for(let t of Array.from(e.children))if(m(t)===`summary`)return t;return null}function at(e,t){let n=it(t);return!!n&&(e===n||z(n,e))}function ot(e){let t=e?m(e):``;return e!=null&&e.matches(nt)&&(t!==`summary`||e.parentElement!=null&&m(e.parentElement)===`details`&&it(e.parentElement)===e)&&(t!==`details`||it(e)==null)&&(t!==`input`||e.type!==`hidden`)}function st(e){if(!ot(e)||!e.isConnected||e.matches(`:disabled`))return!1;for(let t=e;t;t=rt(t)){let n=t!==e,r=m(t)===`slot`;if(t.hasAttribute(`inert`)||n&&m(t)===`details`&&!t.open&&!at(e,t)||t.hasAttribute(`hidden`)||!r&&!ct(t,n))return!1}return!0}function ct(e,t){let n=v(e);return t?n.display!==`none`:V(e,n)}function lt(e){let t=e.tabIndex;if(t<0){let t=m(e);if(t===`details`||t===`audio`||t===`video`||C(e)&&e.isContentEditable)return 0}return t}function ut(e){if(m(e)!==`input`)return null;let t=e;return t.type===`radio`&&t.name!==``?t:null}function dt(e,t){let n=ut(e);if(!n)return!0;let r=t.find(e=>{let t=ut(e);return t?.name===n.name&&t.form===n.form&&t.checked});return r?r===n:t.find(e=>{let t=ut(e);return t?.name===n.name&&t.form===n.form})===n}function ft(e){if(C(e)&&m(e)===`slot`){let t=e.assignedElements({flatten:!0});if(t.length>0)return t}return C(e)&&e.shadowRoot?Array.from(e.shadowRoot.children):Array.from(e.children)}function pt(e,t){ft(e).forEach(e=>{ot(e)&&t.push(e),pt(e,t)})}function mt(e,t,n){ft(e).forEach(e=>{C(e)&&e.matches(t)&&n.push(e),mt(e,t,n)})}function ht(e){return st(e)&&lt(e)>=0}function gt(e){let t=[];return pt(e,t),t.filter(st)}function _t(e){let t=gt(e);return t.filter(e=>lt(e)>=0&&dt(e,t))}function vt(e,t){let n=_t(e),r=n.length;if(r===0)return;let i=B(R(e)),a=n.indexOf(i);return n[a===-1?t===1?0:r-1:a+t]}function yt(e){return vt(R(e).body,1)||e}function bt(e){return vt(R(e).body,-1)||e}function xt(e,t){if(!e)return null;let n=_t(R(e).body),r=n.length;if(r===0)return null;let i=n.indexOf(e);return i===-1?null:n[(i+t+r)%r]}function St(e){return xt(e,1)}function Ct(e){return xt(e,-1)}function wt(e,t){let n=t||e.currentTarget,r=e.relatedTarget;return!r||!z(n,r)}function Tt(e){_t(e).forEach(e=>{e.dataset.tabindex=e.getAttribute(`tabindex`)||``,e.setAttribute(`tabindex`,`-1`)})}function Et(e){let t=[];mt(e,`[data-tabindex]`,t),t.forEach(e=>{let t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute(`tabindex`,t):e.removeAttribute(`tabindex`)})}function Dt(e,t,n=!0){return e.filter(e=>e.parentId===t).flatMap(t=>[...!n||t.context?.open?[t]:[],...Dt(e,t.id,n)])}function Ot(e,t){let n=[],r=e.find(e=>e.id===t)?.parentId;for(;r;){let t=e.find(e=>e.id===r);r=t?.parentId,t&&(n=n.concat(t))}return n}function kt(e){return`data-base-ui-${e}`}var At=0;function jt(e,t={}){let{preventScroll:n=!1,sync:r=!1,shouldFocus:i}=t;cancelAnimationFrame(At);function a(){(!i||i())&&e?.focus({preventScroll:n})}if(r)return a(),D;let o=requestAnimationFrame(a);return At=o,()=>{At===o&&(cancelAnimationFrame(o),At=0)}}var Mt={inert:new WeakMap,"aria-hidden":new WeakMap},Nt=`data-base-ui-inert`,Pt={inert:new WeakSet,"aria-hidden":new WeakSet},Ft=new WeakMap,It=0;function Lt(e){return Pt[e]}function Rt(e){return e?ne(e)?e.host:Rt(e.parentNode):null}var zt=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=Rt(t);return e.contains(n)?n:null}).filter(e=>e!=null),Bt=e=>{let t=new Set;return e.forEach(e=>{let n=e;for(;n&&!t.has(n);)t.add(n),n=n.parentNode}),t},Vt=(e,t,n)=>{let r=[],i=e=>{e&&!n.has(e)&&Array.from(e.children).forEach(e=>{m(e)!==`script`&&(t.has(e)?i(e):r.push(e))})};return i(e),r};function Ht(e,t,n,r,{mark:i=!0}){let a=null;r?a=`inert`:n&&(a=`aria-hidden`);let o=null,s=null,c=zt(t,e),l=i?Vt(t,Bt(c),new Set(c)):[],u=[],d=[];if(a){let e=Mt[a],n=Lt(a);s=n,o=e;let r=zt(t,Array.from(t.querySelectorAll(`[aria-live]`))),i=c.concat(r);Vt(t,Bt(i),new Set(i)).forEach(t=>{let r=t.getAttribute(a),i=r!==null&&r!==`false`,o=(e.get(t)||0)+1;e.set(t,o),u.push(t),o===1&&i&&n.add(t),i||t.setAttribute(a,a===`inert`?``:`true`)})}return i&&l.forEach(e=>{let t=(Ft.get(e)||0)+1;Ft.set(e,t),d.push(e),t===1&&e.setAttribute(Nt,``)}),It+=1,()=>{o&&u.forEach(e=>{let t=(o.get(e)||0)-1;o.set(e,t),t||(!s?.has(e)&&a&&e.removeAttribute(a),s?.delete(e))}),i&&d.forEach(e=>{let t=(Ft.get(e)||0)-1;Ft.set(e,t),t||e.removeAttribute(Nt)}),--It,It||(Mt.inert=new WeakMap,Mt[`aria-hidden`]=new WeakMap,Pt.inert=new WeakSet,Pt[`aria-hidden`]=new WeakSet,Ft=new WeakMap)}}function Ut(e,t={}){let{ariaHidden:n=!1,inert:r=!1,mark:i=!0}=t,a=R(e[0]).body;return Ht(e,a,n,r,{mark:i})}var Wt=e(a(),1),Gt={style:{transition:`none`}},Kt=`data-base-ui-click-trigger`,qt={fallbackAxisSide:`none`},Jt={fallbackAxisSide:`end`},Yt={clipPath:`inset(50%)`,position:`fixed`,top:0,left:0},Xt=U.createContext(null),Zt=()=>U.useContext(Xt),Qt=kt(`portal`);function $t(e={}){let{ref:t,container:n,componentProps:r=I,elementProps:i}=e,a=N(),o=Zt()?.portalNode,[c,l]=U.useState(null),[u,d]=U.useState(null),p=s(e=>{e!==null&&d(e)}),m=U.useRef(null);j(()=>{if(n===null){m.current&&(m.current=null,d(null),l(null));return}let e=(n&&(f(n)?n:n.current))??o??document.body;if(e==null){m.current&&(m.current=null,d(null),l(null));return}m.current!==e&&(m.current=e,d(null),l(e))},[n,o]);let h=O(`div`,r,{ref:[t,p],props:[{id:a,[Qt]:``},i]}),g=c&&h?Wt.createPortal(h,c):null;return{node:u,nodeId:U.isValidElement(h)?h.props.id:void 0,subtree:g}}var en=U.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,container:o,portalOwnerRole:s,...c}=e,{node:l,nodeId:d,subtree:f}=$t({container:o,ref:t,componentProps:e,elementProps:c}),p=U.useRef(null),m=U.useRef(null),g=U.useRef(null),_=U.useRef(null),[v,y]=U.useState(null),b=U.useRef(!1),x=v?.modal,S=v?.open,ee=!!v&&!v.modal&&v.open&&!!l;U.useEffect(()=>{if(!l||x)return;function e(e){l&&e.relatedTarget&&wt(e)&&(e.type===`focusin`?b.current&&=(Et(l),!1):(Tt(l),b.current=!0))}return et(u(l,`focusin`,e,!0),u(l,`focusout`,e,!0))},[l,x]),j(()=>{l&&S===!0&&b.current&&(Et(l),b.current=!1)},[S,l]);let C=U.useMemo(()=>({beforeOutsideRef:p,afterOutsideRef:m,beforeInsideRef:g,afterInsideRef:_,portalNode:l,setFocusManagerState:y}),[l]);return(0,q.jsxs)(U.Fragment,{children:[f,(0,q.jsxs)(Xt.Provider,{value:C,children:[ee&&l&&(0,q.jsx)(tt,{"data-type":`outside`,ref:p,onFocus:e=>{wt(e,l)?g.current?.focus():bt(v?v.domReference:null)?.focus()}}),ee&&l&&(0,q.jsx)(`span`,{role:s,"aria-owns":d,style:Yt}),l&&Wt.createPortal(a,l),ee&&l&&(0,q.jsx)(tt,{"data-type":`outside`,ref:m,onFocus:e=>{wt(e,l)?_.current?.focus():(yt(v?v.domReference:null)?.focus(),v?.closeOnFocusOut&&v?.onOpenChange(!1,h(`focus-out`,e.nativeEvent)))}})]})]})});function tn(){let e=new Map;return{emit(t,n){e.get(t)?.forEach(e=>e(n))},on(t,n){e.has(t)||e.set(t,new Set),e.get(t).add(n)},off(t,n){e.get(t)?.delete(n)}}}var nn=class{nodesRef={current:[]};events=tn();addNode(e){this.nodesRef.current.push(e)}removeNode(e){let t=this.nodesRef.current.findIndex(t=>t===e);t!==-1&&this.nodesRef.current.splice(t,1)}},rn=U.createContext(null),an=U.createContext(null),on=()=>U.useContext(rn)?.id||null,sn=e=>{let t=U.useContext(an);return e??t};function cn(e){let t=N(),n=sn(e),r=on();return j(()=>{if(!t)return;let e={id:t,parentId:r};return n?.addNode(e),()=>{n?.removeNode(e)}},[n,t,r]),t}function ln(e){let{children:t,id:n}=e,r=on();return(0,q.jsx)(rn.Provider,{value:U.useMemo(()=>({id:n,parentId:r}),[n,r]),children:t})}function un(e){let{children:t,externalTree:n}=e,r=A(()=>n??new nn).current;return(0,q.jsx)(an.Provider,{value:r,children:t})}function dn(e,t){let n=l(H(e));return e instanceof n.KeyboardEvent?`keyboard`:e instanceof n.FocusEvent?t||`keyboard`:`pointerType`in e?e.pointerType||`keyboard`:`touches`in e?`touch`:e instanceof n.MouseEvent?t||(e.detail===0?`keyboard`:`mouse`):``}var fn=20,$=[];function pn(){$=$.filter(e=>e.deref()?.isConnected)}function mn(e){pn(),e&&m(e)!==`body`&&($.push(new WeakRef(e)),$.length>fn&&($=$.slice(-20)))}function hn(){return pn(),$[$.length-1]?.deref()}function gn(e){return e?ht(e)?e:_t(e)[0]||e:null}function _n(e){if(e.hasAttribute(`tabindex`)&&!e.hasAttribute(`data-tabindex`)||!e.getAttribute(`role`)?.includes(`dialog`))return;let t=gt(e).filter(e=>{let t=e.getAttribute(`data-tabindex`)||``;return ht(e)||e.hasAttribute(`data-tabindex`)&&!t.startsWith(`-`)}),n=e.getAttribute(`tabindex`);t.length===0?n!==`0`&&(e.setAttribute(`tabindex`,`0`),e.setAttribute(`data-tabindex`,`0`)):(n!==`-1`||e.hasAttribute(`data-tabindex`)&&e.getAttribute(`data-tabindex`)!==`-1`)&&(e.setAttribute(`tabindex`,`-1`),e.setAttribute(`data-tabindex`,`-1`))}function vn(e){let{context:t,children:n,disabled:r=!1,initialFocus:i=!0,returnFocus:a=!0,restoreFocus:c=!1,modal:l=!0,closeOnFocusOut:d=!0,openInteractionType:f=``,nextFocusableElement:p,previousFocusableElement:_,beforeContentFocusGuardRef:v,externalTree:x,getInsideElements:S}=e,w=`rootStore`in t?t.rootStore:t,T=w.useState(`open`),E=w.useState(`domReferenceElement`),D=w.useState(`floatingElement`),{events:O,dataRef:k}=w.context,A=s(()=>k.current.floatingContext?.nodeId),te=i===!1,M=Ze(E)&&te,N=b(i),P=b(a),ne=b(f),re=b(T),F=sn(x),I=Zt(),L=U.useRef(!1),ie=U.useRef(!1),W=U.useRef(!1),G=U.useRef(null),K=U.useRef(``),J=U.useRef(``),Y=U.useRef(null),ae=U.useRef(null),oe=ee(Y,v,I?.beforeInsideRef),se=ee(ae,I?.afterInsideRef),ce=ve(),le=ve(),ue=g(),de=I!=null,X=$e(D),Z=s((e=X)=>e?_t(e):[]),Q=s(()=>S?.().filter(e=>e!=null)??[]);U.useEffect(()=>{if(r||!l)return;function e(e){e.key===`Tab`&&z(X,B(R(X)))&&Z().length===0&&!M&&Ne(e)}let t=R(X);return u(t,`keydown`,e)},[r,X,l,M,Z]),U.useEffect(()=>{if(r||!T)return;let e=R(X);function t(){W.current=!1}function n(e){let t=H(e),n=Q(),r=z(D,t)||z(E,t)||z(I?.portalNode,t)||n.some(e=>e===t||z(e,t));W.current=!r,J.current=e.pointerType||`keyboard`,t?.closest(`[data-base-ui-click-trigger]`)&&(ie.current=!0,le.start(0,()=>{ie.current=!1}))}function i(){J.current=`keyboard`}return et(u(e,`pointerdown`,n,!0),u(e,`pointerup`,t,!0),u(e,`pointercancel`,t,!0),u(e,`keydown`,i,!0),t)},[r,D,E,X,T,I,le,Q]),U.useEffect(()=>{if(r||!d)return;let e=R(X);function t(){ie.current=!0,le.start(0,()=>{ie.current=!1})}function n(e){let t=H(e);ht(t)&&(G.current=t)}function i(t){let n=t.relatedTarget,r=t.currentTarget,i=H(t);l&&n==null&&i!=null&&z(D,i)&&mn(i),queueMicrotask(()=>{let a=A(),s=w.context.triggerElements,u=Q(),d=n?.hasAttribute(kt(`focus-guard`))&&[Y.current,ae.current,I?.beforeInsideRef.current,I?.afterInsideRef.current,I?.beforeOutsideRef.current,I?.afterOutsideRef.current,y(_),y(p)].includes(n),f=!(z(E,n)||z(D,n)||z(n,D)||z(I?.portalNode,n)||u.some(e=>e===n||z(e,n))||s.hasMatchingElement(e=>z(e,n))||d||F&&(Dt(F.nodesRef.current,a).find(e=>z(e.context?.elements.floating,n)||z(e.context?.elements.domReference,n))||Ot(F.nodesRef.current,a).find(e=>[e.context?.elements.floating,$e(e.context?.elements.floating)].includes(n)||e.context?.elements.domReference===n)));if(r===E&&X&&_n(X),c&&r!==E&&!V(i)&&B(e)===e.body){if(C(X)&&(X.focus(),c===`popup`)){ue.request(()=>{X.focus()});return}let e=Z(),t=G.current,n=(t&&e.includes(t)?t:null)||e[e.length-1]||X;C(n)&&n.focus()}if(k.current.insideReactTree){k.current.insideReactTree=!1;return}(M||!l)&&n&&f&&!ie.current&&(M||n!==hn())&&(L.current=!0,w.setOpen(!1,h(o,t)))})}function a(){W.current||(k.current.insideReactTree=!0,ce.start(0,()=>{k.current.insideReactTree=!1}))}let s=C(E)?E:null;if(D||s)return et(s&&u(s,`focusout`,i),s&&u(s,`pointerdown`,t),D&&u(D,`focusin`,n),D&&u(D,`focusout`,i),D&&I&&u(D,`focusout`,a,!0))},[r,E,D,X,l,F,I,w,d,c,Z,M,A,k,ce,le,ue,p,_,Q]),U.useEffect(()=>{if(r||!D||!T)return;let e=Array.from(I?.portalNode?.querySelectorAll(`[${kt(`portal`)}]`)||[]),t=(F?Ot(F.nodesRef.current,A()):[]).find(e=>Ze(e.context?.elements.domReference||null))?.context?.elements.domReference,n=Ut([D,...e,Y.current,ae.current,I?.beforeOutsideRef.current,I?.afterOutsideRef.current,...Q(),t,y(_),y(p),M?E:null].filter(e=>e!=null),{ariaHidden:l||M,mark:!1}),i=Ut([D,...e].filter(e=>e!=null));return()=>{i(),n()}},[T,r,E,D,l,I,M,F,A,p,_,Q]),j(()=>{if(!T||r||!C(X))return;K.current=``,J.current=``;let e=R(X),t=B(e);queueMicrotask(()=>{let n=N.current,r=typeof n==`function`?n(ne.current||``):n;if(r===void 0||r===!1||z(X,t))return;let i=null,a=()=>(i??=Z(X),i[0]||X),o;o=r===!0||r===null?a():y(r),o||=a();let s=z(X,B(e));jt(o,{preventScroll:o===X,shouldFocus(){if(!re.current)return!1;if(s)return!0;let t=B(e);return!(t!==o&&z(X,t))}})})},[r,T,X,Z,N,ne,re]),j(()=>{if(r||!X)return;let e=R(X),t=B(e),n=ne.current==null;mn(t);function i(e){if(e.open||(K.current=dn(e.nativeEvent,J.current)),e.reason===`trigger-hover`&&e.nativeEvent.type===`mouseleave`&&(L.current=!0),e.reason===`outside-press`){if(e.nested)L.current=!1;else if(Fe(e.nativeEvent)||Ie(e.nativeEvent))L.current=!1;else{let e=!1;R(X).createElement(`div`).focus({get preventScroll(){return e=!0,!1}}),e?L.current=!1:L.current=!0}}}O.on(`openchange`,i);function a(e){let r=P.current,i=typeof r==`function`?r(e):r;if(i===void 0||i===!1)return null;i===null&&(i=!0);let a=E?.isConnected?E:null,o=t?.isConnected&&m(t)!==`body`?t:null,s=n?o||a:a||o;return s||=hn()||null,typeof i==`boolean`?s:y(i)||s||null}return()=>{O.off(`openchange`,i);let t=B(e),n=Q(),r=z(D,t)||n.some(e=>e===t||z(e,t))||F&&Dt(F.nodesRef.current,A(),!1).some(e=>z(e.context?.elements.floating,t)),o=P.current,s=K.current,c=a(s);queueMicrotask(()=>{let n=gn(c),i=typeof o!=`boolean`;if(o&&!L.current&&C(n)&&(i||n===t||t===e.body||r)){let e={preventScroll:!0};s===`keyboard`&&(e.focusVisible=!0),n.focus(e)}L.current=!1})}},[r,D,X,P,ne,O,F,E,A,Q]),j(()=>{if(!Ae||T||!D)return;let e=B(R(D));C(e)&&Ye(e)&&z(D,e)&&e.blur()},[T,D]),j(()=>{if(!r&&I)return I.setFocusManagerState({modal:l,closeOnFocusOut:d,open:T,onOpenChange:w.setOpen,domReference:E}),()=>{I.setFocusManagerState(null)}},[r,I,l,T,w,d,E]),j(()=>{if(!r&&X)return _n(X),()=>{queueMicrotask(pn)}},[r,X]);let fe=!r&&(!l||!M)&&(de||l);return(0,q.jsxs)(U.Fragment,{children:[fe&&(0,q.jsx)(tt,{"data-type":`inside`,ref:oe,onFocus:e=>{if(l){let e=Z();jt(e[e.length-1])}else I?.portalNode&&(L.current=!1,wt(e,I.portalNode)?yt(E)?.focus():y(_??I.beforeOutsideRef)?.focus())}}),n,fe&&(0,q.jsx)(tt,{"data-type":`inside`,ref:se,onFocus:e=>{l?jt(Z()[0]):I?.portalNode&&(d&&(L.current=!0),wt(e,I.portalNode)?bt(E)?.focus():y(p??I.afterOutsideRef)?.focus())}})]})}function yn(){return!1}function bn(e){return{escapeKey:typeof e==`boolean`?e:e?.escapeKey??!1,outsidePress:typeof e==`boolean`?e:e?.outsidePress??!0}}function xn(e,t={}){let{enabled:n=!0,escapeKey:r=!0,outsidePress:i=!0,outsidePressEvent:a=`sloppy`,referencePress:o=yn,bubbles:c,externalTree:l}=t,d=`rootStore`in e?e.rootStore:e,f=d.useState(`open`),m=d.useState(`floatingElement`),{dataRef:g,events:_}=d.context,y=sn(l),b=s(typeof i==`function`?i:()=>!1),S=typeof i==`function`?b:i,ee=S!==!1,w=s(()=>a),{escapeKey:E,outsidePress:D}=bn(c),O=U.useRef(!1),k=U.useRef(!1),A=U.useRef(!1),j=U.useRef(!1),te=U.useRef(!1),N=U.useRef(``),P=U.useRef(null),F=ve(),I=ve(),L=s(()=>{I.clear(),g.current.insideReactTree=!1}),B=s(e=>{let t=g.current.floatingContext?.nodeId;return(y?Dt(y.nodesRef.current,t):[]).some(t=>t.context?.open&&!t.context.dataRef.current[e])}),V=s(e=>qe(e,d.select(`floatingElement`))||qe(e,d.select(`domReferenceElement`))),W=s(e=>{o()&&d.setOpen(!1,h(re,e.nativeEvent))}),G=s(e=>{if(!f||!n||!r||e.key!==`Escape`||te.current||!E&&B(`__escapeKeyBubbles`))return;let t=Pe(e)?e.nativeEvent:e,i=h(x,t);d.setOpen(!1,i),i.isCanceled||e.preventDefault(),!E&&!i.isPropagationAllowed&&e.stopPropagation()}),K=s(()=>{g.current.insideReactTree=!0,I.start(0,L)}),q=s(e=>{if(!f||!n||e.button!==0)return;let t=H(e.nativeEvent);z(d.select(`floatingElement`),t)&&(O.current||(O.current=!0,k.current=!1))}),J=s(e=>{f&&n&&(e.defaultPrevented||e.nativeEvent.defaultPrevented)&&O.current&&(k.current=!0)});U.useEffect(()=>{function e(e){e.open||(j.current=!1)}return _.on(`openchange`,e),()=>{_.off(`openchange`,e)}},[_]),U.useEffect(()=>{if(!f||!n)return f||(j.current=!1),L;g.current.__escapeKeyBubbles=E,g.current.__outsidePressBubbles=D;let e=new _e,t=new _e,i=R(m);function a(){e.clear(),te.current=!0}function o(){e.start(Ae?5:0,()=>{te.current=!1})}function s(){A.current=!0,t.start(0,()=>{A.current=!1})}function c(){O.current=!1,k.current=!1}function l(){let e=N.current,t=e===`pen`||!e?`mouse`:e,n=w(),r=typeof n==`function`?n():n;return typeof r==`string`?r:r[t]}function _(e){let t=l();return t===`intentional`&&e.type!==`click`||t===`sloppy`&&e.type===`click`}function b(e){let t=g.current.floatingContext?.nodeId,n=y&&Dt(y.nodesRef.current,t).some(t=>qe(e,t.context?.elements.floating));return V(e)||n}function x(e){if(_(e)){e.type!==`click`&&!V(e)&&(t.clear(),A.current=!1),L();return}if(g.current.insideReactTree){L();return}let n=H(e),r=`[${kt(`inert`)}]`,i=p(n)?n.getRootNode():null,a=Array.from((ne(i)?i:R(d.select(`floatingElement`))).querySelectorAll(r)),o=d.context.triggerElements;if(n&&(o.hasElement(n)||o.hasMatchingElement(e=>z(e,n))))return;let s=p(n)?n:null;for(;s&&!T(s);){let e=ie(s);if(T(e)||!p(e))break;s=e}if(!(a.length&&p(n)&&!Je(n)&&!z(n,d.select(`floatingElement`))&&a.every(e=>!z(s,e)))){if(C(n)&&!(`touches`in e)){let t=T(n),r=v(n),i=/auto|scroll/,a=t||i.test(r.overflowX),o=t||i.test(r.overflowY),s=a&&n.clientWidth>0&&n.scrollWidth>n.clientWidth,c=o&&n.clientHeight>0&&n.scrollHeight>n.clientHeight,l=r.direction===`rtl`,u=c&&(l?e.offsetX<=n.offsetWidth-n.clientWidth:e.offsetX>n.clientWidth),d=s&&e.offsetY>n.clientHeight;if(u||d)return}if(!b(e)){if(l()===`intentional`){if(e.detail!==0&&!Fe(e)&&!j.current)return;if(A.current){t.clear(),A.current=!1;return}}(typeof S!=`function`||S(e))&&(B(`__outsidePressBubbles`)||(d.setOpen(!1,h(M,e)),L()))}}}function re(e){l()===`sloppy`&&e.pointerType!==`touch`&&d.select(`open`)&&n&&!V(e)&&x(e)}function I(e){if(l()!==`sloppy`||!d.select(`open`)||!n||V(e))return;let t=e.touches[0];t&&(P.current={startTime:Date.now(),startX:t.clientX,startY:t.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},F.start(1e3,()=>{P.current&&(P.current.dismissOnTouchEnd=!1,P.current.dismissOnMouseDown=!1)}))}function U(e,t){let n=H(e);if(!n)return;let r=u(n,e.type,()=>{t(e),r()})}function W(e){N.current=`touch`,U(e,I)}function K(e){F.clear(),e.type===`pointerdown`&&(e.button===0&&(j.current=!0),N.current=e.pointerType),(e.type!==`mousedown`||!P.current||P.current.dismissOnMouseDown)&&U(e,e=>{e.type===`pointerdown`?re(e):x(e)})}function q(e){if(e.type===`pointercancel`&&(j.current=!1),!O.current)return;let n=k.current;if(c(),l()===`intentional`){if(e.type===`pointercancel`){n&&s();return}if(!b(e)){if(n){s();return}(typeof S!=`function`||S(e))&&(t.clear(),A.current=!0,L())}}}function J(e){if(l()!==`sloppy`||!P.current||V(e))return;let t=e.touches[0];if(!t)return;let n=Math.abs(t.clientX-P.current.startX),r=Math.abs(t.clientY-P.current.startY),i=Math.sqrt(n*n+r*r);i>5&&(P.current.dismissOnTouchEnd=!0),i>10&&(x(e),F.clear(),P.current=null)}function Y(e){U(e,J)}function ae(e){l()===`sloppy`&&P.current&&!V(e)&&(P.current.dismissOnTouchEnd&&x(e),F.clear(),P.current=null)}function oe(e){U(e,ae)}let se=et(r&&et(u(i,`keydown`,G),u(i,`compositionstart`,a),u(i,`compositionend`,o)),ee&&et(u(i,`click`,K,!0),u(i,`pointerdown`,K,!0),u(i,`pointerup`,q,!0),u(i,`pointercancel`,q,!0),u(i,`mousedown`,K,!0),u(i,`mouseup`,q,!0),u(i,`touchstart`,W,{capture:!0,passive:!0}),u(i,`touchmove`,Y,{capture:!0,passive:!0}),u(i,`touchend`,oe,{capture:!0,passive:!0})));return()=>{se(),e.clear(),t.clear(),c(),A.current=!1,L()}},[g,m,r,ee,S,f,n,E,D,G,L,w,B,V,y,d,F]);let Y=U.useMemo(()=>({onKeyDown:G,onPointerDown:W,onClick:W}),[G,W]),ae=U.useMemo(()=>({onKeyDown:G,onPointerDown:J,onMouseDown:J,onClickCapture:K,onMouseDownCapture(e){K(),q(e)},onPointerDownCapture(e){K(),q(e)},onMouseUpCapture:K,onTouchEndCapture:K,onTouchMoveCapture:K}),[G,K,q,J]);return U.useMemo(()=>n?{reference:Y,floating:ae,trigger:Y}:{},[n,Y,ae])}var Sn=i(),Cn=e(r(),1),wn=[],Tn=void 0;function En(){return Tn}function Dn(e){wn.push(e)}function On(e){let t=(t,n)=>{let r=A(An).current,i;try{Tn=r;for(let e of wn)e.before(r);i=e(t,n);for(let e of wn)e.after(r);r.didInitialize=!0}finally{Tn=void 0}return i};return t.displayName=e.displayName||e.name,t}function kn(e){return U.forwardRef(On(e))}function An(){return{didInitialize:!1}}var jn=F(19)?Pn:Fn;function Mn(e,t,n,r,i){return jn(e,t,n,r,i)}function Nn(e,t,n,r,i){let a=U.useCallback(()=>t(e.getSnapshot(),n,r,i),[e,t,n,r,i]);return(0,Sn.useSyncExternalStore)(e.subscribe,a,a)}Dn({before(e){e.syncIndex=0,e.didInitialize||(e.syncTick=1,e.syncHooks=[],e.didChangeStore=!0,e.getSnapshot=()=>{let t=!1;for(let n=0;n<e.syncHooks.length;n+=1){let r=e.syncHooks[n],i=r.selector(r.store.state,r.a1,r.a2,r.a3);Object.is(r.value,i)||(t=!0,r.value=i)}return t&&(e.syncTick+=1),e.syncTick})},after(e){e.syncHooks.length>0&&(e.didChangeStore&&(e.didChangeStore=!1,e.subscribe=t=>{let n=new Set;for(let t of e.syncHooks)n.add(t.store);let r=[];for(let e of n)r.push(e.subscribe(t));return()=>{for(let e of r)e()}}),(0,Sn.useSyncExternalStore)(e.subscribe,e.getSnapshot,e.getSnapshot))}});function Pn(e,t,n,r,i){let a=En();if(!a)return Nn(e,t,n,r,i);let o=a.syncIndex;a.syncIndex+=1;let s;return a.didInitialize?(s=a.syncHooks[o],(s.store!==e||s.selector!==t||!Object.is(s.a1,n)||!Object.is(s.a2,r)||!Object.is(s.a3,i))&&(s.store!==e&&(a.didChangeStore=!0),s.store=e,s.selector=t,s.a1=n,s.a2=r,s.a3=i,s.value=t(e.getSnapshot(),n,r,i))):(s={store:e,selector:t,a1:n,a2:r,a3:i,value:t(e.getSnapshot(),n,r,i)},a.syncHooks.push(s)),s.value}function Fn(e,t,n,r,i){return(0,Cn.useSyncExternalStoreWithSelector)(e.subscribe,e.getSnapshot,e.getSnapshot,e=>t(e,n,r,i))}var In=class{static create(e){return new this(e)}constructor(e){this.state=e,this.listeners=new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;let t=this.updateTick;for(let n of this.listeners){if(t!==this.updateTick)return;n(e)}}update(e){for(let t in e)if(!Object.is(this.state[t],e[t])){this.setState({...this.state,...e});return}}set(e,t){Object.is(this.state[e],t)||this.setState({...this.state,[e]:t})}notifyAll(){let e={...this.state};this.setState(e)}use(e,t,n,r){return Mn(this,e,t,n,r)}},Ln=class extends In{constructor(e,t={},n){super(e),this.context=t,this.selectors=n}useSyncedValue(e,t){U.useDebugValue(e);let n=this;j(()=>{n.state[e]!==t&&n.set(e,t)},[n,e,t])}useSyncedValueWithCleanup(e,t){let n=this;j(()=>(n.state[e]!==t&&n.set(e,t),()=>{n.set(e,void 0)}),[n,e,t])}useSyncedValues(e){let t=this,n=Object.values(e);j(()=>{t.update(e)},[t,...n])}useControlledProp(e,t){U.useDebugValue(e);let n=this,r=t!==void 0;j(()=>{r&&!Object.is(n.state[e],t)&&n.setState({...n.state,[e]:t})},[n,e,t,r])}select(e,t,n,r){let i=this.selectors[e];return i(this.state,t,n,r)}useState(e,t,n,r){return U.useDebugValue(e),Mn(this,this.selectors[e],t,n,r)}useContextCallback(e,t){U.useDebugValue(e);let n=s(t??D);this.context[e]=n}useStateSetter(e){let t=U.useRef(void 0);return t.current===void 0&&(t.current=t=>{this.set(e,t)}),t.current}observe(e,t){let n;n=typeof e==`function`?e:this.selectors[e];let r=n(this.state);return t(r,r,this),this.subscribe(e=>{let i=n(e);if(!Object.is(r,i)){let e=r;r=i,t(i,e,this)}})}},Rn={open:e=>e.open,transitionStatus:e=>e.transitionStatus,domReferenceElement:e=>e.domReferenceElement,referenceElement:e=>e.positionReference??e.referenceElement,floatingElement:e=>e.floatingElement,floatingId:e=>e.floatingId},zn=class extends Ln{constructor(e){let{syncOnly:t,nested:n,onOpenChange:r,triggerElements:i,...a}=e;super({...a,positionReference:a.referenceElement,domReferenceElement:a.referenceElement},{onOpenChange:r,dataRef:{current:{}},events:tn(),nested:n,triggerElements:i},Rn),this.syncOnly=t}syncOpenEvent=(e,t)=>{(!e||!this.state.open||t!=null&&Re(t))&&(this.context.dataRef.current.openEvent=e?t:void 0)};dispatchOpenChange=(e,t)=>{this.syncOpenEvent(e,t.event);let n={open:e,reason:t.reason,nativeEvent:t.event,nested:this.context.nested,triggerElement:t.trigger};this.context.events.emit(`openchange`,n)};setOpen=(e,t)=>{if(this.syncOnly){this.context.onOpenChange?.(e,t);return}this.dispatchOpenChange(e,t),this.context.onOpenChange?.(e,t)}};function Bn(e){let{popupStore:t,treatPopupAsFloatingElement:n=!1,floatingRootContext:r,floatingId:i,nested:a,onOpenChange:o}=e,s=t.useState(`open`),c=t.useState(`activeTriggerElement`),l=t.useState(n?`popupElement`:`positionerElement`),u=t.context.triggerElements,d=o,f=U.useRef(null);r===void 0&&f.current===null&&(f.current=new zn({open:s,transitionStatus:void 0,referenceElement:c,floatingElement:l,triggerElements:u,onOpenChange:d,floatingId:i,syncOnly:!0,nested:a}));let m=r??f.current;return t.useSyncedValue(`floatingId`,i),j(()=>{let e={open:s,floatingId:i,referenceElement:c,floatingElement:l};p(c)&&(e.domReferenceElement=c),m.state.positionReference===m.state.referenceElement&&(e.positionReference=c),m.update(e)},[s,i,c,l,m]),m.context.onOpenChange=d,m.context.nested=a,m}var Vn={tabIndex:-1,[ze]:``};function Hn(e){return t=>t!==`touch`||e.current}function Un(e,t=!1){let n=N(),r=on()!=null,i=A(()=>e(n,r)).current;return Bn({popupStore:i,treatPopupAsFloatingElement:t,floatingRootContext:i.state.floatingRootContext,floatingId:n,nested:r,onOpenChange:i.setOpen}),i}function Wn({handle:e,store:t}){return j(()=>e.attachStore(t),[e,t]),null}function Gn(e){let t=e.context.triggerElements.size;e.select(`open`)&&e.state.triggerCount!==t&&e.set(`triggerCount`,t)}function Kn(e,t){let n=U.useRef(null);return s(r=>{let i=n.current;if(i!==null){if(i.element===r&&i.store===t&&i.id===e)return;n.current=null;let a=i.store;a.context.triggerElements.getById(i.id)===i.element&&(a.context.triggerElements.delete(i.id),Gn(a))}r!==null&&e!==void 0&&(n.current={store:t,id:e,element:r},t.context.triggerElements.add(e,r),Gn(t))})}function qn(e,t,n,r=!1){let i=e.preventUnmountingOnClose;t?i=!1:r&&(i=!0);let a=n?.id??null,o=e.activeTriggerId,s=e.activeTriggerElement;return(a||t)&&(o=a,s=n??null),{open:t,preventUnmountingOnClose:i,activeTriggerId:o,activeTriggerElement:s}}function Jn(e){let t=!1;return e.preventUnmountOnClose=()=>{t=!0},()=>t}function Yn(e,t,n,r={}){let i=n.reason,a=i===te,o=t&&i===`trigger-focus`,s=!t&&(i===`trigger-press`||i===`escape-key`),c=Jn(n);if(e.context.onOpenChange?.(t,n),n.isCanceled)return;r.onBeforeDispatch?.(),e.state.floatingRootContext.dispatchOpenChange(t,n);let l=()=>{let i=qn(e.state,t,n.trigger,c()),l={...r.extraState,...i};o?l.instantType=`focus`:s?l.instantType=`dismiss`:a&&(l.instantType=void 0),e.update(l)};a?Wt.flushSync(l):l()}function Xn(e,t,n,r){let i=n.useState(`isMountedByTrigger`,e),a=Kn(e,n),o=s(t=>{let i=n.select(`open`),a=n.select(`activeTriggerId`);if(a===e){let e={activeTriggerElement:t,...i?r:null};n.update(e);return}if(a==null&&i){let i={activeTriggerId:e??null,activeTriggerElement:t,...r};n.update(i)}}),c=s(e=>{a(e),e&&o(e)});return j(()=>(c(t.current),()=>c(null)),[c,t,n,e]),j(()=>{if(i){let e={activeTriggerElement:t.current,...r};n.update(e)}},[i,n,t,...Object.values(r)]),{registerTrigger:c,isMountedByThisTrigger:i}}function Zn(e,t={}){let{closeOnActiveTriggerUnmount:n=!1}=t,r=U.useRef(null),i=e.useState(`open`),a=e.useState(`triggerCount`),o=e.useState(`activeTriggerId`),s=e.useState(`activeTriggerElement`);j(()=>{if(!i){r.current=null,e.state.triggerCount!==0&&e.set(`triggerCount`,0);return}let t=e.context.triggerElements.size,a={};e.state.triggerCount!==t&&(a.triggerCount=t);let o=e.select(`activeTriggerId`),s=null;if(o){let t=e.context.triggerElements.getById(o);if(t)r.current=o,t!==e.state.activeTriggerElement&&(a.activeTriggerElement=t);else{for(let[t,n]of e.context.triggerElements.entries())if(n===e.state.activeTriggerElement){a.activeTriggerId=t,a.activeTriggerElement=n,r.current=t;break}a.activeTriggerId===void 0&&(r.current===o?s=o:r.current=null)}}else r.current=null;if(!s&&!o&&t===1){let t=e.context.triggerElements.entries().next();if(!t.done){let[e,n]=t.value;a.activeTriggerId=e,a.activeTriggerElement=n,r.current=e}}(a.triggerCount!==void 0||a.activeTriggerId!==void 0||a.activeTriggerElement!==void 0)&&e.update(a),s&&n&&queueMicrotask(()=>{if(e.select(`open`)&&e.select(`activeTriggerId`)===s&&!e.context.triggerElements.getById(s)){let t=h(E);e.setOpen(!1,t),t.isCanceled||e.update({activeTriggerId:null,activeTriggerElement:null})}})},[i,e,a,o,s,n])}function Qn(e,t,n,r){let{mounted:i,setMounted:a,transitionStatus:o}=w(e,!1,!1,r),c=t.useState(`preventUnmountingOnClose`),l=!e&&c;t.useSyncedValues({mounted:i,transitionStatus:o,preventUnmountingOnClose:l});let u=s(()=>{a(!1),t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1,preventUnmountingOnClose:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)});return k({enabled:i&&!e&&!l,open:e,ref:t.context.popupRef,onComplete(){e||u()}}),{forceUnmount:u,transitionStatus:o}}function $n(e,t){e.useSyncedValues(t),j(()=>()=>{e.update({activeTriggerProps:I,inactiveTriggerProps:I,popupProps:I})},[e])}function er(e,t){j(()=>{!t&&e.state.openMethod!==null&&e.set(`openMethod`,null)},[t,e]),j(()=>()=>{e.state.openMethod!==null&&e.set(`openMethod`,null)},[e])}var tr=class{constructor(){this.idMap=new Map}add(e,t){this.idMap.set(e,t)}delete(e){this.idMap.delete(e)}hasElement(e){for(let t of this.idMap.values())if(t===e)return!0;return!1}hasMatchingElement(e){for(let t of this.idMap.values())if(e(t))return!0;return!1}getById(e){return this.idMap.get(e)}entries(){return this.idMap.entries()}elements(){return this.idMap.values()}get size(){return this.idMap.size}},nr=U.forwardRef(function(e,t){let{cutout:n,...r}=e,i;if(n){let e=n.getBoundingClientRect();i=`polygon(0% 0%,100% 0%,100% 100%,0% 100%,0% 0%,${e.left}px ${e.top}px,${e.left}px ${e.bottom}px,${e.right}px ${e.bottom}px,${e.right}px ${e.top}px,${e.left}px ${e.top}px)`}return(0,q.jsx)(`div`,{ref:t,role:`presentation`,"data-base-ui-inert":``,...r,style:{position:`fixed`,inset:0,userSelect:`none`,WebkitUserSelect:`none`,clipPath:i}})}),rr={},ir={},ar=``;function or(e,t){return _(e)?e:t}function sr(e,t,n){return/hidden|clip/.test(e.getComputedStyle(or(t,n)).overflowY)}function cr(e){if(typeof document>`u`)return!1;let t=R(e);return l(t).innerWidth-t.documentElement.clientWidth>0}function lr(e){if(!(typeof CSS<`u`&&CSS.supports&&CSS.supports(`scrollbar-gutter`,`stable`))||typeof document>`u`)return!1;let t=R(e),n=t.documentElement,r=t.body,i=or(n,r),a=i.style.overflowY,o=n.style.scrollbarGutter;n.style.scrollbarGutter=`stable`,i.style.overflowY=`scroll`;let s=i.offsetWidth;i.style.overflowY=`hidden`;let c=i.offsetWidth;return i.style.overflowY=a,n.style.scrollbarGutter=o,s===c}function ur(e){let t=R(e),n=t.documentElement,r=t.body,i=or(n,r),a={overflowY:i.style.overflowY,overflowX:i.style.overflowX};return Object.assign(i.style,{overflowY:`hidden`,overflowX:`hidden`}),()=>{Object.assign(i.style,a)}}function dr(e){let t=R(e),n=t.documentElement,r=t.body,i=l(n),a=0,o=0,s=!1,c=d.create();if(Ae&&(i.visualViewport?.scale??1)!==1)return()=>{};function f(){let t=i.getComputedStyle(n),c=i.getComputedStyle(r),l=(t.scrollbarGutter||``).includes(`both-edges`)?`stable both-edges`:`stable`;a=n.scrollTop,o=n.scrollLeft,rr={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},ar=n.style.scrollBehavior,ir={position:r.style.position,height:r.style.height,width:r.style.width,boxSizing:r.style.boxSizing,overflowY:r.style.overflowY,overflowX:r.style.overflowX,scrollBehavior:r.style.scrollBehavior};let u=n.scrollHeight>n.clientHeight,d=n.scrollWidth>n.clientWidth,f=t.overflowY===`scroll`||c.overflowY===`scroll`,p=t.overflowX===`scroll`||c.overflowX===`scroll`,m=Math.max(0,i.innerWidth-r.clientWidth),h=Math.max(0,i.innerHeight-r.clientHeight),g=parseFloat(c.marginTop)+parseFloat(c.marginBottom),_=parseFloat(c.marginLeft)+parseFloat(c.marginRight),v=or(n,r);if(s=lr(e),s){n.style.scrollbarGutter=l,v.style.overflowY=`hidden`,v.style.overflowX=`hidden`;return}Object.assign(n.style,{scrollbarGutter:l,overflowY:`hidden`,overflowX:`hidden`}),(u||f)&&(n.style.overflowY=`scroll`),(d||p)&&(n.style.overflowX=`scroll`),Object.assign(r.style,{position:`relative`,height:g||h?`calc(100dvh - ${g+h}px)`:`100dvh`,width:_||m?`calc(100vw - ${_+m}px)`:`100vw`,boxSizing:`border-box`,overflowY:`hidden`,overflowX:`hidden`,scrollBehavior:`unset`}),r.scrollTop=a,r.scrollLeft=o,n.setAttribute(`data-base-ui-scroll-locked`,``),n.style.scrollBehavior=`unset`}function p(){Object.assign(n.style,rr),Object.assign(r.style,ir),s||(n.scrollTop=a,n.scrollLeft=o,n.removeAttribute(`data-base-ui-scroll-locked`),n.style.scrollBehavior=ar)}function m(){p(),c.request(f)}f();let h=u(i,`resize`,m);return()=>{c.cancel(),p(),typeof i.removeEventListener==`function`&&h()}}var fr=new class{lockCount=0;restore=null;timeoutLock=_e.create();timeoutUnlock=_e.create();acquire(e){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(e)),this.release}release=()=>{--this.lockCount,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(e){if(this.lockCount===0||this.restore!==null)return;let t=R(e),n=t.documentElement,r=t.body,i=l(n);if(sr(i,n,r)){let t=new i.MutationObserver(()=>{sr(i,n,r)||(t.disconnect(),this.restore=null,this.lock(e))}),a={attributes:!0};t.observe(n,a),t.observe(r,a),this.restore=()=>t.disconnect();return}let a=Te||!cr(e);this.restore=a?ur(e):dr(e)}};function pr(e=!0,t=null){j(()=>{if(e)return fr.acquire(t)},[e,t])}export{He as $,$t as A,Ct as B,ln as C,sn as D,on as E,jt as F,Xe as G,tt as H,kt as I,Ye as J,Ke as K,Dt as L,Gt as M,qt as N,nn as O,Jt as P,Ve as Q,yt as R,vn as S,K as St,cn as T,et as U,wt as V,$e as W,Ge as X,Qe as Y,We as Z,zn as _,Y as _t,Wn as a,Me as at,kn as b,ae as bt,Hn as c,Oe as ct,Qn as d,me as dt,Ue as et,$n as f,he as ft,Bn as g,le as gt,Xn as h,ce as ht,Vn as i,Ne as it,Kt as j,en as k,qn as l,_e as lt,er as m,fe as mt,nr as n,Fe as nt,Yn as o,Ae as ot,Un as p,pe as pt,Ze as q,tr as r,Ie as rt,Jn as s,Te as st,pr as t,Le as tt,Zn as u,ve as ut,Ln as v,oe as vt,un as w,xn as x,G as xt,On as y,J as yt,St as z};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n}from"./react-vendor-C6KcUD36.js";import{sn as r,u as i}from"./DisclosureContext-DK1_iz6J.js";import{n as a,t as o}from"./toggle-group-Kl3uyHSr.js";import{n as s,t as c}from"./impact-sort-mC5ISgX8.js";var l=n();function u({mode:e,onChange:t,stageLabel:n=`Stage`}){return(0,l.jsx)(i,{children:(0,l.jsxs)(o,{"aria-label":`Sort order`,spacing:0,value:[e],onValueChange:e=>{let n=e[0];n&&t(n)},children:[(0,l.jsx)(a,{value:`impact`,variant:`outline`,size:`sm`,className:`tap-target-comfortable tap-target-comfortable--sm`,children:`Impact`}),(0,l.jsx)(a,{value:`stage`,variant:`outline`,size:`sm`,className:`tap-target-comfortable tap-target-comfortable--sm`,children:n})]})})}var d=e(t(),1);function f(e=`impact`){let[t,n]=(0,d.useState)(e),i=r()===`advanced`?t:`impact`;function a(e,t,n){return i===`impact`?[...e].sort(c(t)):[...e].sort(s(n))}return{sortMode:i,setSortMode:n,orderBy:a}}export{u as n,f as t};