@iress-oss/ids-components 5.20.7 → 5.20.9

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 (438) hide show
  1. package/dist/AutocompleteNoResults-B9WjoXJo.js +10 -0
  2. package/dist/Badge-BqaFutTZ.js +40 -0
  3. package/dist/CheckboxGroup-WLxp9nIX.js +79 -0
  4. package/dist/CheckboxMark.types-CW7xyywE.js +17 -0
  5. package/dist/ClearButton-s0_b3pvJ.js +25 -0
  6. package/dist/ComboboxHiddenInput-DH3V3Dyg.js +27 -0
  7. package/dist/Expander-B3_k6HJq.js +55 -0
  8. package/dist/InputBase-BnBuTYZm.js +48 -0
  9. package/dist/LabelBase-CV1O4V_d.js +51 -0
  10. package/dist/Loading.module-DdUL1FMv.js +16 -0
  11. package/dist/LogoFromSrc-7oPJTvAO.js +50 -0
  12. package/dist/LongLoading-Dw8sUYlh.js +117 -0
  13. package/dist/MenuItem.module-guf-3YyL.js +24 -0
  14. package/dist/Placeholder-C1YrHg4w.js +35 -0
  15. package/dist/Popover.module-6flgSLob.js +10 -0
  16. package/dist/PopoverProvider-DgUOscvy.js +109 -0
  17. package/dist/Progress-BypnLSGF.js +35 -0
  18. package/dist/RadioGroup-DtA0WE3l.js +78 -0
  19. package/dist/SelectControl-D8Y9Up2f.js +28 -0
  20. package/dist/Skeleton-D_iuo6Xw.js +34 -0
  21. package/dist/SkipLink-rElTLeMe.js +15 -0
  22. package/dist/SlideoutProvider-DnaE67W-.js +125 -0
  23. package/dist/SliderTicks-BqTI-XhQ.js +47 -0
  24. package/dist/StartUpLoading-DFAMmjg3.js +68 -0
  25. package/dist/Tab-C08D4jxr.js +68 -0
  26. package/dist/TabSet.module-q8a7ksiF.js +13 -0
  27. package/dist/Table.module-DnaTe51E.js +32 -0
  28. package/dist/Toggle-CF22OY-P.js +66 -0
  29. package/dist/Tooltip-BxM_1Wtq.js +60 -0
  30. package/dist/ValidationBase-A2Ed7iem.js +29 -0
  31. package/dist/ValidationSummary-D6Wa4vOf.js +38 -0
  32. package/dist/chunk-efA98nb6.js +13 -0
  33. package/dist/classnames-BTnCYmAN.js +31 -0
  34. package/dist/components/Alert/Alert.js +2 -11
  35. package/dist/components/Alert/Alert.types.js +8 -8
  36. package/dist/components/Alert/index.js +3 -6
  37. package/dist/components/Autocomplete/Autocomplete.js +2 -45
  38. package/dist/components/Autocomplete/Autocomplete.types.js +0 -1
  39. package/dist/components/Autocomplete/components/AutocompleteInstructions.js +10 -10
  40. package/dist/components/Autocomplete/components/AutocompleteNoResults.js +2 -5
  41. package/dist/components/Autocomplete/hooks/useAutocompleteSearch.js +2 -191
  42. package/dist/components/Autocomplete/index.js +3 -6
  43. package/dist/components/Badge/Badge.js +2 -49
  44. package/dist/components/Badge/Badge.types.js +14 -14
  45. package/dist/components/Badge/index.js +3 -7
  46. package/dist/components/Button/Button.js +2 -10
  47. package/dist/components/Button/Button.types.js +22 -20
  48. package/dist/components/Button/CloseButton/CloseButton.js +2 -7
  49. package/dist/components/Button/CloseButton/CloseButton.types.js +0 -1
  50. package/dist/components/Button/index.js +3 -11
  51. package/dist/components/ButtonGroup/ButtonGroup.js +2 -72
  52. package/dist/components/ButtonGroup/ButtonGroup.types.js +0 -1
  53. package/dist/components/ButtonGroup/ButtonGroupProvider.js +26 -33
  54. package/dist/components/ButtonGroup/hooks/useButtonGroup.js +6 -6
  55. package/dist/components/ButtonGroup/hooks/useIDSButtonGroupItem.js +2 -6
  56. package/dist/components/ButtonGroup/index.js +3 -6
  57. package/dist/components/Card/Card.js +34 -48
  58. package/dist/components/Card/Card.types.js +8 -5
  59. package/dist/components/Card/components/ButtonCard.js +29 -37
  60. package/dist/components/Card/components/LinkCard.js +28 -36
  61. package/dist/components/Card/helpers/composeIDSCard.js +18 -26
  62. package/dist/components/Card/helpers/composeIDSCardSlots.js +47 -32
  63. package/dist/components/Card/index.js +7 -15
  64. package/dist/components/Checkbox/Checkbox.js +2 -15
  65. package/dist/components/Checkbox/Checkbox.types.js +0 -1
  66. package/dist/components/Checkbox/helpers/mapCheckboxGroupOptions.js +12 -19
  67. package/dist/components/Checkbox/index.js +2 -4
  68. package/dist/components/CheckboxGroup/CheckboxGroup.js +2 -99
  69. package/dist/components/CheckboxGroup/CheckboxGroup.types.js +10 -10
  70. package/dist/components/CheckboxGroup/CheckboxGroupContext.js +5 -5
  71. package/dist/components/CheckboxGroup/index.js +3 -7
  72. package/dist/components/CheckboxMark/CheckboxMark.js +29 -40
  73. package/dist/components/CheckboxMark/CheckboxMark.types.js +2 -16
  74. package/dist/components/CheckboxMark/index.js +3 -6
  75. package/dist/components/Col/Col.js +14 -33
  76. package/dist/components/Col/Col.types.js +67 -65
  77. package/dist/components/Col/index.js +3 -12
  78. package/dist/components/Combobox/Combobox.js +2 -48
  79. package/dist/components/Combobox/Combobox.types.js +0 -1
  80. package/dist/components/Combobox/MultiCombobox/MultiCombobox.js +2 -46
  81. package/dist/components/Combobox/MultiCombobox/MultiCombobox.types.js +0 -1
  82. package/dist/components/Combobox/components/ComboboxHiddenInput.js +2 -8
  83. package/dist/components/Combobox/components/ComboboxResults.js +2 -41
  84. package/dist/components/Combobox/components/ComboboxResultsDescriptor.js +2 -40
  85. package/dist/components/Combobox/hooks/useComboboxFlags.js +11 -14
  86. package/dist/components/Combobox/hooks/useComboboxInlineCompletion.js +39 -59
  87. package/dist/components/Combobox/index.js +2 -5
  88. package/dist/components/Container/Container.js +12 -21
  89. package/dist/components/Container/Container.types.js +6 -4
  90. package/dist/components/Container/index.js +3 -6
  91. package/dist/components/Divider/Divider.js +14 -21
  92. package/dist/components/Divider/Divider.types.js +6 -4
  93. package/dist/components/Divider/index.js +2 -5
  94. package/dist/components/Expander/Expander.js +2 -80
  95. package/dist/components/Expander/Expander.types.js +10 -6
  96. package/dist/components/Expander/index.js +3 -7
  97. package/dist/components/Field/Field.js +2 -71
  98. package/dist/components/Field/Field.types.js +0 -1
  99. package/dist/components/Field/FieldGroup/FieldGroup.js +2 -77
  100. package/dist/components/Field/FieldGroup/FieldGroup.types.js +0 -1
  101. package/dist/components/Field/components/FieldAppendToLabel.js +2 -43
  102. package/dist/components/Field/components/FieldLegend.js +9 -6
  103. package/dist/components/Field/helpers/getUniqueItemsByKey.js +4 -8
  104. package/dist/components/Field/index.js +2 -6
  105. package/dist/components/Filter/Filter.js +2 -45
  106. package/dist/components/Filter/Filter.types.js +0 -1
  107. package/dist/components/Filter/components/FilterLabel.js +6 -10
  108. package/dist/components/Filter/components/FilterResetButton.js +2 -39
  109. package/dist/components/Filter/components/FilterSearch.js +2 -39
  110. package/dist/components/Filter/hooks/useFilterFlags.js +15 -24
  111. package/dist/components/Filter/index.js +2 -4
  112. package/dist/components/Form/Form.js +2 -6
  113. package/dist/components/Form/Form.types.js +6 -4
  114. package/dist/components/Form/FormContext.js +5 -7
  115. package/dist/components/Form/FormField/FormField.js +2 -91
  116. package/dist/components/Form/FormField/FormField.types.js +6 -4
  117. package/dist/components/Form/FormField/FormFieldset.js +2 -81
  118. package/dist/components/Form/FormField/helpers/getErrorTypeMessage.js +9 -19
  119. package/dist/components/Form/FormField/helpers/transformCustomRulesToValidateRule.js +23 -33
  120. package/dist/components/Form/HookForm/HookForm.js +2 -12
  121. package/dist/components/Form/components/FormValidationSummary.js +22 -22
  122. package/dist/components/Form/hooks/useNoDefaultValueInForms.js +6 -13
  123. package/dist/components/Form/index.js +4 -13
  124. package/dist/components/HeadingWithDeprecatedFallback/HeadingWithDeprecatedFallback.js +12 -14
  125. package/dist/components/Hide/Hide.js +2 -7
  126. package/dist/components/Hide/Hide.types.js +8 -5
  127. package/dist/components/Hide/helpers/composeHideClasses.js +2 -40
  128. package/dist/components/Hide/index.js +3 -7
  129. package/dist/components/Icon/Icon.js +2 -40
  130. package/dist/components/Icon/Icon.types.js +35 -30
  131. package/dist/components/Icon/index.js +3 -15
  132. package/dist/components/Inline/Inline.js +2 -41
  133. package/dist/components/Inline/Inline.types.js +6 -4
  134. package/dist/components/Inline/index.js +3 -6
  135. package/dist/components/Input/ClearButton/ClearButton.js +2 -20
  136. package/dist/components/Input/Input.js +2 -14
  137. package/dist/components/Input/Input.types.js +15 -15
  138. package/dist/components/Input/InputBase/InputBase.js +2 -9
  139. package/dist/components/Input/InputBase/InputBase.types.js +0 -1
  140. package/dist/components/Input/index.js +3 -7
  141. package/dist/components/InputCurrency/InputCurrency.js +2 -8
  142. package/dist/components/InputCurrency/InputCurrency.types.js +0 -1
  143. package/dist/components/InputCurrency/index.js +2 -4
  144. package/dist/components/Label/Label.js +9 -6
  145. package/dist/components/Label/Label.types.js +0 -1
  146. package/dist/components/Label/LabelBase/LabelBase.js +2 -70
  147. package/dist/components/Label/LabelBase/LabelBase.types.js +0 -1
  148. package/dist/components/Label/index.js +2 -4
  149. package/dist/components/Menu/Menu.js +49 -63
  150. package/dist/components/Menu/Menu.types.js +17 -10
  151. package/dist/components/Menu/MenuDivider/MenuDivider.js +2 -39
  152. package/dist/components/Menu/MenuHeading/MenuHeading.js +2 -8
  153. package/dist/components/Menu/MenuItem/MenuItem.js +2 -11
  154. package/dist/components/Menu/MenuItem/MenuItem.types.js +10 -6
  155. package/dist/components/Menu/MenuItem/hooks/useMenuItemAria.js +11 -16
  156. package/dist/components/Menu/MenuItem/hooks/useMenuItemButtonProps.js +44 -46
  157. package/dist/components/Menu/MenuItem/hooks/useMenuItemComposite.js +17 -14
  158. package/dist/components/Menu/MenuItem/hooks/useMenuItemInteractions.js +53 -64
  159. package/dist/components/Menu/MenuItem/hooks/useMenuItemRole.js +8 -8
  160. package/dist/components/Menu/MenuProvider.js +45 -66
  161. package/dist/components/Menu/MenuText/MenuText.js +2 -40
  162. package/dist/components/Menu/helpers/mapMenuItems.js +2 -47
  163. package/dist/components/Menu/hooks/useMenu.js +6 -6
  164. package/dist/components/Menu/hooks/useMenuAria.js +13 -18
  165. package/dist/components/Menu/hooks/useMenuComposite.js +7 -7
  166. package/dist/components/Menu/hooks/useMenuRole.js +11 -12
  167. package/dist/components/Menu/hooks/useMenuStyles.js +2 -26
  168. package/dist/components/Menu/index.js +10 -29
  169. package/dist/components/Modal/Modal.js +2 -16
  170. package/dist/components/Modal/Modal.types.js +9 -4
  171. package/dist/components/Modal/ModalProvider.js +26 -31
  172. package/dist/components/Modal/hooks/useIDSProvidedModal.js +12 -12
  173. package/dist/components/Modal/hooks/useModal.js +11 -19
  174. package/dist/components/Modal/index.js +5 -11
  175. package/dist/components/Navbar/Navbar.js +2 -13
  176. package/dist/components/Navbar/Navbar.types.js +6 -4
  177. package/dist/components/Navbar/components/HomeLinkContent.js +2 -6
  178. package/dist/components/Navbar/components/LogoFromSrc.js +2 -6
  179. package/dist/components/Navbar/components/NavbarLogo.js +2 -8
  180. package/dist/components/Navbar/index.js +3 -6
  181. package/dist/components/Panel/Panel.js +21 -35
  182. package/dist/components/Panel/Panel.types.js +12 -11
  183. package/dist/components/Panel/index.js +3 -8
  184. package/dist/components/Placeholder/Placeholder.js +2 -42
  185. package/dist/components/Placeholder/Placeholder.types.js +0 -1
  186. package/dist/components/Placeholder/index.js +2 -4
  187. package/dist/components/Popover/InputPopover/InputPopover.js +51 -87
  188. package/dist/components/Popover/InputPopover/InputPopover.types.js +0 -1
  189. package/dist/components/Popover/InputPopover/InputPopoverActivator.js +50 -58
  190. package/dist/components/Popover/InputPopover/InputPopoverProvider.js +86 -107
  191. package/dist/components/Popover/Popover.js +59 -97
  192. package/dist/components/Popover/Popover.types.js +14 -15
  193. package/dist/components/Popover/PopoverProvider.js +2 -15
  194. package/dist/components/Popover/components/NestedPopoverActivator.js +9 -9
  195. package/dist/components/Popover/components/PopoverActivator.js +63 -81
  196. package/dist/components/Popover/components/PopoverContent.js +51 -58
  197. package/dist/components/Popover/helpers/composeFloatingProps.js +42 -33
  198. package/dist/components/Popover/helpers/composePopoverWidth.js +7 -4
  199. package/dist/components/Popover/helpers/handlePopoverTabKey.js +23 -29
  200. package/dist/components/Popover/helpers/hasFocus.js +7 -7
  201. package/dist/components/Popover/helpers/waitUntilTrue.js +11 -11
  202. package/dist/components/Popover/hooks/usePopover.js +6 -6
  203. package/dist/components/Popover/hooks/usePopoverActivatorInteractions.js +23 -32
  204. package/dist/components/Popover/hooks/usePopoverAria.js +12 -17
  205. package/dist/components/Popover/hooks/usePopoverImperativeHandle.js +20 -24
  206. package/dist/components/Popover/hooks/usePopoverItem.js +20 -16
  207. package/dist/components/Popover/hooks/usePopoverNavigation.js +32 -31
  208. package/dist/components/Popover/hooks/usePopoverState.js +21 -28
  209. package/dist/components/Popover/index.js +5 -13
  210. package/dist/components/Progress/Progress.js +2 -48
  211. package/dist/components/Progress/Progress.types.js +0 -1
  212. package/dist/components/Progress/index.js +2 -4
  213. package/dist/components/Provider/Provider.js +2 -38
  214. package/dist/components/Provider/index.js +2 -4
  215. package/dist/components/Radio/Radio.js +2 -11
  216. package/dist/components/Radio/Radio.types.js +0 -1
  217. package/dist/components/Radio/helpers/mapRadioGroupOptions.js +12 -19
  218. package/dist/components/Radio/index.js +2 -4
  219. package/dist/components/RadioGroup/RadioGroup.js +2 -98
  220. package/dist/components/RadioGroup/RadioGroup.types.js +11 -11
  221. package/dist/components/RadioGroup/RadioGroupContext.js +5 -5
  222. package/dist/components/RadioGroup/index.js +3 -8
  223. package/dist/components/Readonly/Readonly.js +2 -43
  224. package/dist/components/Readonly/Readonly.types.js +0 -1
  225. package/dist/components/Readonly/index.js +2 -4
  226. package/dist/components/RichSelect/RichSelect.js +2 -42
  227. package/dist/components/RichSelect/RichSelect.types.js +0 -1
  228. package/dist/components/RichSelect/SelectBody/SelectBody.js +2 -56
  229. package/dist/components/RichSelect/SelectBody/SelectBody.types.js +0 -1
  230. package/dist/components/RichSelect/SelectCreate/SelectCreate.js +2 -63
  231. package/dist/components/RichSelect/SelectCreate/SelectCreate.types.js +0 -1
  232. package/dist/components/RichSelect/SelectHeading/SelectHeading.js +2 -40
  233. package/dist/components/RichSelect/SelectHeading/SelectHeading.types.js +0 -1
  234. package/dist/components/RichSelect/SelectLabel/SelectLabel.js +2 -12
  235. package/dist/components/RichSelect/SelectLabel/SelectLabel.types.js +0 -1
  236. package/dist/components/RichSelect/SelectMenu/SelectMenu.js +2 -44
  237. package/dist/components/RichSelect/SelectMenu/SelectMenu.types.js +0 -1
  238. package/dist/components/RichSelect/SelectMenu/SelectMenuItem.js +2 -39
  239. package/dist/components/RichSelect/SelectSearch/SelectSearch.js +2 -39
  240. package/dist/components/RichSelect/SelectSearch/SelectSearch.types.js +0 -1
  241. package/dist/components/RichSelect/SelectSearchInput/SelectSearchInput.js +2 -8
  242. package/dist/components/RichSelect/SelectSearchInput/SelectSearchInput.types.js +0 -1
  243. package/dist/components/RichSelect/SelectTags/SelectTags.js +2 -45
  244. package/dist/components/RichSelect/SelectTags/SelectTags.types.js +0 -1
  245. package/dist/components/RichSelect/components/SelectActivator.js +2 -7
  246. package/dist/components/RichSelect/components/SelectHiddenInput.js +18 -29
  247. package/dist/components/RichSelect/components/SelectOptions.js +2 -40
  248. package/dist/components/RichSelect/hooks/useRichSelectState.js +15 -17
  249. package/dist/components/RichSelect/index.js +3 -16
  250. package/dist/components/Row/Row.js +2 -41
  251. package/dist/components/Row/Row.types.js +6 -4
  252. package/dist/components/Row/index.js +3 -6
  253. package/dist/components/Select/Select.js +2 -14
  254. package/dist/components/Select/Select.types.js +0 -1
  255. package/dist/components/Select/SelectOption/SelectOption.js +8 -8
  256. package/dist/components/Select/components/SelectControl.js +2 -9
  257. package/dist/components/Select/components/SelectReadonly.js +2 -40
  258. package/dist/components/Select/helpers/mapSelectOptions.js +2 -21
  259. package/dist/components/Select/helpers/nodesToSelectOptions.js +2 -9
  260. package/dist/components/Select/index.js +3 -9
  261. package/dist/components/Skeleton/Skeleton.js +2 -44
  262. package/dist/components/Skeleton/Skeleton.types.js +10 -6
  263. package/dist/components/Skeleton/index.js +3 -7
  264. package/dist/components/SkipLink/SkipLink.js +2 -30
  265. package/dist/components/SkipLink/SkipLink.types.js +0 -1
  266. package/dist/components/SkipLink/index.js +2 -4
  267. package/dist/components/Slideout/Slideout.js +2 -18
  268. package/dist/components/Slideout/Slideout.types.js +14 -14
  269. package/dist/components/Slideout/SlideoutProvider.js +2 -8
  270. package/dist/components/Slideout/components/SlideoutInner.js +2 -8
  271. package/dist/components/Slideout/hooks/useIDSProvidedSlideout.js +12 -12
  272. package/dist/components/Slideout/hooks/useSlideout.js +11 -19
  273. package/dist/components/Slideout/index.js +5 -16
  274. package/dist/components/Slider/Slider.js +2 -12
  275. package/dist/components/Slider/Slider.types.js +0 -1
  276. package/dist/components/Slider/components/SliderTicks.js +2 -10
  277. package/dist/components/Slider/index.js +2 -4
  278. package/dist/components/Spinner/Spinner.js +2 -6
  279. package/dist/components/Spinner/Spinner.types.js +0 -1
  280. package/dist/components/Spinner/index.js +2 -4
  281. package/dist/components/Stack/Stack.js +15 -26
  282. package/dist/components/Stack/Stack.types.js +6 -4
  283. package/dist/components/Stack/index.js +3 -6
  284. package/dist/components/TabSet/Tab/Tab.js +2 -100
  285. package/dist/components/TabSet/Tab/Tab.types.js +0 -1
  286. package/dist/components/TabSet/TabSet.js +37 -58
  287. package/dist/components/TabSet/TabSet.types.js +10 -6
  288. package/dist/components/TabSet/TabSetProvider.js +45 -49
  289. package/dist/components/TabSet/components/TabSetItem.js +24 -44
  290. package/dist/components/TabSet/helpers/mapTabs.js +2 -33
  291. package/dist/components/TabSet/hooks/useTabSetItems.js +5 -5
  292. package/dist/components/TabSet/index.js +21 -11
  293. package/dist/components/Table/Table.js +2 -18
  294. package/dist/components/Table/Table.types.js +22 -22
  295. package/dist/components/Table/TableBody/TableBody.js +2 -125
  296. package/dist/components/Table/TableBody/TableBody.types.js +0 -1
  297. package/dist/components/Table/TableContext.js +9 -9
  298. package/dist/components/Table/TableFormattedValue/TableFormattedValue.js +11 -17
  299. package/dist/components/Table/TableFormattedValue/TableFormattedValue.types.js +0 -1
  300. package/dist/components/Table/TableProvider.js +31 -38
  301. package/dist/components/Table/components/TableBodyCell.js +16 -30
  302. package/dist/components/Table/components/TableEmpty.js +15 -11
  303. package/dist/components/Table/components/TableHeader.js +2 -8
  304. package/dist/components/Table/components/TableHeaderCell.js +2 -8
  305. package/dist/components/Table/components/TableRows.js +29 -48
  306. package/dist/components/Table/components/TableSortButton.js +2 -7
  307. package/dist/components/Table/helpers/composeIDSTableColumnDefs.js +29 -41
  308. package/dist/components/Table/helpers/composeIDSTableInitialSorting.js +6 -9
  309. package/dist/components/Table/helpers/findColumnByKey.js +4 -4
  310. package/dist/components/Table/helpers/getFormatFromValue.js +7 -10
  311. package/dist/components/Table/helpers/hasColumns.js +4 -4
  312. package/dist/components/Table/hooks/useIDSTableColumnSort.js +18 -23
  313. package/dist/components/Table/hooks/useIDSTableColumnStyles.js +21 -23
  314. package/dist/components/Table/hooks/useTable.js +5 -5
  315. package/dist/components/Table/index.js +4 -15
  316. package/dist/components/Tag/Tag.js +2 -8
  317. package/dist/components/Tag/Tag.types.js +0 -1
  318. package/dist/components/Tag/TagInput/TagInput.js +2 -8
  319. package/dist/components/Tag/TagInput/TagInput.types.js +0 -1
  320. package/dist/components/Tag/components/TagListInput/TagListInput.js +2 -8
  321. package/dist/components/Tag/components/TagListInput/TagListInput.types.js +0 -1
  322. package/dist/components/Tag/index.js +2 -5
  323. package/dist/components/Text/Text.js +19 -34
  324. package/dist/components/Text/Text.types.js +18 -18
  325. package/dist/components/Text/index.js +3 -6
  326. package/dist/components/Toaster/Toast/Toast.js +2 -13
  327. package/dist/components/Toaster/Toast/Toast.types.js +12 -9
  328. package/dist/components/Toaster/Toast/ToastAnimated.js +2 -9
  329. package/dist/components/Toaster/Toast/ToastIcon.js +2 -6
  330. package/dist/components/Toaster/Toaster.js +2 -11
  331. package/dist/components/Toaster/Toaster.types.js +23 -25
  332. package/dist/components/Toaster/ToasterProvider.js +2 -7
  333. package/dist/components/Toaster/hooks/useToaster.js +2 -26
  334. package/dist/components/Toaster/index.js +4 -17
  335. package/dist/components/Toggle/Toggle.js +2 -102
  336. package/dist/components/Toggle/Toggle.types.js +10 -10
  337. package/dist/components/Toggle/index.js +3 -7
  338. package/dist/components/Tooltip/Tooltip.js +2 -77
  339. package/dist/components/Tooltip/Tooltip.types.js +0 -1
  340. package/dist/components/Tooltip/index.js +2 -4
  341. package/dist/components/ValidationMessage/ValidationBase/ValidationBase.js +2 -51
  342. package/dist/components/ValidationMessage/ValidationBase/ValidationBase.types.js +0 -1
  343. package/dist/components/ValidationMessage/ValidationLink/ValidationLink.js +15 -21
  344. package/dist/components/ValidationMessage/ValidationLink/ValidationLink.types.js +0 -1
  345. package/dist/components/ValidationMessage/ValidationMessage.js +11 -8
  346. package/dist/components/ValidationMessage/ValidationMessage.types.js +0 -1
  347. package/dist/components/ValidationMessage/ValidationSummary/ValidationSummary.js +2 -69
  348. package/dist/components/ValidationMessage/ValidationSummary/ValidationSummary.types.js +0 -1
  349. package/dist/components/ValidationMessage/index.js +4 -8
  350. package/dist/constants-C4s0aMXs.js +161 -0
  351. package/dist/constants.js +2 -193
  352. package/dist/enums.js +42 -22
  353. package/dist/floating-ui.react-Dj2ev6bJ.js +3098 -0
  354. package/dist/fuzzysort-BZ6Yv-YR.js +377 -0
  355. package/dist/helpers/dom/closestCrossShadow.js +19 -24
  356. package/dist/helpers/dom/domUtils.js +10 -11
  357. package/dist/helpers/dom/focusableElements.js +7 -9
  358. package/dist/helpers/dom/getActiveElement.js +7 -7
  359. package/dist/helpers/dom/hasShadowDom.js +4 -4
  360. package/dist/helpers/form/getFormControlValueAsString.js +4 -4
  361. package/dist/helpers/form/getFormControlValueAsStringIfDefined.js +6 -7
  362. package/dist/helpers/form/getValueAsEvent.js +6 -6
  363. package/dist/helpers/form/isValidFormInputElement.js +4 -4
  364. package/dist/helpers/formatting/capitalizeFirstLetter.js +4 -4
  365. package/dist/helpers/formatting/formatCurrency.js +14 -21
  366. package/dist/helpers/formatting/formatDate.js +16 -22
  367. package/dist/helpers/formatting/formatDateTime.js +49 -54
  368. package/dist/helpers/formatting/formatObjectKey.js +4 -4
  369. package/dist/helpers/formatting/formatPercentage.js +6 -6
  370. package/dist/helpers/formatting/stringReplacer.js +8 -8
  371. package/dist/helpers/formatting/toArray.js +4 -4
  372. package/dist/helpers/formatting/toCSSLengthValue.js +6 -6
  373. package/dist/helpers/label-value/composeLabelValueDescriptor.js +9 -12
  374. package/dist/helpers/label-value/getQueryRangeExclusive.js +10 -13
  375. package/dist/helpers/label-value/getValueFromLabelValues.js +7 -7
  376. package/dist/helpers/label-value/highlightQueryInLabel.js +7 -6
  377. package/dist/helpers/label-value/highlightQueryInLabelValue.js +8 -8
  378. package/dist/helpers/label-value/searchLabelValues.js +12 -11
  379. package/dist/helpers/responsive/getResponsiveLayoutModifiers.js +8 -10
  380. package/dist/helpers/responsive/getResponsivePaddingClasses.js +6 -10
  381. package/dist/helpers/transition/getTransitionDuration.js +5 -7
  382. package/dist/helpers/transition/timeStringToNumber.js +4 -4
  383. package/dist/helpers/utility/generateScopedName.js +8 -9
  384. package/dist/helpers/utility/idsLogger.js +5 -9
  385. package/dist/helpers/utility/propagateTestid.js +4 -4
  386. package/dist/hooks/index.js +5 -11
  387. package/dist/hooks/useAriaRelationship.js +20 -35
  388. package/dist/hooks/useBreakpoint.js +16 -16
  389. package/dist/hooks/useControlledState.js +35 -53
  390. package/dist/hooks/useIdIfNeeded.js +7 -7
  391. package/dist/hooks/useResponsiveProps.js +25 -25
  392. package/dist/index.esm-BCkAygZA.js +169 -0
  393. package/dist/interfaces.js +0 -1
  394. package/dist/lib-CUMSFn3v.js +1415 -0
  395. package/dist/main-CTy1XcUn.js +4604 -0
  396. package/dist/main.js +88 -336
  397. package/dist/patterns/Loading/Loading.js +2 -8
  398. package/dist/patterns/Loading/LoadingSuspense.js +2 -7
  399. package/dist/patterns/Loading/components/ComponentLoading.js +2 -10
  400. package/dist/patterns/Loading/components/DefaultLoading.js +2 -9
  401. package/dist/patterns/Loading/components/LongLoading.js +2 -132
  402. package/dist/patterns/Loading/components/PageLoading.js +2 -14
  403. package/dist/patterns/Loading/components/StartUpLoading.js +2 -107
  404. package/dist/patterns/Loading/components/ValidateLoading.js +2 -9
  405. package/dist/patterns/Loading/hooks/useEstimatedProgressValue.js +25 -25
  406. package/dist/patterns/Loading/hooks/useShouldRenderLoading.js +26 -23
  407. package/dist/patterns/Loading/hooks/useShowIndicator.js +18 -19
  408. package/dist/patterns/Loading/hooks/useSuspenseResource.js +19 -26
  409. package/dist/patterns/Loading/index.js +2 -5
  410. package/dist/style.css +2 -1
  411. package/dist/types.js +0 -1
  412. package/dist/useAutocompleteSearch-CBgqGiKn.js +179 -0
  413. package/dist/useIDSButtonGroupItem-BkzYQzAi.js +21 -0
  414. package/dist/useMenuStyles-cry3mes_.js +20 -0
  415. package/package.json +27 -27
  416. package/dist/AutocompleteNoResults-C17GZMC5.js +0 -12
  417. package/dist/ComboboxHiddenInput-Bcgb791z.js +0 -32
  418. package/dist/FieldAppendToLabel-BitJwDPF.js +0 -77
  419. package/dist/InputBase-B1iM_zGQ.js +0 -56
  420. package/dist/Loading.module-CKBFK8HQ.js +0 -13
  421. package/dist/LoadingSuspense-Dpeukkud.js +0 -5740
  422. package/dist/LogoFromSrc-Bmy4soAb.js +0 -59
  423. package/dist/MenuItem.module-CqRjlcI0.js +0 -24
  424. package/dist/Popover.module-DAzssZjn.js +0 -11
  425. package/dist/PopoverProvider-LcpEvIV2.js +0 -142
  426. package/dist/SelectControl-BwOmdZRG.js +0 -47
  427. package/dist/SlideoutProvider-CQh140HM.js +0 -200
  428. package/dist/SliderTicks-BUkhZPcp.js +0 -74
  429. package/dist/TabSet.module-DO_A1O9o.js +0 -13
  430. package/dist/Table.module-p7T7USNr.js +0 -32
  431. package/dist/_commonjsHelpers-C6fGbg64.js +0 -6
  432. package/dist/floating-ui.react-BoSeAoXU.js +0 -3464
  433. package/dist/fuzzysort-BNka47rs.js +0 -395
  434. package/dist/index-BaVtNOfa.js +0 -1693
  435. package/dist/index-DLnR8XTt.js +0 -47
  436. package/dist/index-cbHCAGLB.js +0 -40
  437. package/dist/index.esm-CL8gh5wr.js +0 -192
  438. package/dist/useIDSButtonGroupItem-B2tN1t3Z.js +0 -29
@@ -1,3464 +0,0 @@
1
- import * as d from "react";
2
- import { useLayoutEffect as Gn } from "react";
3
- import { t as At, i as jn, f as Pr } from "./index.esm-CL8gh5wr.js";
4
- import { jsx as me, jsxs as qn, Fragment as Dr } from "react/jsx-runtime";
5
- import * as nn from "react-dom";
6
- function St() {
7
- return typeof window < "u";
8
- }
9
- function We(e) {
10
- return rn(e) ? (e.nodeName || "").toLowerCase() : "#document";
11
- }
12
- function pe(e) {
13
- var t;
14
- return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
15
- }
16
- function Te(e) {
17
- var t;
18
- return (t = (rn(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
19
- }
20
- function rn(e) {
21
- return St() ? e instanceof Node || e instanceof pe(e).Node : !1;
22
- }
23
- function Y(e) {
24
- return St() ? e instanceof Element || e instanceof pe(e).Element : !1;
25
- }
26
- function ne(e) {
27
- return St() ? e instanceof HTMLElement || e instanceof pe(e).HTMLElement : !1;
28
- }
29
- function Jt(e) {
30
- return !St() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof pe(e).ShadowRoot;
31
- }
32
- const Lr = /* @__PURE__ */ new Set(["inline", "contents"]);
33
- function ut(e) {
34
- const {
35
- overflow: t,
36
- overflowX: n,
37
- overflowY: r,
38
- display: o
39
- } = we(e);
40
- return /auto|scroll|overlay|hidden|clip/.test(t + r + n) && !Lr.has(o);
41
- }
42
- const kr = /* @__PURE__ */ new Set(["table", "td", "th"]);
43
- function Fr(e) {
44
- return kr.has(We(e));
45
- }
46
- const Nr = [":popover-open", ":modal"];
47
- function Mt(e) {
48
- return Nr.some((t) => {
49
- try {
50
- return e.matches(t);
51
- } catch {
52
- return !1;
53
- }
54
- });
55
- }
56
- const _r = ["transform", "translate", "scale", "rotate", "perspective"], Wr = ["transform", "translate", "scale", "rotate", "perspective", "filter"], Vr = ["paint", "layout", "strict", "content"];
57
- function on(e) {
58
- const t = Pt(), n = Y(e) ? we(e) : e;
59
- return _r.some((r) => n[r] ? n[r] !== "none" : !1) || (n.containerType ? n.containerType !== "normal" : !1) || !t && (n.backdropFilter ? n.backdropFilter !== "none" : !1) || !t && (n.filter ? n.filter !== "none" : !1) || Wr.some((r) => (n.willChange || "").includes(r)) || Vr.some((r) => (n.contain || "").includes(r));
60
- }
61
- function Kr(e) {
62
- let t = Pe(e);
63
- for (; ne(t) && !Me(t); ) {
64
- if (on(t))
65
- return t;
66
- if (Mt(t))
67
- return null;
68
- t = Pe(t);
69
- }
70
- return null;
71
- }
72
- function Pt() {
73
- return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
74
- }
75
- const $r = /* @__PURE__ */ new Set(["html", "body", "#document"]);
76
- function Me(e) {
77
- return $r.has(We(e));
78
- }
79
- function we(e) {
80
- return pe(e).getComputedStyle(e);
81
- }
82
- function Dt(e) {
83
- return Y(e) ? {
84
- scrollLeft: e.scrollLeft,
85
- scrollTop: e.scrollTop
86
- } : {
87
- scrollLeft: e.scrollX,
88
- scrollTop: e.scrollY
89
- };
90
- }
91
- function Pe(e) {
92
- if (We(e) === "html")
93
- return e;
94
- const t = (
95
- // Step into the shadow DOM of the parent of a slotted node.
96
- e.assignedSlot || // DOM Element detected.
97
- e.parentNode || // ShadowRoot detected.
98
- Jt(e) && e.host || // Fallback.
99
- Te(e)
100
- );
101
- return Jt(t) ? t.host : t;
102
- }
103
- function Xn(e) {
104
- const t = Pe(e);
105
- return Me(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : ne(t) && ut(t) ? t : Xn(t);
106
- }
107
- function ke(e, t, n) {
108
- var r;
109
- t === void 0 && (t = []), n === void 0 && (n = !0);
110
- const o = Xn(e), s = o === ((r = e.ownerDocument) == null ? void 0 : r.body), i = pe(o);
111
- if (s) {
112
- const c = Qt(i);
113
- return t.concat(i, i.visualViewport || [], ut(o) ? o : [], c && n ? ke(c) : []);
114
- }
115
- return t.concat(o, ke(o, [], n));
116
- }
117
- function Qt(e) {
118
- return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
119
- }
120
- const Br = ["top", "right", "bottom", "left"], pn = ["start", "end"], gn = /* @__PURE__ */ Br.reduce((e, t) => e.concat(t, t + "-" + pn[0], t + "-" + pn[1]), []), Je = Math.min, he = Math.max, xt = Math.round, je = Math.floor, Ee = (e) => ({
121
- x: e,
122
- y: e
123
- }), Hr = {
124
- left: "right",
125
- right: "left",
126
- bottom: "top",
127
- top: "bottom"
128
- }, zr = {
129
- start: "end",
130
- end: "start"
131
- };
132
- function hn(e, t, n) {
133
- return he(e, Je(t, n));
134
- }
135
- function Qe(e, t) {
136
- return typeof e == "function" ? e(t) : e;
137
- }
138
- function Ie(e) {
139
- return e.split("-")[0];
140
- }
141
- function Ce(e) {
142
- return e.split("-")[1];
143
- }
144
- function Yn(e) {
145
- return e === "x" ? "y" : "x";
146
- }
147
- function Jn(e) {
148
- return e === "y" ? "height" : "width";
149
- }
150
- const Ur = /* @__PURE__ */ new Set(["top", "bottom"]);
151
- function Se(e) {
152
- return Ur.has(Ie(e)) ? "y" : "x";
153
- }
154
- function Qn(e) {
155
- return Yn(Se(e));
156
- }
157
- function Zn(e, t, n) {
158
- n === void 0 && (n = !1);
159
- const r = Ce(e), o = Qn(e), s = Jn(o);
160
- let i = o === "x" ? r === (n ? "end" : "start") ? "right" : "left" : r === "start" ? "bottom" : "top";
161
- return t.reference[s] > t.floating[s] && (i = Et(i)), [i, Et(i)];
162
- }
163
- function Gr(e) {
164
- const t = Et(e);
165
- return [Rt(e), t, Rt(t)];
166
- }
167
- function Rt(e) {
168
- return e.replace(/start|end/g, (t) => zr[t]);
169
- }
170
- const vn = ["left", "right"], bn = ["right", "left"], jr = ["top", "bottom"], qr = ["bottom", "top"];
171
- function Xr(e, t, n) {
172
- switch (e) {
173
- case "top":
174
- case "bottom":
175
- return n ? t ? bn : vn : t ? vn : bn;
176
- case "left":
177
- case "right":
178
- return t ? jr : qr;
179
- default:
180
- return [];
181
- }
182
- }
183
- function Yr(e, t, n, r) {
184
- const o = Ce(e);
185
- let s = Xr(Ie(e), n === "start", r);
186
- return o && (s = s.map((i) => i + "-" + o), t && (s = s.concat(s.map(Rt)))), s;
187
- }
188
- function Et(e) {
189
- return e.replace(/left|right|bottom|top/g, (t) => Hr[t]);
190
- }
191
- function Jr(e) {
192
- return {
193
- top: 0,
194
- right: 0,
195
- bottom: 0,
196
- left: 0,
197
- ...e
198
- };
199
- }
200
- function Qr(e) {
201
- return typeof e != "number" ? Jr(e) : {
202
- top: e,
203
- right: e,
204
- bottom: e,
205
- left: e
206
- };
207
- }
208
- function Ct(e) {
209
- const {
210
- x: t,
211
- y: n,
212
- width: r,
213
- height: o
214
- } = e;
215
- return {
216
- width: r,
217
- height: o,
218
- top: n,
219
- left: t,
220
- right: t + r,
221
- bottom: n + o,
222
- x: t,
223
- y: n
224
- };
225
- }
226
- function sn() {
227
- const e = navigator.userAgentData;
228
- return e != null && e.platform ? e.platform : navigator.platform;
229
- }
230
- function er() {
231
- const e = navigator.userAgentData;
232
- return e && Array.isArray(e.brands) ? e.brands.map((t) => {
233
- let {
234
- brand: n,
235
- version: r
236
- } = t;
237
- return n + "/" + r;
238
- }).join(" ") : navigator.userAgent;
239
- }
240
- function tr() {
241
- return /apple/i.test(navigator.vendor);
242
- }
243
- function Zt() {
244
- const e = /android/i;
245
- return e.test(sn()) || e.test(er());
246
- }
247
- function Zr() {
248
- return sn().toLowerCase().startsWith("mac") && !navigator.maxTouchPoints;
249
- }
250
- function nr() {
251
- return er().includes("jsdom/");
252
- }
253
- const yn = "data-floating-ui-focusable", eo = "input:not([type='hidden']):not([disabled]),[contenteditable]:not([contenteditable='false']),textarea:not([disabled])", Wt = "ArrowLeft", Vt = "ArrowRight", to = "ArrowUp", no = "ArrowDown";
254
- function Re(e) {
255
- let t = e.activeElement;
256
- for (; ((n = t) == null || (n = n.shadowRoot) == null ? void 0 : n.activeElement) != null; ) {
257
- var n;
258
- t = t.shadowRoot.activeElement;
259
- }
260
- return t;
261
- }
262
- function ce(e, t) {
263
- if (!e || !t)
264
- return !1;
265
- const n = t.getRootNode == null ? void 0 : t.getRootNode();
266
- if (e.contains(t))
267
- return !0;
268
- if (n && Jt(n)) {
269
- let r = t;
270
- for (; r; ) {
271
- if (e === r)
272
- return !0;
273
- r = r.parentNode || r.host;
274
- }
275
- }
276
- return !1;
277
- }
278
- function Ae(e) {
279
- return "composedPath" in e ? e.composedPath()[0] : e.target;
280
- }
281
- function Kt(e, t) {
282
- if (t == null)
283
- return !1;
284
- if ("composedPath" in e)
285
- return e.composedPath().includes(t);
286
- const n = e;
287
- return n.target != null && t.contains(n.target);
288
- }
289
- function ro(e) {
290
- return e.matches("html,body");
291
- }
292
- function le(e) {
293
- return e?.ownerDocument || document;
294
- }
295
- function cn(e) {
296
- return ne(e) && e.matches(eo);
297
- }
298
- function en(e) {
299
- return e ? e.getAttribute("role") === "combobox" && cn(e) : !1;
300
- }
301
- function oo(e) {
302
- if (!e || nr()) return !0;
303
- try {
304
- return e.matches(":focus-visible");
305
- } catch {
306
- return !0;
307
- }
308
- }
309
- function It(e) {
310
- return e ? e.hasAttribute(yn) ? e : e.querySelector("[" + yn + "]") || e : null;
311
- }
312
- function $e(e, t, n) {
313
- return n === void 0 && (n = !0), e.filter((o) => {
314
- var s;
315
- return o.parentId === t && (!n || ((s = o.context) == null ? void 0 : s.open));
316
- }).flatMap((o) => [o, ...$e(e, o.id, n)]);
317
- }
318
- function io(e, t) {
319
- let n, r = -1;
320
- function o(s, i) {
321
- i > r && (n = s, r = i), $e(e, s).forEach((a) => {
322
- o(a.id, i + 1);
323
- });
324
- }
325
- return o(t, 0), e.find((s) => s.id === n);
326
- }
327
- function wn(e, t) {
328
- var n;
329
- let r = [], o = (n = e.find((s) => s.id === t)) == null ? void 0 : n.parentId;
330
- for (; o; ) {
331
- const s = e.find((i) => i.id === o);
332
- o = s?.parentId, s && (r = r.concat(s));
333
- }
334
- return r;
335
- }
336
- function de(e) {
337
- e.preventDefault(), e.stopPropagation();
338
- }
339
- function so(e) {
340
- return "nativeEvent" in e;
341
- }
342
- function rr(e) {
343
- return e.mozInputSource === 0 && e.isTrusted ? !0 : Zt() && e.pointerType ? e.type === "click" && e.buttons === 1 : e.detail === 0 && !e.pointerType;
344
- }
345
- function or(e) {
346
- return nr() ? !1 : !Zt() && e.width === 0 && e.height === 0 || Zt() && e.width === 1 && e.height === 1 && e.pressure === 0 && e.detail === 0 && e.pointerType === "mouse" || // iOS VoiceOver returns 0.333• for width/height.
347
- e.width < 1 && e.height < 1 && e.pressure === 0 && e.detail === 0 && e.pointerType === "touch";
348
- }
349
- function it(e, t) {
350
- const n = ["mouse", "pen"];
351
- return t || n.push("", void 0), n.includes(e);
352
- }
353
- var co = typeof document < "u", uo = function() {
354
- }, X = co ? Gn : uo;
355
- const lo = {
356
- ...d
357
- };
358
- function ye(e) {
359
- const t = d.useRef(e);
360
- return X(() => {
361
- t.current = e;
362
- }), t;
363
- }
364
- const ao = lo.useInsertionEffect, fo = ao || ((e) => e());
365
- function ie(e) {
366
- const t = d.useRef(() => {
367
- if (process.env.NODE_ENV !== "production")
368
- throw new Error("Cannot call an event handler while rendering.");
369
- });
370
- return fo(() => {
371
- t.current = e;
372
- }), d.useCallback(function() {
373
- for (var n = arguments.length, r = new Array(n), o = 0; o < n; o++)
374
- r[o] = arguments[o];
375
- return t.current == null ? void 0 : t.current(...r);
376
- }, []);
377
- }
378
- function pt(e, t, n) {
379
- return Math.floor(e / t) !== n;
380
- }
381
- function qe(e, t) {
382
- return t < 0 || t >= e.current.length;
383
- }
384
- function yt(e, t) {
385
- return ue(e, {
386
- disabledIndices: t
387
- });
388
- }
389
- function tn(e, t) {
390
- return ue(e, {
391
- decrement: !0,
392
- startingIndex: e.current.length,
393
- disabledIndices: t
394
- });
395
- }
396
- function ue(e, t) {
397
- let {
398
- startingIndex: n = -1,
399
- decrement: r = !1,
400
- disabledIndices: o,
401
- amount: s = 1
402
- } = t === void 0 ? {} : t, i = n;
403
- do
404
- i += r ? -s : s;
405
- while (i >= 0 && i <= e.current.length - 1 && Be(e, i, o));
406
- return i;
407
- }
408
- function ir(e, t) {
409
- let {
410
- event: n,
411
- orientation: r,
412
- loop: o,
413
- rtl: s,
414
- cols: i,
415
- disabledIndices: c,
416
- minIndex: a,
417
- maxIndex: l,
418
- prevIndex: u,
419
- stopEvent: m = !1
420
- } = t, p = u;
421
- if (n.key === to) {
422
- if (m && de(n), u === -1)
423
- p = l;
424
- else if (p = ue(e, {
425
- startingIndex: p,
426
- amount: i,
427
- decrement: !0,
428
- disabledIndices: c
429
- }), o && (u - i < a || p < 0)) {
430
- const f = u % i, v = l % i, g = l - (v - f);
431
- v === f ? p = l : p = v > f ? g : g - i;
432
- }
433
- qe(e, p) && (p = u);
434
- }
435
- if (n.key === no && (m && de(n), u === -1 ? p = a : (p = ue(e, {
436
- startingIndex: u,
437
- amount: i,
438
- disabledIndices: c
439
- }), o && u + i > l && (p = ue(e, {
440
- startingIndex: u % i - i,
441
- amount: i,
442
- disabledIndices: c
443
- }))), qe(e, p) && (p = u)), r === "both") {
444
- const f = je(u / i);
445
- n.key === (s ? Wt : Vt) && (m && de(n), u % i !== i - 1 ? (p = ue(e, {
446
- startingIndex: u,
447
- disabledIndices: c
448
- }), o && pt(p, i, f) && (p = ue(e, {
449
- startingIndex: u - u % i - 1,
450
- disabledIndices: c
451
- }))) : o && (p = ue(e, {
452
- startingIndex: u - u % i - 1,
453
- disabledIndices: c
454
- })), pt(p, i, f) && (p = u)), n.key === (s ? Vt : Wt) && (m && de(n), u % i !== 0 ? (p = ue(e, {
455
- startingIndex: u,
456
- decrement: !0,
457
- disabledIndices: c
458
- }), o && pt(p, i, f) && (p = ue(e, {
459
- startingIndex: u + (i - u % i),
460
- decrement: !0,
461
- disabledIndices: c
462
- }))) : o && (p = ue(e, {
463
- startingIndex: u + (i - u % i),
464
- decrement: !0,
465
- disabledIndices: c
466
- })), pt(p, i, f) && (p = u));
467
- const v = je(l / i) === f;
468
- qe(e, p) && (o && v ? p = n.key === (s ? Vt : Wt) ? l : ue(e, {
469
- startingIndex: u - u % i - 1,
470
- disabledIndices: c
471
- }) : p = u);
472
- }
473
- return p;
474
- }
475
- function sr(e, t, n) {
476
- const r = [];
477
- let o = 0;
478
- return e.forEach((s, i) => {
479
- let {
480
- width: c,
481
- height: a
482
- } = s;
483
- if (c > t && process.env.NODE_ENV !== "production")
484
- throw new Error("[Floating UI]: Invalid grid - item width at index " + i + " is greater than grid columns");
485
- let l = !1;
486
- for (n && (o = 0); !l; ) {
487
- const u = [];
488
- for (let m = 0; m < c; m++)
489
- for (let p = 0; p < a; p++)
490
- u.push(o + m + p * t);
491
- o % t + c <= t && u.every((m) => r[m] == null) ? (u.forEach((m) => {
492
- r[m] = i;
493
- }), l = !0) : o++;
494
- }
495
- }), [...r];
496
- }
497
- function cr(e, t, n, r, o) {
498
- if (e === -1) return -1;
499
- const s = n.indexOf(e), i = t[e];
500
- switch (o) {
501
- case "tl":
502
- return s;
503
- case "tr":
504
- return i ? s + i.width - 1 : s;
505
- case "bl":
506
- return i ? s + (i.height - 1) * r : s;
507
- case "br":
508
- return n.lastIndexOf(e);
509
- }
510
- }
511
- function ur(e, t) {
512
- return t.flatMap((n, r) => e.includes(n) ? [r] : []);
513
- }
514
- function Be(e, t, n) {
515
- if (typeof n == "function")
516
- return n(t);
517
- if (n)
518
- return n.includes(t);
519
- const r = e.current[t];
520
- return r == null || r.hasAttribute("disabled") || r.getAttribute("aria-disabled") === "true";
521
- }
522
- const lt = () => ({
523
- getShadowRoot: !0,
524
- displayCheck: (
525
- // JSDOM does not support the `tabbable` library. To solve this we can
526
- // check if `ResizeObserver` is a real function (not polyfilled), which
527
- // determines if the current environment is JSDOM-like.
528
- typeof ResizeObserver == "function" && ResizeObserver.toString().includes("[native code]") ? "full" : "none"
529
- )
530
- });
531
- function lr(e, t) {
532
- const n = At(e, lt()), r = n.length;
533
- if (r === 0) return;
534
- const o = Re(le(e)), s = n.indexOf(o), i = s === -1 ? t === 1 ? 0 : r - 1 : s + t;
535
- return n[i];
536
- }
537
- function ar(e) {
538
- return lr(le(e).body, 1) || e;
539
- }
540
- function fr(e) {
541
- return lr(le(e).body, -1) || e;
542
- }
543
- function ot(e, t) {
544
- const n = t || e.currentTarget, r = e.relatedTarget;
545
- return !r || !ce(n, r);
546
- }
547
- function mo(e) {
548
- At(e, lt()).forEach((n) => {
549
- n.dataset.tabindex = n.getAttribute("tabindex") || "", n.setAttribute("tabindex", "-1");
550
- });
551
- }
552
- function xn(e) {
553
- e.querySelectorAll("[data-tabindex]").forEach((n) => {
554
- const r = n.dataset.tabindex;
555
- delete n.dataset.tabindex, r ? n.setAttribute("tabindex", r) : n.removeAttribute("tabindex");
556
- });
557
- }
558
- function Rn(e, t, n) {
559
- let {
560
- reference: r,
561
- floating: o
562
- } = e;
563
- const s = Se(t), i = Qn(t), c = Jn(i), a = Ie(t), l = s === "y", u = r.x + r.width / 2 - o.width / 2, m = r.y + r.height / 2 - o.height / 2, p = r[c] / 2 - o[c] / 2;
564
- let f;
565
- switch (a) {
566
- case "top":
567
- f = {
568
- x: u,
569
- y: r.y - o.height
570
- };
571
- break;
572
- case "bottom":
573
- f = {
574
- x: u,
575
- y: r.y + r.height
576
- };
577
- break;
578
- case "right":
579
- f = {
580
- x: r.x + r.width,
581
- y: m
582
- };
583
- break;
584
- case "left":
585
- f = {
586
- x: r.x - o.width,
587
- y: m
588
- };
589
- break;
590
- default:
591
- f = {
592
- x: r.x,
593
- y: r.y
594
- };
595
- }
596
- switch (Ce(t)) {
597
- case "start":
598
- f[i] -= p * (n && l ? -1 : 1);
599
- break;
600
- case "end":
601
- f[i] += p * (n && l ? -1 : 1);
602
- break;
603
- }
604
- return f;
605
- }
606
- const po = async (e, t, n) => {
607
- const {
608
- placement: r = "bottom",
609
- strategy: o = "absolute",
610
- middleware: s = [],
611
- platform: i
612
- } = n, c = s.filter(Boolean), a = await (i.isRTL == null ? void 0 : i.isRTL(t));
613
- let l = await i.getElementRects({
614
- reference: e,
615
- floating: t,
616
- strategy: o
617
- }), {
618
- x: u,
619
- y: m
620
- } = Rn(l, r, a), p = r, f = {}, v = 0;
621
- for (let g = 0; g < c.length; g++) {
622
- const {
623
- name: y,
624
- fn: x
625
- } = c[g], {
626
- x: b,
627
- y: w,
628
- data: C,
629
- reset: M
630
- } = await x({
631
- x: u,
632
- y: m,
633
- initialPlacement: r,
634
- placement: p,
635
- strategy: o,
636
- middlewareData: f,
637
- rects: l,
638
- platform: i,
639
- elements: {
640
- reference: e,
641
- floating: t
642
- }
643
- });
644
- u = b ?? u, m = w ?? m, f = {
645
- ...f,
646
- [y]: {
647
- ...f[y],
648
- ...C
649
- }
650
- }, M && v <= 50 && (v++, typeof M == "object" && (M.placement && (p = M.placement), M.rects && (l = M.rects === !0 ? await i.getElementRects({
651
- reference: e,
652
- floating: t,
653
- strategy: o
654
- }) : M.rects), {
655
- x: u,
656
- y: m
657
- } = Rn(l, p, a)), g = -1);
658
- }
659
- return {
660
- x: u,
661
- y: m,
662
- placement: p,
663
- strategy: o,
664
- middlewareData: f
665
- };
666
- };
667
- async function Lt(e, t) {
668
- var n;
669
- t === void 0 && (t = {});
670
- const {
671
- x: r,
672
- y: o,
673
- platform: s,
674
- rects: i,
675
- elements: c,
676
- strategy: a
677
- } = e, {
678
- boundary: l = "clippingAncestors",
679
- rootBoundary: u = "viewport",
680
- elementContext: m = "floating",
681
- altBoundary: p = !1,
682
- padding: f = 0
683
- } = Qe(t, e), v = Qr(f), y = c[p ? m === "floating" ? "reference" : "floating" : m], x = Ct(await s.getClippingRect({
684
- element: (n = await (s.isElement == null ? void 0 : s.isElement(y))) == null || n ? y : y.contextElement || await (s.getDocumentElement == null ? void 0 : s.getDocumentElement(c.floating)),
685
- boundary: l,
686
- rootBoundary: u,
687
- strategy: a
688
- })), b = m === "floating" ? {
689
- x: r,
690
- y: o,
691
- width: i.floating.width,
692
- height: i.floating.height
693
- } : i.reference, w = await (s.getOffsetParent == null ? void 0 : s.getOffsetParent(c.floating)), C = await (s.isElement == null ? void 0 : s.isElement(w)) ? await (s.getScale == null ? void 0 : s.getScale(w)) || {
694
- x: 1,
695
- y: 1
696
- } : {
697
- x: 1,
698
- y: 1
699
- }, M = Ct(s.convertOffsetParentRelativeRectToViewportRelativeRect ? await s.convertOffsetParentRelativeRectToViewportRelativeRect({
700
- elements: c,
701
- rect: b,
702
- offsetParent: w,
703
- strategy: a
704
- }) : b);
705
- return {
706
- top: (x.top - M.top + v.top) / C.y,
707
- bottom: (M.bottom - x.bottom + v.bottom) / C.y,
708
- left: (x.left - M.left + v.left) / C.x,
709
- right: (M.right - x.right + v.right) / C.x
710
- };
711
- }
712
- function go(e, t, n) {
713
- return (e ? [...n.filter((o) => Ce(o) === e), ...n.filter((o) => Ce(o) !== e)] : n.filter((o) => Ie(o) === o)).filter((o) => e ? Ce(o) === e || (t ? Rt(o) !== o : !1) : !0);
714
- }
715
- const ho = function(e) {
716
- return e === void 0 && (e = {}), {
717
- name: "autoPlacement",
718
- options: e,
719
- async fn(t) {
720
- var n, r, o;
721
- const {
722
- rects: s,
723
- middlewareData: i,
724
- placement: c,
725
- platform: a,
726
- elements: l
727
- } = t, {
728
- crossAxis: u = !1,
729
- alignment: m,
730
- allowedPlacements: p = gn,
731
- autoAlignment: f = !0,
732
- ...v
733
- } = Qe(e, t), g = m !== void 0 || p === gn ? go(m || null, f, p) : p, y = await Lt(t, v), x = ((n = i.autoPlacement) == null ? void 0 : n.index) || 0, b = g[x];
734
- if (b == null)
735
- return {};
736
- const w = Zn(b, s, await (a.isRTL == null ? void 0 : a.isRTL(l.floating)));
737
- if (c !== b)
738
- return {
739
- reset: {
740
- placement: g[0]
741
- }
742
- };
743
- const C = [y[Ie(b)], y[w[0]], y[w[1]]], M = [...((r = i.autoPlacement) == null ? void 0 : r.overflows) || [], {
744
- placement: b,
745
- overflows: C
746
- }], k = g[x + 1];
747
- if (k)
748
- return {
749
- data: {
750
- index: x + 1,
751
- overflows: M
752
- },
753
- reset: {
754
- placement: k
755
- }
756
- };
757
- const N = M.map((L) => {
758
- const _ = Ce(L.placement);
759
- return [L.placement, _ && u ? (
760
- // Check along the mainAxis and main crossAxis side.
761
- L.overflows.slice(0, 2).reduce((G, W) => G + W, 0)
762
- ) : (
763
- // Check only the mainAxis.
764
- L.overflows[0]
765
- ), L.overflows];
766
- }).sort((L, _) => L[1] - _[1]), V = ((o = N.filter((L) => L[2].slice(
767
- 0,
768
- // Aligned placements should not check their opposite crossAxis
769
- // side.
770
- Ce(L[0]) ? 2 : 3
771
- ).every((_) => _ <= 0))[0]) == null ? void 0 : o[0]) || N[0][0];
772
- return V !== c ? {
773
- data: {
774
- index: x + 1,
775
- overflows: M
776
- },
777
- reset: {
778
- placement: V
779
- }
780
- } : {};
781
- }
782
- };
783
- }, vo = function(e) {
784
- return e === void 0 && (e = {}), {
785
- name: "flip",
786
- options: e,
787
- async fn(t) {
788
- var n, r;
789
- const {
790
- placement: o,
791
- middlewareData: s,
792
- rects: i,
793
- initialPlacement: c,
794
- platform: a,
795
- elements: l
796
- } = t, {
797
- mainAxis: u = !0,
798
- crossAxis: m = !0,
799
- fallbackPlacements: p,
800
- fallbackStrategy: f = "bestFit",
801
- fallbackAxisSideDirection: v = "none",
802
- flipAlignment: g = !0,
803
- ...y
804
- } = Qe(e, t);
805
- if ((n = s.arrow) != null && n.alignmentOffset)
806
- return {};
807
- const x = Ie(o), b = Se(c), w = Ie(c) === c, C = await (a.isRTL == null ? void 0 : a.isRTL(l.floating)), M = p || (w || !g ? [Et(c)] : Gr(c)), k = v !== "none";
808
- !p && k && M.push(...Yr(c, g, v, C));
809
- const N = [c, ...M], P = await Lt(t, y), V = [];
810
- let L = ((r = s.flip) == null ? void 0 : r.overflows) || [];
811
- if (u && V.push(P[x]), m) {
812
- const R = Zn(o, i, C);
813
- V.push(P[R[0]], P[R[1]]);
814
- }
815
- if (L = [...L, {
816
- placement: o,
817
- overflows: V
818
- }], !V.every((R) => R <= 0)) {
819
- var _, G;
820
- const R = (((_ = s.flip) == null ? void 0 : _.index) || 0) + 1, E = N[R];
821
- if (E && (!(m === "alignment" ? b !== Se(E) : !1) || // We leave the current main axis only if every placement on that axis
822
- // overflows the main axis.
823
- L.every((h) => Se(h.placement) === b ? h.overflows[0] > 0 : !0)))
824
- return {
825
- data: {
826
- index: R,
827
- overflows: L
828
- },
829
- reset: {
830
- placement: E
831
- }
832
- };
833
- let $ = (G = L.filter((T) => T.overflows[0] <= 0).sort((T, h) => T.overflows[1] - h.overflows[1])[0]) == null ? void 0 : G.placement;
834
- if (!$)
835
- switch (f) {
836
- case "bestFit": {
837
- var W;
838
- const T = (W = L.filter((h) => {
839
- if (k) {
840
- const I = Se(h.placement);
841
- return I === b || // Create a bias to the `y` side axis due to horizontal
842
- // reading directions favoring greater width.
843
- I === "y";
844
- }
845
- return !0;
846
- }).map((h) => [h.placement, h.overflows.filter((I) => I > 0).reduce((I, D) => I + D, 0)]).sort((h, I) => h[1] - I[1])[0]) == null ? void 0 : W[0];
847
- T && ($ = T);
848
- break;
849
- }
850
- case "initialPlacement":
851
- $ = c;
852
- break;
853
- }
854
- if (o !== $)
855
- return {
856
- reset: {
857
- placement: $
858
- }
859
- };
860
- }
861
- return {};
862
- }
863
- };
864
- }, bo = /* @__PURE__ */ new Set(["left", "top"]);
865
- async function yo(e, t) {
866
- const {
867
- placement: n,
868
- platform: r,
869
- elements: o
870
- } = e, s = await (r.isRTL == null ? void 0 : r.isRTL(o.floating)), i = Ie(n), c = Ce(n), a = Se(n) === "y", l = bo.has(i) ? -1 : 1, u = s && a ? -1 : 1, m = Qe(t, e);
871
- let {
872
- mainAxis: p,
873
- crossAxis: f,
874
- alignmentAxis: v
875
- } = typeof m == "number" ? {
876
- mainAxis: m,
877
- crossAxis: 0,
878
- alignmentAxis: null
879
- } : {
880
- mainAxis: m.mainAxis || 0,
881
- crossAxis: m.crossAxis || 0,
882
- alignmentAxis: m.alignmentAxis
883
- };
884
- return c && typeof v == "number" && (f = c === "end" ? v * -1 : v), a ? {
885
- x: f * u,
886
- y: p * l
887
- } : {
888
- x: p * l,
889
- y: f * u
890
- };
891
- }
892
- const wo = function(e) {
893
- return e === void 0 && (e = 0), {
894
- name: "offset",
895
- options: e,
896
- async fn(t) {
897
- var n, r;
898
- const {
899
- x: o,
900
- y: s,
901
- placement: i,
902
- middlewareData: c
903
- } = t, a = await yo(t, e);
904
- return i === ((n = c.offset) == null ? void 0 : n.placement) && (r = c.arrow) != null && r.alignmentOffset ? {} : {
905
- x: o + a.x,
906
- y: s + a.y,
907
- data: {
908
- ...a,
909
- placement: i
910
- }
911
- };
912
- }
913
- };
914
- }, xo = function(e) {
915
- return e === void 0 && (e = {}), {
916
- name: "shift",
917
- options: e,
918
- async fn(t) {
919
- const {
920
- x: n,
921
- y: r,
922
- placement: o
923
- } = t, {
924
- mainAxis: s = !0,
925
- crossAxis: i = !1,
926
- limiter: c = {
927
- fn: (y) => {
928
- let {
929
- x,
930
- y: b
931
- } = y;
932
- return {
933
- x,
934
- y: b
935
- };
936
- }
937
- },
938
- ...a
939
- } = Qe(e, t), l = {
940
- x: n,
941
- y: r
942
- }, u = await Lt(t, a), m = Se(Ie(o)), p = Yn(m);
943
- let f = l[p], v = l[m];
944
- if (s) {
945
- const y = p === "y" ? "top" : "left", x = p === "y" ? "bottom" : "right", b = f + u[y], w = f - u[x];
946
- f = hn(b, f, w);
947
- }
948
- if (i) {
949
- const y = m === "y" ? "top" : "left", x = m === "y" ? "bottom" : "right", b = v + u[y], w = v - u[x];
950
- v = hn(b, v, w);
951
- }
952
- const g = c.fn({
953
- ...t,
954
- [p]: f,
955
- [m]: v
956
- });
957
- return {
958
- ...g,
959
- data: {
960
- x: g.x - n,
961
- y: g.y - r,
962
- enabled: {
963
- [p]: s,
964
- [m]: i
965
- }
966
- }
967
- };
968
- }
969
- };
970
- }, Ro = function(e) {
971
- return e === void 0 && (e = {}), {
972
- name: "size",
973
- options: e,
974
- async fn(t) {
975
- var n, r;
976
- const {
977
- placement: o,
978
- rects: s,
979
- platform: i,
980
- elements: c
981
- } = t, {
982
- apply: a = () => {
983
- },
984
- ...l
985
- } = Qe(e, t), u = await Lt(t, l), m = Ie(o), p = Ce(o), f = Se(o) === "y", {
986
- width: v,
987
- height: g
988
- } = s.floating;
989
- let y, x;
990
- m === "top" || m === "bottom" ? (y = m, x = p === (await (i.isRTL == null ? void 0 : i.isRTL(c.floating)) ? "start" : "end") ? "left" : "right") : (x = m, y = p === "end" ? "top" : "bottom");
991
- const b = g - u.top - u.bottom, w = v - u.left - u.right, C = Je(g - u[y], b), M = Je(v - u[x], w), k = !t.middlewareData.shift;
992
- let N = C, P = M;
993
- if ((n = t.middlewareData.shift) != null && n.enabled.x && (P = w), (r = t.middlewareData.shift) != null && r.enabled.y && (N = b), k && !p) {
994
- const L = he(u.left, 0), _ = he(u.right, 0), G = he(u.top, 0), W = he(u.bottom, 0);
995
- f ? P = v - 2 * (L !== 0 || _ !== 0 ? L + _ : he(u.left, u.right)) : N = g - 2 * (G !== 0 || W !== 0 ? G + W : he(u.top, u.bottom));
996
- }
997
- await a({
998
- ...t,
999
- availableWidth: P,
1000
- availableHeight: N
1001
- });
1002
- const V = await i.getDimensions(c.floating);
1003
- return v !== V.width || g !== V.height ? {
1004
- reset: {
1005
- rects: !0
1006
- }
1007
- } : {};
1008
- }
1009
- };
1010
- };
1011
- function dr(e) {
1012
- const t = we(e);
1013
- let n = parseFloat(t.width) || 0, r = parseFloat(t.height) || 0;
1014
- const o = ne(e), s = o ? e.offsetWidth : n, i = o ? e.offsetHeight : r, c = xt(n) !== s || xt(r) !== i;
1015
- return c && (n = s, r = i), {
1016
- width: n,
1017
- height: r,
1018
- $: c
1019
- };
1020
- }
1021
- function un(e) {
1022
- return Y(e) ? e : e.contextElement;
1023
- }
1024
- function Xe(e) {
1025
- const t = un(e);
1026
- if (!ne(t))
1027
- return Ee(1);
1028
- const n = t.getBoundingClientRect(), {
1029
- width: r,
1030
- height: o,
1031
- $: s
1032
- } = dr(t);
1033
- let i = (s ? xt(n.width) : n.width) / r, c = (s ? xt(n.height) : n.height) / o;
1034
- return (!i || !Number.isFinite(i)) && (i = 1), (!c || !Number.isFinite(c)) && (c = 1), {
1035
- x: i,
1036
- y: c
1037
- };
1038
- }
1039
- const Eo = /* @__PURE__ */ Ee(0);
1040
- function mr(e) {
1041
- const t = pe(e);
1042
- return !Pt() || !t.visualViewport ? Eo : {
1043
- x: t.visualViewport.offsetLeft,
1044
- y: t.visualViewport.offsetTop
1045
- };
1046
- }
1047
- function Co(e, t, n) {
1048
- return t === void 0 && (t = !1), !n || t && n !== pe(e) ? !1 : t;
1049
- }
1050
- function He(e, t, n, r) {
1051
- t === void 0 && (t = !1), n === void 0 && (n = !1);
1052
- const o = e.getBoundingClientRect(), s = un(e);
1053
- let i = Ee(1);
1054
- t && (r ? Y(r) && (i = Xe(r)) : i = Xe(e));
1055
- const c = Co(s, n, r) ? mr(s) : Ee(0);
1056
- let a = (o.left + c.x) / i.x, l = (o.top + c.y) / i.y, u = o.width / i.x, m = o.height / i.y;
1057
- if (s) {
1058
- const p = pe(s), f = r && Y(r) ? pe(r) : r;
1059
- let v = p, g = Qt(v);
1060
- for (; g && r && f !== v; ) {
1061
- const y = Xe(g), x = g.getBoundingClientRect(), b = we(g), w = x.left + (g.clientLeft + parseFloat(b.paddingLeft)) * y.x, C = x.top + (g.clientTop + parseFloat(b.paddingTop)) * y.y;
1062
- a *= y.x, l *= y.y, u *= y.x, m *= y.y, a += w, l += C, v = pe(g), g = Qt(v);
1063
- }
1064
- }
1065
- return Ct({
1066
- width: u,
1067
- height: m,
1068
- x: a,
1069
- y: l
1070
- });
1071
- }
1072
- function kt(e, t) {
1073
- const n = Dt(e).scrollLeft;
1074
- return t ? t.left + n : He(Te(e)).left + n;
1075
- }
1076
- function pr(e, t) {
1077
- const n = e.getBoundingClientRect(), r = n.left + t.scrollLeft - kt(e, n), o = n.top + t.scrollTop;
1078
- return {
1079
- x: r,
1080
- y: o
1081
- };
1082
- }
1083
- function Io(e) {
1084
- let {
1085
- elements: t,
1086
- rect: n,
1087
- offsetParent: r,
1088
- strategy: o
1089
- } = e;
1090
- const s = o === "fixed", i = Te(r), c = t ? Mt(t.floating) : !1;
1091
- if (r === i || c && s)
1092
- return n;
1093
- let a = {
1094
- scrollLeft: 0,
1095
- scrollTop: 0
1096
- }, l = Ee(1);
1097
- const u = Ee(0), m = ne(r);
1098
- if ((m || !m && !s) && ((We(r) !== "body" || ut(i)) && (a = Dt(r)), ne(r))) {
1099
- const f = He(r);
1100
- l = Xe(r), u.x = f.x + r.clientLeft, u.y = f.y + r.clientTop;
1101
- }
1102
- const p = i && !m && !s ? pr(i, a) : Ee(0);
1103
- return {
1104
- width: n.width * l.x,
1105
- height: n.height * l.y,
1106
- x: n.x * l.x - a.scrollLeft * l.x + u.x + p.x,
1107
- y: n.y * l.y - a.scrollTop * l.y + u.y + p.y
1108
- };
1109
- }
1110
- function To(e) {
1111
- return Array.from(e.getClientRects());
1112
- }
1113
- function Oo(e) {
1114
- const t = Te(e), n = Dt(e), r = e.ownerDocument.body, o = he(t.scrollWidth, t.clientWidth, r.scrollWidth, r.clientWidth), s = he(t.scrollHeight, t.clientHeight, r.scrollHeight, r.clientHeight);
1115
- let i = -n.scrollLeft + kt(e);
1116
- const c = -n.scrollTop;
1117
- return we(r).direction === "rtl" && (i += he(t.clientWidth, r.clientWidth) - o), {
1118
- width: o,
1119
- height: s,
1120
- x: i,
1121
- y: c
1122
- };
1123
- }
1124
- const En = 25;
1125
- function Ao(e, t) {
1126
- const n = pe(e), r = Te(e), o = n.visualViewport;
1127
- let s = r.clientWidth, i = r.clientHeight, c = 0, a = 0;
1128
- if (o) {
1129
- s = o.width, i = o.height;
1130
- const u = Pt();
1131
- (!u || u && t === "fixed") && (c = o.offsetLeft, a = o.offsetTop);
1132
- }
1133
- const l = kt(r);
1134
- if (l <= 0) {
1135
- const u = r.ownerDocument, m = u.body, p = getComputedStyle(m), f = u.compatMode === "CSS1Compat" && parseFloat(p.marginLeft) + parseFloat(p.marginRight) || 0, v = Math.abs(r.clientWidth - m.clientWidth - f);
1136
- v <= En && (s -= v);
1137
- } else l <= En && (s += l);
1138
- return {
1139
- width: s,
1140
- height: i,
1141
- x: c,
1142
- y: a
1143
- };
1144
- }
1145
- const So = /* @__PURE__ */ new Set(["absolute", "fixed"]);
1146
- function Mo(e, t) {
1147
- const n = He(e, !0, t === "fixed"), r = n.top + e.clientTop, o = n.left + e.clientLeft, s = ne(e) ? Xe(e) : Ee(1), i = e.clientWidth * s.x, c = e.clientHeight * s.y, a = o * s.x, l = r * s.y;
1148
- return {
1149
- width: i,
1150
- height: c,
1151
- x: a,
1152
- y: l
1153
- };
1154
- }
1155
- function Cn(e, t, n) {
1156
- let r;
1157
- if (t === "viewport")
1158
- r = Ao(e, n);
1159
- else if (t === "document")
1160
- r = Oo(Te(e));
1161
- else if (Y(t))
1162
- r = Mo(t, n);
1163
- else {
1164
- const o = mr(e);
1165
- r = {
1166
- x: t.x - o.x,
1167
- y: t.y - o.y,
1168
- width: t.width,
1169
- height: t.height
1170
- };
1171
- }
1172
- return Ct(r);
1173
- }
1174
- function gr(e, t) {
1175
- const n = Pe(e);
1176
- return n === t || !Y(n) || Me(n) ? !1 : we(n).position === "fixed" || gr(n, t);
1177
- }
1178
- function Po(e, t) {
1179
- const n = t.get(e);
1180
- if (n)
1181
- return n;
1182
- let r = ke(e, [], !1).filter((c) => Y(c) && We(c) !== "body"), o = null;
1183
- const s = we(e).position === "fixed";
1184
- let i = s ? Pe(e) : e;
1185
- for (; Y(i) && !Me(i); ) {
1186
- const c = we(i), a = on(i);
1187
- !a && c.position === "fixed" && (o = null), (s ? !a && !o : !a && c.position === "static" && !!o && So.has(o.position) || ut(i) && !a && gr(e, i)) ? r = r.filter((u) => u !== i) : o = c, i = Pe(i);
1188
- }
1189
- return t.set(e, r), r;
1190
- }
1191
- function Do(e) {
1192
- let {
1193
- element: t,
1194
- boundary: n,
1195
- rootBoundary: r,
1196
- strategy: o
1197
- } = e;
1198
- const i = [...n === "clippingAncestors" ? Mt(t) ? [] : Po(t, this._c) : [].concat(n), r], c = i[0], a = i.reduce((l, u) => {
1199
- const m = Cn(t, u, o);
1200
- return l.top = he(m.top, l.top), l.right = Je(m.right, l.right), l.bottom = Je(m.bottom, l.bottom), l.left = he(m.left, l.left), l;
1201
- }, Cn(t, c, o));
1202
- return {
1203
- width: a.right - a.left,
1204
- height: a.bottom - a.top,
1205
- x: a.left,
1206
- y: a.top
1207
- };
1208
- }
1209
- function Lo(e) {
1210
- const {
1211
- width: t,
1212
- height: n
1213
- } = dr(e);
1214
- return {
1215
- width: t,
1216
- height: n
1217
- };
1218
- }
1219
- function ko(e, t, n) {
1220
- const r = ne(t), o = Te(t), s = n === "fixed", i = He(e, !0, s, t);
1221
- let c = {
1222
- scrollLeft: 0,
1223
- scrollTop: 0
1224
- };
1225
- const a = Ee(0);
1226
- function l() {
1227
- a.x = kt(o);
1228
- }
1229
- if (r || !r && !s)
1230
- if ((We(t) !== "body" || ut(o)) && (c = Dt(t)), r) {
1231
- const f = He(t, !0, s, t);
1232
- a.x = f.x + t.clientLeft, a.y = f.y + t.clientTop;
1233
- } else o && l();
1234
- s && !r && o && l();
1235
- const u = o && !r && !s ? pr(o, c) : Ee(0), m = i.left + c.scrollLeft - a.x - u.x, p = i.top + c.scrollTop - a.y - u.y;
1236
- return {
1237
- x: m,
1238
- y: p,
1239
- width: i.width,
1240
- height: i.height
1241
- };
1242
- }
1243
- function $t(e) {
1244
- return we(e).position === "static";
1245
- }
1246
- function In(e, t) {
1247
- if (!ne(e) || we(e).position === "fixed")
1248
- return null;
1249
- if (t)
1250
- return t(e);
1251
- let n = e.offsetParent;
1252
- return Te(e) === n && (n = n.ownerDocument.body), n;
1253
- }
1254
- function hr(e, t) {
1255
- const n = pe(e);
1256
- if (Mt(e))
1257
- return n;
1258
- if (!ne(e)) {
1259
- let o = Pe(e);
1260
- for (; o && !Me(o); ) {
1261
- if (Y(o) && !$t(o))
1262
- return o;
1263
- o = Pe(o);
1264
- }
1265
- return n;
1266
- }
1267
- let r = In(e, t);
1268
- for (; r && Fr(r) && $t(r); )
1269
- r = In(r, t);
1270
- return r && Me(r) && $t(r) && !on(r) ? n : r || Kr(e) || n;
1271
- }
1272
- const Fo = async function(e) {
1273
- const t = this.getOffsetParent || hr, n = this.getDimensions, r = await n(e.floating);
1274
- return {
1275
- reference: ko(e.reference, await t(e.floating), e.strategy),
1276
- floating: {
1277
- x: 0,
1278
- y: 0,
1279
- width: r.width,
1280
- height: r.height
1281
- }
1282
- };
1283
- };
1284
- function No(e) {
1285
- return we(e).direction === "rtl";
1286
- }
1287
- const _o = {
1288
- convertOffsetParentRelativeRectToViewportRelativeRect: Io,
1289
- getDocumentElement: Te,
1290
- getClippingRect: Do,
1291
- getOffsetParent: hr,
1292
- getElementRects: Fo,
1293
- getClientRects: To,
1294
- getDimensions: Lo,
1295
- getScale: Xe,
1296
- isElement: Y,
1297
- isRTL: No
1298
- };
1299
- function vr(e, t) {
1300
- return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
1301
- }
1302
- function Wo(e, t) {
1303
- let n = null, r;
1304
- const o = Te(e);
1305
- function s() {
1306
- var c;
1307
- clearTimeout(r), (c = n) == null || c.disconnect(), n = null;
1308
- }
1309
- function i(c, a) {
1310
- c === void 0 && (c = !1), a === void 0 && (a = 1), s();
1311
- const l = e.getBoundingClientRect(), {
1312
- left: u,
1313
- top: m,
1314
- width: p,
1315
- height: f
1316
- } = l;
1317
- if (c || t(), !p || !f)
1318
- return;
1319
- const v = je(m), g = je(o.clientWidth - (u + p)), y = je(o.clientHeight - (m + f)), x = je(u), w = {
1320
- rootMargin: -v + "px " + -g + "px " + -y + "px " + -x + "px",
1321
- threshold: he(0, Je(1, a)) || 1
1322
- };
1323
- let C = !0;
1324
- function M(k) {
1325
- const N = k[0].intersectionRatio;
1326
- if (N !== a) {
1327
- if (!C)
1328
- return i();
1329
- N ? i(!1, N) : r = setTimeout(() => {
1330
- i(!1, 1e-7);
1331
- }, 1e3);
1332
- }
1333
- N === 1 && !vr(l, e.getBoundingClientRect()) && i(), C = !1;
1334
- }
1335
- try {
1336
- n = new IntersectionObserver(M, {
1337
- ...w,
1338
- // Handle <iframe>s
1339
- root: o.ownerDocument
1340
- });
1341
- } catch {
1342
- n = new IntersectionObserver(M, w);
1343
- }
1344
- n.observe(e);
1345
- }
1346
- return i(!0), s;
1347
- }
1348
- function Ci(e, t, n, r) {
1349
- r === void 0 && (r = {});
1350
- const {
1351
- ancestorScroll: o = !0,
1352
- ancestorResize: s = !0,
1353
- elementResize: i = typeof ResizeObserver == "function",
1354
- layoutShift: c = typeof IntersectionObserver == "function",
1355
- animationFrame: a = !1
1356
- } = r, l = un(e), u = o || s ? [...l ? ke(l) : [], ...ke(t)] : [];
1357
- u.forEach((x) => {
1358
- o && x.addEventListener("scroll", n, {
1359
- passive: !0
1360
- }), s && x.addEventListener("resize", n);
1361
- });
1362
- const m = l && c ? Wo(l, n) : null;
1363
- let p = -1, f = null;
1364
- i && (f = new ResizeObserver((x) => {
1365
- let [b] = x;
1366
- b && b.target === l && f && (f.unobserve(t), cancelAnimationFrame(p), p = requestAnimationFrame(() => {
1367
- var w;
1368
- (w = f) == null || w.observe(t);
1369
- })), n();
1370
- }), l && !a && f.observe(l), f.observe(t));
1371
- let v, g = a ? He(e) : null;
1372
- a && y();
1373
- function y() {
1374
- const x = He(e);
1375
- g && !vr(g, x) && n(), g = x, v = requestAnimationFrame(y);
1376
- }
1377
- return n(), () => {
1378
- var x;
1379
- u.forEach((b) => {
1380
- o && b.removeEventListener("scroll", n), s && b.removeEventListener("resize", n);
1381
- }), m?.(), (x = f) == null || x.disconnect(), f = null, a && cancelAnimationFrame(v);
1382
- };
1383
- }
1384
- const Vo = wo, Ko = ho, $o = xo, Bo = vo, Ho = Ro, zo = (e, t, n) => {
1385
- const r = /* @__PURE__ */ new Map(), o = {
1386
- platform: _o,
1387
- ...n
1388
- }, s = {
1389
- ...o.platform,
1390
- _c: r
1391
- };
1392
- return po(e, t, {
1393
- ...o,
1394
- platform: s
1395
- });
1396
- };
1397
- var Uo = typeof document < "u", Go = function() {
1398
- }, wt = Uo ? Gn : Go;
1399
- function Tt(e, t) {
1400
- if (e === t)
1401
- return !0;
1402
- if (typeof e != typeof t)
1403
- return !1;
1404
- if (typeof e == "function" && e.toString() === t.toString())
1405
- return !0;
1406
- let n, r, o;
1407
- if (e && t && typeof e == "object") {
1408
- if (Array.isArray(e)) {
1409
- if (n = e.length, n !== t.length) return !1;
1410
- for (r = n; r-- !== 0; )
1411
- if (!Tt(e[r], t[r]))
1412
- return !1;
1413
- return !0;
1414
- }
1415
- if (o = Object.keys(e), n = o.length, n !== Object.keys(t).length)
1416
- return !1;
1417
- for (r = n; r-- !== 0; )
1418
- if (!{}.hasOwnProperty.call(t, o[r]))
1419
- return !1;
1420
- for (r = n; r-- !== 0; ) {
1421
- const s = o[r];
1422
- if (!(s === "_owner" && e.$$typeof) && !Tt(e[s], t[s]))
1423
- return !1;
1424
- }
1425
- return !0;
1426
- }
1427
- return e !== e && t !== t;
1428
- }
1429
- function br(e) {
1430
- return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
1431
- }
1432
- function Tn(e, t) {
1433
- const n = br(e);
1434
- return Math.round(t * n) / n;
1435
- }
1436
- function Bt(e) {
1437
- const t = d.useRef(e);
1438
- return wt(() => {
1439
- t.current = e;
1440
- }), t;
1441
- }
1442
- function jo(e) {
1443
- e === void 0 && (e = {});
1444
- const {
1445
- placement: t = "bottom",
1446
- strategy: n = "absolute",
1447
- middleware: r = [],
1448
- platform: o,
1449
- elements: {
1450
- reference: s,
1451
- floating: i
1452
- } = {},
1453
- transform: c = !0,
1454
- whileElementsMounted: a,
1455
- open: l
1456
- } = e, [u, m] = d.useState({
1457
- x: 0,
1458
- y: 0,
1459
- strategy: n,
1460
- placement: t,
1461
- middlewareData: {},
1462
- isPositioned: !1
1463
- }), [p, f] = d.useState(r);
1464
- Tt(p, r) || f(r);
1465
- const [v, g] = d.useState(null), [y, x] = d.useState(null), b = d.useCallback((h) => {
1466
- h !== k.current && (k.current = h, g(h));
1467
- }, []), w = d.useCallback((h) => {
1468
- h !== N.current && (N.current = h, x(h));
1469
- }, []), C = s || v, M = i || y, k = d.useRef(null), N = d.useRef(null), P = d.useRef(u), V = a != null, L = Bt(a), _ = Bt(o), G = Bt(l), W = d.useCallback(() => {
1470
- if (!k.current || !N.current)
1471
- return;
1472
- const h = {
1473
- placement: t,
1474
- strategy: n,
1475
- middleware: p
1476
- };
1477
- _.current && (h.platform = _.current), zo(k.current, N.current, h).then((I) => {
1478
- const D = {
1479
- ...I,
1480
- // The floating element's position may be recomputed while it's closed
1481
- // but still mounted (such as when transitioning out). To ensure
1482
- // `isPositioned` will be `false` initially on the next open, avoid
1483
- // setting it to `true` when `open === false` (must be specified).
1484
- isPositioned: G.current !== !1
1485
- };
1486
- R.current && !Tt(P.current, D) && (P.current = D, nn.flushSync(() => {
1487
- m(D);
1488
- }));
1489
- });
1490
- }, [p, t, n, _, G]);
1491
- wt(() => {
1492
- l === !1 && P.current.isPositioned && (P.current.isPositioned = !1, m((h) => ({
1493
- ...h,
1494
- isPositioned: !1
1495
- })));
1496
- }, [l]);
1497
- const R = d.useRef(!1);
1498
- wt(() => (R.current = !0, () => {
1499
- R.current = !1;
1500
- }), []), wt(() => {
1501
- if (C && (k.current = C), M && (N.current = M), C && M) {
1502
- if (L.current)
1503
- return L.current(C, M, W);
1504
- W();
1505
- }
1506
- }, [C, M, W, L, V]);
1507
- const E = d.useMemo(() => ({
1508
- reference: k,
1509
- floating: N,
1510
- setReference: b,
1511
- setFloating: w
1512
- }), [b, w]), $ = d.useMemo(() => ({
1513
- reference: C,
1514
- floating: M
1515
- }), [C, M]), T = d.useMemo(() => {
1516
- const h = {
1517
- position: n,
1518
- left: 0,
1519
- top: 0
1520
- };
1521
- if (!$.floating)
1522
- return h;
1523
- const I = Tn($.floating, u.x), D = Tn($.floating, u.y);
1524
- return c ? {
1525
- ...h,
1526
- transform: "translate(" + I + "px, " + D + "px)",
1527
- ...br($.floating) >= 1.5 && {
1528
- willChange: "transform"
1529
- }
1530
- } : {
1531
- position: n,
1532
- left: I,
1533
- top: D
1534
- };
1535
- }, [n, c, $.floating, u.x, u.y]);
1536
- return d.useMemo(() => ({
1537
- ...u,
1538
- update: W,
1539
- refs: E,
1540
- elements: $,
1541
- floatingStyles: T
1542
- }), [u, W, E, $, T]);
1543
- }
1544
- const Ii = (e, t) => ({
1545
- ...Vo(e),
1546
- options: [e, t]
1547
- }), Ti = (e, t) => ({
1548
- ...$o(e),
1549
- options: [e, t]
1550
- }), Oi = (e, t) => ({
1551
- ...Bo(e),
1552
- options: [e, t]
1553
- }), Ai = (e, t) => ({
1554
- ...Ho(e),
1555
- options: [e, t]
1556
- }), Si = (e, t) => ({
1557
- ...Ko(e),
1558
- options: [e, t]
1559
- });
1560
- function qo(e) {
1561
- const t = d.useRef(void 0), n = d.useCallback((r) => {
1562
- const o = e.map((s) => {
1563
- if (s != null) {
1564
- if (typeof s == "function") {
1565
- const i = s, c = i(r);
1566
- return typeof c == "function" ? c : () => {
1567
- i(null);
1568
- };
1569
- }
1570
- return s.current = r, () => {
1571
- s.current = null;
1572
- };
1573
- }
1574
- });
1575
- return () => {
1576
- o.forEach((s) => s?.());
1577
- };
1578
- }, e);
1579
- return d.useMemo(() => e.every((r) => r == null) ? null : (r) => {
1580
- t.current && (t.current(), t.current = void 0), r != null && (t.current = n(r));
1581
- }, e);
1582
- }
1583
- function Xo(e, t) {
1584
- const n = e.compareDocumentPosition(t);
1585
- return n & Node.DOCUMENT_POSITION_FOLLOWING || n & Node.DOCUMENT_POSITION_CONTAINED_BY ? -1 : n & Node.DOCUMENT_POSITION_PRECEDING || n & Node.DOCUMENT_POSITION_CONTAINS ? 1 : 0;
1586
- }
1587
- const yr = /* @__PURE__ */ d.createContext({
1588
- register: () => {
1589
- },
1590
- unregister: () => {
1591
- },
1592
- map: /* @__PURE__ */ new Map(),
1593
- elementsRef: {
1594
- current: []
1595
- }
1596
- });
1597
- function Yo(e) {
1598
- const {
1599
- children: t,
1600
- elementsRef: n,
1601
- labelsRef: r
1602
- } = e, [o, s] = d.useState(() => /* @__PURE__ */ new Set()), i = d.useCallback((l) => {
1603
- s((u) => new Set(u).add(l));
1604
- }, []), c = d.useCallback((l) => {
1605
- s((u) => {
1606
- const m = new Set(u);
1607
- return m.delete(l), m;
1608
- });
1609
- }, []), a = d.useMemo(() => {
1610
- const l = /* @__PURE__ */ new Map();
1611
- return Array.from(o.keys()).sort(Xo).forEach((m, p) => {
1612
- l.set(m, p);
1613
- }), l;
1614
- }, [o]);
1615
- return /* @__PURE__ */ me(yr.Provider, {
1616
- value: d.useMemo(() => ({
1617
- register: i,
1618
- unregister: c,
1619
- map: a,
1620
- elementsRef: n,
1621
- labelsRef: r
1622
- }), [i, c, a, n, r]),
1623
- children: t
1624
- });
1625
- }
1626
- function Jo(e) {
1627
- e === void 0 && (e = {});
1628
- const {
1629
- label: t
1630
- } = e, {
1631
- register: n,
1632
- unregister: r,
1633
- map: o,
1634
- elementsRef: s,
1635
- labelsRef: i
1636
- } = d.useContext(yr), [c, a] = d.useState(null), l = d.useRef(null), u = d.useCallback((m) => {
1637
- if (l.current = m, c !== null && (s.current[c] = m, i)) {
1638
- var p;
1639
- const f = t !== void 0;
1640
- i.current[c] = f ? t : (p = m?.textContent) != null ? p : null;
1641
- }
1642
- }, [c, s, i, t]);
1643
- return X(() => {
1644
- const m = l.current;
1645
- if (m)
1646
- return n(m), () => {
1647
- r(m);
1648
- };
1649
- }, [n, r]), X(() => {
1650
- const m = l.current ? o.get(l.current) : null;
1651
- m != null && a(m);
1652
- }, [o]), d.useMemo(() => ({
1653
- ref: u,
1654
- index: c ?? -1
1655
- }), [c, u]);
1656
- }
1657
- const Qo = "data-floating-ui-focusable", On = "active", An = "selected", Ne = "ArrowLeft", _e = "ArrowRight", st = "ArrowUp", Fe = "ArrowDown";
1658
- function wr(e, t) {
1659
- return typeof e == "function" ? e(t) : e ? /* @__PURE__ */ d.cloneElement(e, t) : /* @__PURE__ */ me("div", {
1660
- ...t
1661
- });
1662
- }
1663
- const xr = /* @__PURE__ */ d.createContext({
1664
- activeIndex: 0,
1665
- onNavigate: () => {
1666
- }
1667
- }), Rr = [Ne, _e], Er = [st, Fe], Ht = [...Rr, ...Er], Mi = /* @__PURE__ */ d.forwardRef(function(t, n) {
1668
- const {
1669
- render: r,
1670
- orientation: o = "both",
1671
- loop: s = !0,
1672
- rtl: i = !1,
1673
- cols: c = 1,
1674
- disabledIndices: a,
1675
- activeIndex: l,
1676
- onNavigate: u,
1677
- itemSizes: m,
1678
- dense: p = !1,
1679
- ...f
1680
- } = t, [v, g] = d.useState(0), y = l ?? v, x = ie(u ?? g), b = d.useRef([]), w = r && typeof r != "function" ? r.props : {}, C = d.useMemo(() => ({
1681
- activeIndex: y,
1682
- onNavigate: x
1683
- }), [y, x]), M = c > 1;
1684
- function k(P) {
1685
- if (!Ht.includes(P.key)) return;
1686
- let V = y;
1687
- const L = yt(b, a), _ = tn(b, a), G = i ? Ne : _e, W = i ? _e : Ne;
1688
- if (M) {
1689
- const h = m || Array.from({
1690
- length: b.current.length
1691
- }, () => ({
1692
- width: 1,
1693
- height: 1
1694
- })), I = sr(h, c, p), D = I.findIndex((O) => O != null && !Be(b, O, a)), ee = I.reduce((O, J, j) => J != null && !Be(b, J, a) ? j : O, -1), F = I[ir({
1695
- current: I.map((O) => O ? b.current[O] : null)
1696
- }, {
1697
- event: P,
1698
- orientation: o,
1699
- loop: s,
1700
- rtl: i,
1701
- cols: c,
1702
- // treat undefined (empty grid spaces) as disabled indices so we
1703
- // don't end up in them
1704
- disabledIndices: ur([...(typeof a != "function" ? a : null) || b.current.map((O, J) => Be(b, J, a) ? J : void 0), void 0], I),
1705
- minIndex: D,
1706
- maxIndex: ee,
1707
- prevIndex: cr(
1708
- y > _ ? L : y,
1709
- h,
1710
- I,
1711
- c,
1712
- // use a corner matching the edge closest to the direction we're
1713
- // moving in so we don't end up in the same item. Prefer
1714
- // top/left over bottom/right.
1715
- P.key === Fe ? "bl" : P.key === G ? "tr" : "tl"
1716
- )
1717
- })];
1718
- F != null && (V = F);
1719
- }
1720
- const R = {
1721
- horizontal: [G],
1722
- vertical: [Fe],
1723
- both: [G, Fe]
1724
- }[o], E = {
1725
- horizontal: [W],
1726
- vertical: [st],
1727
- both: [W, st]
1728
- }[o], $ = M ? Ht : {
1729
- horizontal: Rr,
1730
- vertical: Er,
1731
- both: Ht
1732
- }[o];
1733
- if (V === y && [...R, ...E].includes(P.key) && (s && V === _ && R.includes(P.key) ? V = L : s && V === L && E.includes(P.key) ? V = _ : V = ue(b, {
1734
- startingIndex: V,
1735
- decrement: E.includes(P.key),
1736
- disabledIndices: a
1737
- })), V !== y && !qe(b, V)) {
1738
- var T;
1739
- P.stopPropagation(), $.includes(P.key) && P.preventDefault(), x(V), (T = b.current[V]) == null || T.focus();
1740
- }
1741
- }
1742
- const N = {
1743
- ...f,
1744
- ...w,
1745
- ref: n,
1746
- "aria-orientation": o === "both" ? void 0 : o,
1747
- onKeyDown(P) {
1748
- f.onKeyDown == null || f.onKeyDown(P), w.onKeyDown == null || w.onKeyDown(P), k(P);
1749
- }
1750
- };
1751
- return /* @__PURE__ */ me(xr.Provider, {
1752
- value: C,
1753
- children: /* @__PURE__ */ me(Yo, {
1754
- elementsRef: b,
1755
- children: wr(r, N)
1756
- })
1757
- });
1758
- }), Pi = /* @__PURE__ */ d.forwardRef(function(t, n) {
1759
- const {
1760
- render: r,
1761
- ...o
1762
- } = t, s = r && typeof r != "function" ? r.props : {}, {
1763
- activeIndex: i,
1764
- onNavigate: c
1765
- } = d.useContext(xr), {
1766
- ref: a,
1767
- index: l
1768
- } = Jo(), u = qo([a, n, s.ref]), m = i === l, p = {
1769
- ...o,
1770
- ...s,
1771
- ref: u,
1772
- tabIndex: m ? 0 : -1,
1773
- "data-active": m ? "" : void 0,
1774
- onFocus(f) {
1775
- o.onFocus == null || o.onFocus(f), s.onFocus == null || s.onFocus(f), c(l);
1776
- }
1777
- };
1778
- return wr(r, p);
1779
- }), Zo = {
1780
- ...d
1781
- };
1782
- let Sn = !1, ei = 0;
1783
- const Mn = () => (
1784
- // Ensure the id is unique with multiple independent versions of Floating UI
1785
- // on <React 18
1786
- "floating-ui-" + Math.random().toString(36).slice(2, 6) + ei++
1787
- );
1788
- function ti() {
1789
- const [e, t] = d.useState(() => Sn ? Mn() : void 0);
1790
- return X(() => {
1791
- e == null && t(Mn());
1792
- }, []), d.useEffect(() => {
1793
- Sn = !0;
1794
- }, []), e;
1795
- }
1796
- const ni = Zo.useId, Ft = ni || ti;
1797
- let ct;
1798
- process.env.NODE_ENV !== "production" && (ct = /* @__PURE__ */ new Set());
1799
- function zt() {
1800
- for (var e, t = arguments.length, n = new Array(t), r = 0; r < t; r++)
1801
- n[r] = arguments[r];
1802
- const o = "Floating UI: " + n.join(" ");
1803
- if (!((e = ct) != null && e.has(o))) {
1804
- var s;
1805
- (s = ct) == null || s.add(o), console.warn(o);
1806
- }
1807
- }
1808
- function ri() {
1809
- for (var e, t = arguments.length, n = new Array(t), r = 0; r < t; r++)
1810
- n[r] = arguments[r];
1811
- const o = "Floating UI: " + n.join(" ");
1812
- if (!((e = ct) != null && e.has(o))) {
1813
- var s;
1814
- (s = ct) == null || s.add(o), console.error(o);
1815
- }
1816
- }
1817
- function Cr() {
1818
- const e = /* @__PURE__ */ new Map();
1819
- return {
1820
- emit(t, n) {
1821
- var r;
1822
- (r = e.get(t)) == null || r.forEach((o) => o(n));
1823
- },
1824
- on(t, n) {
1825
- e.has(t) || e.set(t, /* @__PURE__ */ new Set()), e.get(t).add(n);
1826
- },
1827
- off(t, n) {
1828
- var r;
1829
- (r = e.get(t)) == null || r.delete(n);
1830
- }
1831
- };
1832
- }
1833
- const Ir = /* @__PURE__ */ d.createContext(null), Tr = /* @__PURE__ */ d.createContext(null), Ze = () => {
1834
- var e;
1835
- return ((e = d.useContext(Ir)) == null ? void 0 : e.id) || null;
1836
- }, et = () => d.useContext(Tr);
1837
- function Di(e) {
1838
- const t = Ft(), n = et(), o = Ze();
1839
- return X(() => {
1840
- if (!t) return;
1841
- const s = {
1842
- id: t,
1843
- parentId: o
1844
- };
1845
- return n?.addNode(s), () => {
1846
- n?.removeNode(s);
1847
- };
1848
- }, [n, t, o]), t;
1849
- }
1850
- function Li(e) {
1851
- const {
1852
- children: t,
1853
- id: n
1854
- } = e, r = Ze();
1855
- return /* @__PURE__ */ me(Ir.Provider, {
1856
- value: d.useMemo(() => ({
1857
- id: n,
1858
- parentId: r
1859
- }), [n, r]),
1860
- children: t
1861
- });
1862
- }
1863
- function ki(e) {
1864
- const {
1865
- children: t
1866
- } = e, n = d.useRef([]), r = d.useCallback((i) => {
1867
- n.current = [...n.current, i];
1868
- }, []), o = d.useCallback((i) => {
1869
- n.current = n.current.filter((c) => c !== i);
1870
- }, []), [s] = d.useState(() => Cr());
1871
- return /* @__PURE__ */ me(Tr.Provider, {
1872
- value: d.useMemo(() => ({
1873
- nodesRef: n,
1874
- addNode: r,
1875
- removeNode: o,
1876
- events: s
1877
- }), [r, o, s]),
1878
- children: t
1879
- });
1880
- }
1881
- function ze(e) {
1882
- return "data-floating-ui-" + e;
1883
- }
1884
- function ge(e) {
1885
- e.current !== -1 && (clearTimeout(e.current), e.current = -1);
1886
- }
1887
- const Pn = /* @__PURE__ */ ze("safe-polygon");
1888
- function Ut(e, t, n) {
1889
- if (n && !it(n))
1890
- return 0;
1891
- if (typeof e == "number")
1892
- return e;
1893
- if (typeof e == "function") {
1894
- const r = e();
1895
- return typeof r == "number" ? r : r?.[t];
1896
- }
1897
- return e?.[t];
1898
- }
1899
- function Gt(e) {
1900
- return typeof e == "function" ? e() : e;
1901
- }
1902
- function Fi(e, t) {
1903
- t === void 0 && (t = {});
1904
- const {
1905
- open: n,
1906
- onOpenChange: r,
1907
- dataRef: o,
1908
- events: s,
1909
- elements: i
1910
- } = e, {
1911
- enabled: c = !0,
1912
- delay: a = 0,
1913
- handleClose: l = null,
1914
- mouseOnly: u = !1,
1915
- restMs: m = 0,
1916
- move: p = !0
1917
- } = t, f = et(), v = Ze(), g = ye(l), y = ye(a), x = ye(n), b = ye(m), w = d.useRef(), C = d.useRef(-1), M = d.useRef(), k = d.useRef(-1), N = d.useRef(!0), P = d.useRef(!1), V = d.useRef(() => {
1918
- }), L = d.useRef(!1), _ = ie(() => {
1919
- var T;
1920
- const h = (T = o.current.openEvent) == null ? void 0 : T.type;
1921
- return h?.includes("mouse") && h !== "mousedown";
1922
- });
1923
- d.useEffect(() => {
1924
- if (!c) return;
1925
- function T(h) {
1926
- let {
1927
- open: I
1928
- } = h;
1929
- I || (ge(C), ge(k), N.current = !0, L.current = !1);
1930
- }
1931
- return s.on("openchange", T), () => {
1932
- s.off("openchange", T);
1933
- };
1934
- }, [c, s]), d.useEffect(() => {
1935
- if (!c || !g.current || !n) return;
1936
- function T(I) {
1937
- _() && r(!1, I, "hover");
1938
- }
1939
- const h = le(i.floating).documentElement;
1940
- return h.addEventListener("mouseleave", T), () => {
1941
- h.removeEventListener("mouseleave", T);
1942
- };
1943
- }, [i.floating, n, r, c, g, _]);
1944
- const G = d.useCallback(function(T, h, I) {
1945
- h === void 0 && (h = !0), I === void 0 && (I = "hover");
1946
- const D = Ut(y.current, "close", w.current);
1947
- D && !M.current ? (ge(C), C.current = window.setTimeout(() => r(!1, T, I), D)) : h && (ge(C), r(!1, T, I));
1948
- }, [y, r]), W = ie(() => {
1949
- V.current(), M.current = void 0;
1950
- }), R = ie(() => {
1951
- if (P.current) {
1952
- const T = le(i.floating).body;
1953
- T.style.pointerEvents = "", T.removeAttribute(Pn), P.current = !1;
1954
- }
1955
- }), E = ie(() => o.current.openEvent ? ["click", "mousedown"].includes(o.current.openEvent.type) : !1);
1956
- d.useEffect(() => {
1957
- if (!c) return;
1958
- function T(F) {
1959
- if (ge(C), N.current = !1, u && !it(w.current) || Gt(b.current) > 0 && !Ut(y.current, "open"))
1960
- return;
1961
- const O = Ut(y.current, "open", w.current);
1962
- O ? C.current = window.setTimeout(() => {
1963
- x.current || r(!0, F, "hover");
1964
- }, O) : n || r(!0, F, "hover");
1965
- }
1966
- function h(F) {
1967
- if (E()) {
1968
- R();
1969
- return;
1970
- }
1971
- V.current();
1972
- const O = le(i.floating);
1973
- if (ge(k), L.current = !1, g.current && o.current.floatingContext) {
1974
- n || ge(C), M.current = g.current({
1975
- ...o.current.floatingContext,
1976
- tree: f,
1977
- x: F.clientX,
1978
- y: F.clientY,
1979
- onClose() {
1980
- R(), W(), E() || G(F, !0, "safe-polygon");
1981
- }
1982
- });
1983
- const j = M.current;
1984
- O.addEventListener("mousemove", j), V.current = () => {
1985
- O.removeEventListener("mousemove", j);
1986
- };
1987
- return;
1988
- }
1989
- (w.current !== "touch" || !ce(i.floating, F.relatedTarget)) && G(F);
1990
- }
1991
- function I(F) {
1992
- E() || o.current.floatingContext && (g.current == null || g.current({
1993
- ...o.current.floatingContext,
1994
- tree: f,
1995
- x: F.clientX,
1996
- y: F.clientY,
1997
- onClose() {
1998
- R(), W(), E() || G(F);
1999
- }
2000
- })(F));
2001
- }
2002
- function D() {
2003
- ge(C);
2004
- }
2005
- function ee(F) {
2006
- E() || G(F, !1);
2007
- }
2008
- if (Y(i.domReference)) {
2009
- const F = i.domReference, O = i.floating;
2010
- return n && F.addEventListener("mouseleave", I), p && F.addEventListener("mousemove", T, {
2011
- once: !0
2012
- }), F.addEventListener("mouseenter", T), F.addEventListener("mouseleave", h), O && (O.addEventListener("mouseleave", I), O.addEventListener("mouseenter", D), O.addEventListener("mouseleave", ee)), () => {
2013
- n && F.removeEventListener("mouseleave", I), p && F.removeEventListener("mousemove", T), F.removeEventListener("mouseenter", T), F.removeEventListener("mouseleave", h), O && (O.removeEventListener("mouseleave", I), O.removeEventListener("mouseenter", D), O.removeEventListener("mouseleave", ee));
2014
- };
2015
- }
2016
- }, [i, c, e, u, p, G, W, R, r, n, x, f, y, g, o, E, b]), X(() => {
2017
- var T;
2018
- if (c && n && (T = g.current) != null && (T = T.__options) != null && T.blockPointerEvents && _()) {
2019
- P.current = !0;
2020
- const I = i.floating;
2021
- if (Y(i.domReference) && I) {
2022
- var h;
2023
- const D = le(i.floating).body;
2024
- D.setAttribute(Pn, "");
2025
- const ee = i.domReference, F = f == null || (h = f.nodesRef.current.find((O) => O.id === v)) == null || (h = h.context) == null ? void 0 : h.elements.floating;
2026
- return F && (F.style.pointerEvents = ""), D.style.pointerEvents = "none", ee.style.pointerEvents = "auto", I.style.pointerEvents = "auto", () => {
2027
- D.style.pointerEvents = "", ee.style.pointerEvents = "", I.style.pointerEvents = "";
2028
- };
2029
- }
2030
- }
2031
- }, [c, n, v, i, f, g, _]), X(() => {
2032
- n || (w.current = void 0, L.current = !1, W(), R());
2033
- }, [n, W, R]), d.useEffect(() => () => {
2034
- W(), ge(C), ge(k), R();
2035
- }, [c, i.domReference, W, R]);
2036
- const $ = d.useMemo(() => {
2037
- function T(h) {
2038
- w.current = h.pointerType;
2039
- }
2040
- return {
2041
- onPointerDown: T,
2042
- onPointerEnter: T,
2043
- onMouseMove(h) {
2044
- const {
2045
- nativeEvent: I
2046
- } = h;
2047
- function D() {
2048
- !N.current && !x.current && r(!0, I, "hover");
2049
- }
2050
- u && !it(w.current) || n || Gt(b.current) === 0 || L.current && h.movementX ** 2 + h.movementY ** 2 < 2 || (ge(k), w.current === "touch" ? D() : (L.current = !0, k.current = window.setTimeout(D, Gt(b.current))));
2051
- }
2052
- };
2053
- }, [u, r, n, x, b]);
2054
- return d.useMemo(() => c ? {
2055
- reference: $
2056
- } : {}, [c, $]);
2057
- }
2058
- let Dn = 0;
2059
- function Ke(e, t) {
2060
- t === void 0 && (t = {});
2061
- const {
2062
- preventScroll: n = !1,
2063
- cancelPrevious: r = !0,
2064
- sync: o = !1
2065
- } = t;
2066
- r && cancelAnimationFrame(Dn);
2067
- const s = () => e?.focus({
2068
- preventScroll: n
2069
- });
2070
- o ? s() : Dn = requestAnimationFrame(s);
2071
- }
2072
- function oi(e) {
2073
- return e?.ownerDocument || document;
2074
- }
2075
- const Ye = {
2076
- inert: /* @__PURE__ */ new WeakMap(),
2077
- "aria-hidden": /* @__PURE__ */ new WeakMap(),
2078
- none: /* @__PURE__ */ new WeakMap()
2079
- };
2080
- function Ln(e) {
2081
- return e === "inert" ? Ye.inert : e === "aria-hidden" ? Ye["aria-hidden"] : Ye.none;
2082
- }
2083
- let gt = /* @__PURE__ */ new WeakSet(), ht = {}, jt = 0;
2084
- const ii = () => typeof HTMLElement < "u" && "inert" in HTMLElement.prototype, Or = (e) => e && (e.host || Or(e.parentNode)), si = (e, t) => t.map((n) => {
2085
- if (e.contains(n))
2086
- return n;
2087
- const r = Or(n);
2088
- return e.contains(r) ? r : null;
2089
- }).filter((n) => n != null);
2090
- function ci(e, t, n, r) {
2091
- const o = "data-floating-ui-inert", s = r ? "inert" : n ? "aria-hidden" : null, i = si(t, e), c = /* @__PURE__ */ new Set(), a = new Set(i), l = [];
2092
- ht[o] || (ht[o] = /* @__PURE__ */ new WeakMap());
2093
- const u = ht[o];
2094
- i.forEach(m), p(t), c.clear();
2095
- function m(f) {
2096
- !f || c.has(f) || (c.add(f), f.parentNode && m(f.parentNode));
2097
- }
2098
- function p(f) {
2099
- !f || a.has(f) || [].forEach.call(f.children, (v) => {
2100
- if (We(v) !== "script")
2101
- if (c.has(v))
2102
- p(v);
2103
- else {
2104
- const g = s ? v.getAttribute(s) : null, y = g !== null && g !== "false", x = Ln(s), b = (x.get(v) || 0) + 1, w = (u.get(v) || 0) + 1;
2105
- x.set(v, b), u.set(v, w), l.push(v), b === 1 && y && gt.add(v), w === 1 && v.setAttribute(o, ""), !y && s && v.setAttribute(s, s === "inert" ? "" : "true");
2106
- }
2107
- });
2108
- }
2109
- return jt++, () => {
2110
- l.forEach((f) => {
2111
- const v = Ln(s), y = (v.get(f) || 0) - 1, x = (u.get(f) || 0) - 1;
2112
- v.set(f, y), u.set(f, x), y || (!gt.has(f) && s && f.removeAttribute(s), gt.delete(f)), x || f.removeAttribute(o);
2113
- }), jt--, jt || (Ye.inert = /* @__PURE__ */ new WeakMap(), Ye["aria-hidden"] = /* @__PURE__ */ new WeakMap(), Ye.none = /* @__PURE__ */ new WeakMap(), gt = /* @__PURE__ */ new WeakSet(), ht = {});
2114
- };
2115
- }
2116
- function kn(e, t, n) {
2117
- t === void 0 && (t = !1), n === void 0 && (n = !1);
2118
- const r = oi(e[0]).body;
2119
- return ci(e.concat(Array.from(r.querySelectorAll('[aria-live],[role="status"],output'))), r, t, n);
2120
- }
2121
- const Nt = {
2122
- border: 0,
2123
- clip: "rect(0 0 0 0)",
2124
- height: "1px",
2125
- margin: "-1px",
2126
- overflow: "hidden",
2127
- padding: 0,
2128
- position: "fixed",
2129
- whiteSpace: "nowrap",
2130
- width: "1px",
2131
- top: 0,
2132
- left: 0
2133
- }, Ot = /* @__PURE__ */ d.forwardRef(function(t, n) {
2134
- const [r, o] = d.useState();
2135
- X(() => {
2136
- tr() && o("button");
2137
- }, []);
2138
- const s = {
2139
- ref: n,
2140
- tabIndex: 0,
2141
- // Role is only for VoiceOver
2142
- role: r,
2143
- "aria-hidden": r ? void 0 : !0,
2144
- [ze("focus-guard")]: "",
2145
- style: Nt
2146
- };
2147
- return /* @__PURE__ */ me("span", {
2148
- ...t,
2149
- ...s
2150
- });
2151
- }), Ar = /* @__PURE__ */ d.createContext(null), Fn = /* @__PURE__ */ ze("portal");
2152
- function ui(e) {
2153
- e === void 0 && (e = {});
2154
- const {
2155
- id: t,
2156
- root: n
2157
- } = e, r = Ft(), o = Sr(), [s, i] = d.useState(null), c = d.useRef(null);
2158
- return X(() => () => {
2159
- s?.remove(), queueMicrotask(() => {
2160
- c.current = null;
2161
- });
2162
- }, [s]), X(() => {
2163
- if (!r || c.current) return;
2164
- const a = t ? document.getElementById(t) : null;
2165
- if (!a) return;
2166
- const l = document.createElement("div");
2167
- l.id = r, l.setAttribute(Fn, ""), a.appendChild(l), c.current = l, i(l);
2168
- }, [t, r]), X(() => {
2169
- if (n === null || !r || c.current) return;
2170
- let a = n || o?.portalNode;
2171
- a && !rn(a) && (a = a.current), a = a || document.body;
2172
- let l = null;
2173
- t && (l = document.createElement("div"), l.id = t, a.appendChild(l));
2174
- const u = document.createElement("div");
2175
- u.id = r, u.setAttribute(Fn, ""), a = l || a, a.appendChild(u), c.current = u, i(u);
2176
- }, [t, n, r, o]), s;
2177
- }
2178
- function Ni(e) {
2179
- const {
2180
- children: t,
2181
- id: n,
2182
- root: r,
2183
- preserveTabOrder: o = !0
2184
- } = e, s = ui({
2185
- id: n,
2186
- root: r
2187
- }), [i, c] = d.useState(null), a = d.useRef(null), l = d.useRef(null), u = d.useRef(null), m = d.useRef(null), p = i?.modal, f = i?.open, v = (
2188
- // The FocusManager and therefore floating element are currently open/
2189
- // rendered.
2190
- !!i && // Guards are only for non-modal focus management.
2191
- !i.modal && // Don't render if unmount is transitioning.
2192
- i.open && o && !!(r || s)
2193
- );
2194
- return d.useEffect(() => {
2195
- if (!s || !o || p)
2196
- return;
2197
- function g(y) {
2198
- s && ot(y) && (y.type === "focusin" ? xn : mo)(s);
2199
- }
2200
- return s.addEventListener("focusin", g, !0), s.addEventListener("focusout", g, !0), () => {
2201
- s.removeEventListener("focusin", g, !0), s.removeEventListener("focusout", g, !0);
2202
- };
2203
- }, [s, o, p]), d.useEffect(() => {
2204
- s && (f || xn(s));
2205
- }, [f, s]), /* @__PURE__ */ qn(Ar.Provider, {
2206
- value: d.useMemo(() => ({
2207
- preserveTabOrder: o,
2208
- beforeOutsideRef: a,
2209
- afterOutsideRef: l,
2210
- beforeInsideRef: u,
2211
- afterInsideRef: m,
2212
- portalNode: s,
2213
- setFocusManagerState: c
2214
- }), [o, s]),
2215
- children: [v && s && /* @__PURE__ */ me(Ot, {
2216
- "data-type": "outside",
2217
- ref: a,
2218
- onFocus: (g) => {
2219
- if (ot(g, s)) {
2220
- var y;
2221
- (y = u.current) == null || y.focus();
2222
- } else {
2223
- const x = i ? i.domReference : null, b = fr(x);
2224
- b?.focus();
2225
- }
2226
- }
2227
- }), v && s && /* @__PURE__ */ me("span", {
2228
- "aria-owns": s.id,
2229
- style: Nt
2230
- }), s && /* @__PURE__ */ nn.createPortal(t, s), v && s && /* @__PURE__ */ me(Ot, {
2231
- "data-type": "outside",
2232
- ref: l,
2233
- onFocus: (g) => {
2234
- if (ot(g, s)) {
2235
- var y;
2236
- (y = m.current) == null || y.focus();
2237
- } else {
2238
- const x = i ? i.domReference : null, b = ar(x);
2239
- b?.focus(), i?.closeOnFocusOut && i?.onOpenChange(!1, g.nativeEvent, "focus-out");
2240
- }
2241
- }
2242
- })]
2243
- });
2244
- }
2245
- const Sr = () => d.useContext(Ar);
2246
- function Nn(e) {
2247
- return d.useMemo(() => (t) => {
2248
- e.forEach((n) => {
2249
- n && (n.current = t);
2250
- });
2251
- }, e);
2252
- }
2253
- const li = 20;
2254
- let Le = [];
2255
- function ln() {
2256
- Le = Le.filter((e) => e.isConnected);
2257
- }
2258
- function ai(e) {
2259
- ln(), e && We(e) !== "body" && (Le.push(e), Le.length > li && (Le = Le.slice(-20)));
2260
- }
2261
- function _n() {
2262
- return ln(), Le[Le.length - 1];
2263
- }
2264
- function fi(e) {
2265
- const t = lt();
2266
- return jn(e, t) ? e : At(e, t)[0] || e;
2267
- }
2268
- function Wn(e, t) {
2269
- var n;
2270
- if (!t.current.includes("floating") && !((n = e.getAttribute("role")) != null && n.includes("dialog")))
2271
- return;
2272
- const r = lt(), s = Pr(e, r).filter((c) => {
2273
- const a = c.getAttribute("data-tabindex") || "";
2274
- return jn(c, r) || c.hasAttribute("data-tabindex") && !a.startsWith("-");
2275
- }), i = e.getAttribute("tabindex");
2276
- t.current.includes("floating") || s.length === 0 ? i !== "0" && e.setAttribute("tabindex", "0") : (i !== "-1" || e.hasAttribute("data-tabindex") && e.getAttribute("data-tabindex") !== "-1") && (e.setAttribute("tabindex", "-1"), e.setAttribute("data-tabindex", "-1"));
2277
- }
2278
- const di = /* @__PURE__ */ d.forwardRef(function(t, n) {
2279
- return /* @__PURE__ */ me("button", {
2280
- ...t,
2281
- type: "button",
2282
- ref: n,
2283
- tabIndex: -1,
2284
- style: Nt
2285
- });
2286
- });
2287
- function _i(e) {
2288
- const {
2289
- context: t,
2290
- children: n,
2291
- disabled: r = !1,
2292
- order: o = ["content"],
2293
- guards: s = !0,
2294
- initialFocus: i = 0,
2295
- returnFocus: c = !0,
2296
- restoreFocus: a = !1,
2297
- modal: l = !0,
2298
- visuallyHiddenDismiss: u = !1,
2299
- closeOnFocusOut: m = !0,
2300
- outsideElementsInert: p = !1,
2301
- getInsideElements: f = () => []
2302
- } = e, {
2303
- open: v,
2304
- onOpenChange: g,
2305
- events: y,
2306
- dataRef: x,
2307
- elements: {
2308
- domReference: b,
2309
- floating: w
2310
- }
2311
- } = t, C = ie(() => {
2312
- var K;
2313
- return (K = x.current.floatingContext) == null ? void 0 : K.nodeId;
2314
- }), M = ie(f), k = typeof i == "number" && i < 0, N = en(b) && k, P = ii(), V = P ? s : !0, L = !V || P && p, _ = ye(o), G = ye(i), W = ye(c), R = et(), E = Sr(), $ = d.useRef(null), T = d.useRef(null), h = d.useRef(!1), I = d.useRef(!1), D = d.useRef(-1), ee = d.useRef(-1), F = E != null, O = It(w), J = ie(function(K) {
2315
- return K === void 0 && (K = O), K ? At(K, lt()) : [];
2316
- }), j = ie((K) => {
2317
- const z = J(K);
2318
- return _.current.map((B) => b && B === "reference" ? b : O && B === "floating" ? O : z).filter(Boolean).flat();
2319
- });
2320
- d.useEffect(() => {
2321
- if (r || !l) return;
2322
- function K(B) {
2323
- if (B.key === "Tab") {
2324
- ce(O, Re(le(O))) && J().length === 0 && !N && de(B);
2325
- const Q = j(), te = Ae(B);
2326
- _.current[0] === "reference" && te === b && (de(B), B.shiftKey ? Ke(Q[Q.length - 1]) : Ke(Q[1])), _.current[1] === "floating" && te === O && B.shiftKey && (de(B), Ke(Q[0]));
2327
- }
2328
- }
2329
- const z = le(O);
2330
- return z.addEventListener("keydown", K), () => {
2331
- z.removeEventListener("keydown", K);
2332
- };
2333
- }, [r, b, O, l, _, N, J, j]), d.useEffect(() => {
2334
- if (r || !w) return;
2335
- function K(z) {
2336
- const B = Ae(z), te = J().indexOf(B);
2337
- te !== -1 && (D.current = te);
2338
- }
2339
- return w.addEventListener("focusin", K), () => {
2340
- w.removeEventListener("focusin", K);
2341
- };
2342
- }, [r, w, J]), d.useEffect(() => {
2343
- if (r || !m) return;
2344
- function K() {
2345
- I.current = !0, setTimeout(() => {
2346
- I.current = !1;
2347
- });
2348
- }
2349
- function z(te) {
2350
- const U = te.relatedTarget, fe = te.currentTarget, se = Ae(te);
2351
- queueMicrotask(() => {
2352
- const ae = C(), xe = !(ce(b, U) || ce(w, U) || ce(U, w) || ce(E?.portalNode, U) || U != null && U.hasAttribute(ze("focus-guard")) || R && ($e(R.nodesRef.current, ae).find((S) => {
2353
- var H, A;
2354
- return ce((H = S.context) == null ? void 0 : H.elements.floating, U) || ce((A = S.context) == null ? void 0 : A.elements.domReference, U);
2355
- }) || wn(R.nodesRef.current, ae).find((S) => {
2356
- var H, A, q;
2357
- return [(H = S.context) == null ? void 0 : H.elements.floating, It((A = S.context) == null ? void 0 : A.elements.floating)].includes(U) || ((q = S.context) == null ? void 0 : q.elements.domReference) === U;
2358
- })));
2359
- if (fe === b && O && Wn(O, _), a && fe !== b && !(se != null && se.isConnected) && Re(le(O)) === le(O).body) {
2360
- ne(O) && O.focus();
2361
- const S = D.current, H = J(), A = H[S] || H[H.length - 1] || O;
2362
- ne(A) && A.focus();
2363
- }
2364
- if (x.current.insideReactTree) {
2365
- x.current.insideReactTree = !1;
2366
- return;
2367
- }
2368
- (N || !l) && U && xe && !I.current && // Fix React 18 Strict Mode returnFocus due to double rendering.
2369
- U !== _n() && (h.current = !0, g(!1, te, "focus-out"));
2370
- });
2371
- }
2372
- const B = !!(!R && E);
2373
- function Q() {
2374
- ge(ee), x.current.insideReactTree = !0, ee.current = window.setTimeout(() => {
2375
- x.current.insideReactTree = !1;
2376
- });
2377
- }
2378
- if (w && ne(b))
2379
- return b.addEventListener("focusout", z), b.addEventListener("pointerdown", K), w.addEventListener("focusout", z), B && w.addEventListener("focusout", Q, !0), () => {
2380
- b.removeEventListener("focusout", z), b.removeEventListener("pointerdown", K), w.removeEventListener("focusout", z), B && w.removeEventListener("focusout", Q, !0);
2381
- };
2382
- }, [r, b, w, O, l, R, E, g, m, a, J, N, C, _, x]);
2383
- const oe = d.useRef(null), ve = d.useRef(null), tt = Nn([oe, E?.beforeInsideRef]), Ue = Nn([ve, E?.afterInsideRef]);
2384
- d.useEffect(() => {
2385
- var K, z;
2386
- if (r || !w) return;
2387
- const B = Array.from((E == null || (K = E.portalNode) == null ? void 0 : K.querySelectorAll("[" + ze("portal") + "]")) || []), te = (z = (R ? wn(R.nodesRef.current, C()) : []).find((se) => {
2388
- var ae;
2389
- return en(((ae = se.context) == null ? void 0 : ae.elements.domReference) || null);
2390
- })) == null || (z = z.context) == null ? void 0 : z.elements.domReference, U = [w, te, ...B, ...M(), $.current, T.current, oe.current, ve.current, E?.beforeOutsideRef.current, E?.afterOutsideRef.current, _.current.includes("reference") || N ? b : null].filter((se) => se != null), fe = l || N ? kn(U, !L, L) : kn(U);
2391
- return () => {
2392
- fe();
2393
- };
2394
- }, [r, b, w, l, _, E, N, V, L, R, C, M]), X(() => {
2395
- if (r || !ne(O)) return;
2396
- const K = le(O), z = Re(K);
2397
- queueMicrotask(() => {
2398
- const B = j(O), Q = G.current, te = (typeof Q == "number" ? B[Q] : Q.current) || O, U = ce(O, z);
2399
- !k && !U && v && Ke(te, {
2400
- preventScroll: te === O
2401
- });
2402
- });
2403
- }, [r, v, O, k, j, G]), X(() => {
2404
- if (r || !O) return;
2405
- const K = le(O), z = Re(K);
2406
- ai(z);
2407
- function B(U) {
2408
- let {
2409
- reason: fe,
2410
- event: se,
2411
- nested: ae
2412
- } = U;
2413
- if (["hover", "safe-polygon"].includes(fe) && se.type === "mouseleave" && (h.current = !0), fe === "outside-press")
2414
- if (ae)
2415
- h.current = !1;
2416
- else if (rr(se) || or(se))
2417
- h.current = !1;
2418
- else {
2419
- let xe = !1;
2420
- document.createElement("div").focus({
2421
- get preventScroll() {
2422
- return xe = !0, !1;
2423
- }
2424
- }), xe ? h.current = !1 : h.current = !0;
2425
- }
2426
- }
2427
- y.on("openchange", B);
2428
- const Q = K.createElement("span");
2429
- Q.setAttribute("tabindex", "-1"), Q.setAttribute("aria-hidden", "true"), Object.assign(Q.style, Nt), F && b && b.insertAdjacentElement("afterend", Q);
2430
- function te() {
2431
- if (typeof W.current == "boolean") {
2432
- const U = b || _n();
2433
- return U && U.isConnected ? U : Q;
2434
- }
2435
- return W.current.current || Q;
2436
- }
2437
- return () => {
2438
- y.off("openchange", B);
2439
- const U = Re(K), fe = ce(w, U) || R && $e(R.nodesRef.current, C(), !1).some((ae) => {
2440
- var xe;
2441
- return ce((xe = ae.context) == null ? void 0 : xe.elements.floating, U);
2442
- }), se = te();
2443
- queueMicrotask(() => {
2444
- const ae = fi(se);
2445
- // eslint-disable-next-line react-hooks/exhaustive-deps
2446
- W.current && !h.current && ne(ae) && // If the focus moved somewhere else after mount, avoid returning focus
2447
- // since it likely entered a different element which should be
2448
- // respected: https://github.com/floating-ui/floating-ui/issues/2607
2449
- (!(ae !== U && U !== K.body) || fe) && ae.focus({
2450
- preventScroll: !0
2451
- }), Q.remove();
2452
- });
2453
- };
2454
- }, [r, w, O, W, x, y, R, F, b, C]), d.useEffect(() => (queueMicrotask(() => {
2455
- h.current = !1;
2456
- }), () => {
2457
- queueMicrotask(ln);
2458
- }), [r]), X(() => {
2459
- if (!r && E)
2460
- return E.setFocusManagerState({
2461
- modal: l,
2462
- closeOnFocusOut: m,
2463
- open: v,
2464
- onOpenChange: g,
2465
- domReference: b
2466
- }), () => {
2467
- E.setFocusManagerState(null);
2468
- };
2469
- }, [r, E, l, v, g, m, b]), X(() => {
2470
- r || O && Wn(O, _);
2471
- }, [r, O, _]);
2472
- function Oe(K) {
2473
- return r || !u || !l ? null : /* @__PURE__ */ me(di, {
2474
- ref: K === "start" ? $ : T,
2475
- onClick: (z) => g(!1, z.nativeEvent),
2476
- children: typeof u == "string" ? u : "Dismiss"
2477
- });
2478
- }
2479
- const Ge = !r && V && (l ? !N : !0) && (F || l);
2480
- return /* @__PURE__ */ qn(Dr, {
2481
- children: [Ge && /* @__PURE__ */ me(Ot, {
2482
- "data-type": "inside",
2483
- ref: tt,
2484
- onFocus: (K) => {
2485
- if (l) {
2486
- const B = j();
2487
- Ke(o[0] === "reference" ? B[0] : B[B.length - 1]);
2488
- } else if (E != null && E.preserveTabOrder && E.portalNode)
2489
- if (h.current = !1, ot(K, E.portalNode)) {
2490
- const B = ar(b);
2491
- B?.focus();
2492
- } else {
2493
- var z;
2494
- (z = E.beforeOutsideRef.current) == null || z.focus();
2495
- }
2496
- }
2497
- }), !N && Oe("start"), n, Oe("end"), Ge && /* @__PURE__ */ me(Ot, {
2498
- "data-type": "inside",
2499
- ref: Ue,
2500
- onFocus: (K) => {
2501
- if (l)
2502
- Ke(j()[0]);
2503
- else if (E != null && E.preserveTabOrder && E.portalNode)
2504
- if (m && (h.current = !0), ot(K, E.portalNode)) {
2505
- const B = fr(b);
2506
- B?.focus();
2507
- } else {
2508
- var z;
2509
- (z = E.afterOutsideRef.current) == null || z.focus();
2510
- }
2511
- }
2512
- })]
2513
- });
2514
- }
2515
- let vt = 0;
2516
- const Vn = "--floating-ui-scrollbar-width";
2517
- function mi() {
2518
- const e = sn(), t = /iP(hone|ad|od)|iOS/.test(e) || // iPads can claim to be MacIntel
2519
- e === "MacIntel" && navigator.maxTouchPoints > 1, n = document.body.style, o = Math.round(document.documentElement.getBoundingClientRect().left) + document.documentElement.scrollLeft ? "paddingLeft" : "paddingRight", s = window.innerWidth - document.documentElement.clientWidth, i = n.left ? parseFloat(n.left) : window.scrollX, c = n.top ? parseFloat(n.top) : window.scrollY;
2520
- if (n.overflow = "hidden", n.setProperty(Vn, s + "px"), s && (n[o] = s + "px"), t) {
2521
- var a, l;
2522
- const u = ((a = window.visualViewport) == null ? void 0 : a.offsetLeft) || 0, m = ((l = window.visualViewport) == null ? void 0 : l.offsetTop) || 0;
2523
- Object.assign(n, {
2524
- position: "fixed",
2525
- top: -(c - Math.floor(m)) + "px",
2526
- left: -(i - Math.floor(u)) + "px",
2527
- right: "0"
2528
- });
2529
- }
2530
- return () => {
2531
- Object.assign(n, {
2532
- overflow: "",
2533
- [o]: ""
2534
- }), n.removeProperty(Vn), t && (Object.assign(n, {
2535
- position: "",
2536
- top: "",
2537
- left: "",
2538
- right: ""
2539
- }), window.scrollTo(i, c));
2540
- };
2541
- }
2542
- let Kn = () => {
2543
- };
2544
- const Wi = /* @__PURE__ */ d.forwardRef(function(t, n) {
2545
- const {
2546
- lockScroll: r = !1,
2547
- ...o
2548
- } = t;
2549
- return X(() => {
2550
- if (r)
2551
- return vt++, vt === 1 && (Kn = mi()), () => {
2552
- vt--, vt === 0 && Kn();
2553
- };
2554
- }, [r]), /* @__PURE__ */ me("div", {
2555
- ref: n,
2556
- ...o,
2557
- style: {
2558
- position: "fixed",
2559
- overflow: "auto",
2560
- top: 0,
2561
- right: 0,
2562
- bottom: 0,
2563
- left: 0,
2564
- ...o.style
2565
- }
2566
- });
2567
- });
2568
- function $n(e) {
2569
- return ne(e.target) && e.target.tagName === "BUTTON";
2570
- }
2571
- function pi(e) {
2572
- return ne(e.target) && e.target.tagName === "A";
2573
- }
2574
- function Bn(e) {
2575
- return cn(e);
2576
- }
2577
- function Vi(e, t) {
2578
- t === void 0 && (t = {});
2579
- const {
2580
- open: n,
2581
- onOpenChange: r,
2582
- dataRef: o,
2583
- elements: {
2584
- domReference: s
2585
- }
2586
- } = e, {
2587
- enabled: i = !0,
2588
- event: c = "click",
2589
- toggle: a = !0,
2590
- ignoreMouse: l = !1,
2591
- keyboardHandlers: u = !0,
2592
- stickIfOpen: m = !0
2593
- } = t, p = d.useRef(), f = d.useRef(!1), v = d.useMemo(() => ({
2594
- onPointerDown(g) {
2595
- p.current = g.pointerType;
2596
- },
2597
- onMouseDown(g) {
2598
- const y = p.current;
2599
- g.button === 0 && c !== "click" && (it(y, !0) && l || (n && a && (!(o.current.openEvent && m) || o.current.openEvent.type === "mousedown") ? r(!1, g.nativeEvent, "click") : (g.preventDefault(), r(!0, g.nativeEvent, "click"))));
2600
- },
2601
- onClick(g) {
2602
- const y = p.current;
2603
- if (c === "mousedown" && p.current) {
2604
- p.current = void 0;
2605
- return;
2606
- }
2607
- it(y, !0) && l || (n && a && (!(o.current.openEvent && m) || o.current.openEvent.type === "click") ? r(!1, g.nativeEvent, "click") : r(!0, g.nativeEvent, "click"));
2608
- },
2609
- onKeyDown(g) {
2610
- p.current = void 0, !(g.defaultPrevented || !u || $n(g)) && (g.key === " " && !Bn(s) && (g.preventDefault(), f.current = !0), !pi(g) && g.key === "Enter" && r(!(n && a), g.nativeEvent, "click"));
2611
- },
2612
- onKeyUp(g) {
2613
- g.defaultPrevented || !u || $n(g) || Bn(s) || g.key === " " && f.current && (f.current = !1, r(!(n && a), g.nativeEvent, "click"));
2614
- }
2615
- }), [o, s, c, l, u, r, n, m, a]);
2616
- return d.useMemo(() => i ? {
2617
- reference: v
2618
- } : {}, [i, v]);
2619
- }
2620
- const gi = {
2621
- pointerdown: "onPointerDown",
2622
- mousedown: "onMouseDown",
2623
- click: "onClick"
2624
- }, hi = {
2625
- pointerdown: "onPointerDownCapture",
2626
- mousedown: "onMouseDownCapture",
2627
- click: "onClickCapture"
2628
- }, Hn = (e) => {
2629
- var t, n;
2630
- return {
2631
- escapeKey: typeof e == "boolean" ? e : (t = e?.escapeKey) != null ? t : !1,
2632
- outsidePress: typeof e == "boolean" ? e : (n = e?.outsidePress) != null ? n : !0
2633
- };
2634
- };
2635
- function Ki(e, t) {
2636
- t === void 0 && (t = {});
2637
- const {
2638
- open: n,
2639
- onOpenChange: r,
2640
- elements: o,
2641
- dataRef: s
2642
- } = e, {
2643
- enabled: i = !0,
2644
- escapeKey: c = !0,
2645
- outsidePress: a = !0,
2646
- outsidePressEvent: l = "pointerdown",
2647
- referencePress: u = !1,
2648
- referencePressEvent: m = "pointerdown",
2649
- ancestorScroll: p = !1,
2650
- bubbles: f,
2651
- capture: v
2652
- } = t, g = et(), y = ie(typeof a == "function" ? a : () => !1), x = typeof a == "function" ? y : a, b = d.useRef(!1), {
2653
- escapeKey: w,
2654
- outsidePress: C
2655
- } = Hn(f), {
2656
- escapeKey: M,
2657
- outsidePress: k
2658
- } = Hn(v), N = d.useRef(!1), P = ie((R) => {
2659
- var E;
2660
- if (!n || !i || !c || R.key !== "Escape" || N.current)
2661
- return;
2662
- const $ = (E = s.current.floatingContext) == null ? void 0 : E.nodeId, T = g ? $e(g.nodesRef.current, $) : [];
2663
- if (!w && (R.stopPropagation(), T.length > 0)) {
2664
- let h = !0;
2665
- if (T.forEach((I) => {
2666
- var D;
2667
- if ((D = I.context) != null && D.open && !I.context.dataRef.current.__escapeKeyBubbles) {
2668
- h = !1;
2669
- return;
2670
- }
2671
- }), !h)
2672
- return;
2673
- }
2674
- r(!1, so(R) ? R.nativeEvent : R, "escape-key");
2675
- }), V = ie((R) => {
2676
- var E;
2677
- const $ = () => {
2678
- var T;
2679
- P(R), (T = Ae(R)) == null || T.removeEventListener("keydown", $);
2680
- };
2681
- (E = Ae(R)) == null || E.addEventListener("keydown", $);
2682
- }), L = ie((R) => {
2683
- var E;
2684
- const $ = s.current.insideReactTree;
2685
- s.current.insideReactTree = !1;
2686
- const T = b.current;
2687
- if (b.current = !1, l === "click" && T || $ || typeof x == "function" && !x(R))
2688
- return;
2689
- const h = Ae(R), I = "[" + ze("inert") + "]", D = le(o.floating).querySelectorAll(I);
2690
- let ee = Y(h) ? h : null;
2691
- for (; ee && !Me(ee); ) {
2692
- const j = Pe(ee);
2693
- if (Me(j) || !Y(j))
2694
- break;
2695
- ee = j;
2696
- }
2697
- if (D.length && Y(h) && !ro(h) && // Clicked on a direct ancestor (e.g. FloatingOverlay).
2698
- !ce(h, o.floating) && // If the target root element contains none of the markers, then the
2699
- // element was injected after the floating element rendered.
2700
- Array.from(D).every((j) => !ce(ee, j)))
2701
- return;
2702
- if (ne(h) && W) {
2703
- const j = Me(h), oe = we(h), ve = /auto|scroll/, tt = j || ve.test(oe.overflowX), Ue = j || ve.test(oe.overflowY), Oe = tt && h.clientWidth > 0 && h.scrollWidth > h.clientWidth, Ge = Ue && h.clientHeight > 0 && h.scrollHeight > h.clientHeight, K = oe.direction === "rtl", z = Ge && (K ? R.offsetX <= h.offsetWidth - h.clientWidth : R.offsetX > h.clientWidth), B = Oe && R.offsetY > h.clientHeight;
2704
- if (z || B)
2705
- return;
2706
- }
2707
- const F = (E = s.current.floatingContext) == null ? void 0 : E.nodeId, O = g && $e(g.nodesRef.current, F).some((j) => {
2708
- var oe;
2709
- return Kt(R, (oe = j.context) == null ? void 0 : oe.elements.floating);
2710
- });
2711
- if (Kt(R, o.floating) || Kt(R, o.domReference) || O)
2712
- return;
2713
- const J = g ? $e(g.nodesRef.current, F) : [];
2714
- if (J.length > 0) {
2715
- let j = !0;
2716
- if (J.forEach((oe) => {
2717
- var ve;
2718
- if ((ve = oe.context) != null && ve.open && !oe.context.dataRef.current.__outsidePressBubbles) {
2719
- j = !1;
2720
- return;
2721
- }
2722
- }), !j)
2723
- return;
2724
- }
2725
- r(!1, R, "outside-press");
2726
- }), _ = ie((R) => {
2727
- var E;
2728
- const $ = () => {
2729
- var T;
2730
- L(R), (T = Ae(R)) == null || T.removeEventListener(l, $);
2731
- };
2732
- (E = Ae(R)) == null || E.addEventListener(l, $);
2733
- });
2734
- d.useEffect(() => {
2735
- if (!n || !i)
2736
- return;
2737
- s.current.__escapeKeyBubbles = w, s.current.__outsidePressBubbles = C;
2738
- let R = -1;
2739
- function E(D) {
2740
- r(!1, D, "ancestor-scroll");
2741
- }
2742
- function $() {
2743
- window.clearTimeout(R), N.current = !0;
2744
- }
2745
- function T() {
2746
- R = window.setTimeout(
2747
- () => {
2748
- N.current = !1;
2749
- },
2750
- // 0ms or 1ms don't work in Safari. 5ms appears to consistently work.
2751
- // Only apply to WebKit for the test to remain 0ms.
2752
- Pt() ? 5 : 0
2753
- );
2754
- }
2755
- const h = le(o.floating);
2756
- c && (h.addEventListener("keydown", M ? V : P, M), h.addEventListener("compositionstart", $), h.addEventListener("compositionend", T)), x && h.addEventListener(l, k ? _ : L, k);
2757
- let I = [];
2758
- return p && (Y(o.domReference) && (I = ke(o.domReference)), Y(o.floating) && (I = I.concat(ke(o.floating))), !Y(o.reference) && o.reference && o.reference.contextElement && (I = I.concat(ke(o.reference.contextElement)))), I = I.filter((D) => {
2759
- var ee;
2760
- return D !== ((ee = h.defaultView) == null ? void 0 : ee.visualViewport);
2761
- }), I.forEach((D) => {
2762
- D.addEventListener("scroll", E, {
2763
- passive: !0
2764
- });
2765
- }), () => {
2766
- c && (h.removeEventListener("keydown", M ? V : P, M), h.removeEventListener("compositionstart", $), h.removeEventListener("compositionend", T)), x && h.removeEventListener(l, k ? _ : L, k), I.forEach((D) => {
2767
- D.removeEventListener("scroll", E);
2768
- }), window.clearTimeout(R);
2769
- };
2770
- }, [s, o, c, x, l, n, r, p, i, w, C, P, M, V, L, k, _]), d.useEffect(() => {
2771
- s.current.insideReactTree = !1;
2772
- }, [s, x, l]);
2773
- const G = d.useMemo(() => ({
2774
- onKeyDown: P,
2775
- ...u && {
2776
- [gi[m]]: (R) => {
2777
- r(!1, R.nativeEvent, "reference-press");
2778
- },
2779
- ...m !== "click" && {
2780
- onClick(R) {
2781
- r(!1, R.nativeEvent, "reference-press");
2782
- }
2783
- }
2784
- }
2785
- }), [P, r, u, m]), W = d.useMemo(() => ({
2786
- onKeyDown: P,
2787
- onMouseDown() {
2788
- b.current = !0;
2789
- },
2790
- onMouseUp() {
2791
- b.current = !0;
2792
- },
2793
- [hi[l]]: () => {
2794
- s.current.insideReactTree = !0;
2795
- }
2796
- }), [P, l, s]);
2797
- return d.useMemo(() => i ? {
2798
- reference: G,
2799
- floating: W
2800
- } : {}, [i, G, W]);
2801
- }
2802
- function vi(e) {
2803
- const {
2804
- open: t = !1,
2805
- onOpenChange: n,
2806
- elements: r
2807
- } = e, o = Ft(), s = d.useRef({}), [i] = d.useState(() => Cr()), c = Ze() != null;
2808
- if (process.env.NODE_ENV !== "production") {
2809
- const f = r.reference;
2810
- f && !Y(f) && ri("Cannot pass a virtual element to the `elements.reference` option,", "as it must be a real DOM element. Use `refs.setPositionReference()`", "instead.");
2811
- }
2812
- const [a, l] = d.useState(r.reference), u = ie((f, v, g) => {
2813
- s.current.openEvent = f ? v : void 0, i.emit("openchange", {
2814
- open: f,
2815
- event: v,
2816
- reason: g,
2817
- nested: c
2818
- }), n?.(f, v, g);
2819
- }), m = d.useMemo(() => ({
2820
- setPositionReference: l
2821
- }), []), p = d.useMemo(() => ({
2822
- reference: a || r.reference || null,
2823
- floating: r.floating || null,
2824
- domReference: r.reference
2825
- }), [a, r.reference, r.floating]);
2826
- return d.useMemo(() => ({
2827
- dataRef: s,
2828
- open: t,
2829
- onOpenChange: u,
2830
- elements: p,
2831
- events: i,
2832
- floatingId: o,
2833
- refs: m
2834
- }), [t, u, p, i, o, m]);
2835
- }
2836
- function $i(e) {
2837
- e === void 0 && (e = {});
2838
- const {
2839
- nodeId: t
2840
- } = e, n = vi({
2841
- ...e,
2842
- elements: {
2843
- reference: null,
2844
- floating: null,
2845
- ...e.elements
2846
- }
2847
- }), r = e.rootContext || n, o = r.elements, [s, i] = d.useState(null), [c, a] = d.useState(null), u = o?.domReference || s, m = d.useRef(null), p = et();
2848
- X(() => {
2849
- u && (m.current = u);
2850
- }, [u]);
2851
- const f = jo({
2852
- ...e,
2853
- elements: {
2854
- ...o,
2855
- ...c && {
2856
- reference: c
2857
- }
2858
- }
2859
- }), v = d.useCallback((w) => {
2860
- const C = Y(w) ? {
2861
- getBoundingClientRect: () => w.getBoundingClientRect(),
2862
- getClientRects: () => w.getClientRects(),
2863
- contextElement: w
2864
- } : w;
2865
- a(C), f.refs.setReference(C);
2866
- }, [f.refs]), g = d.useCallback((w) => {
2867
- (Y(w) || w === null) && (m.current = w, i(w)), (Y(f.refs.reference.current) || f.refs.reference.current === null || // Don't allow setting virtual elements using the old technique back to
2868
- // `null` to support `positionReference` + an unstable `reference`
2869
- // callback ref.
2870
- w !== null && !Y(w)) && f.refs.setReference(w);
2871
- }, [f.refs]), y = d.useMemo(() => ({
2872
- ...f.refs,
2873
- setReference: g,
2874
- setPositionReference: v,
2875
- domReference: m
2876
- }), [f.refs, g, v]), x = d.useMemo(() => ({
2877
- ...f.elements,
2878
- domReference: u
2879
- }), [f.elements, u]), b = d.useMemo(() => ({
2880
- ...f,
2881
- ...r,
2882
- refs: y,
2883
- elements: x,
2884
- nodeId: t
2885
- }), [f, y, x, t, r]);
2886
- return X(() => {
2887
- r.dataRef.current.floatingContext = b;
2888
- const w = p?.nodesRef.current.find((C) => C.id === t);
2889
- w && (w.context = b);
2890
- }), d.useMemo(() => ({
2891
- ...f,
2892
- context: b,
2893
- refs: y,
2894
- elements: x
2895
- }), [f, y, x, b]);
2896
- }
2897
- function qt() {
2898
- return Zr() && tr();
2899
- }
2900
- function Bi(e, t) {
2901
- t === void 0 && (t = {});
2902
- const {
2903
- open: n,
2904
- onOpenChange: r,
2905
- events: o,
2906
- dataRef: s,
2907
- elements: i
2908
- } = e, {
2909
- enabled: c = !0,
2910
- visibleOnly: a = !0
2911
- } = t, l = d.useRef(!1), u = d.useRef(-1), m = d.useRef(!0);
2912
- d.useEffect(() => {
2913
- if (!c) return;
2914
- const f = pe(i.domReference);
2915
- function v() {
2916
- !n && ne(i.domReference) && i.domReference === Re(le(i.domReference)) && (l.current = !0);
2917
- }
2918
- function g() {
2919
- m.current = !0;
2920
- }
2921
- function y() {
2922
- m.current = !1;
2923
- }
2924
- return f.addEventListener("blur", v), qt() && (f.addEventListener("keydown", g, !0), f.addEventListener("pointerdown", y, !0)), () => {
2925
- f.removeEventListener("blur", v), qt() && (f.removeEventListener("keydown", g, !0), f.removeEventListener("pointerdown", y, !0));
2926
- };
2927
- }, [i.domReference, n, c]), d.useEffect(() => {
2928
- if (!c) return;
2929
- function f(v) {
2930
- let {
2931
- reason: g
2932
- } = v;
2933
- (g === "reference-press" || g === "escape-key") && (l.current = !0);
2934
- }
2935
- return o.on("openchange", f), () => {
2936
- o.off("openchange", f);
2937
- };
2938
- }, [o, c]), d.useEffect(() => () => {
2939
- ge(u);
2940
- }, []);
2941
- const p = d.useMemo(() => ({
2942
- onMouseLeave() {
2943
- l.current = !1;
2944
- },
2945
- onFocus(f) {
2946
- if (l.current) return;
2947
- const v = Ae(f.nativeEvent);
2948
- if (a && Y(v)) {
2949
- if (qt() && !f.relatedTarget) {
2950
- if (!m.current && !cn(v))
2951
- return;
2952
- } else if (!oo(v))
2953
- return;
2954
- }
2955
- r(!0, f.nativeEvent, "focus");
2956
- },
2957
- onBlur(f) {
2958
- l.current = !1;
2959
- const v = f.relatedTarget, g = f.nativeEvent, y = Y(v) && v.hasAttribute(ze("focus-guard")) && v.getAttribute("data-type") === "outside";
2960
- u.current = window.setTimeout(() => {
2961
- var x;
2962
- const b = Re(i.domReference ? i.domReference.ownerDocument : document);
2963
- !v && b === i.domReference || ce((x = s.current.floatingContext) == null ? void 0 : x.refs.floating.current, b) || ce(i.domReference, b) || y || r(!1, g, "focus");
2964
- });
2965
- }
2966
- }), [s, i.domReference, r, a]);
2967
- return d.useMemo(() => c ? {
2968
- reference: p
2969
- } : {}, [c, p]);
2970
- }
2971
- function Xt(e, t, n) {
2972
- const r = /* @__PURE__ */ new Map(), o = n === "item";
2973
- let s = e;
2974
- if (o && e) {
2975
- const {
2976
- [On]: i,
2977
- [An]: c,
2978
- ...a
2979
- } = e;
2980
- s = a;
2981
- }
2982
- return {
2983
- ...n === "floating" && {
2984
- tabIndex: -1,
2985
- [Qo]: ""
2986
- },
2987
- ...s,
2988
- ...t.map((i) => {
2989
- const c = i ? i[n] : null;
2990
- return typeof c == "function" ? e ? c(e) : null : c;
2991
- }).concat(e).reduce((i, c) => (c && Object.entries(c).forEach((a) => {
2992
- let [l, u] = a;
2993
- if (!(o && [On, An].includes(l)))
2994
- if (l.indexOf("on") === 0) {
2995
- if (r.has(l) || r.set(l, []), typeof u == "function") {
2996
- var m;
2997
- (m = r.get(l)) == null || m.push(u), i[l] = function() {
2998
- for (var p, f = arguments.length, v = new Array(f), g = 0; g < f; g++)
2999
- v[g] = arguments[g];
3000
- return (p = r.get(l)) == null ? void 0 : p.map((y) => y(...v)).find((y) => y !== void 0);
3001
- };
3002
- }
3003
- } else
3004
- i[l] = u;
3005
- }), i), {})
3006
- };
3007
- }
3008
- function Hi(e) {
3009
- e === void 0 && (e = []);
3010
- const t = e.map((c) => c?.reference), n = e.map((c) => c?.floating), r = e.map((c) => c?.item), o = d.useCallback(
3011
- (c) => Xt(c, e, "reference"),
3012
- // eslint-disable-next-line react-hooks/exhaustive-deps
3013
- t
3014
- ), s = d.useCallback(
3015
- (c) => Xt(c, e, "floating"),
3016
- // eslint-disable-next-line react-hooks/exhaustive-deps
3017
- n
3018
- ), i = d.useCallback(
3019
- (c) => Xt(c, e, "item"),
3020
- // eslint-disable-next-line react-hooks/exhaustive-deps
3021
- r
3022
- );
3023
- return d.useMemo(() => ({
3024
- getReferenceProps: o,
3025
- getFloatingProps: s,
3026
- getItemProps: i
3027
- }), [o, s, i]);
3028
- }
3029
- const bi = "Escape";
3030
- function _t(e, t, n) {
3031
- switch (e) {
3032
- case "vertical":
3033
- return t;
3034
- case "horizontal":
3035
- return n;
3036
- default:
3037
- return t || n;
3038
- }
3039
- }
3040
- function bt(e, t) {
3041
- return _t(t, e === st || e === Fe, e === Ne || e === _e);
3042
- }
3043
- function Yt(e, t, n) {
3044
- return _t(t, e === Fe, n ? e === Ne : e === _e) || e === "Enter" || e === " " || e === "";
3045
- }
3046
- function zn(e, t, n) {
3047
- return _t(t, n ? e === Ne : e === _e, e === Fe);
3048
- }
3049
- function Un(e, t, n, r) {
3050
- const o = n ? e === _e : e === Ne, s = e === st;
3051
- return t === "both" || t === "horizontal" && r && r > 1 ? e === bi : _t(t, o, s);
3052
- }
3053
- function zi(e, t) {
3054
- const {
3055
- open: n,
3056
- onOpenChange: r,
3057
- elements: o,
3058
- floatingId: s
3059
- } = e, {
3060
- listRef: i,
3061
- activeIndex: c,
3062
- onNavigate: a = () => {
3063
- },
3064
- enabled: l = !0,
3065
- selectedIndex: u = null,
3066
- allowEscape: m = !1,
3067
- loop: p = !1,
3068
- nested: f = !1,
3069
- rtl: v = !1,
3070
- virtual: g = !1,
3071
- focusItemOnOpen: y = "auto",
3072
- focusItemOnHover: x = !0,
3073
- openOnArrowKeyDown: b = !0,
3074
- disabledIndices: w = void 0,
3075
- orientation: C = "vertical",
3076
- parentOrientation: M,
3077
- cols: k = 1,
3078
- scrollItemIntoView: N = !0,
3079
- virtualItemRef: P,
3080
- itemSizes: V,
3081
- dense: L = !1
3082
- } = t;
3083
- process.env.NODE_ENV !== "production" && (m && (p || zt("`useListNavigation` looping must be enabled to allow escaping."), g || zt("`useListNavigation` must be virtual to allow escaping.")), C === "vertical" && k > 1 && zt("In grid list navigation mode (`cols` > 1), the `orientation` should", 'be either "horizontal" or "both".'));
3084
- const _ = It(o.floating), G = ye(_), W = Ze(), R = et();
3085
- X(() => {
3086
- e.dataRef.current.orientation = C;
3087
- }, [e, C]);
3088
- const E = ie(() => {
3089
- a(h.current === -1 ? null : h.current);
3090
- }), $ = en(o.domReference), T = d.useRef(y), h = d.useRef(u ?? -1), I = d.useRef(null), D = d.useRef(!0), ee = d.useRef(E), F = d.useRef(!!o.floating), O = d.useRef(n), J = d.useRef(!1), j = d.useRef(!1), oe = ye(w), ve = ye(n), tt = ye(N), Ue = ye(u), [Oe, Ge] = d.useState(), [K, z] = d.useState(), B = ie(() => {
3091
- function S(Z) {
3092
- if (g) {
3093
- var re;
3094
- (re = Z.id) != null && re.endsWith("-fui-option") && (Z.id = s + "-" + Math.random().toString(16).slice(2, 10)), Ge(Z.id), R?.events.emit("virtualfocus", Z), P && (P.current = Z);
3095
- } else
3096
- Ke(Z, {
3097
- sync: J.current,
3098
- preventScroll: !0
3099
- });
3100
- }
3101
- const H = i.current[h.current], A = j.current;
3102
- H && S(H), (J.current ? (Z) => Z() : requestAnimationFrame)(() => {
3103
- const Z = i.current[h.current] || H;
3104
- if (!Z) return;
3105
- H || S(Z);
3106
- const re = tt.current;
3107
- re && te && (A || !D.current) && (Z.scrollIntoView == null || Z.scrollIntoView(typeof re == "boolean" ? {
3108
- block: "nearest",
3109
- inline: "nearest"
3110
- } : re));
3111
- });
3112
- });
3113
- X(() => {
3114
- l && (n && o.floating ? T.current && u != null && (j.current = !0, h.current = u, E()) : F.current && (h.current = -1, ee.current()));
3115
- }, [l, n, o.floating, u, E]), X(() => {
3116
- if (l && n && o.floating)
3117
- if (c == null) {
3118
- if (J.current = !1, Ue.current != null)
3119
- return;
3120
- if (F.current && (h.current = -1, B()), (!O.current || !F.current) && T.current && (I.current != null || T.current === !0 && I.current == null)) {
3121
- let S = 0;
3122
- const H = () => {
3123
- i.current[0] == null ? (S < 2 && (S ? requestAnimationFrame : queueMicrotask)(H), S++) : (h.current = I.current == null || Yt(I.current, C, v) || f ? yt(i, oe.current) : tn(i, oe.current), I.current = null, E());
3124
- };
3125
- H();
3126
- }
3127
- } else qe(i, c) || (h.current = c, B(), j.current = !1);
3128
- }, [l, n, o.floating, c, Ue, f, i, C, v, E, B, oe]), X(() => {
3129
- var S;
3130
- if (!l || o.floating || !R || g || !F.current)
3131
- return;
3132
- const H = R.nodesRef.current, A = (S = H.find((re) => re.id === W)) == null || (S = S.context) == null ? void 0 : S.elements.floating, q = Re(le(o.floating)), Z = H.some((re) => re.context && ce(re.context.elements.floating, q));
3133
- A && !Z && D.current && A.focus({
3134
- preventScroll: !0
3135
- });
3136
- }, [l, o.floating, R, W, g]), X(() => {
3137
- if (!l || !R || !g || W) return;
3138
- function S(H) {
3139
- z(H.id), P && (P.current = H);
3140
- }
3141
- return R.events.on("virtualfocus", S), () => {
3142
- R.events.off("virtualfocus", S);
3143
- };
3144
- }, [l, R, g, W, P]), X(() => {
3145
- ee.current = E, O.current = n, F.current = !!o.floating;
3146
- }), X(() => {
3147
- n || (I.current = null, T.current = y);
3148
- }, [n, y]);
3149
- const Q = c != null, te = d.useMemo(() => {
3150
- function S(A) {
3151
- if (!ve.current) return;
3152
- const q = i.current.indexOf(A);
3153
- q !== -1 && h.current !== q && (h.current = q, E());
3154
- }
3155
- return {
3156
- onFocus(A) {
3157
- let {
3158
- currentTarget: q
3159
- } = A;
3160
- J.current = !0, S(q);
3161
- },
3162
- onClick: (A) => {
3163
- let {
3164
- currentTarget: q
3165
- } = A;
3166
- return q.focus({
3167
- preventScroll: !0
3168
- });
3169
- },
3170
- // Safari
3171
- onMouseMove(A) {
3172
- let {
3173
- currentTarget: q
3174
- } = A;
3175
- J.current = !0, j.current = !1, x && S(q);
3176
- },
3177
- onPointerLeave(A) {
3178
- let {
3179
- pointerType: q
3180
- } = A;
3181
- if (!(!D.current || q === "touch") && (J.current = !0, !!x && (h.current = -1, E(), !g))) {
3182
- var Z;
3183
- (Z = G.current) == null || Z.focus({
3184
- preventScroll: !0
3185
- });
3186
- }
3187
- }
3188
- };
3189
- }, [ve, G, x, i, E, g]), U = d.useCallback(() => {
3190
- var S;
3191
- return M ?? (R == null || (S = R.nodesRef.current.find((H) => H.id === W)) == null || (S = S.context) == null || (S = S.dataRef) == null ? void 0 : S.current.orientation);
3192
- }, [W, R, M]), fe = ie((S) => {
3193
- if (D.current = !1, J.current = !0, S.which === 229 || !ve.current && S.currentTarget === G.current)
3194
- return;
3195
- if (f && Un(S.key, C, v, k)) {
3196
- bt(S.key, U()) || de(S), r(!1, S.nativeEvent, "list-navigation"), ne(o.domReference) && (g ? R?.events.emit("virtualfocus", o.domReference) : o.domReference.focus());
3197
- return;
3198
- }
3199
- const H = h.current, A = yt(i, w), q = tn(i, w);
3200
- if ($ || (S.key === "Home" && (de(S), h.current = A, E()), S.key === "End" && (de(S), h.current = q, E())), k > 1) {
3201
- const Z = V || Array.from({
3202
- length: i.current.length
3203
- }, () => ({
3204
- width: 1,
3205
- height: 1
3206
- })), re = sr(Z, k, L), nt = re.findIndex((be) => be != null && !Be(i, be, w)), at = re.reduce((be, Ve, ft) => Ve != null && !Be(i, Ve, w) ? ft : be, -1), rt = re[ir({
3207
- current: re.map((be) => be != null ? i.current[be] : null)
3208
- }, {
3209
- event: S,
3210
- orientation: C,
3211
- loop: p,
3212
- rtl: v,
3213
- cols: k,
3214
- // treat undefined (empty grid spaces) as disabled indices so we
3215
- // don't end up in them
3216
- disabledIndices: ur([...(typeof w != "function" ? w : null) || i.current.map((be, Ve) => Be(i, Ve, w) ? Ve : void 0), void 0], re),
3217
- minIndex: nt,
3218
- maxIndex: at,
3219
- prevIndex: cr(
3220
- h.current > q ? A : h.current,
3221
- Z,
3222
- re,
3223
- k,
3224
- // use a corner matching the edge closest to the direction
3225
- // we're moving in so we don't end up in the same item. Prefer
3226
- // top/left over bottom/right.
3227
- S.key === Fe ? "bl" : S.key === (v ? Ne : _e) ? "tr" : "tl"
3228
- ),
3229
- stopEvent: !0
3230
- })];
3231
- if (rt != null && (h.current = rt, E()), C === "both")
3232
- return;
3233
- }
3234
- if (bt(S.key, C)) {
3235
- if (de(S), n && !g && Re(S.currentTarget.ownerDocument) === S.currentTarget) {
3236
- h.current = Yt(S.key, C, v) ? A : q, E();
3237
- return;
3238
- }
3239
- Yt(S.key, C, v) ? p ? h.current = H >= q ? m && H !== i.current.length ? -1 : A : ue(i, {
3240
- startingIndex: H,
3241
- disabledIndices: w
3242
- }) : h.current = Math.min(q, ue(i, {
3243
- startingIndex: H,
3244
- disabledIndices: w
3245
- })) : p ? h.current = H <= A ? m && H !== -1 ? i.current.length : q : ue(i, {
3246
- startingIndex: H,
3247
- decrement: !0,
3248
- disabledIndices: w
3249
- }) : h.current = Math.max(A, ue(i, {
3250
- startingIndex: H,
3251
- decrement: !0,
3252
- disabledIndices: w
3253
- })), qe(i, h.current) && (h.current = -1), E();
3254
- }
3255
- }), se = d.useMemo(() => g && n && Q && {
3256
- "aria-activedescendant": K || Oe
3257
- }, [g, n, Q, K, Oe]), ae = d.useMemo(() => ({
3258
- "aria-orientation": C === "both" ? void 0 : C,
3259
- ...$ ? {} : se,
3260
- onKeyDown: fe,
3261
- onPointerMove() {
3262
- D.current = !0;
3263
- }
3264
- }), [se, fe, C, $]), xe = d.useMemo(() => {
3265
- function S(A) {
3266
- y === "auto" && rr(A.nativeEvent) && (T.current = !0);
3267
- }
3268
- function H(A) {
3269
- T.current = y, y === "auto" && or(A.nativeEvent) && (T.current = !0);
3270
- }
3271
- return {
3272
- ...se,
3273
- onKeyDown(A) {
3274
- D.current = !1;
3275
- const q = A.key.startsWith("Arrow"), Z = ["Home", "End"].includes(A.key), re = q || Z, nt = zn(A.key, C, v), at = Un(A.key, C, v, k), rt = zn(A.key, U(), v), be = bt(A.key, C), Ve = (f ? rt : be) || A.key === "Enter" || A.key.trim() === "";
3276
- if (g && n) {
3277
- const dt = R?.nodesRef.current.find((mt) => mt.parentId == null), De = R && dt ? io(R.nodesRef.current, dt.id) : null;
3278
- if (re && De && P) {
3279
- const mt = new KeyboardEvent("keydown", {
3280
- key: A.key,
3281
- bubbles: !0
3282
- });
3283
- if (nt || at) {
3284
- var ft, an;
3285
- const Mr = ((ft = De.context) == null ? void 0 : ft.elements.domReference) === A.currentTarget, dn = at && !Mr ? (an = De.context) == null ? void 0 : an.elements.domReference : nt ? i.current.find((mn) => mn?.id === Oe) : null;
3286
- dn && (de(A), dn.dispatchEvent(mt), z(void 0));
3287
- }
3288
- if ((be || Z) && De.context && De.context.open && De.parentId && A.currentTarget !== De.context.elements.domReference) {
3289
- var fn;
3290
- de(A), (fn = De.context.elements.domReference) == null || fn.dispatchEvent(mt);
3291
- return;
3292
- }
3293
- }
3294
- return fe(A);
3295
- }
3296
- if (!(!n && !b && q)) {
3297
- if (Ve) {
3298
- const dt = bt(A.key, U());
3299
- I.current = f && dt ? null : A.key;
3300
- }
3301
- if (f) {
3302
- rt && (de(A), n ? (h.current = yt(i, oe.current), E()) : r(!0, A.nativeEvent, "list-navigation"));
3303
- return;
3304
- }
3305
- be && (u != null && (h.current = u), de(A), !n && b ? r(!0, A.nativeEvent, "list-navigation") : fe(A), n && E());
3306
- }
3307
- },
3308
- onFocus() {
3309
- n && !g && (h.current = -1, E());
3310
- },
3311
- onPointerDown: H,
3312
- onPointerEnter: H,
3313
- onMouseDown: S,
3314
- onClick: S
3315
- };
3316
- }, [Oe, se, k, fe, oe, y, i, f, E, r, n, b, C, U, v, u, R, g, P]);
3317
- return d.useMemo(() => l ? {
3318
- reference: xe,
3319
- floating: ae,
3320
- item: te
3321
- } : {}, [l, xe, ae, te]);
3322
- }
3323
- const yi = /* @__PURE__ */ new Map([["select", "listbox"], ["combobox", "listbox"], ["label", !1]]);
3324
- function Ui(e, t) {
3325
- var n, r;
3326
- t === void 0 && (t = {});
3327
- const {
3328
- open: o,
3329
- elements: s,
3330
- floatingId: i
3331
- } = e, {
3332
- enabled: c = !0,
3333
- role: a = "dialog"
3334
- } = t, l = Ft(), u = ((n = s.domReference) == null ? void 0 : n.id) || l, m = d.useMemo(() => {
3335
- var b;
3336
- return ((b = It(s.floating)) == null ? void 0 : b.id) || i;
3337
- }, [s.floating, i]), p = (r = yi.get(a)) != null ? r : a, v = Ze() != null, g = d.useMemo(() => p === "tooltip" || a === "label" ? {
3338
- ["aria-" + (a === "label" ? "labelledby" : "describedby")]: o ? m : void 0
3339
- } : {
3340
- "aria-expanded": o ? "true" : "false",
3341
- "aria-haspopup": p === "alertdialog" ? "dialog" : p,
3342
- "aria-controls": o ? m : void 0,
3343
- ...p === "listbox" && {
3344
- role: "combobox"
3345
- },
3346
- ...p === "menu" && {
3347
- id: u
3348
- },
3349
- ...p === "menu" && v && {
3350
- role: "menuitem"
3351
- },
3352
- ...a === "select" && {
3353
- "aria-autocomplete": "none"
3354
- },
3355
- ...a === "combobox" && {
3356
- "aria-autocomplete": "list"
3357
- }
3358
- }, [p, m, v, o, u, a]), y = d.useMemo(() => {
3359
- const b = {
3360
- id: m,
3361
- ...p && {
3362
- role: p
3363
- }
3364
- };
3365
- return p === "tooltip" || a === "label" ? b : {
3366
- ...b,
3367
- ...p === "menu" && {
3368
- "aria-labelledby": u
3369
- }
3370
- };
3371
- }, [p, m, u, a]), x = d.useCallback((b) => {
3372
- let {
3373
- active: w,
3374
- selected: C
3375
- } = b;
3376
- const M = {
3377
- role: "option",
3378
- ...w && {
3379
- id: m + "-fui-option"
3380
- }
3381
- };
3382
- switch (a) {
3383
- case "select":
3384
- case "combobox":
3385
- return {
3386
- ...M,
3387
- "aria-selected": C
3388
- };
3389
- }
3390
- return {};
3391
- }, [m, a]);
3392
- return d.useMemo(() => c ? {
3393
- reference: g,
3394
- floating: y,
3395
- item: x
3396
- } : {}, [c, g, y, x]);
3397
- }
3398
- function wi(e, t) {
3399
- const [n, r] = d.useState(e);
3400
- return e && !n && r(!0), d.useEffect(() => {
3401
- if (!e && n) {
3402
- const o = setTimeout(() => r(!1), t);
3403
- return () => clearTimeout(o);
3404
- }
3405
- }, [e, n, t]), n;
3406
- }
3407
- function Gi(e, t) {
3408
- t === void 0 && (t = {});
3409
- const {
3410
- open: n,
3411
- elements: {
3412
- floating: r
3413
- }
3414
- } = e, {
3415
- duration: o = 250
3416
- } = t, i = (typeof o == "number" ? o : o.close) || 0, [c, a] = d.useState("unmounted"), l = wi(n, i);
3417
- return !l && c === "close" && a("unmounted"), X(() => {
3418
- if (r) {
3419
- if (n) {
3420
- a("initial");
3421
- const u = requestAnimationFrame(() => {
3422
- nn.flushSync(() => {
3423
- a("open");
3424
- });
3425
- });
3426
- return () => {
3427
- cancelAnimationFrame(u);
3428
- };
3429
- }
3430
- a("close");
3431
- }
3432
- }, [n, r]), {
3433
- isMounted: l,
3434
- status: c
3435
- };
3436
- }
3437
- export {
3438
- Mi as C,
3439
- ki as F,
3440
- Pi as a,
3441
- Ze as b,
3442
- Di as c,
3443
- Li as d,
3444
- Ni as e,
3445
- Yo as f,
3446
- _i as g,
3447
- Oi as h,
3448
- $i as i,
3449
- Ci as j,
3450
- Ki as k,
3451
- Ui as l,
3452
- Hi as m,
3453
- zi as n,
3454
- Ii as o,
3455
- Si as p,
3456
- Ti as q,
3457
- Fi as r,
3458
- Ai as s,
3459
- Bi as t,
3460
- Jo as u,
3461
- Vi as v,
3462
- Gi as w,
3463
- Wi as x
3464
- };