@mantine/core 9.1.1 → 9.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1160) hide show
  1. package/cjs/components/Accordion/Accordion.cjs.map +1 -1
  2. package/cjs/components/Accordion/Accordion.context.cjs.map +1 -1
  3. package/cjs/components/Accordion/AccordionChevron.cjs.map +1 -1
  4. package/cjs/components/Accordion/AccordionControl/AccordionControl.cjs.map +1 -1
  5. package/cjs/components/Accordion/AccordionItem/AccordionItem.cjs.map +1 -1
  6. package/cjs/components/Accordion/AccordionItem.context.cjs.map +1 -1
  7. package/cjs/components/Accordion/AccordionPanel/AccordionPanel.cjs.map +1 -1
  8. package/cjs/components/ActionIcon/ActionIcon.cjs.map +1 -1
  9. package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.cjs.map +1 -1
  10. package/cjs/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.cjs.map +1 -1
  11. package/cjs/components/Affix/Affix.cjs.map +1 -1
  12. package/cjs/components/Alert/Alert.cjs.map +1 -1
  13. package/cjs/components/Anchor/Anchor.cjs.map +1 -1
  14. package/cjs/components/AngleSlider/AngleSlider.cjs.map +1 -1
  15. package/cjs/components/AppShell/AppShell.cjs.map +1 -1
  16. package/cjs/components/AppShell/AppShell.context.cjs.map +1 -1
  17. package/cjs/components/AppShell/AppShellAside/AppShellAside.cjs.map +1 -1
  18. package/cjs/components/AppShell/AppShellFooter/AppShellFooter.cjs.map +1 -1
  19. package/cjs/components/AppShell/AppShellHeader/AppShellHeader.cjs.map +1 -1
  20. package/cjs/components/AppShell/AppShellMain/AppShellMain.cjs.map +1 -1
  21. package/cjs/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.cjs.map +1 -1
  22. package/cjs/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.cjs.map +1 -1
  23. package/cjs/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.cjs.map +1 -1
  24. package/cjs/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.cjs.map +1 -1
  25. package/cjs/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.cjs.map +1 -1
  26. package/cjs/components/AppShell/AppShellMediaStyles/assign-padding-variables/assign-padding-variables.cjs.map +1 -1
  27. package/cjs/components/AppShell/AppShellMediaStyles/get-base-size/get-base-size.cjs.map +1 -1
  28. package/cjs/components/AppShell/AppShellMediaStyles/get-padding-value/get-padding-value.cjs.map +1 -1
  29. package/cjs/components/AppShell/AppShellMediaStyles/get-variables/get-variables.cjs.map +1 -1
  30. package/cjs/components/AppShell/AppShellMediaStyles/is-primitive-size/is-primitive-size.cjs.map +1 -1
  31. package/cjs/components/AppShell/AppShellMediaStyles/is-responsive-size/is-responsive-size.cjs.map +1 -1
  32. package/cjs/components/AppShell/AppShellNavbar/AppShellNavbar.cjs.map +1 -1
  33. package/cjs/components/AppShell/AppShellSection/AppShellSection.cjs.map +1 -1
  34. package/cjs/components/AppShell/use-resizing/use-resizing.cjs.map +1 -1
  35. package/cjs/components/AspectRatio/AspectRatio.cjs.map +1 -1
  36. package/cjs/components/Autocomplete/Autocomplete.cjs +5 -1
  37. package/cjs/components/Autocomplete/Autocomplete.cjs.map +1 -1
  38. package/cjs/components/Avatar/Avatar.cjs.map +1 -1
  39. package/cjs/components/Avatar/AvatarGroup/AvatarGroup.cjs.map +1 -1
  40. package/cjs/components/Avatar/AvatarPlaceholderIcon.cjs.map +1 -1
  41. package/cjs/components/Avatar/get-initials/get-initials.cjs.map +1 -1
  42. package/cjs/components/Avatar/get-initials-color/get-initials-color.cjs.map +1 -1
  43. package/cjs/components/BackgroundImage/BackgroundImage.cjs.map +1 -1
  44. package/cjs/components/Badge/Badge.cjs.map +1 -1
  45. package/cjs/components/Blockquote/Blockquote.cjs.map +1 -1
  46. package/cjs/components/Breadcrumbs/Breadcrumbs.cjs.map +1 -1
  47. package/cjs/components/Burger/Burger.cjs.map +1 -1
  48. package/cjs/components/Button/Button.cjs.map +1 -1
  49. package/cjs/components/Button/ButtonGroup/ButtonGroup.cjs.map +1 -1
  50. package/cjs/components/Button/ButtonGroupSection/ButtonGroupSection.cjs.map +1 -1
  51. package/cjs/components/Card/Card.cjs.map +1 -1
  52. package/cjs/components/Card/Card.context.cjs.map +1 -1
  53. package/cjs/components/Card/CardSection/CardSection.cjs.map +1 -1
  54. package/cjs/components/Center/Center.cjs.map +1 -1
  55. package/cjs/components/Checkbox/CheckIcon.cjs.map +1 -1
  56. package/cjs/components/Checkbox/Checkbox.cjs +10 -1
  57. package/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
  58. package/cjs/components/Checkbox/CheckboxCard/CheckboxCard.cjs.map +1 -1
  59. package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.cjs.map +1 -1
  60. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs.map +1 -1
  61. package/cjs/components/Chip/Chip.cjs.map +1 -1
  62. package/cjs/components/Chip/ChipGroup/ChipGroup.cjs.map +1 -1
  63. package/cjs/components/CloseButton/CloseButton.cjs.map +1 -1
  64. package/cjs/components/CloseButton/CloseIcon.cjs.map +1 -1
  65. package/cjs/components/Code/Code.cjs.map +1 -1
  66. package/cjs/components/Collapse/Collapse.cjs.map +1 -1
  67. package/cjs/components/ColorInput/ColorInput.cjs +5 -1
  68. package/cjs/components/ColorInput/ColorInput.cjs.map +1 -1
  69. package/cjs/components/ColorInput/EyeDropperIcon.cjs.map +1 -1
  70. package/cjs/components/ColorPicker/AlphaSlider/AlphaSlider.cjs.map +1 -1
  71. package/cjs/components/ColorPicker/ColorPicker.cjs.map +1 -1
  72. package/cjs/components/ColorPicker/ColorPicker.context.cjs.map +1 -1
  73. package/cjs/components/ColorPicker/ColorSlider/ColorSlider.cjs.map +1 -1
  74. package/cjs/components/ColorPicker/HueSlider/HueSlider.cjs.map +1 -1
  75. package/cjs/components/ColorPicker/Saturation/Saturation.cjs.map +1 -1
  76. package/cjs/components/ColorPicker/Swatches/Swatches.cjs.map +1 -1
  77. package/cjs/components/ColorPicker/Thumb/Thumb.cjs.map +1 -1
  78. package/cjs/components/ColorPicker/converters/converters.cjs.map +1 -1
  79. package/cjs/components/ColorPicker/converters/parsers.cjs.map +1 -1
  80. package/cjs/components/ColorSwatch/ColorSwatch.cjs.map +1 -1
  81. package/cjs/components/Combobox/Combobox.cjs.map +1 -1
  82. package/cjs/components/Combobox/Combobox.context.cjs.map +1 -1
  83. package/cjs/components/Combobox/ComboboxChevron/ComboboxChevron.cjs.map +1 -1
  84. package/cjs/components/Combobox/ComboboxClearButton/ComboboxClearButton.cjs.map +1 -1
  85. package/cjs/components/Combobox/ComboboxDropdown/ComboboxDropdown.cjs.map +1 -1
  86. package/cjs/components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.cjs.map +1 -1
  87. package/cjs/components/Combobox/ComboboxEmpty/ComboboxEmpty.cjs.map +1 -1
  88. package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.cjs.map +1 -1
  89. package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.cjs.map +1 -1
  90. package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.cjs.map +1 -1
  91. package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.cjs.map +1 -1
  92. package/cjs/components/Combobox/ComboboxHiddenInput/ComboboxHiddenInput.cjs.map +1 -1
  93. package/cjs/components/Combobox/ComboboxOption/ComboboxOption.cjs.map +1 -1
  94. package/cjs/components/Combobox/ComboboxOptions/ComboboxOptions.cjs.map +1 -1
  95. package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.cjs.map +1 -1
  96. package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.cjs.map +1 -1
  97. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.cjs.map +1 -1
  98. package/cjs/components/Combobox/OptionsDropdown/default-options-filter.cjs.map +1 -1
  99. package/cjs/components/Combobox/OptionsDropdown/is-empty-combobox-data.cjs.map +1 -1
  100. package/cjs/components/Combobox/OptionsDropdown/is-options-group.cjs.map +1 -1
  101. package/cjs/components/Combobox/OptionsDropdown/validate-options.cjs.map +1 -1
  102. package/cjs/components/Combobox/get-options-lockup/get-options-lockup.cjs.map +1 -1
  103. package/cjs/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.cjs.map +1 -1
  104. package/cjs/components/Combobox/use-combobox/get-index/get-index.cjs.map +1 -1
  105. package/cjs/components/Combobox/use-combobox/get-index/get-virtualized-index.cjs.map +1 -1
  106. package/cjs/components/Combobox/use-combobox/use-combobox.cjs.map +1 -1
  107. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.cjs.map +1 -1
  108. package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.cjs.map +1 -1
  109. package/cjs/components/Combobox/use-pills-reorder/move-pill.cjs +17 -0
  110. package/cjs/components/Combobox/use-pills-reorder/move-pill.cjs.map +1 -0
  111. package/cjs/components/Combobox/use-pills-reorder/use-pills-reorder.cjs +170 -0
  112. package/cjs/components/Combobox/use-pills-reorder/use-pills-reorder.cjs.map +1 -0
  113. package/cjs/components/Container/Container.cjs.map +1 -1
  114. package/cjs/components/CopyButton/CopyButton.cjs.map +1 -1
  115. package/cjs/components/Dialog/Dialog.cjs.map +1 -1
  116. package/cjs/components/Divider/Divider.cjs.map +1 -1
  117. package/cjs/components/Drawer/Drawer.cjs.map +1 -1
  118. package/cjs/components/Drawer/Drawer.context.cjs.map +1 -1
  119. package/cjs/components/Drawer/DrawerBody.cjs.map +1 -1
  120. package/cjs/components/Drawer/DrawerCloseButton.cjs.map +1 -1
  121. package/cjs/components/Drawer/DrawerContent.cjs.map +1 -1
  122. package/cjs/components/Drawer/DrawerHeader.cjs.map +1 -1
  123. package/cjs/components/Drawer/DrawerOverlay.cjs.map +1 -1
  124. package/cjs/components/Drawer/DrawerRoot.cjs.map +1 -1
  125. package/cjs/components/Drawer/DrawerStack.cjs.map +1 -1
  126. package/cjs/components/Drawer/DrawerTitle.cjs.map +1 -1
  127. package/cjs/components/Fieldset/Fieldset.cjs.map +1 -1
  128. package/cjs/components/FileButton/FileButton.cjs.map +1 -1
  129. package/cjs/components/FileInput/FileInput.cjs +5 -1
  130. package/cjs/components/FileInput/FileInput.cjs.map +1 -1
  131. package/cjs/components/Flex/Flex.cjs.map +1 -1
  132. package/cjs/components/Flex/flex-props.cjs.map +1 -1
  133. package/cjs/components/FloatingIndicator/FloatingIndicator.cjs.map +1 -1
  134. package/cjs/components/FloatingIndicator/use-floating-indicator.cjs.map +1 -1
  135. package/cjs/components/FloatingWindow/FloatingWindow.cjs.map +1 -1
  136. package/cjs/components/FocusTrap/FocusTrap.cjs.map +1 -1
  137. package/cjs/components/Grid/Grid.cjs.map +1 -1
  138. package/cjs/components/Grid/Grid.context.cjs.map +1 -1
  139. package/cjs/components/Grid/GridCol/GridCol.cjs.map +1 -1
  140. package/cjs/components/Grid/GridCol/GridColVariables.cjs.map +1 -1
  141. package/cjs/components/Grid/GridVariables.cjs.map +1 -1
  142. package/cjs/components/Group/Group.cjs.map +1 -1
  143. package/cjs/components/Group/filter-falsy-children/filter-falsy-children.cjs.map +1 -1
  144. package/cjs/components/Highlight/Highlight.cjs +17 -5
  145. package/cjs/components/Highlight/Highlight.cjs.map +1 -1
  146. package/cjs/components/Highlight/highlighter/highlighter.cjs +60 -3
  147. package/cjs/components/Highlight/highlighter/highlighter.cjs.map +1 -1
  148. package/cjs/components/HoverCard/HoverCard.cjs.map +1 -1
  149. package/cjs/components/HoverCard/HoverCard.context.cjs.map +1 -1
  150. package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs.map +1 -1
  151. package/cjs/components/HoverCard/HoverCardGroup/HoverCardGroup.cjs.map +1 -1
  152. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs.map +1 -1
  153. package/cjs/components/HoverCard/use-hover-card.cjs.map +1 -1
  154. package/cjs/components/Image/Image.cjs.map +1 -1
  155. package/cjs/components/Indicator/Indicator.cjs.map +1 -1
  156. package/cjs/components/Indicator/get-position-variables/get-position-variables.cjs.map +1 -1
  157. package/cjs/components/Input/Input.cjs.map +1 -1
  158. package/cjs/components/Input/Input.context.cjs.map +1 -1
  159. package/cjs/components/Input/InputClearButton/InputClearButton.cjs.map +1 -1
  160. package/cjs/components/Input/InputClearSection/InputClearSection.cjs.map +1 -1
  161. package/cjs/components/Input/InputDescription/InputDescription.cjs.map +1 -1
  162. package/cjs/components/Input/InputError/InputError.cjs.map +1 -1
  163. package/cjs/components/Input/InputLabel/InputLabel.cjs.map +1 -1
  164. package/cjs/components/Input/InputPlaceholder/InputPlaceholder.cjs.map +1 -1
  165. package/cjs/components/Input/InputWrapper/InputWrapper.cjs.map +1 -1
  166. package/cjs/components/Input/InputWrapper/get-input-offsets/get-input-offsets.cjs.map +1 -1
  167. package/cjs/components/Input/InputWrapper.context.cjs.map +1 -1
  168. package/cjs/components/Input/use-input-props.cjs +5 -1
  169. package/cjs/components/Input/use-input-props.cjs.map +1 -1
  170. package/cjs/components/InputBase/InputBase.cjs.map +1 -1
  171. package/cjs/components/JsonInput/JsonInput.cjs +5 -2
  172. package/cjs/components/JsonInput/JsonInput.cjs.map +1 -1
  173. package/cjs/components/JsonInput/validate-json/validate-json.cjs.map +1 -1
  174. package/cjs/components/Kbd/Kbd.cjs.map +1 -1
  175. package/cjs/components/List/List.cjs.map +1 -1
  176. package/cjs/components/List/List.context.cjs.map +1 -1
  177. package/cjs/components/List/ListItem/ListItem.cjs.map +1 -1
  178. package/cjs/components/Loader/Loader.cjs.map +1 -1
  179. package/cjs/components/Loader/loaders/Bars.cjs.map +1 -1
  180. package/cjs/components/Loader/loaders/Dots.cjs.map +1 -1
  181. package/cjs/components/Loader/loaders/Oval.cjs.map +1 -1
  182. package/cjs/components/LoadingOverlay/LoadingOverlay.cjs.map +1 -1
  183. package/cjs/components/Mark/Mark.cjs.map +1 -1
  184. package/cjs/components/Mark/get-mark-color.cjs.map +1 -1
  185. package/cjs/components/Marquee/Marquee.cjs.map +1 -1
  186. package/cjs/components/MaskInput/MaskInput.cjs +5 -1
  187. package/cjs/components/MaskInput/MaskInput.cjs.map +1 -1
  188. package/cjs/components/MaskInput/use-mask-input-props.cjs +3 -2
  189. package/cjs/components/MaskInput/use-mask-input-props.cjs.map +1 -1
  190. package/cjs/components/Menu/Menu.cjs +11 -1
  191. package/cjs/components/Menu/Menu.cjs.map +1 -1
  192. package/cjs/components/Menu/Menu.context.cjs.map +1 -1
  193. package/cjs/components/Menu/MenuDivider/MenuDivider.cjs.map +1 -1
  194. package/cjs/components/Menu/MenuDropdown/MenuDropdown.cjs.map +1 -1
  195. package/cjs/components/Menu/MenuItem/MenuItem.cjs.map +1 -1
  196. package/cjs/components/Menu/MenuLabel/MenuLabel.cjs.map +1 -1
  197. package/cjs/components/Menu/MenuSub/MenuSub.cjs +55 -10
  198. package/cjs/components/Menu/MenuSub/MenuSub.cjs.map +1 -1
  199. package/cjs/components/Menu/MenuSub/MenuSub.context.cjs.map +1 -1
  200. package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs +9 -7
  201. package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs.map +1 -1
  202. package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs +8 -5
  203. package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs.map +1 -1
  204. package/cjs/components/Menu/MenuSubTarget/MenuSubTarget.cjs.map +1 -1
  205. package/cjs/components/Menu/MenuTarget/MenuTarget.cjs.map +1 -1
  206. package/cjs/components/Modal/Modal.cjs.map +1 -1
  207. package/cjs/components/Modal/Modal.context.cjs.map +1 -1
  208. package/cjs/components/Modal/ModalBody.cjs.map +1 -1
  209. package/cjs/components/Modal/ModalCloseButton.cjs.map +1 -1
  210. package/cjs/components/Modal/ModalContent.cjs.map +1 -1
  211. package/cjs/components/Modal/ModalHeader.cjs.map +1 -1
  212. package/cjs/components/Modal/ModalOverlay.cjs.map +1 -1
  213. package/cjs/components/Modal/ModalRoot.cjs.map +1 -1
  214. package/cjs/components/Modal/ModalStack.cjs.map +1 -1
  215. package/cjs/components/Modal/ModalTitle.cjs.map +1 -1
  216. package/cjs/components/Modal/use-modals-stack.cjs.map +1 -1
  217. package/cjs/components/ModalBase/ModalBase.cjs.map +1 -1
  218. package/cjs/components/ModalBase/ModalBase.context.cjs.map +1 -1
  219. package/cjs/components/ModalBase/ModalBaseBody.cjs.map +1 -1
  220. package/cjs/components/ModalBase/ModalBaseCloseButton.cjs.map +1 -1
  221. package/cjs/components/ModalBase/ModalBaseContent.cjs.map +1 -1
  222. package/cjs/components/ModalBase/ModalBaseHeader.cjs.map +1 -1
  223. package/cjs/components/ModalBase/ModalBaseOverlay.cjs.map +1 -1
  224. package/cjs/components/ModalBase/ModalBaseTitle.cjs.map +1 -1
  225. package/cjs/components/ModalBase/NativeScrollArea.cjs.map +1 -1
  226. package/cjs/components/ModalBase/use-lock-scroll.cjs.map +1 -1
  227. package/cjs/components/ModalBase/use-modal-body-id.cjs.map +1 -1
  228. package/cjs/components/ModalBase/use-modal-title-id.cjs.map +1 -1
  229. package/cjs/components/ModalBase/use-modal-transition.cjs.map +1 -1
  230. package/cjs/components/ModalBase/use-modal.cjs.map +1 -1
  231. package/cjs/components/MultiSelect/MultiSelect.cjs +19 -3
  232. package/cjs/components/MultiSelect/MultiSelect.cjs.map +1 -1
  233. package/cjs/components/MultiSelect/filter-picked-values.cjs.map +1 -1
  234. package/cjs/components/NativeSelect/NativeSelect.cjs +5 -1
  235. package/cjs/components/NativeSelect/NativeSelect.cjs.map +1 -1
  236. package/cjs/components/NativeSelect/NativeSelectOption.cjs.map +1 -1
  237. package/cjs/components/NavLink/NavLink.cjs.map +1 -1
  238. package/cjs/components/Notification/Notification.cjs.map +1 -1
  239. package/cjs/components/NumberFormatter/NumberFormatter.cjs.map +1 -1
  240. package/cjs/components/NumberInput/NumberInput.cjs +5 -1
  241. package/cjs/components/NumberInput/NumberInput.cjs.map +1 -1
  242. package/cjs/components/NumberInput/NumberInputChevron.cjs.map +1 -1
  243. package/cjs/components/OverflowList/OverflowList.cjs.map +1 -1
  244. package/cjs/components/OverflowList/get-row-position-data.cjs.map +1 -1
  245. package/cjs/components/OverflowList/use-dimensions.cjs.map +1 -1
  246. package/cjs/components/Overlay/Overlay.cjs.map +1 -1
  247. package/cjs/components/Pagination/Pagination.cjs.map +1 -1
  248. package/cjs/components/Pagination/Pagination.context.cjs.map +1 -1
  249. package/cjs/components/Pagination/Pagination.icons.cjs.map +1 -1
  250. package/cjs/components/Pagination/PaginationControl/PaginationControl.cjs.map +1 -1
  251. package/cjs/components/Pagination/PaginationDots/PaginationDots.cjs.map +1 -1
  252. package/cjs/components/Pagination/PaginationEdges/PaginationEdges.cjs.map +1 -1
  253. package/cjs/components/Pagination/PaginationItems/PaginationItems.cjs.map +1 -1
  254. package/cjs/components/Pagination/PaginationRoot/PaginationRoot.cjs.map +1 -1
  255. package/cjs/components/Paper/Paper.cjs.map +1 -1
  256. package/cjs/components/PasswordInput/PasswordInput.cjs +5 -1
  257. package/cjs/components/PasswordInput/PasswordInput.cjs.map +1 -1
  258. package/cjs/components/PasswordInput/PasswordToggleIcon.cjs.map +1 -1
  259. package/cjs/components/Pill/Pill.cjs.map +1 -1
  260. package/cjs/components/Pill/Pill.module.cjs.map +1 -1
  261. package/cjs/components/Pill/PillGroup/PillGroup.cjs.map +1 -1
  262. package/cjs/components/PillsInput/PillsInput.cjs +5 -1
  263. package/cjs/components/PillsInput/PillsInput.cjs.map +1 -1
  264. package/cjs/components/PillsInput/PillsInput.context.cjs.map +1 -1
  265. package/cjs/components/PillsInput/PillsInputField/PillsInputField.cjs.map +1 -1
  266. package/cjs/components/PinInput/PinInput.cjs +3 -3
  267. package/cjs/components/PinInput/PinInput.cjs.map +1 -1
  268. package/cjs/components/PinInput/create-pin-array/create-pin-array.cjs.map +1 -1
  269. package/cjs/components/Popover/Popover.cjs.map +1 -1
  270. package/cjs/components/Popover/Popover.context.cjs.map +1 -1
  271. package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs.map +1 -1
  272. package/cjs/components/Popover/PopoverTarget/PopoverTarget.cjs.map +1 -1
  273. package/cjs/components/Popover/use-popover.cjs.map +1 -1
  274. package/cjs/components/Portal/OptionalPortal.cjs.map +1 -1
  275. package/cjs/components/Portal/Portal.cjs.map +1 -1
  276. package/cjs/components/Progress/Progress.cjs.map +1 -1
  277. package/cjs/components/Progress/Progress.context.cjs.map +1 -1
  278. package/cjs/components/Progress/ProgressLabel/ProgressLabel.cjs.map +1 -1
  279. package/cjs/components/Progress/ProgressRoot/ProgressRoot.cjs.map +1 -1
  280. package/cjs/components/Progress/ProgressSection/ProgressSection.cjs.map +1 -1
  281. package/cjs/components/Radio/Radio.cjs +7 -1
  282. package/cjs/components/Radio/Radio.cjs.map +1 -1
  283. package/cjs/components/Radio/RadioCard/RadioCard.cjs.map +1 -1
  284. package/cjs/components/Radio/RadioGroup/RadioGroup.cjs.map +1 -1
  285. package/cjs/components/Radio/RadioIcon.cjs.map +1 -1
  286. package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs.map +1 -1
  287. package/cjs/components/Rating/Rating.cjs.map +1 -1
  288. package/cjs/components/Rating/Rating.context.cjs.map +1 -1
  289. package/cjs/components/Rating/RatingItem/RatingItem.cjs.map +1 -1
  290. package/cjs/components/Rating/StarSymbol/StarIcon.cjs.map +1 -1
  291. package/cjs/components/Rating/StarSymbol/StarSymbol.cjs.map +1 -1
  292. package/cjs/components/RingProgress/Curve/Curve.cjs.map +1 -1
  293. package/cjs/components/RingProgress/Curve/get-curve-props.cjs.map +1 -1
  294. package/cjs/components/RingProgress/RingProgress.cjs.map +1 -1
  295. package/cjs/components/RingProgress/get-curves/get-curves.cjs.map +1 -1
  296. package/cjs/components/RollingNumber/DigitColumn.cjs +46 -0
  297. package/cjs/components/RollingNumber/DigitColumn.cjs.map +1 -0
  298. package/cjs/components/RollingNumber/RollingNumber.cjs +102 -0
  299. package/cjs/components/RollingNumber/RollingNumber.cjs.map +1 -0
  300. package/cjs/components/RollingNumber/RollingNumber.module.cjs +13 -0
  301. package/cjs/components/RollingNumber/RollingNumber.module.cjs.map +1 -0
  302. package/cjs/components/RollingNumber/build-value.cjs +22 -0
  303. package/cjs/components/RollingNumber/build-value.cjs.map +1 -0
  304. package/cjs/components/RollingNumber/get-digit-parts.cjs +40 -0
  305. package/cjs/components/RollingNumber/get-digit-parts.cjs.map +1 -0
  306. package/cjs/components/RollingNumber/get-render-slots.cjs +78 -0
  307. package/cjs/components/RollingNumber/get-render-slots.cjs.map +1 -0
  308. package/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
  309. package/cjs/components/ScrollArea/ScrollArea.context.cjs.map +1 -1
  310. package/cjs/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.cjs.map +1 -1
  311. package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs +1 -1
  312. package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs.map +1 -1
  313. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.cjs.map +1 -1
  314. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.cjs.map +1 -1
  315. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.cjs.map +1 -1
  316. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.cjs.map +1 -1
  317. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.cjs.map +1 -1
  318. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.cjs +1 -1
  319. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.cjs.map +1 -1
  320. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.cjs.map +1 -1
  321. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.cjs.map +1 -1
  322. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.cjs.map +1 -1
  323. package/cjs/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.cjs +1 -1
  324. package/cjs/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.cjs.map +1 -1
  325. package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs.map +1 -1
  326. package/cjs/components/ScrollArea/use-resize-observer.cjs.map +1 -1
  327. package/cjs/components/ScrollArea/utils/add-unlinked-scroll-listener.cjs.map +1 -1
  328. package/cjs/components/ScrollArea/utils/compose-event-handlers.cjs.map +1 -1
  329. package/cjs/components/ScrollArea/utils/get-scroll-position-from-pointer.cjs.map +1 -1
  330. package/cjs/components/ScrollArea/utils/get-thumb-offset-from-scroll.cjs.map +1 -1
  331. package/cjs/components/ScrollArea/utils/get-thumb-ratio.cjs.map +1 -1
  332. package/cjs/components/ScrollArea/utils/get-thumb-size.cjs.map +1 -1
  333. package/cjs/components/ScrollArea/utils/is-scrolling-within-scrollbar-bounds.cjs.map +1 -1
  334. package/cjs/components/ScrollArea/utils/linear-scale.cjs.map +1 -1
  335. package/cjs/components/ScrollArea/utils/to-int.cjs.map +1 -1
  336. package/cjs/components/Scroller/Scroller.cjs.map +1 -1
  337. package/cjs/components/SegmentedControl/SegmentedControl.cjs +1 -1
  338. package/cjs/components/SegmentedControl/SegmentedControl.cjs.map +1 -1
  339. package/cjs/components/Select/Select.cjs +5 -1
  340. package/cjs/components/Select/Select.cjs.map +1 -1
  341. package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs.map +1 -1
  342. package/cjs/components/SimpleGrid/SimpleGrid.cjs.map +1 -1
  343. package/cjs/components/SimpleGrid/SimpleGridVariables.cjs.map +1 -1
  344. package/cjs/components/Skeleton/Skeleton.cjs.map +1 -1
  345. package/cjs/components/Slider/Marks/Marks.cjs.map +1 -1
  346. package/cjs/components/Slider/Marks/is-mark-filled.cjs.map +1 -1
  347. package/cjs/components/Slider/RangeSlider/RangeSlider.cjs +3 -1
  348. package/cjs/components/Slider/RangeSlider/RangeSlider.cjs.map +1 -1
  349. package/cjs/components/Slider/Slider/Slider.cjs +2 -1
  350. package/cjs/components/Slider/Slider/Slider.cjs.map +1 -1
  351. package/cjs/components/Slider/Slider.context.cjs.map +1 -1
  352. package/cjs/components/Slider/SliderRoot/SliderRoot.cjs.map +1 -1
  353. package/cjs/components/Slider/Thumb/Thumb.cjs +3 -1
  354. package/cjs/components/Slider/Thumb/Thumb.cjs.map +1 -1
  355. package/cjs/components/Slider/Track/Track.cjs.map +1 -1
  356. package/cjs/components/Slider/utils/get-change-value/get-change-value.cjs.map +1 -1
  357. package/cjs/components/Slider/utils/get-client-position/get-client-position.cjs.map +1 -1
  358. package/cjs/components/Slider/utils/get-floating-value/get-floating-value.cjs.map +1 -1
  359. package/cjs/components/Slider/utils/get-position/get-position.cjs.map +1 -1
  360. package/cjs/components/Slider/utils/get-precision/get-precision.cjs.map +1 -1
  361. package/cjs/components/Slider/utils/get-step-mark-value/get-step-mark-value.cjs.map +1 -1
  362. package/cjs/components/Space/Space.cjs.map +1 -1
  363. package/cjs/components/Spoiler/Spoiler.cjs.map +1 -1
  364. package/cjs/components/Stack/Stack.cjs.map +1 -1
  365. package/cjs/components/Stepper/Stepper.cjs.map +1 -1
  366. package/cjs/components/Stepper/Stepper.context.cjs.map +1 -1
  367. package/cjs/components/Stepper/StepperStep/StepperStep.cjs.map +1 -1
  368. package/cjs/components/Switch/Switch.cjs +6 -0
  369. package/cjs/components/Switch/Switch.cjs.map +1 -1
  370. package/cjs/components/Switch/SwitchGroup/SwitchGroup.cjs.map +1 -1
  371. package/cjs/components/Table/Table.cjs.map +1 -1
  372. package/cjs/components/Table/Table.components.cjs.map +1 -1
  373. package/cjs/components/Table/Table.context.cjs.map +1 -1
  374. package/cjs/components/Table/Table.module.cjs.map +1 -1
  375. package/cjs/components/Table/TableDataRenderer.cjs.map +1 -1
  376. package/cjs/components/Table/TableScrollContainer.cjs.map +1 -1
  377. package/cjs/components/TableOfContents/TableOfContents.cjs.map +1 -1
  378. package/cjs/components/Tabs/Tabs.cjs.map +1 -1
  379. package/cjs/components/Tabs/Tabs.context.cjs.map +1 -1
  380. package/cjs/components/Tabs/TabsList/TabsList.cjs.map +1 -1
  381. package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs.map +1 -1
  382. package/cjs/components/Tabs/TabsTab/TabsTab.cjs.map +1 -1
  383. package/cjs/components/TagsInput/TagsInput.cjs +19 -4
  384. package/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  385. package/cjs/components/TagsInput/filter-picked-tags.cjs.map +1 -1
  386. package/cjs/components/TagsInput/get-splitted-tags.cjs.map +1 -1
  387. package/cjs/components/Text/Text.cjs.map +1 -1
  388. package/cjs/components/TextInput/TextInput.cjs +5 -1
  389. package/cjs/components/TextInput/TextInput.cjs.map +1 -1
  390. package/cjs/components/Textarea/Autosize.cjs.map +1 -1
  391. package/cjs/components/Textarea/Textarea.cjs +5 -2
  392. package/cjs/components/Textarea/Textarea.cjs.map +1 -1
  393. package/cjs/components/ThemeIcon/ThemeIcon.cjs.map +1 -1
  394. package/cjs/components/Timeline/Timeline.cjs.map +1 -1
  395. package/cjs/components/Timeline/Timeline.context.cjs.map +1 -1
  396. package/cjs/components/Timeline/TimelineItem/TimelineItem.cjs.map +1 -1
  397. package/cjs/components/Title/Title.cjs.map +1 -1
  398. package/cjs/components/Title/get-title-size.cjs.map +1 -1
  399. package/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  400. package/cjs/components/Tooltip/TooltipFloating/TooltipFloating.cjs.map +1 -1
  401. package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.cjs.map +1 -1
  402. package/cjs/components/Tooltip/TooltipGroup/TooltipGroup.cjs.map +1 -1
  403. package/cjs/components/Tooltip/use-tooltip.cjs.map +1 -1
  404. package/cjs/components/Transition/Transition.cjs.map +1 -1
  405. package/cjs/components/Transition/get-transition-props/get-transition-props.cjs.map +1 -1
  406. package/cjs/components/Transition/get-transition-styles/get-transition-styles.cjs.map +1 -1
  407. package/cjs/components/Transition/transitions.cjs.map +1 -1
  408. package/cjs/components/Transition/use-transition.cjs.map +1 -1
  409. package/cjs/components/Tree/FlatTreeNode.cjs.map +1 -1
  410. package/cjs/components/Tree/Tree.cjs.map +1 -1
  411. package/cjs/components/Tree/TreeNode.cjs.map +1 -1
  412. package/cjs/components/Tree/filter-tree-data/filter-tree-data.cjs.map +1 -1
  413. package/cjs/components/Tree/flatten-tree-data/flatten-tree-data.cjs.map +1 -1
  414. package/cjs/components/Tree/get-all-checked-nodes/get-all-checked-nodes.cjs.map +1 -1
  415. package/cjs/components/Tree/get-children-nodes-values/get-children-nodes-values.cjs.map +1 -1
  416. package/cjs/components/Tree/is-node-checked/is-node-checked.cjs +1 -0
  417. package/cjs/components/Tree/is-node-checked/is-node-checked.cjs.map +1 -1
  418. package/cjs/components/Tree/is-node-indeterminate/is-node-indeterminate.cjs +1 -0
  419. package/cjs/components/Tree/is-node-indeterminate/is-node-indeterminate.cjs.map +1 -1
  420. package/cjs/components/Tree/merge-async-children/merge-async-children.cjs.map +1 -1
  421. package/cjs/components/Tree/move-tree-node/move-tree-node.cjs.map +1 -1
  422. package/cjs/components/Tree/use-tree-node-drag-drop.cjs.map +1 -1
  423. package/cjs/components/Tree/use-tree.cjs.map +1 -1
  424. package/cjs/components/TreeSelect/TreeSelect.cjs +602 -0
  425. package/cjs/components/TreeSelect/TreeSelect.cjs.map +1 -0
  426. package/cjs/components/TreeSelect/TreeSelect.module.cjs +16 -0
  427. package/cjs/components/TreeSelect/TreeSelect.module.cjs.map +1 -0
  428. package/cjs/components/TreeSelect/TreeSelectOption.cjs +95 -0
  429. package/cjs/components/TreeSelect/TreeSelectOption.cjs.map +1 -0
  430. package/cjs/components/TreeSelect/flatten-tree-select-data.cjs +34 -0
  431. package/cjs/components/TreeSelect/flatten-tree-select-data.cjs.map +1 -0
  432. package/cjs/components/TreeSelect/get-checked-values-by-strategy.cjs +30 -0
  433. package/cjs/components/TreeSelect/get-checked-values-by-strategy.cjs.map +1 -0
  434. package/cjs/components/Typography/Typography.cjs.map +1 -1
  435. package/cjs/components/UnstyledButton/UnstyledButton.cjs.map +1 -1
  436. package/cjs/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -1
  437. package/cjs/core/Box/Box.cjs.map +1 -1
  438. package/cjs/core/Box/get-box-mod/get-box-mod.cjs.map +1 -1
  439. package/cjs/core/Box/get-box-style/get-box-style.cjs.map +1 -1
  440. package/cjs/core/Box/get-style-object/get-style-object.cjs.map +1 -1
  441. package/cjs/core/Box/style-props/extract-style-props/extract-style-props.cjs.map +1 -1
  442. package/cjs/core/Box/style-props/parse-style-props/parse-style-props.cjs.map +1 -1
  443. package/cjs/core/Box/style-props/parse-style-props/sort-media-queries.cjs.map +1 -1
  444. package/cjs/core/Box/style-props/resolvers/border-resolver/border-resolver.cjs.map +1 -1
  445. package/cjs/core/Box/style-props/resolvers/color-resolver/color-resolver.cjs.map +1 -1
  446. package/cjs/core/Box/style-props/resolvers/font-family-resolver/font-family-resolver.cjs.map +1 -1
  447. package/cjs/core/Box/style-props/resolvers/font-size-resolver/font-size-resolver.cjs.map +1 -1
  448. package/cjs/core/Box/style-props/resolvers/identity-resolver/identity-resolver.cjs.map +1 -1
  449. package/cjs/core/Box/style-props/resolvers/index.cjs.map +1 -1
  450. package/cjs/core/Box/style-props/resolvers/line-height-resolver/line-height-resolver.cjs.map +1 -1
  451. package/cjs/core/Box/style-props/resolvers/radius-resolver/radius-resolver.cjs.map +1 -1
  452. package/cjs/core/Box/style-props/resolvers/size-resolver/size-resolver.cjs.map +1 -1
  453. package/cjs/core/Box/style-props/resolvers/spacing-resolver/spacing-resolver.cjs.map +1 -1
  454. package/cjs/core/Box/style-props/style-props-data.cjs.map +1 -1
  455. package/cjs/core/Box/use-random-classname/use-random-classname.cjs.map +1 -1
  456. package/cjs/core/DirectionProvider/DirectionProvider.cjs.map +1 -1
  457. package/cjs/core/InlineStyles/InlineStyles.cjs.map +1 -1
  458. package/cjs/core/InlineStyles/css-object-to-string/css-object-to-string.cjs.map +1 -1
  459. package/cjs/core/InlineStyles/hash-styles.cjs.map +1 -1
  460. package/cjs/core/InlineStyles/styles-to-string/styles-to-string.cjs.map +1 -1
  461. package/cjs/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.cjs.map +1 -1
  462. package/cjs/core/MantineProvider/Mantine.context.cjs.map +1 -1
  463. package/cjs/core/MantineProvider/MantineClasses/MantineClasses.cjs.map +1 -1
  464. package/cjs/core/MantineProvider/MantineCssVariables/MantineCssVariables.cjs.map +1 -1
  465. package/cjs/core/MantineProvider/MantineCssVariables/default-css-variables-resolver.cjs.map +1 -1
  466. package/cjs/core/MantineProvider/MantineCssVariables/get-css-color-variables.cjs.map +1 -1
  467. package/cjs/core/MantineProvider/MantineCssVariables/get-merged-variables.cjs.map +1 -1
  468. package/cjs/core/MantineProvider/MantineCssVariables/remove-default-variables.cjs.map +1 -1
  469. package/cjs/core/MantineProvider/MantineCssVariables/v8-css-variables-resolver.cjs.map +1 -1
  470. package/cjs/core/MantineProvider/MantineCssVariables/virtual-color/virtual-color.cjs.map +1 -1
  471. package/cjs/core/MantineProvider/MantineProvider.cjs.map +1 -1
  472. package/cjs/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.cjs.map +1 -1
  473. package/cjs/core/MantineProvider/color-functions/colors-tuple/colors-tuple.cjs.map +1 -1
  474. package/cjs/core/MantineProvider/color-functions/darken/darken.cjs.map +1 -1
  475. package/cjs/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.cjs.map +1 -1
  476. package/cjs/core/MantineProvider/color-functions/get-auto-contrast-value/get-auto-contrast-value.cjs.map +1 -1
  477. package/cjs/core/MantineProvider/color-functions/get-contrast-color/get-contrast-color.cjs.map +1 -1
  478. package/cjs/core/MantineProvider/color-functions/get-gradient/get-gradient.cjs.map +1 -1
  479. package/cjs/core/MantineProvider/color-functions/get-primary-shade/get-primary-shade.cjs.map +1 -1
  480. package/cjs/core/MantineProvider/color-functions/get-theme-color/get-theme-color.cjs.map +1 -1
  481. package/cjs/core/MantineProvider/color-functions/lighten/lighten.cjs.map +1 -1
  482. package/cjs/core/MantineProvider/color-functions/luminance/luminance.cjs.map +1 -1
  483. package/cjs/core/MantineProvider/color-functions/parse-theme-color/parse-theme-color.cjs.map +1 -1
  484. package/cjs/core/MantineProvider/color-functions/rgba/rgba.cjs.map +1 -1
  485. package/cjs/core/MantineProvider/color-functions/to-rgba/to-rgba.cjs.map +1 -1
  486. package/cjs/core/MantineProvider/color-scheme-managers/is-mantine-color-scheme.cjs.map +1 -1
  487. package/cjs/core/MantineProvider/color-scheme-managers/local-storage-manager.cjs.map +1 -1
  488. package/cjs/core/MantineProvider/convert-css-variables/convert-css-variables.cjs.map +1 -1
  489. package/cjs/core/MantineProvider/convert-css-variables/css-variables-object-to-string.cjs.map +1 -1
  490. package/cjs/core/MantineProvider/create-theme/create-theme.cjs.map +1 -1
  491. package/cjs/core/MantineProvider/default-colors.cjs.map +1 -1
  492. package/cjs/core/MantineProvider/default-theme.cjs.map +1 -1
  493. package/cjs/core/MantineProvider/mantine-html-props.cjs.map +1 -1
  494. package/cjs/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.cjs +4 -1
  495. package/cjs/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.cjs.map +1 -1
  496. package/cjs/core/MantineProvider/merge-theme-overrides/merge-theme-overrides.cjs.map +1 -1
  497. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.cjs.map +1 -1
  498. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.cjs.map +1 -1
  499. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.cjs.map +1 -1
  500. package/cjs/core/MantineProvider/use-matches/use-matches.cjs.map +1 -1
  501. package/cjs/core/MantineProvider/use-props/use-props.cjs +10 -2
  502. package/cjs/core/MantineProvider/use-props/use-props.cjs.map +1 -1
  503. package/cjs/core/MantineProvider/use-respect-reduce-motion/use-respect-reduce-motion.cjs.map +1 -1
  504. package/cjs/core/factory/create-polymorphic-component.cjs.map +1 -1
  505. package/cjs/core/factory/factory.cjs.map +1 -1
  506. package/cjs/core/factory/polymorphic-factory.cjs.map +1 -1
  507. package/cjs/core/styles-api/create-vars-resolver/create-vars-resolver.cjs.map +1 -1
  508. package/cjs/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.cjs.map +1 -1
  509. package/cjs/core/styles-api/use-styles/get-class-name/get-class-name.cjs.map +1 -1
  510. package/cjs/core/styles-api/use-styles/get-class-name/get-global-class-names/get-global-class-names.cjs.map +1 -1
  511. package/cjs/core/styles-api/use-styles/get-class-name/get-options-class-names/get-options-class-names.cjs.map +1 -1
  512. package/cjs/core/styles-api/use-styles/get-class-name/get-resolved-class-names/get-resolved-class-names.cjs.map +1 -1
  513. package/cjs/core/styles-api/use-styles/get-class-name/get-root-class-name/get-root-class-name.cjs.map +1 -1
  514. package/cjs/core/styles-api/use-styles/get-class-name/get-selector-class-name/get-selector-class-name.cjs.map +1 -1
  515. package/cjs/core/styles-api/use-styles/get-class-name/get-static-class-names/get-static-class-names.cjs.map +1 -1
  516. package/cjs/core/styles-api/use-styles/get-class-name/get-variant-class-name/get-variant-class-name.cjs.map +1 -1
  517. package/cjs/core/styles-api/use-styles/get-class-name/resolve-class-names/resolve-class-names.cjs.map +1 -1
  518. package/cjs/core/styles-api/use-styles/get-style/get-style.cjs.map +1 -1
  519. package/cjs/core/styles-api/use-styles/get-style/resolve-style/resolve-style.cjs.map +1 -1
  520. package/cjs/core/styles-api/use-styles/get-style/resolve-styles/resolve-styles.cjs.map +1 -1
  521. package/cjs/core/styles-api/use-styles/get-style/resolve-vars/merge-vars.cjs.map +1 -1
  522. package/cjs/core/styles-api/use-styles/use-styles.cjs.map +1 -1
  523. package/cjs/core/styles-api/use-styles/use-transformed-styles.cjs.map +1 -1
  524. package/cjs/core/utils/camel-to-kebab-case/camel-to-kebab-case.cjs.map +1 -1
  525. package/cjs/core/utils/close-on-escape/close-on-escape.cjs.map +1 -1
  526. package/cjs/core/utils/create-event-handler/create-event-handler.cjs.map +1 -1
  527. package/cjs/core/utils/create-safe-context/create-safe-context.cjs.map +1 -1
  528. package/cjs/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.cjs.map +1 -1
  529. package/cjs/core/utils/create-use-external-events/create-use-external-events.cjs.map +1 -1
  530. package/cjs/core/utils/deep-merge/deep-merge.cjs.map +1 -1
  531. package/cjs/core/utils/filter-props/filter-props.cjs.map +1 -1
  532. package/cjs/core/utils/find-closest-number/find-closest-number.cjs.map +1 -1
  533. package/cjs/core/utils/find-element-ancestor/find-element-ancestor.cjs.map +1 -1
  534. package/cjs/core/utils/find-element-in-shadow-dom/find-element-in-shadow-dom.cjs.map +1 -1
  535. package/cjs/core/utils/get-base-value/get-base-value.cjs.map +1 -1
  536. package/cjs/core/utils/get-breakpoint-value/get-breakpoint-value.cjs.map +1 -1
  537. package/cjs/core/utils/get-context-item-index/get-context-item-index.cjs.map +1 -1
  538. package/cjs/core/utils/get-default-z-index/get-default-z-index.cjs.map +1 -1
  539. package/cjs/core/utils/get-env/get-env.cjs.map +1 -1
  540. package/cjs/core/utils/get-ref-prop/get-ref-prop.cjs.map +1 -1
  541. package/cjs/core/utils/get-safe-id/get-safe-id.cjs.map +1 -1
  542. package/cjs/core/utils/get-single-element-child/get-single-element-child.cjs.map +1 -1
  543. package/cjs/core/utils/get-size/get-size.cjs.map +1 -1
  544. package/cjs/core/utils/get-sorted-breakpoints/get-sorted-breakpoints.cjs.map +1 -1
  545. package/cjs/core/utils/is-element/is-element.cjs.map +1 -1
  546. package/cjs/core/utils/is-number-like/is-number-like.cjs.map +1 -1
  547. package/cjs/core/utils/keys/keys.cjs.map +1 -1
  548. package/cjs/core/utils/memoize/memoize.cjs.map +1 -1
  549. package/cjs/core/utils/noop/noop.cjs.map +1 -1
  550. package/cjs/core/utils/primitive/primitive.cjs.map +1 -1
  551. package/cjs/core/utils/units-converters/px.cjs.map +1 -1
  552. package/cjs/core/utils/units-converters/rem.cjs.map +1 -1
  553. package/cjs/core/utils/use-hovered/use-hovered.cjs.map +1 -1
  554. package/cjs/index.cjs +8 -0
  555. package/cjs/utils/Floating/FloatingArrow/FloatingArrow.cjs.map +1 -1
  556. package/cjs/utils/Floating/FloatingArrow/get-arrow-position-styles.cjs.map +1 -1
  557. package/cjs/utils/Floating/get-floating-position/get-floating-position.cjs.map +1 -1
  558. package/cjs/utils/Floating/use-delayed-hover.cjs.map +1 -1
  559. package/cjs/utils/InlineInput/InlineInput.cjs +4 -0
  560. package/cjs/utils/InlineInput/InlineInput.cjs.map +1 -1
  561. package/cjs/utils/InputsGroupFieldset/InputsGroupFieldset.cjs.map +1 -1
  562. package/esm/components/Accordion/Accordion.context.mjs.map +1 -1
  563. package/esm/components/Accordion/Accordion.mjs.map +1 -1
  564. package/esm/components/Accordion/AccordionChevron.mjs.map +1 -1
  565. package/esm/components/Accordion/AccordionControl/AccordionControl.mjs.map +1 -1
  566. package/esm/components/Accordion/AccordionItem/AccordionItem.mjs.map +1 -1
  567. package/esm/components/Accordion/AccordionItem.context.mjs.map +1 -1
  568. package/esm/components/Accordion/AccordionPanel/AccordionPanel.mjs.map +1 -1
  569. package/esm/components/ActionIcon/ActionIcon.mjs.map +1 -1
  570. package/esm/components/ActionIcon/ActionIconGroup/ActionIconGroup.mjs.map +1 -1
  571. package/esm/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.mjs.map +1 -1
  572. package/esm/components/Affix/Affix.mjs.map +1 -1
  573. package/esm/components/Alert/Alert.mjs.map +1 -1
  574. package/esm/components/Anchor/Anchor.mjs.map +1 -1
  575. package/esm/components/AngleSlider/AngleSlider.mjs.map +1 -1
  576. package/esm/components/AppShell/AppShell.context.mjs.map +1 -1
  577. package/esm/components/AppShell/AppShell.mjs.map +1 -1
  578. package/esm/components/AppShell/AppShellAside/AppShellAside.mjs.map +1 -1
  579. package/esm/components/AppShell/AppShellFooter/AppShellFooter.mjs.map +1 -1
  580. package/esm/components/AppShell/AppShellHeader/AppShellHeader.mjs.map +1 -1
  581. package/esm/components/AppShell/AppShellMain/AppShellMain.mjs.map +1 -1
  582. package/esm/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.mjs.map +1 -1
  583. package/esm/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.mjs.map +1 -1
  584. package/esm/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.mjs.map +1 -1
  585. package/esm/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.mjs.map +1 -1
  586. package/esm/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.mjs.map +1 -1
  587. package/esm/components/AppShell/AppShellMediaStyles/assign-padding-variables/assign-padding-variables.mjs.map +1 -1
  588. package/esm/components/AppShell/AppShellMediaStyles/get-base-size/get-base-size.mjs.map +1 -1
  589. package/esm/components/AppShell/AppShellMediaStyles/get-padding-value/get-padding-value.mjs.map +1 -1
  590. package/esm/components/AppShell/AppShellMediaStyles/get-variables/get-variables.mjs.map +1 -1
  591. package/esm/components/AppShell/AppShellMediaStyles/is-primitive-size/is-primitive-size.mjs.map +1 -1
  592. package/esm/components/AppShell/AppShellMediaStyles/is-responsive-size/is-responsive-size.mjs.map +1 -1
  593. package/esm/components/AppShell/AppShellNavbar/AppShellNavbar.mjs.map +1 -1
  594. package/esm/components/AppShell/AppShellSection/AppShellSection.mjs.map +1 -1
  595. package/esm/components/AppShell/use-resizing/use-resizing.mjs.map +1 -1
  596. package/esm/components/AspectRatio/AspectRatio.mjs.map +1 -1
  597. package/esm/components/Autocomplete/Autocomplete.mjs +5 -1
  598. package/esm/components/Autocomplete/Autocomplete.mjs.map +1 -1
  599. package/esm/components/Avatar/Avatar.mjs.map +1 -1
  600. package/esm/components/Avatar/AvatarGroup/AvatarGroup.mjs.map +1 -1
  601. package/esm/components/Avatar/AvatarPlaceholderIcon.mjs.map +1 -1
  602. package/esm/components/Avatar/get-initials/get-initials.mjs.map +1 -1
  603. package/esm/components/Avatar/get-initials-color/get-initials-color.mjs.map +1 -1
  604. package/esm/components/BackgroundImage/BackgroundImage.mjs.map +1 -1
  605. package/esm/components/Badge/Badge.mjs.map +1 -1
  606. package/esm/components/Blockquote/Blockquote.mjs.map +1 -1
  607. package/esm/components/Breadcrumbs/Breadcrumbs.mjs.map +1 -1
  608. package/esm/components/Burger/Burger.mjs.map +1 -1
  609. package/esm/components/Button/Button.mjs.map +1 -1
  610. package/esm/components/Button/ButtonGroup/ButtonGroup.mjs.map +1 -1
  611. package/esm/components/Button/ButtonGroupSection/ButtonGroupSection.mjs.map +1 -1
  612. package/esm/components/Card/Card.context.mjs.map +1 -1
  613. package/esm/components/Card/Card.mjs.map +1 -1
  614. package/esm/components/Card/CardSection/CardSection.mjs.map +1 -1
  615. package/esm/components/Center/Center.mjs.map +1 -1
  616. package/esm/components/Checkbox/CheckIcon.mjs.map +1 -1
  617. package/esm/components/Checkbox/Checkbox.mjs +10 -1
  618. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  619. package/esm/components/Checkbox/CheckboxCard/CheckboxCard.mjs.map +1 -1
  620. package/esm/components/Checkbox/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  621. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.mjs.map +1 -1
  622. package/esm/components/Chip/Chip.mjs.map +1 -1
  623. package/esm/components/Chip/ChipGroup/ChipGroup.mjs.map +1 -1
  624. package/esm/components/CloseButton/CloseButton.mjs.map +1 -1
  625. package/esm/components/CloseButton/CloseIcon.mjs.map +1 -1
  626. package/esm/components/Code/Code.mjs.map +1 -1
  627. package/esm/components/Collapse/Collapse.mjs.map +1 -1
  628. package/esm/components/ColorInput/ColorInput.mjs +5 -1
  629. package/esm/components/ColorInput/ColorInput.mjs.map +1 -1
  630. package/esm/components/ColorInput/EyeDropperIcon.mjs.map +1 -1
  631. package/esm/components/ColorPicker/AlphaSlider/AlphaSlider.mjs.map +1 -1
  632. package/esm/components/ColorPicker/ColorPicker.context.mjs.map +1 -1
  633. package/esm/components/ColorPicker/ColorPicker.mjs.map +1 -1
  634. package/esm/components/ColorPicker/ColorSlider/ColorSlider.mjs.map +1 -1
  635. package/esm/components/ColorPicker/HueSlider/HueSlider.mjs.map +1 -1
  636. package/esm/components/ColorPicker/Saturation/Saturation.mjs.map +1 -1
  637. package/esm/components/ColorPicker/Swatches/Swatches.mjs.map +1 -1
  638. package/esm/components/ColorPicker/Thumb/Thumb.mjs.map +1 -1
  639. package/esm/components/ColorPicker/converters/converters.mjs.map +1 -1
  640. package/esm/components/ColorPicker/converters/parsers.mjs.map +1 -1
  641. package/esm/components/ColorSwatch/ColorSwatch.mjs.map +1 -1
  642. package/esm/components/Combobox/Combobox.context.mjs.map +1 -1
  643. package/esm/components/Combobox/Combobox.mjs.map +1 -1
  644. package/esm/components/Combobox/ComboboxChevron/ComboboxChevron.mjs.map +1 -1
  645. package/esm/components/Combobox/ComboboxClearButton/ComboboxClearButton.mjs.map +1 -1
  646. package/esm/components/Combobox/ComboboxDropdown/ComboboxDropdown.mjs.map +1 -1
  647. package/esm/components/Combobox/ComboboxDropdownTarget/ComboboxDropdownTarget.mjs.map +1 -1
  648. package/esm/components/Combobox/ComboboxEmpty/ComboboxEmpty.mjs.map +1 -1
  649. package/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.mjs.map +1 -1
  650. package/esm/components/Combobox/ComboboxFooter/ComboboxFooter.mjs.map +1 -1
  651. package/esm/components/Combobox/ComboboxGroup/ComboboxGroup.mjs.map +1 -1
  652. package/esm/components/Combobox/ComboboxHeader/ComboboxHeader.mjs.map +1 -1
  653. package/esm/components/Combobox/ComboboxHiddenInput/ComboboxHiddenInput.mjs.map +1 -1
  654. package/esm/components/Combobox/ComboboxOption/ComboboxOption.mjs.map +1 -1
  655. package/esm/components/Combobox/ComboboxOptions/ComboboxOptions.mjs.map +1 -1
  656. package/esm/components/Combobox/ComboboxSearch/ComboboxSearch.mjs.map +1 -1
  657. package/esm/components/Combobox/ComboboxTarget/ComboboxTarget.mjs.map +1 -1
  658. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.mjs.map +1 -1
  659. package/esm/components/Combobox/OptionsDropdown/default-options-filter.mjs.map +1 -1
  660. package/esm/components/Combobox/OptionsDropdown/is-empty-combobox-data.mjs.map +1 -1
  661. package/esm/components/Combobox/OptionsDropdown/is-options-group.mjs.map +1 -1
  662. package/esm/components/Combobox/OptionsDropdown/validate-options.mjs.map +1 -1
  663. package/esm/components/Combobox/get-options-lockup/get-options-lockup.mjs.map +1 -1
  664. package/esm/components/Combobox/get-parsed-combobox-data/get-parsed-combobox-data.mjs.map +1 -1
  665. package/esm/components/Combobox/use-combobox/get-index/get-index.mjs.map +1 -1
  666. package/esm/components/Combobox/use-combobox/get-index/get-virtualized-index.mjs.map +1 -1
  667. package/esm/components/Combobox/use-combobox/use-combobox.mjs.map +1 -1
  668. package/esm/components/Combobox/use-combobox/use-virtualized-combobox.mjs.map +1 -1
  669. package/esm/components/Combobox/use-combobox-target-props/use-combobox-target-props.mjs.map +1 -1
  670. package/esm/components/Combobox/use-pills-reorder/move-pill.mjs +17 -0
  671. package/esm/components/Combobox/use-pills-reorder/move-pill.mjs.map +1 -0
  672. package/esm/components/Combobox/use-pills-reorder/use-pills-reorder.mjs +169 -0
  673. package/esm/components/Combobox/use-pills-reorder/use-pills-reorder.mjs.map +1 -0
  674. package/esm/components/Container/Container.mjs.map +1 -1
  675. package/esm/components/CopyButton/CopyButton.mjs.map +1 -1
  676. package/esm/components/Dialog/Dialog.mjs.map +1 -1
  677. package/esm/components/Divider/Divider.mjs.map +1 -1
  678. package/esm/components/Drawer/Drawer.context.mjs.map +1 -1
  679. package/esm/components/Drawer/Drawer.mjs.map +1 -1
  680. package/esm/components/Drawer/DrawerBody.mjs.map +1 -1
  681. package/esm/components/Drawer/DrawerCloseButton.mjs.map +1 -1
  682. package/esm/components/Drawer/DrawerContent.mjs.map +1 -1
  683. package/esm/components/Drawer/DrawerHeader.mjs.map +1 -1
  684. package/esm/components/Drawer/DrawerOverlay.mjs.map +1 -1
  685. package/esm/components/Drawer/DrawerRoot.mjs.map +1 -1
  686. package/esm/components/Drawer/DrawerStack.mjs.map +1 -1
  687. package/esm/components/Drawer/DrawerTitle.mjs.map +1 -1
  688. package/esm/components/Fieldset/Fieldset.mjs.map +1 -1
  689. package/esm/components/FileButton/FileButton.mjs.map +1 -1
  690. package/esm/components/FileInput/FileInput.mjs +5 -1
  691. package/esm/components/FileInput/FileInput.mjs.map +1 -1
  692. package/esm/components/Flex/Flex.mjs.map +1 -1
  693. package/esm/components/Flex/flex-props.mjs.map +1 -1
  694. package/esm/components/FloatingIndicator/FloatingIndicator.mjs.map +1 -1
  695. package/esm/components/FloatingIndicator/use-floating-indicator.mjs.map +1 -1
  696. package/esm/components/FloatingWindow/FloatingWindow.mjs.map +1 -1
  697. package/esm/components/FocusTrap/FocusTrap.mjs.map +1 -1
  698. package/esm/components/Grid/Grid.context.mjs.map +1 -1
  699. package/esm/components/Grid/Grid.mjs.map +1 -1
  700. package/esm/components/Grid/GridCol/GridCol.mjs.map +1 -1
  701. package/esm/components/Grid/GridCol/GridColVariables.mjs.map +1 -1
  702. package/esm/components/Grid/GridVariables.mjs.map +1 -1
  703. package/esm/components/Group/Group.mjs.map +1 -1
  704. package/esm/components/Group/filter-falsy-children/filter-falsy-children.mjs.map +1 -1
  705. package/esm/components/Highlight/Highlight.mjs +18 -6
  706. package/esm/components/Highlight/Highlight.mjs.map +1 -1
  707. package/esm/components/Highlight/highlighter/highlighter.mjs +60 -4
  708. package/esm/components/Highlight/highlighter/highlighter.mjs.map +1 -1
  709. package/esm/components/HoverCard/HoverCard.context.mjs.map +1 -1
  710. package/esm/components/HoverCard/HoverCard.mjs.map +1 -1
  711. package/esm/components/HoverCard/HoverCardDropdown/HoverCardDropdown.mjs.map +1 -1
  712. package/esm/components/HoverCard/HoverCardGroup/HoverCardGroup.mjs.map +1 -1
  713. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs.map +1 -1
  714. package/esm/components/HoverCard/use-hover-card.mjs.map +1 -1
  715. package/esm/components/Image/Image.mjs.map +1 -1
  716. package/esm/components/Indicator/Indicator.mjs.map +1 -1
  717. package/esm/components/Indicator/get-position-variables/get-position-variables.mjs.map +1 -1
  718. package/esm/components/Input/Input.context.mjs.map +1 -1
  719. package/esm/components/Input/Input.mjs.map +1 -1
  720. package/esm/components/Input/InputClearButton/InputClearButton.mjs.map +1 -1
  721. package/esm/components/Input/InputClearSection/InputClearSection.mjs.map +1 -1
  722. package/esm/components/Input/InputDescription/InputDescription.mjs.map +1 -1
  723. package/esm/components/Input/InputError/InputError.mjs.map +1 -1
  724. package/esm/components/Input/InputLabel/InputLabel.mjs.map +1 -1
  725. package/esm/components/Input/InputPlaceholder/InputPlaceholder.mjs.map +1 -1
  726. package/esm/components/Input/InputWrapper/InputWrapper.mjs.map +1 -1
  727. package/esm/components/Input/InputWrapper/get-input-offsets/get-input-offsets.mjs.map +1 -1
  728. package/esm/components/Input/InputWrapper.context.mjs.map +1 -1
  729. package/esm/components/Input/use-input-props.mjs +5 -1
  730. package/esm/components/Input/use-input-props.mjs.map +1 -1
  731. package/esm/components/InputBase/InputBase.mjs.map +1 -1
  732. package/esm/components/JsonInput/JsonInput.mjs +5 -2
  733. package/esm/components/JsonInput/JsonInput.mjs.map +1 -1
  734. package/esm/components/JsonInput/validate-json/validate-json.mjs.map +1 -1
  735. package/esm/components/Kbd/Kbd.mjs.map +1 -1
  736. package/esm/components/List/List.context.mjs.map +1 -1
  737. package/esm/components/List/List.mjs.map +1 -1
  738. package/esm/components/List/ListItem/ListItem.mjs.map +1 -1
  739. package/esm/components/Loader/Loader.mjs.map +1 -1
  740. package/esm/components/Loader/loaders/Bars.mjs.map +1 -1
  741. package/esm/components/Loader/loaders/Dots.mjs.map +1 -1
  742. package/esm/components/Loader/loaders/Oval.mjs.map +1 -1
  743. package/esm/components/LoadingOverlay/LoadingOverlay.mjs.map +1 -1
  744. package/esm/components/Mark/Mark.mjs.map +1 -1
  745. package/esm/components/Mark/get-mark-color.mjs.map +1 -1
  746. package/esm/components/Marquee/Marquee.mjs.map +1 -1
  747. package/esm/components/MaskInput/MaskInput.mjs +5 -1
  748. package/esm/components/MaskInput/MaskInput.mjs.map +1 -1
  749. package/esm/components/MaskInput/use-mask-input-props.mjs +4 -3
  750. package/esm/components/MaskInput/use-mask-input-props.mjs.map +1 -1
  751. package/esm/components/Menu/Menu.context.mjs.map +1 -1
  752. package/esm/components/Menu/Menu.mjs +12 -2
  753. package/esm/components/Menu/Menu.mjs.map +1 -1
  754. package/esm/components/Menu/MenuDivider/MenuDivider.mjs.map +1 -1
  755. package/esm/components/Menu/MenuDropdown/MenuDropdown.mjs.map +1 -1
  756. package/esm/components/Menu/MenuItem/MenuItem.mjs.map +1 -1
  757. package/esm/components/Menu/MenuLabel/MenuLabel.mjs.map +1 -1
  758. package/esm/components/Menu/MenuSub/MenuSub.context.mjs.map +1 -1
  759. package/esm/components/Menu/MenuSub/MenuSub.mjs +56 -11
  760. package/esm/components/Menu/MenuSub/MenuSub.mjs.map +1 -1
  761. package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs +9 -7
  762. package/esm/components/Menu/MenuSubDropdown/MenuSubDropdown.mjs.map +1 -1
  763. package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs +8 -5
  764. package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs.map +1 -1
  765. package/esm/components/Menu/MenuSubTarget/MenuSubTarget.mjs.map +1 -1
  766. package/esm/components/Menu/MenuTarget/MenuTarget.mjs.map +1 -1
  767. package/esm/components/Modal/Modal.context.mjs.map +1 -1
  768. package/esm/components/Modal/Modal.mjs.map +1 -1
  769. package/esm/components/Modal/ModalBody.mjs.map +1 -1
  770. package/esm/components/Modal/ModalCloseButton.mjs.map +1 -1
  771. package/esm/components/Modal/ModalContent.mjs.map +1 -1
  772. package/esm/components/Modal/ModalHeader.mjs.map +1 -1
  773. package/esm/components/Modal/ModalOverlay.mjs.map +1 -1
  774. package/esm/components/Modal/ModalRoot.mjs.map +1 -1
  775. package/esm/components/Modal/ModalStack.mjs.map +1 -1
  776. package/esm/components/Modal/ModalTitle.mjs.map +1 -1
  777. package/esm/components/Modal/use-modals-stack.mjs.map +1 -1
  778. package/esm/components/ModalBase/ModalBase.context.mjs.map +1 -1
  779. package/esm/components/ModalBase/ModalBase.mjs.map +1 -1
  780. package/esm/components/ModalBase/ModalBaseBody.mjs.map +1 -1
  781. package/esm/components/ModalBase/ModalBaseCloseButton.mjs.map +1 -1
  782. package/esm/components/ModalBase/ModalBaseContent.mjs.map +1 -1
  783. package/esm/components/ModalBase/ModalBaseHeader.mjs.map +1 -1
  784. package/esm/components/ModalBase/ModalBaseOverlay.mjs.map +1 -1
  785. package/esm/components/ModalBase/ModalBaseTitle.mjs.map +1 -1
  786. package/esm/components/ModalBase/NativeScrollArea.mjs.map +1 -1
  787. package/esm/components/ModalBase/use-lock-scroll.mjs.map +1 -1
  788. package/esm/components/ModalBase/use-modal-body-id.mjs.map +1 -1
  789. package/esm/components/ModalBase/use-modal-title-id.mjs.map +1 -1
  790. package/esm/components/ModalBase/use-modal-transition.mjs.map +1 -1
  791. package/esm/components/ModalBase/use-modal.mjs.map +1 -1
  792. package/esm/components/MultiSelect/MultiSelect.mjs +19 -3
  793. package/esm/components/MultiSelect/MultiSelect.mjs.map +1 -1
  794. package/esm/components/MultiSelect/filter-picked-values.mjs.map +1 -1
  795. package/esm/components/NativeSelect/NativeSelect.mjs +5 -1
  796. package/esm/components/NativeSelect/NativeSelect.mjs.map +1 -1
  797. package/esm/components/NativeSelect/NativeSelectOption.mjs.map +1 -1
  798. package/esm/components/NavLink/NavLink.mjs.map +1 -1
  799. package/esm/components/Notification/Notification.mjs.map +1 -1
  800. package/esm/components/NumberFormatter/NumberFormatter.mjs.map +1 -1
  801. package/esm/components/NumberInput/NumberInput.mjs +5 -1
  802. package/esm/components/NumberInput/NumberInput.mjs.map +1 -1
  803. package/esm/components/NumberInput/NumberInputChevron.mjs.map +1 -1
  804. package/esm/components/OverflowList/OverflowList.mjs.map +1 -1
  805. package/esm/components/OverflowList/get-row-position-data.mjs.map +1 -1
  806. package/esm/components/OverflowList/use-dimensions.mjs.map +1 -1
  807. package/esm/components/Overlay/Overlay.mjs.map +1 -1
  808. package/esm/components/Pagination/Pagination.context.mjs.map +1 -1
  809. package/esm/components/Pagination/Pagination.icons.mjs.map +1 -1
  810. package/esm/components/Pagination/Pagination.mjs.map +1 -1
  811. package/esm/components/Pagination/PaginationControl/PaginationControl.mjs.map +1 -1
  812. package/esm/components/Pagination/PaginationDots/PaginationDots.mjs.map +1 -1
  813. package/esm/components/Pagination/PaginationEdges/PaginationEdges.mjs.map +1 -1
  814. package/esm/components/Pagination/PaginationItems/PaginationItems.mjs.map +1 -1
  815. package/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs.map +1 -1
  816. package/esm/components/Paper/Paper.mjs.map +1 -1
  817. package/esm/components/PasswordInput/PasswordInput.mjs +5 -1
  818. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  819. package/esm/components/PasswordInput/PasswordToggleIcon.mjs.map +1 -1
  820. package/esm/components/Pill/Pill.mjs.map +1 -1
  821. package/esm/components/Pill/Pill.module.mjs.map +1 -1
  822. package/esm/components/Pill/PillGroup/PillGroup.mjs.map +1 -1
  823. package/esm/components/PillsInput/PillsInput.context.mjs.map +1 -1
  824. package/esm/components/PillsInput/PillsInput.mjs +5 -1
  825. package/esm/components/PillsInput/PillsInput.mjs.map +1 -1
  826. package/esm/components/PillsInput/PillsInputField/PillsInputField.mjs.map +1 -1
  827. package/esm/components/PinInput/PinInput.mjs +3 -3
  828. package/esm/components/PinInput/PinInput.mjs.map +1 -1
  829. package/esm/components/PinInput/create-pin-array/create-pin-array.mjs.map +1 -1
  830. package/esm/components/Popover/Popover.context.mjs.map +1 -1
  831. package/esm/components/Popover/Popover.mjs.map +1 -1
  832. package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs.map +1 -1
  833. package/esm/components/Popover/PopoverTarget/PopoverTarget.mjs.map +1 -1
  834. package/esm/components/Popover/use-popover.mjs.map +1 -1
  835. package/esm/components/Portal/OptionalPortal.mjs.map +1 -1
  836. package/esm/components/Portal/Portal.mjs.map +1 -1
  837. package/esm/components/Progress/Progress.context.mjs.map +1 -1
  838. package/esm/components/Progress/Progress.mjs.map +1 -1
  839. package/esm/components/Progress/ProgressLabel/ProgressLabel.mjs.map +1 -1
  840. package/esm/components/Progress/ProgressRoot/ProgressRoot.mjs.map +1 -1
  841. package/esm/components/Progress/ProgressSection/ProgressSection.mjs.map +1 -1
  842. package/esm/components/Radio/Radio.mjs +7 -1
  843. package/esm/components/Radio/Radio.mjs.map +1 -1
  844. package/esm/components/Radio/RadioCard/RadioCard.mjs.map +1 -1
  845. package/esm/components/Radio/RadioGroup/RadioGroup.mjs.map +1 -1
  846. package/esm/components/Radio/RadioIcon.mjs.map +1 -1
  847. package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs.map +1 -1
  848. package/esm/components/Rating/Rating.context.mjs.map +1 -1
  849. package/esm/components/Rating/Rating.mjs.map +1 -1
  850. package/esm/components/Rating/RatingItem/RatingItem.mjs.map +1 -1
  851. package/esm/components/Rating/StarSymbol/StarIcon.mjs.map +1 -1
  852. package/esm/components/Rating/StarSymbol/StarSymbol.mjs.map +1 -1
  853. package/esm/components/RingProgress/Curve/Curve.mjs.map +1 -1
  854. package/esm/components/RingProgress/Curve/get-curve-props.mjs.map +1 -1
  855. package/esm/components/RingProgress/RingProgress.mjs.map +1 -1
  856. package/esm/components/RingProgress/get-curves/get-curves.mjs.map +1 -1
  857. package/esm/components/RollingNumber/DigitColumn.mjs +45 -0
  858. package/esm/components/RollingNumber/DigitColumn.mjs.map +1 -0
  859. package/esm/components/RollingNumber/RollingNumber.mjs +101 -0
  860. package/esm/components/RollingNumber/RollingNumber.mjs.map +1 -0
  861. package/esm/components/RollingNumber/RollingNumber.module.mjs +13 -0
  862. package/esm/components/RollingNumber/RollingNumber.module.mjs.map +1 -0
  863. package/esm/components/RollingNumber/build-value.mjs +22 -0
  864. package/esm/components/RollingNumber/build-value.mjs.map +1 -0
  865. package/esm/components/RollingNumber/get-digit-parts.mjs +40 -0
  866. package/esm/components/RollingNumber/get-digit-parts.mjs.map +1 -0
  867. package/esm/components/RollingNumber/get-render-slots.mjs +78 -0
  868. package/esm/components/RollingNumber/get-render-slots.mjs.map +1 -0
  869. package/esm/components/ScrollArea/ScrollArea.context.mjs.map +1 -1
  870. package/esm/components/ScrollArea/ScrollArea.mjs.map +1 -1
  871. package/esm/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.mjs.map +1 -1
  872. package/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs +1 -1
  873. package/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs.map +1 -1
  874. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.mjs.map +1 -1
  875. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.mjs.map +1 -1
  876. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.mjs.map +1 -1
  877. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.mjs.map +1 -1
  878. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.mjs.map +1 -1
  879. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.context.mjs.map +1 -1
  880. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.mjs +1 -1
  881. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.mjs.map +1 -1
  882. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.mjs.map +1 -1
  883. package/esm/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.mjs.map +1 -1
  884. package/esm/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.mjs +1 -1
  885. package/esm/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.mjs.map +1 -1
  886. package/esm/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.mjs.map +1 -1
  887. package/esm/components/ScrollArea/use-resize-observer.mjs.map +1 -1
  888. package/esm/components/ScrollArea/utils/add-unlinked-scroll-listener.mjs.map +1 -1
  889. package/esm/components/ScrollArea/utils/compose-event-handlers.mjs.map +1 -1
  890. package/esm/components/ScrollArea/utils/get-scroll-position-from-pointer.mjs.map +1 -1
  891. package/esm/components/ScrollArea/utils/get-thumb-offset-from-scroll.mjs.map +1 -1
  892. package/esm/components/ScrollArea/utils/get-thumb-ratio.mjs.map +1 -1
  893. package/esm/components/ScrollArea/utils/get-thumb-size.mjs.map +1 -1
  894. package/esm/components/ScrollArea/utils/is-scrolling-within-scrollbar-bounds.mjs.map +1 -1
  895. package/esm/components/ScrollArea/utils/linear-scale.mjs.map +1 -1
  896. package/esm/components/ScrollArea/utils/to-int.mjs.map +1 -1
  897. package/esm/components/Scroller/Scroller.mjs.map +1 -1
  898. package/esm/components/SegmentedControl/SegmentedControl.mjs +1 -1
  899. package/esm/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  900. package/esm/components/Select/Select.mjs +5 -1
  901. package/esm/components/Select/Select.mjs.map +1 -1
  902. package/esm/components/SemiCircleProgress/SemiCircleProgress.mjs.map +1 -1
  903. package/esm/components/SimpleGrid/SimpleGrid.mjs.map +1 -1
  904. package/esm/components/SimpleGrid/SimpleGridVariables.mjs.map +1 -1
  905. package/esm/components/Skeleton/Skeleton.mjs.map +1 -1
  906. package/esm/components/Slider/Marks/Marks.mjs.map +1 -1
  907. package/esm/components/Slider/Marks/is-mark-filled.mjs.map +1 -1
  908. package/esm/components/Slider/RangeSlider/RangeSlider.mjs +3 -1
  909. package/esm/components/Slider/RangeSlider/RangeSlider.mjs.map +1 -1
  910. package/esm/components/Slider/Slider/Slider.mjs +2 -1
  911. package/esm/components/Slider/Slider/Slider.mjs.map +1 -1
  912. package/esm/components/Slider/Slider.context.mjs.map +1 -1
  913. package/esm/components/Slider/SliderRoot/SliderRoot.mjs.map +1 -1
  914. package/esm/components/Slider/Thumb/Thumb.mjs +3 -1
  915. package/esm/components/Slider/Thumb/Thumb.mjs.map +1 -1
  916. package/esm/components/Slider/Track/Track.mjs.map +1 -1
  917. package/esm/components/Slider/utils/get-change-value/get-change-value.mjs.map +1 -1
  918. package/esm/components/Slider/utils/get-client-position/get-client-position.mjs.map +1 -1
  919. package/esm/components/Slider/utils/get-floating-value/get-floating-value.mjs.map +1 -1
  920. package/esm/components/Slider/utils/get-position/get-position.mjs.map +1 -1
  921. package/esm/components/Slider/utils/get-precision/get-precision.mjs.map +1 -1
  922. package/esm/components/Slider/utils/get-step-mark-value/get-step-mark-value.mjs.map +1 -1
  923. package/esm/components/Space/Space.mjs.map +1 -1
  924. package/esm/components/Spoiler/Spoiler.mjs.map +1 -1
  925. package/esm/components/Stack/Stack.mjs.map +1 -1
  926. package/esm/components/Stepper/Stepper.context.mjs.map +1 -1
  927. package/esm/components/Stepper/Stepper.mjs.map +1 -1
  928. package/esm/components/Stepper/StepperStep/StepperStep.mjs.map +1 -1
  929. package/esm/components/Switch/Switch.mjs +6 -0
  930. package/esm/components/Switch/Switch.mjs.map +1 -1
  931. package/esm/components/Switch/SwitchGroup/SwitchGroup.mjs.map +1 -1
  932. package/esm/components/Table/Table.components.mjs.map +1 -1
  933. package/esm/components/Table/Table.context.mjs.map +1 -1
  934. package/esm/components/Table/Table.mjs.map +1 -1
  935. package/esm/components/Table/Table.module.mjs.map +1 -1
  936. package/esm/components/Table/TableDataRenderer.mjs.map +1 -1
  937. package/esm/components/Table/TableScrollContainer.mjs.map +1 -1
  938. package/esm/components/TableOfContents/TableOfContents.mjs.map +1 -1
  939. package/esm/components/Tabs/Tabs.context.mjs.map +1 -1
  940. package/esm/components/Tabs/Tabs.mjs.map +1 -1
  941. package/esm/components/Tabs/TabsList/TabsList.mjs.map +1 -1
  942. package/esm/components/Tabs/TabsPanel/TabsPanel.mjs.map +1 -1
  943. package/esm/components/Tabs/TabsTab/TabsTab.mjs.map +1 -1
  944. package/esm/components/TagsInput/TagsInput.mjs +19 -4
  945. package/esm/components/TagsInput/TagsInput.mjs.map +1 -1
  946. package/esm/components/TagsInput/filter-picked-tags.mjs.map +1 -1
  947. package/esm/components/TagsInput/get-splitted-tags.mjs.map +1 -1
  948. package/esm/components/Text/Text.mjs.map +1 -1
  949. package/esm/components/TextInput/TextInput.mjs +5 -1
  950. package/esm/components/TextInput/TextInput.mjs.map +1 -1
  951. package/esm/components/Textarea/Autosize.mjs.map +1 -1
  952. package/esm/components/Textarea/Textarea.mjs +5 -2
  953. package/esm/components/Textarea/Textarea.mjs.map +1 -1
  954. package/esm/components/ThemeIcon/ThemeIcon.mjs.map +1 -1
  955. package/esm/components/Timeline/Timeline.context.mjs.map +1 -1
  956. package/esm/components/Timeline/Timeline.mjs.map +1 -1
  957. package/esm/components/Timeline/TimelineItem/TimelineItem.mjs.map +1 -1
  958. package/esm/components/Title/Title.mjs.map +1 -1
  959. package/esm/components/Title/get-title-size.mjs.map +1 -1
  960. package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  961. package/esm/components/Tooltip/TooltipFloating/TooltipFloating.mjs.map +1 -1
  962. package/esm/components/Tooltip/TooltipFloating/use-floating-tooltip.mjs.map +1 -1
  963. package/esm/components/Tooltip/TooltipGroup/TooltipGroup.mjs.map +1 -1
  964. package/esm/components/Tooltip/use-tooltip.mjs.map +1 -1
  965. package/esm/components/Transition/Transition.mjs.map +1 -1
  966. package/esm/components/Transition/get-transition-props/get-transition-props.mjs.map +1 -1
  967. package/esm/components/Transition/get-transition-styles/get-transition-styles.mjs.map +1 -1
  968. package/esm/components/Transition/transitions.mjs.map +1 -1
  969. package/esm/components/Transition/use-transition.mjs.map +1 -1
  970. package/esm/components/Tree/FlatTreeNode.mjs.map +1 -1
  971. package/esm/components/Tree/Tree.mjs.map +1 -1
  972. package/esm/components/Tree/TreeNode.mjs.map +1 -1
  973. package/esm/components/Tree/filter-tree-data/filter-tree-data.mjs.map +1 -1
  974. package/esm/components/Tree/flatten-tree-data/flatten-tree-data.mjs.map +1 -1
  975. package/esm/components/Tree/get-all-checked-nodes/get-all-checked-nodes.mjs.map +1 -1
  976. package/esm/components/Tree/get-children-nodes-values/get-children-nodes-values.mjs.map +1 -1
  977. package/esm/components/Tree/is-node-checked/is-node-checked.mjs +1 -1
  978. package/esm/components/Tree/is-node-checked/is-node-checked.mjs.map +1 -1
  979. package/esm/components/Tree/is-node-indeterminate/is-node-indeterminate.mjs +1 -1
  980. package/esm/components/Tree/is-node-indeterminate/is-node-indeterminate.mjs.map +1 -1
  981. package/esm/components/Tree/merge-async-children/merge-async-children.mjs.map +1 -1
  982. package/esm/components/Tree/move-tree-node/move-tree-node.mjs.map +1 -1
  983. package/esm/components/Tree/use-tree-node-drag-drop.mjs.map +1 -1
  984. package/esm/components/Tree/use-tree.mjs.map +1 -1
  985. package/esm/components/TreeSelect/TreeSelect.mjs +601 -0
  986. package/esm/components/TreeSelect/TreeSelect.mjs.map +1 -0
  987. package/esm/components/TreeSelect/TreeSelect.module.mjs +16 -0
  988. package/esm/components/TreeSelect/TreeSelect.module.mjs.map +1 -0
  989. package/esm/components/TreeSelect/TreeSelectOption.mjs +94 -0
  990. package/esm/components/TreeSelect/TreeSelectOption.mjs.map +1 -0
  991. package/esm/components/TreeSelect/flatten-tree-select-data.mjs +34 -0
  992. package/esm/components/TreeSelect/flatten-tree-select-data.mjs.map +1 -0
  993. package/esm/components/TreeSelect/get-checked-values-by-strategy.mjs +29 -0
  994. package/esm/components/TreeSelect/get-checked-values-by-strategy.mjs.map +1 -0
  995. package/esm/components/Typography/Typography.mjs.map +1 -1
  996. package/esm/components/UnstyledButton/UnstyledButton.mjs.map +1 -1
  997. package/esm/components/VisuallyHidden/VisuallyHidden.mjs.map +1 -1
  998. package/esm/core/Box/Box.mjs.map +1 -1
  999. package/esm/core/Box/get-box-mod/get-box-mod.mjs.map +1 -1
  1000. package/esm/core/Box/get-box-style/get-box-style.mjs.map +1 -1
  1001. package/esm/core/Box/get-style-object/get-style-object.mjs.map +1 -1
  1002. package/esm/core/Box/style-props/extract-style-props/extract-style-props.mjs.map +1 -1
  1003. package/esm/core/Box/style-props/parse-style-props/parse-style-props.mjs.map +1 -1
  1004. package/esm/core/Box/style-props/parse-style-props/sort-media-queries.mjs.map +1 -1
  1005. package/esm/core/Box/style-props/resolvers/border-resolver/border-resolver.mjs.map +1 -1
  1006. package/esm/core/Box/style-props/resolvers/color-resolver/color-resolver.mjs.map +1 -1
  1007. package/esm/core/Box/style-props/resolvers/font-family-resolver/font-family-resolver.mjs.map +1 -1
  1008. package/esm/core/Box/style-props/resolvers/font-size-resolver/font-size-resolver.mjs.map +1 -1
  1009. package/esm/core/Box/style-props/resolvers/identity-resolver/identity-resolver.mjs.map +1 -1
  1010. package/esm/core/Box/style-props/resolvers/index.mjs.map +1 -1
  1011. package/esm/core/Box/style-props/resolvers/line-height-resolver/line-height-resolver.mjs.map +1 -1
  1012. package/esm/core/Box/style-props/resolvers/radius-resolver/radius-resolver.mjs.map +1 -1
  1013. package/esm/core/Box/style-props/resolvers/size-resolver/size-resolver.mjs.map +1 -1
  1014. package/esm/core/Box/style-props/resolvers/spacing-resolver/spacing-resolver.mjs.map +1 -1
  1015. package/esm/core/Box/style-props/style-props-data.mjs.map +1 -1
  1016. package/esm/core/Box/use-random-classname/use-random-classname.mjs.map +1 -1
  1017. package/esm/core/DirectionProvider/DirectionProvider.mjs.map +1 -1
  1018. package/esm/core/InlineStyles/InlineStyles.mjs.map +1 -1
  1019. package/esm/core/InlineStyles/css-object-to-string/css-object-to-string.mjs.map +1 -1
  1020. package/esm/core/InlineStyles/hash-styles.mjs.map +1 -1
  1021. package/esm/core/InlineStyles/styles-to-string/styles-to-string.mjs.map +1 -1
  1022. package/esm/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.mjs.map +1 -1
  1023. package/esm/core/MantineProvider/Mantine.context.mjs.map +1 -1
  1024. package/esm/core/MantineProvider/MantineClasses/MantineClasses.mjs.map +1 -1
  1025. package/esm/core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs.map +1 -1
  1026. package/esm/core/MantineProvider/MantineCssVariables/default-css-variables-resolver.mjs.map +1 -1
  1027. package/esm/core/MantineProvider/MantineCssVariables/get-css-color-variables.mjs.map +1 -1
  1028. package/esm/core/MantineProvider/MantineCssVariables/get-merged-variables.mjs.map +1 -1
  1029. package/esm/core/MantineProvider/MantineCssVariables/remove-default-variables.mjs.map +1 -1
  1030. package/esm/core/MantineProvider/MantineCssVariables/v8-css-variables-resolver.mjs.map +1 -1
  1031. package/esm/core/MantineProvider/MantineCssVariables/virtual-color/virtual-color.mjs.map +1 -1
  1032. package/esm/core/MantineProvider/MantineProvider.mjs.map +1 -1
  1033. package/esm/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs.map +1 -1
  1034. package/esm/core/MantineProvider/color-functions/colors-tuple/colors-tuple.mjs.map +1 -1
  1035. package/esm/core/MantineProvider/color-functions/darken/darken.mjs.map +1 -1
  1036. package/esm/core/MantineProvider/color-functions/default-variant-colors-resolver/default-variant-colors-resolver.mjs.map +1 -1
  1037. package/esm/core/MantineProvider/color-functions/get-auto-contrast-value/get-auto-contrast-value.mjs.map +1 -1
  1038. package/esm/core/MantineProvider/color-functions/get-contrast-color/get-contrast-color.mjs.map +1 -1
  1039. package/esm/core/MantineProvider/color-functions/get-gradient/get-gradient.mjs.map +1 -1
  1040. package/esm/core/MantineProvider/color-functions/get-primary-shade/get-primary-shade.mjs.map +1 -1
  1041. package/esm/core/MantineProvider/color-functions/get-theme-color/get-theme-color.mjs.map +1 -1
  1042. package/esm/core/MantineProvider/color-functions/lighten/lighten.mjs.map +1 -1
  1043. package/esm/core/MantineProvider/color-functions/luminance/luminance.mjs.map +1 -1
  1044. package/esm/core/MantineProvider/color-functions/parse-theme-color/parse-theme-color.mjs.map +1 -1
  1045. package/esm/core/MantineProvider/color-functions/rgba/rgba.mjs.map +1 -1
  1046. package/esm/core/MantineProvider/color-functions/to-rgba/to-rgba.mjs.map +1 -1
  1047. package/esm/core/MantineProvider/color-scheme-managers/is-mantine-color-scheme.mjs.map +1 -1
  1048. package/esm/core/MantineProvider/color-scheme-managers/local-storage-manager.mjs.map +1 -1
  1049. package/esm/core/MantineProvider/convert-css-variables/convert-css-variables.mjs.map +1 -1
  1050. package/esm/core/MantineProvider/convert-css-variables/css-variables-object-to-string.mjs.map +1 -1
  1051. package/esm/core/MantineProvider/create-theme/create-theme.mjs.map +1 -1
  1052. package/esm/core/MantineProvider/default-colors.mjs.map +1 -1
  1053. package/esm/core/MantineProvider/default-theme.mjs.map +1 -1
  1054. package/esm/core/MantineProvider/mantine-html-props.mjs.map +1 -1
  1055. package/esm/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.mjs +4 -1
  1056. package/esm/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.mjs.map +1 -1
  1057. package/esm/core/MantineProvider/merge-theme-overrides/merge-theme-overrides.mjs.map +1 -1
  1058. package/esm/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.mjs.map +1 -1
  1059. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs.map +1 -1
  1060. package/esm/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.mjs.map +1 -1
  1061. package/esm/core/MantineProvider/use-matches/use-matches.mjs.map +1 -1
  1062. package/esm/core/MantineProvider/use-props/use-props.mjs +10 -2
  1063. package/esm/core/MantineProvider/use-props/use-props.mjs.map +1 -1
  1064. package/esm/core/MantineProvider/use-respect-reduce-motion/use-respect-reduce-motion.mjs.map +1 -1
  1065. package/esm/core/factory/create-polymorphic-component.mjs.map +1 -1
  1066. package/esm/core/factory/factory.mjs.map +1 -1
  1067. package/esm/core/factory/polymorphic-factory.mjs.map +1 -1
  1068. package/esm/core/styles-api/create-vars-resolver/create-vars-resolver.mjs.map +1 -1
  1069. package/esm/core/styles-api/use-resolved-styles-api/use-resolved-styles-api.mjs.map +1 -1
  1070. package/esm/core/styles-api/use-styles/get-class-name/get-class-name.mjs.map +1 -1
  1071. package/esm/core/styles-api/use-styles/get-class-name/get-global-class-names/get-global-class-names.mjs.map +1 -1
  1072. package/esm/core/styles-api/use-styles/get-class-name/get-options-class-names/get-options-class-names.mjs.map +1 -1
  1073. package/esm/core/styles-api/use-styles/get-class-name/get-resolved-class-names/get-resolved-class-names.mjs.map +1 -1
  1074. package/esm/core/styles-api/use-styles/get-class-name/get-root-class-name/get-root-class-name.mjs.map +1 -1
  1075. package/esm/core/styles-api/use-styles/get-class-name/get-selector-class-name/get-selector-class-name.mjs.map +1 -1
  1076. package/esm/core/styles-api/use-styles/get-class-name/get-static-class-names/get-static-class-names.mjs.map +1 -1
  1077. package/esm/core/styles-api/use-styles/get-class-name/get-variant-class-name/get-variant-class-name.mjs.map +1 -1
  1078. package/esm/core/styles-api/use-styles/get-class-name/resolve-class-names/resolve-class-names.mjs.map +1 -1
  1079. package/esm/core/styles-api/use-styles/get-style/get-style.mjs.map +1 -1
  1080. package/esm/core/styles-api/use-styles/get-style/resolve-style/resolve-style.mjs.map +1 -1
  1081. package/esm/core/styles-api/use-styles/get-style/resolve-styles/resolve-styles.mjs.map +1 -1
  1082. package/esm/core/styles-api/use-styles/get-style/resolve-vars/merge-vars.mjs.map +1 -1
  1083. package/esm/core/styles-api/use-styles/use-styles.mjs.map +1 -1
  1084. package/esm/core/styles-api/use-styles/use-transformed-styles.mjs.map +1 -1
  1085. package/esm/core/utils/camel-to-kebab-case/camel-to-kebab-case.mjs.map +1 -1
  1086. package/esm/core/utils/close-on-escape/close-on-escape.mjs.map +1 -1
  1087. package/esm/core/utils/create-event-handler/create-event-handler.mjs.map +1 -1
  1088. package/esm/core/utils/create-safe-context/create-safe-context.mjs.map +1 -1
  1089. package/esm/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.mjs.map +1 -1
  1090. package/esm/core/utils/create-use-external-events/create-use-external-events.mjs.map +1 -1
  1091. package/esm/core/utils/deep-merge/deep-merge.mjs.map +1 -1
  1092. package/esm/core/utils/filter-props/filter-props.mjs.map +1 -1
  1093. package/esm/core/utils/find-closest-number/find-closest-number.mjs.map +1 -1
  1094. package/esm/core/utils/find-element-ancestor/find-element-ancestor.mjs.map +1 -1
  1095. package/esm/core/utils/find-element-in-shadow-dom/find-element-in-shadow-dom.mjs.map +1 -1
  1096. package/esm/core/utils/get-base-value/get-base-value.mjs.map +1 -1
  1097. package/esm/core/utils/get-breakpoint-value/get-breakpoint-value.mjs.map +1 -1
  1098. package/esm/core/utils/get-context-item-index/get-context-item-index.mjs.map +1 -1
  1099. package/esm/core/utils/get-default-z-index/get-default-z-index.mjs.map +1 -1
  1100. package/esm/core/utils/get-env/get-env.mjs.map +1 -1
  1101. package/esm/core/utils/get-ref-prop/get-ref-prop.mjs.map +1 -1
  1102. package/esm/core/utils/get-safe-id/get-safe-id.mjs.map +1 -1
  1103. package/esm/core/utils/get-single-element-child/get-single-element-child.mjs.map +1 -1
  1104. package/esm/core/utils/get-size/get-size.mjs.map +1 -1
  1105. package/esm/core/utils/get-sorted-breakpoints/get-sorted-breakpoints.mjs.map +1 -1
  1106. package/esm/core/utils/is-element/is-element.mjs.map +1 -1
  1107. package/esm/core/utils/is-number-like/is-number-like.mjs.map +1 -1
  1108. package/esm/core/utils/keys/keys.mjs.map +1 -1
  1109. package/esm/core/utils/memoize/memoize.mjs.map +1 -1
  1110. package/esm/core/utils/noop/noop.mjs.map +1 -1
  1111. package/esm/core/utils/primitive/primitive.mjs.map +1 -1
  1112. package/esm/core/utils/units-converters/px.mjs.map +1 -1
  1113. package/esm/core/utils/units-converters/rem.mjs.map +1 -1
  1114. package/esm/core/utils/use-hovered/use-hovered.mjs.map +1 -1
  1115. package/esm/index.mjs +5 -1
  1116. package/esm/utils/Floating/FloatingArrow/FloatingArrow.mjs.map +1 -1
  1117. package/esm/utils/Floating/FloatingArrow/get-arrow-position-styles.mjs.map +1 -1
  1118. package/esm/utils/Floating/get-floating-position/get-floating-position.mjs.map +1 -1
  1119. package/esm/utils/Floating/use-delayed-hover.mjs.map +1 -1
  1120. package/esm/utils/InlineInput/InlineInput.mjs +4 -0
  1121. package/esm/utils/InlineInput/InlineInput.mjs.map +1 -1
  1122. package/esm/utils/InputsGroupFieldset/InputsGroupFieldset.mjs.map +1 -1
  1123. package/lib/components/Combobox/Combobox.types.d.ts +3 -0
  1124. package/lib/components/Combobox/index.d.ts +2 -0
  1125. package/lib/components/Combobox/use-pills-reorder/move-pill.d.ts +2 -0
  1126. package/lib/components/Combobox/use-pills-reorder/use-pills-reorder.d.ts +26 -0
  1127. package/lib/components/Highlight/Highlight.d.ts +12 -1
  1128. package/lib/components/Highlight/highlighter/highlighter.d.ts +3 -0
  1129. package/lib/components/MaskInput/MaskInput.d.ts +2 -0
  1130. package/lib/components/Menu/Menu.context.d.ts +1 -0
  1131. package/lib/components/Menu/MenuSub/MenuSub.context.d.ts +6 -0
  1132. package/lib/components/MultiSelect/MultiSelect.d.ts +2 -0
  1133. package/lib/components/RollingNumber/DigitColumn.d.ts +11 -0
  1134. package/lib/components/RollingNumber/RollingNumber.d.ts +41 -0
  1135. package/lib/components/RollingNumber/build-value.d.ts +10 -0
  1136. package/lib/components/RollingNumber/get-digit-parts.d.ts +12 -0
  1137. package/lib/components/RollingNumber/get-render-slots.d.ts +35 -0
  1138. package/lib/components/RollingNumber/index.d.ts +9 -0
  1139. package/lib/components/Slider/RangeSlider/RangeSlider.d.ts +2 -0
  1140. package/lib/components/Slider/Slider/Slider.d.ts +2 -0
  1141. package/lib/components/Slider/Thumb/Thumb.d.ts +2 -1
  1142. package/lib/components/TagsInput/TagsInput.d.ts +2 -0
  1143. package/lib/components/TreeSelect/TreeSelect.d.ts +124 -0
  1144. package/lib/components/TreeSelect/TreeSelectOption.d.ts +36 -0
  1145. package/lib/components/TreeSelect/flatten-tree-select-data.d.ts +12 -0
  1146. package/lib/components/TreeSelect/get-checked-values-by-strategy.d.ts +4 -0
  1147. package/lib/components/TreeSelect/index.d.ts +13 -0
  1148. package/lib/components/index.d.ts +2 -0
  1149. package/lib/core/MantineProvider/use-props/use-props.d.ts +1 -1
  1150. package/package.json +4 -4
  1151. package/styles/Pill.css +35 -0
  1152. package/styles/Pill.layer.css +35 -0
  1153. package/styles/RollingNumber.css +60 -0
  1154. package/styles/RollingNumber.layer.css +61 -0
  1155. package/styles/Table.css +30 -0
  1156. package/styles/Table.layer.css +30 -0
  1157. package/styles/TreeSelect.css +113 -0
  1158. package/styles/TreeSelect.layer.css +114 -0
  1159. package/styles.css +240 -0
  1160. package/styles.layer.css +240 -0
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingIndicator.mjs","names":["classes"],"sources":["../../../src/components/FloatingIndicator/FloatingIndicator.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { useMergedRef, useReducedMotion } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { useFloatingIndicator } from './use-floating-indicator';\nimport classes from './FloatingIndicator.module.css';\n\nexport type FloatingIndicatorStylesNames = 'root';\nexport type FloatingIndicatorCssVariables = {\n root: '--transition-duration';\n};\n\nexport interface FloatingIndicatorProps\n extends BoxProps, StylesApiProps<FloatingIndicatorFactory>, ElementProps<'div'> {\n /** Target element over which the indicator is displayed.\n * The indicator will be positioned to match the target's size and position.\n * */\n target: HTMLElement | null | undefined;\n\n /** Parent container element that must have `position: relative`.\n * The indicator's position is calculated relative to this element.\n * */\n parent: HTMLElement | null | undefined;\n\n /** Transition duration in ms @default 150 */\n transitionDuration?: number | string;\n\n /** Controls whether the indicator should be hidden initially and displayed after the parent's transition ends.\n * Set to `true` when the parent container has CSS transitions (e.g., `transform: scale()`) to prevent\n * the indicator from appearing at the wrong position during the parent's animation.\n * @default false\n * */\n displayAfterTransitionEnd?: boolean;\n\n /** Called when the indicator starts transitioning to a new position */\n onTransitionStart?: () => void;\n\n /** Called when the indicator finishes transitioning to a new position */\n onTransitionEnd?: () => void;\n}\n\nexport type FloatingIndicatorFactory = Factory<{\n props: FloatingIndicatorProps;\n ref: HTMLDivElement;\n stylesNames: FloatingIndicatorStylesNames;\n vars: FloatingIndicatorCssVariables;\n ctx: { shouldReduceMotion: boolean };\n}>;\n\nconst varsResolver = createVarsResolver<FloatingIndicatorFactory>(\n (theme, { transitionDuration }, { shouldReduceMotion }) => {\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n const duration = reduceMotion\n ? '0ms'\n : typeof transitionDuration === 'number'\n ? `${transitionDuration}ms`\n : transitionDuration || '150ms';\n\n return {\n root: {\n '--transition-duration': duration,\n },\n };\n }\n);\n\nexport const FloatingIndicator = factory<FloatingIndicatorFactory>((_props) => {\n const props = useProps('FloatingIndicator', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n target,\n parent,\n transitionDuration,\n mod,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n attributes,\n ref,\n ...others\n } = props;\n\n const shouldReduceMotion = useReducedMotion();\n\n const getStyles = useStyles<FloatingIndicatorFactory>({\n name: 'FloatingIndicator',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { shouldReduceMotion },\n });\n\n const innerRef = useRef<HTMLDivElement>(null);\n const { initialized, hidden } = useFloatingIndicator({\n target,\n parent,\n ref: innerRef,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n });\n\n const mergedRef = useMergedRef(ref, innerRef);\n\n if (!target || !parent) {\n return null;\n }\n\n return (\n <Box ref={mergedRef} mod={[{ initialized, hidden }, mod]} {...getStyles('root')} {...others} />\n );\n});\n\nFloatingIndicator.displayName = '@mantine/core/FloatingIndicator';\nFloatingIndicator.classes = classes;\nFloatingIndicator.varsResolver = varsResolver;\n\nexport namespace FloatingIndicator {\n export type Props = FloatingIndicatorProps;\n export type StylesNames = FloatingIndicatorStylesNames;\n export type CssVariables = FloatingIndicatorCssVariables;\n export type Factory = FloatingIndicatorFactory;\n}\n"],"mappings":";;;;;;;;;;;;AA0DA,MAAM,eAAe,oBAClB,OAAO,EAAE,sBAAsB,EAAE,yBAAyB;AAQzD,QAAO,EACL,MAAM,EACJ,0BATiB,MAAM,uBAAuB,qBAAqB,SAEnE,QACA,OAAO,uBAAuB,WAC5B,GAAG,mBAAmB,MACtB,sBAAsB,SAKzB,EACF;EAEJ;AAED,MAAa,oBAAoB,SAAmC,WAAW;CAC7E,MAAM,QAAQ,SAAS,qBAAqB,MAAM,OAAO;CACzD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,QACA,QACA,oBACA,KACA,2BACA,mBACA,iBACA,YACA,KACA,GAAG,WACD;CAIJ,MAAM,YAAY,UAAoC;EACpD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,oBAdY,kBAAkB,EAcV;EAClC,CAAC;CAEF,MAAM,WAAW,OAAuB,KAAK;CAC7C,MAAM,EAAE,aAAa,WAAW,qBAAqB;EACnD;EACA;EACA,KAAK;EACL;EACA;EACA;EACD,CAAC;CAEF,MAAM,YAAY,aAAa,KAAK,SAAS;AAE7C,KAAI,CAAC,UAAU,CAAC,OACd,QAAO;AAGT,QACE,oBAAC,KAAD;EAAK,KAAK;EAAW,KAAK,CAAC;GAAE;GAAa;GAAQ,EAAE,IAAI;EAAE,GAAI,UAAU,OAAO;EAAE,GAAI;EAAU,CAAA;EAEjG;AAEF,kBAAkB,cAAc;AAChC,kBAAkB,UAAUA;AAC5B,kBAAkB,eAAe"}
1
+ {"version":3,"file":"FloatingIndicator.mjs","names":["classes"],"sources":["../../../src/components/FloatingIndicator/FloatingIndicator.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { useMergedRef, useReducedMotion } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { useFloatingIndicator } from './use-floating-indicator';\nimport classes from './FloatingIndicator.module.css';\n\nexport type FloatingIndicatorStylesNames = 'root';\nexport type FloatingIndicatorCssVariables = {\n root: '--transition-duration';\n};\n\nexport interface FloatingIndicatorProps\n extends BoxProps, StylesApiProps<FloatingIndicatorFactory>, ElementProps<'div'> {\n /** Target element over which the indicator is displayed.\n * The indicator will be positioned to match the target's size and position.\n * */\n target: HTMLElement | null | undefined;\n\n /** Parent container element that must have `position: relative`.\n * The indicator's position is calculated relative to this element.\n * */\n parent: HTMLElement | null | undefined;\n\n /** Transition duration in ms @default 150 */\n transitionDuration?: number | string;\n\n /** Controls whether the indicator should be hidden initially and displayed after the parent's transition ends.\n * Set to `true` when the parent container has CSS transitions (e.g., `transform: scale()`) to prevent\n * the indicator from appearing at the wrong position during the parent's animation.\n * @default false\n * */\n displayAfterTransitionEnd?: boolean;\n\n /** Called when the indicator starts transitioning to a new position */\n onTransitionStart?: () => void;\n\n /** Called when the indicator finishes transitioning to a new position */\n onTransitionEnd?: () => void;\n}\n\nexport type FloatingIndicatorFactory = Factory<{\n props: FloatingIndicatorProps;\n ref: HTMLDivElement;\n stylesNames: FloatingIndicatorStylesNames;\n vars: FloatingIndicatorCssVariables;\n ctx: { shouldReduceMotion: boolean };\n}>;\n\nconst varsResolver = createVarsResolver<FloatingIndicatorFactory>(\n (theme, { transitionDuration }, { shouldReduceMotion }) => {\n const reduceMotion = theme.respectReducedMotion ? shouldReduceMotion : false;\n const duration = reduceMotion\n ? '0ms'\n : typeof transitionDuration === 'number'\n ? `${transitionDuration}ms`\n : transitionDuration || '150ms';\n\n return {\n root: {\n '--transition-duration': duration,\n },\n };\n }\n);\n\nexport const FloatingIndicator = factory<FloatingIndicatorFactory>((_props) => {\n const props = useProps('FloatingIndicator', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n target,\n parent,\n transitionDuration,\n mod,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n attributes,\n ref,\n ...others\n } = props;\n\n const shouldReduceMotion = useReducedMotion();\n\n const getStyles = useStyles<FloatingIndicatorFactory>({\n name: 'FloatingIndicator',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { shouldReduceMotion },\n });\n\n const innerRef = useRef<HTMLDivElement>(null);\n const { initialized, hidden } = useFloatingIndicator({\n target,\n parent,\n ref: innerRef,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n });\n\n const mergedRef = useMergedRef(ref, innerRef);\n\n if (!target || !parent) {\n return null;\n }\n\n return (\n <Box ref={mergedRef} mod={[{ initialized, hidden }, mod]} {...getStyles('root')} {...others} />\n );\n});\n\nFloatingIndicator.displayName = '@mantine/core/FloatingIndicator';\nFloatingIndicator.classes = classes;\nFloatingIndicator.varsResolver = varsResolver;\n\nexport namespace FloatingIndicator {\n export type Props = FloatingIndicatorProps;\n export type StylesNames = FloatingIndicatorStylesNames;\n export type CssVariables = FloatingIndicatorCssVariables;\n export type Factory = FloatingIndicatorFactory;\n}\n"],"mappings":";;;;;;;;;;;;AA0DA,MAAM,eAAe,oBAClB,OAAO,EAAE,sBAAsB,EAAE,yBAAyB;CAQzD,OAAO,EACL,MAAM,EACJ,0BATiB,MAAM,uBAAuB,qBAAqB,SAEnE,QACA,OAAO,uBAAuB,WAC5B,GAAG,mBAAmB,MACtB,sBAAsB,QAK1B,EACF;AACF,CACF;AAEA,MAAa,oBAAoB,SAAmC,WAAW;CAC7E,MAAM,QAAQ,SAAS,qBAAqB,MAAM,MAAM;CACxD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,QACA,QACA,oBACA,KACA,2BACA,mBACA,iBACA,YACA,KACA,GAAG,WACD;CAIJ,MAAM,YAAY,UAAoC;EACpD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,oBAdY,iBAcK,EAAE;CAClC,CAAC;CAED,MAAM,WAAW,OAAuB,IAAI;CAC5C,MAAM,EAAE,aAAa,WAAW,qBAAqB;EACnD;EACA;EACA,KAAK;EACL;EACA;EACA;CACF,CAAC;CAED,MAAM,YAAY,aAAa,KAAK,QAAQ;CAE5C,IAAI,CAAC,UAAU,CAAC,QACd,OAAO;CAGT,OACE,oBAAC,KAAD;EAAK,KAAK;EAAW,KAAK,CAAC;GAAE;GAAa;EAAO,GAAG,GAAG;EAAG,GAAI,UAAU,MAAM;EAAG,GAAI;CAAS,CAAA;AAElG,CAAC;AAED,kBAAkB,cAAc;AAChC,kBAAkB,UAAUA;AAC5B,kBAAkB,eAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-floating-indicator.mjs","names":[],"sources":["../../../src/components/FloatingIndicator/use-floating-indicator.ts"],"sourcesContent":["import { useEffect, useRef, useState, type RefObject } from 'react';\nimport { useMutationObserverTarget, useTimeout } from '@mantine/hooks';\nimport { getEnv } from '../../core';\nimport { toInt } from '../ScrollArea/utils';\n\nfunction isParent(\n parentElement: HTMLElement | EventTarget | null,\n childElement: HTMLElement | null\n) {\n if (!childElement || !parentElement) {\n return false;\n }\n\n let parent = childElement.parentNode;\n while (parent != null) {\n if (parent === parentElement) {\n return true;\n }\n parent = parent.parentNode;\n }\n return false;\n}\n\ninterface UseFloatingIndicatorInput {\n target: HTMLElement | null | undefined;\n parent: HTMLElement | null | undefined;\n ref: RefObject<HTMLElement | null>;\n displayAfterTransitionEnd?: boolean;\n onTransitionStart?: () => void;\n onTransitionEnd?: () => void;\n}\n\nexport function useFloatingIndicator({\n target,\n parent,\n ref,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n}: UseFloatingIndicatorInput) {\n const transitionTimeout = useRef<number>(-1);\n const previousTarget = useRef<HTMLElement | null | undefined>(target);\n const [initialized, setInitialized] = useState(false);\n\n const [hidden, setHidden] = useState(\n typeof displayAfterTransitionEnd === 'boolean' ? displayAfterTransitionEnd : false\n );\n\n const updatePosition = () => {\n if (!target || !parent || !ref.current) {\n return;\n }\n\n const targetRect = target.getBoundingClientRect();\n const parentRect = parent.getBoundingClientRect();\n\n const targetComputedStyle = window.getComputedStyle(target);\n const parentComputedStyle = window.getComputedStyle(parent);\n\n const borderTopWidth =\n toInt(targetComputedStyle.borderTopWidth) + toInt(parentComputedStyle.borderTopWidth);\n const borderLeftWidth =\n toInt(targetComputedStyle.borderLeftWidth) + toInt(parentComputedStyle.borderLeftWidth);\n\n const position = {\n top: targetRect.top - parentRect.top - borderTopWidth,\n left: targetRect.left - parentRect.left - borderLeftWidth,\n width: targetRect.width,\n height: targetRect.height,\n };\n\n ref.current.style.transform = `translateY(${position.top}px) translateX(${position.left}px)`;\n ref.current.style.width = `${position.width}px`;\n ref.current.style.height = `${position.height}px`;\n };\n\n const updatePositionWithoutAnimation = () => {\n window.clearTimeout(transitionTimeout.current);\n if (ref.current) {\n ref.current.style.transitionDuration = '0ms';\n }\n updatePosition();\n transitionTimeout.current = window.setTimeout(() => {\n if (ref.current) {\n ref.current.style.transitionDuration = '';\n }\n }, 30);\n };\n\n const targetResizeObserver = useRef<ResizeObserver>(null);\n const parentResizeObserver = useRef<ResizeObserver>(null);\n\n useEffect(() => {\n if (initialized && previousTarget.current !== target && onTransitionStart) {\n onTransitionStart();\n }\n\n previousTarget.current = target;\n updatePosition();\n\n if (target) {\n targetResizeObserver.current = new ResizeObserver(updatePositionWithoutAnimation);\n targetResizeObserver.current.observe(target);\n\n if (parent) {\n parentResizeObserver.current = new ResizeObserver(updatePositionWithoutAnimation);\n parentResizeObserver.current.observe(parent);\n }\n\n return () => {\n targetResizeObserver.current?.disconnect();\n parentResizeObserver.current?.disconnect();\n };\n }\n\n return undefined;\n }, [parent, target]);\n\n useEffect(() => {\n if (parent) {\n const handleTransitionEnd = (event: TransitionEvent) => {\n if (isParent(event.target, parent)) {\n updatePositionWithoutAnimation();\n setHidden(false);\n }\n };\n\n parent.addEventListener('transitionend', handleTransitionEnd);\n return () => {\n parent.removeEventListener('transitionend', handleTransitionEnd);\n };\n }\n\n return undefined;\n }, [parent]);\n\n useEffect(() => {\n if (ref.current && onTransitionEnd) {\n const handleIndicatorTransitionEnd = (event: TransitionEvent) => {\n if (event.propertyName === 'transform') {\n onTransitionEnd();\n }\n };\n\n ref.current.addEventListener('transitionend', handleIndicatorTransitionEnd);\n return () => {\n ref.current?.removeEventListener('transitionend', handleIndicatorTransitionEnd);\n };\n }\n\n return undefined;\n }, [onTransitionEnd]);\n\n useTimeout(\n () => {\n // Prevents warning about state update without act\n if (getEnv() !== 'test') {\n setInitialized(true);\n }\n },\n 20,\n { autoInvoke: true }\n );\n\n useMutationObserverTarget(\n (mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.type === 'attributes' && mutation.attributeName === 'dir') {\n updatePositionWithoutAnimation();\n }\n });\n },\n { attributes: true, attributeFilter: ['dir'] },\n () => document.documentElement\n );\n\n return { initialized, hidden };\n}\n"],"mappings":";;;;;;AAKA,SAAS,SACP,eACA,cACA;AACA,KAAI,CAAC,gBAAgB,CAAC,cACpB,QAAO;CAGT,IAAI,SAAS,aAAa;AAC1B,QAAO,UAAU,MAAM;AACrB,MAAI,WAAW,cACb,QAAO;AAET,WAAS,OAAO;;AAElB,QAAO;;AAYT,SAAgB,qBAAqB,EACnC,QACA,QACA,KACA,2BACA,mBACA,mBAC4B;CAC5B,MAAM,oBAAoB,OAAe,GAAG;CAC5C,MAAM,iBAAiB,OAAuC,OAAO;CACrE,MAAM,CAAC,aAAa,kBAAkB,SAAS,MAAM;CAErD,MAAM,CAAC,QAAQ,aAAa,SAC1B,OAAO,8BAA8B,YAAY,4BAA4B,MAC9E;CAED,MAAM,uBAAuB;AAC3B,MAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,QAC7B;EAGF,MAAM,aAAa,OAAO,uBAAuB;EACjD,MAAM,aAAa,OAAO,uBAAuB;EAEjD,MAAM,sBAAsB,OAAO,iBAAiB,OAAO;EAC3D,MAAM,sBAAsB,OAAO,iBAAiB,OAAO;EAE3D,MAAM,iBACJ,MAAM,oBAAoB,eAAe,GAAG,MAAM,oBAAoB,eAAe;EACvF,MAAM,kBACJ,MAAM,oBAAoB,gBAAgB,GAAG,MAAM,oBAAoB,gBAAgB;EAEzF,MAAM,WAAW;GACf,KAAK,WAAW,MAAM,WAAW,MAAM;GACvC,MAAM,WAAW,OAAO,WAAW,OAAO;GAC1C,OAAO,WAAW;GAClB,QAAQ,WAAW;GACpB;AAED,MAAI,QAAQ,MAAM,YAAY,cAAc,SAAS,IAAI,iBAAiB,SAAS,KAAK;AACxF,MAAI,QAAQ,MAAM,QAAQ,GAAG,SAAS,MAAM;AAC5C,MAAI,QAAQ,MAAM,SAAS,GAAG,SAAS,OAAO;;CAGhD,MAAM,uCAAuC;AAC3C,SAAO,aAAa,kBAAkB,QAAQ;AAC9C,MAAI,IAAI,QACN,KAAI,QAAQ,MAAM,qBAAqB;AAEzC,kBAAgB;AAChB,oBAAkB,UAAU,OAAO,iBAAiB;AAClD,OAAI,IAAI,QACN,KAAI,QAAQ,MAAM,qBAAqB;KAExC,GAAG;;CAGR,MAAM,uBAAuB,OAAuB,KAAK;CACzD,MAAM,uBAAuB,OAAuB,KAAK;AAEzD,iBAAgB;AACd,MAAI,eAAe,eAAe,YAAY,UAAU,kBACtD,oBAAmB;AAGrB,iBAAe,UAAU;AACzB,kBAAgB;AAEhB,MAAI,QAAQ;AACV,wBAAqB,UAAU,IAAI,eAAe,+BAA+B;AACjF,wBAAqB,QAAQ,QAAQ,OAAO;AAE5C,OAAI,QAAQ;AACV,yBAAqB,UAAU,IAAI,eAAe,+BAA+B;AACjF,yBAAqB,QAAQ,QAAQ,OAAO;;AAG9C,gBAAa;AACX,yBAAqB,SAAS,YAAY;AAC1C,yBAAqB,SAAS,YAAY;;;IAK7C,CAAC,QAAQ,OAAO,CAAC;AAEpB,iBAAgB;AACd,MAAI,QAAQ;GACV,MAAM,uBAAuB,UAA2B;AACtD,QAAI,SAAS,MAAM,QAAQ,OAAO,EAAE;AAClC,qCAAgC;AAChC,eAAU,MAAM;;;AAIpB,UAAO,iBAAiB,iBAAiB,oBAAoB;AAC7D,gBAAa;AACX,WAAO,oBAAoB,iBAAiB,oBAAoB;;;IAKnE,CAAC,OAAO,CAAC;AAEZ,iBAAgB;AACd,MAAI,IAAI,WAAW,iBAAiB;GAClC,MAAM,gCAAgC,UAA2B;AAC/D,QAAI,MAAM,iBAAiB,YACzB,kBAAiB;;AAIrB,OAAI,QAAQ,iBAAiB,iBAAiB,6BAA6B;AAC3E,gBAAa;AACX,QAAI,SAAS,oBAAoB,iBAAiB,6BAA6B;;;IAKlF,CAAC,gBAAgB,CAAC;AAErB,kBACQ;AAEJ,MAAI,QAAQ,KAAK,OACf,gBAAe,KAAK;IAGxB,IACA,EAAE,YAAY,MAAM,CACrB;AAED,4BACG,cAAc;AACb,YAAU,SAAS,aAAa;AAC9B,OAAI,SAAS,SAAS,gBAAgB,SAAS,kBAAkB,MAC/D,iCAAgC;IAElC;IAEJ;EAAE,YAAY;EAAM,iBAAiB,CAAC,MAAM;EAAE,QACxC,SAAS,gBAChB;AAED,QAAO;EAAE;EAAa;EAAQ"}
1
+ {"version":3,"file":"use-floating-indicator.mjs","names":[],"sources":["../../../src/components/FloatingIndicator/use-floating-indicator.ts"],"sourcesContent":["import { useEffect, useRef, useState, type RefObject } from 'react';\nimport { useMutationObserverTarget, useTimeout } from '@mantine/hooks';\nimport { getEnv } from '../../core';\nimport { toInt } from '../ScrollArea/utils';\n\nfunction isParent(\n parentElement: HTMLElement | EventTarget | null,\n childElement: HTMLElement | null\n) {\n if (!childElement || !parentElement) {\n return false;\n }\n\n let parent = childElement.parentNode;\n while (parent != null) {\n if (parent === parentElement) {\n return true;\n }\n parent = parent.parentNode;\n }\n return false;\n}\n\ninterface UseFloatingIndicatorInput {\n target: HTMLElement | null | undefined;\n parent: HTMLElement | null | undefined;\n ref: RefObject<HTMLElement | null>;\n displayAfterTransitionEnd?: boolean;\n onTransitionStart?: () => void;\n onTransitionEnd?: () => void;\n}\n\nexport function useFloatingIndicator({\n target,\n parent,\n ref,\n displayAfterTransitionEnd,\n onTransitionStart,\n onTransitionEnd,\n}: UseFloatingIndicatorInput) {\n const transitionTimeout = useRef<number>(-1);\n const previousTarget = useRef<HTMLElement | null | undefined>(target);\n const [initialized, setInitialized] = useState(false);\n\n const [hidden, setHidden] = useState(\n typeof displayAfterTransitionEnd === 'boolean' ? displayAfterTransitionEnd : false\n );\n\n const updatePosition = () => {\n if (!target || !parent || !ref.current) {\n return;\n }\n\n const targetRect = target.getBoundingClientRect();\n const parentRect = parent.getBoundingClientRect();\n\n const targetComputedStyle = window.getComputedStyle(target);\n const parentComputedStyle = window.getComputedStyle(parent);\n\n const borderTopWidth =\n toInt(targetComputedStyle.borderTopWidth) + toInt(parentComputedStyle.borderTopWidth);\n const borderLeftWidth =\n toInt(targetComputedStyle.borderLeftWidth) + toInt(parentComputedStyle.borderLeftWidth);\n\n const position = {\n top: targetRect.top - parentRect.top - borderTopWidth,\n left: targetRect.left - parentRect.left - borderLeftWidth,\n width: targetRect.width,\n height: targetRect.height,\n };\n\n ref.current.style.transform = `translateY(${position.top}px) translateX(${position.left}px)`;\n ref.current.style.width = `${position.width}px`;\n ref.current.style.height = `${position.height}px`;\n };\n\n const updatePositionWithoutAnimation = () => {\n window.clearTimeout(transitionTimeout.current);\n if (ref.current) {\n ref.current.style.transitionDuration = '0ms';\n }\n updatePosition();\n transitionTimeout.current = window.setTimeout(() => {\n if (ref.current) {\n ref.current.style.transitionDuration = '';\n }\n }, 30);\n };\n\n const targetResizeObserver = useRef<ResizeObserver>(null);\n const parentResizeObserver = useRef<ResizeObserver>(null);\n\n useEffect(() => {\n if (initialized && previousTarget.current !== target && onTransitionStart) {\n onTransitionStart();\n }\n\n previousTarget.current = target;\n updatePosition();\n\n if (target) {\n targetResizeObserver.current = new ResizeObserver(updatePositionWithoutAnimation);\n targetResizeObserver.current.observe(target);\n\n if (parent) {\n parentResizeObserver.current = new ResizeObserver(updatePositionWithoutAnimation);\n parentResizeObserver.current.observe(parent);\n }\n\n return () => {\n targetResizeObserver.current?.disconnect();\n parentResizeObserver.current?.disconnect();\n };\n }\n\n return undefined;\n }, [parent, target]);\n\n useEffect(() => {\n if (parent) {\n const handleTransitionEnd = (event: TransitionEvent) => {\n if (isParent(event.target, parent)) {\n updatePositionWithoutAnimation();\n setHidden(false);\n }\n };\n\n parent.addEventListener('transitionend', handleTransitionEnd);\n return () => {\n parent.removeEventListener('transitionend', handleTransitionEnd);\n };\n }\n\n return undefined;\n }, [parent]);\n\n useEffect(() => {\n if (ref.current && onTransitionEnd) {\n const handleIndicatorTransitionEnd = (event: TransitionEvent) => {\n if (event.propertyName === 'transform') {\n onTransitionEnd();\n }\n };\n\n ref.current.addEventListener('transitionend', handleIndicatorTransitionEnd);\n return () => {\n ref.current?.removeEventListener('transitionend', handleIndicatorTransitionEnd);\n };\n }\n\n return undefined;\n }, [onTransitionEnd]);\n\n useTimeout(\n () => {\n // Prevents warning about state update without act\n if (getEnv() !== 'test') {\n setInitialized(true);\n }\n },\n 20,\n { autoInvoke: true }\n );\n\n useMutationObserverTarget(\n (mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.type === 'attributes' && mutation.attributeName === 'dir') {\n updatePositionWithoutAnimation();\n }\n });\n },\n { attributes: true, attributeFilter: ['dir'] },\n () => document.documentElement\n );\n\n return { initialized, hidden };\n}\n"],"mappings":";;;;;;AAKA,SAAS,SACP,eACA,cACA;CACA,IAAI,CAAC,gBAAgB,CAAC,eACpB,OAAO;CAGT,IAAI,SAAS,aAAa;CAC1B,OAAO,UAAU,MAAM;EACrB,IAAI,WAAW,eACb,OAAO;EAET,SAAS,OAAO;CAClB;CACA,OAAO;AACT;AAWA,SAAgB,qBAAqB,EACnC,QACA,QACA,KACA,2BACA,mBACA,mBAC4B;CAC5B,MAAM,oBAAoB,OAAe,EAAE;CAC3C,MAAM,iBAAiB,OAAuC,MAAM;CACpE,MAAM,CAAC,aAAa,kBAAkB,SAAS,KAAK;CAEpD,MAAM,CAAC,QAAQ,aAAa,SAC1B,OAAO,8BAA8B,YAAY,4BAA4B,KAC/E;CAEA,MAAM,uBAAuB;EAC3B,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,SAC7B;EAGF,MAAM,aAAa,OAAO,sBAAsB;EAChD,MAAM,aAAa,OAAO,sBAAsB;EAEhD,MAAM,sBAAsB,OAAO,iBAAiB,MAAM;EAC1D,MAAM,sBAAsB,OAAO,iBAAiB,MAAM;EAE1D,MAAM,iBACJ,MAAM,oBAAoB,cAAc,IAAI,MAAM,oBAAoB,cAAc;EACtF,MAAM,kBACJ,MAAM,oBAAoB,eAAe,IAAI,MAAM,oBAAoB,eAAe;EAExF,MAAM,WAAW;GACf,KAAK,WAAW,MAAM,WAAW,MAAM;GACvC,MAAM,WAAW,OAAO,WAAW,OAAO;GAC1C,OAAO,WAAW;GAClB,QAAQ,WAAW;EACrB;EAEA,IAAI,QAAQ,MAAM,YAAY,cAAc,SAAS,IAAI,iBAAiB,SAAS,KAAK;EACxF,IAAI,QAAQ,MAAM,QAAQ,GAAG,SAAS,MAAM;EAC5C,IAAI,QAAQ,MAAM,SAAS,GAAG,SAAS,OAAO;CAChD;CAEA,MAAM,uCAAuC;EAC3C,OAAO,aAAa,kBAAkB,OAAO;EAC7C,IAAI,IAAI,SACN,IAAI,QAAQ,MAAM,qBAAqB;EAEzC,eAAe;EACf,kBAAkB,UAAU,OAAO,iBAAiB;GAClD,IAAI,IAAI,SACN,IAAI,QAAQ,MAAM,qBAAqB;EAE3C,GAAG,EAAE;CACP;CAEA,MAAM,uBAAuB,OAAuB,IAAI;CACxD,MAAM,uBAAuB,OAAuB,IAAI;CAExD,gBAAgB;EACd,IAAI,eAAe,eAAe,YAAY,UAAU,mBACtD,kBAAkB;EAGpB,eAAe,UAAU;EACzB,eAAe;EAEf,IAAI,QAAQ;GACV,qBAAqB,UAAU,IAAI,eAAe,8BAA8B;GAChF,qBAAqB,QAAQ,QAAQ,MAAM;GAE3C,IAAI,QAAQ;IACV,qBAAqB,UAAU,IAAI,eAAe,8BAA8B;IAChF,qBAAqB,QAAQ,QAAQ,MAAM;GAC7C;GAEA,aAAa;IACX,qBAAqB,SAAS,WAAW;IACzC,qBAAqB,SAAS,WAAW;GAC3C;EACF;CAGF,GAAG,CAAC,QAAQ,MAAM,CAAC;CAEnB,gBAAgB;EACd,IAAI,QAAQ;GACV,MAAM,uBAAuB,UAA2B;IACtD,IAAI,SAAS,MAAM,QAAQ,MAAM,GAAG;KAClC,+BAA+B;KAC/B,UAAU,KAAK;IACjB;GACF;GAEA,OAAO,iBAAiB,iBAAiB,mBAAmB;GAC5D,aAAa;IACX,OAAO,oBAAoB,iBAAiB,mBAAmB;GACjE;EACF;CAGF,GAAG,CAAC,MAAM,CAAC;CAEX,gBAAgB;EACd,IAAI,IAAI,WAAW,iBAAiB;GAClC,MAAM,gCAAgC,UAA2B;IAC/D,IAAI,MAAM,iBAAiB,aACzB,gBAAgB;GAEpB;GAEA,IAAI,QAAQ,iBAAiB,iBAAiB,4BAA4B;GAC1E,aAAa;IACX,IAAI,SAAS,oBAAoB,iBAAiB,4BAA4B;GAChF;EACF;CAGF,GAAG,CAAC,eAAe,CAAC;CAEpB,iBACQ;EAEJ,IAAI,OAAO,MAAM,QACf,eAAe,IAAI;CAEvB,GACA,IACA,EAAE,YAAY,KAAK,CACrB;CAEA,2BACG,cAAc;EACb,UAAU,SAAS,aAAa;GAC9B,IAAI,SAAS,SAAS,gBAAgB,SAAS,kBAAkB,OAC/D,+BAA+B;EAEnC,CAAC;CACH,GACA;EAAE,YAAY;EAAM,iBAAiB,CAAC,KAAK;CAAE,SACvC,SAAS,eACjB;CAEA,OAAO;EAAE;EAAa;CAAO;AAC/B"}
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingWindow.mjs","names":["classes"],"sources":["../../../src/components/FloatingWindow/FloatingWindow.tsx"],"sourcesContent":["import { useImperativeHandle } from 'react';\nimport {\n SetFloatingWindowPosition,\n useFloatingWindow,\n UseFloatingWindowOptions,\n useMergedRef,\n} from '@mantine/hooks';\nimport {\n BoxProps,\n ElementProps,\n factory,\n Factory,\n getDefaultZIndex,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { Paper, PaperBaseProps } from '../Paper';\nimport { OptionalPortal, PortalProps } from '../Portal';\nimport classes from './FloatingWindow.module.css';\n\nexport type FloatingWindowStylesNames = 'root';\n\nexport interface FloatingWindowProps\n extends\n UseFloatingWindowOptions,\n PaperBaseProps,\n BoxProps,\n StylesApiProps<FloatingWindowFactory>,\n ElementProps<'div', keyof UseFloatingWindowOptions> {\n /** Assigns ref to set position programmatically */\n setPositionRef?: React.RefObject<SetFloatingWindowPosition | null>;\n\n /** Determines whether the window should be rendered inside `Portal` @default true */\n withinPortal?: boolean;\n\n /** Props passed down to `Portal` component */\n portalProps?: Omit<PortalProps, 'children'>;\n\n /** `z-index` of the root element @default 400 */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nexport type FloatingWindowFactory = Factory<{\n props: FloatingWindowProps;\n ref: HTMLDivElement;\n stylesNames: FloatingWindowStylesNames;\n}>;\n\nconst defaultProps = {\n constrainToViewport: true,\n zIndex: getDefaultZIndex('overlay'),\n} satisfies Partial<FloatingWindowProps>;\n\nexport const FloatingWindow = factory<FloatingWindowFactory>((_props) => {\n const props = useProps('FloatingWindow', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n mod,\n enabled,\n constrainToViewport,\n constrainOffset,\n dragHandleSelector,\n excludeDragHandleSelector,\n axis,\n initialPosition,\n onPositionChange,\n onDragStart,\n onDragEnd,\n setPositionRef,\n withinPortal,\n portalProps,\n zIndex,\n ref,\n ...others\n } = props;\n\n const getStyles = useStyles<FloatingWindowFactory>({\n name: 'FloatingWindow',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n });\n\n const floatingWindow = useFloatingWindow({\n enabled,\n constrainToViewport,\n constrainOffset,\n dragHandleSelector,\n excludeDragHandleSelector,\n axis,\n initialPosition,\n onPositionChange,\n onDragStart,\n onDragEnd,\n });\n\n useImperativeHandle(setPositionRef, () => floatingWindow.setPosition, [\n floatingWindow.setPosition,\n ]);\n\n return (\n <OptionalPortal withinPortal={withinPortal} {...portalProps}>\n <Paper\n ref={useMergedRef(ref, floatingWindow.ref)}\n mod={[{ dragging: floatingWindow.isDragging }, mod]}\n {...getStyles('root')}\n {...others}\n __vars={{ '--floating-window-z-index': zIndex.toString() }}\n />\n </OptionalPortal>\n );\n});\n\nFloatingWindow.displayName = '@mantine/core/FloatingWindow';\nFloatingWindow.classes = classes;\n\nexport namespace FloatingWindow {\n export type Props = FloatingWindowProps;\n export type StylesNames = FloatingWindowStylesNames;\n export type Factory = FloatingWindowFactory;\n}\n"],"mappings":";;;;;;;;;;;;AAiDA,MAAM,eAAe;CACnB,qBAAqB;CACrB,QAAQ,iBAAiB,UAAU;CACpC;AAED,MAAa,iBAAiB,SAAgC,WAAW;CACvE,MAAM,QAAQ,SAAS,kBAAkB,cAAc,OAAO;CAC9D,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,KACA,SACA,qBACA,iBACA,oBACA,2BACA,MACA,iBACA,kBACA,aACA,WACA,gBACA,cACA,aACA,QACA,KACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAiC;EACjD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;CAEF,MAAM,iBAAiB,kBAAkB;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;AAEF,qBAAoB,sBAAsB,eAAe,aAAa,CACpE,eAAe,YAChB,CAAC;AAEF,QACE,oBAAC,gBAAD;EAA8B;EAAc,GAAI;YAC9C,oBAAC,OAAD;GACE,KAAK,aAAa,KAAK,eAAe,IAAI;GAC1C,KAAK,CAAC,EAAE,UAAU,eAAe,YAAY,EAAE,IAAI;GACnD,GAAI,UAAU,OAAO;GACrB,GAAI;GACJ,QAAQ,EAAE,6BAA6B,OAAO,UAAU,EAAE;GAC1D,CAAA;EACa,CAAA;EAEnB;AAEF,eAAe,cAAc;AAC7B,eAAe,UAAUA"}
1
+ {"version":3,"file":"FloatingWindow.mjs","names":["classes"],"sources":["../../../src/components/FloatingWindow/FloatingWindow.tsx"],"sourcesContent":["import { useImperativeHandle } from 'react';\nimport {\n SetFloatingWindowPosition,\n useFloatingWindow,\n UseFloatingWindowOptions,\n useMergedRef,\n} from '@mantine/hooks';\nimport {\n BoxProps,\n ElementProps,\n factory,\n Factory,\n getDefaultZIndex,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { Paper, PaperBaseProps } from '../Paper';\nimport { OptionalPortal, PortalProps } from '../Portal';\nimport classes from './FloatingWindow.module.css';\n\nexport type FloatingWindowStylesNames = 'root';\n\nexport interface FloatingWindowProps\n extends\n UseFloatingWindowOptions,\n PaperBaseProps,\n BoxProps,\n StylesApiProps<FloatingWindowFactory>,\n ElementProps<'div', keyof UseFloatingWindowOptions> {\n /** Assigns ref to set position programmatically */\n setPositionRef?: React.RefObject<SetFloatingWindowPosition | null>;\n\n /** Determines whether the window should be rendered inside `Portal` @default true */\n withinPortal?: boolean;\n\n /** Props passed down to `Portal` component */\n portalProps?: Omit<PortalProps, 'children'>;\n\n /** `z-index` of the root element @default 400 */\n zIndex?: React.CSSProperties['zIndex'];\n}\n\nexport type FloatingWindowFactory = Factory<{\n props: FloatingWindowProps;\n ref: HTMLDivElement;\n stylesNames: FloatingWindowStylesNames;\n}>;\n\nconst defaultProps = {\n constrainToViewport: true,\n zIndex: getDefaultZIndex('overlay'),\n} satisfies Partial<FloatingWindowProps>;\n\nexport const FloatingWindow = factory<FloatingWindowFactory>((_props) => {\n const props = useProps('FloatingWindow', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n mod,\n enabled,\n constrainToViewport,\n constrainOffset,\n dragHandleSelector,\n excludeDragHandleSelector,\n axis,\n initialPosition,\n onPositionChange,\n onDragStart,\n onDragEnd,\n setPositionRef,\n withinPortal,\n portalProps,\n zIndex,\n ref,\n ...others\n } = props;\n\n const getStyles = useStyles<FloatingWindowFactory>({\n name: 'FloatingWindow',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n });\n\n const floatingWindow = useFloatingWindow({\n enabled,\n constrainToViewport,\n constrainOffset,\n dragHandleSelector,\n excludeDragHandleSelector,\n axis,\n initialPosition,\n onPositionChange,\n onDragStart,\n onDragEnd,\n });\n\n useImperativeHandle(setPositionRef, () => floatingWindow.setPosition, [\n floatingWindow.setPosition,\n ]);\n\n return (\n <OptionalPortal withinPortal={withinPortal} {...portalProps}>\n <Paper\n ref={useMergedRef(ref, floatingWindow.ref)}\n mod={[{ dragging: floatingWindow.isDragging }, mod]}\n {...getStyles('root')}\n {...others}\n __vars={{ '--floating-window-z-index': zIndex.toString() }}\n />\n </OptionalPortal>\n );\n});\n\nFloatingWindow.displayName = '@mantine/core/FloatingWindow';\nFloatingWindow.classes = classes;\n\nexport namespace FloatingWindow {\n export type Props = FloatingWindowProps;\n export type StylesNames = FloatingWindowStylesNames;\n export type Factory = FloatingWindowFactory;\n}\n"],"mappings":";;;;;;;;;;;;AAiDA,MAAM,eAAe;CACnB,qBAAqB;CACrB,QAAQ,iBAAiB,SAAS;AACpC;AAEA,MAAa,iBAAiB,SAAgC,WAAW;CACvE,MAAM,QAAQ,SAAS,kBAAkB,cAAc,MAAM;CAC7D,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,KACA,SACA,qBACA,iBACA,oBACA,2BACA,MACA,iBACA,kBACA,aACA,WACA,gBACA,cACA,aACA,QACA,KACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAiC;EACjD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,iBAAiB,kBAAkB;EACvC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,oBAAoB,sBAAsB,eAAe,aAAa,CACpE,eAAe,WACjB,CAAC;CAED,OACE,oBAAC,gBAAD;EAA8B;EAAc,GAAI;YAC9C,oBAAC,OAAD;GACE,KAAK,aAAa,KAAK,eAAe,GAAG;GACzC,KAAK,CAAC,EAAE,UAAU,eAAe,WAAW,GAAG,GAAG;GAClD,GAAI,UAAU,MAAM;GACpB,GAAI;GACJ,QAAQ,EAAE,6BAA6B,OAAO,SAAS,EAAE;EAC1D,CAAA;CACa,CAAA;AAEpB,CAAC;AAED,eAAe,cAAc;AAC7B,eAAe,UAAUA"}
@@ -1 +1 @@
1
- {"version":3,"file":"FocusTrap.mjs","names":[],"sources":["../../../src/components/FocusTrap/FocusTrap.tsx"],"sourcesContent":["import { cloneElement } from 'react';\nimport { useFocusTrap, useMergedRef } from '@mantine/hooks';\nimport { getSingleElementChild } from '../../core';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport interface FocusTrapProps {\n /** Element to trap focus at, must support ref prop */\n children: any;\n\n /** If set to `false`, disables focus trap */\n active?: boolean;\n\n /** Prop that is used to access element ref @default 'ref' */\n refProp?: string;\n\n /** Ref to combine with the focus trap ref */\n innerRef?: React.Ref<any>;\n}\n\nexport function FocusTrap({\n children,\n active = true,\n refProp = 'ref',\n innerRef,\n}: FocusTrapProps): React.ReactElement {\n const focusTrapRef = useFocusTrap(active);\n const ref = useMergedRef(focusTrapRef, innerRef);\n\n const child = getSingleElementChild(children);\n if (!child) {\n return children;\n }\n\n return cloneElement(child, { [refProp]: ref });\n}\n\nexport function FocusTrapInitialFocus(props: React.ComponentProps<'span'>) {\n return <VisuallyHidden tabIndex={-1} data-autofocus {...props} />;\n}\n\nFocusTrap.displayName = '@mantine/core/FocusTrap';\nFocusTrapInitialFocus.displayName = '@mantine/core/FocusTrapInitialFocus';\nFocusTrap.InitialFocus = FocusTrapInitialFocus;\n\nexport namespace FocusTrap {\n export type Props = FocusTrapProps;\n}\n"],"mappings":";;;;;;;AAmBA,SAAgB,UAAU,EACxB,UACA,SAAS,MACT,UAAU,OACV,YACqC;CAErC,MAAM,MAAM,aADS,aAAa,OAAO,EACF,SAAS;CAEhD,MAAM,QAAQ,sBAAsB,SAAS;AAC7C,KAAI,CAAC,MACH,QAAO;AAGT,QAAO,aAAa,OAAO,GAAG,UAAU,KAAK,CAAC;;AAGhD,SAAgB,sBAAsB,OAAqC;AACzE,QAAO,oBAAC,gBAAD;EAAgB,UAAU;EAAI,kBAAA;EAAe,GAAI;EAAS,CAAA;;AAGnE,UAAU,cAAc;AACxB,sBAAsB,cAAc;AACpC,UAAU,eAAe"}
1
+ {"version":3,"file":"FocusTrap.mjs","names":[],"sources":["../../../src/components/FocusTrap/FocusTrap.tsx"],"sourcesContent":["import { cloneElement } from 'react';\nimport { useFocusTrap, useMergedRef } from '@mantine/hooks';\nimport { getSingleElementChild } from '../../core';\nimport { VisuallyHidden } from '../VisuallyHidden';\n\nexport interface FocusTrapProps {\n /** Element to trap focus at, must support ref prop */\n children: any;\n\n /** If set to `false`, disables focus trap */\n active?: boolean;\n\n /** Prop that is used to access element ref @default 'ref' */\n refProp?: string;\n\n /** Ref to combine with the focus trap ref */\n innerRef?: React.Ref<any>;\n}\n\nexport function FocusTrap({\n children,\n active = true,\n refProp = 'ref',\n innerRef,\n}: FocusTrapProps): React.ReactElement {\n const focusTrapRef = useFocusTrap(active);\n const ref = useMergedRef(focusTrapRef, innerRef);\n\n const child = getSingleElementChild(children);\n if (!child) {\n return children;\n }\n\n return cloneElement(child, { [refProp]: ref });\n}\n\nexport function FocusTrapInitialFocus(props: React.ComponentProps<'span'>) {\n return <VisuallyHidden tabIndex={-1} data-autofocus {...props} />;\n}\n\nFocusTrap.displayName = '@mantine/core/FocusTrap';\nFocusTrapInitialFocus.displayName = '@mantine/core/FocusTrapInitialFocus';\nFocusTrap.InitialFocus = FocusTrapInitialFocus;\n\nexport namespace FocusTrap {\n export type Props = FocusTrapProps;\n}\n"],"mappings":";;;;;;;AAmBA,SAAgB,UAAU,EACxB,UACA,SAAS,MACT,UAAU,OACV,YACqC;CAErC,MAAM,MAAM,aADS,aAAa,MACE,GAAG,QAAQ;CAE/C,MAAM,QAAQ,sBAAsB,QAAQ;CAC5C,IAAI,CAAC,OACH,OAAO;CAGT,OAAO,aAAa,OAAO,GAAG,UAAU,IAAI,CAAC;AAC/C;AAEA,SAAgB,sBAAsB,OAAqC;CACzE,OAAO,oBAAC,gBAAD;EAAgB,UAAU;EAAI,kBAAA;EAAe,GAAI;CAAQ,CAAA;AAClE;AAEA,UAAU,cAAc;AACxB,sBAAsB,cAAc;AACpC,UAAU,eAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.context.mjs","names":[],"sources":["../../../src/components/Grid/Grid.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi, MantineSize } from '../../core';\nimport type { GridFactory } from './Grid';\n\nexport type GridBreakpoints = Record<MantineSize, string>;\n\nexport interface GridContextValue {\n getStyles: GetStylesApi<GridFactory>;\n grow: boolean | undefined;\n columns: number;\n breakpoints: GridBreakpoints | undefined;\n type: 'container' | 'media' | undefined;\n}\n\nexport const [GridProvider, useGridContext] = createSafeContext<GridContextValue>(\n 'Grid component was not found in tree'\n);\n"],"mappings":";;;AAaA,MAAa,CAAC,cAAc,kBAAkB,kBAC5C,uCACD"}
1
+ {"version":3,"file":"Grid.context.mjs","names":[],"sources":["../../../src/components/Grid/Grid.context.ts"],"sourcesContent":["import { createSafeContext, GetStylesApi, MantineSize } from '../../core';\nimport type { GridFactory } from './Grid';\n\nexport type GridBreakpoints = Record<MantineSize, string>;\n\nexport interface GridContextValue {\n getStyles: GetStylesApi<GridFactory>;\n grow: boolean | undefined;\n columns: number;\n breakpoints: GridBreakpoints | undefined;\n type: 'container' | 'media' | undefined;\n}\n\nexport const [GridProvider, useGridContext] = createSafeContext<GridContextValue>(\n 'Grid component was not found in tree'\n);\n"],"mappings":";;;AAaA,MAAa,CAAC,cAAc,kBAAkB,kBAC5C,sCACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.mjs","names":["classes"],"sources":["../../../src/components/Grid/Grid.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n MantineSpacing,\n StyleProp,\n StylesApiProps,\n useProps,\n useRandomClassName,\n useStyles,\n} from '../../core';\nimport { GridBreakpoints, GridProvider, type GridContextValue } from './Grid.context';\nimport { GridCol, type GridColProps } from './GridCol/GridCol';\nimport { GridVariables } from './GridVariables';\nimport classes from './Grid.module.css';\nexport type GridStylesNames = 'root' | 'col' | 'inner' | 'container';\nexport type GridCssVariables = {\n root: '--grid-justify' | '--grid-align' | '--grid-overflow';\n};\n\nexport interface GridProps extends BoxProps, StylesApiProps<GridFactory>, ElementProps<'div'> {\n /** Gap between columns and rows, key of `theme.spacing` or any valid CSS value @default 'md' */\n gap?: StyleProp<MantineSpacing>;\n\n /** Row gap, overrides `gap` for vertical spacing */\n rowGap?: StyleProp<MantineSpacing>;\n\n /** Column gap, overrides `gap` for horizontal spacing */\n columnGap?: StyleProp<MantineSpacing>;\n\n /** If set, columns in the last row expand to fill all available space @default false */\n grow?: boolean;\n\n /** Sets `justify-content` @default flex-start */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Sets `align-items` @default stretch */\n align?: React.CSSProperties['alignItems'];\n\n /** Number of columns in each row @default 12 */\n columns?: number;\n\n /** Sets `overflow` CSS property on the root element @default 'visible' */\n overflow?: React.CSSProperties['overflow'];\n\n /** Type of queries used for responsive styles @default 'media' */\n type?: 'media' | 'container';\n\n /** Breakpoints values, only used with `type=\"container\"` */\n breakpoints?: GridBreakpoints;\n}\n\nexport type GridFactory = Factory<{\n props: GridProps;\n ref: HTMLDivElement;\n stylesNames: GridStylesNames;\n vars: GridCssVariables;\n staticComponents: {\n Col: typeof GridCol;\n };\n}>;\n\nconst defaultProps = {\n gap: 'md',\n columns: 12,\n} satisfies Partial<GridProps>;\n\nconst varsResolver = createVarsResolver<GridFactory>((_, { justify, align, overflow }) => ({\n root: {\n '--grid-justify': justify,\n '--grid-align': align,\n '--grid-overflow': overflow,\n },\n}));\n\nexport const Grid = factory<GridFactory>((_props) => {\n const props = useProps('Grid', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n grow,\n gap,\n rowGap,\n columnGap,\n columns,\n align,\n justify,\n children,\n breakpoints,\n type,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<GridFactory>({\n name: 'Grid',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const responsiveClassName = useRandomClassName();\n\n if (type === 'container' && breakpoints) {\n return (\n <GridProvider value={{ getStyles, grow, columns, breakpoints, type }}>\n <GridVariables selector={`.${responsiveClassName}`} {...props} />\n <div {...getStyles('container')}>\n <Box {...getStyles('root', { className: responsiveClassName })} {...others}>\n <div {...getStyles('inner')}>{children}</div>\n </Box>\n </div>\n </GridProvider>\n );\n }\n\n return (\n <GridProvider value={{ getStyles, grow, columns, breakpoints, type }}>\n <GridVariables selector={`.${responsiveClassName}`} {...props} />\n <Box {...getStyles('root', { className: responsiveClassName })} {...others}>\n <div {...getStyles('inner')}>{children}</div>\n </Box>\n </GridProvider>\n );\n});\n\nGrid.classes = classes;\nGrid.varsResolver = varsResolver;\nGrid.displayName = '@mantine/core/Grid';\nGrid.Col = GridCol;\n\nexport namespace Grid {\n export type Props = GridProps;\n export type Factory = GridFactory;\n export type StylesNames = GridStylesNames;\n export type CssVariables = GridCssVariables;\n export type ColProps = GridColProps;\n export type ContextValue = GridContextValue;\n\n export namespace Col {\n export type Props = GridColProps;\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAiEA,MAAM,eAAe;CACnB,KAAK;CACL,SAAS;CACV;AAED,MAAM,eAAe,oBAAiC,GAAG,EAAE,SAAS,OAAO,gBAAgB,EACzF,MAAM;CACJ,kBAAkB;CAClB,gBAAgB;CAChB,mBAAmB;CACpB,EACF,EAAE;AAEH,MAAa,OAAO,SAAsB,WAAW;CACnD,MAAM,QAAQ,SAAS,QAAQ,cAAc,OAAO;CACpD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,MACA,KACA,QACA,WACA,SACA,OACA,SACA,UACA,aACA,MACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAuB;EACvC,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAAC;CAEF,MAAM,sBAAsB,oBAAoB;AAEhD,KAAI,SAAS,eAAe,YAC1B,QACE,qBAAC,cAAD;EAAc,OAAO;GAAE;GAAW;GAAM;GAAS;GAAa;GAAM;YAApE,CACE,oBAAC,eAAD;GAAe,UAAU,IAAI;GAAuB,GAAI;GAAS,CAAA,EACjE,oBAAC,OAAD;GAAK,GAAI,UAAU,YAAY;aAC7B,oBAAC,KAAD;IAAK,GAAI,UAAU,QAAQ,EAAE,WAAW,qBAAqB,CAAC;IAAE,GAAI;cAClE,oBAAC,OAAD;KAAK,GAAI,UAAU,QAAQ;KAAG;KAAe,CAAA;IACzC,CAAA;GACF,CAAA,CACO;;AAInB,QACE,qBAAC,cAAD;EAAc,OAAO;GAAE;GAAW;GAAM;GAAS;GAAa;GAAM;YAApE,CACE,oBAAC,eAAD;GAAe,UAAU,IAAI;GAAuB,GAAI;GAAS,CAAA,EACjE,oBAAC,KAAD;GAAK,GAAI,UAAU,QAAQ,EAAE,WAAW,qBAAqB,CAAC;GAAE,GAAI;aAClE,oBAAC,OAAD;IAAK,GAAI,UAAU,QAAQ;IAAG;IAAe,CAAA;GACzC,CAAA,CACO;;EAEjB;AAEF,KAAK,UAAUA;AACf,KAAK,eAAe;AACpB,KAAK,cAAc;AACnB,KAAK,MAAM"}
1
+ {"version":3,"file":"Grid.mjs","names":["classes"],"sources":["../../../src/components/Grid/Grid.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n MantineSpacing,\n StyleProp,\n StylesApiProps,\n useProps,\n useRandomClassName,\n useStyles,\n} from '../../core';\nimport { GridBreakpoints, GridProvider, type GridContextValue } from './Grid.context';\nimport { GridCol, type GridColProps } from './GridCol/GridCol';\nimport { GridVariables } from './GridVariables';\nimport classes from './Grid.module.css';\nexport type GridStylesNames = 'root' | 'col' | 'inner' | 'container';\nexport type GridCssVariables = {\n root: '--grid-justify' | '--grid-align' | '--grid-overflow';\n};\n\nexport interface GridProps extends BoxProps, StylesApiProps<GridFactory>, ElementProps<'div'> {\n /** Gap between columns and rows, key of `theme.spacing` or any valid CSS value @default 'md' */\n gap?: StyleProp<MantineSpacing>;\n\n /** Row gap, overrides `gap` for vertical spacing */\n rowGap?: StyleProp<MantineSpacing>;\n\n /** Column gap, overrides `gap` for horizontal spacing */\n columnGap?: StyleProp<MantineSpacing>;\n\n /** If set, columns in the last row expand to fill all available space @default false */\n grow?: boolean;\n\n /** Sets `justify-content` @default flex-start */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Sets `align-items` @default stretch */\n align?: React.CSSProperties['alignItems'];\n\n /** Number of columns in each row @default 12 */\n columns?: number;\n\n /** Sets `overflow` CSS property on the root element @default 'visible' */\n overflow?: React.CSSProperties['overflow'];\n\n /** Type of queries used for responsive styles @default 'media' */\n type?: 'media' | 'container';\n\n /** Breakpoints values, only used with `type=\"container\"` */\n breakpoints?: GridBreakpoints;\n}\n\nexport type GridFactory = Factory<{\n props: GridProps;\n ref: HTMLDivElement;\n stylesNames: GridStylesNames;\n vars: GridCssVariables;\n staticComponents: {\n Col: typeof GridCol;\n };\n}>;\n\nconst defaultProps = {\n gap: 'md',\n columns: 12,\n} satisfies Partial<GridProps>;\n\nconst varsResolver = createVarsResolver<GridFactory>((_, { justify, align, overflow }) => ({\n root: {\n '--grid-justify': justify,\n '--grid-align': align,\n '--grid-overflow': overflow,\n },\n}));\n\nexport const Grid = factory<GridFactory>((_props) => {\n const props = useProps('Grid', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n grow,\n gap,\n rowGap,\n columnGap,\n columns,\n align,\n justify,\n children,\n breakpoints,\n type,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<GridFactory>({\n name: 'Grid',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const responsiveClassName = useRandomClassName();\n\n if (type === 'container' && breakpoints) {\n return (\n <GridProvider value={{ getStyles, grow, columns, breakpoints, type }}>\n <GridVariables selector={`.${responsiveClassName}`} {...props} />\n <div {...getStyles('container')}>\n <Box {...getStyles('root', { className: responsiveClassName })} {...others}>\n <div {...getStyles('inner')}>{children}</div>\n </Box>\n </div>\n </GridProvider>\n );\n }\n\n return (\n <GridProvider value={{ getStyles, grow, columns, breakpoints, type }}>\n <GridVariables selector={`.${responsiveClassName}`} {...props} />\n <Box {...getStyles('root', { className: responsiveClassName })} {...others}>\n <div {...getStyles('inner')}>{children}</div>\n </Box>\n </GridProvider>\n );\n});\n\nGrid.classes = classes;\nGrid.varsResolver = varsResolver;\nGrid.displayName = '@mantine/core/Grid';\nGrid.Col = GridCol;\n\nexport namespace Grid {\n export type Props = GridProps;\n export type Factory = GridFactory;\n export type StylesNames = GridStylesNames;\n export type CssVariables = GridCssVariables;\n export type ColProps = GridColProps;\n export type ContextValue = GridContextValue;\n\n export namespace Col {\n export type Props = GridColProps;\n }\n}\n"],"mappings":";;;;;;;;;;;;;AAiEA,MAAM,eAAe;CACnB,KAAK;CACL,SAAS;AACX;AAEA,MAAM,eAAe,oBAAiC,GAAG,EAAE,SAAS,OAAO,gBAAgB,EACzF,MAAM;CACJ,kBAAkB;CAClB,gBAAgB;CAChB,mBAAmB;AACrB,EACF,EAAE;AAEF,MAAa,OAAO,SAAsB,WAAW;CACnD,MAAM,QAAQ,SAAS,QAAQ,cAAc,MAAM;CACnD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,MACA,KACA,QACA,WACA,SACA,OACA,SACA,UACA,aACA,MACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAuB;EACvC,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,sBAAsB,mBAAmB;CAE/C,IAAI,SAAS,eAAe,aAC1B,OACE,qBAAC,cAAD;EAAc,OAAO;GAAE;GAAW;GAAM;GAAS;GAAa;EAAK;YAAnE,CACE,oBAAC,eAAD;GAAe,UAAU,IAAI;GAAuB,GAAI;EAAQ,CAAA,GAChE,oBAAC,OAAD;GAAK,GAAI,UAAU,WAAW;aAC5B,oBAAC,KAAD;IAAK,GAAI,UAAU,QAAQ,EAAE,WAAW,oBAAoB,CAAC;IAAG,GAAI;cAClE,oBAAC,OAAD;KAAK,GAAI,UAAU,OAAO;KAAI;IAAc,CAAA;GACzC,CAAA;EACF,CAAA,CACO;;CAIlB,OACE,qBAAC,cAAD;EAAc,OAAO;GAAE;GAAW;GAAM;GAAS;GAAa;EAAK;YAAnE,CACE,oBAAC,eAAD;GAAe,UAAU,IAAI;GAAuB,GAAI;EAAQ,CAAA,GAChE,oBAAC,KAAD;GAAK,GAAI,UAAU,QAAQ,EAAE,WAAW,oBAAoB,CAAC;GAAG,GAAI;aAClE,oBAAC,OAAD;IAAK,GAAI,UAAU,OAAO;IAAI;GAAc,CAAA;EACzC,CAAA,CACO;;AAElB,CAAC;AAED,KAAK,UAAUA;AACf,KAAK,eAAe;AACpB,KAAK,cAAc;AACnB,KAAK,MAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridCol.mjs","names":["classes"],"sources":["../../../../src/components/Grid/GridCol/GridCol.tsx"],"sourcesContent":["import cx from 'clsx';\nimport {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n StyleProp,\n useProps,\n useRandomClassName,\n} from '../../../core';\nimport { useGridContext } from '../Grid.context';\nimport { GridColVariables } from './GridColVariables';\nimport classes from '../Grid.module.css';\n\nexport type GridColStylesNames = 'col';\nexport type ColSpan = number | 'auto' | 'content';\n\nexport interface GridColProps\n extends BoxProps, CompoundStylesApiProps<GridColFactory>, ElementProps<'div'> {\n /** Column span @default 12 */\n span?: StyleProp<ColSpan>;\n\n /** Column order, use to reorder columns at different viewport sizes */\n order?: StyleProp<number>;\n\n /** Column start offset – number of empty columns before this column */\n offset?: StyleProp<number>;\n\n /** Vertical alignment of the column, controls `align-self` CSS property */\n align?: StyleProp<React.CSSProperties['alignSelf']>;\n}\n\nexport type GridColFactory = Factory<{\n props: GridColProps;\n ref: HTMLDivElement;\n stylesNames: GridColStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n span: 12,\n} satisfies Partial<GridColProps>;\n\nexport const GridCol = factory<GridColFactory>((_props) => {\n const props = useProps('GridCol', defaultProps, _props);\n const { classNames, className, style, styles, vars, span, order, offset, align, ...others } =\n props;\n const ctx = useGridContext();\n const responsiveClassName = useRandomClassName();\n return (\n <>\n <GridColVariables\n selector={`.${responsiveClassName}`}\n span={span}\n order={order}\n offset={offset}\n align={align}\n />\n\n <Box\n {...ctx.getStyles('col', {\n className: cx(className, responsiveClassName),\n style,\n classNames,\n styles,\n })}\n {...others}\n />\n </>\n );\n});\n\nGridCol.classes = classes;\nGridCol.displayName = '@mantine/core/GridCol';\n"],"mappings":";;;;;;;;;;;AAyCA,MAAM,eAAe,EACnB,MAAM,IACP;AAED,MAAa,UAAU,SAAyB,WAAW;CAEzD,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,MAAM,OAAO,QAAQ,OAAO,GAAG,WADrE,SAAS,WAAW,cAAc,OAAO;CAGvD,MAAM,MAAM,gBAAgB;CAC5B,MAAM,sBAAsB,oBAAoB;AAChD,QACE,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,kBAAD;EACE,UAAU,IAAI;EACR;EACC;EACC;EACD;EACP,CAAA,EAEF,oBAAC,KAAD;EACE,GAAI,IAAI,UAAU,OAAO;GACvB,WAAW,GAAG,WAAW,oBAAoB;GAC7C;GACA;GACA;GACD,CAAC;EACF,GAAI;EACJ,CAAA,CACD,EAAA,CAAA;EAEL;AAEF,QAAQ,UAAUA;AAClB,QAAQ,cAAc"}
1
+ {"version":3,"file":"GridCol.mjs","names":["classes"],"sources":["../../../../src/components/Grid/GridCol/GridCol.tsx"],"sourcesContent":["import cx from 'clsx';\nimport {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n StyleProp,\n useProps,\n useRandomClassName,\n} from '../../../core';\nimport { useGridContext } from '../Grid.context';\nimport { GridColVariables } from './GridColVariables';\nimport classes from '../Grid.module.css';\n\nexport type GridColStylesNames = 'col';\nexport type ColSpan = number | 'auto' | 'content';\n\nexport interface GridColProps\n extends BoxProps, CompoundStylesApiProps<GridColFactory>, ElementProps<'div'> {\n /** Column span @default 12 */\n span?: StyleProp<ColSpan>;\n\n /** Column order, use to reorder columns at different viewport sizes */\n order?: StyleProp<number>;\n\n /** Column start offset – number of empty columns before this column */\n offset?: StyleProp<number>;\n\n /** Vertical alignment of the column, controls `align-self` CSS property */\n align?: StyleProp<React.CSSProperties['alignSelf']>;\n}\n\nexport type GridColFactory = Factory<{\n props: GridColProps;\n ref: HTMLDivElement;\n stylesNames: GridColStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n span: 12,\n} satisfies Partial<GridColProps>;\n\nexport const GridCol = factory<GridColFactory>((_props) => {\n const props = useProps('GridCol', defaultProps, _props);\n const { classNames, className, style, styles, vars, span, order, offset, align, ...others } =\n props;\n const ctx = useGridContext();\n const responsiveClassName = useRandomClassName();\n return (\n <>\n <GridColVariables\n selector={`.${responsiveClassName}`}\n span={span}\n order={order}\n offset={offset}\n align={align}\n />\n\n <Box\n {...ctx.getStyles('col', {\n className: cx(className, responsiveClassName),\n style,\n classNames,\n styles,\n })}\n {...others}\n />\n </>\n );\n});\n\nGridCol.classes = classes;\nGridCol.displayName = '@mantine/core/GridCol';\n"],"mappings":";;;;;;;;;;;AAyCA,MAAM,eAAe,EACnB,MAAM,GACR;AAEA,MAAa,UAAU,SAAyB,WAAW;CAEzD,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,MAAM,OAAO,QAAQ,OAAO,GAAG,WADrE,SAAS,WAAW,cAAc,MAE1C;CACN,MAAM,MAAM,eAAe;CAC3B,MAAM,sBAAsB,mBAAmB;CAC/C,OACE,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,kBAAD;EACE,UAAU,IAAI;EACR;EACC;EACC;EACD;CACR,CAAA,GAED,oBAAC,KAAD;EACE,GAAI,IAAI,UAAU,OAAO;GACvB,WAAW,GAAG,WAAW,mBAAmB;GAC5C;GACA;GACA;EACF,CAAC;EACD,GAAI;CACL,CAAA,CACD,EAAA,CAAA;AAEN,CAAC;AAED,QAAQ,UAAUA;AAClB,QAAQ,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridColVariables.mjs","names":[],"sources":["../../../../src/components/Grid/GridCol/GridColVariables.tsx"],"sourcesContent":["import {\n filterProps,\n getBaseValue,\n getSortedBreakpoints,\n InlineStyles,\n keys,\n useMantineTheme,\n} from '../../../core';\nimport { GridBreakpoints, useGridContext } from '../Grid.context';\nimport type { ColSpan, GridColProps } from './GridCol';\n\ninterface GridColVariablesProps {\n selector: string;\n span: GridColProps['span'] | undefined;\n order?: GridColProps['order'] | undefined;\n offset?: GridColProps['offset'] | undefined;\n align?: GridColProps['align'] | undefined;\n}\n\nconst getColumnFlexBasis = (colSpan: ColSpan | undefined, columns: number) => {\n if (colSpan === 'content') {\n return 'auto';\n }\n\n if (colSpan === 'auto') {\n return '0rem';\n }\n\n if (!colSpan) {\n return undefined;\n }\n\n if (colSpan === columns) {\n return '100%';\n }\n\n const percentage = (100 * colSpan) / columns;\n const gapFactor = (columns - colSpan) / columns;\n return `calc(${percentage}% - ${gapFactor} * var(--grid-column-gap))`;\n};\n\nconst getColumnMaxWidth = (\n colSpan: ColSpan | undefined,\n columns: number,\n grow: boolean | undefined\n) => {\n if (grow || colSpan === 'auto') {\n return '100%';\n }\n\n if (colSpan === 'content') {\n return 'unset';\n }\n\n return getColumnFlexBasis(colSpan, columns);\n};\n\nconst getColumnFlexGrow = (colSpan: ColSpan | undefined, grow: boolean | undefined) => {\n if (!colSpan) {\n return undefined;\n }\n\n return colSpan === 'auto' || grow ? '1' : 'auto';\n};\n\nconst getColumnOffset = (offset: number | undefined, columns: number) => {\n if (offset === 0) {\n return '0';\n }\n\n if (!offset) {\n return undefined;\n }\n\n const percentage = (100 * offset) / columns;\n const gapFactor = offset / columns;\n return `calc(${percentage}% + ${gapFactor} * var(--grid-column-gap))`;\n};\n\nexport function GridColVariables({ span, order, offset, align, selector }: GridColVariablesProps) {\n const theme = useMantineTheme();\n const ctx = useGridContext();\n const _breakpoints = ctx.breakpoints || theme.breakpoints;\n\n const baseValue = getBaseValue(span);\n const baseSpan = baseValue === undefined ? 12 : baseValue;\n\n const baseStyles: Record<string, string | undefined> = filterProps({\n '--col-order': getBaseValue(order)?.toString(),\n '--col-flex-grow': getColumnFlexGrow(baseSpan, ctx.grow),\n '--col-flex-basis': getColumnFlexBasis(baseSpan, ctx.columns),\n '--col-width': baseSpan === 'content' ? 'auto' : undefined,\n '--col-max-width': getColumnMaxWidth(baseSpan, ctx.columns, ctx.grow),\n '--col-offset': getColumnOffset(getBaseValue(offset), ctx.columns),\n '--col-align-self': getBaseValue(align),\n });\n\n const queries = keys(_breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof order === 'object' && order[breakpoint] !== undefined) {\n acc[breakpoint]['--col-order'] = order[breakpoint]?.toString();\n }\n\n if (typeof span === 'object' && span[breakpoint] !== undefined) {\n acc[breakpoint]['--col-flex-grow'] = getColumnFlexGrow(span[breakpoint], ctx.grow);\n acc[breakpoint]['--col-flex-basis'] = getColumnFlexBasis(span[breakpoint], ctx.columns);\n acc[breakpoint]['--col-width'] = span[breakpoint] === 'content' ? 'auto' : undefined;\n acc[breakpoint]['--col-max-width'] = getColumnMaxWidth(\n span[breakpoint],\n ctx.columns,\n ctx.grow\n );\n }\n\n if (typeof offset === 'object' && offset[breakpoint] !== undefined) {\n acc[breakpoint]['--col-offset'] = getColumnOffset(offset[breakpoint], ctx.columns);\n }\n\n if (typeof align === 'object' && align[breakpoint] !== undefined) {\n acc[breakpoint]['--col-align-self'] = align[breakpoint];\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), _breakpoints).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const values = sortedBreakpoints.map((breakpoint) => ({\n query:\n ctx.type === 'container'\n ? `mantine-grid (min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`\n : `(min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`,\n styles: queries[breakpoint.value],\n }));\n\n return (\n <InlineStyles\n styles={baseStyles}\n media={ctx.type === 'container' ? undefined : values}\n container={ctx.type === 'container' ? values : undefined}\n selector={selector}\n />\n );\n}\n"],"mappings":";;;;;;;;;;AAmBA,MAAM,sBAAsB,SAA8B,YAAoB;AAC5E,KAAI,YAAY,UACd,QAAO;AAGT,KAAI,YAAY,OACd,QAAO;AAGT,KAAI,CAAC,QACH;AAGF,KAAI,YAAY,QACd,QAAO;AAKT,QAAO,QAFa,MAAM,UAAW,QAEX,OADP,UAAU,WAAW,QACE;;AAG5C,MAAM,qBACJ,SACA,SACA,SACG;AACH,KAAI,QAAQ,YAAY,OACtB,QAAO;AAGT,KAAI,YAAY,UACd,QAAO;AAGT,QAAO,mBAAmB,SAAS,QAAQ;;AAG7C,MAAM,qBAAqB,SAA8B,SAA8B;AACrF,KAAI,CAAC,QACH;AAGF,QAAO,YAAY,UAAU,OAAO,MAAM;;AAG5C,MAAM,mBAAmB,QAA4B,YAAoB;AACvE,KAAI,WAAW,EACb,QAAO;AAGT,KAAI,CAAC,OACH;AAKF,QAAO,QAFa,MAAM,SAAU,QAEV,MADR,SAAS,QACe;;AAG5C,SAAgB,iBAAiB,EAAE,MAAM,OAAO,QAAQ,OAAO,YAAmC;CAChG,MAAM,QAAQ,iBAAiB;CAC/B,MAAM,MAAM,gBAAgB;CAC5B,MAAM,eAAe,IAAI,eAAe,MAAM;CAE9C,MAAM,YAAY,aAAa,KAAK;CACpC,MAAM,WAAW,cAAc,KAAA,IAAY,KAAK;CAEhD,MAAM,aAAiD,YAAY;EACjE,eAAe,aAAa,MAAM,EAAE,UAAU;EAC9C,mBAAmB,kBAAkB,UAAU,IAAI,KAAK;EACxD,oBAAoB,mBAAmB,UAAU,IAAI,QAAQ;EAC7D,eAAe,aAAa,YAAY,SAAS,KAAA;EACjD,mBAAmB,kBAAkB,UAAU,IAAI,SAAS,IAAI,KAAK;EACrE,gBAAgB,gBAAgB,aAAa,OAAO,EAAE,IAAI,QAAQ;EAClE,oBAAoB,aAAa,MAAM;EACxC,CAAC;CAEF,MAAM,UAAU,KAAK,aAAa,CAAC,QAChC,KAAK,eAAe;AACnB,MAAI,CAAC,IAAI,YACP,KAAI,cAAc,EAAE;AAGtB,MAAI,OAAO,UAAU,YAAY,MAAM,gBAAgB,KAAA,EACrD,KAAI,YAAY,iBAAiB,MAAM,aAAa,UAAU;AAGhE,MAAI,OAAO,SAAS,YAAY,KAAK,gBAAgB,KAAA,GAAW;AAC9D,OAAI,YAAY,qBAAqB,kBAAkB,KAAK,aAAa,IAAI,KAAK;AAClF,OAAI,YAAY,sBAAsB,mBAAmB,KAAK,aAAa,IAAI,QAAQ;AACvF,OAAI,YAAY,iBAAiB,KAAK,gBAAgB,YAAY,SAAS,KAAA;AAC3E,OAAI,YAAY,qBAAqB,kBACnC,KAAK,aACL,IAAI,SACJ,IAAI,KACL;;AAGH,MAAI,OAAO,WAAW,YAAY,OAAO,gBAAgB,KAAA,EACvD,KAAI,YAAY,kBAAkB,gBAAgB,OAAO,aAAa,IAAI,QAAQ;AAGpF,MAAI,OAAO,UAAU,YAAY,MAAM,gBAAgB,KAAA,EACrD,KAAI,YAAY,sBAAsB,MAAM;AAG9C,SAAO;IAET,EAAE,CACH;CAMD,MAAM,SAJoB,qBAAqB,KAAK,QAAQ,EAAE,aAAa,CAAC,QACzE,eAAe,KAAK,QAAQ,WAAW,OAAO,CAAC,SAAS,EAC1D,CAEgC,KAAK,gBAAgB;EACpD,OACE,IAAI,SAAS,cACT,4BAA4B,aAAa,WAAW,OAAgC,KACpF,eAAe,aAAa,WAAW,OAAgC;EAC7E,QAAQ,QAAQ,WAAW;EAC5B,EAAE;AAEH,QACE,oBAAC,cAAD;EACE,QAAQ;EACR,OAAO,IAAI,SAAS,cAAc,KAAA,IAAY;EAC9C,WAAW,IAAI,SAAS,cAAc,SAAS,KAAA;EACrC;EACV,CAAA"}
1
+ {"version":3,"file":"GridColVariables.mjs","names":[],"sources":["../../../../src/components/Grid/GridCol/GridColVariables.tsx"],"sourcesContent":["import {\n filterProps,\n getBaseValue,\n getSortedBreakpoints,\n InlineStyles,\n keys,\n useMantineTheme,\n} from '../../../core';\nimport { GridBreakpoints, useGridContext } from '../Grid.context';\nimport type { ColSpan, GridColProps } from './GridCol';\n\ninterface GridColVariablesProps {\n selector: string;\n span: GridColProps['span'] | undefined;\n order?: GridColProps['order'] | undefined;\n offset?: GridColProps['offset'] | undefined;\n align?: GridColProps['align'] | undefined;\n}\n\nconst getColumnFlexBasis = (colSpan: ColSpan | undefined, columns: number) => {\n if (colSpan === 'content') {\n return 'auto';\n }\n\n if (colSpan === 'auto') {\n return '0rem';\n }\n\n if (!colSpan) {\n return undefined;\n }\n\n if (colSpan === columns) {\n return '100%';\n }\n\n const percentage = (100 * colSpan) / columns;\n const gapFactor = (columns - colSpan) / columns;\n return `calc(${percentage}% - ${gapFactor} * var(--grid-column-gap))`;\n};\n\nconst getColumnMaxWidth = (\n colSpan: ColSpan | undefined,\n columns: number,\n grow: boolean | undefined\n) => {\n if (grow || colSpan === 'auto') {\n return '100%';\n }\n\n if (colSpan === 'content') {\n return 'unset';\n }\n\n return getColumnFlexBasis(colSpan, columns);\n};\n\nconst getColumnFlexGrow = (colSpan: ColSpan | undefined, grow: boolean | undefined) => {\n if (!colSpan) {\n return undefined;\n }\n\n return colSpan === 'auto' || grow ? '1' : 'auto';\n};\n\nconst getColumnOffset = (offset: number | undefined, columns: number) => {\n if (offset === 0) {\n return '0';\n }\n\n if (!offset) {\n return undefined;\n }\n\n const percentage = (100 * offset) / columns;\n const gapFactor = offset / columns;\n return `calc(${percentage}% + ${gapFactor} * var(--grid-column-gap))`;\n};\n\nexport function GridColVariables({ span, order, offset, align, selector }: GridColVariablesProps) {\n const theme = useMantineTheme();\n const ctx = useGridContext();\n const _breakpoints = ctx.breakpoints || theme.breakpoints;\n\n const baseValue = getBaseValue(span);\n const baseSpan = baseValue === undefined ? 12 : baseValue;\n\n const baseStyles: Record<string, string | undefined> = filterProps({\n '--col-order': getBaseValue(order)?.toString(),\n '--col-flex-grow': getColumnFlexGrow(baseSpan, ctx.grow),\n '--col-flex-basis': getColumnFlexBasis(baseSpan, ctx.columns),\n '--col-width': baseSpan === 'content' ? 'auto' : undefined,\n '--col-max-width': getColumnMaxWidth(baseSpan, ctx.columns, ctx.grow),\n '--col-offset': getColumnOffset(getBaseValue(offset), ctx.columns),\n '--col-align-self': getBaseValue(align),\n });\n\n const queries = keys(_breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof order === 'object' && order[breakpoint] !== undefined) {\n acc[breakpoint]['--col-order'] = order[breakpoint]?.toString();\n }\n\n if (typeof span === 'object' && span[breakpoint] !== undefined) {\n acc[breakpoint]['--col-flex-grow'] = getColumnFlexGrow(span[breakpoint], ctx.grow);\n acc[breakpoint]['--col-flex-basis'] = getColumnFlexBasis(span[breakpoint], ctx.columns);\n acc[breakpoint]['--col-width'] = span[breakpoint] === 'content' ? 'auto' : undefined;\n acc[breakpoint]['--col-max-width'] = getColumnMaxWidth(\n span[breakpoint],\n ctx.columns,\n ctx.grow\n );\n }\n\n if (typeof offset === 'object' && offset[breakpoint] !== undefined) {\n acc[breakpoint]['--col-offset'] = getColumnOffset(offset[breakpoint], ctx.columns);\n }\n\n if (typeof align === 'object' && align[breakpoint] !== undefined) {\n acc[breakpoint]['--col-align-self'] = align[breakpoint];\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), _breakpoints).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const values = sortedBreakpoints.map((breakpoint) => ({\n query:\n ctx.type === 'container'\n ? `mantine-grid (min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`\n : `(min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`,\n styles: queries[breakpoint.value],\n }));\n\n return (\n <InlineStyles\n styles={baseStyles}\n media={ctx.type === 'container' ? undefined : values}\n container={ctx.type === 'container' ? values : undefined}\n selector={selector}\n />\n );\n}\n"],"mappings":";;;;;;;;;;AAmBA,MAAM,sBAAsB,SAA8B,YAAoB;CAC5E,IAAI,YAAY,WACd,OAAO;CAGT,IAAI,YAAY,QACd,OAAO;CAGT,IAAI,CAAC,SACH;CAGF,IAAI,YAAY,SACd,OAAO;CAKT,OAAO,QAFa,MAAM,UAAW,QAEX,OADP,UAAU,WAAW,QACE;AAC5C;AAEA,MAAM,qBACJ,SACA,SACA,SACG;CACH,IAAI,QAAQ,YAAY,QACtB,OAAO;CAGT,IAAI,YAAY,WACd,OAAO;CAGT,OAAO,mBAAmB,SAAS,OAAO;AAC5C;AAEA,MAAM,qBAAqB,SAA8B,SAA8B;CACrF,IAAI,CAAC,SACH;CAGF,OAAO,YAAY,UAAU,OAAO,MAAM;AAC5C;AAEA,MAAM,mBAAmB,QAA4B,YAAoB;CACvE,IAAI,WAAW,GACb,OAAO;CAGT,IAAI,CAAC,QACH;CAKF,OAAO,QAFa,MAAM,SAAU,QAEV,MADR,SAAS,QACe;AAC5C;AAEA,SAAgB,iBAAiB,EAAE,MAAM,OAAO,QAAQ,OAAO,YAAmC;CAChG,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,MAAM,eAAe;CAC3B,MAAM,eAAe,IAAI,eAAe,MAAM;CAE9C,MAAM,YAAY,aAAa,IAAI;CACnC,MAAM,WAAW,cAAc,KAAA,IAAY,KAAK;CAEhD,MAAM,aAAiD,YAAY;EACjE,eAAe,aAAa,KAAK,GAAG,SAAS;EAC7C,mBAAmB,kBAAkB,UAAU,IAAI,IAAI;EACvD,oBAAoB,mBAAmB,UAAU,IAAI,OAAO;EAC5D,eAAe,aAAa,YAAY,SAAS,KAAA;EACjD,mBAAmB,kBAAkB,UAAU,IAAI,SAAS,IAAI,IAAI;EACpE,gBAAgB,gBAAgB,aAAa,MAAM,GAAG,IAAI,OAAO;EACjE,oBAAoB,aAAa,KAAK;CACxC,CAAC;CAED,MAAM,UAAU,KAAK,YAAY,EAAE,QAChC,KAAK,eAAe;EACnB,IAAI,CAAC,IAAI,aACP,IAAI,cAAc,CAAC;EAGrB,IAAI,OAAO,UAAU,YAAY,MAAM,gBAAgB,KAAA,GACrD,IAAI,YAAY,iBAAiB,MAAM,aAAa,SAAS;EAG/D,IAAI,OAAO,SAAS,YAAY,KAAK,gBAAgB,KAAA,GAAW;GAC9D,IAAI,YAAY,qBAAqB,kBAAkB,KAAK,aAAa,IAAI,IAAI;GACjF,IAAI,YAAY,sBAAsB,mBAAmB,KAAK,aAAa,IAAI,OAAO;GACtF,IAAI,YAAY,iBAAiB,KAAK,gBAAgB,YAAY,SAAS,KAAA;GAC3E,IAAI,YAAY,qBAAqB,kBACnC,KAAK,aACL,IAAI,SACJ,IAAI,IACN;EACF;EAEA,IAAI,OAAO,WAAW,YAAY,OAAO,gBAAgB,KAAA,GACvD,IAAI,YAAY,kBAAkB,gBAAgB,OAAO,aAAa,IAAI,OAAO;EAGnF,IAAI,OAAO,UAAU,YAAY,MAAM,gBAAgB,KAAA,GACrD,IAAI,YAAY,sBAAsB,MAAM;EAG9C,OAAO;CACT,GACA,CAAC,CACH;CAMA,MAAM,SAJoB,qBAAqB,KAAK,OAAO,GAAG,YAAY,EAAE,QACzE,eAAe,KAAK,QAAQ,WAAW,MAAM,EAAE,SAAS,CAG5B,EAAE,KAAK,gBAAgB;EACpD,OACE,IAAI,SAAS,cACT,4BAA4B,aAAa,WAAW,OAAgC,KACpF,eAAe,aAAa,WAAW,OAAgC;EAC7E,QAAQ,QAAQ,WAAW;CAC7B,EAAE;CAEF,OACE,oBAAC,cAAD;EACE,QAAQ;EACR,OAAO,IAAI,SAAS,cAAc,KAAA,IAAY;EAC9C,WAAW,IAAI,SAAS,cAAc,SAAS,KAAA;EACrC;CACX,CAAA;AAEL"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridVariables.mjs","names":[],"sources":["../../../src/components/Grid/GridVariables.tsx"],"sourcesContent":["import {\n filterProps,\n getBaseValue,\n getSortedBreakpoints,\n getSpacing,\n InlineStyles,\n keys,\n useMantineTheme,\n} from '../../core';\nimport type { GridProps } from './Grid';\nimport type { GridBreakpoints } from './Grid.context';\n\ninterface GridVariablesProps extends GridProps {\n selector: string;\n}\n\nexport function GridVariables({\n gap,\n rowGap,\n columnGap,\n selector,\n breakpoints,\n type,\n}: GridVariablesProps) {\n const theme = useMantineTheme();\n const _breakpoints = breakpoints || theme.breakpoints;\n\n const baseStyles: Record<string, string | undefined> = filterProps({\n '--grid-gap': getSpacing(getBaseValue(gap)),\n '--grid-row-gap': getSpacing(getBaseValue(rowGap)),\n '--grid-column-gap': getSpacing(getBaseValue(columnGap)),\n });\n\n const queries = keys(_breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof gap === 'object' && gap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-gap'] = getSpacing(gap[breakpoint]);\n }\n\n if (typeof rowGap === 'object' && rowGap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-row-gap'] = getSpacing(rowGap[breakpoint]);\n }\n\n if (typeof columnGap === 'object' && columnGap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-column-gap'] = getSpacing(columnGap[breakpoint]);\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), _breakpoints).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const values = sortedBreakpoints.map((breakpoint) => ({\n query:\n type === 'container'\n ? `mantine-grid (min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`\n : `(min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`,\n styles: queries[breakpoint.value],\n }));\n\n return (\n <InlineStyles\n styles={baseStyles}\n media={type === 'container' ? undefined : values}\n container={type === 'container' ? values : undefined}\n selector={selector}\n />\n );\n}\n"],"mappings":";;;;;;;;;;AAgBA,SAAgB,cAAc,EAC5B,KACA,QACA,WACA,UACA,aACA,QACqB;CACrB,MAAM,QAAQ,iBAAiB;CAC/B,MAAM,eAAe,eAAe,MAAM;CAE1C,MAAM,aAAiD,YAAY;EACjE,cAAc,WAAW,aAAa,IAAI,CAAC;EAC3C,kBAAkB,WAAW,aAAa,OAAO,CAAC;EAClD,qBAAqB,WAAW,aAAa,UAAU,CAAC;EACzD,CAAC;CAEF,MAAM,UAAU,KAAK,aAAa,CAAC,QAChC,KAAK,eAAe;AACnB,MAAI,CAAC,IAAI,YACP,KAAI,cAAc,EAAE;AAGtB,MAAI,OAAO,QAAQ,YAAY,IAAI,gBAAgB,KAAA,EACjD,KAAI,YAAY,gBAAgB,WAAW,IAAI,YAAY;AAG7D,MAAI,OAAO,WAAW,YAAY,OAAO,gBAAgB,KAAA,EACvD,KAAI,YAAY,oBAAoB,WAAW,OAAO,YAAY;AAGpE,MAAI,OAAO,cAAc,YAAY,UAAU,gBAAgB,KAAA,EAC7D,KAAI,YAAY,uBAAuB,WAAW,UAAU,YAAY;AAG1E,SAAO;IAET,EAAE,CACH;CAMD,MAAM,SAJoB,qBAAqB,KAAK,QAAQ,EAAE,aAAa,CAAC,QACzE,eAAe,KAAK,QAAQ,WAAW,OAAO,CAAC,SAAS,EAC1D,CAEgC,KAAK,gBAAgB;EACpD,OACE,SAAS,cACL,4BAA4B,aAAa,WAAW,OAAgC,KACpF,eAAe,aAAa,WAAW,OAAgC;EAC7E,QAAQ,QAAQ,WAAW;EAC5B,EAAE;AAEH,QACE,oBAAC,cAAD;EACE,QAAQ;EACR,OAAO,SAAS,cAAc,KAAA,IAAY;EAC1C,WAAW,SAAS,cAAc,SAAS,KAAA;EACjC;EACV,CAAA"}
1
+ {"version":3,"file":"GridVariables.mjs","names":[],"sources":["../../../src/components/Grid/GridVariables.tsx"],"sourcesContent":["import {\n filterProps,\n getBaseValue,\n getSortedBreakpoints,\n getSpacing,\n InlineStyles,\n keys,\n useMantineTheme,\n} from '../../core';\nimport type { GridProps } from './Grid';\nimport type { GridBreakpoints } from './Grid.context';\n\ninterface GridVariablesProps extends GridProps {\n selector: string;\n}\n\nexport function GridVariables({\n gap,\n rowGap,\n columnGap,\n selector,\n breakpoints,\n type,\n}: GridVariablesProps) {\n const theme = useMantineTheme();\n const _breakpoints = breakpoints || theme.breakpoints;\n\n const baseStyles: Record<string, string | undefined> = filterProps({\n '--grid-gap': getSpacing(getBaseValue(gap)),\n '--grid-row-gap': getSpacing(getBaseValue(rowGap)),\n '--grid-column-gap': getSpacing(getBaseValue(columnGap)),\n });\n\n const queries = keys(_breakpoints).reduce<Record<string, Record<string, any>>>(\n (acc, breakpoint) => {\n if (!acc[breakpoint]) {\n acc[breakpoint] = {};\n }\n\n if (typeof gap === 'object' && gap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-gap'] = getSpacing(gap[breakpoint]);\n }\n\n if (typeof rowGap === 'object' && rowGap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-row-gap'] = getSpacing(rowGap[breakpoint]);\n }\n\n if (typeof columnGap === 'object' && columnGap[breakpoint] !== undefined) {\n acc[breakpoint]['--grid-column-gap'] = getSpacing(columnGap[breakpoint]);\n }\n\n return acc;\n },\n {}\n );\n\n const sortedBreakpoints = getSortedBreakpoints(keys(queries), _breakpoints).filter(\n (breakpoint) => keys(queries[breakpoint.value]).length > 0\n );\n\n const values = sortedBreakpoints.map((breakpoint) => ({\n query:\n type === 'container'\n ? `mantine-grid (min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`\n : `(min-width: ${_breakpoints[breakpoint.value as keyof GridBreakpoints]})`,\n styles: queries[breakpoint.value],\n }));\n\n return (\n <InlineStyles\n styles={baseStyles}\n media={type === 'container' ? undefined : values}\n container={type === 'container' ? values : undefined}\n selector={selector}\n />\n );\n}\n"],"mappings":";;;;;;;;;;AAgBA,SAAgB,cAAc,EAC5B,KACA,QACA,WACA,UACA,aACA,QACqB;CACrB,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,eAAe,eAAe,MAAM;CAE1C,MAAM,aAAiD,YAAY;EACjE,cAAc,WAAW,aAAa,GAAG,CAAC;EAC1C,kBAAkB,WAAW,aAAa,MAAM,CAAC;EACjD,qBAAqB,WAAW,aAAa,SAAS,CAAC;CACzD,CAAC;CAED,MAAM,UAAU,KAAK,YAAY,EAAE,QAChC,KAAK,eAAe;EACnB,IAAI,CAAC,IAAI,aACP,IAAI,cAAc,CAAC;EAGrB,IAAI,OAAO,QAAQ,YAAY,IAAI,gBAAgB,KAAA,GACjD,IAAI,YAAY,gBAAgB,WAAW,IAAI,WAAW;EAG5D,IAAI,OAAO,WAAW,YAAY,OAAO,gBAAgB,KAAA,GACvD,IAAI,YAAY,oBAAoB,WAAW,OAAO,WAAW;EAGnE,IAAI,OAAO,cAAc,YAAY,UAAU,gBAAgB,KAAA,GAC7D,IAAI,YAAY,uBAAuB,WAAW,UAAU,WAAW;EAGzE,OAAO;CACT,GACA,CAAC,CACH;CAMA,MAAM,SAJoB,qBAAqB,KAAK,OAAO,GAAG,YAAY,EAAE,QACzE,eAAe,KAAK,QAAQ,WAAW,MAAM,EAAE,SAAS,CAG5B,EAAE,KAAK,gBAAgB;EACpD,OACE,SAAS,cACL,4BAA4B,aAAa,WAAW,OAAgC,KACpF,eAAe,aAAa,WAAW,OAAgC;EAC7E,QAAQ,QAAQ,WAAW;CAC7B,EAAE;CAEF,OACE,oBAAC,cAAD;EACE,QAAQ;EACR,OAAO,SAAS,cAAc,KAAA,IAAY;EAC1C,WAAW,SAAS,cAAc,SAAS,KAAA;EACjC;CACX,CAAA;AAEL"}
@@ -1 +1 @@
1
- {"version":3,"file":"Group.mjs","names":["classes"],"sources":["../../../src/components/Group/Group.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getSpacing,\n MantineSpacing,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { filterFalsyChildren } from './filter-falsy-children/filter-falsy-children';\nimport classes from './Group.module.css';\n\nexport type GroupStylesNames = 'root';\nexport type GroupCssVariables = {\n root:\n | '--group-gap'\n | '--group-align'\n | '--group-justify'\n | '--group-wrap'\n | '--group-child-width';\n};\n\nexport interface GroupStylesCtx {\n childWidth: string;\n}\n\nexport interface GroupProps extends BoxProps, StylesApiProps<GroupFactory>, ElementProps<'div'> {\n __size?: any;\n\n /** Controls `justify-content` CSS property @default 'flex-start' */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Controls `align-items` CSS property @default 'center' */\n align?: React.CSSProperties['alignItems'];\n\n /** Controls `flex-wrap` CSS property @default 'wrap' */\n wrap?: React.CSSProperties['flexWrap'];\n\n /** Key of `theme.spacing` or any valid CSS value for `gap`, numbers are converted to rem @default 'md' */\n gap?: MantineSpacing;\n\n /** Determines whether each child element should have `flex-grow: 1` style @default false */\n grow?: boolean;\n\n /** Determines whether children should take only dedicated amount of space (`max-width` style is set based on the number of children) @default true */\n preventGrowOverflow?: boolean;\n}\n\nexport type GroupFactory = Factory<{\n props: GroupProps;\n ref: HTMLDivElement;\n stylesNames: GroupStylesNames;\n vars: GroupCssVariables;\n ctx: GroupStylesCtx;\n}>;\n\nconst defaultProps = {\n preventGrowOverflow: true,\n gap: 'md',\n align: 'center',\n justify: 'flex-start',\n wrap: 'wrap',\n} satisfies Partial<GroupProps>;\n\nconst varsResolver = createVarsResolver<GroupFactory>(\n (_, { grow, preventGrowOverflow, gap, align, justify, wrap }, { childWidth }) => ({\n root: {\n '--group-child-width': grow && preventGrowOverflow ? childWidth : undefined,\n '--group-gap': getSpacing(gap),\n '--group-align': align,\n '--group-justify': justify,\n '--group-wrap': wrap,\n },\n })\n);\n\nexport const Group = factory<GroupFactory>((_props) => {\n const props = useProps('Group', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n children,\n gap,\n align,\n justify,\n wrap,\n grow,\n preventGrowOverflow,\n vars,\n variant,\n __size,\n mod,\n attributes,\n ...others\n } = props;\n\n const filteredChildren = filterFalsyChildren(children);\n const childrenCount = filteredChildren.length;\n const resolvedGap = getSpacing(gap ?? 'md');\n const childWidth = `calc(${\n 100 / childrenCount\n }% - (${resolvedGap} - ${resolvedGap} / ${childrenCount}))`;\n\n const stylesCtx: GroupStylesCtx = { childWidth };\n\n const getStyles = useStyles<GroupFactory>({\n name: 'Group',\n props,\n stylesCtx,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <Box {...getStyles('root')} variant={variant} mod={[{ grow }, mod]} size={__size} {...others}>\n {filteredChildren}\n </Box>\n );\n});\n\nGroup.classes = classes;\nGroup.varsResolver = varsResolver;\nGroup.displayName = '@mantine/core/Group';\n\nexport namespace Group {\n export type Props = GroupProps;\n export type StylesNames = GroupStylesNames;\n export type CssVariables = GroupCssVariables;\n export type StylesCtx = GroupStylesCtx;\n export type Factory = GroupFactory;\n}\n"],"mappings":";;;;;;;;;;;AA4DA,MAAM,eAAe;CACnB,qBAAqB;CACrB,KAAK;CACL,OAAO;CACP,SAAS;CACT,MAAM;CACP;AAED,MAAM,eAAe,oBAClB,GAAG,EAAE,MAAM,qBAAqB,KAAK,OAAO,SAAS,QAAQ,EAAE,kBAAkB,EAChF,MAAM;CACJ,uBAAuB,QAAQ,sBAAsB,aAAa,KAAA;CAClE,eAAe,WAAW,IAAI;CAC9B,iBAAiB;CACjB,mBAAmB;CACnB,gBAAgB;CACjB,EACF,EACF;AAED,MAAa,QAAQ,SAAuB,WAAW;CACrD,MAAM,QAAQ,SAAS,SAAS,cAAc,OAAO;CACrD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,UACA,KACA,OACA,SACA,MACA,MACA,qBACA,MACA,SACA,QACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,mBAAmB,oBAAoB,SAAS;CACtD,MAAM,gBAAgB,iBAAiB;CACvC,MAAM,cAAc,WAAW,OAAO,KAAK;AAsB3C,QACE,oBAAC,KAAD;EAAK,GAhBW,UAAwB;GACxC,MAAM;GACN;GACA,WALgC,EAAE,YAJjB,QACjB,MAAM,cACP,OAAO,YAAY,KAAK,YAAY,KAAK,cAAc,KAER;GAM9C;GACA;GACA,SAAA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CAAC,CAGmB,OAAO;EAAW;EAAS,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI;EAAE,MAAM;EAAQ,GAAI;YACnF;EACG,CAAA;EAER;AAEF,MAAM,UAAUA;AAChB,MAAM,eAAe;AACrB,MAAM,cAAc"}
1
+ {"version":3,"file":"Group.mjs","names":["classes"],"sources":["../../../src/components/Group/Group.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getSpacing,\n MantineSpacing,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { filterFalsyChildren } from './filter-falsy-children/filter-falsy-children';\nimport classes from './Group.module.css';\n\nexport type GroupStylesNames = 'root';\nexport type GroupCssVariables = {\n root:\n | '--group-gap'\n | '--group-align'\n | '--group-justify'\n | '--group-wrap'\n | '--group-child-width';\n};\n\nexport interface GroupStylesCtx {\n childWidth: string;\n}\n\nexport interface GroupProps extends BoxProps, StylesApiProps<GroupFactory>, ElementProps<'div'> {\n __size?: any;\n\n /** Controls `justify-content` CSS property @default 'flex-start' */\n justify?: React.CSSProperties['justifyContent'];\n\n /** Controls `align-items` CSS property @default 'center' */\n align?: React.CSSProperties['alignItems'];\n\n /** Controls `flex-wrap` CSS property @default 'wrap' */\n wrap?: React.CSSProperties['flexWrap'];\n\n /** Key of `theme.spacing` or any valid CSS value for `gap`, numbers are converted to rem @default 'md' */\n gap?: MantineSpacing;\n\n /** Determines whether each child element should have `flex-grow: 1` style @default false */\n grow?: boolean;\n\n /** Determines whether children should take only dedicated amount of space (`max-width` style is set based on the number of children) @default true */\n preventGrowOverflow?: boolean;\n}\n\nexport type GroupFactory = Factory<{\n props: GroupProps;\n ref: HTMLDivElement;\n stylesNames: GroupStylesNames;\n vars: GroupCssVariables;\n ctx: GroupStylesCtx;\n}>;\n\nconst defaultProps = {\n preventGrowOverflow: true,\n gap: 'md',\n align: 'center',\n justify: 'flex-start',\n wrap: 'wrap',\n} satisfies Partial<GroupProps>;\n\nconst varsResolver = createVarsResolver<GroupFactory>(\n (_, { grow, preventGrowOverflow, gap, align, justify, wrap }, { childWidth }) => ({\n root: {\n '--group-child-width': grow && preventGrowOverflow ? childWidth : undefined,\n '--group-gap': getSpacing(gap),\n '--group-align': align,\n '--group-justify': justify,\n '--group-wrap': wrap,\n },\n })\n);\n\nexport const Group = factory<GroupFactory>((_props) => {\n const props = useProps('Group', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n children,\n gap,\n align,\n justify,\n wrap,\n grow,\n preventGrowOverflow,\n vars,\n variant,\n __size,\n mod,\n attributes,\n ...others\n } = props;\n\n const filteredChildren = filterFalsyChildren(children);\n const childrenCount = filteredChildren.length;\n const resolvedGap = getSpacing(gap ?? 'md');\n const childWidth = `calc(${\n 100 / childrenCount\n }% - (${resolvedGap} - ${resolvedGap} / ${childrenCount}))`;\n\n const stylesCtx: GroupStylesCtx = { childWidth };\n\n const getStyles = useStyles<GroupFactory>({\n name: 'Group',\n props,\n stylesCtx,\n className,\n style,\n classes,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <Box {...getStyles('root')} variant={variant} mod={[{ grow }, mod]} size={__size} {...others}>\n {filteredChildren}\n </Box>\n );\n});\n\nGroup.classes = classes;\nGroup.varsResolver = varsResolver;\nGroup.displayName = '@mantine/core/Group';\n\nexport namespace Group {\n export type Props = GroupProps;\n export type StylesNames = GroupStylesNames;\n export type CssVariables = GroupCssVariables;\n export type StylesCtx = GroupStylesCtx;\n export type Factory = GroupFactory;\n}\n"],"mappings":";;;;;;;;;;;AA4DA,MAAM,eAAe;CACnB,qBAAqB;CACrB,KAAK;CACL,OAAO;CACP,SAAS;CACT,MAAM;AACR;AAEA,MAAM,eAAe,oBAClB,GAAG,EAAE,MAAM,qBAAqB,KAAK,OAAO,SAAS,QAAQ,EAAE,kBAAkB,EAChF,MAAM;CACJ,uBAAuB,QAAQ,sBAAsB,aAAa,KAAA;CAClE,eAAe,WAAW,GAAG;CAC7B,iBAAiB;CACjB,mBAAmB;CACnB,gBAAgB;AAClB,EACF,EACF;AAEA,MAAa,QAAQ,SAAuB,WAAW;CACrD,MAAM,QAAQ,SAAS,SAAS,cAAc,MAAM;CACpD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,UACA,KACA,OACA,SACA,MACA,MACA,qBACA,MACA,SACA,QACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,mBAAmB,oBAAoB,QAAQ;CACrD,MAAM,gBAAgB,iBAAiB;CACvC,MAAM,cAAc,WAAW,OAAO,IAAI;CAsB1C,OACE,oBAAC,KAAD;EAAK,GAhBW,UAAwB;GACxC,MAAM;GACN;GACA,WAAA,EALkC,YAAA,QAHlC,MAAM,cACP,OAAO,YAAY,KAAK,YAAY,KAAK,cAAc,IAO9C;GACR;GACA;GACA,SAAA;GACA;GACA;GACA;GACA;GACA;GACA;EACF,CAGmB,EAAE,MAAM;EAAY;EAAS,KAAK,CAAC,EAAE,KAAK,GAAG,GAAG;EAAG,MAAM;EAAQ,GAAI;YACnF;CACE,CAAA;AAET,CAAC;AAED,MAAM,UAAUA;AAChB,MAAM,eAAe;AACrB,MAAM,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter-falsy-children.mjs","names":[],"sources":["../../../../src/components/Group/filter-falsy-children/filter-falsy-children.ts"],"sourcesContent":["import { Children, ReactElement, ReactNode } from 'react';\n\nexport function filterFalsyChildren(children: ReactNode) {\n return (Children.toArray(children) as ReactElement[]).filter(Boolean);\n}\n"],"mappings":";;;AAEA,SAAgB,oBAAoB,UAAqB;AACvD,QAAQ,SAAS,QAAQ,SAAS,CAAoB,OAAO,QAAQ"}
1
+ {"version":3,"file":"filter-falsy-children.mjs","names":[],"sources":["../../../../src/components/Group/filter-falsy-children/filter-falsy-children.ts"],"sourcesContent":["import { Children, ReactElement, ReactNode } from 'react';\n\nexport function filterFalsyChildren(children: ReactNode) {\n return (Children.toArray(children) as ReactElement[]).filter(Boolean);\n}\n"],"mappings":";;;AAEA,SAAgB,oBAAoB,UAAqB;CACvD,OAAQ,SAAS,QAAQ,QAAQ,EAAqB,OAAO,OAAO;AACtE"}
@@ -3,32 +3,44 @@ import { useProps } from "../../core/MantineProvider/use-props/use-props.mjs";
3
3
  import { polymorphicFactory } from "../../core/factory/polymorphic-factory.mjs";
4
4
  import { Text } from "../Text/Text.mjs";
5
5
  import { Mark } from "../Mark/Mark.mjs";
6
- import { highlighter } from "./highlighter/highlighter.mjs";
6
+ import { foldAccents, highlighter } from "./highlighter/highlighter.mjs";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  //#region packages/@mantine/core/src/components/Highlight/Highlight.tsx
9
9
  const defaultProps = {
10
10
  color: "yellow",
11
- wholeWord: false
11
+ wholeWord: false,
12
+ caseInsensitive: true,
13
+ accentInsensitive: true
12
14
  };
13
15
  const Highlight = polymorphicFactory((_props) => {
14
- const { unstyled, children, highlight, highlightStyles, color, wholeWord, ...others } = useProps("Highlight", defaultProps, _props);
16
+ const { unstyled, children, highlight, highlightStyles, color, wholeWord, caseInsensitive, accentInsensitive, ...others } = useProps("Highlight", defaultProps, _props);
15
17
  const isTermArray = Array.isArray(highlight) && typeof highlight[0] === "object";
16
18
  const colorMap = /* @__PURE__ */ new Map();
19
+ const normalizeKey = (s) => {
20
+ let key = s;
21
+ if (caseInsensitive) key = key.toLowerCase();
22
+ if (accentInsensitive) key = foldAccents(key);
23
+ return key;
24
+ };
17
25
  let highlightStrings;
18
26
  if (isTermArray) highlightStrings = highlight.map((term) => {
19
- if (term.color) colorMap.set(term.text.toLowerCase(), term.color);
27
+ if (term.color) colorMap.set(normalizeKey(term.text), term.color);
20
28
  return term.text;
21
29
  });
22
30
  else if (Array.isArray(highlight)) highlightStrings = highlight;
23
31
  else highlightStrings = [highlight];
24
- const highlightChunks = highlighter(children, highlightStrings, { wholeWord });
32
+ const highlightChunks = highlighter(children, highlightStrings, {
33
+ wholeWord,
34
+ caseInsensitive,
35
+ accentInsensitive
36
+ });
25
37
  return /* @__PURE__ */ jsx(Text, {
26
38
  unstyled,
27
39
  ...others,
28
40
  __staticSelector: "Highlight",
29
41
  children: highlightChunks.map(({ chunk, highlighted }, i) => highlighted ? /* @__PURE__ */ jsx(Mark, {
30
42
  unstyled,
31
- color: colorMap.get(chunk.toLowerCase()) || color,
43
+ color: colorMap.get(normalizeKey(chunk)) || color,
32
44
  style: highlightStyles,
33
45
  "data-highlight": chunk,
34
46
  children: chunk
@@ -1 +1 @@
1
- {"version":3,"file":"Highlight.mjs","names":[],"sources":["../../../src/components/Highlight/Highlight.tsx"],"sourcesContent":["import {\n MantineColor,\n MantineTheme,\n polymorphicFactory,\n PolymorphicFactory,\n useProps,\n} from '../../core';\nimport { Mark } from '../Mark';\nimport { Text, TextProps, TextStylesNames, TextVariant } from '../Text';\nimport { highlighter } from './highlighter/highlighter';\n\nexport interface HighlightTerm {\n /** Text to highlight */\n text: string;\n\n /** Background color for this specific term. Key of `theme.colors` or any valid CSS color */\n color?: MantineColor | string;\n}\n\nexport interface HighlightProps extends Omit<TextProps, 'color'> {\n /**\n * Substring(s) to highlight in `children`. Can be:\n * - string: single term\n * - string[]: multiple terms with same color\n * - HighlightTerm[]: multiple terms with custom colors per term\n *\n * - Matching is case-insensitive\n * - Regex special characters are automatically escaped\n * - When multiple substrings are provided, longer matches take precedence\n * - Empty strings and whitespace-only strings are ignored\n */\n highlight: string | string[] | HighlightTerm[];\n\n /**\n * Default background color for all highlighted text.\n * Key of `theme.colors` or any valid CSS color, passed to `Mark` component.\n * Can be overridden per term when using HighlightTerm objects.\n * @default 'yellow'\n */\n color?: MantineColor | string;\n\n /** Styles applied to `mark` elements */\n highlightStyles?: React.CSSProperties | ((theme: MantineTheme) => React.CSSProperties);\n\n /** String in which to highlight substrings */\n children: string;\n\n /**\n * Only match whole words (adds word boundaries to regex).\n * When enabled, 'the' will not match 'there'.\n * @default false\n */\n wholeWord?: boolean;\n}\n\nexport type HighlightFactory = PolymorphicFactory<{\n props: HighlightProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: TextStylesNames;\n variant: TextVariant;\n}>;\n\nconst defaultProps = {\n color: 'yellow',\n wholeWord: false,\n} satisfies Partial<HighlightProps>;\n\nexport const Highlight = polymorphicFactory<HighlightFactory>((_props) => {\n const { unstyled, children, highlight, highlightStyles, color, wholeWord, ...others } = useProps(\n 'Highlight',\n defaultProps,\n _props\n );\n\n const isTermArray = Array.isArray(highlight) && typeof highlight[0] === 'object';\n const colorMap = new Map<string, string>();\n\n let highlightStrings: string[];\n if (isTermArray) {\n highlightStrings = (highlight as HighlightTerm[]).map((term) => {\n if (term.color) {\n colorMap.set(term.text.toLowerCase(), term.color);\n }\n return term.text;\n });\n } else if (Array.isArray(highlight)) {\n highlightStrings = highlight as string[];\n } else {\n highlightStrings = [highlight as string];\n }\n\n const highlightChunks = highlighter(children, highlightStrings, { wholeWord });\n\n return (\n <Text unstyled={unstyled} {...others} __staticSelector=\"Highlight\">\n {highlightChunks.map(({ chunk, highlighted }, i) =>\n highlighted ? (\n <Mark\n unstyled={unstyled}\n key={i}\n color={colorMap.get(chunk.toLowerCase()) || color}\n style={highlightStyles}\n data-highlight={chunk}\n >\n {chunk}\n </Mark>\n ) : (\n <span key={i}>{chunk}</span>\n )\n )}\n </Text>\n );\n});\n\nHighlight.classes = Text.classes;\nHighlight.displayName = '@mantine/core/Highlight';\n\nexport namespace Highlight {\n export type Props = HighlightProps;\n export type Factory = HighlightFactory;\n export type Term = HighlightTerm;\n}\n"],"mappings":";;;;;;;;AA+DA,MAAM,eAAe;CACnB,OAAO;CACP,WAAW;CACZ;AAED,MAAa,YAAY,oBAAsC,WAAW;CACxE,MAAM,EAAE,UAAU,UAAU,WAAW,iBAAiB,OAAO,WAAW,GAAG,WAAW,SACtF,aACA,cACA,OACD;CAED,MAAM,cAAc,MAAM,QAAQ,UAAU,IAAI,OAAO,UAAU,OAAO;CACxE,MAAM,2BAAW,IAAI,KAAqB;CAE1C,IAAI;AACJ,KAAI,YACF,oBAAoB,UAA8B,KAAK,SAAS;AAC9D,MAAI,KAAK,MACP,UAAS,IAAI,KAAK,KAAK,aAAa,EAAE,KAAK,MAAM;AAEnD,SAAO,KAAK;GACZ;UACO,MAAM,QAAQ,UAAU,CACjC,oBAAmB;KAEnB,oBAAmB,CAAC,UAAoB;CAG1C,MAAM,kBAAkB,YAAY,UAAU,kBAAkB,EAAE,WAAW,CAAC;AAE9E,QACE,oBAAC,MAAD;EAAgB;EAAU,GAAI;EAAQ,kBAAiB;YACpD,gBAAgB,KAAK,EAAE,OAAO,eAAe,MAC5C,cACE,oBAAC,MAAD;GACY;GAEV,OAAO,SAAS,IAAI,MAAM,aAAa,CAAC,IAAI;GAC5C,OAAO;GACP,kBAAgB;aAEf;GACI,EANA,EAMA,GAEP,oBAAC,QAAD,EAAA,UAAe,OAAa,EAAjB,EAAiB,CAE/B;EACI,CAAA;EAET;AAEF,UAAU,UAAU,KAAK;AACzB,UAAU,cAAc"}
1
+ {"version":3,"file":"Highlight.mjs","names":[],"sources":["../../../src/components/Highlight/Highlight.tsx"],"sourcesContent":["import {\n MantineColor,\n MantineTheme,\n polymorphicFactory,\n PolymorphicFactory,\n useProps,\n} from '../../core';\nimport { Mark } from '../Mark';\nimport { Text, TextProps, TextStylesNames, TextVariant } from '../Text';\nimport { foldAccents, highlighter } from './highlighter/highlighter';\n\nexport interface HighlightTerm {\n /** Text to highlight */\n text: string;\n\n /** Background color for this specific term. Key of `theme.colors` or any valid CSS color */\n color?: MantineColor | string;\n}\n\nexport interface HighlightProps extends Omit<TextProps, 'color'> {\n /**\n * Substring(s) to highlight in `children`. Can be:\n * - string: single term\n * - string[]: multiple terms with same color\n * - HighlightTerm[]: multiple terms with custom colors per term\n *\n * - Matching is case-insensitive and accent-insensitive by default, use `caseInsensitive` and `accentInsensitive` props to control this behavior\n * - Regex special characters are automatically escaped\n * - When multiple substrings are provided, longer matches take precedence\n * - Empty strings and whitespace-only strings are ignored\n */\n highlight: string | string[] | HighlightTerm[];\n\n /**\n * Default background color for all highlighted text.\n * Key of `theme.colors` or any valid CSS color, passed to `Mark` component.\n * Can be overridden per term when using HighlightTerm objects.\n * @default 'yellow'\n */\n color?: MantineColor | string;\n\n /** Styles applied to `mark` elements */\n highlightStyles?: React.CSSProperties | ((theme: MantineTheme) => React.CSSProperties);\n\n /** String in which to highlight substrings */\n children: string;\n\n /**\n * Only match whole words (adds word boundaries to regex).\n * When enabled, 'the' will not match 'there'.\n * @default false\n */\n wholeWord?: boolean;\n\n /**\n * Perform case-insensitive matching.\n * @default true\n */\n caseInsensitive?: boolean;\n\n /**\n * Perform accent-insensitive matching.\n * When enabled cafe will match cafe, café, cafè, etc.\n * @default true\n */\n accentInsensitive?: boolean;\n}\n\nexport type HighlightFactory = PolymorphicFactory<{\n props: HighlightProps;\n defaultRef: HTMLDivElement;\n defaultComponent: 'div';\n stylesNames: TextStylesNames;\n variant: TextVariant;\n}>;\n\nconst defaultProps = {\n color: 'yellow',\n wholeWord: false,\n caseInsensitive: true,\n accentInsensitive: true,\n} satisfies Partial<HighlightProps>;\n\nexport const Highlight = polymorphicFactory<HighlightFactory>((_props) => {\n const {\n unstyled,\n children,\n highlight,\n highlightStyles,\n color,\n wholeWord,\n caseInsensitive,\n accentInsensitive,\n ...others\n } = useProps('Highlight', defaultProps, _props);\n\n const isTermArray = Array.isArray(highlight) && typeof highlight[0] === 'object';\n const colorMap = new Map<string, string>();\n\n const normalizeKey = (s: string) => {\n let key = s;\n if (caseInsensitive) {\n key = key.toLowerCase();\n }\n if (accentInsensitive) {\n key = foldAccents(key);\n }\n return key;\n };\n\n let highlightStrings: string[];\n if (isTermArray) {\n highlightStrings = (highlight as HighlightTerm[]).map((term) => {\n if (term.color) {\n colorMap.set(normalizeKey(term.text), term.color);\n }\n return term.text;\n });\n } else if (Array.isArray(highlight)) {\n highlightStrings = highlight as string[];\n } else {\n highlightStrings = [highlight as string];\n }\n\n const highlightChunks = highlighter(children, highlightStrings, {\n wholeWord,\n caseInsensitive,\n accentInsensitive,\n });\n\n return (\n <Text unstyled={unstyled} {...others} __staticSelector=\"Highlight\">\n {highlightChunks.map(({ chunk, highlighted }, i) =>\n highlighted ? (\n <Mark\n unstyled={unstyled}\n key={i}\n color={colorMap.get(normalizeKey(chunk)) || color}\n style={highlightStyles}\n data-highlight={chunk}\n >\n {chunk}\n </Mark>\n ) : (\n <span key={i}>{chunk}</span>\n )\n )}\n </Text>\n );\n});\n\nHighlight.classes = Text.classes;\nHighlight.displayName = '@mantine/core/Highlight';\n\nexport namespace Highlight {\n export type Props = HighlightProps;\n export type Factory = HighlightFactory;\n export type Term = HighlightTerm;\n}\n"],"mappings":";;;;;;;;AA4EA,MAAM,eAAe;CACnB,OAAO;CACP,WAAW;CACX,iBAAiB;CACjB,mBAAmB;AACrB;AAEA,MAAa,YAAY,oBAAsC,WAAW;CACxE,MAAM,EACJ,UACA,UACA,WACA,iBACA,OACA,WACA,iBACA,mBACA,GAAG,WACD,SAAS,aAAa,cAAc,MAAM;CAE9C,MAAM,cAAc,MAAM,QAAQ,SAAS,KAAK,OAAO,UAAU,OAAO;CACxE,MAAM,2BAAW,IAAI,IAAoB;CAEzC,MAAM,gBAAgB,MAAc;EAClC,IAAI,MAAM;EACV,IAAI,iBACF,MAAM,IAAI,YAAY;EAExB,IAAI,mBACF,MAAM,YAAY,GAAG;EAEvB,OAAO;CACT;CAEA,IAAI;CACJ,IAAI,aACF,mBAAoB,UAA8B,KAAK,SAAS;EAC9D,IAAI,KAAK,OACP,SAAS,IAAI,aAAa,KAAK,IAAI,GAAG,KAAK,KAAK;EAElD,OAAO,KAAK;CACd,CAAC;MACI,IAAI,MAAM,QAAQ,SAAS,GAChC,mBAAmB;MAEnB,mBAAmB,CAAC,SAAmB;CAGzC,MAAM,kBAAkB,YAAY,UAAU,kBAAkB;EAC9D;EACA;EACA;CACF,CAAC;CAED,OACE,oBAAC,MAAD;EAAgB;EAAU,GAAI;EAAQ,kBAAiB;YACpD,gBAAgB,KAAK,EAAE,OAAO,eAAe,MAC5C,cACE,oBAAC,MAAD;GACY;GAEV,OAAO,SAAS,IAAI,aAAa,KAAK,CAAC,KAAK;GAC5C,OAAO;GACP,kBAAgB;aAEf;EACG,GANC,CAMD,IAEN,oBAAC,QAAD,EAAA,UAAe,MAAY,GAAhB,CAAgB,CAE/B;CACI,CAAA;AAEV,CAAC;AAED,UAAU,UAAU,KAAK;AACzB,UAAU,cAAc"}
@@ -3,25 +3,81 @@
3
3
  function escapeRegex(value) {
4
4
  return value.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
5
5
  }
6
+ function foldAccents(text) {
7
+ return text.normalize("NFD").replace(/\p{M}/gu, "");
8
+ }
9
+ function foldAccentsWithMap(text) {
10
+ let folded = "";
11
+ const map = [];
12
+ let i = 0;
13
+ while (i < text.length) {
14
+ const cp = text.codePointAt(i);
15
+ const cpStr = String.fromCodePoint(cp);
16
+ const foldedCp = foldAccents(cpStr);
17
+ for (let j = 0; j < foldedCp.length; j += 1) map.push(i);
18
+ folded += foldedCp;
19
+ i += cpStr.length;
20
+ }
21
+ map.push(text.length);
22
+ return {
23
+ folded,
24
+ map
25
+ };
26
+ }
27
+ function getAccentInsensitiveChunks(value, re) {
28
+ const { folded, map } = foldAccentsWithMap(value);
29
+ const chunks = [];
30
+ let lastOrigEnd = 0;
31
+ let match;
32
+ while ((match = re.exec(folded)) !== null) {
33
+ const foldedStart = match.index;
34
+ const foldedEnd = foldedStart + match[0].length;
35
+ const origStart = map[foldedStart];
36
+ const origEnd = map[foldedEnd];
37
+ if (origStart > lastOrigEnd) chunks.push({
38
+ chunk: value.slice(lastOrigEnd, origStart),
39
+ highlighted: false
40
+ });
41
+ chunks.push({
42
+ chunk: value.slice(origStart, origEnd),
43
+ highlighted: true
44
+ });
45
+ lastOrigEnd = origEnd;
46
+ if (match[0].length === 0) re.lastIndex += 1;
47
+ }
48
+ if (lastOrigEnd < value.length) chunks.push({
49
+ chunk: value.slice(lastOrigEnd),
50
+ highlighted: false
51
+ });
52
+ return chunks.filter(({ chunk }) => chunk);
53
+ }
6
54
  function highlighter(value, _highlight, options = {}) {
7
55
  if (_highlight == null) return [{
8
56
  chunk: value,
9
57
  highlighted: false
10
58
  }];
11
- const highlight = Array.isArray(_highlight) ? _highlight.map(escapeRegex) : escapeRegex(_highlight);
59
+ const { wholeWord = false, caseInsensitive = true, accentInsensitive = true } = options;
60
+ const prepareTerm = (term) => accentInsensitive ? foldAccents(escapeRegex(term)) : escapeRegex(term);
61
+ const highlight = Array.isArray(_highlight) ? _highlight.map(prepareTerm) : prepareTerm(_highlight);
12
62
  if (!(Array.isArray(highlight) ? highlight.filter((part) => part.trim().length > 0).length > 0 : highlight.trim() !== "")) return [{
13
63
  chunk: value,
14
64
  highlighted: false
15
65
  }];
16
66
  const matcher = typeof highlight === "string" ? highlight.trim() : highlight.filter((part) => part.trim().length !== 0).map((part) => part.trim()).sort((a, b) => b.length - a.length).join("|");
17
- const pattern = options.wholeWord ? `(?<![\\p{L}\\p{N}_])(${matcher})(?![\\p{L}\\p{N}_])` : `(${matcher})`;
18
- const re = new RegExp(pattern, options.wholeWord ? "giu" : "gi");
67
+ const pattern = wholeWord ? `(?<![\\p{L}\\p{N}_])(${matcher})(?![\\p{L}\\p{N}_])` : `(${matcher})`;
68
+ const flags = [
69
+ "g",
70
+ caseInsensitive ? "i" : "",
71
+ wholeWord ? "u" : ""
72
+ ].join("");
73
+ const re = new RegExp(pattern, flags);
74
+ if (accentInsensitive) return getAccentInsensitiveChunks(value, re);
19
75
  return value.split(re).map((part, index) => ({
20
76
  chunk: part,
21
77
  highlighted: index % 2 === 1
22
78
  })).filter(({ chunk }) => chunk);
23
79
  }
24
80
  //#endregion
25
- export { highlighter };
81
+ export { foldAccents, highlighter };
26
82
 
27
83
  //# sourceMappingURL=highlighter.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"highlighter.mjs","names":[],"sources":["../../../../src/components/Highlight/highlighter/highlighter.ts"],"sourcesContent":["function escapeRegex(value: string) {\n return value.replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&');\n}\n\nexport interface HighlightChunk {\n chunk: string;\n highlighted: boolean;\n color?: string;\n}\n\nexport interface HighlighterOptions {\n wholeWord?: boolean;\n}\n\nexport function highlighter(\n value: string,\n _highlight: string | string[],\n options: HighlighterOptions = {}\n): HighlightChunk[] {\n if (_highlight == null) {\n return [{ chunk: value, highlighted: false }];\n }\n\n const highlight = Array.isArray(_highlight)\n ? _highlight.map(escapeRegex)\n : escapeRegex(_highlight);\n\n const shouldHighlight = Array.isArray(highlight)\n ? highlight.filter((part) => part.trim().length > 0).length > 0\n : highlight.trim() !== '';\n\n if (!shouldHighlight) {\n return [{ chunk: value, highlighted: false }];\n }\n\n const matcher =\n typeof highlight === 'string'\n ? highlight.trim()\n : highlight\n .filter((part) => part.trim().length !== 0)\n .map((part) => part.trim())\n .sort((a, b) => b.length - a.length)\n .join('|');\n\n const pattern = options.wholeWord\n ? `(?<![\\\\p{L}\\\\p{N}_])(${matcher})(?![\\\\p{L}\\\\p{N}_])`\n : `(${matcher})`;\n const re = new RegExp(pattern, options.wholeWord ? 'giu' : 'gi');\n const chunks = value\n .split(re)\n .map((part, index) => ({ chunk: part, highlighted: index % 2 === 1 }))\n .filter(({ chunk }) => chunk);\n\n return chunks;\n}\n"],"mappings":";;AAAA,SAAS,YAAY,OAAe;AAClC,QAAO,MAAM,QAAQ,uBAAuB,OAAO;;AAarD,SAAgB,YACd,OACA,YACA,UAA8B,EAAE,EACd;AAClB,KAAI,cAAc,KAChB,QAAO,CAAC;EAAE,OAAO;EAAO,aAAa;EAAO,CAAC;CAG/C,MAAM,YAAY,MAAM,QAAQ,WAAW,GACvC,WAAW,IAAI,YAAY,GAC3B,YAAY,WAAW;AAM3B,KAAI,EAJoB,MAAM,QAAQ,UAAU,GAC5C,UAAU,QAAQ,SAAS,KAAK,MAAM,CAAC,SAAS,EAAE,CAAC,SAAS,IAC5D,UAAU,MAAM,KAAK,IAGvB,QAAO,CAAC;EAAE,OAAO;EAAO,aAAa;EAAO,CAAC;CAG/C,MAAM,UACJ,OAAO,cAAc,WACjB,UAAU,MAAM,GAChB,UACG,QAAQ,SAAS,KAAK,MAAM,CAAC,WAAW,EAAE,CAC1C,KAAK,SAAS,KAAK,MAAM,CAAC,CAC1B,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,OAAO,CACnC,KAAK,IAAI;CAElB,MAAM,UAAU,QAAQ,YACpB,wBAAwB,QAAQ,wBAChC,IAAI,QAAQ;CAChB,MAAM,KAAK,IAAI,OAAO,SAAS,QAAQ,YAAY,QAAQ,KAAK;AAMhE,QALe,MACZ,MAAM,GAAG,CACT,KAAK,MAAM,WAAW;EAAE,OAAO;EAAM,aAAa,QAAQ,MAAM;EAAG,EAAE,CACrE,QAAQ,EAAE,YAAY,MAAM"}
1
+ {"version":3,"file":"highlighter.mjs","names":[],"sources":["../../../../src/components/Highlight/highlighter/highlighter.ts"],"sourcesContent":["function escapeRegex(value: string) {\n return value.replace(/[\\\\^$.*+?()[\\]{}|]/g, '\\\\$&');\n}\n\nexport function foldAccents(text: string): string {\n return text.normalize('NFD').replace(/\\p{M}/gu, '');\n}\n\nfunction foldAccentsWithMap(text: string): { folded: string; map: number[] } {\n let folded = '';\n const map: number[] = [];\n let i = 0;\n\n while (i < text.length) {\n const cp = text.codePointAt(i)!;\n const cpStr = String.fromCodePoint(cp);\n const foldedCp = foldAccents(cpStr);\n for (let j = 0; j < foldedCp.length; j += 1) {\n map.push(i);\n }\n folded += foldedCp;\n i += cpStr.length;\n }\n\n map.push(text.length);\n return { folded, map };\n}\n\nfunction getAccentInsensitiveChunks(value: string, re: RegExp): HighlightChunk[] {\n const { folded, map } = foldAccentsWithMap(value);\n const chunks: HighlightChunk[] = [];\n let lastOrigEnd = 0;\n let match: RegExpExecArray | null;\n\n while ((match = re.exec(folded)) !== null) {\n const foldedStart = match.index;\n const foldedEnd = foldedStart + match[0].length;\n const origStart = map[foldedStart];\n const origEnd = map[foldedEnd];\n\n if (origStart > lastOrigEnd) {\n chunks.push({ chunk: value.slice(lastOrigEnd, origStart), highlighted: false });\n }\n chunks.push({ chunk: value.slice(origStart, origEnd), highlighted: true });\n lastOrigEnd = origEnd;\n\n if (match[0].length === 0) {\n re.lastIndex += 1;\n }\n }\n\n if (lastOrigEnd < value.length) {\n chunks.push({ chunk: value.slice(lastOrigEnd), highlighted: false });\n }\n\n return chunks.filter(({ chunk }) => chunk);\n}\n\nexport interface HighlightChunk {\n chunk: string;\n highlighted: boolean;\n color?: string;\n}\n\nexport interface HighlighterOptions {\n wholeWord?: boolean;\n caseInsensitive?: boolean;\n accentInsensitive?: boolean;\n}\n\nexport function highlighter(\n value: string,\n _highlight: string | string[],\n options: HighlighterOptions = {}\n): HighlightChunk[] {\n if (_highlight == null) {\n return [{ chunk: value, highlighted: false }];\n }\n\n const { wholeWord = false, caseInsensitive = true, accentInsensitive = true } = options;\n\n const prepareTerm = (term: string) =>\n accentInsensitive ? foldAccents(escapeRegex(term)) : escapeRegex(term);\n\n const highlight = Array.isArray(_highlight)\n ? _highlight.map(prepareTerm)\n : prepareTerm(_highlight);\n\n const shouldHighlight = Array.isArray(highlight)\n ? highlight.filter((part) => part.trim().length > 0).length > 0\n : highlight.trim() !== '';\n\n if (!shouldHighlight) {\n return [{ chunk: value, highlighted: false }];\n }\n\n const matcher =\n typeof highlight === 'string'\n ? highlight.trim()\n : highlight\n .filter((part) => part.trim().length !== 0)\n .map((part) => part.trim())\n .sort((a, b) => b.length - a.length)\n .join('|');\n\n const pattern = wholeWord\n ? `(?<![\\\\p{L}\\\\p{N}_])(${matcher})(?![\\\\p{L}\\\\p{N}_])`\n : `(${matcher})`;\n const flags = ['g', caseInsensitive ? 'i' : '', wholeWord ? 'u' : ''].join('');\n const re = new RegExp(pattern, flags);\n\n if (accentInsensitive) {\n return getAccentInsensitiveChunks(value, re);\n }\n\n return value\n .split(re)\n .map((part, index) => ({ chunk: part, highlighted: index % 2 === 1 }))\n .filter(({ chunk }) => chunk);\n}\n"],"mappings":";;AAAA,SAAS,YAAY,OAAe;CAClC,OAAO,MAAM,QAAQ,uBAAuB,MAAM;AACpD;AAEA,SAAgB,YAAY,MAAsB;CAChD,OAAO,KAAK,UAAU,KAAK,EAAE,QAAQ,WAAW,EAAE;AACpD;AAEA,SAAS,mBAAmB,MAAiD;CAC3E,IAAI,SAAS;CACb,MAAM,MAAgB,CAAC;CACvB,IAAI,IAAI;CAER,OAAO,IAAI,KAAK,QAAQ;EACtB,MAAM,KAAK,KAAK,YAAY,CAAC;EAC7B,MAAM,QAAQ,OAAO,cAAc,EAAE;EACrC,MAAM,WAAW,YAAY,KAAK;EAClC,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK,GACxC,IAAI,KAAK,CAAC;EAEZ,UAAU;EACV,KAAK,MAAM;CACb;CAEA,IAAI,KAAK,KAAK,MAAM;CACpB,OAAO;EAAE;EAAQ;CAAI;AACvB;AAEA,SAAS,2BAA2B,OAAe,IAA8B;CAC/E,MAAM,EAAE,QAAQ,QAAQ,mBAAmB,KAAK;CAChD,MAAM,SAA2B,CAAC;CAClC,IAAI,cAAc;CAClB,IAAI;CAEJ,QAAQ,QAAQ,GAAG,KAAK,MAAM,OAAO,MAAM;EACzC,MAAM,cAAc,MAAM;EAC1B,MAAM,YAAY,cAAc,MAAM,GAAG;EACzC,MAAM,YAAY,IAAI;EACtB,MAAM,UAAU,IAAI;EAEpB,IAAI,YAAY,aACd,OAAO,KAAK;GAAE,OAAO,MAAM,MAAM,aAAa,SAAS;GAAG,aAAa;EAAM,CAAC;EAEhF,OAAO,KAAK;GAAE,OAAO,MAAM,MAAM,WAAW,OAAO;GAAG,aAAa;EAAK,CAAC;EACzE,cAAc;EAEd,IAAI,MAAM,GAAG,WAAW,GACtB,GAAG,aAAa;CAEpB;CAEA,IAAI,cAAc,MAAM,QACtB,OAAO,KAAK;EAAE,OAAO,MAAM,MAAM,WAAW;EAAG,aAAa;CAAM,CAAC;CAGrE,OAAO,OAAO,QAAQ,EAAE,YAAY,KAAK;AAC3C;AAcA,SAAgB,YACd,OACA,YACA,UAA8B,CAAC,GACb;CAClB,IAAI,cAAc,MAChB,OAAO,CAAC;EAAE,OAAO;EAAO,aAAa;CAAM,CAAC;CAG9C,MAAM,EAAE,YAAY,OAAO,kBAAkB,MAAM,oBAAoB,SAAS;CAEhF,MAAM,eAAe,SACnB,oBAAoB,YAAY,YAAY,IAAI,CAAC,IAAI,YAAY,IAAI;CAEvE,MAAM,YAAY,MAAM,QAAQ,UAAU,IACtC,WAAW,IAAI,WAAW,IAC1B,YAAY,UAAU;CAM1B,IAAI,EAJoB,MAAM,QAAQ,SAAS,IAC3C,UAAU,QAAQ,SAAS,KAAK,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,IAC5D,UAAU,KAAK,MAAM,KAGvB,OAAO,CAAC;EAAE,OAAO;EAAO,aAAa;CAAM,CAAC;CAG9C,MAAM,UACJ,OAAO,cAAc,WACjB,UAAU,KAAK,IACf,UACG,QAAQ,SAAS,KAAK,KAAK,EAAE,WAAW,CAAC,EACzC,KAAK,SAAS,KAAK,KAAK,CAAC,EACzB,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,MAAM,EAClC,KAAK,GAAG;CAEjB,MAAM,UAAU,YACZ,wBAAwB,QAAQ,wBAChC,IAAI,QAAQ;CAChB,MAAM,QAAQ;EAAC;EAAK,kBAAkB,MAAM;EAAI,YAAY,MAAM;CAAE,EAAE,KAAK,EAAE;CAC7E,MAAM,KAAK,IAAI,OAAO,SAAS,KAAK;CAEpC,IAAI,mBACF,OAAO,2BAA2B,OAAO,EAAE;CAG7C,OAAO,MACJ,MAAM,EAAE,EACR,KAAK,MAAM,WAAW;EAAE,OAAO;EAAM,aAAa,QAAQ,MAAM;CAAE,EAAE,EACpE,QAAQ,EAAE,YAAY,KAAK;AAChC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCard.context.mjs","names":[],"sources":["../../../src/components/HoverCard/HoverCard.context.ts"],"sourcesContent":["import { createSafeContext } from '../../core';\n\nexport interface HoverCardContextValue {\n openDropdown: () => void;\n closeDropdown: () => void;\n getReferenceProps?: () => any;\n getFloatingProps?: () => any;\n reference?: (node: HTMLElement | null) => void;\n floating?: (node: HTMLElement | null) => void;\n}\n\nexport const [HoverCardContext, useHoverCardContext] = createSafeContext<HoverCardContextValue>(\n 'HoverCard component was not found in the tree'\n);\n"],"mappings":";;;AAWA,MAAa,CAAC,kBAAkB,uBAAuB,kBACrD,gDACD"}
1
+ {"version":3,"file":"HoverCard.context.mjs","names":[],"sources":["../../../src/components/HoverCard/HoverCard.context.ts"],"sourcesContent":["import { createSafeContext } from '../../core';\n\nexport interface HoverCardContextValue {\n openDropdown: () => void;\n closeDropdown: () => void;\n getReferenceProps?: () => any;\n getFloatingProps?: () => any;\n reference?: (node: HTMLElement | null) => void;\n floating?: (node: HTMLElement | null) => void;\n}\n\nexport const [HoverCardContext, useHoverCardContext] = createSafeContext<HoverCardContextValue>(\n 'HoverCard component was not found in the tree'\n);\n"],"mappings":";;;AAWA,MAAa,CAAC,kBAAkB,uBAAuB,kBACrD,+CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCard.mjs","names":[],"sources":["../../../src/components/HoverCard/HoverCard.tsx"],"sourcesContent":["import { ExtendComponent, Factory, useProps } from '../../core';\nimport { Popover, PopoverProps, PopoverStylesNames } from '../Popover';\nimport { PopoverCssVariables } from '../Popover/Popover';\nimport { HoverCardContext, HoverCardContextValue } from './HoverCard.context';\nimport { HoverCardDropdown, HoverCardDropdownProps } from './HoverCardDropdown/HoverCardDropdown';\nimport {\n HoverCardGroup,\n HoverCardGroupContextValue,\n HoverCardGroupProps,\n} from './HoverCardGroup/HoverCardGroup';\nimport { HoverCardTarget, HoverCardTargetProps } from './HoverCardTarget/HoverCardTarget';\nimport { useHoverCard } from './use-hover-card';\n\nexport interface HoverCardProps extends Omit<PopoverProps, 'opened' | 'onChange'> {\n /** Initial opened state */\n initiallyOpened?: boolean;\n\n /** Called when the dropdown is opened */\n onOpen?: () => void;\n\n /** Called when the dropdown is closed */\n onClose?: () => void;\n\n /**\n * Delay in ms before the dropdown opens after mouse enters the target.\n * Overridden by HoverCard.Group delay if used within a group.\n * @default 0\n */\n openDelay?: number;\n\n /**\n * Delay in ms before the dropdown closes after mouse leaves the target or dropdown.\n * Overridden by HoverCard.Group delay if used within a group.\n * @default 150\n */\n closeDelay?: number;\n}\n\nexport type HoverCardFactory = Factory<{\n props: HoverCardProps;\n stylesNames: PopoverStylesNames;\n vars: PopoverCssVariables;\n}>;\n\nconst defaultProps = {\n openDelay: 0,\n closeDelay: 150,\n initiallyOpened: false,\n} satisfies Partial<HoverCardProps>;\n\nexport function HoverCard(props: HoverCardProps) {\n const { children, onOpen, onClose, openDelay, closeDelay, initiallyOpened, ...others } = useProps(\n 'HoverCard',\n defaultProps,\n props\n );\n\n const hoverCard = useHoverCard({\n openDelay,\n closeDelay,\n defaultOpened: initiallyOpened,\n onOpen,\n onClose,\n });\n\n return (\n <HoverCardContext\n value={{\n openDropdown: hoverCard.openDropdown,\n closeDropdown: hoverCard.closeDropdown,\n getReferenceProps: hoverCard.getReferenceProps,\n getFloatingProps: hoverCard.getFloatingProps,\n reference: hoverCard.reference,\n floating: hoverCard.floating,\n }}\n >\n <Popover {...others} opened={hoverCard.opened} __staticSelector=\"HoverCard\">\n {children}\n </Popover>\n </HoverCardContext>\n );\n}\n\nHoverCard.displayName = '@mantine/core/HoverCard';\nHoverCard.Target = HoverCardTarget;\nHoverCard.Dropdown = HoverCardDropdown;\nHoverCard.Group = HoverCardGroup;\nHoverCard.extend = (input: ExtendComponent<HoverCardFactory>) => input;\n\nexport namespace HoverCard {\n export type Props = HoverCardProps;\n export type DropdownProps = HoverCardDropdownProps;\n export type TargetProps = HoverCardTargetProps;\n export type GroupProps = HoverCardGroupProps;\n export type ContextValue = HoverCardContextValue;\n\n export namespace Group {\n export type Props = HoverCardGroupProps;\n export type ContextValue = HoverCardGroupContextValue;\n }\n}\n"],"mappings":";;;;;;;;;;AA4CA,MAAM,eAAe;CACnB,WAAW;CACX,YAAY;CACZ,iBAAiB;CAClB;AAED,SAAgB,UAAU,OAAuB;CAC/C,MAAM,EAAE,UAAU,QAAQ,SAAS,WAAW,YAAY,iBAAiB,GAAG,WAAW,SACvF,aACA,cACA,MACD;CAED,MAAM,YAAY,aAAa;EAC7B;EACA;EACA,eAAe;EACf;EACA;EACD,CAAC;AAEF,QACE,oBAAC,kBAAD;EACE,OAAO;GACL,cAAc,UAAU;GACxB,eAAe,UAAU;GACzB,mBAAmB,UAAU;GAC7B,kBAAkB,UAAU;GAC5B,WAAW,UAAU;GACrB,UAAU,UAAU;GACrB;YAED,oBAAC,SAAD;GAAS,GAAI;GAAQ,QAAQ,UAAU;GAAQ,kBAAiB;GAC7D;GACO,CAAA;EACO,CAAA;;AAIvB,UAAU,cAAc;AACxB,UAAU,SAAS;AACnB,UAAU,WAAW;AACrB,UAAU,QAAQ;AAClB,UAAU,UAAU,UAA6C"}
1
+ {"version":3,"file":"HoverCard.mjs","names":[],"sources":["../../../src/components/HoverCard/HoverCard.tsx"],"sourcesContent":["import { ExtendComponent, Factory, useProps } from '../../core';\nimport { Popover, PopoverProps, PopoverStylesNames } from '../Popover';\nimport { PopoverCssVariables } from '../Popover/Popover';\nimport { HoverCardContext, HoverCardContextValue } from './HoverCard.context';\nimport { HoverCardDropdown, HoverCardDropdownProps } from './HoverCardDropdown/HoverCardDropdown';\nimport {\n HoverCardGroup,\n HoverCardGroupContextValue,\n HoverCardGroupProps,\n} from './HoverCardGroup/HoverCardGroup';\nimport { HoverCardTarget, HoverCardTargetProps } from './HoverCardTarget/HoverCardTarget';\nimport { useHoverCard } from './use-hover-card';\n\nexport interface HoverCardProps extends Omit<PopoverProps, 'opened' | 'onChange'> {\n /** Initial opened state */\n initiallyOpened?: boolean;\n\n /** Called when the dropdown is opened */\n onOpen?: () => void;\n\n /** Called when the dropdown is closed */\n onClose?: () => void;\n\n /**\n * Delay in ms before the dropdown opens after mouse enters the target.\n * Overridden by HoverCard.Group delay if used within a group.\n * @default 0\n */\n openDelay?: number;\n\n /**\n * Delay in ms before the dropdown closes after mouse leaves the target or dropdown.\n * Overridden by HoverCard.Group delay if used within a group.\n * @default 150\n */\n closeDelay?: number;\n}\n\nexport type HoverCardFactory = Factory<{\n props: HoverCardProps;\n stylesNames: PopoverStylesNames;\n vars: PopoverCssVariables;\n}>;\n\nconst defaultProps = {\n openDelay: 0,\n closeDelay: 150,\n initiallyOpened: false,\n} satisfies Partial<HoverCardProps>;\n\nexport function HoverCard(props: HoverCardProps) {\n const { children, onOpen, onClose, openDelay, closeDelay, initiallyOpened, ...others } = useProps(\n 'HoverCard',\n defaultProps,\n props\n );\n\n const hoverCard = useHoverCard({\n openDelay,\n closeDelay,\n defaultOpened: initiallyOpened,\n onOpen,\n onClose,\n });\n\n return (\n <HoverCardContext\n value={{\n openDropdown: hoverCard.openDropdown,\n closeDropdown: hoverCard.closeDropdown,\n getReferenceProps: hoverCard.getReferenceProps,\n getFloatingProps: hoverCard.getFloatingProps,\n reference: hoverCard.reference,\n floating: hoverCard.floating,\n }}\n >\n <Popover {...others} opened={hoverCard.opened} __staticSelector=\"HoverCard\">\n {children}\n </Popover>\n </HoverCardContext>\n );\n}\n\nHoverCard.displayName = '@mantine/core/HoverCard';\nHoverCard.Target = HoverCardTarget;\nHoverCard.Dropdown = HoverCardDropdown;\nHoverCard.Group = HoverCardGroup;\nHoverCard.extend = (input: ExtendComponent<HoverCardFactory>) => input;\n\nexport namespace HoverCard {\n export type Props = HoverCardProps;\n export type DropdownProps = HoverCardDropdownProps;\n export type TargetProps = HoverCardTargetProps;\n export type GroupProps = HoverCardGroupProps;\n export type ContextValue = HoverCardContextValue;\n\n export namespace Group {\n export type Props = HoverCardGroupProps;\n export type ContextValue = HoverCardGroupContextValue;\n }\n}\n"],"mappings":";;;;;;;;;;AA4CA,MAAM,eAAe;CACnB,WAAW;CACX,YAAY;CACZ,iBAAiB;AACnB;AAEA,SAAgB,UAAU,OAAuB;CAC/C,MAAM,EAAE,UAAU,QAAQ,SAAS,WAAW,YAAY,iBAAiB,GAAG,WAAW,SACvF,aACA,cACA,KACF;CAEA,MAAM,YAAY,aAAa;EAC7B;EACA;EACA,eAAe;EACf;EACA;CACF,CAAC;CAED,OACE,oBAAC,kBAAD;EACE,OAAO;GACL,cAAc,UAAU;GACxB,eAAe,UAAU;GACzB,mBAAmB,UAAU;GAC7B,kBAAkB,UAAU;GAC5B,WAAW,UAAU;GACrB,UAAU,UAAU;EACtB;YAEA,oBAAC,SAAD;GAAS,GAAI;GAAQ,QAAQ,UAAU;GAAQ,kBAAiB;GAC7D;EACM,CAAA;CACO,CAAA;AAEtB;AAEA,UAAU,cAAc;AACxB,UAAU,SAAS;AACnB,UAAU,WAAW;AACrB,UAAU,QAAQ;AAClB,UAAU,UAAU,UAA6C"}
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCardDropdown.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardDropdown/HoverCardDropdown.tsx"],"sourcesContent":["import { use } from 'react';\nimport { createEventHandler, useProps } from '../../../core';\nimport { Popover, PopoverDropdownProps } from '../../Popover';\nimport { useHoverCardContext } from '../HoverCard.context';\nimport { HoverCardGroupContext } from '../HoverCardGroup/HoverCardGroup';\n\nexport interface HoverCardDropdownProps extends PopoverDropdownProps {\n /** Dropdown content */\n children?: React.ReactNode;\n}\n\nexport function HoverCardDropdown(props: HoverCardDropdownProps) {\n const { children, onMouseEnter, onMouseLeave, ...others } = useProps(\n 'HoverCardDropdown',\n null,\n props\n );\n\n const ctx = useHoverCardContext();\n const groupCtx = use(HoverCardGroupContext);\n\n if (groupCtx.withinGroup && ctx.getFloatingProps && ctx.floating) {\n const floatingProps = ctx.getFloatingProps();\n\n return (\n <Popover.Dropdown\n ref={ctx.floating}\n {...floatingProps}\n onMouseEnter={createEventHandler<any>(onMouseEnter, floatingProps.onMouseEnter)}\n onMouseLeave={createEventHandler<any>(onMouseLeave, floatingProps.onMouseLeave)}\n {...others}\n >\n {children}\n </Popover.Dropdown>\n );\n }\n\n const handleMouseEnter = createEventHandler<any>(onMouseEnter, ctx.openDropdown);\n const handleMouseLeave = createEventHandler<any>(onMouseLeave!, ctx.closeDropdown);\n\n return (\n <Popover.Dropdown onMouseEnter={handleMouseEnter} onMouseLeave={handleMouseLeave} {...others}>\n {children}\n </Popover.Dropdown>\n );\n}\n\nHoverCardDropdown.displayName = '@mantine/core/HoverCardDropdown';\n"],"mappings":";;;;;;;;;AAWA,SAAgB,kBAAkB,OAA+B;CAC/D,MAAM,EAAE,UAAU,cAAc,cAAc,GAAG,WAAW,SAC1D,qBACA,MACA,MACD;CAED,MAAM,MAAM,qBAAqB;AAGjC,KAFiB,IAAI,sBAAsB,CAE9B,eAAe,IAAI,oBAAoB,IAAI,UAAU;EAChE,MAAM,gBAAgB,IAAI,kBAAkB;AAE5C,SACE,oBAAC,QAAQ,UAAT;GACE,KAAK,IAAI;GACT,GAAI;GACJ,cAAc,mBAAwB,cAAc,cAAc,aAAa;GAC/E,cAAc,mBAAwB,cAAc,cAAc,aAAa;GAC/E,GAAI;GAEH;GACgB,CAAA;;CAIvB,MAAM,mBAAmB,mBAAwB,cAAc,IAAI,aAAa;CAChF,MAAM,mBAAmB,mBAAwB,cAAe,IAAI,cAAc;AAElF,QACE,oBAAC,QAAQ,UAAT;EAAkB,cAAc;EAAkB,cAAc;EAAkB,GAAI;EACnF;EACgB,CAAA;;AAIvB,kBAAkB,cAAc"}
1
+ {"version":3,"file":"HoverCardDropdown.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardDropdown/HoverCardDropdown.tsx"],"sourcesContent":["import { use } from 'react';\nimport { createEventHandler, useProps } from '../../../core';\nimport { Popover, PopoverDropdownProps } from '../../Popover';\nimport { useHoverCardContext } from '../HoverCard.context';\nimport { HoverCardGroupContext } from '../HoverCardGroup/HoverCardGroup';\n\nexport interface HoverCardDropdownProps extends PopoverDropdownProps {\n /** Dropdown content */\n children?: React.ReactNode;\n}\n\nexport function HoverCardDropdown(props: HoverCardDropdownProps) {\n const { children, onMouseEnter, onMouseLeave, ...others } = useProps(\n 'HoverCardDropdown',\n null,\n props\n );\n\n const ctx = useHoverCardContext();\n const groupCtx = use(HoverCardGroupContext);\n\n if (groupCtx.withinGroup && ctx.getFloatingProps && ctx.floating) {\n const floatingProps = ctx.getFloatingProps();\n\n return (\n <Popover.Dropdown\n ref={ctx.floating}\n {...floatingProps}\n onMouseEnter={createEventHandler<any>(onMouseEnter, floatingProps.onMouseEnter)}\n onMouseLeave={createEventHandler<any>(onMouseLeave, floatingProps.onMouseLeave)}\n {...others}\n >\n {children}\n </Popover.Dropdown>\n );\n }\n\n const handleMouseEnter = createEventHandler<any>(onMouseEnter, ctx.openDropdown);\n const handleMouseLeave = createEventHandler<any>(onMouseLeave!, ctx.closeDropdown);\n\n return (\n <Popover.Dropdown onMouseEnter={handleMouseEnter} onMouseLeave={handleMouseLeave} {...others}>\n {children}\n </Popover.Dropdown>\n );\n}\n\nHoverCardDropdown.displayName = '@mantine/core/HoverCardDropdown';\n"],"mappings":";;;;;;;;;AAWA,SAAgB,kBAAkB,OAA+B;CAC/D,MAAM,EAAE,UAAU,cAAc,cAAc,GAAG,WAAW,SAC1D,qBACA,MACA,KACF;CAEA,MAAM,MAAM,oBAAoB;CAGhC,IAFiB,IAAI,qBAEV,EAAE,eAAe,IAAI,oBAAoB,IAAI,UAAU;EAChE,MAAM,gBAAgB,IAAI,iBAAiB;EAE3C,OACE,oBAAC,QAAQ,UAAT;GACE,KAAK,IAAI;GACT,GAAI;GACJ,cAAc,mBAAwB,cAAc,cAAc,YAAY;GAC9E,cAAc,mBAAwB,cAAc,cAAc,YAAY;GAC9E,GAAI;GAEH;EACe,CAAA;CAEtB;CAEA,MAAM,mBAAmB,mBAAwB,cAAc,IAAI,YAAY;CAC/E,MAAM,mBAAmB,mBAAwB,cAAe,IAAI,aAAa;CAEjF,OACE,oBAAC,QAAQ,UAAT;EAAkB,cAAc;EAAkB,cAAc;EAAkB,GAAI;EACnF;CACe,CAAA;AAEtB;AAEA,kBAAkB,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCardGroup.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardGroup/HoverCardGroup.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport { FloatingDelayGroup } from '@floating-ui/react';\nimport { ExtendComponent, Factory, MantineThemeComponent, useProps } from '../../../core';\n\nexport interface HoverCardGroupContextValue {\n withinGroup: boolean;\n}\n\nexport const HoverCardGroupContext = createContext<HoverCardGroupContextValue>({\n withinGroup: false,\n});\n\nexport interface HoverCardGroupProps {\n /** `HoverCard` components */\n children: React.ReactNode;\n\n /** Open delay in ms */\n openDelay?: number;\n\n /** Close delay in ms */\n closeDelay?: number;\n}\n\nconst defaultProps = {\n openDelay: 0,\n closeDelay: 0,\n} satisfies Partial<HoverCardGroupProps>;\n\nexport function HoverCardGroup(props: HoverCardGroupProps) {\n const { openDelay, closeDelay, children } = useProps('HoverCardGroup', defaultProps, props);\n\n return (\n <HoverCardGroupContext value={{ withinGroup: true }}>\n <FloatingDelayGroup delay={{ open: openDelay, close: closeDelay }}>\n {children}\n </FloatingDelayGroup>\n </HoverCardGroupContext>\n );\n}\n\nexport type HoverCardGroupFactory = Factory<{\n props: HoverCardGroupProps;\n}>;\n\nHoverCardGroup.displayName = '@mantine/core/HoverCardGroup';\nHoverCardGroup.extend = (c: ExtendComponent<HoverCardGroupFactory>): MantineThemeComponent => c;\n"],"mappings":";;;;;;AAQA,MAAa,wBAAwB,cAA0C,EAC7E,aAAa,OACd,CAAC;AAaF,MAAM,eAAe;CACnB,WAAW;CACX,YAAY;CACb;AAED,SAAgB,eAAe,OAA4B;CACzD,MAAM,EAAE,WAAW,YAAY,aAAa,SAAS,kBAAkB,cAAc,MAAM;AAE3F,QACE,oBAAC,uBAAD;EAAuB,OAAO,EAAE,aAAa,MAAM;YACjD,oBAAC,oBAAD;GAAoB,OAAO;IAAE,MAAM;IAAW,OAAO;IAAY;GAC9D;GACkB,CAAA;EACC,CAAA;;AAQ5B,eAAe,cAAc;AAC7B,eAAe,UAAU,MAAqE"}
1
+ {"version":3,"file":"HoverCardGroup.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardGroup/HoverCardGroup.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport { FloatingDelayGroup } from '@floating-ui/react';\nimport { ExtendComponent, Factory, MantineThemeComponent, useProps } from '../../../core';\n\nexport interface HoverCardGroupContextValue {\n withinGroup: boolean;\n}\n\nexport const HoverCardGroupContext = createContext<HoverCardGroupContextValue>({\n withinGroup: false,\n});\n\nexport interface HoverCardGroupProps {\n /** `HoverCard` components */\n children: React.ReactNode;\n\n /** Open delay in ms */\n openDelay?: number;\n\n /** Close delay in ms */\n closeDelay?: number;\n}\n\nconst defaultProps = {\n openDelay: 0,\n closeDelay: 0,\n} satisfies Partial<HoverCardGroupProps>;\n\nexport function HoverCardGroup(props: HoverCardGroupProps) {\n const { openDelay, closeDelay, children } = useProps('HoverCardGroup', defaultProps, props);\n\n return (\n <HoverCardGroupContext value={{ withinGroup: true }}>\n <FloatingDelayGroup delay={{ open: openDelay, close: closeDelay }}>\n {children}\n </FloatingDelayGroup>\n </HoverCardGroupContext>\n );\n}\n\nexport type HoverCardGroupFactory = Factory<{\n props: HoverCardGroupProps;\n}>;\n\nHoverCardGroup.displayName = '@mantine/core/HoverCardGroup';\nHoverCardGroup.extend = (c: ExtendComponent<HoverCardGroupFactory>): MantineThemeComponent => c;\n"],"mappings":";;;;;;AAQA,MAAa,wBAAwB,cAA0C,EAC7E,aAAa,MACf,CAAC;AAaD,MAAM,eAAe;CACnB,WAAW;CACX,YAAY;AACd;AAEA,SAAgB,eAAe,OAA4B;CACzD,MAAM,EAAE,WAAW,YAAY,aAAa,SAAS,kBAAkB,cAAc,KAAK;CAE1F,OACE,oBAAC,uBAAD;EAAuB,OAAO,EAAE,aAAa,KAAK;YAChD,oBAAC,oBAAD;GAAoB,OAAO;IAAE,MAAM;IAAW,OAAO;GAAW;GAC7D;EACiB,CAAA;CACC,CAAA;AAE3B;AAMA,eAAe,cAAc;AAC7B,eAAe,UAAU,MAAqE"}
@@ -1 +1 @@
1
- {"version":3,"file":"HoverCardTarget.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardTarget/HoverCardTarget.tsx"],"sourcesContent":["import { cloneElement, use } from 'react';\nimport { createEventHandler, getSingleElementChild, useProps } from '../../../core';\nimport { Popover, PopoverTargetProps } from '../../Popover';\nimport { useHoverCardContext } from '../HoverCard.context';\nimport { HoverCardGroupContext } from '../HoverCardGroup/HoverCardGroup';\n\nexport interface HoverCardTargetProps extends PopoverTargetProps {\n /**\n * Name of the prop to wrap event listeners in.\n * Use when the target component expects event listeners in a nested object.\n * For example, some components expect `componentProps={{ onMouseEnter, onMouseLeave }}`.\n * @default undefined (event listeners passed directly to component)\n */\n eventPropsWrapperName?: string;\n}\n\nconst defaultProps = {\n refProp: 'ref',\n} satisfies Partial<HoverCardTargetProps>;\n\nexport function HoverCardTarget(props: HoverCardTargetProps) {\n const { children, refProp, eventPropsWrapperName, ...others } = useProps(\n 'HoverCardTarget',\n defaultProps,\n props\n );\n\n const child = getSingleElementChild(children);\n if (!child) {\n throw new Error(\n 'HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported'\n );\n }\n\n const ctx = useHoverCardContext();\n const groupContext = use(HoverCardGroupContext);\n\n if (groupContext.withinGroup && ctx.getReferenceProps && ctx.reference) {\n const referenceProps = ctx.getReferenceProps();\n\n return (\n <Popover.Target refProp={refProp} {...others}>\n {cloneElement(\n child,\n eventPropsWrapperName\n ? { [eventPropsWrapperName]: { ...referenceProps, ref: ctx.reference } }\n : { ...referenceProps, ref: ctx.reference }\n )}\n </Popover.Target>\n );\n }\n\n const onMouseEnter = createEventHandler((child.props as any).onMouseEnter, ctx.openDropdown);\n const onMouseLeave = createEventHandler((child.props as any).onMouseLeave, ctx.closeDropdown);\n\n const eventListeners = { onMouseEnter, onMouseLeave };\n\n return (\n <Popover.Target refProp={refProp} {...others}>\n {cloneElement(\n child,\n eventPropsWrapperName ? { [eventPropsWrapperName]: eventListeners } : eventListeners\n )}\n </Popover.Target>\n );\n}\n\nHoverCardTarget.displayName = '@mantine/core/HoverCardTarget';\n"],"mappings":";;;;;;;;;;AAgBA,MAAM,eAAe,EACnB,SAAS,OACV;AAED,SAAgB,gBAAgB,OAA6B;CAC3D,MAAM,EAAE,UAAU,SAAS,uBAAuB,GAAG,WAAW,SAC9D,mBACA,cACA,MACD;CAED,MAAM,QAAQ,sBAAsB,SAAS;AAC7C,KAAI,CAAC,MACH,OAAM,IAAI,MACR,qKACD;CAGH,MAAM,MAAM,qBAAqB;AAGjC,KAFqB,IAAI,sBAAsB,CAE9B,eAAe,IAAI,qBAAqB,IAAI,WAAW;EACtE,MAAM,iBAAiB,IAAI,mBAAmB;AAE9C,SACE,oBAAC,QAAQ,QAAT;GAAyB;GAAS,GAAI;aACnC,aACC,OACA,wBACI,GAAG,wBAAwB;IAAE,GAAG;IAAgB,KAAK,IAAI;IAAW,EAAE,GACtE;IAAE,GAAG;IAAgB,KAAK,IAAI;IAAW,CAC9C;GACc,CAAA;;CAOrB,MAAM,iBAAiB;EAAE,cAHJ,mBAAoB,MAAM,MAAc,cAAc,IAAI,aAAa;EAGrD,cAFlB,mBAAoB,MAAM,MAAc,cAAc,IAAI,cAAc;EAExC;AAErD,QACE,oBAAC,QAAQ,QAAT;EAAyB;EAAS,GAAI;YACnC,aACC,OACA,wBAAwB,GAAG,wBAAwB,gBAAgB,GAAG,eACvE;EACc,CAAA;;AAIrB,gBAAgB,cAAc"}
1
+ {"version":3,"file":"HoverCardTarget.mjs","names":[],"sources":["../../../../src/components/HoverCard/HoverCardTarget/HoverCardTarget.tsx"],"sourcesContent":["import { cloneElement, use } from 'react';\nimport { createEventHandler, getSingleElementChild, useProps } from '../../../core';\nimport { Popover, PopoverTargetProps } from '../../Popover';\nimport { useHoverCardContext } from '../HoverCard.context';\nimport { HoverCardGroupContext } from '../HoverCardGroup/HoverCardGroup';\n\nexport interface HoverCardTargetProps extends PopoverTargetProps {\n /**\n * Name of the prop to wrap event listeners in.\n * Use when the target component expects event listeners in a nested object.\n * For example, some components expect `componentProps={{ onMouseEnter, onMouseLeave }}`.\n * @default undefined (event listeners passed directly to component)\n */\n eventPropsWrapperName?: string;\n}\n\nconst defaultProps = {\n refProp: 'ref',\n} satisfies Partial<HoverCardTargetProps>;\n\nexport function HoverCardTarget(props: HoverCardTargetProps) {\n const { children, refProp, eventPropsWrapperName, ...others } = useProps(\n 'HoverCardTarget',\n defaultProps,\n props\n );\n\n const child = getSingleElementChild(children);\n if (!child) {\n throw new Error(\n 'HoverCard.Target component children should be an element or a component that accepts ref. Fragments, strings, numbers and other primitive values are not supported'\n );\n }\n\n const ctx = useHoverCardContext();\n const groupContext = use(HoverCardGroupContext);\n\n if (groupContext.withinGroup && ctx.getReferenceProps && ctx.reference) {\n const referenceProps = ctx.getReferenceProps();\n\n return (\n <Popover.Target refProp={refProp} {...others}>\n {cloneElement(\n child,\n eventPropsWrapperName\n ? { [eventPropsWrapperName]: { ...referenceProps, ref: ctx.reference } }\n : { ...referenceProps, ref: ctx.reference }\n )}\n </Popover.Target>\n );\n }\n\n const onMouseEnter = createEventHandler((child.props as any).onMouseEnter, ctx.openDropdown);\n const onMouseLeave = createEventHandler((child.props as any).onMouseLeave, ctx.closeDropdown);\n\n const eventListeners = { onMouseEnter, onMouseLeave };\n\n return (\n <Popover.Target refProp={refProp} {...others}>\n {cloneElement(\n child,\n eventPropsWrapperName ? { [eventPropsWrapperName]: eventListeners } : eventListeners\n )}\n </Popover.Target>\n );\n}\n\nHoverCardTarget.displayName = '@mantine/core/HoverCardTarget';\n"],"mappings":";;;;;;;;;;AAgBA,MAAM,eAAe,EACnB,SAAS,MACX;AAEA,SAAgB,gBAAgB,OAA6B;CAC3D,MAAM,EAAE,UAAU,SAAS,uBAAuB,GAAG,WAAW,SAC9D,mBACA,cACA,KACF;CAEA,MAAM,QAAQ,sBAAsB,QAAQ;CAC5C,IAAI,CAAC,OACH,MAAM,IAAI,MACR,oKACF;CAGF,MAAM,MAAM,oBAAoB;CAGhC,IAFqB,IAAI,qBAEV,EAAE,eAAe,IAAI,qBAAqB,IAAI,WAAW;EACtE,MAAM,iBAAiB,IAAI,kBAAkB;EAE7C,OACE,oBAAC,QAAQ,QAAT;GAAyB;GAAS,GAAI;aACnC,aACC,OACA,wBACI,GAAG,wBAAwB;IAAE,GAAG;IAAgB,KAAK,IAAI;GAAU,EAAE,IACrE;IAAE,GAAG;IAAgB,KAAK,IAAI;GAAU,CAC9C;EACc,CAAA;CAEpB;CAKA,MAAM,iBAAiB;EAAE,cAHJ,mBAAoB,MAAM,MAAc,cAAc,IAAI,YAG3C;EAAG,cAFlB,mBAAoB,MAAM,MAAc,cAAc,IAAI,aAE7B;CAAE;CAEpD,OACE,oBAAC,QAAQ,QAAT;EAAyB;EAAS,GAAI;YACnC,aACC,OACA,wBAAwB,GAAG,wBAAwB,eAAe,IAAI,cACxE;CACc,CAAA;AAEpB;AAEA,gBAAgB,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-hover-card.mjs","names":["useId"],"sources":["../../../src/components/HoverCard/use-hover-card.ts"],"sourcesContent":["import { use, useCallback, useEffect, useRef, useState } from 'react';\nimport {\n useDelayGroup,\n useDismiss,\n useFloating,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react';\nimport { useId } from '@mantine/hooks';\nimport { HoverCardGroupContext } from './HoverCardGroup/HoverCardGroup';\n\ninterface UseHoverCard {\n openDelay?: number;\n closeDelay?: number;\n opened?: boolean;\n defaultOpened?: boolean;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport function useHoverCard(settings: UseHoverCard) {\n const [uncontrolledOpened, setUncontrolledOpened] = useState(settings.defaultOpened);\n const controlled = typeof settings.opened === 'boolean';\n const opened = controlled ? settings.opened : uncontrolledOpened;\n const withinGroup = use(HoverCardGroupContext).withinGroup;\n const uid = useId();\n\n const openTimeout = useRef(-1);\n const closeTimeout = useRef(-1);\n\n const clearTimeouts = useCallback(() => {\n window.clearTimeout(openTimeout.current);\n window.clearTimeout(closeTimeout.current);\n }, []);\n\n const onChange = useCallback(\n (_opened: boolean) => {\n setUncontrolledOpened(_opened);\n\n if (_opened) {\n setCurrentId(uid);\n settings.onOpen?.();\n } else {\n settings.onClose?.();\n }\n },\n [uid, settings.onOpen, settings.onClose]\n );\n\n const { context, refs } = useFloating({\n open: opened,\n onOpenChange: onChange,\n });\n\n const { delay: groupDelay, setCurrentId } = useDelayGroup(context, { id: uid });\n\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(context, {\n enabled: true,\n delay: withinGroup ? groupDelay : { open: settings.openDelay, close: settings.closeDelay },\n }),\n useRole(context, { role: 'dialog' }),\n useDismiss(context, { enabled: withinGroup }),\n ]);\n\n const openDropdown = useCallback(() => {\n if (withinGroup) {\n return; // Group mode handles this automatically\n }\n\n clearTimeouts();\n if (settings.openDelay === 0 || settings.openDelay === undefined) {\n onChange(true);\n } else {\n openTimeout.current = window.setTimeout(() => onChange(true), settings.openDelay);\n }\n }, [withinGroup, clearTimeouts, settings.openDelay, onChange]);\n\n const closeDropdown = useCallback(() => {\n if (withinGroup) {\n return; // Group mode handles this automatically\n }\n\n clearTimeouts();\n if (settings.closeDelay === 0 || settings.closeDelay === undefined) {\n onChange(false);\n } else {\n closeTimeout.current = window.setTimeout(() => onChange(false), settings.closeDelay);\n }\n }, [withinGroup, clearTimeouts, settings.closeDelay, onChange]);\n\n useEffect(() => () => clearTimeouts(), [clearTimeouts]);\n\n return {\n opened,\n reference: refs.setReference,\n floating: refs.setFloating,\n getReferenceProps,\n getFloatingProps,\n openDropdown,\n closeDropdown,\n };\n}\n"],"mappings":";;;;;;AAqBA,SAAgB,aAAa,UAAwB;CACnD,MAAM,CAAC,oBAAoB,yBAAyB,SAAS,SAAS,cAAc;CAEpF,MAAM,SADa,OAAO,SAAS,WAAW,YAClB,SAAS,SAAS;CAC9C,MAAM,cAAc,IAAI,sBAAsB,CAAC;CAC/C,MAAM,MAAMA,SAAO;CAEnB,MAAM,cAAc,OAAO,GAAG;CAC9B,MAAM,eAAe,OAAO,GAAG;CAE/B,MAAM,gBAAgB,kBAAkB;AACtC,SAAO,aAAa,YAAY,QAAQ;AACxC,SAAO,aAAa,aAAa,QAAQ;IACxC,EAAE,CAAC;CAEN,MAAM,WAAW,aACd,YAAqB;AACpB,wBAAsB,QAAQ;AAE9B,MAAI,SAAS;AACX,gBAAa,IAAI;AACjB,YAAS,UAAU;QAEnB,UAAS,WAAW;IAGxB;EAAC;EAAK,SAAS;EAAQ,SAAS;EAAQ,CACzC;CAED,MAAM,EAAE,SAAS,SAAS,YAAY;EACpC,MAAM;EACN,cAAc;EACf,CAAC;CAEF,MAAM,EAAE,OAAO,YAAY,iBAAiB,cAAc,SAAS,EAAE,IAAI,KAAK,CAAC;CAE/E,MAAM,EAAE,mBAAmB,qBAAqB,gBAAgB;EAC9D,SAAS,SAAS;GAChB,SAAS;GACT,OAAO,cAAc,aAAa;IAAE,MAAM,SAAS;IAAW,OAAO,SAAS;IAAY;GAC3F,CAAC;EACF,QAAQ,SAAS,EAAE,MAAM,UAAU,CAAC;EACpC,WAAW,SAAS,EAAE,SAAS,aAAa,CAAC;EAC9C,CAAC;CAEF,MAAM,eAAe,kBAAkB;AACrC,MAAI,YACF;AAGF,iBAAe;AACf,MAAI,SAAS,cAAc,KAAK,SAAS,cAAc,KAAA,EACrD,UAAS,KAAK;MAEd,aAAY,UAAU,OAAO,iBAAiB,SAAS,KAAK,EAAE,SAAS,UAAU;IAElF;EAAC;EAAa;EAAe,SAAS;EAAW;EAAS,CAAC;CAE9D,MAAM,gBAAgB,kBAAkB;AACtC,MAAI,YACF;AAGF,iBAAe;AACf,MAAI,SAAS,eAAe,KAAK,SAAS,eAAe,KAAA,EACvD,UAAS,MAAM;MAEf,cAAa,UAAU,OAAO,iBAAiB,SAAS,MAAM,EAAE,SAAS,WAAW;IAErF;EAAC;EAAa;EAAe,SAAS;EAAY;EAAS,CAAC;AAE/D,uBAAsB,eAAe,EAAE,CAAC,cAAc,CAAC;AAEvD,QAAO;EACL;EACA,WAAW,KAAK;EAChB,UAAU,KAAK;EACf;EACA;EACA;EACA;EACD"}
1
+ {"version":3,"file":"use-hover-card.mjs","names":["useId"],"sources":["../../../src/components/HoverCard/use-hover-card.ts"],"sourcesContent":["import { use, useCallback, useEffect, useRef, useState } from 'react';\nimport {\n useDelayGroup,\n useDismiss,\n useFloating,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react';\nimport { useId } from '@mantine/hooks';\nimport { HoverCardGroupContext } from './HoverCardGroup/HoverCardGroup';\n\ninterface UseHoverCard {\n openDelay?: number;\n closeDelay?: number;\n opened?: boolean;\n defaultOpened?: boolean;\n onOpen?: () => void;\n onClose?: () => void;\n}\n\nexport function useHoverCard(settings: UseHoverCard) {\n const [uncontrolledOpened, setUncontrolledOpened] = useState(settings.defaultOpened);\n const controlled = typeof settings.opened === 'boolean';\n const opened = controlled ? settings.opened : uncontrolledOpened;\n const withinGroup = use(HoverCardGroupContext).withinGroup;\n const uid = useId();\n\n const openTimeout = useRef(-1);\n const closeTimeout = useRef(-1);\n\n const clearTimeouts = useCallback(() => {\n window.clearTimeout(openTimeout.current);\n window.clearTimeout(closeTimeout.current);\n }, []);\n\n const onChange = useCallback(\n (_opened: boolean) => {\n setUncontrolledOpened(_opened);\n\n if (_opened) {\n setCurrentId(uid);\n settings.onOpen?.();\n } else {\n settings.onClose?.();\n }\n },\n [uid, settings.onOpen, settings.onClose]\n );\n\n const { context, refs } = useFloating({\n open: opened,\n onOpenChange: onChange,\n });\n\n const { delay: groupDelay, setCurrentId } = useDelayGroup(context, { id: uid });\n\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(context, {\n enabled: true,\n delay: withinGroup ? groupDelay : { open: settings.openDelay, close: settings.closeDelay },\n }),\n useRole(context, { role: 'dialog' }),\n useDismiss(context, { enabled: withinGroup }),\n ]);\n\n const openDropdown = useCallback(() => {\n if (withinGroup) {\n return; // Group mode handles this automatically\n }\n\n clearTimeouts();\n if (settings.openDelay === 0 || settings.openDelay === undefined) {\n onChange(true);\n } else {\n openTimeout.current = window.setTimeout(() => onChange(true), settings.openDelay);\n }\n }, [withinGroup, clearTimeouts, settings.openDelay, onChange]);\n\n const closeDropdown = useCallback(() => {\n if (withinGroup) {\n return; // Group mode handles this automatically\n }\n\n clearTimeouts();\n if (settings.closeDelay === 0 || settings.closeDelay === undefined) {\n onChange(false);\n } else {\n closeTimeout.current = window.setTimeout(() => onChange(false), settings.closeDelay);\n }\n }, [withinGroup, clearTimeouts, settings.closeDelay, onChange]);\n\n useEffect(() => () => clearTimeouts(), [clearTimeouts]);\n\n return {\n opened,\n reference: refs.setReference,\n floating: refs.setFloating,\n getReferenceProps,\n getFloatingProps,\n openDropdown,\n closeDropdown,\n };\n}\n"],"mappings":";;;;;;AAqBA,SAAgB,aAAa,UAAwB;CACnD,MAAM,CAAC,oBAAoB,yBAAyB,SAAS,SAAS,aAAa;CAEnF,MAAM,SADa,OAAO,SAAS,WAAW,YAClB,SAAS,SAAS;CAC9C,MAAM,cAAc,IAAI,qBAAqB,EAAE;CAC/C,MAAM,MAAMA,QAAM;CAElB,MAAM,cAAc,OAAO,EAAE;CAC7B,MAAM,eAAe,OAAO,EAAE;CAE9B,MAAM,gBAAgB,kBAAkB;EACtC,OAAO,aAAa,YAAY,OAAO;EACvC,OAAO,aAAa,aAAa,OAAO;CAC1C,GAAG,CAAC,CAAC;CAEL,MAAM,WAAW,aACd,YAAqB;EACpB,sBAAsB,OAAO;EAE7B,IAAI,SAAS;GACX,aAAa,GAAG;GAChB,SAAS,SAAS;EACpB,OACE,SAAS,UAAU;CAEvB,GACA;EAAC;EAAK,SAAS;EAAQ,SAAS;CAAO,CACzC;CAEA,MAAM,EAAE,SAAS,SAAS,YAAY;EACpC,MAAM;EACN,cAAc;CAChB,CAAC;CAED,MAAM,EAAE,OAAO,YAAY,iBAAiB,cAAc,SAAS,EAAE,IAAI,IAAI,CAAC;CAE9E,MAAM,EAAE,mBAAmB,qBAAqB,gBAAgB;EAC9D,SAAS,SAAS;GAChB,SAAS;GACT,OAAO,cAAc,aAAa;IAAE,MAAM,SAAS;IAAW,OAAO,SAAS;GAAW;EAC3F,CAAC;EACD,QAAQ,SAAS,EAAE,MAAM,SAAS,CAAC;EACnC,WAAW,SAAS,EAAE,SAAS,YAAY,CAAC;CAC9C,CAAC;CAED,MAAM,eAAe,kBAAkB;EACrC,IAAI,aACF;EAGF,cAAc;EACd,IAAI,SAAS,cAAc,KAAK,SAAS,cAAc,KAAA,GACrD,SAAS,IAAI;OAEb,YAAY,UAAU,OAAO,iBAAiB,SAAS,IAAI,GAAG,SAAS,SAAS;CAEpF,GAAG;EAAC;EAAa;EAAe,SAAS;EAAW;CAAQ,CAAC;CAE7D,MAAM,gBAAgB,kBAAkB;EACtC,IAAI,aACF;EAGF,cAAc;EACd,IAAI,SAAS,eAAe,KAAK,SAAS,eAAe,KAAA,GACvD,SAAS,KAAK;OAEd,aAAa,UAAU,OAAO,iBAAiB,SAAS,KAAK,GAAG,SAAS,UAAU;CAEvF,GAAG;EAAC;EAAa;EAAe,SAAS;EAAY;CAAQ,CAAC;CAE9D,sBAAsB,cAAc,GAAG,CAAC,aAAa,CAAC;CAEtD,OAAO;EACL;EACA,WAAW,KAAK;EAChB,UAAU,KAAK;EACf;EACA;EACA;EACA;CACF;AACF"}