@marimo-team/islands 0.24.3-dev9 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/dist/{ConnectedDataExplorerComponent-C9OF_75w.js → ConnectedDataExplorerComponent-KVhjDMSe.js} +1066 -1066
  2. package/dist/ErrorBoundary-DnNkbB_U.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-DElzk_hh.js +138 -0
  46. package/dist/{common-Cv-4hMa0.js → common-B4-ih9IA.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-CRH6JQPE.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-cQcMqpEP.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-DYOxfSzI.js} +2143 -1910
  105. package/dist/{glide-utils-NShAPPtn.js → glide-utils-B3rUT5PI.js} +15 -15
  106. package/dist/globals-BOoLHa7X.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-DZp5bEmI.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-C9h2Lubu.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
@@ -1,1360 +0,0 @@
1
- import { a as e } from "./rolldown-runtime-Cb76FRpK.js";
2
- import { p as t } from "./button-CKBkqR9J.js";
3
- import { t as n } from "./react-DMWcHin-.js";
4
- import { t as r } from "./react-dom-C94wmq5w.js";
5
- import { t as i } from "./jsx-runtime-CpoKNRgu.js";
6
- import { Bc as a, Jc as o, Wc as s, qc as c } from "./schemas-DzK6U94N.js";
7
- //#region ../node_modules/.pnpm/lucide-react@0.563.0_react@19.2.4/node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
8
- var l = /* @__PURE__ */ e(n()), u = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), d = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), f = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), p = (e) => {
9
- let t = f(e);
10
- return t.charAt(0).toUpperCase() + t.slice(1);
11
- }, m = {
12
- xmlns: "http://www.w3.org/2000/svg",
13
- width: 24,
14
- height: 24,
15
- viewBox: "0 0 24 24",
16
- fill: "none",
17
- stroke: "currentColor",
18
- strokeWidth: 2,
19
- strokeLinecap: "round",
20
- strokeLinejoin: "round"
21
- }, h = (e) => {
22
- for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
23
- return !1;
24
- }, g = (0, l.forwardRef)(({ color: e = "currentColor", size: t = 24, strokeWidth: n = 2, absoluteStrokeWidth: r, className: i = "", children: a, iconNode: o, ...s }, c) => (0, l.createElement)("svg", {
25
- ref: c,
26
- ...m,
27
- width: t,
28
- height: t,
29
- stroke: e,
30
- strokeWidth: r ? Number(n) * 24 / Number(t) : n,
31
- className: u("lucide", i),
32
- ...!a && !h(s) && { "aria-hidden": "true" },
33
- ...s
34
- }, [...o.map(([e, t]) => (0, l.createElement)(e, t)), ...Array.isArray(a) ? a : [a]])), _ = (e, t) => {
35
- let n = (0, l.forwardRef)(({ className: n, ...r }, i) => (0, l.createElement)(g, {
36
- ref: i,
37
- iconNode: t,
38
- className: u(`lucide-${d(p(e))}`, `lucide-${e}`, n),
39
- ...r
40
- }));
41
- return n.displayName = p(e), n;
42
- }, v = i(), y = Object.freeze({
43
- position: "absolute",
44
- border: 0,
45
- width: 1,
46
- height: 1,
47
- padding: 0,
48
- margin: -1,
49
- overflow: "hidden",
50
- clip: "rect(0, 0, 0, 0)",
51
- whiteSpace: "nowrap",
52
- wordWrap: "normal"
53
- }), b = "VisuallyHidden", x = l.forwardRef((e, t) => /* @__PURE__ */ (0, v.jsx)(o.span, {
54
- ...e,
55
- ref: t,
56
- style: {
57
- ...y,
58
- ...e.style
59
- }
60
- }));
61
- x.displayName = b;
62
- var S = x, C = /* @__PURE__ */ e(r(), 1);
63
- function w(e) {
64
- let [t, n] = l.useState(void 0);
65
- return s(() => {
66
- if (e) {
67
- n({
68
- width: e.offsetWidth,
69
- height: e.offsetHeight
70
- });
71
- let t = new ResizeObserver((t) => {
72
- if (!Array.isArray(t) || !t.length) return;
73
- let r = t[0], i, a;
74
- if ("borderBoxSize" in r) {
75
- let e = r.borderBoxSize, t = Array.isArray(e) ? e[0] : e;
76
- i = t.inlineSize, a = t.blockSize;
77
- } else i = e.offsetWidth, a = e.offsetHeight;
78
- n({
79
- width: i,
80
- height: a
81
- });
82
- });
83
- return t.observe(e, { box: "border-box" }), () => t.unobserve(e);
84
- }
85
- n(void 0);
86
- }, [e]), t;
87
- }
88
- //#endregion
89
- //#region ../node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
90
- var T = [
91
- "top",
92
- "right",
93
- "bottom",
94
- "left"
95
- ], E = Math.min, D = Math.max, O = Math.round, k = Math.floor, A = (e) => ({
96
- x: e,
97
- y: e
98
- }), j = {
99
- left: "right",
100
- right: "left",
101
- bottom: "top",
102
- top: "bottom"
103
- }, M = {
104
- start: "end",
105
- end: "start"
106
- };
107
- function N(e, t, n) {
108
- return D(e, E(t, n));
109
- }
110
- function P(e, t) {
111
- return typeof e == "function" ? e(t) : e;
112
- }
113
- function F(e) {
114
- return e.split("-")[0];
115
- }
116
- function I(e) {
117
- return e.split("-")[1];
118
- }
119
- function L(e) {
120
- return e === "x" ? "y" : "x";
121
- }
122
- function R(e) {
123
- return e === "y" ? "height" : "width";
124
- }
125
- var ee = /*#__PURE__*/ new Set(["top", "bottom"]);
126
- function z(e) {
127
- return ee.has(F(e)) ? "y" : "x";
128
- }
129
- function B(e) {
130
- return L(z(e));
131
- }
132
- function te(e, t, n) {
133
- n === void 0 && (n = !1);
134
- let r = I(e), i = B(e), a = R(i), o = i === "x" ? r === (n ? "end" : "start") ? "right" : "left" : r === "start" ? "bottom" : "top";
135
- return t.reference[a] > t.floating[a] && (o = le(o)), [o, le(o)];
136
- }
137
- function ne(e) {
138
- let t = le(e);
139
- return [
140
- V(e),
141
- t,
142
- V(t)
143
- ];
144
- }
145
- function V(e) {
146
- return e.replace(/start|end/g, (e) => M[e]);
147
- }
148
- var re = ["left", "right"], ie = ["right", "left"], ae = ["top", "bottom"], oe = ["bottom", "top"];
149
- function se(e, t, n) {
150
- switch (e) {
151
- case "top":
152
- case "bottom": return n ? t ? ie : re : t ? re : ie;
153
- case "left":
154
- case "right": return t ? ae : oe;
155
- default: return [];
156
- }
157
- }
158
- function ce(e, t, n, r) {
159
- let i = I(e), a = se(F(e), n === "start", r);
160
- return i && (a = a.map((e) => e + "-" + i), t && (a = a.concat(a.map(V)))), a;
161
- }
162
- function le(e) {
163
- return e.replace(/left|right|bottom|top/g, (e) => j[e]);
164
- }
165
- function ue(e) {
166
- return {
167
- top: 0,
168
- right: 0,
169
- bottom: 0,
170
- left: 0,
171
- ...e
172
- };
173
- }
174
- function de(e) {
175
- return typeof e == "number" ? {
176
- top: e,
177
- right: e,
178
- bottom: e,
179
- left: e
180
- } : ue(e);
181
- }
182
- function fe(e) {
183
- let { x: t, y: n, width: r, height: i } = e;
184
- return {
185
- width: r,
186
- height: i,
187
- top: n,
188
- left: t,
189
- right: t + r,
190
- bottom: n + i,
191
- x: t,
192
- y: n
193
- };
194
- }
195
- //#endregion
196
- //#region ../node_modules/.pnpm/@floating-ui+core@1.7.2/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
197
- function pe(e, t, n) {
198
- let { reference: r, floating: i } = e, a = z(t), o = B(t), s = R(o), c = F(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;
199
- switch (c) {
200
- case "top":
201
- p = {
202
- x: u,
203
- y: r.y - i.height
204
- };
205
- break;
206
- case "bottom":
207
- p = {
208
- x: u,
209
- y: r.y + r.height
210
- };
211
- break;
212
- case "right":
213
- p = {
214
- x: r.x + r.width,
215
- y: d
216
- };
217
- break;
218
- case "left":
219
- p = {
220
- x: r.x - i.width,
221
- y: d
222
- };
223
- break;
224
- default: p = {
225
- x: r.x,
226
- y: r.y
227
- };
228
- }
229
- switch (I(t)) {
230
- case "start":
231
- p[o] -= f * (n && l ? -1 : 1);
232
- break;
233
- case "end": p[o] += f * (n && l ? -1 : 1);
234
- }
235
- return p;
236
- }
237
- var me = async (e, t, n) => {
238
- 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({
239
- reference: e,
240
- floating: t,
241
- strategy: i
242
- }), { x: u, y: d } = pe(l, r, c), f = r, p = {}, m = 0;
243
- for (let n = 0; n < s.length; n++) {
244
- let { name: a, fn: h } = s[n], { x: g, y: _, data: v, reset: y } = await h({
245
- x: u,
246
- y: d,
247
- initialPlacement: r,
248
- placement: f,
249
- strategy: i,
250
- middlewareData: p,
251
- rects: l,
252
- platform: o,
253
- elements: {
254
- reference: e,
255
- floating: t
256
- }
257
- });
258
- u = g ?? u, d = _ ?? d, p = {
259
- ...p,
260
- [a]: {
261
- ...p[a],
262
- ...v
263
- }
264
- }, y && m <= 50 && (m++, typeof y == "object" && (y.placement && (f = y.placement), y.rects && (l = y.rects === !0 ? await o.getElementRects({
265
- reference: e,
266
- floating: t,
267
- strategy: i
268
- }) : y.rects), {x: u, y: d} = pe(l, f, c)), n = -1);
269
- }
270
- return {
271
- x: u,
272
- y: d,
273
- placement: f,
274
- strategy: i,
275
- middlewareData: p
276
- };
277
- };
278
- async function H(e, t) {
279
- t === void 0 && (t = {});
280
- 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 } = P(t, e), p = de(f), m = o[d ? u === "floating" ? "reference" : "floating" : u], h = fe(await i.getClippingRect({
281
- element: await (i.isElement == null ? void 0 : i.isElement(m)) ?? !0 ? m : m.contextElement || await (i.getDocumentElement == null ? void 0 : i.getDocumentElement(o.floating)),
282
- boundary: c,
283
- rootBoundary: l,
284
- strategy: s
285
- })), g = u === "floating" ? {
286
- x: n,
287
- y: r,
288
- width: a.floating.width,
289
- height: a.floating.height
290
- } : 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(_)) || {
291
- x: 1,
292
- y: 1
293
- }, y = fe(i.convertOffsetParentRelativeRectToViewportRelativeRect ? await i.convertOffsetParentRelativeRectToViewportRelativeRect({
294
- elements: o,
295
- rect: g,
296
- offsetParent: _,
297
- strategy: s
298
- }) : g);
299
- return {
300
- top: (h.top - y.top + p.top) / v.y,
301
- bottom: (y.bottom - h.bottom + p.bottom) / v.y,
302
- left: (h.left - y.left + p.left) / v.x,
303
- right: (y.right - h.right + p.right) / v.x
304
- };
305
- }
306
- var he = (e) => ({
307
- name: "arrow",
308
- options: e,
309
- async fn(t) {
310
- let { x: n, y: r, placement: i, rects: a, platform: o, elements: s, middlewareData: c } = t, { element: l, padding: u = 0 } = P(e, t) || {};
311
- if (l == null) return {};
312
- let d = de(u), f = {
313
- x: n,
314
- y: r
315
- }, p = B(i), m = R(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;
316
- (!C || !await (o.isElement == null ? void 0 : o.isElement(S))) && (C = s.floating[y] || a.floating[m]);
317
- let w = b / 2 - x / 2, T = C / 2 - h[m] / 2 - 1, D = E(d[_], T), O = E(d[v], T), k = D, A = C - h[m] - O, j = C / 2 - h[m] / 2 + w, M = N(k, j, A), F = !c.arrow && I(i) != null && j !== M && a.reference[m] / 2 - (j < k ? D : O) - h[m] / 2 < 0, L = F ? j < k ? j - k : j - A : 0;
318
- return {
319
- [p]: f[p] + L,
320
- data: {
321
- [p]: M,
322
- centerOffset: j - M - L,
323
- ...F && { alignmentOffset: L }
324
- },
325
- reset: F
326
- };
327
- }
328
- }), ge = function(e) {
329
- return e === void 0 && (e = {}), {
330
- name: "flip",
331
- options: e,
332
- async fn(t) {
333
- var n;
334
- 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 } = P(e, t);
335
- if ((n = i.arrow) != null && n.alignmentOffset) return {};
336
- let g = F(r), _ = z(o), v = F(o) === o, y = await (s.isRTL == null ? void 0 : s.isRTL(c.floating)), b = d || (v || !m ? [le(o)] : ne(o)), x = p !== "none";
337
- !d && x && b.push(...ce(o, m, p, y));
338
- let S = [o, ...b], C = await H(t, h), w = [], T = i.flip?.overflows || [];
339
- if (l && w.push(C[g]), u) {
340
- let e = te(r, a, y);
341
- w.push(C[e[0]], C[e[1]]);
342
- }
343
- if (T = [...T, {
344
- placement: r,
345
- overflows: w
346
- }], !w.every((e) => e <= 0)) {
347
- let e = (i.flip?.index || 0) + 1, t = S[e];
348
- if (t && (u !== "alignment" || _ === z(t) || T.every((e) => e.overflows[0] > 0 && z(e.placement) === _))) return {
349
- data: {
350
- index: e,
351
- overflows: T
352
- },
353
- reset: { placement: t }
354
- };
355
- let n = T.filter((e) => e.overflows[0] <= 0).sort((e, t) => e.overflows[1] - t.overflows[1])[0]?.placement;
356
- if (!n) switch (f) {
357
- case "bestFit": {
358
- let e = T.filter((e) => {
359
- if (x) {
360
- let t = z(e.placement);
361
- return t === _ || t === "y";
362
- }
363
- return !0;
364
- }).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];
365
- e && (n = e);
366
- break;
367
- }
368
- case "initialPlacement": n = o;
369
- }
370
- if (r !== n) return { reset: { placement: n } };
371
- }
372
- return {};
373
- }
374
- };
375
- };
376
- function _e(e, t) {
377
- return {
378
- top: e.top - t.height,
379
- right: e.right - t.width,
380
- bottom: e.bottom - t.height,
381
- left: e.left - t.width
382
- };
383
- }
384
- function ve(e) {
385
- return T.some((t) => e[t] >= 0);
386
- }
387
- var ye = function(e) {
388
- return e === void 0 && (e = {}), {
389
- name: "hide",
390
- options: e,
391
- async fn(t) {
392
- let { rects: n } = t, { strategy: r = "referenceHidden", ...i } = P(e, t);
393
- switch (r) {
394
- case "referenceHidden": {
395
- let e = _e(await H(t, {
396
- ...i,
397
- elementContext: "reference"
398
- }), n.reference);
399
- return { data: {
400
- referenceHiddenOffsets: e,
401
- referenceHidden: ve(e)
402
- } };
403
- }
404
- case "escaped": {
405
- let e = _e(await H(t, {
406
- ...i,
407
- altBoundary: !0
408
- }), n.floating);
409
- return { data: {
410
- escapedOffsets: e,
411
- escaped: ve(e)
412
- } };
413
- }
414
- default: return {};
415
- }
416
- }
417
- };
418
- }, be = /*#__PURE__*/ new Set(["left", "top"]);
419
- async function xe(e, t) {
420
- let { placement: n, platform: r, elements: i } = e, a = await (r.isRTL == null ? void 0 : r.isRTL(i.floating)), o = F(n), s = I(n), c = z(n) === "y", l = be.has(o) ? -1 : 1, u = a && c ? -1 : 1, d = P(t, e), { mainAxis: f, crossAxis: p, alignmentAxis: m } = typeof d == "number" ? {
421
- mainAxis: d,
422
- crossAxis: 0,
423
- alignmentAxis: null
424
- } : {
425
- mainAxis: d.mainAxis || 0,
426
- crossAxis: d.crossAxis || 0,
427
- alignmentAxis: d.alignmentAxis
428
- };
429
- return s && typeof m == "number" && (p = s === "end" ? m * -1 : m), c ? {
430
- x: p * u,
431
- y: f * l
432
- } : {
433
- x: f * l,
434
- y: p * u
435
- };
436
- }
437
- var Se = function(e) {
438
- return e === void 0 && (e = 0), {
439
- name: "offset",
440
- options: e,
441
- async fn(t) {
442
- var n;
443
- let { x: r, y: i, placement: a, middlewareData: o } = t, s = await xe(t, e);
444
- return a === o.offset?.placement && (n = o.arrow) != null && n.alignmentOffset ? {} : {
445
- x: r + s.x,
446
- y: i + s.y,
447
- data: {
448
- ...s,
449
- placement: a
450
- }
451
- };
452
- }
453
- };
454
- }, Ce = function(e) {
455
- return e === void 0 && (e = {}), {
456
- name: "shift",
457
- options: e,
458
- async fn(t) {
459
- let { x: n, y: r, placement: i } = t, { mainAxis: a = !0, crossAxis: o = !1, limiter: s = { fn: (e) => {
460
- let { x: t, y: n } = e;
461
- return {
462
- x: t,
463
- y: n
464
- };
465
- } }, ...c } = P(e, t), l = {
466
- x: n,
467
- y: r
468
- }, u = await H(t, c), d = z(F(i)), f = L(d), p = l[f], m = l[d];
469
- if (a) {
470
- let e = f === "y" ? "top" : "left", t = f === "y" ? "bottom" : "right", n = p + u[e], r = p - u[t];
471
- p = N(n, p, r);
472
- }
473
- if (o) {
474
- let e = d === "y" ? "top" : "left", t = d === "y" ? "bottom" : "right", n = m + u[e], r = m - u[t];
475
- m = N(n, m, r);
476
- }
477
- let h = s.fn({
478
- ...t,
479
- [f]: p,
480
- [d]: m
481
- });
482
- return {
483
- ...h,
484
- data: {
485
- x: h.x - n,
486
- y: h.y - r,
487
- enabled: {
488
- [f]: a,
489
- [d]: o
490
- }
491
- }
492
- };
493
- }
494
- };
495
- }, we = function(e) {
496
- return e === void 0 && (e = {}), {
497
- options: e,
498
- fn(t) {
499
- let { x: n, y: r, placement: i, rects: a, middlewareData: o } = t, { offset: s = 0, mainAxis: c = !0, crossAxis: l = !0 } = P(e, t), u = {
500
- x: n,
501
- y: r
502
- }, d = z(i), f = L(d), p = u[f], m = u[d], h = P(s, t), g = typeof h == "number" ? {
503
- mainAxis: h,
504
- crossAxis: 0
505
- } : {
506
- mainAxis: 0,
507
- crossAxis: 0,
508
- ...h
509
- };
510
- if (c) {
511
- let e = f === "y" ? "height" : "width", t = a.reference[f] - a.floating[e] + g.mainAxis, n = a.reference[f] + a.reference[e] - g.mainAxis;
512
- p < t ? p = t : p > n && (p = n);
513
- }
514
- if (l) {
515
- let e = f === "y" ? "width" : "height", t = be.has(F(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);
516
- m < n ? m = n : m > r && (m = r);
517
- }
518
- return {
519
- [f]: p,
520
- [d]: m
521
- };
522
- }
523
- };
524
- }, Te = function(e) {
525
- return e === void 0 && (e = {}), {
526
- name: "size",
527
- options: e,
528
- async fn(t) {
529
- var n, r;
530
- let { placement: i, rects: a, platform: o, elements: s } = t, { apply: c = () => {}, ...l } = P(e, t), u = await H(t, l), d = F(i), f = I(i), p = z(i) === "y", { width: m, height: h } = a.floating, g, _;
531
- 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");
532
- let v = h - u.top - u.bottom, y = m - u.left - u.right, b = E(h - u[g], v), x = E(m - u[_], y), S = !t.middlewareData.shift, C = b, w = x;
533
- if ((n = t.middlewareData.shift) != null && n.enabled.x && (w = y), (r = t.middlewareData.shift) != null && r.enabled.y && (C = v), S && !f) {
534
- let e = D(u.left, 0), t = D(u.right, 0), n = D(u.top, 0), r = D(u.bottom, 0);
535
- p ? w = m - 2 * (e !== 0 || t !== 0 ? e + t : D(u.left, u.right)) : C = h - 2 * (n !== 0 || r !== 0 ? n + r : D(u.top, u.bottom));
536
- }
537
- await c({
538
- ...t,
539
- availableWidth: w,
540
- availableHeight: C
541
- });
542
- let T = await o.getDimensions(s.floating);
543
- return m !== T.width || h !== T.height ? { reset: { rects: !0 } } : {};
544
- }
545
- };
546
- };
547
- //#endregion
548
- //#region ../node_modules/.pnpm/@floating-ui+utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
549
- function Ee() {
550
- return typeof window < "u";
551
- }
552
- function U(e) {
553
- return De(e) ? (e.nodeName || "").toLowerCase() : "#document";
554
- }
555
- function W(e) {
556
- var t;
557
- return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
558
- }
559
- function G(e) {
560
- return ((De(e) ? e.ownerDocument : e.document) || window.document)?.documentElement;
561
- }
562
- function De(e) {
563
- return Ee() ? e instanceof Node || e instanceof W(e).Node : !1;
564
- }
565
- function K(e) {
566
- return Ee() ? e instanceof Element || e instanceof W(e).Element : !1;
567
- }
568
- function q(e) {
569
- return Ee() ? e instanceof HTMLElement || e instanceof W(e).HTMLElement : !1;
570
- }
571
- function Oe(e) {
572
- return !Ee() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof W(e).ShadowRoot;
573
- }
574
- var ke = /*#__PURE__*/ new Set(["inline", "contents"]);
575
- function J(e) {
576
- let { overflow: t, overflowX: n, overflowY: r, display: i } = X(e);
577
- return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !ke.has(i);
578
- }
579
- var Ae = /*#__PURE__*/ new Set([
580
- "table",
581
- "td",
582
- "th"
583
- ]);
584
- function je(e) {
585
- return Ae.has(U(e));
586
- }
587
- var Me = [":popover-open", ":modal"];
588
- function Ne(e) {
589
- return Me.some((t) => {
590
- try {
591
- return e.matches(t);
592
- } catch {
593
- return !1;
594
- }
595
- });
596
- }
597
- var Pe = [
598
- "transform",
599
- "translate",
600
- "scale",
601
- "rotate",
602
- "perspective"
603
- ], Fe = [
604
- "transform",
605
- "translate",
606
- "scale",
607
- "rotate",
608
- "perspective",
609
- "filter"
610
- ], Ie = [
611
- "paint",
612
- "layout",
613
- "strict",
614
- "content"
615
- ];
616
- function Le(e) {
617
- let t = ze(), n = K(e) ? X(e) : e;
618
- return Pe.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) || Fe.some((e) => (n.willChange || "").includes(e)) || Ie.some((e) => (n.contain || "").includes(e));
619
- }
620
- function Re(e) {
621
- let t = Z(e);
622
- for (; q(t) && !Y(t);) {
623
- if (Le(t)) return t;
624
- if (Ne(t)) return null;
625
- t = Z(t);
626
- }
627
- return null;
628
- }
629
- function ze() {
630
- return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
631
- }
632
- var Be = /*#__PURE__*/ new Set([
633
- "html",
634
- "body",
635
- "#document"
636
- ]);
637
- function Y(e) {
638
- return Be.has(U(e));
639
- }
640
- function X(e) {
641
- return W(e).getComputedStyle(e);
642
- }
643
- function Ve(e) {
644
- return K(e) ? {
645
- scrollLeft: e.scrollLeft,
646
- scrollTop: e.scrollTop
647
- } : {
648
- scrollLeft: e.scrollX,
649
- scrollTop: e.scrollY
650
- };
651
- }
652
- function Z(e) {
653
- if (U(e) === "html") return e;
654
- let t = e.assignedSlot || e.parentNode || Oe(e) && e.host || G(e);
655
- return Oe(t) ? t.host : t;
656
- }
657
- function He(e) {
658
- let t = Z(e);
659
- return Y(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : q(t) && J(t) ? t : He(t);
660
- }
661
- function Ue(e, t, n) {
662
- t === void 0 && (t = []), n === void 0 && (n = !0);
663
- let r = He(e), i = r === e.ownerDocument?.body, a = W(r);
664
- if (i) {
665
- let e = We(a);
666
- return t.concat(a, a.visualViewport || [], J(r) ? r : [], e && n ? Ue(e) : []);
667
- }
668
- return t.concat(r, Ue(r, [], n));
669
- }
670
- function We(e) {
671
- return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
672
- }
673
- //#endregion
674
- //#region ../node_modules/.pnpm/@floating-ui+dom@1.7.2/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
675
- function Ge(e) {
676
- let t = X(e), n = parseFloat(t.width) || 0, r = parseFloat(t.height) || 0, i = q(e), a = i ? e.offsetWidth : n, o = i ? e.offsetHeight : r, s = O(n) !== a || O(r) !== o;
677
- return s && (n = a, r = o), {
678
- width: n,
679
- height: r,
680
- $: s
681
- };
682
- }
683
- function Ke(e) {
684
- return K(e) ? e : e.contextElement;
685
- }
686
- function Q(e) {
687
- let t = Ke(e);
688
- if (!q(t)) return A(1);
689
- let n = t.getBoundingClientRect(), { width: r, height: i, $: a } = Ge(t), o = (a ? O(n.width) : n.width) / r, s = (a ? O(n.height) : n.height) / i;
690
- return (!o || !Number.isFinite(o)) && (o = 1), (!s || !Number.isFinite(s)) && (s = 1), {
691
- x: o,
692
- y: s
693
- };
694
- }
695
- var qe = /*#__PURE__*/ A(0);
696
- function Je(e) {
697
- let t = W(e);
698
- return !ze() || !t.visualViewport ? qe : {
699
- x: t.visualViewport.offsetLeft,
700
- y: t.visualViewport.offsetTop
701
- };
702
- }
703
- function Ye(e, t, n) {
704
- return t === void 0 && (t = !1), !n || t && n !== W(e) ? !1 : t;
705
- }
706
- function $(e, t, n, r) {
707
- t === void 0 && (t = !1), n === void 0 && (n = !1);
708
- let i = e.getBoundingClientRect(), a = Ke(e), o = A(1);
709
- t && (r ? K(r) && (o = Q(r)) : o = Q(e));
710
- let s = Ye(a, n, r) ? Je(a) : A(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;
711
- if (a) {
712
- let e = W(a), t = r && K(r) ? W(r) : r, n = e, i = We(n);
713
- for (; i && r && t !== n;) {
714
- 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;
715
- c *= e.x, l *= e.y, u *= e.x, d *= e.y, c += a, l += o, n = W(i), i = We(n);
716
- }
717
- }
718
- return fe({
719
- width: u,
720
- height: d,
721
- x: c,
722
- y: l
723
- });
724
- }
725
- function Xe(e, t) {
726
- let n = Ve(e).scrollLeft;
727
- return t ? t.left + n : $(G(e)).left + n;
728
- }
729
- function Ze(e, t, n) {
730
- n === void 0 && (n = !1);
731
- let r = e.getBoundingClientRect();
732
- return {
733
- x: r.left + t.scrollLeft - (n ? 0 : Xe(e, r)),
734
- y: r.top + t.scrollTop
735
- };
736
- }
737
- function Qe(e) {
738
- let { elements: t, rect: n, offsetParent: r, strategy: i } = e, a = i === "fixed", o = G(r), s = t ? Ne(t.floating) : !1;
739
- if (r === o || s && a) return n;
740
- let c = {
741
- scrollLeft: 0,
742
- scrollTop: 0
743
- }, l = A(1), u = A(0), d = q(r);
744
- if ((d || !d && !a) && ((U(r) !== "body" || J(o)) && (c = Ve(r)), q(r))) {
745
- let e = $(r);
746
- l = Q(r), u.x = e.x + r.clientLeft, u.y = e.y + r.clientTop;
747
- }
748
- let f = o && !d && !a ? Ze(o, c, !0) : A(0);
749
- return {
750
- width: n.width * l.x,
751
- height: n.height * l.y,
752
- x: n.x * l.x - c.scrollLeft * l.x + u.x + f.x,
753
- y: n.y * l.y - c.scrollTop * l.y + u.y + f.y
754
- };
755
- }
756
- function $e(e) {
757
- return Array.from(e.getClientRects());
758
- }
759
- function et(e) {
760
- let t = G(e), n = Ve(e), r = e.ownerDocument.body, i = D(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth), a = D(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight), o = -n.scrollLeft + Xe(e), s = -n.scrollTop;
761
- return X(r).direction === "rtl" && (o += D(t.clientWidth, r.clientWidth) - i), {
762
- width: i,
763
- height: a,
764
- x: o,
765
- y: s
766
- };
767
- }
768
- function tt(e, t) {
769
- let n = W(e), r = G(e), i = n.visualViewport, a = r.clientWidth, o = r.clientHeight, s = 0, c = 0;
770
- if (i) {
771
- a = i.width, o = i.height;
772
- let e = ze();
773
- (!e || e && t === "fixed") && (s = i.offsetLeft, c = i.offsetTop);
774
- }
775
- return {
776
- width: a,
777
- height: o,
778
- x: s,
779
- y: c
780
- };
781
- }
782
- var nt = /*#__PURE__*/ new Set(["absolute", "fixed"]);
783
- function rt(e, t) {
784
- let n = $(e, !0, t === "fixed"), r = n.top + e.clientTop, i = n.left + e.clientLeft, a = q(e) ? Q(e) : A(1);
785
- return {
786
- width: e.clientWidth * a.x,
787
- height: e.clientHeight * a.y,
788
- x: i * a.x,
789
- y: r * a.y
790
- };
791
- }
792
- function it(e, t, n) {
793
- let r;
794
- if (t === "viewport") r = tt(e, n);
795
- else if (t === "document") r = et(G(e));
796
- else if (K(t)) r = rt(t, n);
797
- else {
798
- let n = Je(e);
799
- r = {
800
- x: t.x - n.x,
801
- y: t.y - n.y,
802
- width: t.width,
803
- height: t.height
804
- };
805
- }
806
- return fe(r);
807
- }
808
- function at(e, t) {
809
- let n = Z(e);
810
- return n === t || !K(n) || Y(n) ? !1 : X(n).position === "fixed" || at(n, t);
811
- }
812
- function ot(e, t) {
813
- let n = t.get(e);
814
- if (n) return n;
815
- let r = Ue(e, [], !1).filter((e) => K(e) && U(e) !== "body"), i = null, a = X(e).position === "fixed", o = a ? Z(e) : e;
816
- for (; K(o) && !Y(o);) {
817
- let t = X(o), n = Le(o);
818
- !n && t.position === "fixed" && (i = null), (a ? !n && !i : !n && t.position === "static" && i && nt.has(i.position) || J(o) && !n && at(e, o)) ? r = r.filter((e) => e !== o) : i = t, o = Z(o);
819
- }
820
- return t.set(e, r), r;
821
- }
822
- function st(e) {
823
- let { element: t, boundary: n, rootBoundary: r, strategy: i } = e, a = [...n === "clippingAncestors" ? Ne(t) ? [] : ot(t, this._c) : [].concat(n), r], o = a[0], s = a.reduce((e, n) => {
824
- let r = it(t, n, i);
825
- return e.top = D(r.top, e.top), e.right = E(r.right, e.right), e.bottom = E(r.bottom, e.bottom), e.left = D(r.left, e.left), e;
826
- }, it(t, o, i));
827
- return {
828
- width: s.right - s.left,
829
- height: s.bottom - s.top,
830
- x: s.left,
831
- y: s.top
832
- };
833
- }
834
- function ct(e) {
835
- let { width: t, height: n } = Ge(e);
836
- return {
837
- width: t,
838
- height: n
839
- };
840
- }
841
- function lt(e, t, n) {
842
- let r = q(t), i = G(t), a = n === "fixed", o = $(e, !0, a, t), s = {
843
- scrollLeft: 0,
844
- scrollTop: 0
845
- }, c = A(0);
846
- function l() {
847
- c.x = Xe(i);
848
- }
849
- if (r || !r && !a) {
850
- if ((U(t) !== "body" || J(i)) && (s = Ve(t)), r) {
851
- let e = $(t, !0, a, t);
852
- c.x = e.x + t.clientLeft, c.y = e.y + t.clientTop;
853
- } else i && l();
854
- }
855
- a && !r && i && l();
856
- let u = i && !r && !a ? Ze(i, s) : A(0);
857
- return {
858
- x: o.left + s.scrollLeft - c.x - u.x,
859
- y: o.top + s.scrollTop - c.y - u.y,
860
- width: o.width,
861
- height: o.height
862
- };
863
- }
864
- function ut(e) {
865
- return X(e).position === "static";
866
- }
867
- function dt(e, t) {
868
- if (!q(e) || X(e).position === "fixed") return null;
869
- if (t) return t(e);
870
- let n = e.offsetParent;
871
- return G(e) === n && (n = n.ownerDocument.body), n;
872
- }
873
- function ft(e, t) {
874
- let n = W(e);
875
- if (Ne(e)) return n;
876
- if (!q(e)) {
877
- let t = Z(e);
878
- for (; t && !Y(t);) {
879
- if (K(t) && !ut(t)) return t;
880
- t = Z(t);
881
- }
882
- return n;
883
- }
884
- let r = dt(e, t);
885
- for (; r && je(r) && ut(r);) r = dt(r, t);
886
- return r && Y(r) && ut(r) && !Le(r) ? n : r || Re(e) || n;
887
- }
888
- var pt = async function(e) {
889
- let t = this.getOffsetParent || ft, n = this.getDimensions, r = await n(e.floating);
890
- return {
891
- reference: lt(e.reference, await t(e.floating), e.strategy),
892
- floating: {
893
- x: 0,
894
- y: 0,
895
- width: r.width,
896
- height: r.height
897
- }
898
- };
899
- };
900
- function mt(e) {
901
- return X(e).direction === "rtl";
902
- }
903
- var ht = {
904
- convertOffsetParentRelativeRectToViewportRelativeRect: Qe,
905
- getDocumentElement: G,
906
- getClippingRect: st,
907
- getOffsetParent: ft,
908
- getElementRects: pt,
909
- getClientRects: $e,
910
- getDimensions: ct,
911
- getScale: Q,
912
- isElement: K,
913
- isRTL: mt
914
- };
915
- function gt(e, t) {
916
- return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
917
- }
918
- function _t(e, t) {
919
- let n = null, r, i = G(e);
920
- function a() {
921
- var e;
922
- clearTimeout(r), (e = n) == null || e.disconnect(), n = null;
923
- }
924
- function o(s, c) {
925
- s === void 0 && (s = !1), c === void 0 && (c = 1), a();
926
- let l = e.getBoundingClientRect(), { left: u, top: d, width: f, height: p } = l;
927
- if (s || t(), !f || !p) return;
928
- let m = k(d), h = k(i.clientWidth - (u + f)), g = k(i.clientHeight - (d + p)), _ = k(u), v = {
929
- rootMargin: -m + "px " + -h + "px " + -g + "px " + -_ + "px",
930
- threshold: D(0, E(1, c)) || 1
931
- }, y = !0;
932
- function b(t) {
933
- let n = t[0].intersectionRatio;
934
- if (n !== c) {
935
- if (!y) return o();
936
- n ? o(!1, n) : r = setTimeout(() => {
937
- o(!1, 1e-7);
938
- }, 1e3);
939
- }
940
- n === 1 && !gt(l, e.getBoundingClientRect()) && o(), y = !1;
941
- }
942
- try {
943
- n = new IntersectionObserver(b, {
944
- ...v,
945
- root: i.ownerDocument
946
- });
947
- } catch {
948
- n = new IntersectionObserver(b, v);
949
- }
950
- n.observe(e);
951
- }
952
- return o(!0), a;
953
- }
954
- function vt(e, t, n, r) {
955
- r === void 0 && (r = {});
956
- let { ancestorScroll: i = !0, ancestorResize: a = !0, elementResize: o = typeof ResizeObserver == "function", layoutShift: s = typeof IntersectionObserver == "function", animationFrame: c = !1 } = r, l = Ke(e), u = i || a ? [...l ? Ue(l) : [], ...Ue(t)] : [];
957
- u.forEach((e) => {
958
- i && e.addEventListener("scroll", n, { passive: !0 }), a && e.addEventListener("resize", n);
959
- });
960
- let d = l && s ? _t(l, n) : null, f = -1, p = null;
961
- o && (p = new ResizeObserver((e) => {
962
- let [r] = e;
963
- r && r.target === l && p && (p.unobserve(t), cancelAnimationFrame(f), f = requestAnimationFrame(() => {
964
- var e;
965
- (e = p) == null || e.observe(t);
966
- })), n();
967
- }), l && !c && p.observe(l), p.observe(t));
968
- let m, h = c ? $(e) : null;
969
- c && g();
970
- function g() {
971
- let t = $(e);
972
- h && !gt(h, t) && n(), h = t, m = requestAnimationFrame(g);
973
- }
974
- return n(), () => {
975
- var e;
976
- u.forEach((e) => {
977
- i && e.removeEventListener("scroll", n), a && e.removeEventListener("resize", n);
978
- }), d?.(), (e = p) == null || e.disconnect(), p = null, c && cancelAnimationFrame(m);
979
- };
980
- }
981
- var yt = Se, bt = Ce, xt = ge, St = Te, Ct = ye, wt = he, Tt = we, Et = (e, t, n) => {
982
- let r = /* @__PURE__ */ new Map(), i = {
983
- platform: ht,
984
- ...n
985
- }, a = {
986
- ...i.platform,
987
- _c: r
988
- };
989
- return me(e, t, {
990
- ...i,
991
- platform: a
992
- });
993
- }, Dt = typeof document < "u" ? l.useLayoutEffect : function() {};
994
- function Ot(e, t) {
995
- if (e === t) return !0;
996
- if (typeof e != typeof t) return !1;
997
- if (typeof e == "function" && e.toString() === t.toString()) return !0;
998
- let n, r, i;
999
- if (e && t && typeof e == "object") {
1000
- if (Array.isArray(e)) {
1001
- if (n = e.length, n !== t.length) return !1;
1002
- for (r = n; r-- !== 0;) if (!Ot(e[r], t[r])) return !1;
1003
- return !0;
1004
- }
1005
- if (i = Object.keys(e), n = i.length, n !== Object.keys(t).length) return !1;
1006
- for (r = n; r-- !== 0;) if (!{}.hasOwnProperty.call(t, i[r])) return !1;
1007
- for (r = n; r-- !== 0;) {
1008
- let n = i[r];
1009
- if (!(n === "_owner" && e.$$typeof) && !Ot(e[n], t[n])) return !1;
1010
- }
1011
- return !0;
1012
- }
1013
- return e !== e && t !== t;
1014
- }
1015
- function kt(e) {
1016
- return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
1017
- }
1018
- function At(e, t) {
1019
- let n = kt(e);
1020
- return Math.round(t * n) / n;
1021
- }
1022
- function jt(e) {
1023
- let t = l.useRef(e);
1024
- return Dt(() => {
1025
- t.current = e;
1026
- }), t;
1027
- }
1028
- function Mt(e) {
1029
- e === void 0 && (e = {});
1030
- let { placement: t = "bottom", strategy: n = "absolute", middleware: r = [], platform: i, elements: { reference: a, floating: o } = {}, transform: s = !0, whileElementsMounted: c, open: u } = e, [d, f] = l.useState({
1031
- x: 0,
1032
- y: 0,
1033
- strategy: n,
1034
- placement: t,
1035
- middlewareData: {},
1036
- isPositioned: !1
1037
- }), [p, m] = l.useState(r);
1038
- Ot(p, r) || m(r);
1039
- let [h, g] = l.useState(null), [_, v] = l.useState(null), y = l.useCallback((e) => {
1040
- e !== w.current && (w.current = e, g(e));
1041
- }, []), b = l.useCallback((e) => {
1042
- e !== T.current && (T.current = e, v(e));
1043
- }, []), x = a || h, S = o || _, w = l.useRef(null), T = l.useRef(null), E = l.useRef(d), D = c != null, O = jt(c), k = jt(i), A = jt(u), j = l.useCallback(() => {
1044
- if (!w.current || !T.current) return;
1045
- let e = {
1046
- placement: t,
1047
- strategy: n,
1048
- middleware: p
1049
- };
1050
- k.current && (e.platform = k.current), Et(w.current, T.current, e).then((e) => {
1051
- let t = {
1052
- ...e,
1053
- isPositioned: A.current !== !1
1054
- };
1055
- M.current && !Ot(E.current, t) && (E.current = t, C.flushSync(() => {
1056
- f(t);
1057
- }));
1058
- });
1059
- }, [
1060
- p,
1061
- t,
1062
- n,
1063
- k,
1064
- A
1065
- ]);
1066
- Dt(() => {
1067
- u === !1 && E.current.isPositioned && (E.current.isPositioned = !1, f((e) => ({
1068
- ...e,
1069
- isPositioned: !1
1070
- })));
1071
- }, [u]);
1072
- let M = l.useRef(!1);
1073
- Dt(() => (M.current = !0, () => {
1074
- M.current = !1;
1075
- }), []), Dt(() => {
1076
- if (x && (w.current = x), S && (T.current = S), x && S) {
1077
- if (O.current) return O.current(x, S, j);
1078
- j();
1079
- }
1080
- }, [
1081
- x,
1082
- S,
1083
- j,
1084
- O,
1085
- D
1086
- ]);
1087
- let N = l.useMemo(() => ({
1088
- reference: w,
1089
- floating: T,
1090
- setReference: y,
1091
- setFloating: b
1092
- }), [y, b]), P = l.useMemo(() => ({
1093
- reference: x,
1094
- floating: S
1095
- }), [x, S]), F = l.useMemo(() => {
1096
- let e = {
1097
- position: n,
1098
- left: 0,
1099
- top: 0
1100
- };
1101
- if (!P.floating) return e;
1102
- let t = At(P.floating, d.x), r = At(P.floating, d.y);
1103
- return s ? {
1104
- ...e,
1105
- transform: "translate(" + t + "px, " + r + "px)",
1106
- ...kt(P.floating) >= 1.5 && { willChange: "transform" }
1107
- } : {
1108
- position: n,
1109
- left: t,
1110
- top: r
1111
- };
1112
- }, [
1113
- n,
1114
- s,
1115
- P.floating,
1116
- d.x,
1117
- d.y
1118
- ]);
1119
- return l.useMemo(() => ({
1120
- ...d,
1121
- update: j,
1122
- refs: N,
1123
- elements: P,
1124
- floatingStyles: F
1125
- }), [
1126
- d,
1127
- j,
1128
- N,
1129
- P,
1130
- F
1131
- ]);
1132
- }
1133
- var Nt = (e) => {
1134
- function t(e) {
1135
- return {}.hasOwnProperty.call(e, "current");
1136
- }
1137
- return {
1138
- name: "arrow",
1139
- options: e,
1140
- fn(n) {
1141
- let { element: r, padding: i } = typeof e == "function" ? e(n) : e;
1142
- return r && t(r) ? r.current == null ? {} : wt({
1143
- element: r.current,
1144
- padding: i
1145
- }).fn(n) : r ? wt({
1146
- element: r,
1147
- padding: i
1148
- }).fn(n) : {};
1149
- }
1150
- };
1151
- }, Pt = (e, t) => ({
1152
- ...yt(e),
1153
- options: [e, t]
1154
- }), Ft = (e, t) => ({
1155
- ...bt(e),
1156
- options: [e, t]
1157
- }), It = (e, t) => ({
1158
- ...Tt(e),
1159
- options: [e, t]
1160
- }), Lt = (e, t) => ({
1161
- ...xt(e),
1162
- options: [e, t]
1163
- }), Rt = (e, t) => ({
1164
- ...St(e),
1165
- options: [e, t]
1166
- }), zt = (e, t) => ({
1167
- ...Ct(e),
1168
- options: [e, t]
1169
- }), Bt = (e, t) => ({
1170
- ...Nt(e),
1171
- options: [e, t]
1172
- }), Vt = "Arrow", Ht = l.forwardRef((e, t) => {
1173
- let { children: n, width: r = 10, height: i = 5, ...a } = e;
1174
- return /* @__PURE__ */ (0, v.jsx)(o.svg, {
1175
- ...a,
1176
- ref: t,
1177
- width: r,
1178
- height: i,
1179
- viewBox: "0 0 30 10",
1180
- preserveAspectRatio: "none",
1181
- children: e.asChild ? n : /* @__PURE__ */ (0, v.jsx)("polygon", { points: "0,0 30,0 15,10" })
1182
- });
1183
- });
1184
- Ht.displayName = Vt;
1185
- var Ut = Ht, Wt = "Popper", [Gt, Kt] = c(Wt), [qt, Jt] = Gt(Wt), Yt = (e) => {
1186
- let { __scopePopper: t, children: n } = e, [r, i] = l.useState(null);
1187
- return /* @__PURE__ */ (0, v.jsx)(qt, {
1188
- scope: t,
1189
- anchor: r,
1190
- onAnchorChange: i,
1191
- children: n
1192
- });
1193
- };
1194
- Yt.displayName = Wt;
1195
- var Xt = "PopperAnchor", Zt = l.forwardRef((e, n) => {
1196
- let { __scopePopper: r, virtualRef: i, ...a } = e, s = Jt(Xt, r), c = l.useRef(null), u = t(n, c), d = l.useRef(null);
1197
- return l.useEffect(() => {
1198
- let e = d.current;
1199
- d.current = i?.current || c.current, e !== d.current && s.onAnchorChange(d.current);
1200
- }), i ? null : /* @__PURE__ */ (0, v.jsx)(o.div, {
1201
- ...a,
1202
- ref: u
1203
- });
1204
- });
1205
- Zt.displayName = Xt;
1206
- var Qt = "PopperContent", [$t, en] = Gt(Qt), tn = l.forwardRef((e, n) => {
1207
- let { __scopePopper: r, side: i = "bottom", sideOffset: c = 0, align: u = "center", alignOffset: d = 0, arrowPadding: f = 0, avoidCollisions: p = !0, collisionBoundary: m = [], collisionPadding: h = 0, sticky: g = "partial", hideWhenDetached: _ = !1, updatePositionStrategy: y = "optimized", onPlaced: b, ...x } = e, S = Jt(Qt, r), [C, T] = l.useState(null), E = t(n, (e) => T(e)), [D, O] = l.useState(null), k = w(D), A = k?.width ?? 0, j = k?.height ?? 0, M = i + (u === "center" ? "" : "-" + u), N = typeof h == "number" ? h : {
1208
- top: 0,
1209
- right: 0,
1210
- bottom: 0,
1211
- left: 0,
1212
- ...h
1213
- }, P = Array.isArray(m) ? m : [m], F = P.length > 0, I = {
1214
- padding: N,
1215
- boundary: P.filter(on),
1216
- altBoundary: F
1217
- }, { refs: L, floatingStyles: R, placement: ee, isPositioned: z, middlewareData: B } = Mt({
1218
- strategy: "fixed",
1219
- placement: M,
1220
- whileElementsMounted: (...e) => vt(...e, { animationFrame: y === "always" }),
1221
- elements: { reference: S.anchor },
1222
- middleware: [
1223
- Pt({
1224
- mainAxis: c + j,
1225
- alignmentAxis: d
1226
- }),
1227
- p && Ft({
1228
- mainAxis: !0,
1229
- crossAxis: !1,
1230
- limiter: g === "partial" ? It() : void 0,
1231
- ...I
1232
- }),
1233
- p && Lt({ ...I }),
1234
- Rt({
1235
- ...I,
1236
- apply: ({ elements: e, rects: t, availableWidth: n, availableHeight: r }) => {
1237
- let { width: i, height: a } = t.reference, o = e.floating.style;
1238
- 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`);
1239
- }
1240
- }),
1241
- D && Bt({
1242
- element: D,
1243
- padding: f
1244
- }),
1245
- sn({
1246
- arrowWidth: A,
1247
- arrowHeight: j
1248
- }),
1249
- _ && zt({
1250
- strategy: "referenceHidden",
1251
- ...I
1252
- })
1253
- ]
1254
- }), [te, ne] = cn(ee), V = a(b);
1255
- s(() => {
1256
- z && V?.();
1257
- }, [z, V]);
1258
- let re = B.arrow?.x, ie = B.arrow?.y, ae = B.arrow?.centerOffset !== 0, [oe, se] = l.useState();
1259
- return s(() => {
1260
- C && se(window.getComputedStyle(C).zIndex);
1261
- }, [C]), /* @__PURE__ */ (0, v.jsx)("div", {
1262
- ref: L.setFloating,
1263
- "data-radix-popper-content-wrapper": "",
1264
- style: {
1265
- ...R,
1266
- transform: z ? R.transform : "translate(0, -200%)",
1267
- minWidth: "max-content",
1268
- zIndex: oe,
1269
- "--radix-popper-transform-origin": [B.transformOrigin?.x, B.transformOrigin?.y].join(" "),
1270
- ...B.hide?.referenceHidden && {
1271
- visibility: "hidden",
1272
- pointerEvents: "none"
1273
- }
1274
- },
1275
- dir: e.dir,
1276
- children: /* @__PURE__ */ (0, v.jsx)($t, {
1277
- scope: r,
1278
- placedSide: te,
1279
- onArrowChange: O,
1280
- arrowX: re,
1281
- arrowY: ie,
1282
- shouldHideArrow: ae,
1283
- children: /* @__PURE__ */ (0, v.jsx)(o.div, {
1284
- "data-side": te,
1285
- "data-align": ne,
1286
- ...x,
1287
- ref: E,
1288
- style: {
1289
- ...x.style,
1290
- animation: z ? void 0 : "none"
1291
- }
1292
- })
1293
- })
1294
- });
1295
- });
1296
- tn.displayName = Qt;
1297
- var nn = "PopperArrow", rn = {
1298
- top: "bottom",
1299
- right: "left",
1300
- bottom: "top",
1301
- left: "right"
1302
- }, an = l.forwardRef(function(e, t) {
1303
- let { __scopePopper: n, ...r } = e, i = en(nn, n), a = rn[i.placedSide];
1304
- return /* @__PURE__ */ (0, v.jsx)("span", {
1305
- ref: i.onArrowChange,
1306
- style: {
1307
- position: "absolute",
1308
- left: i.arrowX,
1309
- top: i.arrowY,
1310
- [a]: 0,
1311
- transformOrigin: {
1312
- top: "",
1313
- right: "0 0",
1314
- bottom: "center 0",
1315
- left: "100% 0"
1316
- }[i.placedSide],
1317
- transform: {
1318
- top: "translateY(100%)",
1319
- right: "translateY(50%) rotate(90deg) translateX(-50%)",
1320
- bottom: "rotate(180deg)",
1321
- left: "translateY(50%) rotate(-90deg) translateX(50%)"
1322
- }[i.placedSide],
1323
- visibility: i.shouldHideArrow ? "hidden" : void 0
1324
- },
1325
- children: /* @__PURE__ */ (0, v.jsx)(Ut, {
1326
- ...r,
1327
- ref: t,
1328
- style: {
1329
- ...r.style,
1330
- display: "block"
1331
- }
1332
- })
1333
- });
1334
- });
1335
- an.displayName = nn;
1336
- function on(e) {
1337
- return e !== null;
1338
- }
1339
- var sn = (e) => ({
1340
- name: "transformOrigin",
1341
- options: e,
1342
- fn(t) {
1343
- 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] = cn(n), u = {
1344
- start: "0%",
1345
- center: "50%",
1346
- end: "100%"
1347
- }[l], d = (i.arrow?.x ?? 0) + o / 2, f = (i.arrow?.y ?? 0) + s / 2, p = "", m = "";
1348
- 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: {
1349
- x: p,
1350
- y: m
1351
- } };
1352
- }
1353
- });
1354
- function cn(e) {
1355
- let [t, n = "center"] = e.split("-");
1356
- return [t, n];
1357
- }
1358
- var ln = Yt, un = Zt, dn = tn, fn = an;
1359
- //#endregion
1360
- export { Kt as a, y as c, ln as i, x as l, fn as n, w as o, dn as r, S as s, un as t, _ as u };