@marimo-team/islands 0.24.3-dev9 → 0.25.1-dev1

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 (440) hide show
  1. package/dist/{ConnectedDataExplorerComponent-C9OF_75w.js → ConnectedDataExplorerComponent-KVhjDMSe.js} +1066 -1066
  2. package/dist/ErrorBoundary-pXXIvlr3.js +200 -0
  3. package/dist/{ImageComparisonComponent-2a9TMMm2.js → ImageComparisonComponent-Dlm5aWnH.js} +4 -4
  4. package/dist/{Plot-C-9MQeGP.js → Plot-CTyjbQDT.js} +21032 -20666
  5. package/dist/_baseMerge-BiGRwuqv.js +165 -0
  6. package/dist/{abnfDiagram-N423BO3Z-CQKwzX8t.js → abnfDiagram-VCTEODGH-CpN0FRda.js} +17 -18
  7. package/dist/{any-language-editor-DmQ7dyCx.js → any-language-editor-CycIVIeP.js} +17 -17
  8. package/dist/arc-7ra3iNdN.js +81 -0
  9. package/dist/architecture-7GRP2DOG-BWLylgiA.js +3 -0
  10. package/dist/{architectureDiagram-T3A2C74G-CncrDpfa.js → architectureDiagram-5GKGNRK7-DDyj5SRB.js} +25 -25
  11. package/dist/assets/__vite-browser-external-C9iR87Zl.js +1 -0
  12. package/dist/assets/worker-D7hWi02M.js +109 -0
  13. package/dist/blockDiagram-I7D4REHJ-BbXEXJRu.js +1922 -0
  14. package/dist/{button-CKBkqR9J.js → button-DdXAm8iz.js} +5 -5
  15. package/dist/{c4Diagram-5PPSVZJV-DarUk3Yq.js → c4Diagram-7LVT6UL2-DcLsbQmR.js} +696 -668
  16. package/dist/{capabilities-CMBBJTcc.js → capabilities-B3ce_GNu.js} +1 -1
  17. package/dist/{html-to-image-BtFMe_Nq.js → cells-DYIkSxs6.js} +6757 -10137
  18. package/dist/{channel-CyiYUzJv.js → channel-B5XnTarr.js} +1 -1
  19. package/dist/chat-ui-BXj3uYjy.js +5786 -0
  20. package/dist/{check-CHig47QV.js → check-B7cIK6gb.js} +1 -1
  21. package/dist/{chunk-2Q5K7J3B-BMuJl2jB.js → chunk-2Q5K7J3B-BMkUkeuy.js} +2 -2
  22. package/dist/chunk-4HAMMTFA-D2qv8E0X.js +4188 -0
  23. package/dist/{chunk-5VM5RSS4-Bcq0ftdy.js → chunk-5VM5RSS4-DKsmPCL6.js} +2 -2
  24. package/dist/{chunk-NSK5VX7P-CDTMcJB0.js → chunk-75Z2AOVW-5_HsvXwr.js} +23 -23
  25. package/dist/{chunk-I66GZJ75-BqyTCAPf.js → chunk-DU6HZSFF-BUgAHvnM.js} +21 -4
  26. package/dist/{chunk-2GRJ4B5K-DgO8Qudq.js → chunk-F27PBJKO-DHmYWZXr.js} +4 -4
  27. package/dist/{chunk-KEIR6QF5-C4KX3XYh.js → chunk-FOHPRMQF-BpYR8RqP.js} +4 -4
  28. package/dist/{chunk-WRU74C26-BpWsbiDK.js → chunk-GMAD6QVW-Czynz8aA.js} +486 -258
  29. package/dist/chunk-GVQU2GXP-yQEdulRS.js +37 -0
  30. package/dist/{chunk-5RXB4S5H-tLNUVDdO.js → chunk-IMKFNOWR-BfwTebD0.js} +11 -11
  31. package/dist/{chunk-JWPE2WC7-BJwjGUnF.js → chunk-JWPE2WC7-DJvv1t8U.js} +2 -2
  32. package/dist/chunk-L3NEJ4N5-DwRWnDDK.js +245 -0
  33. package/dist/{chunk-7Z6QIM7H-Dc18hFxH.js → chunk-OSK3NFVY-BBKU_Ign.js} +222 -144
  34. package/dist/{chunk-W5SLKNZC-DLnvpEtV.js → chunk-P2QGCYS3-C0iGU29N.js} +20 -20
  35. package/dist/{chunk-KBJHAD2P-BuqWqkcW.js → chunk-POPQ4Y6H-BCbS3Ozc.js} +4 -4
  36. package/dist/{chunk-4I5QYGJK-DpytHuZQ.js → chunk-PWAF6VOD-CTFCL0jI.js} +4 -4
  37. package/dist/{chunk-JQJVKLGR-CgqCwe8E.js → chunk-SHT3W25Y-BspJEJ5H.js} +109 -63
  38. package/dist/{chunk-6Q2QTUOP-DmTcEBMn.js → chunk-SVP7TREG-DX3rFNTe.js} +5 -5
  39. package/dist/{chunk-GF5L2VYU-B0wgCQgS.js → chunk-TICWLB2K-fVF7Uujg.js} +13 -13
  40. package/dist/{chunk-XXDRQBXY-D73H4IN0.js → chunk-XXDRQBXY-Dnl5VBqG.js} +3 -3
  41. package/dist/{chunk-Y2CYZVJY-DoegUj_e.js → chunk-Y2CYZVJY-DKKS1VyV.js} +1 -1
  42. package/dist/{chunk-5FQGJX7Z-B85XCPv6.js → chunk-YOKDWASO-DrWbKnxA.js} +6925 -5460
  43. package/dist/classDiagram-ZZMXUADV-Fe-V14Sc.js +30 -0
  44. package/dist/classDiagram-v2-VYDZK3BY-xTDg7lOs.js +30 -0
  45. package/dist/code-visibility-BC_yF09p.js +138 -0
  46. package/dist/{common-Cv-4hMa0.js → common-Dv227ygK.js} +8838 -12645
  47. package/dist/{compiler-runtime-CAH9RLw2.js → compiler-runtime-Cj8ZWiNS.js} +2 -2
  48. package/dist/copy-icon-CLdENY__.js +190 -0
  49. package/dist/{cose-bilkent-JH36ORCC-FUWHkXFX.js → cose-bilkent-JH36ORCC-_LyRKVqm.js} +2 -2
  50. package/dist/cubic-OaEBhQPK.js +1404 -0
  51. package/dist/cynefin-OW5HDTMX-obq-i80l.js +3 -0
  52. package/dist/{cynefinDiagram-MW4NZA55-BXSFK93J.js → cynefinDiagram-5FMLGOSQ-CFQrqzSX.js} +10 -10
  53. package/dist/{dagre-CGyalH38.js → dagre-BGSfXNEb.js} +678 -537
  54. package/dist/dagre-GXQ25YYZ-xHNAUTyG.js +425 -0
  55. package/dist/{data-grid-overlay-editor-DZM4BAaI.js → data-grid-overlay-editor-B-I2K7z3.js} +8 -9
  56. package/dist/{data-grid-types-BnZwWG8z.js → data-grid-types-BucVmDDp.js} +1 -1
  57. package/dist/{defaultLocale-DKaU_opG.js → defaultLocale-JI_lnoCe.js} +1 -1
  58. package/dist/{diagram-7IWD3JNH-BjfzDNvj.js → diagram-S7CK7UJ4-Bt1rPbAx.js} +40 -39
  59. package/dist/{diagram-UB23O5K3-DDg-7wLA.js → diagram-UQ7AKVKN-D1sq5FoZ.js} +10 -10
  60. package/dist/{diagram-B4RE2ZJO-CKccR9eE.js → diagram-VSXAHHWV-BKpmG23x.js} +10 -10
  61. package/dist/{diagram-Q27KOJAE-Zhz01ss7.js → diagram-VX7I27RA-BMwGFVD6.js} +21 -21
  62. package/dist/{diagram-LBJQPF4R-CJ-bOruh.js → diagram-Z3DM3KII--KLDR9Pl.js} +10 -10
  63. package/dist/dialog-CgNq6y9-.js +94 -0
  64. package/dist/{dist-dAqZAPcF.js → dist-1HDa70oE.js} +3 -3
  65. package/dist/{dist-Re9sOPOx.js → dist-9x1ZRe-e.js} +2 -2
  66. package/dist/{dist-DEeLqRlU.js → dist-B1vYLK28.js} +1 -1
  67. package/dist/{dist-C5Bn52W4.js → dist-B8D7McG3.js} +3 -3
  68. package/dist/{dist-_XvgytiS.js → dist-BHCHt1NI.js} +1 -1
  69. package/dist/{dist-CRjAdnqF.js → dist-BRxfaJgs.js} +3 -3
  70. package/dist/{dist-Byj2bV8o.js → dist-BVGtK7Ht.js} +1 -1
  71. package/dist/{dist-BIN5LKyE.js → dist-BaHjhkpZ.js} +2 -2
  72. package/dist/{dist-DVFbIwc5.js → dist-BtKIs9N-.js} +1 -1
  73. package/dist/{dist-BrQGcfQ9.js → dist-C2KzV-vf.js} +2 -2
  74. package/dist/{dist-DJFiGP2k.js → dist-C2wDlYdD.js} +2 -2
  75. package/dist/{dist-BVRM2y1P.js → dist-C8xMLVYi.js} +2 -2
  76. package/dist/dist-CMh_W4y4.js +538 -0
  77. package/dist/{extends-BPB6_lTK.js → dist-CO1AwwG_.js} +516 -561
  78. package/dist/{dist-BzN60Z2s.js → dist-CPGxfVGX.js} +1 -1
  79. package/dist/{dist-C7v-9nUK.js → dist-Cm3iAFMD.js} +3 -3
  80. package/dist/{dist-CGAxEiaM.js → dist-Cs2FijYk.js} +2 -2
  81. package/dist/{dist-hXd65f0_.js → dist-D1PpnuZB.js} +1 -1
  82. package/dist/{dist-VdvbxG72.js → dist-DHOTQar0.js} +1 -1
  83. package/dist/{dist-DcgzXCfy.js → dist-DPcEtqmG.js} +2 -2
  84. package/dist/{dist-D4Z_qdP4.js → dist-Df0wKI0F.js} +1 -1
  85. package/dist/{dist-qhLI-SHd.js → dist-DszxuxS1.js} +2 -2
  86. package/dist/{dist-BEmkrGoQ.js → dist-Kxgjxakw.js} +1 -1
  87. package/dist/{dist-BbSMhhD2.js → dist-KzZ7WELx.js} +2 -2
  88. package/dist/{dist-jWUab2d1.js → dist-lA1Cttkb.js} +1 -1
  89. package/dist/dropdown-menu-CZgjYSAh.js +4502 -0
  90. package/dist/{ebnfDiagram-BXEA7PRR-Dm75pCAS.js → ebnfDiagram-PWID7BFC-WnG4cvSQ.js} +17 -18
  91. package/dist/{erDiagram-JOGREHBK-rVDG3VSQ.js → erDiagram-RLTQ6QDP-DhzKiYHc.js} +1037 -798
  92. package/dist/error-banner-B94dcDmP.js +391 -0
  93. package/dist/error-entries-C0NsUqXl.js +56 -0
  94. package/dist/{esm-CR1nhb1c.js → esm-BElI3qKH.js} +22 -22
  95. package/dist/{esm-C1d0g6Bv.js → esm-G4Fhsgng.js} +51 -37
  96. package/dist/{esm-CesmlDrs.js → esm-h8f7-1CJ.js} +423 -423
  97. package/dist/eventmodeling-NTZA5JFV-D7nP7Uyu.js +3 -0
  98. package/dist/feedback-button-D2hUXe09.js +380 -0
  99. package/dist/flowDiagram-HODETNUW-6dMdB8pR.js +16 -0
  100. package/dist/{formats-CslNOKy0.js → formats-BR5iGb4s.js} +8 -8
  101. package/dist/{ganttDiagram-PKOTCBZU-9D-LXF6P.js → ganttDiagram-EL5Y4UJY-DbzEBLbl.js} +15 -15
  102. package/dist/gitGraph-4MIJSDKK-Dy9uQXGh.js +3 -0
  103. package/dist/{gitGraphDiagram-DS77QQ5N-BfpsXTLf.js → gitGraphDiagram-WWUBYQGX-BMf0iKi1.js} +10 -10
  104. package/dist/{glide-data-editor-sPZ8fUFn.js → glide-data-editor-B851uguN.js} +2143 -1910
  105. package/dist/{glide-utils-NShAPPtn.js → glide-utils-B3rUT5PI.js} +15 -15
  106. package/dist/globals-CmijFoIU.js +19 -0
  107. package/dist/highlighted-body-KPVGNVTW-Ad3MKZ18.js +38 -0
  108. package/dist/html-to-image-CeYYvQNb.js +3272 -0
  109. package/dist/info-A6RAGUB7-DKoayiHY.js +3 -0
  110. package/dist/{infoDiagram-6WML65LV-DqCTXHVy.js → infoDiagram-27XIBGKW-BagtCX_5.js} +7 -7
  111. package/dist/{ishikawaDiagram-WSZJBQD7-BCUYmZ1v.js → ishikawaDiagram-5VMMS53U-DByDehYy.js} +8 -8
  112. package/dist/{journeyDiagram-NVQOT4AX-BXB6M4zN.js → journeyDiagram-3NMN7TZE-D2LcKDUO.js} +8 -8
  113. package/dist/{jsx-runtime-CpoKNRgu.js → jsx-runtime-DgDPJV9S.js} +1 -1
  114. package/dist/{kanban-definition-27J2QSJJ-CGRhrDUX.js → kanban-definition-UXKFOSKX-BxwkbBI_.js} +29 -29
  115. package/dist/katex-DFBiSucW.js +21840 -0
  116. package/dist/{label-lwzzBHUW.js → label-BJ49YTvk.js} +6 -6
  117. package/dist/{linear-D5r_1YqD.js → linear-Cnaq3Tfb.js} +4 -4
  118. package/dist/{loader-VZ__bv4g.js → loader-D2W4oM-3.js} +15 -15
  119. package/dist/main.js +8113 -13475
  120. package/dist/mermaid-DPNuhemn.js +3084 -0
  121. package/dist/mermaid-HWGCJPDP-DYCzSILp.js +2 -0
  122. package/dist/mermaid-parser.core-DxuSfYwJ.js +638 -0
  123. package/dist/{mhchem-BjwrxcV-.js → mhchem-DWCF06w9.js} +1 -1
  124. package/dist/{micromark-factory-space-DruVGzeG.js → micromark-factory-space-DGxAzmw8.js} +2 -2
  125. package/dist/{mindmap-definition-FAOFIHXS-C9gRhzZq.js → mindmap-definition-YA3MSWOX-Cgvojw3y.js} +17 -17
  126. package/dist/{node-sql-parser-DesT1xNw.js → node-sql-parser-BiZOJ-FS.js} +0 -3
  127. package/dist/{number-overlay-editor-De2CabLL.js → number-overlay-editor-BtdoxWiD.js} +5 -5
  128. package/dist/objectWithoutPropertiesLoose-BRDcTsfB.js +23 -0
  129. package/dist/packet-AYTQ26CC-Yw7ajchJ.js +3 -0
  130. package/dist/{pegDiagram-VL7TDLO6-Df9IUjMD.js → pegDiagram-XKGWAZYB-DahHhYyN.js} +19 -20
  131. package/dist/{pick-SnHlmIBN.js → pick-CJeoxYOS.js} +1 -1
  132. package/dist/pie-WAS4IAKB-BKdKOAkL.js +3 -0
  133. package/dist/{pieDiagram-7S7Q4E2Y-BmRzQ8ZP.js → pieDiagram-E7YTZNPT-CCtX0oCK.js} +29 -31
  134. package/dist/{process-output-CPy0YKUe.js → process-output-BCTjlyuH.js} +7 -6
  135. package/dist/purify.es-DgKyQviY.js +805 -0
  136. package/dist/{quadrantDiagram-CIZ2JOQS-wFBvWcxS.js → quadrantDiagram-AXDQQJYC-DftINo6g.js} +5 -5
  137. package/dist/radar-RG4KPBEZ-ScR_D_Ts.js +3 -0
  138. package/dist/railroad-74A4TZTK-DQvPSdo5.js +3 -0
  139. package/dist/railroad-abnf-HS5TGJTU-CsJQG2O8.js +3 -0
  140. package/dist/railroad-ebnf-LZEXJU2U-BgEobkSn.js +3 -0
  141. package/dist/railroad-peg-WCYAUIDC-DjLAjofI.js +3 -0
  142. package/dist/{railroadDiagram-AXF67PYL-DxbIatiN.js → railroadDiagram-O6MQD6OU-Du5NsPUb.js} +17 -18
  143. package/dist/{react-dom-C94wmq5w.js → react-dom-BUgJ-ab_.js} +3 -3
  144. package/dist/{react-DMWcHin-.js → react-ofJbxM4x.js} +2 -2
  145. package/dist/{react-vega-DSD5aT7_.js → react-vega-5AcMW8gG.js} +10012 -9369
  146. package/dist/{requirementDiagram-LRYGKXZP-X_x-Y713.js → requirementDiagram-BXWQKSXE-0pmmxL6_.js} +20 -19
  147. package/dist/{reveal-component-CVsYlb9J.js → reveal-component-DQq7NUGJ.js} +1303 -1237
  148. package/dist/{sankeyDiagram-W5VNT64P-BYJALbbm.js → sankeyDiagram-P5KCCOFB-CDKR5TJH.js} +4 -4
  149. package/dist/{select-3qHpFKF9.js → select-C6plhmZr.js} +317 -562
  150. package/dist/{sequenceDiagram-SI44F4Z6-BiPBe3Sv.js → sequenceDiagram-WJ2MYXX4-DB-ChWwU.js} +11 -11
  151. package/dist/{sizeCapture-X5ZJPWSS-BKLDeh5H.js → sizeCapture-INFHLROL-Dx5SpkQF.js} +2 -2
  152. package/dist/{spec-CutWdqo3.js → spec-CAYwFeV6.js} +4 -4
  153. package/dist/{src-C31ngt98.js → src-CA_m4ONl.js} +298 -303
  154. package/dist/{stateDiagram-OKZ733FA-B7QyNBxH.js → stateDiagram-D77RDMKH-orN6AwMx.js} +19 -20
  155. package/dist/stateDiagram-v2-MP3YSRHH-o05_rJN8.js +30 -0
  156. package/dist/style.css +2 -2
  157. package/dist/{swimlanes-SLNWSIFB-B4f8VP3b.js → swimlanes-42K2YHIH-BkSDcqDT.js} +1501 -1591
  158. package/dist/swimlanesDiagram-VR7AAH4N-D_nFQfRc.js +30 -0
  159. package/dist/{swiper-component-C90YjhaV.js → swiper-component-IOUowglM.js} +39 -26
  160. package/dist/{time-aWGfjN8x.js → time-BieKwdYS.js} +42 -42
  161. package/dist/{timeline-definition-Z64GVDOM-Dacq_5lr.js → timeline-definition-24CTP7MA-BuqJUIRZ.js} +7 -7
  162. package/dist/{toDate-CpXBeDq0.js → toDate-WXg1yLcI.js} +7 -7
  163. package/dist/toast-DvY70eFX.js +1834 -0
  164. package/dist/tooltip-qB8NlSqV.js +1742 -0
  165. package/dist/treeView-Q6P3EWNA-DuRV97YF.js +3 -0
  166. package/dist/treemap-WGGIJYW6-AsLq-uwC.js +3 -0
  167. package/dist/use-restore-focus-D5D9xEjZ.js +5946 -0
  168. package/dist/{use-vega-container-remeasure-DUW4tRxq.js → use-vega-container-remeasure-4DwJbPWu.js} +2 -2
  169. package/dist/{useAsyncData-CH6-CgJF.js → useAsyncData-BD6AStMt.js} +3 -3
  170. package/dist/{useDateFormatter-Cp9Jdxls.js → useDateFormatter-BRTPsUK7.js} +8 -8
  171. package/dist/{useDeepCompareMemoize-JC87C_jO.js → useDeepCompareMemoize-D_HNdyvI.js} +2 -2
  172. package/dist/{useIframeCapabilities-De3C-9b4.js → useIframeCapabilities-CVtNkI3Y.js} +2 -2
  173. package/dist/{useLifecycle-B4RGlyf0.js → useLifecycle-DPgiiwwU.js} +6 -6
  174. package/dist/useNumberFormatter-BfDpa21j.js +251 -0
  175. package/dist/useTheme-DzXmYZ5V.js +904 -0
  176. package/dist/{vega-component-ovBXgp91.js → vega-component-D0QXopU8.js} +34 -34
  177. package/dist/{vega-embed-container-TJ5z5dZw.js → vega-embed-container-CbnTccZi.js} +6 -6
  178. package/dist/vega-loader.browser-D95WfUcj.js +1139 -0
  179. package/dist/{vennDiagram-T6HMQDX7-D-Rcq3Iu.js → vennDiagram-4TSXK5OY-CTUlJ2PK.js} +9 -9
  180. package/dist/wardley-WFR3VGLG-Na-tFhQJ.js +3 -0
  181. package/dist/{wardleyDiagram-T6FBY63Y-Z-Og7_Wd.js → wardleyDiagram-VM6X3IG4-3evLUb0M.js} +10 -10
  182. package/dist/{xychartDiagram-ELKLHX3M-BDJ2dITA.js → xychartDiagram-S5SC5T6Z-DL2E3K8-.js} +248 -139
  183. package/package.json +54 -57
  184. package/src/__mocks__/notebook.ts +1 -0
  185. package/src/__mocks__/requests.ts +7 -0
  186. package/src/__tests__/__snapshots__/CellStatus.test.tsx.snap +12 -12
  187. package/src/__tests__/fixtures/pair-preview.ts +19 -0
  188. package/src/__tests__/mount.test.ts +18 -0
  189. package/src/components/app-config/optional-features.tsx +6 -0
  190. package/src/components/chat/acp/__tests__/agent-panel-initialization.test.tsx +394 -0
  191. package/src/components/chat/acp/__tests__/agent-panel.test.tsx +272 -0
  192. package/src/components/chat/acp/__tests__/state.test.ts +2 -2
  193. package/src/components/chat/acp/agent-panel.tsx +115 -74
  194. package/src/components/chat/acp/state.ts +1 -1
  195. package/src/components/data-table/__tests__/filters.test.ts +21 -21
  196. package/src/components/data-table/charts/__tests__/spec.test.ts +5 -10
  197. package/src/components/data-table/column-explorer-panel/column-explorer.tsx +2 -6
  198. package/src/components/data-table/column-summary/chart-spec-model.tsx +1 -1
  199. package/src/components/data-table/columns.tsx +64 -67
  200. package/src/components/editor/RecoveryButton.tsx +1 -0
  201. package/src/components/editor/__tests__/dynamic-favicon.test.tsx +36 -2
  202. package/src/components/editor/actions/__tests__/pair-with-agent-commands.test.ts +115 -0
  203. package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +218 -0
  204. package/src/components/editor/actions/pair-with-agent-commands.ts +46 -9
  205. package/src/components/editor/actions/pair-with-agent-modal.tsx +49 -23
  206. package/src/components/editor/ai/add-cell-with-ai.tsx +1 -0
  207. package/src/components/editor/ai/ai-completion-editor.tsx +3 -1
  208. package/src/components/editor/alerts/__tests__/connection-notice.test.tsx +186 -0
  209. package/src/components/editor/alerts/__tests__/startup-progress.test.tsx +185 -0
  210. package/src/components/editor/alerts/connecting-alert.tsx +1 -66
  211. package/src/components/editor/alerts/connection-notice.tsx +186 -0
  212. package/src/components/editor/alerts/startup-output.tsx +173 -0
  213. package/src/components/editor/alerts/startup-progress.tsx +204 -0
  214. package/src/components/editor/app-container.tsx +9 -3
  215. package/src/components/editor/boundary/ErrorBoundary.tsx +38 -16
  216. package/src/components/editor/boundary/__tests__/ErrorBoundary.test.tsx +311 -0
  217. package/src/components/editor/cell/__tests__/toolbar.test.tsx +73 -0
  218. package/src/components/editor/cell/code/__tests__/rtc-editor-config.test.ts +50 -0
  219. package/src/components/editor/cell/code/cell-editor.tsx +41 -42
  220. package/src/components/editor/cell/toolbar.tsx +11 -0
  221. package/src/components/editor/chrome/components/__tests__/feedback-button.test.tsx +94 -0
  222. package/src/components/editor/chrome/components/feedback-button.tsx +63 -42
  223. package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +164 -8
  224. package/src/components/editor/chrome/panels/__tests__/sandbox-details.test.tsx +358 -0
  225. package/src/components/editor/chrome/panels/__tests__/sandbox-recovery.test.tsx +168 -0
  226. package/src/components/editor/chrome/panels/packages-panel.tsx +113 -175
  227. package/src/components/editor/chrome/panels/sandbox-controller.tsx +106 -0
  228. package/src/components/editor/chrome/panels/sandbox-details-state.ts +38 -0
  229. package/src/components/editor/chrome/panels/sandbox-panel.tsx +230 -0
  230. package/src/components/editor/chrome/panels/sandbox-toggle.tsx +52 -0
  231. package/src/components/editor/chrome/wrapper/app-chrome.tsx +7 -0
  232. package/src/components/editor/chrome/wrapper/footer-items/backend-status.tsx +3 -1
  233. package/src/components/editor/code/__tests__/readonly-diff.test.tsx +65 -0
  234. package/src/components/editor/code/readonly-diff.tsx +1 -1
  235. package/src/components/editor/connections/database/__tests__/__snapshots__/as-code.test.ts.snap +98 -98
  236. package/src/components/editor/connections/database/__tests__/as-code.test.ts +11 -5
  237. package/src/components/editor/dynamic-favicon.tsx +17 -10
  238. package/src/components/editor/file-tree/__tests__/file-explorer-navigation.test.tsx +13 -11
  239. package/src/components/editor/file-tree/__tests__/tree-actions.test.tsx +54 -0
  240. package/src/components/editor/file-tree/tree-actions.tsx +11 -14
  241. package/src/components/editor/header/__tests__/status.test.tsx +8 -20
  242. package/src/components/editor/header/filename-input.tsx +2 -0
  243. package/src/components/editor/header/status.tsx +5 -3
  244. package/src/components/editor/navigation/clipboard.ts +1 -0
  245. package/src/components/editor/notebook-cell.tsx +4 -2
  246. package/src/components/editor/output/JsonOutput.tsx +182 -632
  247. package/src/components/editor/output/Outputs.css +49 -17
  248. package/src/components/editor/output/__tests__/JsonOutput-interactions.test.tsx +254 -0
  249. package/src/components/editor/output/__tests__/JsonOutput-mimetype.test.tsx +41 -46
  250. package/src/components/editor/output/__tests__/{json-output.test.ts → json-output-formatting.test.ts} +113 -75
  251. package/src/components/editor/output/__tests__/json-output-pagination.test.ts +252 -0
  252. package/src/components/editor/output/json-output/formatting.ts +167 -0
  253. package/src/components/editor/output/json-output/pagination.ts +155 -0
  254. package/src/components/editor/output/json-output/renderers.tsx +196 -0
  255. package/src/components/editor/output/json-output/themes.ts +52 -0
  256. package/src/components/editor/package-alert.tsx +112 -66
  257. package/src/components/editor/renderers/cell-array.tsx +1 -5
  258. package/src/components/editor/renderers/slides-layout/__tests__/plugin.test.ts +3 -7
  259. package/src/components/slides/slide-form.tsx +1 -0
  260. package/src/components/slides/slide-notes-editor.tsx +1 -0
  261. package/src/components/tracing/tracing-spec.ts +1 -1
  262. package/src/components/ui/__tests__/badge.test.ts +6 -4
  263. package/src/components/ui/use-toast.ts +8 -0
  264. package/src/core/MarimoApp.tsx +0 -2
  265. package/src/core/ai/context/providers/__tests__/error.test.ts +16 -22
  266. package/src/core/alerts/__tests__/environment.test.ts +183 -0
  267. package/src/core/alerts/__tests__/state.test.tsx +240 -0
  268. package/src/core/alerts/environment.ts +57 -0
  269. package/src/core/alerts/state.ts +155 -99
  270. package/src/core/cells/__tests__/__snapshots__/cells.test.ts.snap +296 -259
  271. package/src/core/cells/__tests__/apply-transaction.test.ts +34 -0
  272. package/src/core/cells/__tests__/cell.test.ts +61 -0
  273. package/src/core/cells/__tests__/cells.test.ts +182 -37
  274. package/src/core/cells/__tests__/document-changes.test.ts +39 -1
  275. package/src/core/cells/__tests__/outputs.test.tsx +117 -0
  276. package/src/core/cells/__tests__/pending-delete-service.test.tsx +4 -3
  277. package/src/core/cells/__tests__/session.test.ts +7 -0
  278. package/src/core/cells/cell.ts +9 -1
  279. package/src/core/cells/cells.ts +13 -18
  280. package/src/core/cells/document-changes.ts +11 -1
  281. package/src/core/cells/outputs.ts +66 -9
  282. package/src/core/cells/pending-delete-service.ts +12 -16
  283. package/src/core/cells/session.ts +2 -0
  284. package/src/core/cells/types.ts +2 -0
  285. package/src/core/codemirror/find-replace/__tests__/navigate.test.ts +8 -16
  286. package/src/core/codemirror/language/__tests__/sql.test.ts +70 -2
  287. package/src/core/codemirror/language/embedded/__tests__/embedded-python.test.ts +4 -8
  288. package/src/core/codemirror/language/languages/sql/sql.ts +16 -1
  289. package/src/core/codemirror/rtc/extension.ts +5 -2
  290. package/src/core/config/pair.ts +19 -0
  291. package/src/core/datasets/__tests__/data-source.test.ts +2 -0
  292. package/src/core/datasets/data-source-connections.ts +15 -10
  293. package/src/core/edit-app.tsx +8 -5
  294. package/src/core/errors/state.ts +1 -2
  295. package/src/core/export/__tests__/hooks.test.ts +1 -6
  296. package/src/core/islands/bootstrap.ts +3 -1
  297. package/src/core/islands/bridge.ts +3 -0
  298. package/src/core/islands/worker-factory.ts +2 -12
  299. package/src/core/kernel/messages.ts +2 -2
  300. package/src/core/network/__tests__/requests-network.test.ts +4 -3
  301. package/src/core/network/connection-notice.ts +117 -0
  302. package/src/core/network/connection.ts +19 -0
  303. package/src/core/network/requests-lazy.ts +3 -0
  304. package/src/core/network/requests-network.ts +12 -0
  305. package/src/core/network/requests-static.ts +3 -0
  306. package/src/core/network/requests-toasting.tsx +3 -0
  307. package/src/core/network/resolve.ts +2 -1
  308. package/src/core/network/types.ts +7 -0
  309. package/src/core/network/useConnectionNotice.ts +53 -0
  310. package/src/core/packages/__tests__/usePackageAction.test.tsx +129 -0
  311. package/src/core/packages/__tests__/useSandboxController.test.tsx +246 -0
  312. package/src/core/packages/package-data.ts +35 -0
  313. package/src/core/packages/sandbox-state.ts +67 -0
  314. package/src/core/packages/toast-components.tsx +11 -0
  315. package/src/core/packages/useInstallPackage.ts +1 -1
  316. package/src/core/packages/usePackageAction.ts +51 -0
  317. package/src/core/packages/usePackageDependencies.ts +22 -0
  318. package/src/core/packages/useSandboxController.ts +208 -0
  319. package/src/core/run-app.tsx +2 -0
  320. package/src/core/static/__tests__/files.test.ts +12 -30
  321. package/src/core/wasm/__tests__/bootstrap.test.ts +63 -0
  322. package/src/core/wasm/__tests__/bridge.test.ts +13 -4
  323. package/src/core/wasm/__tests__/fs.test.ts +22 -0
  324. package/src/core/wasm/__tests__/runtime-config.test.ts +65 -0
  325. package/src/core/wasm/bridge.ts +35 -23
  326. package/src/core/wasm/rpc.ts +2 -0
  327. package/src/core/wasm/runtime-config.ts +31 -0
  328. package/src/core/wasm/worker/bootstrap.ts +21 -11
  329. package/src/core/wasm/worker/constants.ts +1 -0
  330. package/src/core/wasm/worker/fs.ts +4 -0
  331. package/src/core/wasm/worker/getController.ts +3 -1
  332. package/src/core/wasm/worker/save-worker.ts +10 -9
  333. package/src/core/wasm/worker/types.ts +6 -4
  334. package/src/core/wasm/worker/worker.ts +9 -9
  335. package/src/core/websocket/__tests__/useMarimoKernelConnection.hook.test.tsx +404 -3
  336. package/src/core/websocket/__tests__/useMarimoKernelConnection.test.ts +8 -6
  337. package/src/core/websocket/transports/transport.ts +1 -1
  338. package/src/core/websocket/transports/ws.ts +1 -1
  339. package/src/core/websocket/types.ts +11 -1
  340. package/src/core/websocket/useMarimoKernelConnection.tsx +63 -16
  341. package/src/hooks/useDebounce.ts +2 -0
  342. package/src/mount.tsx +3 -0
  343. package/src/plugins/core/BadPlugin.tsx +3 -14
  344. package/src/plugins/core/RenderHTML.tsx +22 -2
  345. package/src/plugins/core/__test__/RenderHTML.test.ts +187 -0
  346. package/src/plugins/core/registerReactComponent.tsx +0 -1
  347. package/src/plugins/impl/FileBrowserPlugin.tsx +10 -4
  348. package/src/plugins/impl/FormPlugin.tsx +2 -0
  349. package/src/plugins/impl/MatrixPlugin.tsx +2 -0
  350. package/src/plugins/impl/RangeSliderPlugin.tsx +2 -0
  351. package/src/plugins/impl/SliderPlugin.tsx +2 -0
  352. package/src/plugins/impl/__tests__/FileBrowserPlugin.test.tsx +50 -1
  353. package/src/plugins/impl/data-editor/__tests__/glide-data-editor.test.tsx +23 -18
  354. package/src/plugins/impl/data-frames/panel.tsx +1 -0
  355. package/src/plugins/impl/image-comparison/ImageComparisonComponent.tsx +1 -1
  356. package/src/plugins/impl/image-comparison/__tests__/ImageComparisonComponent.test.tsx +15 -0
  357. package/src/plugins/impl/vega/__tests__/make-selectable.test.ts +42 -48
  358. package/src/plugins/layout/AccordionPlugin.tsx +7 -2
  359. package/src/plugins/layout/JsonOutputPlugin.tsx +7 -10
  360. package/src/plugins/layout/__test__/AccordionPlugin.test.tsx +66 -0
  361. package/src/stories/sandbox.stories.tsx +488 -0
  362. package/src/utils/__tests__/path.test.ts +6 -5
  363. package/src/utils/__tests__/worker.test.ts +81 -0
  364. package/src/utils/worker.ts +22 -0
  365. package/dist/ErrorBoundary-CR-ZQN_c.js +0 -125
  366. package/dist/_baseMerge-Dv8bBloN.js +0 -73
  367. package/dist/_initCloneObject---vediN2.js +0 -95
  368. package/dist/arc-DOVLrCPd.js +0 -82
  369. package/dist/architecture-TIHT7OUA-MiJpPpQW.js +0 -3
  370. package/dist/array-CApNbSU9.js +0 -6
  371. package/dist/assets/__vite-browser-external-BdKGjRZ4.js +0 -1
  372. package/dist/assets/worker-DlIBfp9S.js +0 -98
  373. package/dist/blockDiagram-VBNYF7ZC-Bc--I65C.js +0 -3158
  374. package/dist/chat-ui-BSwr409J.js +0 -8455
  375. package/dist/chunk-3NCLNEKW-BIp_lB_4.js +0 -14
  376. package/dist/chunk-5FCAYU7R-C_HO9A1J.js +0 -23
  377. package/dist/chunk-5HE753X5-Bixm_MV-.js +0 -38
  378. package/dist/chunk-5JV3BV7I-CH5J3iZY.js +0 -54
  379. package/dist/chunk-5TONJI2A-DG6gDiSS.js +0 -62
  380. package/dist/chunk-7BUUIJ7U-5afmIPeo.js +0 -82
  381. package/dist/chunk-BIQX33UG-7TMBUf89.js +0 -23
  382. package/dist/chunk-CQNSW5MT-Cnqqsxt-.js +0 -38
  383. package/dist/chunk-CYSBUYHQ-BAbymFHR.js +0 -23
  384. package/dist/chunk-EMLP6XTP-Bsz-QL77.js +0 -23
  385. package/dist/chunk-J7OUQ5F2-CM_meqZH.js +0 -57
  386. package/dist/chunk-JG7HCLWE-DUnCDgPk.js +0 -62
  387. package/dist/chunk-MOZMSUNE-BG6IHvzT.js +0 -35
  388. package/dist/chunk-OSBZ3O6U-CYwj_bvR.js +0 -23
  389. package/dist/chunk-QBLGF6JB-B4vJ4j8J.js +0 -23
  390. package/dist/chunk-QR6OTTB3-D4wH2ldi.js +0 -3738
  391. package/dist/chunk-R7FJI6CG-Blf8FcmZ.js +0 -64
  392. package/dist/chunk-RYQCIY6F-BWbIlBIH.js +0 -241
  393. package/dist/chunk-U6XO7XAA-COw445DS.js +0 -63
  394. package/dist/chunk-UBXNYLIW-BHigVU4H.js +0 -32
  395. package/dist/chunk-YOTPTUD7-Dn044Q_d.js +0 -30
  396. package/dist/chunk-ZIRB5QZD-BR4TMfOa.js +0 -1153
  397. package/dist/classDiagram-JCYQIIEL-DmXSLxe_.js +0 -30
  398. package/dist/classDiagram-v2-OCEON4UE-CooqVexA.js +0 -30
  399. package/dist/click-outside-container-D_URcm3D.js +0 -167
  400. package/dist/code-block-37QAKDTI-CQrzBOr-.js +0 -107
  401. package/dist/copy-CD7S58CY.js +0 -141
  402. package/dist/cynefin-VYW2F7L2-CeHAxOEX.js +0 -3
  403. package/dist/dagre-VZM6K2ZE-CJggWPTJ.js +0 -328
  404. package/dist/dist-3_o3T78I.js +0 -1360
  405. package/dist/dist-ABQjhuek.js +0 -64
  406. package/dist/dist-CO5R6VMi.js +0 -538
  407. package/dist/dropdown-menu-DhCfcscX.js +0 -5858
  408. package/dist/emotion-is-prop-valid.esm-M57VsT8j.js +0 -14
  409. package/dist/error-banner-CsXbEEjo.js +0 -611
  410. package/dist/eventmodeling-45OFAUF4-B_lWZ-Pd.js +0 -3
  411. package/dist/flowDiagram-UKHOOZJN-g1AmrZzM.js +0 -17
  412. package/dist/gitGraph-TEB2WS4Q-Dj-eXUph.js +0 -3
  413. package/dist/info-DKCQHKI2-Bhb-pe2e.js +0 -3
  414. package/dist/line-CuKjIQa1.js +0 -34
  415. package/dist/map-BJpOfPlL.js +0 -149
  416. package/dist/math-BXtKgYah.js +0 -10
  417. package/dist/mermaid-4DMBBIKO-Ddp9TgNp.js +0 -2
  418. package/dist/mermaid-Bi23Ibnw.js +0 -1173
  419. package/dist/mermaid-parser.core-Din9FvSi.js +0 -99
  420. package/dist/packet-7NZHBO7P-fbkIIyKE.js +0 -3
  421. package/dist/path-BNHuHZP8.js +0 -87
  422. package/dist/pie-RZYD4A2V-CLRIsxY1.js +0 -3
  423. package/dist/purify.es-CB-YO1Hn.js +0 -774
  424. package/dist/radar-I7S5WNFK-BGzCbgXu.js +0 -3
  425. package/dist/railroad-3IZDKUUU-CvQIIcuU.js +0 -3
  426. package/dist/railroad-abnf-AHOZXSZD-CMwtlNtu.js +0 -3
  427. package/dist/railroad-ebnf-EBAXGLYW-n1QUOAsh.js +0 -3
  428. package/dist/railroad-peg-LSFZ7HO6-PjnrpmCs.js +0 -3
  429. package/dist/schemas-DzK6U94N.js +0 -6057
  430. package/dist/stateDiagram-v2-UEYNNEHI-BTRUs8Il.js +0 -30
  431. package/dist/step-CKczO72Q.js +0 -670
  432. package/dist/swimlanesDiagram-ULZ7WXOC-NBmgBl9G.js +0 -31
  433. package/dist/timer-DpDyj9G0.js +0 -596
  434. package/dist/tooltip-Dt77sBeT.js +0 -390
  435. package/dist/treeView-QDETBFTQ-DU8LwHuf.js +0 -3
  436. package/dist/treemap-6X3UGDF4-DUk4-k_O.js +0 -3
  437. package/dist/useTheme-CVJ0UOf2.js +0 -841
  438. package/dist/vega-loader.browser-DEggZzni.js +0 -1083
  439. package/dist/wardley-OPB4EBWU-Db-AaGas.js +0 -3
  440. package/src/components/editor/output/EmotionCacheProvider.tsx +0 -32
@@ -0,0 +1,1742 @@
1
+ import { a as e } from "./rolldown-runtime-Cb76FRpK.js";
2
+ import { d as t, h as n, p as r } from "./button-DdXAm8iz.js";
3
+ import { t as i } from "./react-ofJbxM4x.js";
4
+ import { t as a } from "./compiler-runtime-Cj8ZWiNS.js";
5
+ import { t as o } from "./react-dom-BUgJ-ab_.js";
6
+ import { t as s } from "./jsx-runtime-DgDPJV9S.js";
7
+ import { Ct as c, Q as l, St as u, Tt as d, X as f, Y as p, bt as m, gt as h, pt as g, vt as _, wt as v, xt as y, yt as b } from "./use-restore-focus-D5D9xEjZ.js";
8
+ //#region ../node_modules/.pnpm/lucide-react@0.577.0_react@19.2.8/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
9
+ var x = /* @__PURE__ */ e(i()), S = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), C = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), w = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), T = (e) => {
10
+ let t = w(e);
11
+ return t.charAt(0).toUpperCase() + t.slice(1);
12
+ }, ee = {
13
+ xmlns: "http://www.w3.org/2000/svg",
14
+ width: 24,
15
+ height: 24,
16
+ viewBox: "0 0 24 24",
17
+ fill: "none",
18
+ stroke: "currentColor",
19
+ strokeWidth: 2,
20
+ strokeLinecap: "round",
21
+ strokeLinejoin: "round"
22
+ }, E = (e) => {
23
+ for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
24
+ return !1;
25
+ }, D = (0, x.forwardRef)(({ color: e = "currentColor", size: t = 24, strokeWidth: n = 2, absoluteStrokeWidth: r, className: i = "", children: a, iconNode: o, ...s }, c) => (0, x.createElement)("svg", {
26
+ ref: c,
27
+ ...ee,
28
+ width: t,
29
+ height: t,
30
+ stroke: e,
31
+ strokeWidth: r ? Number(n) * 24 / Number(t) : n,
32
+ className: S("lucide", i),
33
+ ...!a && !E(s) && { "aria-hidden": "true" },
34
+ ...s
35
+ }, [...o.map(([e, t]) => (0, x.createElement)(e, t)), ...Array.isArray(a) ? a : [a]])), O = (e, t) => {
36
+ let n = (0, x.forwardRef)(({ className: n, ...r }, i) => (0, x.createElement)(D, {
37
+ ref: i,
38
+ iconNode: t,
39
+ className: S(`lucide-${C(T(e))}`, `lucide-${e}`, n),
40
+ ...r
41
+ }));
42
+ return n.displayName = T(e), n;
43
+ }, k = /* @__PURE__ */ e(o(), 1), A = s(), j = Object.freeze({
44
+ position: "absolute",
45
+ border: 0,
46
+ width: 1,
47
+ height: 1,
48
+ padding: 0,
49
+ margin: -1,
50
+ overflow: "hidden",
51
+ clip: "rect(0, 0, 0, 0)",
52
+ whiteSpace: "nowrap",
53
+ wordWrap: "normal"
54
+ }), M = "VisuallyHidden", N = x.forwardRef((e, t) => /* @__PURE__ */ (0, A.jsx)(d.span, {
55
+ ...e,
56
+ ref: t,
57
+ style: {
58
+ ...j,
59
+ ...e.style
60
+ }
61
+ }));
62
+ N.displayName = M;
63
+ var P = N;
64
+ //#endregion
65
+ //#region ../node_modules/.pnpm/@radix-ui+react-use-size@1.1.1_@types+react@19.2.18_react@19.2.8/node_modules/@radix-ui/react-use-size/dist/index.mjs
66
+ function te(e) {
67
+ let [t, n] = x.useState(void 0);
68
+ return u(() => {
69
+ if (e) {
70
+ n({
71
+ width: e.offsetWidth,
72
+ height: e.offsetHeight
73
+ });
74
+ let t = new ResizeObserver((t) => {
75
+ if (!Array.isArray(t) || !t.length) return;
76
+ let r = t[0], i, a;
77
+ if ("borderBoxSize" in r) {
78
+ let e = r.borderBoxSize, t = Array.isArray(e) ? e[0] : e;
79
+ i = t.inlineSize, a = t.blockSize;
80
+ } else i = e.offsetWidth, a = e.offsetHeight;
81
+ n({
82
+ width: i,
83
+ height: a
84
+ });
85
+ });
86
+ return t.observe(e, { box: "border-box" }), () => t.unobserve(e);
87
+ }
88
+ n(void 0);
89
+ }, [e]), t;
90
+ }
91
+ //#endregion
92
+ //#region ../node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
93
+ var ne = [
94
+ "top",
95
+ "right",
96
+ "bottom",
97
+ "left"
98
+ ], F = Math.min, I = Math.max, L = Math.round, R = Math.floor, z = (e) => ({
99
+ x: e,
100
+ y: e
101
+ }), re = {
102
+ left: "right",
103
+ right: "left",
104
+ bottom: "top",
105
+ top: "bottom"
106
+ }, ie = {
107
+ start: "end",
108
+ end: "start"
109
+ };
110
+ function ae(e, t, n) {
111
+ return I(e, F(t, n));
112
+ }
113
+ function B(e, t) {
114
+ return typeof e == "function" ? e(t) : e;
115
+ }
116
+ function V(e) {
117
+ return e.split("-")[0];
118
+ }
119
+ function H(e) {
120
+ return e.split("-")[1];
121
+ }
122
+ function oe(e) {
123
+ return e === "x" ? "y" : "x";
124
+ }
125
+ function se(e) {
126
+ return e === "y" ? "height" : "width";
127
+ }
128
+ var ce = /*#__PURE__*/ new Set(["top", "bottom"]);
129
+ function U(e) {
130
+ return ce.has(V(e)) ? "y" : "x";
131
+ }
132
+ function le(e) {
133
+ return oe(U(e));
134
+ }
135
+ function ue(e, t, n) {
136
+ n === void 0 && (n = !1);
137
+ let r = H(e), i = le(e), a = se(i), o = i === "x" ? r === (n ? "end" : "start") ? "right" : "left" : r === "start" ? "bottom" : "top";
138
+ return t.reference[a] > t.floating[a] && (o = ye(o)), [o, ye(o)];
139
+ }
140
+ function de(e) {
141
+ let t = ye(e);
142
+ return [
143
+ fe(e),
144
+ t,
145
+ fe(t)
146
+ ];
147
+ }
148
+ function fe(e) {
149
+ return e.replace(/start|end/g, (e) => ie[e]);
150
+ }
151
+ var pe = ["left", "right"], me = ["right", "left"], he = ["top", "bottom"], ge = ["bottom", "top"];
152
+ function _e(e, t, n) {
153
+ switch (e) {
154
+ case "top":
155
+ case "bottom": return n ? t ? me : pe : t ? pe : me;
156
+ case "left":
157
+ case "right": return t ? he : ge;
158
+ default: return [];
159
+ }
160
+ }
161
+ function ve(e, t, n, r) {
162
+ let i = H(e), a = _e(V(e), n === "start", r);
163
+ return i && (a = a.map((e) => e + "-" + i), t && (a = a.concat(a.map(fe)))), a;
164
+ }
165
+ function ye(e) {
166
+ return e.replace(/left|right|bottom|top/g, (e) => re[e]);
167
+ }
168
+ function be(e) {
169
+ return {
170
+ top: 0,
171
+ right: 0,
172
+ bottom: 0,
173
+ left: 0,
174
+ ...e
175
+ };
176
+ }
177
+ function xe(e) {
178
+ return typeof e == "number" ? {
179
+ top: e,
180
+ right: e,
181
+ bottom: e,
182
+ left: e
183
+ } : be(e);
184
+ }
185
+ function Se(e) {
186
+ let { x: t, y: n, width: r, height: i } = e;
187
+ return {
188
+ width: r,
189
+ height: i,
190
+ top: n,
191
+ left: t,
192
+ right: t + r,
193
+ bottom: n + i,
194
+ x: t,
195
+ y: n
196
+ };
197
+ }
198
+ //#endregion
199
+ //#region ../node_modules/.pnpm/@floating-ui+core@1.7.2/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
200
+ function Ce(e, t, n) {
201
+ let { reference: r, floating: i } = e, a = U(t), o = le(t), s = se(o), c = V(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;
202
+ switch (c) {
203
+ case "top":
204
+ p = {
205
+ x: u,
206
+ y: r.y - i.height
207
+ };
208
+ break;
209
+ case "bottom":
210
+ p = {
211
+ x: u,
212
+ y: r.y + r.height
213
+ };
214
+ break;
215
+ case "right":
216
+ p = {
217
+ x: r.x + r.width,
218
+ y: d
219
+ };
220
+ break;
221
+ case "left":
222
+ p = {
223
+ x: r.x - i.width,
224
+ y: d
225
+ };
226
+ break;
227
+ default: p = {
228
+ x: r.x,
229
+ y: r.y
230
+ };
231
+ }
232
+ switch (H(t)) {
233
+ case "start":
234
+ p[o] -= f * (n && l ? -1 : 1);
235
+ break;
236
+ case "end": p[o] += f * (n && l ? -1 : 1);
237
+ }
238
+ return p;
239
+ }
240
+ var we = async (e, t, n) => {
241
+ let { placement: r = "bottom", strategy: i = "absolute", middleware: a = [], platform: o } = n, s = a.filter(Boolean), c = await (o.isRTL == null ? void 0 : o.isRTL(t)), l = await o.getElementRects({
242
+ reference: e,
243
+ floating: t,
244
+ strategy: i
245
+ }), { x: u, y: d } = Ce(l, r, c), f = r, p = {}, m = 0;
246
+ for (let n = 0; n < s.length; n++) {
247
+ let { name: a, fn: h } = s[n], { x: g, y: _, data: v, reset: y } = await h({
248
+ x: u,
249
+ y: d,
250
+ initialPlacement: r,
251
+ placement: f,
252
+ strategy: i,
253
+ middlewareData: p,
254
+ rects: l,
255
+ platform: o,
256
+ elements: {
257
+ reference: e,
258
+ floating: t
259
+ }
260
+ });
261
+ u = g ?? u, d = _ ?? d, p = {
262
+ ...p,
263
+ [a]: {
264
+ ...p[a],
265
+ ...v
266
+ }
267
+ }, y && m <= 50 && (m++, typeof y == "object" && (y.placement && (f = y.placement), y.rects && (l = y.rects === !0 ? await o.getElementRects({
268
+ reference: e,
269
+ floating: t,
270
+ strategy: i
271
+ }) : y.rects), {x: u, y: d} = Ce(l, f, c)), n = -1);
272
+ }
273
+ return {
274
+ x: u,
275
+ y: d,
276
+ placement: f,
277
+ strategy: i,
278
+ middlewareData: p
279
+ };
280
+ };
281
+ async function Te(e, t) {
282
+ t === void 0 && (t = {});
283
+ 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 } = B(t, e), p = xe(f), m = o[d ? u === "floating" ? "reference" : "floating" : u], h = Se(await i.getClippingRect({
284
+ element: await (i.isElement == null ? void 0 : i.isElement(m)) ?? !0 ? m : m.contextElement || await (i.getDocumentElement == null ? void 0 : i.getDocumentElement(o.floating)),
285
+ boundary: c,
286
+ rootBoundary: l,
287
+ strategy: s
288
+ })), g = u === "floating" ? {
289
+ x: n,
290
+ y: r,
291
+ width: a.floating.width,
292
+ height: a.floating.height
293
+ } : 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(_)) || {
294
+ x: 1,
295
+ y: 1
296
+ }, y = Se(i.convertOffsetParentRelativeRectToViewportRelativeRect ? await i.convertOffsetParentRelativeRectToViewportRelativeRect({
297
+ elements: o,
298
+ rect: g,
299
+ offsetParent: _,
300
+ strategy: s
301
+ }) : g);
302
+ return {
303
+ top: (h.top - y.top + p.top) / v.y,
304
+ bottom: (y.bottom - h.bottom + p.bottom) / v.y,
305
+ left: (h.left - y.left + p.left) / v.x,
306
+ right: (y.right - h.right + p.right) / v.x
307
+ };
308
+ }
309
+ var Ee = (e) => ({
310
+ name: "arrow",
311
+ options: e,
312
+ async fn(t) {
313
+ let { x: n, y: r, placement: i, rects: a, platform: o, elements: s, middlewareData: c } = t, { element: l, padding: u = 0 } = B(e, t) || {};
314
+ if (l == null) return {};
315
+ let d = xe(u), f = {
316
+ x: n,
317
+ y: r
318
+ }, p = le(i), m = se(p), h = await o.getDimensions(l), g = p === "y", _ = g ? "top" : "left", v = g ? "bottom" : "right", y = g ? "clientHeight" : "clientWidth", b = a.reference[m] + a.reference[p] - f[p] - a.floating[m], x = f[p] - a.reference[p], S = await (o.getOffsetParent == null ? void 0 : o.getOffsetParent(l)), C = S ? S[y] : 0;
319
+ (!C || !await (o.isElement == null ? void 0 : o.isElement(S))) && (C = s.floating[y] || a.floating[m]);
320
+ let w = b / 2 - x / 2, T = C / 2 - h[m] / 2 - 1, ee = F(d[_], T), E = F(d[v], T), D = ee, O = C - h[m] - E, k = C / 2 - h[m] / 2 + w, A = ae(D, k, O), j = !c.arrow && H(i) != null && k !== A && a.reference[m] / 2 - (k < D ? ee : E) - h[m] / 2 < 0, M = j ? k < D ? k - D : k - O : 0;
321
+ return {
322
+ [p]: f[p] + M,
323
+ data: {
324
+ [p]: A,
325
+ centerOffset: k - A - M,
326
+ ...j && { alignmentOffset: M }
327
+ },
328
+ reset: j
329
+ };
330
+ }
331
+ }), De = function(e) {
332
+ return e === void 0 && (e = {}), {
333
+ name: "flip",
334
+ options: e,
335
+ async fn(t) {
336
+ var n;
337
+ 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 } = B(e, t);
338
+ if ((n = i.arrow) != null && n.alignmentOffset) return {};
339
+ let g = V(r), _ = U(o), v = V(o) === o, y = await (s.isRTL == null ? void 0 : s.isRTL(c.floating)), b = d || (v || !m ? [ye(o)] : de(o)), x = p !== "none";
340
+ !d && x && b.push(...ve(o, m, p, y));
341
+ let S = [o, ...b], C = await Te(t, h), w = [], T = i.flip?.overflows || [];
342
+ if (l && w.push(C[g]), u) {
343
+ let e = ue(r, a, y);
344
+ w.push(C[e[0]], C[e[1]]);
345
+ }
346
+ if (T = [...T, {
347
+ placement: r,
348
+ overflows: w
349
+ }], !w.every((e) => e <= 0)) {
350
+ let e = (i.flip?.index || 0) + 1, t = S[e];
351
+ if (t && (u !== "alignment" || _ === U(t) || T.every((e) => e.overflows[0] > 0 && U(e.placement) === _))) return {
352
+ data: {
353
+ index: e,
354
+ overflows: T
355
+ },
356
+ reset: { placement: t }
357
+ };
358
+ let n = T.filter((e) => e.overflows[0] <= 0).sort((e, t) => e.overflows[1] - t.overflows[1])[0]?.placement;
359
+ if (!n) switch (f) {
360
+ case "bestFit": {
361
+ let e = T.filter((e) => {
362
+ if (x) {
363
+ let t = U(e.placement);
364
+ return t === _ || t === "y";
365
+ }
366
+ return !0;
367
+ }).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];
368
+ e && (n = e);
369
+ break;
370
+ }
371
+ case "initialPlacement": n = o;
372
+ }
373
+ if (r !== n) return { reset: { placement: n } };
374
+ }
375
+ return {};
376
+ }
377
+ };
378
+ };
379
+ function Oe(e, t) {
380
+ return {
381
+ top: e.top - t.height,
382
+ right: e.right - t.width,
383
+ bottom: e.bottom - t.height,
384
+ left: e.left - t.width
385
+ };
386
+ }
387
+ function ke(e) {
388
+ return ne.some((t) => e[t] >= 0);
389
+ }
390
+ var Ae = function(e) {
391
+ return e === void 0 && (e = {}), {
392
+ name: "hide",
393
+ options: e,
394
+ async fn(t) {
395
+ let { rects: n } = t, { strategy: r = "referenceHidden", ...i } = B(e, t);
396
+ switch (r) {
397
+ case "referenceHidden": {
398
+ let e = Oe(await Te(t, {
399
+ ...i,
400
+ elementContext: "reference"
401
+ }), n.reference);
402
+ return { data: {
403
+ referenceHiddenOffsets: e,
404
+ referenceHidden: ke(e)
405
+ } };
406
+ }
407
+ case "escaped": {
408
+ let e = Oe(await Te(t, {
409
+ ...i,
410
+ altBoundary: !0
411
+ }), n.floating);
412
+ return { data: {
413
+ escapedOffsets: e,
414
+ escaped: ke(e)
415
+ } };
416
+ }
417
+ default: return {};
418
+ }
419
+ }
420
+ };
421
+ }, je = /*#__PURE__*/ new Set(["left", "top"]);
422
+ async function Me(e, t) {
423
+ let { placement: n, platform: r, elements: i } = e, a = await (r.isRTL == null ? void 0 : r.isRTL(i.floating)), o = V(n), s = H(n), c = U(n) === "y", l = je.has(o) ? -1 : 1, u = a && c ? -1 : 1, d = B(t, e), { mainAxis: f, crossAxis: p, alignmentAxis: m } = typeof d == "number" ? {
424
+ mainAxis: d,
425
+ crossAxis: 0,
426
+ alignmentAxis: null
427
+ } : {
428
+ mainAxis: d.mainAxis || 0,
429
+ crossAxis: d.crossAxis || 0,
430
+ alignmentAxis: d.alignmentAxis
431
+ };
432
+ return s && typeof m == "number" && (p = s === "end" ? m * -1 : m), c ? {
433
+ x: p * u,
434
+ y: f * l
435
+ } : {
436
+ x: f * l,
437
+ y: p * u
438
+ };
439
+ }
440
+ var Ne = function(e) {
441
+ return e === void 0 && (e = 0), {
442
+ name: "offset",
443
+ options: e,
444
+ async fn(t) {
445
+ var n;
446
+ let { x: r, y: i, placement: a, middlewareData: o } = t, s = await Me(t, e);
447
+ return a === o.offset?.placement && (n = o.arrow) != null && n.alignmentOffset ? {} : {
448
+ x: r + s.x,
449
+ y: i + s.y,
450
+ data: {
451
+ ...s,
452
+ placement: a
453
+ }
454
+ };
455
+ }
456
+ };
457
+ }, Pe = function(e) {
458
+ return e === void 0 && (e = {}), {
459
+ name: "shift",
460
+ options: e,
461
+ async fn(t) {
462
+ let { x: n, y: r, placement: i } = t, { mainAxis: a = !0, crossAxis: o = !1, limiter: s = { fn: (e) => {
463
+ let { x: t, y: n } = e;
464
+ return {
465
+ x: t,
466
+ y: n
467
+ };
468
+ } }, ...c } = B(e, t), l = {
469
+ x: n,
470
+ y: r
471
+ }, u = await Te(t, c), d = U(V(i)), f = oe(d), p = l[f], m = l[d];
472
+ if (a) {
473
+ let e = f === "y" ? "top" : "left", t = f === "y" ? "bottom" : "right", n = p + u[e], r = p - u[t];
474
+ p = ae(n, p, r);
475
+ }
476
+ if (o) {
477
+ let e = d === "y" ? "top" : "left", t = d === "y" ? "bottom" : "right", n = m + u[e], r = m - u[t];
478
+ m = ae(n, m, r);
479
+ }
480
+ let h = s.fn({
481
+ ...t,
482
+ [f]: p,
483
+ [d]: m
484
+ });
485
+ return {
486
+ ...h,
487
+ data: {
488
+ x: h.x - n,
489
+ y: h.y - r,
490
+ enabled: {
491
+ [f]: a,
492
+ [d]: o
493
+ }
494
+ }
495
+ };
496
+ }
497
+ };
498
+ }, Fe = function(e) {
499
+ return e === void 0 && (e = {}), {
500
+ options: e,
501
+ fn(t) {
502
+ let { x: n, y: r, placement: i, rects: a, middlewareData: o } = t, { offset: s = 0, mainAxis: c = !0, crossAxis: l = !0 } = B(e, t), u = {
503
+ x: n,
504
+ y: r
505
+ }, d = U(i), f = oe(d), p = u[f], m = u[d], h = B(s, t), g = typeof h == "number" ? {
506
+ mainAxis: h,
507
+ crossAxis: 0
508
+ } : {
509
+ mainAxis: 0,
510
+ crossAxis: 0,
511
+ ...h
512
+ };
513
+ if (c) {
514
+ let e = f === "y" ? "height" : "width", t = a.reference[f] - a.floating[e] + g.mainAxis, n = a.reference[f] + a.reference[e] - g.mainAxis;
515
+ p < t ? p = t : p > n && (p = n);
516
+ }
517
+ if (l) {
518
+ let e = f === "y" ? "width" : "height", t = je.has(V(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);
519
+ m < n ? m = n : m > r && (m = r);
520
+ }
521
+ return {
522
+ [f]: p,
523
+ [d]: m
524
+ };
525
+ }
526
+ };
527
+ }, Ie = function(e) {
528
+ return e === void 0 && (e = {}), {
529
+ name: "size",
530
+ options: e,
531
+ async fn(t) {
532
+ var n, r;
533
+ let { placement: i, rects: a, platform: o, elements: s } = t, { apply: c = () => {}, ...l } = B(e, t), u = await Te(t, l), d = V(i), f = H(i), p = U(i) === "y", { width: m, height: h } = a.floating, g, _;
534
+ d === "top" || d === "bottom" ? (g = d, _ = f === (await (o.isRTL == null ? void 0 : o.isRTL(s.floating)) ? "start" : "end") ? "left" : "right") : (_ = d, g = f === "end" ? "top" : "bottom");
535
+ let v = h - u.top - u.bottom, y = m - u.left - u.right, b = F(h - u[g], v), x = F(m - u[_], y), S = !t.middlewareData.shift, C = b, w = x;
536
+ if ((n = t.middlewareData.shift) != null && n.enabled.x && (w = y), (r = t.middlewareData.shift) != null && r.enabled.y && (C = v), S && !f) {
537
+ let e = I(u.left, 0), t = I(u.right, 0), n = I(u.top, 0), r = I(u.bottom, 0);
538
+ p ? w = m - 2 * (e !== 0 || t !== 0 ? e + t : I(u.left, u.right)) : C = h - 2 * (n !== 0 || r !== 0 ? n + r : I(u.top, u.bottom));
539
+ }
540
+ await c({
541
+ ...t,
542
+ availableWidth: w,
543
+ availableHeight: C
544
+ });
545
+ let T = await o.getDimensions(s.floating);
546
+ return m !== T.width || h !== T.height ? { reset: { rects: !0 } } : {};
547
+ }
548
+ };
549
+ };
550
+ //#endregion
551
+ //#region ../node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
552
+ function Le() {
553
+ return typeof window < "u";
554
+ }
555
+ function W(e) {
556
+ return Re(e) ? (e.nodeName || "").toLowerCase() : "#document";
557
+ }
558
+ function G(e) {
559
+ var t;
560
+ return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
561
+ }
562
+ function K(e) {
563
+ return ((Re(e) ? e.ownerDocument : e.document) || window.document)?.documentElement;
564
+ }
565
+ function Re(e) {
566
+ return Le() ? e instanceof Node || e instanceof G(e).Node : !1;
567
+ }
568
+ function q(e) {
569
+ return Le() ? e instanceof Element || e instanceof G(e).Element : !1;
570
+ }
571
+ function J(e) {
572
+ return Le() ? e instanceof HTMLElement || e instanceof G(e).HTMLElement : !1;
573
+ }
574
+ function ze(e) {
575
+ return !Le() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof G(e).ShadowRoot;
576
+ }
577
+ var Be = /*#__PURE__*/ new Set(["inline", "contents"]);
578
+ function Ve(e) {
579
+ let { overflow: t, overflowX: n, overflowY: r, display: i } = X(e);
580
+ return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !Be.has(i);
581
+ }
582
+ var He = /*#__PURE__*/ new Set([
583
+ "table",
584
+ "td",
585
+ "th"
586
+ ]);
587
+ function Ue(e) {
588
+ return He.has(W(e));
589
+ }
590
+ var We = [":popover-open", ":modal"];
591
+ function Ge(e) {
592
+ return We.some((t) => {
593
+ try {
594
+ return e.matches(t);
595
+ } catch {
596
+ return !1;
597
+ }
598
+ });
599
+ }
600
+ var Ke = [
601
+ "transform",
602
+ "translate",
603
+ "scale",
604
+ "rotate",
605
+ "perspective"
606
+ ], qe = [
607
+ "transform",
608
+ "translate",
609
+ "scale",
610
+ "rotate",
611
+ "perspective",
612
+ "filter"
613
+ ], Je = [
614
+ "paint",
615
+ "layout",
616
+ "strict",
617
+ "content"
618
+ ];
619
+ function Ye(e) {
620
+ let t = Ze(), n = q(e) ? X(e) : e;
621
+ return Ke.some((e) => n[e] ? n[e] !== "none" : !1) || (n.containerType ? n.containerType !== "normal" : !1) || !t && (n.backdropFilter ? n.backdropFilter !== "none" : !1) || !t && (n.filter ? n.filter !== "none" : !1) || qe.some((e) => (n.willChange || "").includes(e)) || Je.some((e) => (n.contain || "").includes(e));
622
+ }
623
+ function Xe(e) {
624
+ let t = Z(e);
625
+ for (; J(t) && !Y(t);) {
626
+ if (Ye(t)) return t;
627
+ if (Ge(t)) return null;
628
+ t = Z(t);
629
+ }
630
+ return null;
631
+ }
632
+ function Ze() {
633
+ return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
634
+ }
635
+ var Qe = /*#__PURE__*/ new Set([
636
+ "html",
637
+ "body",
638
+ "#document"
639
+ ]);
640
+ function Y(e) {
641
+ return Qe.has(W(e));
642
+ }
643
+ function X(e) {
644
+ return G(e).getComputedStyle(e);
645
+ }
646
+ function $e(e) {
647
+ return q(e) ? {
648
+ scrollLeft: e.scrollLeft,
649
+ scrollTop: e.scrollTop
650
+ } : {
651
+ scrollLeft: e.scrollX,
652
+ scrollTop: e.scrollY
653
+ };
654
+ }
655
+ function Z(e) {
656
+ if (W(e) === "html") return e;
657
+ let t = e.assignedSlot || e.parentNode || ze(e) && e.host || K(e);
658
+ return ze(t) ? t.host : t;
659
+ }
660
+ function et(e) {
661
+ let t = Z(e);
662
+ return Y(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : J(t) && Ve(t) ? t : et(t);
663
+ }
664
+ function tt(e, t, n) {
665
+ t === void 0 && (t = []), n === void 0 && (n = !0);
666
+ let r = et(e), i = r === e.ownerDocument?.body, a = G(r);
667
+ if (i) {
668
+ let e = nt(a);
669
+ return t.concat(a, a.visualViewport || [], Ve(r) ? r : [], e && n ? tt(e) : []);
670
+ }
671
+ return t.concat(r, tt(r, [], n));
672
+ }
673
+ function nt(e) {
674
+ return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
675
+ }
676
+ //#endregion
677
+ //#region ../node_modules/.pnpm/@floating-ui+dom@1.7.2/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
678
+ function rt(e) {
679
+ let t = X(e), n = parseFloat(t.width) || 0, r = parseFloat(t.height) || 0, i = J(e), a = i ? e.offsetWidth : n, o = i ? e.offsetHeight : r, s = L(n) !== a || L(r) !== o;
680
+ return s && (n = a, r = o), {
681
+ width: n,
682
+ height: r,
683
+ $: s
684
+ };
685
+ }
686
+ function it(e) {
687
+ return q(e) ? e : e.contextElement;
688
+ }
689
+ function Q(e) {
690
+ let t = it(e);
691
+ if (!J(t)) return z(1);
692
+ let n = t.getBoundingClientRect(), { width: r, height: i, $: a } = rt(t), o = (a ? L(n.width) : n.width) / r, s = (a ? L(n.height) : n.height) / i;
693
+ return (!o || !Number.isFinite(o)) && (o = 1), (!s || !Number.isFinite(s)) && (s = 1), {
694
+ x: o,
695
+ y: s
696
+ };
697
+ }
698
+ var at = /*#__PURE__*/ z(0);
699
+ function ot(e) {
700
+ let t = G(e);
701
+ return !Ze() || !t.visualViewport ? at : {
702
+ x: t.visualViewport.offsetLeft,
703
+ y: t.visualViewport.offsetTop
704
+ };
705
+ }
706
+ function st(e, t, n) {
707
+ return t === void 0 && (t = !1), !n || t && n !== G(e) ? !1 : t;
708
+ }
709
+ function $(e, t, n, r) {
710
+ t === void 0 && (t = !1), n === void 0 && (n = !1);
711
+ let i = e.getBoundingClientRect(), a = it(e), o = z(1);
712
+ t && (r ? q(r) && (o = Q(r)) : o = Q(e));
713
+ let s = st(a, n, r) ? ot(a) : z(0), c = (i.left + s.x) / o.x, l = (i.top + s.y) / o.y, u = i.width / o.x, d = i.height / o.y;
714
+ if (a) {
715
+ let e = G(a), t = r && q(r) ? G(r) : r, n = e, i = nt(n);
716
+ for (; i && r && t !== n;) {
717
+ let e = Q(i), t = i.getBoundingClientRect(), r = X(i), a = t.left + (i.clientLeft + parseFloat(r.paddingLeft)) * e.x, o = t.top + (i.clientTop + parseFloat(r.paddingTop)) * e.y;
718
+ c *= e.x, l *= e.y, u *= e.x, d *= e.y, c += a, l += o, n = G(i), i = nt(n);
719
+ }
720
+ }
721
+ return Se({
722
+ width: u,
723
+ height: d,
724
+ x: c,
725
+ y: l
726
+ });
727
+ }
728
+ function ct(e, t) {
729
+ let n = $e(e).scrollLeft;
730
+ return t ? t.left + n : $(K(e)).left + n;
731
+ }
732
+ function lt(e, t, n) {
733
+ n === void 0 && (n = !1);
734
+ let r = e.getBoundingClientRect();
735
+ return {
736
+ x: r.left + t.scrollLeft - (n ? 0 : ct(e, r)),
737
+ y: r.top + t.scrollTop
738
+ };
739
+ }
740
+ function ut(e) {
741
+ let { elements: t, rect: n, offsetParent: r, strategy: i } = e, a = i === "fixed", o = K(r), s = t ? Ge(t.floating) : !1;
742
+ if (r === o || s && a) return n;
743
+ let c = {
744
+ scrollLeft: 0,
745
+ scrollTop: 0
746
+ }, l = z(1), u = z(0), d = J(r);
747
+ if ((d || !d && !a) && ((W(r) !== "body" || Ve(o)) && (c = $e(r)), J(r))) {
748
+ let e = $(r);
749
+ l = Q(r), u.x = e.x + r.clientLeft, u.y = e.y + r.clientTop;
750
+ }
751
+ let f = o && !d && !a ? lt(o, c, !0) : z(0);
752
+ return {
753
+ width: n.width * l.x,
754
+ height: n.height * l.y,
755
+ x: n.x * l.x - c.scrollLeft * l.x + u.x + f.x,
756
+ y: n.y * l.y - c.scrollTop * l.y + u.y + f.y
757
+ };
758
+ }
759
+ function dt(e) {
760
+ return Array.from(e.getClientRects());
761
+ }
762
+ function ft(e) {
763
+ let t = K(e), n = $e(e), r = e.ownerDocument.body, i = I(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth), a = I(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight), o = -n.scrollLeft + ct(e), s = -n.scrollTop;
764
+ return X(r).direction === "rtl" && (o += I(t.clientWidth, r.clientWidth) - i), {
765
+ width: i,
766
+ height: a,
767
+ x: o,
768
+ y: s
769
+ };
770
+ }
771
+ function pt(e, t) {
772
+ let n = G(e), r = K(e), i = n.visualViewport, a = r.clientWidth, o = r.clientHeight, s = 0, c = 0;
773
+ if (i) {
774
+ a = i.width, o = i.height;
775
+ let e = Ze();
776
+ (!e || e && t === "fixed") && (s = i.offsetLeft, c = i.offsetTop);
777
+ }
778
+ return {
779
+ width: a,
780
+ height: o,
781
+ x: s,
782
+ y: c
783
+ };
784
+ }
785
+ var mt = /*#__PURE__*/ new Set(["absolute", "fixed"]);
786
+ function ht(e, t) {
787
+ let n = $(e, !0, t === "fixed"), r = n.top + e.clientTop, i = n.left + e.clientLeft, a = J(e) ? Q(e) : z(1);
788
+ return {
789
+ width: e.clientWidth * a.x,
790
+ height: e.clientHeight * a.y,
791
+ x: i * a.x,
792
+ y: r * a.y
793
+ };
794
+ }
795
+ function gt(e, t, n) {
796
+ let r;
797
+ if (t === "viewport") r = pt(e, n);
798
+ else if (t === "document") r = ft(K(e));
799
+ else if (q(t)) r = ht(t, n);
800
+ else {
801
+ let n = ot(e);
802
+ r = {
803
+ x: t.x - n.x,
804
+ y: t.y - n.y,
805
+ width: t.width,
806
+ height: t.height
807
+ };
808
+ }
809
+ return Se(r);
810
+ }
811
+ function _t(e, t) {
812
+ let n = Z(e);
813
+ return n === t || !q(n) || Y(n) ? !1 : X(n).position === "fixed" || _t(n, t);
814
+ }
815
+ function vt(e, t) {
816
+ let n = t.get(e);
817
+ if (n) return n;
818
+ let r = tt(e, [], !1).filter((e) => q(e) && W(e) !== "body"), i = null, a = X(e).position === "fixed", o = a ? Z(e) : e;
819
+ for (; q(o) && !Y(o);) {
820
+ let t = X(o), n = Ye(o);
821
+ !n && t.position === "fixed" && (i = null), (a ? !n && !i : !n && t.position === "static" && i && mt.has(i.position) || Ve(o) && !n && _t(e, o)) ? r = r.filter((e) => e !== o) : i = t, o = Z(o);
822
+ }
823
+ return t.set(e, r), r;
824
+ }
825
+ function yt(e) {
826
+ let { element: t, boundary: n, rootBoundary: r, strategy: i } = e, a = [...n === "clippingAncestors" ? Ge(t) ? [] : vt(t, this._c) : [].concat(n), r], o = a[0], s = a.reduce((e, n) => {
827
+ let r = gt(t, n, i);
828
+ return e.top = I(r.top, e.top), e.right = F(r.right, e.right), e.bottom = F(r.bottom, e.bottom), e.left = I(r.left, e.left), e;
829
+ }, gt(t, o, i));
830
+ return {
831
+ width: s.right - s.left,
832
+ height: s.bottom - s.top,
833
+ x: s.left,
834
+ y: s.top
835
+ };
836
+ }
837
+ function bt(e) {
838
+ let { width: t, height: n } = rt(e);
839
+ return {
840
+ width: t,
841
+ height: n
842
+ };
843
+ }
844
+ function xt(e, t, n) {
845
+ let r = J(t), i = K(t), a = n === "fixed", o = $(e, !0, a, t), s = {
846
+ scrollLeft: 0,
847
+ scrollTop: 0
848
+ }, c = z(0);
849
+ function l() {
850
+ c.x = ct(i);
851
+ }
852
+ if (r || !r && !a) {
853
+ if ((W(t) !== "body" || Ve(i)) && (s = $e(t)), r) {
854
+ let e = $(t, !0, a, t);
855
+ c.x = e.x + t.clientLeft, c.y = e.y + t.clientTop;
856
+ } else i && l();
857
+ }
858
+ a && !r && i && l();
859
+ let u = i && !r && !a ? lt(i, s) : z(0);
860
+ return {
861
+ x: o.left + s.scrollLeft - c.x - u.x,
862
+ y: o.top + s.scrollTop - c.y - u.y,
863
+ width: o.width,
864
+ height: o.height
865
+ };
866
+ }
867
+ function St(e) {
868
+ return X(e).position === "static";
869
+ }
870
+ function Ct(e, t) {
871
+ if (!J(e) || X(e).position === "fixed") return null;
872
+ if (t) return t(e);
873
+ let n = e.offsetParent;
874
+ return K(e) === n && (n = n.ownerDocument.body), n;
875
+ }
876
+ function wt(e, t) {
877
+ let n = G(e);
878
+ if (Ge(e)) return n;
879
+ if (!J(e)) {
880
+ let t = Z(e);
881
+ for (; t && !Y(t);) {
882
+ if (q(t) && !St(t)) return t;
883
+ t = Z(t);
884
+ }
885
+ return n;
886
+ }
887
+ let r = Ct(e, t);
888
+ for (; r && Ue(r) && St(r);) r = Ct(r, t);
889
+ return r && Y(r) && St(r) && !Ye(r) ? n : r || Xe(e) || n;
890
+ }
891
+ var Tt = async function(e) {
892
+ let t = this.getOffsetParent || wt, n = this.getDimensions, r = await n(e.floating);
893
+ return {
894
+ reference: xt(e.reference, await t(e.floating), e.strategy),
895
+ floating: {
896
+ x: 0,
897
+ y: 0,
898
+ width: r.width,
899
+ height: r.height
900
+ }
901
+ };
902
+ };
903
+ function Et(e) {
904
+ return X(e).direction === "rtl";
905
+ }
906
+ var Dt = {
907
+ convertOffsetParentRelativeRectToViewportRelativeRect: ut,
908
+ getDocumentElement: K,
909
+ getClippingRect: yt,
910
+ getOffsetParent: wt,
911
+ getElementRects: Tt,
912
+ getClientRects: dt,
913
+ getDimensions: bt,
914
+ getScale: Q,
915
+ isElement: q,
916
+ isRTL: Et
917
+ };
918
+ function Ot(e, t) {
919
+ return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
920
+ }
921
+ function kt(e, t) {
922
+ let n = null, r, i = K(e);
923
+ function a() {
924
+ var e;
925
+ clearTimeout(r), (e = n) == null || e.disconnect(), n = null;
926
+ }
927
+ function o(s, c) {
928
+ s === void 0 && (s = !1), c === void 0 && (c = 1), a();
929
+ let l = e.getBoundingClientRect(), { left: u, top: d, width: f, height: p } = l;
930
+ if (s || t(), !f || !p) return;
931
+ let m = R(d), h = R(i.clientWidth - (u + f)), g = R(i.clientHeight - (d + p)), _ = R(u), v = {
932
+ rootMargin: -m + "px " + -h + "px " + -g + "px " + -_ + "px",
933
+ threshold: I(0, F(1, c)) || 1
934
+ }, y = !0;
935
+ function b(t) {
936
+ let n = t[0].intersectionRatio;
937
+ if (n !== c) {
938
+ if (!y) return o();
939
+ n ? o(!1, n) : r = setTimeout(() => {
940
+ o(!1, 1e-7);
941
+ }, 1e3);
942
+ }
943
+ n === 1 && !Ot(l, e.getBoundingClientRect()) && o(), y = !1;
944
+ }
945
+ try {
946
+ n = new IntersectionObserver(b, {
947
+ ...v,
948
+ root: i.ownerDocument
949
+ });
950
+ } catch {
951
+ n = new IntersectionObserver(b, v);
952
+ }
953
+ n.observe(e);
954
+ }
955
+ return o(!0), a;
956
+ }
957
+ function At(e, t, n, r) {
958
+ r === void 0 && (r = {});
959
+ let { ancestorScroll: i = !0, ancestorResize: a = !0, elementResize: o = typeof ResizeObserver == "function", layoutShift: s = typeof IntersectionObserver == "function", animationFrame: c = !1 } = r, l = it(e), u = i || a ? [...l ? tt(l) : [], ...tt(t)] : [];
960
+ u.forEach((e) => {
961
+ i && e.addEventListener("scroll", n, { passive: !0 }), a && e.addEventListener("resize", n);
962
+ });
963
+ let d = l && s ? kt(l, n) : null, f = -1, p = null;
964
+ o && (p = new ResizeObserver((e) => {
965
+ let [r] = e;
966
+ r && r.target === l && p && (p.unobserve(t), cancelAnimationFrame(f), f = requestAnimationFrame(() => {
967
+ var e;
968
+ (e = p) == null || e.observe(t);
969
+ })), n();
970
+ }), l && !c && p.observe(l), p.observe(t));
971
+ let m, h = c ? $(e) : null;
972
+ c && g();
973
+ function g() {
974
+ let t = $(e);
975
+ h && !Ot(h, t) && n(), h = t, m = requestAnimationFrame(g);
976
+ }
977
+ return n(), () => {
978
+ var e;
979
+ u.forEach((e) => {
980
+ i && e.removeEventListener("scroll", n), a && e.removeEventListener("resize", n);
981
+ }), d?.(), (e = p) == null || e.disconnect(), p = null, c && cancelAnimationFrame(m);
982
+ };
983
+ }
984
+ var jt = Ne, Mt = Pe, Nt = De, Pt = Ie, Ft = Ae, It = Ee, Lt = Fe, Rt = (e, t, n) => {
985
+ let r = /* @__PURE__ */ new Map(), i = {
986
+ platform: Dt,
987
+ ...n
988
+ }, a = {
989
+ ...i.platform,
990
+ _c: r
991
+ };
992
+ return we(e, t, {
993
+ ...i,
994
+ platform: a
995
+ });
996
+ }, zt = typeof document < "u" ? x.useLayoutEffect : function() {};
997
+ function Bt(e, t) {
998
+ if (e === t) return !0;
999
+ if (typeof e != typeof t) return !1;
1000
+ if (typeof e == "function" && e.toString() === t.toString()) return !0;
1001
+ let n, r, i;
1002
+ if (e && t && typeof e == "object") {
1003
+ if (Array.isArray(e)) {
1004
+ if (n = e.length, n !== t.length) return !1;
1005
+ for (r = n; r-- !== 0;) if (!Bt(e[r], t[r])) return !1;
1006
+ return !0;
1007
+ }
1008
+ if (i = Object.keys(e), n = i.length, n !== Object.keys(t).length) return !1;
1009
+ for (r = n; r-- !== 0;) if (!{}.hasOwnProperty.call(t, i[r])) return !1;
1010
+ for (r = n; r-- !== 0;) {
1011
+ let n = i[r];
1012
+ if (!(n === "_owner" && e.$$typeof) && !Bt(e[n], t[n])) return !1;
1013
+ }
1014
+ return !0;
1015
+ }
1016
+ return e !== e && t !== t;
1017
+ }
1018
+ function Vt(e) {
1019
+ return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
1020
+ }
1021
+ function Ht(e, t) {
1022
+ let n = Vt(e);
1023
+ return Math.round(t * n) / n;
1024
+ }
1025
+ function Ut(e) {
1026
+ let t = x.useRef(e);
1027
+ return zt(() => {
1028
+ t.current = e;
1029
+ }), t;
1030
+ }
1031
+ function Wt(e) {
1032
+ e === void 0 && (e = {});
1033
+ 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] = x.useState({
1034
+ x: 0,
1035
+ y: 0,
1036
+ strategy: n,
1037
+ placement: t,
1038
+ middlewareData: {},
1039
+ isPositioned: !1
1040
+ }), [f, p] = x.useState(r);
1041
+ Bt(f, r) || p(r);
1042
+ let [m, h] = x.useState(null), [g, _] = x.useState(null), v = x.useCallback((e) => {
1043
+ e !== C.current && (C.current = e, h(e));
1044
+ }, []), y = x.useCallback((e) => {
1045
+ e !== w.current && (w.current = e, _(e));
1046
+ }, []), b = a || m, S = o || g, C = x.useRef(null), w = x.useRef(null), T = x.useRef(u), ee = c != null, E = Ut(c), D = Ut(i), O = Ut(l), A = x.useCallback(() => {
1047
+ if (!C.current || !w.current) return;
1048
+ let e = {
1049
+ placement: t,
1050
+ strategy: n,
1051
+ middleware: f
1052
+ };
1053
+ D.current && (e.platform = D.current), Rt(C.current, w.current, e).then((e) => {
1054
+ let t = {
1055
+ ...e,
1056
+ isPositioned: O.current !== !1
1057
+ };
1058
+ j.current && !Bt(T.current, t) && (T.current = t, k.flushSync(() => {
1059
+ d(t);
1060
+ }));
1061
+ });
1062
+ }, [
1063
+ f,
1064
+ t,
1065
+ n,
1066
+ D,
1067
+ O
1068
+ ]);
1069
+ zt(() => {
1070
+ l === !1 && T.current.isPositioned && (T.current.isPositioned = !1, d((e) => ({
1071
+ ...e,
1072
+ isPositioned: !1
1073
+ })));
1074
+ }, [l]);
1075
+ let j = x.useRef(!1);
1076
+ zt(() => (j.current = !0, () => {
1077
+ j.current = !1;
1078
+ }), []), zt(() => {
1079
+ if (b && (C.current = b), S && (w.current = S), b && S) {
1080
+ if (E.current) return E.current(b, S, A);
1081
+ A();
1082
+ }
1083
+ }, [
1084
+ b,
1085
+ S,
1086
+ A,
1087
+ E,
1088
+ ee
1089
+ ]);
1090
+ let M = x.useMemo(() => ({
1091
+ reference: C,
1092
+ floating: w,
1093
+ setReference: v,
1094
+ setFloating: y
1095
+ }), [v, y]), N = x.useMemo(() => ({
1096
+ reference: b,
1097
+ floating: S
1098
+ }), [b, S]), P = x.useMemo(() => {
1099
+ let e = {
1100
+ position: n,
1101
+ left: 0,
1102
+ top: 0
1103
+ };
1104
+ if (!N.floating) return e;
1105
+ let t = Ht(N.floating, u.x), r = Ht(N.floating, u.y);
1106
+ return s ? {
1107
+ ...e,
1108
+ transform: "translate(" + t + "px, " + r + "px)",
1109
+ ...Vt(N.floating) >= 1.5 && { willChange: "transform" }
1110
+ } : {
1111
+ position: n,
1112
+ left: t,
1113
+ top: r
1114
+ };
1115
+ }, [
1116
+ n,
1117
+ s,
1118
+ N.floating,
1119
+ u.x,
1120
+ u.y
1121
+ ]);
1122
+ return x.useMemo(() => ({
1123
+ ...u,
1124
+ update: A,
1125
+ refs: M,
1126
+ elements: N,
1127
+ floatingStyles: P
1128
+ }), [
1129
+ u,
1130
+ A,
1131
+ M,
1132
+ N,
1133
+ P
1134
+ ]);
1135
+ }
1136
+ var Gt = (e) => {
1137
+ function t(e) {
1138
+ return {}.hasOwnProperty.call(e, "current");
1139
+ }
1140
+ return {
1141
+ name: "arrow",
1142
+ options: e,
1143
+ fn(n) {
1144
+ let { element: r, padding: i } = typeof e == "function" ? e(n) : e;
1145
+ return r && t(r) ? r.current == null ? {} : It({
1146
+ element: r.current,
1147
+ padding: i
1148
+ }).fn(n) : r ? It({
1149
+ element: r,
1150
+ padding: i
1151
+ }).fn(n) : {};
1152
+ }
1153
+ };
1154
+ }, Kt = (e, t) => ({
1155
+ ...jt(e),
1156
+ options: [e, t]
1157
+ }), qt = (e, t) => ({
1158
+ ...Mt(e),
1159
+ options: [e, t]
1160
+ }), Jt = (e, t) => ({
1161
+ ...Lt(e),
1162
+ options: [e, t]
1163
+ }), Yt = (e, t) => ({
1164
+ ...Nt(e),
1165
+ options: [e, t]
1166
+ }), Xt = (e, t) => ({
1167
+ ...Pt(e),
1168
+ options: [e, t]
1169
+ }), Zt = (e, t) => ({
1170
+ ...Ft(e),
1171
+ options: [e, t]
1172
+ }), Qt = (e, t) => ({
1173
+ ...Gt(e),
1174
+ options: [e, t]
1175
+ }), $t = "Arrow", en = x.forwardRef((e, t) => {
1176
+ let { children: n, width: r = 10, height: i = 5, ...a } = e;
1177
+ return /* @__PURE__ */ (0, A.jsx)(d.svg, {
1178
+ ...a,
1179
+ ref: t,
1180
+ width: r,
1181
+ height: i,
1182
+ viewBox: "0 0 30 10",
1183
+ preserveAspectRatio: "none",
1184
+ children: e.asChild ? n : /* @__PURE__ */ (0, A.jsx)("polygon", { points: "0,0 30,0 15,10" })
1185
+ });
1186
+ });
1187
+ en.displayName = $t;
1188
+ var tn = en, nn = "Popper", [rn, an] = v(nn), [on, sn] = rn(nn), cn = (e) => {
1189
+ let { __scopePopper: t, children: n } = e, [r, i] = x.useState(null);
1190
+ return /* @__PURE__ */ (0, A.jsx)(on, {
1191
+ scope: t,
1192
+ anchor: r,
1193
+ onAnchorChange: i,
1194
+ children: n
1195
+ });
1196
+ };
1197
+ cn.displayName = nn;
1198
+ var ln = "PopperAnchor", un = x.forwardRef((e, t) => {
1199
+ let { __scopePopper: n, virtualRef: i, ...a } = e, o = sn(ln, n), s = x.useRef(null), c = r(t, s), l = x.useRef(null);
1200
+ return x.useEffect(() => {
1201
+ let e = l.current;
1202
+ l.current = i?.current || s.current, e !== l.current && o.onAnchorChange(l.current);
1203
+ }), i ? null : /* @__PURE__ */ (0, A.jsx)(d.div, {
1204
+ ...a,
1205
+ ref: c
1206
+ });
1207
+ });
1208
+ un.displayName = ln;
1209
+ var dn = "PopperContent", [fn, pn] = rn(dn), mn = x.forwardRef((e, t) => {
1210
+ let { __scopePopper: n, side: i = "bottom", sideOffset: a = 0, align: o = "center", alignOffset: s = 0, arrowPadding: c = 0, avoidCollisions: l = !0, collisionBoundary: f = [], collisionPadding: p = 0, sticky: m = "partial", hideWhenDetached: h = !1, updatePositionStrategy: g = "optimized", onPlaced: v, ...y } = e, b = sn(dn, n), [S, C] = x.useState(null), w = r(t, (e) => C(e)), [T, ee] = x.useState(null), E = te(T), D = E?.width ?? 0, O = E?.height ?? 0, k = i + (o === "center" ? "" : "-" + o), j = typeof p == "number" ? p : {
1211
+ top: 0,
1212
+ right: 0,
1213
+ bottom: 0,
1214
+ left: 0,
1215
+ ...p
1216
+ }, M = Array.isArray(f) ? f : [f], N = M.length > 0, P = {
1217
+ padding: j,
1218
+ boundary: M.filter(vn),
1219
+ altBoundary: N
1220
+ }, { refs: ne, floatingStyles: F, placement: I, isPositioned: L, middlewareData: R } = Wt({
1221
+ strategy: "fixed",
1222
+ placement: k,
1223
+ whileElementsMounted: (...e) => At(...e, { animationFrame: g === "always" }),
1224
+ elements: { reference: b.anchor },
1225
+ middleware: [
1226
+ Kt({
1227
+ mainAxis: a + O,
1228
+ alignmentAxis: s
1229
+ }),
1230
+ l && qt({
1231
+ mainAxis: !0,
1232
+ crossAxis: !1,
1233
+ limiter: m === "partial" ? Jt() : void 0,
1234
+ ...P
1235
+ }),
1236
+ l && Yt({ ...P }),
1237
+ Xt({
1238
+ ...P,
1239
+ apply: ({ elements: e, rects: t, availableWidth: n, availableHeight: r }) => {
1240
+ let { width: i, height: a } = t.reference, o = e.floating.style;
1241
+ o.setProperty("--radix-popper-available-width", `${n}px`), o.setProperty("--radix-popper-available-height", `${r}px`), o.setProperty("--radix-popper-anchor-width", `${i}px`), o.setProperty("--radix-popper-anchor-height", `${a}px`);
1242
+ }
1243
+ }),
1244
+ T && Qt({
1245
+ element: T,
1246
+ padding: c
1247
+ }),
1248
+ yn({
1249
+ arrowWidth: D,
1250
+ arrowHeight: O
1251
+ }),
1252
+ h && Zt({
1253
+ strategy: "referenceHidden",
1254
+ ...P
1255
+ })
1256
+ ]
1257
+ }), [z, re] = bn(I), ie = _(v);
1258
+ u(() => {
1259
+ L && ie?.();
1260
+ }, [L, ie]);
1261
+ let ae = R.arrow?.x, B = R.arrow?.y, V = R.arrow?.centerOffset !== 0, [H, oe] = x.useState();
1262
+ return u(() => {
1263
+ S && oe(window.getComputedStyle(S).zIndex);
1264
+ }, [S]), /* @__PURE__ */ (0, A.jsx)("div", {
1265
+ ref: ne.setFloating,
1266
+ "data-radix-popper-content-wrapper": "",
1267
+ style: {
1268
+ ...F,
1269
+ transform: L ? F.transform : "translate(0, -200%)",
1270
+ minWidth: "max-content",
1271
+ zIndex: H,
1272
+ "--radix-popper-transform-origin": [R.transformOrigin?.x, R.transformOrigin?.y].join(" "),
1273
+ ...R.hide?.referenceHidden && {
1274
+ visibility: "hidden",
1275
+ pointerEvents: "none"
1276
+ }
1277
+ },
1278
+ dir: e.dir,
1279
+ children: /* @__PURE__ */ (0, A.jsx)(fn, {
1280
+ scope: n,
1281
+ placedSide: z,
1282
+ onArrowChange: ee,
1283
+ arrowX: ae,
1284
+ arrowY: B,
1285
+ shouldHideArrow: V,
1286
+ children: /* @__PURE__ */ (0, A.jsx)(d.div, {
1287
+ "data-side": z,
1288
+ "data-align": re,
1289
+ ...y,
1290
+ ref: w,
1291
+ style: {
1292
+ ...y.style,
1293
+ animation: L ? void 0 : "none"
1294
+ }
1295
+ })
1296
+ })
1297
+ });
1298
+ });
1299
+ mn.displayName = dn;
1300
+ var hn = "PopperArrow", gn = {
1301
+ top: "bottom",
1302
+ right: "left",
1303
+ bottom: "top",
1304
+ left: "right"
1305
+ }, _n = x.forwardRef(function(e, t) {
1306
+ let { __scopePopper: n, ...r } = e, i = pn(hn, n), a = gn[i.placedSide];
1307
+ return /* @__PURE__ */ (0, A.jsx)("span", {
1308
+ ref: i.onArrowChange,
1309
+ style: {
1310
+ position: "absolute",
1311
+ left: i.arrowX,
1312
+ top: i.arrowY,
1313
+ [a]: 0,
1314
+ transformOrigin: {
1315
+ top: "",
1316
+ right: "0 0",
1317
+ bottom: "center 0",
1318
+ left: "100% 0"
1319
+ }[i.placedSide],
1320
+ transform: {
1321
+ top: "translateY(100%)",
1322
+ right: "translateY(50%) rotate(90deg) translateX(-50%)",
1323
+ bottom: "rotate(180deg)",
1324
+ left: "translateY(50%) rotate(-90deg) translateX(50%)"
1325
+ }[i.placedSide],
1326
+ visibility: i.shouldHideArrow ? "hidden" : void 0
1327
+ },
1328
+ children: /* @__PURE__ */ (0, A.jsx)(tn, {
1329
+ ...r,
1330
+ ref: t,
1331
+ style: {
1332
+ ...r.style,
1333
+ display: "block"
1334
+ }
1335
+ })
1336
+ });
1337
+ });
1338
+ _n.displayName = hn;
1339
+ function vn(e) {
1340
+ return e !== null;
1341
+ }
1342
+ var yn = (e) => ({
1343
+ name: "transformOrigin",
1344
+ options: e,
1345
+ fn(t) {
1346
+ let { placement: n, rects: r, middlewareData: i } = t, a = i.arrow?.centerOffset !== 0, o = a ? 0 : e.arrowWidth, s = a ? 0 : e.arrowHeight, [c, l] = bn(n), u = {
1347
+ start: "0%",
1348
+ center: "50%",
1349
+ end: "100%"
1350
+ }[l], d = (i.arrow?.x ?? 0) + o / 2, f = (i.arrow?.y ?? 0) + s / 2, p = "", m = "";
1351
+ return c === "bottom" ? (p = a ? u : `${d}px`, m = `${-s}px`) : c === "top" ? (p = a ? u : `${d}px`, m = `${r.floating.height + s}px`) : c === "right" ? (p = `${-s}px`, m = a ? u : `${f}px`) : c === "left" && (p = `${r.floating.width + s}px`, m = a ? u : `${f}px`), { data: {
1352
+ x: p,
1353
+ y: m
1354
+ } };
1355
+ }
1356
+ });
1357
+ function bn(e) {
1358
+ let [t, n = "center"] = e.split("-");
1359
+ return [t, n];
1360
+ }
1361
+ var xn = cn, Sn = un, Cn = mn, wn = _n, [Tn, En] = v("Tooltip", [an]), Dn = an(), On = "TooltipProvider", kn = 700, An = "tooltip.open", [jn, Mn] = Tn(On), Nn = (e) => {
1362
+ let { __scopeTooltip: t, delayDuration: n = kn, skipDelayDuration: r = 300, disableHoverableContent: i = !1, children: a } = e, o = x.useRef(!0), s = x.useRef(!1), c = x.useRef(0);
1363
+ return x.useEffect(() => {
1364
+ let e = c.current;
1365
+ return () => window.clearTimeout(e);
1366
+ }, []), /* @__PURE__ */ (0, A.jsx)(jn, {
1367
+ scope: t,
1368
+ isOpenDelayedRef: o,
1369
+ delayDuration: n,
1370
+ onOpen: x.useCallback(() => {
1371
+ window.clearTimeout(c.current), o.current = !1;
1372
+ }, []),
1373
+ onClose: x.useCallback(() => {
1374
+ window.clearTimeout(c.current), c.current = window.setTimeout(() => o.current = !0, r);
1375
+ }, [r]),
1376
+ isPointerInTransitRef: s,
1377
+ onPointerInTransitChange: x.useCallback((e) => {
1378
+ s.current = e;
1379
+ }, []),
1380
+ disableHoverableContent: i,
1381
+ children: a
1382
+ });
1383
+ };
1384
+ Nn.displayName = On;
1385
+ var Pn = "Tooltip", [Fn, In] = Tn(Pn), Ln = (e) => {
1386
+ let { __scopeTooltip: t, children: n, open: r, defaultOpen: i, onOpenChange: a, disableHoverableContent: o, delayDuration: s } = e, c = Mn(Pn, e.__scopeTooltip), l = Dn(t), [u, d] = x.useState(null), f = b(), p = x.useRef(0), m = o ?? c.disableHoverableContent, h = s ?? c.delayDuration, g = x.useRef(!1), [_, v] = y({
1387
+ prop: r,
1388
+ defaultProp: i ?? !1,
1389
+ onChange: (e) => {
1390
+ e ? (c.onOpen(), document.dispatchEvent(new CustomEvent(An))) : c.onClose(), a?.(e);
1391
+ },
1392
+ caller: Pn
1393
+ }), S = x.useMemo(() => _ ? g.current ? "delayed-open" : "instant-open" : "closed", [_]), C = x.useCallback(() => {
1394
+ window.clearTimeout(p.current), p.current = 0, g.current = !1, v(!0);
1395
+ }, [v]), w = x.useCallback(() => {
1396
+ window.clearTimeout(p.current), p.current = 0, v(!1);
1397
+ }, [v]), T = x.useCallback(() => {
1398
+ window.clearTimeout(p.current), p.current = window.setTimeout(() => {
1399
+ g.current = !0, v(!0), p.current = 0;
1400
+ }, h);
1401
+ }, [h, v]);
1402
+ return x.useEffect(() => () => {
1403
+ p.current &&= (window.clearTimeout(p.current), 0);
1404
+ }, []), /* @__PURE__ */ (0, A.jsx)(xn, {
1405
+ ...l,
1406
+ children: /* @__PURE__ */ (0, A.jsx)(Fn, {
1407
+ scope: t,
1408
+ contentId: f,
1409
+ open: _,
1410
+ stateAttribute: S,
1411
+ trigger: u,
1412
+ onTriggerChange: d,
1413
+ onTriggerEnter: x.useCallback(() => {
1414
+ c.isOpenDelayedRef.current ? T() : C();
1415
+ }, [
1416
+ c.isOpenDelayedRef,
1417
+ T,
1418
+ C
1419
+ ]),
1420
+ onTriggerLeave: x.useCallback(() => {
1421
+ m ? w() : (window.clearTimeout(p.current), p.current = 0);
1422
+ }, [w, m]),
1423
+ onOpen: C,
1424
+ onClose: w,
1425
+ disableHoverableContent: m,
1426
+ children: n
1427
+ })
1428
+ });
1429
+ };
1430
+ Ln.displayName = Pn;
1431
+ var Rn = "TooltipTrigger", zn = x.forwardRef((e, t) => {
1432
+ let { __scopeTooltip: n, ...i } = e, a = In(Rn, n), o = Mn(Rn, n), s = Dn(n), l = x.useRef(null), u = r(t, l, a.onTriggerChange), f = x.useRef(!1), p = x.useRef(!1), m = x.useCallback(() => f.current = !1, []);
1433
+ return x.useEffect(() => () => document.removeEventListener("pointerup", m), [m]), /* @__PURE__ */ (0, A.jsx)(Sn, {
1434
+ asChild: !0,
1435
+ ...s,
1436
+ children: /* @__PURE__ */ (0, A.jsx)(d.button, {
1437
+ "aria-describedby": a.open ? a.contentId : void 0,
1438
+ "data-state": a.stateAttribute,
1439
+ ...i,
1440
+ ref: u,
1441
+ onPointerMove: c(e.onPointerMove, (e) => {
1442
+ e.pointerType !== "touch" && !p.current && !o.isPointerInTransitRef.current && (a.onTriggerEnter(), p.current = !0);
1443
+ }),
1444
+ onPointerLeave: c(e.onPointerLeave, () => {
1445
+ a.onTriggerLeave(), p.current = !1;
1446
+ }),
1447
+ onPointerDown: c(e.onPointerDown, () => {
1448
+ a.open && a.onClose(), f.current = !0, document.addEventListener("pointerup", m, { once: !0 });
1449
+ }),
1450
+ onFocus: c(e.onFocus, () => {
1451
+ f.current || a.onOpen();
1452
+ }),
1453
+ onBlur: c(e.onBlur, a.onClose),
1454
+ onClick: c(e.onClick, a.onClose)
1455
+ })
1456
+ });
1457
+ });
1458
+ zn.displayName = Rn;
1459
+ var Bn = "TooltipPortal", [Vn, Hn] = Tn(Bn, { forceMount: void 0 }), Un = (e) => {
1460
+ let { __scopeTooltip: t, forceMount: n, children: r, container: i } = e, a = In(Bn, t);
1461
+ return /* @__PURE__ */ (0, A.jsx)(Vn, {
1462
+ scope: t,
1463
+ forceMount: n,
1464
+ children: /* @__PURE__ */ (0, A.jsx)(m, {
1465
+ present: n || a.open,
1466
+ children: /* @__PURE__ */ (0, A.jsx)(g, {
1467
+ asChild: !0,
1468
+ container: i,
1469
+ children: r
1470
+ })
1471
+ })
1472
+ });
1473
+ };
1474
+ Un.displayName = Bn;
1475
+ var Wn = "TooltipContent", Gn = x.forwardRef((e, t) => {
1476
+ let n = Hn(Wn, e.__scopeTooltip), { forceMount: r = n.forceMount, side: i = "top", ...a } = e, o = In(Wn, e.__scopeTooltip);
1477
+ return /* @__PURE__ */ (0, A.jsx)(m, {
1478
+ present: r || o.open,
1479
+ children: o.disableHoverableContent ? /* @__PURE__ */ (0, A.jsx)(Xn, {
1480
+ side: i,
1481
+ ...a,
1482
+ ref: t
1483
+ }) : /* @__PURE__ */ (0, A.jsx)(Kn, {
1484
+ side: i,
1485
+ ...a,
1486
+ ref: t
1487
+ })
1488
+ });
1489
+ }), Kn = x.forwardRef((e, t) => {
1490
+ let n = In(Wn, e.__scopeTooltip), i = Mn(Wn, e.__scopeTooltip), a = x.useRef(null), o = r(t, a), [s, c] = x.useState(null), { trigger: l, onClose: u } = n, d = a.current, { onPointerInTransitChange: f } = i, p = x.useCallback(() => {
1491
+ c(null), f(!1);
1492
+ }, [f]), m = x.useCallback((e, t) => {
1493
+ let n = e.currentTarget, r = {
1494
+ x: e.clientX,
1495
+ y: e.clientY
1496
+ }, i = er(r, $n(r, n.getBoundingClientRect())), a = tr(t.getBoundingClientRect()), o = rr([...i, ...a]);
1497
+ c(o), f(!0);
1498
+ }, [f]);
1499
+ return x.useEffect(() => () => p(), [p]), x.useEffect(() => {
1500
+ if (l && d) {
1501
+ let e = (e) => m(e, d), t = (e) => m(e, l);
1502
+ return l.addEventListener("pointerleave", e), d.addEventListener("pointerleave", t), () => {
1503
+ l.removeEventListener("pointerleave", e), d.removeEventListener("pointerleave", t);
1504
+ };
1505
+ }
1506
+ }, [
1507
+ l,
1508
+ d,
1509
+ m,
1510
+ p
1511
+ ]), x.useEffect(() => {
1512
+ if (s) {
1513
+ let e = (e) => {
1514
+ let t = e.target, n = {
1515
+ x: e.clientX,
1516
+ y: e.clientY
1517
+ }, r = l?.contains(t) || d?.contains(t), i = !nr(n, s);
1518
+ r ? p() : i && (p(), u());
1519
+ };
1520
+ return document.addEventListener("pointermove", e), () => document.removeEventListener("pointermove", e);
1521
+ }
1522
+ }, [
1523
+ l,
1524
+ d,
1525
+ s,
1526
+ u,
1527
+ p
1528
+ ]), /* @__PURE__ */ (0, A.jsx)(Xn, {
1529
+ ...e,
1530
+ ref: o
1531
+ });
1532
+ }), [qn, Jn] = Tn(Pn, { isInside: !1 }), Yn = t("TooltipContent"), Xn = x.forwardRef((e, t) => {
1533
+ let { __scopeTooltip: n, children: r, "aria-label": i, onEscapeKeyDown: a, onPointerDownOutside: o, ...s } = e, c = In(Wn, n), l = Dn(n), { onClose: u } = c;
1534
+ return x.useEffect(() => (document.addEventListener(An, u), () => document.removeEventListener(An, u)), [u]), x.useEffect(() => {
1535
+ if (c.trigger) {
1536
+ let e = (e) => {
1537
+ e.target?.contains(c.trigger) && u();
1538
+ };
1539
+ return window.addEventListener("scroll", e, { capture: !0 }), () => window.removeEventListener("scroll", e, { capture: !0 });
1540
+ }
1541
+ }, [c.trigger, u]), /* @__PURE__ */ (0, A.jsx)(h, {
1542
+ asChild: !0,
1543
+ disableOutsidePointerEvents: !1,
1544
+ onEscapeKeyDown: a,
1545
+ onPointerDownOutside: o,
1546
+ onFocusOutside: (e) => e.preventDefault(),
1547
+ onDismiss: u,
1548
+ children: /* @__PURE__ */ (0, A.jsxs)(Cn, {
1549
+ "data-state": c.stateAttribute,
1550
+ ...l,
1551
+ ...s,
1552
+ ref: t,
1553
+ style: {
1554
+ ...s.style,
1555
+ "--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)",
1556
+ "--radix-tooltip-content-available-width": "var(--radix-popper-available-width)",
1557
+ "--radix-tooltip-content-available-height": "var(--radix-popper-available-height)",
1558
+ "--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)",
1559
+ "--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)"
1560
+ },
1561
+ children: [/* @__PURE__ */ (0, A.jsx)(Yn, { children: r }), /* @__PURE__ */ (0, A.jsx)(qn, {
1562
+ scope: n,
1563
+ isInside: !0,
1564
+ children: /* @__PURE__ */ (0, A.jsx)(P, {
1565
+ id: c.contentId,
1566
+ role: "tooltip",
1567
+ children: i || r
1568
+ })
1569
+ })]
1570
+ })
1571
+ });
1572
+ });
1573
+ Gn.displayName = Wn;
1574
+ var Zn = "TooltipArrow", Qn = x.forwardRef((e, t) => {
1575
+ let { __scopeTooltip: n, ...r } = e, i = Dn(n);
1576
+ return Jn(Zn, n).isInside ? null : /* @__PURE__ */ (0, A.jsx)(wn, {
1577
+ ...i,
1578
+ ...r,
1579
+ ref: t
1580
+ });
1581
+ });
1582
+ Qn.displayName = Zn;
1583
+ function $n(e, t) {
1584
+ let n = Math.abs(t.top - e.y), r = Math.abs(t.bottom - e.y), i = Math.abs(t.right - e.x), a = Math.abs(t.left - e.x);
1585
+ switch (Math.min(n, r, i, a)) {
1586
+ case a: return "left";
1587
+ case i: return "right";
1588
+ case n: return "top";
1589
+ case r: return "bottom";
1590
+ default: throw Error("unreachable");
1591
+ }
1592
+ }
1593
+ function er(e, t, n = 5) {
1594
+ let r = [];
1595
+ switch (t) {
1596
+ case "top":
1597
+ r.push({
1598
+ x: e.x - n,
1599
+ y: e.y + n
1600
+ }, {
1601
+ x: e.x + n,
1602
+ y: e.y + n
1603
+ });
1604
+ break;
1605
+ case "bottom":
1606
+ r.push({
1607
+ x: e.x - n,
1608
+ y: e.y - n
1609
+ }, {
1610
+ x: e.x + n,
1611
+ y: e.y - n
1612
+ });
1613
+ break;
1614
+ case "left":
1615
+ r.push({
1616
+ x: e.x + n,
1617
+ y: e.y - n
1618
+ }, {
1619
+ x: e.x + n,
1620
+ y: e.y + n
1621
+ });
1622
+ break;
1623
+ case "right": r.push({
1624
+ x: e.x - n,
1625
+ y: e.y - n
1626
+ }, {
1627
+ x: e.x - n,
1628
+ y: e.y + n
1629
+ });
1630
+ }
1631
+ return r;
1632
+ }
1633
+ function tr(e) {
1634
+ let { top: t, right: n, bottom: r, left: i } = e;
1635
+ return [
1636
+ {
1637
+ x: i,
1638
+ y: t
1639
+ },
1640
+ {
1641
+ x: n,
1642
+ y: t
1643
+ },
1644
+ {
1645
+ x: n,
1646
+ y: r
1647
+ },
1648
+ {
1649
+ x: i,
1650
+ y: r
1651
+ }
1652
+ ];
1653
+ }
1654
+ function nr(e, t) {
1655
+ let { x: n, y: r } = e, i = !1;
1656
+ for (let e = 0, a = t.length - 1; e < t.length; a = e++) {
1657
+ let o = t[e], s = t[a], c = o.x, l = o.y, u = s.x, d = s.y;
1658
+ l > r != d > r && n < (u - c) * (r - l) / (d - l) + c && (i = !i);
1659
+ }
1660
+ return i;
1661
+ }
1662
+ function rr(e) {
1663
+ let t = e.slice();
1664
+ return t.sort((e, t) => e.x < t.x ? -1 : e.x > t.x ? 1 : e.y < t.y ? -1 : +(e.y > t.y)), ir(t);
1665
+ }
1666
+ function ir(e) {
1667
+ if (e.length <= 1) return e.slice();
1668
+ let t = [];
1669
+ for (let n = 0; n < e.length; n++) {
1670
+ let r = e[n];
1671
+ for (; t.length >= 2;) {
1672
+ let e = t[t.length - 1], n = t[t.length - 2];
1673
+ if ((e.x - n.x) * (r.y - n.y) >= (e.y - n.y) * (r.x - n.x)) t.pop();
1674
+ else break;
1675
+ }
1676
+ t.push(r);
1677
+ }
1678
+ t.pop();
1679
+ let n = [];
1680
+ for (let t = e.length - 1; t >= 0; t--) {
1681
+ let r = e[t];
1682
+ for (; n.length >= 2;) {
1683
+ let e = n[n.length - 1], t = n[n.length - 2];
1684
+ if ((e.x - t.x) * (r.y - t.y) >= (e.y - t.y) * (r.x - t.x)) n.pop();
1685
+ else break;
1686
+ }
1687
+ n.push(r);
1688
+ }
1689
+ return n.pop(), t.length === 1 && n.length === 1 && t[0].x === n[0].x && t[0].y === n[0].y ? t : t.concat(n);
1690
+ }
1691
+ var ar = Nn, or = Ln, sr = zn, cr = Un, lr = Gn, ur = a(), dr = (e) => {
1692
+ let t = (0, ur.c)(6), n, r;
1693
+ t[0] === e ? (n = t[1], r = t[2]) : ({delayDuration: r, ...n} = e, t[0] = e, t[1] = n, t[2] = r);
1694
+ let i = r === void 0 ? 400 : r, a;
1695
+ return t[3] !== i || t[4] !== n ? (a = /* @__PURE__ */ (0, A.jsx)(ar, {
1696
+ delayDuration: i,
1697
+ ...n
1698
+ }), t[3] = i, t[4] = n, t[5] = a) : a = t[5], a;
1699
+ }, fr = p(cr), pr = or, mr = f(lr), hr = sr, gr = x.forwardRef((e, t) => {
1700
+ let r = (0, ur.c)(11), i, a, o;
1701
+ r[0] === e ? (i = r[1], a = r[2], o = r[3]) : ({className: i, sideOffset: o, ...a} = e, r[0] = e, r[1] = i, r[2] = a, r[3] = o);
1702
+ let s = o === void 0 ? 4 : o, c;
1703
+ r[4] === i ? c = r[5] : (c = n("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-xs data-[side=bottom]:slide-in-from-top-1 data-[side=left]:slide-in-from-right-1 data-[side=right]:slide-in-from-left-1 data-[side=top]:slide-in-from-bottom-1", i), r[4] = i, r[5] = c);
1704
+ let u;
1705
+ return r[6] !== a || r[7] !== t || r[8] !== s || r[9] !== c ? (u = /* @__PURE__ */ (0, A.jsx)(l, { children: /* @__PURE__ */ (0, A.jsx)(mr, {
1706
+ ref: t,
1707
+ sideOffset: s,
1708
+ className: c,
1709
+ ...a
1710
+ }) }), r[6] = a, r[7] = t, r[8] = s, r[9] = c, r[10] = u) : u = r[10], u;
1711
+ });
1712
+ gr.displayName = lr.displayName;
1713
+ var _r = (e) => {
1714
+ let t = (0, ur.c)(22), n, r, i, a, o, s, c, l;
1715
+ t[0] === e ? (n = t[1], r = t[2], i = t[3], a = t[4], o = t[5], s = t[6], c = t[7], l = t[8]) : ({content: i, children: r, usePortal: s, asChild: c, tabIndex: l, side: o, align: n, ...a} = e, t[0] = e, t[1] = n, t[2] = r, t[3] = i, t[4] = a, t[5] = o, t[6] = s, t[7] = c, t[8] = l);
1716
+ let u = s === void 0 || s, d = c === void 0 || c;
1717
+ if (i == null || i === "") return r;
1718
+ let f;
1719
+ t[9] !== d || t[10] !== r || t[11] !== l ? (f = /* @__PURE__ */ (0, A.jsx)(hr, {
1720
+ asChild: d,
1721
+ tabIndex: l,
1722
+ children: r
1723
+ }), t[9] = d, t[10] = r, t[11] = l, t[12] = f) : f = t[12];
1724
+ let p;
1725
+ t[13] !== n || t[14] !== i || t[15] !== o || t[16] !== u ? (p = u ? /* @__PURE__ */ (0, A.jsx)(fr, { children: /* @__PURE__ */ (0, A.jsx)(gr, {
1726
+ side: o,
1727
+ align: n,
1728
+ children: i
1729
+ }) }) : /* @__PURE__ */ (0, A.jsx)(gr, {
1730
+ side: o,
1731
+ align: n,
1732
+ children: i
1733
+ }), t[13] = n, t[14] = i, t[15] = o, t[16] = u, t[17] = p) : p = t[17];
1734
+ let m;
1735
+ return t[18] !== a || t[19] !== f || t[20] !== p ? (m = /* @__PURE__ */ (0, A.jsxs)(pr, {
1736
+ disableHoverableContent: !0,
1737
+ ...a,
1738
+ children: [f, p]
1739
+ }), t[18] = a, t[19] = f, t[20] = p, t[21] = m) : m = t[21], m;
1740
+ };
1741
+ //#endregion
1742
+ export { pr as a, wn as c, an as d, te as f, O as g, N as h, dr as i, Cn as l, j as m, gr as n, hr as o, P as p, fr as r, Sn as s, _r as t, xn as u };