@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
@@ -8,6 +8,7 @@ function isNodeIndeterminate(value, data, checkedState) {
8
8
  }
9
9
  const memoizedIsNodeIndeterminate = require_memoize.memoize(isNodeIndeterminate);
10
10
  //#endregion
11
+ exports.isNodeIndeterminate = isNodeIndeterminate;
11
12
  exports.memoizedIsNodeIndeterminate = memoizedIsNodeIndeterminate;
12
13
 
13
14
  //# sourceMappingURL=is-node-indeterminate.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"is-node-indeterminate.cjs","names":["getAllCheckedNodes","memoize"],"sources":["../../../../src/components/Tree/is-node-indeterminate/is-node-indeterminate.ts"],"sourcesContent":["import { memoize } from '../../../core';\nimport { getAllCheckedNodes } from '../get-all-checked-nodes/get-all-checked-nodes';\nimport type { TreeNodeData } from '../Tree';\n\nexport function isNodeIndeterminate(\n value: string,\n data: TreeNodeData[],\n checkedState: string[]\n): boolean {\n if (checkedState.length === 0) {\n return false;\n }\n\n const checkedNodes = getAllCheckedNodes(data, checkedState).result;\n return checkedNodes.some((node) => node.value === value && node.indeterminate);\n}\n\nexport const memoizedIsNodeIndeterminate = memoize(isNodeIndeterminate);\n"],"mappings":";;;;AAIA,SAAgB,oBACd,OACA,MACA,cACS;AACT,KAAI,aAAa,WAAW,EAC1B,QAAO;AAIT,QADqBA,8BAAAA,mBAAmB,MAAM,aAAa,CAAC,OACxC,MAAM,SAAS,KAAK,UAAU,SAAS,KAAK,cAAc;;AAGhF,MAAa,8BAA8BC,gBAAAA,QAAQ,oBAAoB"}
1
+ {"version":3,"file":"is-node-indeterminate.cjs","names":["getAllCheckedNodes","memoize"],"sources":["../../../../src/components/Tree/is-node-indeterminate/is-node-indeterminate.ts"],"sourcesContent":["import { memoize } from '../../../core';\nimport { getAllCheckedNodes } from '../get-all-checked-nodes/get-all-checked-nodes';\nimport type { TreeNodeData } from '../Tree';\n\nexport function isNodeIndeterminate(\n value: string,\n data: TreeNodeData[],\n checkedState: string[]\n): boolean {\n if (checkedState.length === 0) {\n return false;\n }\n\n const checkedNodes = getAllCheckedNodes(data, checkedState).result;\n return checkedNodes.some((node) => node.value === value && node.indeterminate);\n}\n\nexport const memoizedIsNodeIndeterminate = memoize(isNodeIndeterminate);\n"],"mappings":";;;;AAIA,SAAgB,oBACd,OACA,MACA,cACS;CACT,IAAI,aAAa,WAAW,GAC1B,OAAO;CAIT,OADqBA,8BAAAA,mBAAmB,MAAM,YAAY,EAAE,OACxC,MAAM,SAAS,KAAK,UAAU,SAAS,KAAK,aAAa;AAC/E;AAEA,MAAa,8BAA8BC,gBAAAA,QAAQ,mBAAmB"}
@@ -1 +1 @@
1
- {"version":3,"file":"merge-async-children.cjs","names":[],"sources":["../../../../src/components/Tree/merge-async-children/merge-async-children.ts"],"sourcesContent":["import type { TreeNodeData } from '../Tree';\n\nexport function mergeAsyncChildren(\n data: TreeNodeData[],\n parentValue: string,\n children: TreeNodeData[]\n): TreeNodeData[] {\n let changed = false;\n\n const result = data.map((node) => {\n if (node.value === parentValue) {\n changed = true;\n const merged: TreeNodeData = { ...node, children };\n delete merged.hasChildren;\n return merged;\n }\n\n if (Array.isArray(node.children)) {\n const updatedChildren = mergeAsyncChildren(node.children, parentValue, children);\n if (updatedChildren !== node.children) {\n changed = true;\n return { ...node, children: updatedChildren };\n }\n }\n\n return node;\n });\n\n return changed ? result : data;\n}\n"],"mappings":";;AAEA,SAAgB,mBACd,MACA,aACA,UACgB;CAChB,IAAI,UAAU;CAEd,MAAM,SAAS,KAAK,KAAK,SAAS;AAChC,MAAI,KAAK,UAAU,aAAa;AAC9B,aAAU;GACV,MAAM,SAAuB;IAAE,GAAG;IAAM;IAAU;AAClD,UAAO,OAAO;AACd,UAAO;;AAGT,MAAI,MAAM,QAAQ,KAAK,SAAS,EAAE;GAChC,MAAM,kBAAkB,mBAAmB,KAAK,UAAU,aAAa,SAAS;AAChF,OAAI,oBAAoB,KAAK,UAAU;AACrC,cAAU;AACV,WAAO;KAAE,GAAG;KAAM,UAAU;KAAiB;;;AAIjD,SAAO;GACP;AAEF,QAAO,UAAU,SAAS"}
1
+ {"version":3,"file":"merge-async-children.cjs","names":[],"sources":["../../../../src/components/Tree/merge-async-children/merge-async-children.ts"],"sourcesContent":["import type { TreeNodeData } from '../Tree';\n\nexport function mergeAsyncChildren(\n data: TreeNodeData[],\n parentValue: string,\n children: TreeNodeData[]\n): TreeNodeData[] {\n let changed = false;\n\n const result = data.map((node) => {\n if (node.value === parentValue) {\n changed = true;\n const merged: TreeNodeData = { ...node, children };\n delete merged.hasChildren;\n return merged;\n }\n\n if (Array.isArray(node.children)) {\n const updatedChildren = mergeAsyncChildren(node.children, parentValue, children);\n if (updatedChildren !== node.children) {\n changed = true;\n return { ...node, children: updatedChildren };\n }\n }\n\n return node;\n });\n\n return changed ? result : data;\n}\n"],"mappings":";;AAEA,SAAgB,mBACd,MACA,aACA,UACgB;CAChB,IAAI,UAAU;CAEd,MAAM,SAAS,KAAK,KAAK,SAAS;EAChC,IAAI,KAAK,UAAU,aAAa;GAC9B,UAAU;GACV,MAAM,SAAuB;IAAE,GAAG;IAAM;GAAS;GACjD,OAAO,OAAO;GACd,OAAO;EACT;EAEA,IAAI,MAAM,QAAQ,KAAK,QAAQ,GAAG;GAChC,MAAM,kBAAkB,mBAAmB,KAAK,UAAU,aAAa,QAAQ;GAC/E,IAAI,oBAAoB,KAAK,UAAU;IACrC,UAAU;IACV,OAAO;KAAE,GAAG;KAAM,UAAU;IAAgB;GAC9C;EACF;EAEA,OAAO;CACT,CAAC;CAED,OAAO,UAAU,SAAS;AAC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"move-tree-node.cjs","names":["findTreeNode"],"sources":["../../../../src/components/Tree/move-tree-node/move-tree-node.ts"],"sourcesContent":["import { findTreeNode } from '../get-children-nodes-values/get-children-nodes-values';\nimport type { TreeNodeData } from '../Tree';\n\nexport type TreeDragDropPosition = 'before' | 'after' | 'inside';\n\nexport interface TreeDragDropPayload {\n /** Value of the dragged node */\n draggedNode: string;\n\n /** Value of the target node */\n targetNode: string;\n\n /** Position relative to the target node */\n position: TreeDragDropPosition;\n}\n\nfunction isDescendant(data: TreeNodeData[], ancestorValue: string, value: string): boolean {\n const ancestor = findTreeNode(ancestorValue, data);\n if (!ancestor || !ancestor.children) {\n return false;\n }\n\n function check(nodes: TreeNodeData[]): boolean {\n for (const node of nodes) {\n if (node.value === value) {\n return true;\n }\n\n if (node.children && check(node.children)) {\n return true;\n }\n }\n\n return false;\n }\n\n return check(ancestor.children);\n}\n\nfunction removeNode(\n data: TreeNodeData[],\n value: string\n): { data: TreeNodeData[]; removed: TreeNodeData | null } {\n let removed: TreeNodeData | null = null;\n\n const newData = data.reduce<TreeNodeData[]>((acc, node) => {\n if (node.value === value) {\n removed = { ...node };\n return acc;\n }\n\n if (node.children) {\n const result = removeNode(node.children, value);\n if (result.removed) {\n removed = result.removed;\n acc.push({ ...node, children: result.data });\n } else {\n acc.push(node);\n }\n } else {\n acc.push(node);\n }\n\n return acc;\n }, []);\n\n return { data: newData, removed };\n}\n\nfunction insertNode(\n data: TreeNodeData[],\n node: TreeNodeData,\n targetValue: string,\n position: TreeDragDropPosition\n): TreeNodeData[] {\n if (position === 'inside') {\n return data.map((item) => {\n if (item.value === targetValue) {\n return { ...item, children: [...(item.children || []), node] };\n }\n\n if (item.children) {\n return { ...item, children: insertNode(item.children, node, targetValue, position) };\n }\n\n return item;\n });\n }\n\n const targetIndex = data.findIndex((item) => item.value === targetValue);\n\n if (targetIndex !== -1) {\n const result = [...data];\n const insertIndex = position === 'before' ? targetIndex : targetIndex + 1;\n result.splice(insertIndex, 0, node);\n return result;\n }\n\n return data.map((item) => {\n if (item.children) {\n return { ...item, children: insertNode(item.children, node, targetValue, position) };\n }\n\n return item;\n });\n}\n\nexport function moveTreeNode(data: TreeNodeData[], payload: TreeDragDropPayload): TreeNodeData[] {\n const { draggedNode, targetNode, position } = payload;\n\n if (draggedNode === targetNode) {\n return data;\n }\n\n if (!findTreeNode(targetNode, data)) {\n return data;\n }\n\n if (isDescendant(data, draggedNode, targetNode)) {\n return data;\n }\n\n const { data: dataWithout, removed } = removeNode(data, draggedNode);\n\n if (!removed) {\n return data;\n }\n\n return insertNode(dataWithout, removed, targetNode, position);\n}\n"],"mappings":";;;AAgBA,SAAS,aAAa,MAAsB,eAAuB,OAAwB;CACzF,MAAM,WAAWA,kCAAAA,aAAa,eAAe,KAAK;AAClD,KAAI,CAAC,YAAY,CAAC,SAAS,SACzB,QAAO;CAGT,SAAS,MAAM,OAAgC;AAC7C,OAAK,MAAM,QAAQ,OAAO;AACxB,OAAI,KAAK,UAAU,MACjB,QAAO;AAGT,OAAI,KAAK,YAAY,MAAM,KAAK,SAAS,CACvC,QAAO;;AAIX,SAAO;;AAGT,QAAO,MAAM,SAAS,SAAS;;AAGjC,SAAS,WACP,MACA,OACwD;CACxD,IAAI,UAA+B;AAuBnC,QAAO;EAAE,MArBO,KAAK,QAAwB,KAAK,SAAS;AACzD,OAAI,KAAK,UAAU,OAAO;AACxB,cAAU,EAAE,GAAG,MAAM;AACrB,WAAO;;AAGT,OAAI,KAAK,UAAU;IACjB,MAAM,SAAS,WAAW,KAAK,UAAU,MAAM;AAC/C,QAAI,OAAO,SAAS;AAClB,eAAU,OAAO;AACjB,SAAI,KAAK;MAAE,GAAG;MAAM,UAAU,OAAO;MAAM,CAAC;UAE5C,KAAI,KAAK,KAAK;SAGhB,KAAI,KAAK,KAAK;AAGhB,UAAO;KACN,EAAE,CAAC;EAEkB;EAAS;;AAGnC,SAAS,WACP,MACA,MACA,aACA,UACgB;AAChB,KAAI,aAAa,SACf,QAAO,KAAK,KAAK,SAAS;AACxB,MAAI,KAAK,UAAU,YACjB,QAAO;GAAE,GAAG;GAAM,UAAU,CAAC,GAAI,KAAK,YAAY,EAAE,EAAG,KAAK;GAAE;AAGhE,MAAI,KAAK,SACP,QAAO;GAAE,GAAG;GAAM,UAAU,WAAW,KAAK,UAAU,MAAM,aAAa,SAAS;GAAE;AAGtF,SAAO;GACP;CAGJ,MAAM,cAAc,KAAK,WAAW,SAAS,KAAK,UAAU,YAAY;AAExE,KAAI,gBAAgB,IAAI;EACtB,MAAM,SAAS,CAAC,GAAG,KAAK;EACxB,MAAM,cAAc,aAAa,WAAW,cAAc,cAAc;AACxE,SAAO,OAAO,aAAa,GAAG,KAAK;AACnC,SAAO;;AAGT,QAAO,KAAK,KAAK,SAAS;AACxB,MAAI,KAAK,SACP,QAAO;GAAE,GAAG;GAAM,UAAU,WAAW,KAAK,UAAU,MAAM,aAAa,SAAS;GAAE;AAGtF,SAAO;GACP;;AAGJ,SAAgB,aAAa,MAAsB,SAA8C;CAC/F,MAAM,EAAE,aAAa,YAAY,aAAa;AAE9C,KAAI,gBAAgB,WAClB,QAAO;AAGT,KAAI,CAACA,kCAAAA,aAAa,YAAY,KAAK,CACjC,QAAO;AAGT,KAAI,aAAa,MAAM,aAAa,WAAW,CAC7C,QAAO;CAGT,MAAM,EAAE,MAAM,aAAa,YAAY,WAAW,MAAM,YAAY;AAEpE,KAAI,CAAC,QACH,QAAO;AAGT,QAAO,WAAW,aAAa,SAAS,YAAY,SAAS"}
1
+ {"version":3,"file":"move-tree-node.cjs","names":["findTreeNode"],"sources":["../../../../src/components/Tree/move-tree-node/move-tree-node.ts"],"sourcesContent":["import { findTreeNode } from '../get-children-nodes-values/get-children-nodes-values';\nimport type { TreeNodeData } from '../Tree';\n\nexport type TreeDragDropPosition = 'before' | 'after' | 'inside';\n\nexport interface TreeDragDropPayload {\n /** Value of the dragged node */\n draggedNode: string;\n\n /** Value of the target node */\n targetNode: string;\n\n /** Position relative to the target node */\n position: TreeDragDropPosition;\n}\n\nfunction isDescendant(data: TreeNodeData[], ancestorValue: string, value: string): boolean {\n const ancestor = findTreeNode(ancestorValue, data);\n if (!ancestor || !ancestor.children) {\n return false;\n }\n\n function check(nodes: TreeNodeData[]): boolean {\n for (const node of nodes) {\n if (node.value === value) {\n return true;\n }\n\n if (node.children && check(node.children)) {\n return true;\n }\n }\n\n return false;\n }\n\n return check(ancestor.children);\n}\n\nfunction removeNode(\n data: TreeNodeData[],\n value: string\n): { data: TreeNodeData[]; removed: TreeNodeData | null } {\n let removed: TreeNodeData | null = null;\n\n const newData = data.reduce<TreeNodeData[]>((acc, node) => {\n if (node.value === value) {\n removed = { ...node };\n return acc;\n }\n\n if (node.children) {\n const result = removeNode(node.children, value);\n if (result.removed) {\n removed = result.removed;\n acc.push({ ...node, children: result.data });\n } else {\n acc.push(node);\n }\n } else {\n acc.push(node);\n }\n\n return acc;\n }, []);\n\n return { data: newData, removed };\n}\n\nfunction insertNode(\n data: TreeNodeData[],\n node: TreeNodeData,\n targetValue: string,\n position: TreeDragDropPosition\n): TreeNodeData[] {\n if (position === 'inside') {\n return data.map((item) => {\n if (item.value === targetValue) {\n return { ...item, children: [...(item.children || []), node] };\n }\n\n if (item.children) {\n return { ...item, children: insertNode(item.children, node, targetValue, position) };\n }\n\n return item;\n });\n }\n\n const targetIndex = data.findIndex((item) => item.value === targetValue);\n\n if (targetIndex !== -1) {\n const result = [...data];\n const insertIndex = position === 'before' ? targetIndex : targetIndex + 1;\n result.splice(insertIndex, 0, node);\n return result;\n }\n\n return data.map((item) => {\n if (item.children) {\n return { ...item, children: insertNode(item.children, node, targetValue, position) };\n }\n\n return item;\n });\n}\n\nexport function moveTreeNode(data: TreeNodeData[], payload: TreeDragDropPayload): TreeNodeData[] {\n const { draggedNode, targetNode, position } = payload;\n\n if (draggedNode === targetNode) {\n return data;\n }\n\n if (!findTreeNode(targetNode, data)) {\n return data;\n }\n\n if (isDescendant(data, draggedNode, targetNode)) {\n return data;\n }\n\n const { data: dataWithout, removed } = removeNode(data, draggedNode);\n\n if (!removed) {\n return data;\n }\n\n return insertNode(dataWithout, removed, targetNode, position);\n}\n"],"mappings":";;;AAgBA,SAAS,aAAa,MAAsB,eAAuB,OAAwB;CACzF,MAAM,WAAWA,kCAAAA,aAAa,eAAe,IAAI;CACjD,IAAI,CAAC,YAAY,CAAC,SAAS,UACzB,OAAO;CAGT,SAAS,MAAM,OAAgC;EAC7C,KAAK,MAAM,QAAQ,OAAO;GACxB,IAAI,KAAK,UAAU,OACjB,OAAO;GAGT,IAAI,KAAK,YAAY,MAAM,KAAK,QAAQ,GACtC,OAAO;EAEX;EAEA,OAAO;CACT;CAEA,OAAO,MAAM,SAAS,QAAQ;AAChC;AAEA,SAAS,WACP,MACA,OACwD;CACxD,IAAI,UAA+B;CAuBnC,OAAO;EAAE,MArBO,KAAK,QAAwB,KAAK,SAAS;GACzD,IAAI,KAAK,UAAU,OAAO;IACxB,UAAU,EAAE,GAAG,KAAK;IACpB,OAAO;GACT;GAEA,IAAI,KAAK,UAAU;IACjB,MAAM,SAAS,WAAW,KAAK,UAAU,KAAK;IAC9C,IAAI,OAAO,SAAS;KAClB,UAAU,OAAO;KACjB,IAAI,KAAK;MAAE,GAAG;MAAM,UAAU,OAAO;KAAK,CAAC;IAC7C,OACE,IAAI,KAAK,IAAI;GAEjB,OACE,IAAI,KAAK,IAAI;GAGf,OAAO;EACT,GAAG,CAAC,CAEiB;EAAG;CAAQ;AAClC;AAEA,SAAS,WACP,MACA,MACA,aACA,UACgB;CAChB,IAAI,aAAa,UACf,OAAO,KAAK,KAAK,SAAS;EACxB,IAAI,KAAK,UAAU,aACjB,OAAO;GAAE,GAAG;GAAM,UAAU,CAAC,GAAI,KAAK,YAAY,CAAC,GAAI,IAAI;EAAE;EAG/D,IAAI,KAAK,UACP,OAAO;GAAE,GAAG;GAAM,UAAU,WAAW,KAAK,UAAU,MAAM,aAAa,QAAQ;EAAE;EAGrF,OAAO;CACT,CAAC;CAGH,MAAM,cAAc,KAAK,WAAW,SAAS,KAAK,UAAU,WAAW;CAEvE,IAAI,gBAAgB,IAAI;EACtB,MAAM,SAAS,CAAC,GAAG,IAAI;EACvB,MAAM,cAAc,aAAa,WAAW,cAAc,cAAc;EACxE,OAAO,OAAO,aAAa,GAAG,IAAI;EAClC,OAAO;CACT;CAEA,OAAO,KAAK,KAAK,SAAS;EACxB,IAAI,KAAK,UACP,OAAO;GAAE,GAAG;GAAM,UAAU,WAAW,KAAK,UAAU,MAAM,aAAa,QAAQ;EAAE;EAGrF,OAAO;CACT,CAAC;AACH;AAEA,SAAgB,aAAa,MAAsB,SAA8C;CAC/F,MAAM,EAAE,aAAa,YAAY,aAAa;CAE9C,IAAI,gBAAgB,YAClB,OAAO;CAGT,IAAI,CAACA,kCAAAA,aAAa,YAAY,IAAI,GAChC,OAAO;CAGT,IAAI,aAAa,MAAM,aAAa,UAAU,GAC5C,OAAO;CAGT,MAAM,EAAE,MAAM,aAAa,YAAY,WAAW,MAAM,WAAW;CAEnE,IAAI,CAAC,SACH,OAAO;CAGT,OAAO,WAAW,aAAa,SAAS,YAAY,QAAQ;AAC9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-tree-node-drag-drop.cjs","names":["findTreeNode"],"sources":["../../../src/components/Tree/use-tree-node-drag-drop.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { findTreeNode } from './get-children-nodes-values/get-children-nodes-values';\nimport type { TreeDragDropPayload, TreeDragDropPosition } from './move-tree-node/move-tree-node';\nimport type { TreeDragState, TreeNodeData } from './Tree';\n\nexport type TreeAllowDrop = (payload: TreeDragDropPayload) => boolean;\n\ninterface UseTreeNodeDragDropInput {\n nodeValue: string;\n hasChildren: boolean;\n data: TreeNodeData[];\n onDragDrop: ((payload: TreeDragDropPayload) => void) | undefined;\n dragStateRef: React.RefObject<TreeDragState>;\n allowDrop: TreeAllowDrop | undefined;\n withDragHandle: boolean | undefined;\n}\n\nexport interface TreeDragHandleProps {\n onMouseDown: (event: React.MouseEvent) => void;\n}\n\nfunction isDescendantOf(\n data: TreeNodeData[],\n ancestorValue: string,\n descendantValue: string\n): boolean {\n const ancestor = findTreeNode(ancestorValue, data);\n if (!ancestor || !ancestor.children) {\n return false;\n }\n\n function check(nodes: TreeNodeData[]): boolean {\n for (const node of nodes) {\n if (node.value === descendantValue) {\n return true;\n }\n\n if (node.children && check(node.children)) {\n return true;\n }\n }\n\n return false;\n }\n\n return check(ancestor.children);\n}\n\nfunction getDragDropPosition(\n event: React.DragEvent,\n element: HTMLElement,\n hasChildren: boolean\n): TreeDragDropPosition {\n const rect = element.getBoundingClientRect();\n const y = event.clientY - rect.top;\n const height = rect.height;\n\n if (hasChildren) {\n if (y < height * 0.25) {\n return 'before';\n }\n\n if (y > height * 0.75) {\n return 'after';\n }\n\n return 'inside';\n }\n\n if (y < height * 0.5) {\n return 'before';\n }\n\n return 'after';\n}\n\nconst EMPTY_DRAG_PROPS = { elementProps: {}, dragHandleProps: undefined } as const;\n\nexport function useTreeNodeDragDrop({\n nodeValue,\n hasChildren,\n data,\n onDragDrop,\n dragStateRef,\n allowDrop,\n withDragHandle,\n}: UseTreeNodeDragDropInput) {\n const [isDragHandleActive, setIsDragHandleActive] = useState(false);\n\n useEffect(() => {\n if (!withDragHandle || !isDragHandleActive) {\n return undefined;\n }\n\n const handleWindowMouseUp = () => setIsDragHandleActive(false);\n window.addEventListener('mouseup', handleWindowMouseUp);\n return () => window.removeEventListener('mouseup', handleWindowMouseUp);\n }, [withDragHandle, isDragHandleActive]);\n\n if (!onDragDrop) {\n return EMPTY_DRAG_PROPS;\n }\n\n const handleDragStart = (event: React.DragEvent) => {\n if (withDragHandle && !isDragHandleActive) {\n return;\n }\n\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', nodeValue);\n dragStateRef.current.draggedValue = nodeValue;\n\n const target = event.currentTarget as HTMLElement;\n requestAnimationFrame(() => {\n target.setAttribute('data-dragging', 'true');\n });\n };\n\n const handleDragOver = (event: React.DragEvent) => {\n const draggedValue = dragStateRef.current.draggedValue;\n if (!draggedValue || draggedValue === nodeValue) {\n return;\n }\n\n if (isDescendantOf(data, draggedValue, nodeValue)) {\n return;\n }\n\n const target = event.currentTarget as HTMLElement;\n const position = getDragDropPosition(event, target, hasChildren);\n\n if (allowDrop && !allowDrop({ draggedNode: draggedValue, targetNode: nodeValue, position })) {\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget && prevTarget !== target) {\n prevTarget.removeAttribute('data-drag-over');\n }\n target.removeAttribute('data-drag-over');\n dragStateRef.current.currentDropTarget = null;\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.dropEffect = 'move';\n\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget && prevTarget !== target) {\n prevTarget.removeAttribute('data-drag-over');\n }\n\n target.setAttribute('data-drag-over', position);\n dragStateRef.current.currentDropTarget = target;\n };\n\n const handleDragLeave = (event: React.DragEvent) => {\n const target = event.currentTarget as HTMLElement;\n const related = event.relatedTarget as HTMLElement | null;\n\n if (related && target.contains(related)) {\n return;\n }\n\n target.removeAttribute('data-drag-over');\n\n if (dragStateRef.current.currentDropTarget === target) {\n dragStateRef.current.currentDropTarget = null;\n }\n };\n\n const handleDrop = (event: React.DragEvent) => {\n event.preventDefault();\n event.stopPropagation();\n\n const target = event.currentTarget as HTMLElement;\n const position = target.getAttribute('data-drag-over') as TreeDragDropPosition | null;\n target.removeAttribute('data-drag-over');\n\n const draggedValue = dragStateRef.current.draggedValue;\n if (draggedValue && position && draggedValue !== nodeValue) {\n const payload = { draggedNode: draggedValue, targetNode: nodeValue, position };\n if (!allowDrop || allowDrop(payload)) {\n onDragDrop(payload);\n }\n }\n\n dragStateRef.current.draggedValue = null;\n dragStateRef.current.currentDropTarget = null;\n };\n\n const handleDragEnd = (event: React.DragEvent) => {\n const target = event.currentTarget as HTMLElement;\n target.removeAttribute('data-dragging');\n\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget) {\n prevTarget.removeAttribute('data-drag-over');\n }\n\n dragStateRef.current.draggedValue = null;\n dragStateRef.current.currentDropTarget = null;\n\n if (withDragHandle) {\n setIsDragHandleActive(false);\n }\n };\n\n const elementProps = {\n draggable: withDragHandle ? isDragHandleActive : true,\n onDragStart: handleDragStart,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDrop: handleDrop,\n onDragEnd: handleDragEnd,\n };\n\n const dragHandleProps: TreeDragHandleProps | undefined = withDragHandle\n ? { onMouseDown: () => setIsDragHandleActive(true) }\n : undefined;\n\n return { elementProps, dragHandleProps };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-tree-node-drag-drop.cjs","names":["findTreeNode"],"sources":["../../../src/components/Tree/use-tree-node-drag-drop.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { findTreeNode } from './get-children-nodes-values/get-children-nodes-values';\nimport type { TreeDragDropPayload, TreeDragDropPosition } from './move-tree-node/move-tree-node';\nimport type { TreeDragState, TreeNodeData } from './Tree';\n\nexport type TreeAllowDrop = (payload: TreeDragDropPayload) => boolean;\n\ninterface UseTreeNodeDragDropInput {\n nodeValue: string;\n hasChildren: boolean;\n data: TreeNodeData[];\n onDragDrop: ((payload: TreeDragDropPayload) => void) | undefined;\n dragStateRef: React.RefObject<TreeDragState>;\n allowDrop: TreeAllowDrop | undefined;\n withDragHandle: boolean | undefined;\n}\n\nexport interface TreeDragHandleProps {\n onMouseDown: (event: React.MouseEvent) => void;\n}\n\nfunction isDescendantOf(\n data: TreeNodeData[],\n ancestorValue: string,\n descendantValue: string\n): boolean {\n const ancestor = findTreeNode(ancestorValue, data);\n if (!ancestor || !ancestor.children) {\n return false;\n }\n\n function check(nodes: TreeNodeData[]): boolean {\n for (const node of nodes) {\n if (node.value === descendantValue) {\n return true;\n }\n\n if (node.children && check(node.children)) {\n return true;\n }\n }\n\n return false;\n }\n\n return check(ancestor.children);\n}\n\nfunction getDragDropPosition(\n event: React.DragEvent,\n element: HTMLElement,\n hasChildren: boolean\n): TreeDragDropPosition {\n const rect = element.getBoundingClientRect();\n const y = event.clientY - rect.top;\n const height = rect.height;\n\n if (hasChildren) {\n if (y < height * 0.25) {\n return 'before';\n }\n\n if (y > height * 0.75) {\n return 'after';\n }\n\n return 'inside';\n }\n\n if (y < height * 0.5) {\n return 'before';\n }\n\n return 'after';\n}\n\nconst EMPTY_DRAG_PROPS = { elementProps: {}, dragHandleProps: undefined } as const;\n\nexport function useTreeNodeDragDrop({\n nodeValue,\n hasChildren,\n data,\n onDragDrop,\n dragStateRef,\n allowDrop,\n withDragHandle,\n}: UseTreeNodeDragDropInput) {\n const [isDragHandleActive, setIsDragHandleActive] = useState(false);\n\n useEffect(() => {\n if (!withDragHandle || !isDragHandleActive) {\n return undefined;\n }\n\n const handleWindowMouseUp = () => setIsDragHandleActive(false);\n window.addEventListener('mouseup', handleWindowMouseUp);\n return () => window.removeEventListener('mouseup', handleWindowMouseUp);\n }, [withDragHandle, isDragHandleActive]);\n\n if (!onDragDrop) {\n return EMPTY_DRAG_PROPS;\n }\n\n const handleDragStart = (event: React.DragEvent) => {\n if (withDragHandle && !isDragHandleActive) {\n return;\n }\n\n event.stopPropagation();\n event.dataTransfer.effectAllowed = 'move';\n event.dataTransfer.setData('text/plain', nodeValue);\n dragStateRef.current.draggedValue = nodeValue;\n\n const target = event.currentTarget as HTMLElement;\n requestAnimationFrame(() => {\n target.setAttribute('data-dragging', 'true');\n });\n };\n\n const handleDragOver = (event: React.DragEvent) => {\n const draggedValue = dragStateRef.current.draggedValue;\n if (!draggedValue || draggedValue === nodeValue) {\n return;\n }\n\n if (isDescendantOf(data, draggedValue, nodeValue)) {\n return;\n }\n\n const target = event.currentTarget as HTMLElement;\n const position = getDragDropPosition(event, target, hasChildren);\n\n if (allowDrop && !allowDrop({ draggedNode: draggedValue, targetNode: nodeValue, position })) {\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget && prevTarget !== target) {\n prevTarget.removeAttribute('data-drag-over');\n }\n target.removeAttribute('data-drag-over');\n dragStateRef.current.currentDropTarget = null;\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n event.dataTransfer.dropEffect = 'move';\n\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget && prevTarget !== target) {\n prevTarget.removeAttribute('data-drag-over');\n }\n\n target.setAttribute('data-drag-over', position);\n dragStateRef.current.currentDropTarget = target;\n };\n\n const handleDragLeave = (event: React.DragEvent) => {\n const target = event.currentTarget as HTMLElement;\n const related = event.relatedTarget as HTMLElement | null;\n\n if (related && target.contains(related)) {\n return;\n }\n\n target.removeAttribute('data-drag-over');\n\n if (dragStateRef.current.currentDropTarget === target) {\n dragStateRef.current.currentDropTarget = null;\n }\n };\n\n const handleDrop = (event: React.DragEvent) => {\n event.preventDefault();\n event.stopPropagation();\n\n const target = event.currentTarget as HTMLElement;\n const position = target.getAttribute('data-drag-over') as TreeDragDropPosition | null;\n target.removeAttribute('data-drag-over');\n\n const draggedValue = dragStateRef.current.draggedValue;\n if (draggedValue && position && draggedValue !== nodeValue) {\n const payload = { draggedNode: draggedValue, targetNode: nodeValue, position };\n if (!allowDrop || allowDrop(payload)) {\n onDragDrop(payload);\n }\n }\n\n dragStateRef.current.draggedValue = null;\n dragStateRef.current.currentDropTarget = null;\n };\n\n const handleDragEnd = (event: React.DragEvent) => {\n const target = event.currentTarget as HTMLElement;\n target.removeAttribute('data-dragging');\n\n const prevTarget = dragStateRef.current.currentDropTarget;\n if (prevTarget) {\n prevTarget.removeAttribute('data-drag-over');\n }\n\n dragStateRef.current.draggedValue = null;\n dragStateRef.current.currentDropTarget = null;\n\n if (withDragHandle) {\n setIsDragHandleActive(false);\n }\n };\n\n const elementProps = {\n draggable: withDragHandle ? isDragHandleActive : true,\n onDragStart: handleDragStart,\n onDragOver: handleDragOver,\n onDragLeave: handleDragLeave,\n onDrop: handleDrop,\n onDragEnd: handleDragEnd,\n };\n\n const dragHandleProps: TreeDragHandleProps | undefined = withDragHandle\n ? { onMouseDown: () => setIsDragHandleActive(true) }\n : undefined;\n\n return { elementProps, dragHandleProps };\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-tree.cjs","names":["getChildrenNodesValues","findTreeNode","getAllChildrenNodes","getAllCheckedNodes","memoizedIsNodeChecked","memoizedIsNodeIndeterminate"],"sources":["../../../src/components/Tree/use-tree.ts"],"sourcesContent":["import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport {\n CheckedNodeStatus,\n getAllCheckedNodes,\n} from './get-all-checked-nodes/get-all-checked-nodes';\nimport {\n findTreeNode,\n getAllChildrenNodes,\n getChildrenNodesValues,\n} from './get-children-nodes-values/get-children-nodes-values';\nimport { memoizedIsNodeChecked } from './is-node-checked/is-node-checked';\nimport { memoizedIsNodeIndeterminate } from './is-node-indeterminate/is-node-indeterminate';\nimport type { TreeNodeData } from './Tree';\n\nexport type TreeExpandedState = Record<string, boolean>;\n\nfunction getInitialTreeExpandedState(\n initialState: TreeExpandedState,\n data: TreeNodeData[],\n value: string | string[] | undefined,\n acc: TreeExpandedState = {}\n) {\n data.forEach((node) => {\n acc[node.value] = node.value in initialState ? initialState[node.value] : node.value === value;\n\n if (Array.isArray(node.children)) {\n getInitialTreeExpandedState(initialState, node.children, value, acc);\n }\n });\n\n return acc;\n}\n\nexport function getTreeExpandedState(\n data: TreeNodeData[],\n expandedNodesValues: string[] | '*'\n): Record<string, boolean> {\n const state = getInitialTreeExpandedState({}, data, []);\n\n if (expandedNodesValues === '*') {\n const result: Record<string, boolean> = {};\n const keys = Object.keys(state);\n for (let i = 0; i < keys.length; i++) {\n result[keys[i]] = true;\n }\n return result;\n }\n\n expandedNodesValues.forEach((node) => {\n state[node] = true;\n });\n\n return state;\n}\n\nfunction getInitialCheckedState(\n initialState: string[],\n data: TreeNodeData[],\n checkStrictly: boolean\n) {\n if (checkStrictly) {\n return initialState;\n }\n\n const acc: string[] = [];\n\n initialState.forEach((node) => acc.push(...getChildrenNodesValues(node, data)));\n\n return Array.from(new Set(acc));\n}\n\nfunction getAllNodeValues(data: TreeNodeData[]): string[] {\n const acc: string[] = [];\n for (const node of data) {\n acc.push(node.value);\n if (Array.isArray(node.children) && node.children.length > 0) {\n acc.push(...getAllNodeValues(node.children));\n }\n }\n return acc;\n}\n\nexport interface UseTreeInput {\n /** Initial expanded state of all nodes, uncontrolled state */\n initialExpandedState?: TreeExpandedState;\n\n /** Expanded state of all nodes, controlled state */\n expandedState?: TreeExpandedState;\n\n /** Called when the tree expanded state changes */\n onExpandedStateChange?: (expandedState: TreeExpandedState) => void;\n\n /** Initial selected state of nodes */\n initialSelectedState?: string[];\n\n /** Selected state of all nodes, controlled state */\n selectedState?: string[];\n\n /** Called when the tree selected state changes */\n onSelectedStateChange?: (selectedState: string[]) => void;\n\n /** Initial checked state of nodes */\n initialCheckedState?: string[];\n\n /** Checked state of all nodes, controlled state */\n checkedState?: string[];\n\n /** Called when the tree checked state changes */\n onCheckedStateChange?: (checkedState: string[]) => void;\n\n /** Determines whether multiple node can be selected at a time */\n multiple?: boolean;\n\n /** Called with the node value when it is expanded */\n onNodeExpand?: (value: string) => void;\n\n /** Called with the node value when it is collapsed */\n onNodeCollapse?: (value: string) => void;\n\n /** Called when a node with `hasChildren: true` is expanded for the first time.\n * The callback should update the tree data with loaded children.\n */\n onLoadChildren?: (nodeValue: string) => Promise<void>;\n\n /** When `true`, checking a parent does not affect children and vice versa.\n * Each node's checked state is fully independent. @default false\n */\n checkStrictly?: boolean;\n}\n\nexport interface UseTreeReturnType {\n /** When `true`, each node's checked state is independent (no parent-child cascading) */\n checkStrictly: boolean;\n\n /** Determines whether multiple node can be selected at a time */\n multiple: boolean;\n\n /** A record of `node.value` and boolean values that represent nodes expanded state */\n expandedState: TreeExpandedState;\n\n /** An array of selected nodes values */\n selectedState: string[];\n\n /** An array of checked nodes values */\n checkedState: string[];\n\n /** A value of the node that was last clicked\n * Anchor node is used to determine range of selected nodes for multiple selection\n */\n anchorNode: string | null;\n\n /** Initializes tree state based on provided data, called automatically by the Tree component */\n initialize: (data: TreeNodeData[]) => void;\n\n /** Toggles expanded state of the node with provided value */\n toggleExpanded: (value: string) => void;\n\n /** Collapses node with provided value */\n collapse: (value: string) => void;\n\n /** Expands node with provided value */\n expand: (value: string) => void;\n\n /** Expands all nodes */\n expandAllNodes: () => void;\n\n /** Collapses all nodes */\n collapseAllNodes: () => void;\n\n /** Sets expanded state */\n setExpandedState: (value: TreeExpandedState) => void;\n\n /** Toggles selected state of the node with provided value */\n toggleSelected: (value: string) => void;\n\n /** Selects node with provided value */\n select: (value: string) => void;\n\n /** Deselects node with provided value */\n deselect: (value: string) => void;\n\n /** Clears selected state */\n clearSelected: () => void;\n\n /** Sets selected state */\n setSelectedState: (value: string[]) => void;\n\n /** Checks node with provided value */\n checkNode: (value: string) => void;\n\n /** Unchecks node with provided value */\n uncheckNode: (value: string) => void;\n\n /** Checks all nodes */\n checkAllNodes: () => void;\n\n /** Unchecks all nodes */\n uncheckAllNodes: () => void;\n\n /** Sets checked state */\n setCheckedState: (value: string[]) => void;\n\n /** Returns all checked nodes with status */\n getCheckedNodes: () => CheckedNodeStatus[];\n\n /** Returns `true` if node with provided value is checked */\n isNodeChecked: (value: string) => boolean;\n\n /** Returns `true` if node with provided value is indeterminate */\n isNodeIndeterminate: (value: string) => boolean;\n\n /** Returns `true` if the node's children are currently being loaded */\n isNodeLoading: (value: string) => boolean;\n\n /** Returns the error from the last failed load attempt for the given node, or `null` */\n getNodeLoadError: (value: string) => Error | null;\n\n /** Programmatically triggers loading of a node's children */\n loadNode: (value: string) => Promise<void>;\n\n /** Clears the loaded cache for a node, causing it to re-fetch on next expand */\n invalidateNode: (value: string) => void;\n}\n\nexport function useTree({\n initialSelectedState = [],\n expandedState,\n initialCheckedState = [],\n checkedState,\n initialExpandedState = {},\n selectedState,\n multiple = false,\n onNodeCollapse,\n onNodeExpand,\n onCheckedStateChange,\n onSelectedStateChange,\n onExpandedStateChange,\n onLoadChildren,\n checkStrictly = false,\n}: UseTreeInput = {}): UseTreeReturnType {\n const [data, setData] = useState<TreeNodeData[]>([]);\n const [_expandedState, setExpandedState] = useUncontrolled({\n value: expandedState,\n defaultValue: initialExpandedState,\n finalValue: {},\n onChange: onExpandedStateChange,\n });\n\n const [_selectedState, setSelectedState] = useUncontrolled({\n value: selectedState,\n defaultValue: initialSelectedState,\n finalValue: [],\n onChange: onSelectedStateChange,\n });\n\n const [_checkedState, setCheckedState] = useUncontrolled({\n value: checkedState,\n defaultValue: initialCheckedState,\n finalValue: [],\n onChange: onCheckedStateChange,\n });\n\n const [anchorNode, setAnchorNode] = useState<string | null>(null);\n\n const loadingNodesRef = useRef(new Set<string>());\n const loadedNodesRef = useRef(new Set<string>());\n const [loadingNodes, setLoadingNodes] = useState<string[]>([]);\n const [loadErrors, setLoadErrors] = useState<Record<string, Error>>({});\n\n const initialize = useCallback(\n (_data: TreeNodeData[]) => {\n setExpandedState(getInitialTreeExpandedState(_expandedState, _data, _selectedState));\n setCheckedState(getInitialCheckedState(_checkedState, _data, checkStrictly));\n setData(_data);\n },\n [_selectedState, _checkedState, _expandedState, checkStrictly]\n );\n\n const loadNodeImpl = useCallback(\n async (value: string) => {\n if (!onLoadChildren) {\n return;\n }\n\n if (loadingNodesRef.current.has(value) || loadedNodesRef.current.has(value)) {\n return;\n }\n\n loadingNodesRef.current.add(value);\n setLoadingNodes(Array.from(loadingNodesRef.current));\n setLoadErrors((prev) => {\n if (!(value in prev)) {\n return prev;\n }\n\n const next = { ...prev };\n delete next[value];\n return next;\n });\n\n try {\n await onLoadChildren(value);\n loadedNodesRef.current.add(value);\n } catch (error) {\n const err = error instanceof Error ? error : new Error(String(error));\n setLoadErrors((prev) => ({ ...prev, [value]: err }));\n } finally {\n loadingNodesRef.current.delete(value);\n setLoadingNodes(Array.from(loadingNodesRef.current));\n }\n },\n [onLoadChildren]\n );\n\n const tryLoadAsync = useCallback(\n (value: string) => {\n if (!onLoadChildren) {\n return;\n }\n\n const node = findTreeNode(value, data);\n if (node && node.hasChildren && !Array.isArray(node.children)) {\n loadNodeImpl(value);\n }\n },\n [onLoadChildren, data, loadNodeImpl]\n );\n\n const toggleExpanded = useCallback(\n (value: string) => {\n const nextState = { ..._expandedState, [value]: !_expandedState[value] };\n nextState[value] ? onNodeExpand?.(value) : onNodeCollapse?.(value);\n if (nextState[value]) {\n tryLoadAsync(value);\n }\n setExpandedState(nextState);\n },\n [onNodeCollapse, onNodeExpand, _expandedState, tryLoadAsync]\n );\n\n const collapse = useCallback(\n (value: string) => {\n if (_expandedState[value] !== false) {\n onNodeCollapse?.(value);\n }\n\n setExpandedState({ ..._expandedState, [value]: false });\n },\n [onNodeCollapse, _expandedState]\n );\n\n const expand = useCallback(\n (value: string) => {\n if (_expandedState[value] !== true) {\n onNodeExpand?.(value);\n }\n\n tryLoadAsync(value);\n setExpandedState({ ..._expandedState, [value]: true });\n },\n [onNodeExpand, _expandedState, tryLoadAsync]\n );\n\n const expandAllNodes = useCallback(() => {\n const nextState = { ..._expandedState };\n Object.keys(nextState).forEach((key) => {\n nextState[key] = true;\n tryLoadAsync(key);\n });\n\n setExpandedState(nextState);\n }, [_expandedState, tryLoadAsync]);\n\n const collapseAllNodes = useCallback(() => {\n const nextState = { ..._expandedState };\n Object.keys(nextState).forEach((key) => {\n nextState[key] = false;\n });\n\n setExpandedState(nextState);\n }, [_expandedState]);\n\n const toggleSelected = useCallback(\n (value: string) => {\n if (!multiple) {\n if (_selectedState.includes(value)) {\n setAnchorNode(null);\n return [];\n }\n\n setAnchorNode(value);\n return [value];\n }\n\n if (_selectedState.includes(value)) {\n setAnchorNode(null);\n return _selectedState.filter((item) => item !== value);\n }\n\n setAnchorNode(value);\n setSelectedState([..._selectedState, value]);\n },\n [_selectedState]\n );\n\n const select = useCallback(\n (value: string) => {\n setAnchorNode(value);\n setSelectedState(\n multiple\n ? _selectedState.includes(value)\n ? _selectedState\n : [..._selectedState, value]\n : [value]\n );\n },\n [_selectedState]\n );\n\n const deselect = useCallback(\n (value: string) => {\n anchorNode === value && setAnchorNode(null);\n setSelectedState(_selectedState.filter((item) => item !== value));\n },\n [_selectedState]\n );\n\n const clearSelected = useCallback(() => {\n setSelectedState([]);\n setAnchorNode(null);\n }, []);\n\n const checkNode = useCallback(\n (value: string) => {\n if (checkStrictly) {\n if (!_checkedState.includes(value)) {\n setCheckedState([..._checkedState, value]);\n }\n } else {\n const checkedNodes = getChildrenNodesValues(value, data);\n setCheckedState(Array.from(new Set([..._checkedState, ...checkedNodes])));\n }\n },\n [data, _checkedState, checkStrictly]\n );\n\n const uncheckNode = useCallback(\n (value: string) => {\n if (checkStrictly) {\n setCheckedState(_checkedState.filter((item) => item !== value));\n } else {\n const checkedNodes = getChildrenNodesValues(value, data);\n setCheckedState(_checkedState.filter((item) => !checkedNodes.includes(item)));\n }\n },\n [data, _checkedState, checkStrictly]\n );\n\n const checkAllNodes = useCallback(() => {\n if (checkStrictly) {\n setCheckedState(getAllNodeValues(data));\n } else {\n setCheckedState(getAllChildrenNodes(data));\n }\n }, [data, checkStrictly]);\n\n const uncheckAllNodes = useCallback(() => {\n setCheckedState([]);\n }, []);\n\n const getCheckedNodes = useCallback((): CheckedNodeStatus[] => {\n if (checkStrictly) {\n return _checkedState.map((value) => {\n const node = findTreeNode(value, data);\n return {\n checked: true,\n indeterminate: false,\n value,\n hasChildren: node\n ? (Array.isArray(node.children) && node.children.length > 0) || !!node.hasChildren\n : false,\n };\n });\n }\n return getAllCheckedNodes(data, _checkedState).result;\n }, [checkStrictly, _checkedState, data]);\n\n const isNodeChecked = useCallback(\n (value: string) => {\n if (checkStrictly) {\n return _checkedState.includes(value);\n }\n return memoizedIsNodeChecked(value, data, _checkedState);\n },\n [checkStrictly, _checkedState, data]\n );\n\n const isNodeIndeterminate = useCallback(\n (value: string) => {\n if (checkStrictly) {\n return false;\n }\n return memoizedIsNodeIndeterminate(value, data, _checkedState);\n },\n [checkStrictly, _checkedState, data]\n );\n\n const isNodeLoading = useCallback(\n (value: string) => loadingNodes.includes(value),\n [loadingNodes]\n );\n\n const getNodeLoadError = useCallback((value: string) => loadErrors[value] || null, [loadErrors]);\n\n const invalidateNode = useCallback((value: string) => {\n loadedNodesRef.current.delete(value);\n setLoadErrors((prev) => {\n if (!(value in prev)) {\n return prev;\n }\n\n const next = { ...prev };\n delete next[value];\n return next;\n });\n }, []);\n\n return useMemo(\n () => ({\n checkStrictly,\n multiple,\n expandedState: _expandedState,\n selectedState: _selectedState,\n checkedState: _checkedState,\n anchorNode,\n initialize,\n\n toggleExpanded,\n collapse,\n expand,\n expandAllNodes,\n collapseAllNodes,\n setExpandedState,\n\n checkNode,\n uncheckNode,\n checkAllNodes,\n uncheckAllNodes,\n setCheckedState,\n\n toggleSelected,\n select,\n deselect,\n clearSelected,\n setSelectedState,\n\n getCheckedNodes,\n isNodeChecked,\n isNodeIndeterminate,\n\n isNodeLoading,\n getNodeLoadError,\n loadNode: loadNodeImpl,\n invalidateNode,\n }),\n [\n checkStrictly,\n multiple,\n _expandedState,\n _selectedState,\n _checkedState,\n anchorNode,\n initialize,\n toggleExpanded,\n collapse,\n expand,\n expandAllNodes,\n collapseAllNodes,\n setExpandedState,\n checkNode,\n uncheckNode,\n checkAllNodes,\n uncheckAllNodes,\n setCheckedState,\n toggleSelected,\n select,\n deselect,\n clearSelected,\n setSelectedState,\n getCheckedNodes,\n isNodeChecked,\n isNodeIndeterminate,\n isNodeLoading,\n getNodeLoadError,\n loadNodeImpl,\n invalidateNode,\n ]\n );\n}\n\nexport type TreeController = ReturnType<typeof useTree>;\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-tree.cjs","names":["getChildrenNodesValues","findTreeNode","getAllChildrenNodes","getAllCheckedNodes","memoizedIsNodeChecked","memoizedIsNodeIndeterminate"],"sources":["../../../src/components/Tree/use-tree.ts"],"sourcesContent":["import { useCallback, useMemo, useRef, useState } from 'react';\nimport { useUncontrolled } from '@mantine/hooks';\nimport {\n CheckedNodeStatus,\n getAllCheckedNodes,\n} from './get-all-checked-nodes/get-all-checked-nodes';\nimport {\n findTreeNode,\n getAllChildrenNodes,\n getChildrenNodesValues,\n} from './get-children-nodes-values/get-children-nodes-values';\nimport { memoizedIsNodeChecked } from './is-node-checked/is-node-checked';\nimport { memoizedIsNodeIndeterminate } from './is-node-indeterminate/is-node-indeterminate';\nimport type { TreeNodeData } from './Tree';\n\nexport type TreeExpandedState = Record<string, boolean>;\n\nfunction getInitialTreeExpandedState(\n initialState: TreeExpandedState,\n data: TreeNodeData[],\n value: string | string[] | undefined,\n acc: TreeExpandedState = {}\n) {\n data.forEach((node) => {\n acc[node.value] = node.value in initialState ? initialState[node.value] : node.value === value;\n\n if (Array.isArray(node.children)) {\n getInitialTreeExpandedState(initialState, node.children, value, acc);\n }\n });\n\n return acc;\n}\n\nexport function getTreeExpandedState(\n data: TreeNodeData[],\n expandedNodesValues: string[] | '*'\n): Record<string, boolean> {\n const state = getInitialTreeExpandedState({}, data, []);\n\n if (expandedNodesValues === '*') {\n const result: Record<string, boolean> = {};\n const keys = Object.keys(state);\n for (let i = 0; i < keys.length; i++) {\n result[keys[i]] = true;\n }\n return result;\n }\n\n expandedNodesValues.forEach((node) => {\n state[node] = true;\n });\n\n return state;\n}\n\nfunction getInitialCheckedState(\n initialState: string[],\n data: TreeNodeData[],\n checkStrictly: boolean\n) {\n if (checkStrictly) {\n return initialState;\n }\n\n const acc: string[] = [];\n\n initialState.forEach((node) => acc.push(...getChildrenNodesValues(node, data)));\n\n return Array.from(new Set(acc));\n}\n\nfunction getAllNodeValues(data: TreeNodeData[]): string[] {\n const acc: string[] = [];\n for (const node of data) {\n acc.push(node.value);\n if (Array.isArray(node.children) && node.children.length > 0) {\n acc.push(...getAllNodeValues(node.children));\n }\n }\n return acc;\n}\n\nexport interface UseTreeInput {\n /** Initial expanded state of all nodes, uncontrolled state */\n initialExpandedState?: TreeExpandedState;\n\n /** Expanded state of all nodes, controlled state */\n expandedState?: TreeExpandedState;\n\n /** Called when the tree expanded state changes */\n onExpandedStateChange?: (expandedState: TreeExpandedState) => void;\n\n /** Initial selected state of nodes */\n initialSelectedState?: string[];\n\n /** Selected state of all nodes, controlled state */\n selectedState?: string[];\n\n /** Called when the tree selected state changes */\n onSelectedStateChange?: (selectedState: string[]) => void;\n\n /** Initial checked state of nodes */\n initialCheckedState?: string[];\n\n /** Checked state of all nodes, controlled state */\n checkedState?: string[];\n\n /** Called when the tree checked state changes */\n onCheckedStateChange?: (checkedState: string[]) => void;\n\n /** Determines whether multiple node can be selected at a time */\n multiple?: boolean;\n\n /** Called with the node value when it is expanded */\n onNodeExpand?: (value: string) => void;\n\n /** Called with the node value when it is collapsed */\n onNodeCollapse?: (value: string) => void;\n\n /** Called when a node with `hasChildren: true` is expanded for the first time.\n * The callback should update the tree data with loaded children.\n */\n onLoadChildren?: (nodeValue: string) => Promise<void>;\n\n /** When `true`, checking a parent does not affect children and vice versa.\n * Each node's checked state is fully independent. @default false\n */\n checkStrictly?: boolean;\n}\n\nexport interface UseTreeReturnType {\n /** When `true`, each node's checked state is independent (no parent-child cascading) */\n checkStrictly: boolean;\n\n /** Determines whether multiple node can be selected at a time */\n multiple: boolean;\n\n /** A record of `node.value` and boolean values that represent nodes expanded state */\n expandedState: TreeExpandedState;\n\n /** An array of selected nodes values */\n selectedState: string[];\n\n /** An array of checked nodes values */\n checkedState: string[];\n\n /** A value of the node that was last clicked\n * Anchor node is used to determine range of selected nodes for multiple selection\n */\n anchorNode: string | null;\n\n /** Initializes tree state based on provided data, called automatically by the Tree component */\n initialize: (data: TreeNodeData[]) => void;\n\n /** Toggles expanded state of the node with provided value */\n toggleExpanded: (value: string) => void;\n\n /** Collapses node with provided value */\n collapse: (value: string) => void;\n\n /** Expands node with provided value */\n expand: (value: string) => void;\n\n /** Expands all nodes */\n expandAllNodes: () => void;\n\n /** Collapses all nodes */\n collapseAllNodes: () => void;\n\n /** Sets expanded state */\n setExpandedState: (value: TreeExpandedState) => void;\n\n /** Toggles selected state of the node with provided value */\n toggleSelected: (value: string) => void;\n\n /** Selects node with provided value */\n select: (value: string) => void;\n\n /** Deselects node with provided value */\n deselect: (value: string) => void;\n\n /** Clears selected state */\n clearSelected: () => void;\n\n /** Sets selected state */\n setSelectedState: (value: string[]) => void;\n\n /** Checks node with provided value */\n checkNode: (value: string) => void;\n\n /** Unchecks node with provided value */\n uncheckNode: (value: string) => void;\n\n /** Checks all nodes */\n checkAllNodes: () => void;\n\n /** Unchecks all nodes */\n uncheckAllNodes: () => void;\n\n /** Sets checked state */\n setCheckedState: (value: string[]) => void;\n\n /** Returns all checked nodes with status */\n getCheckedNodes: () => CheckedNodeStatus[];\n\n /** Returns `true` if node with provided value is checked */\n isNodeChecked: (value: string) => boolean;\n\n /** Returns `true` if node with provided value is indeterminate */\n isNodeIndeterminate: (value: string) => boolean;\n\n /** Returns `true` if the node's children are currently being loaded */\n isNodeLoading: (value: string) => boolean;\n\n /** Returns the error from the last failed load attempt for the given node, or `null` */\n getNodeLoadError: (value: string) => Error | null;\n\n /** Programmatically triggers loading of a node's children */\n loadNode: (value: string) => Promise<void>;\n\n /** Clears the loaded cache for a node, causing it to re-fetch on next expand */\n invalidateNode: (value: string) => void;\n}\n\nexport function useTree({\n initialSelectedState = [],\n expandedState,\n initialCheckedState = [],\n checkedState,\n initialExpandedState = {},\n selectedState,\n multiple = false,\n onNodeCollapse,\n onNodeExpand,\n onCheckedStateChange,\n onSelectedStateChange,\n onExpandedStateChange,\n onLoadChildren,\n checkStrictly = false,\n}: UseTreeInput = {}): UseTreeReturnType {\n const [data, setData] = useState<TreeNodeData[]>([]);\n const [_expandedState, setExpandedState] = useUncontrolled({\n value: expandedState,\n defaultValue: initialExpandedState,\n finalValue: {},\n onChange: onExpandedStateChange,\n });\n\n const [_selectedState, setSelectedState] = useUncontrolled({\n value: selectedState,\n defaultValue: initialSelectedState,\n finalValue: [],\n onChange: onSelectedStateChange,\n });\n\n const [_checkedState, setCheckedState] = useUncontrolled({\n value: checkedState,\n defaultValue: initialCheckedState,\n finalValue: [],\n onChange: onCheckedStateChange,\n });\n\n const [anchorNode, setAnchorNode] = useState<string | null>(null);\n\n const loadingNodesRef = useRef(new Set<string>());\n const loadedNodesRef = useRef(new Set<string>());\n const [loadingNodes, setLoadingNodes] = useState<string[]>([]);\n const [loadErrors, setLoadErrors] = useState<Record<string, Error>>({});\n\n const initialize = useCallback(\n (_data: TreeNodeData[]) => {\n setExpandedState(getInitialTreeExpandedState(_expandedState, _data, _selectedState));\n setCheckedState(getInitialCheckedState(_checkedState, _data, checkStrictly));\n setData(_data);\n },\n [_selectedState, _checkedState, _expandedState, checkStrictly]\n );\n\n const loadNodeImpl = useCallback(\n async (value: string) => {\n if (!onLoadChildren) {\n return;\n }\n\n if (loadingNodesRef.current.has(value) || loadedNodesRef.current.has(value)) {\n return;\n }\n\n loadingNodesRef.current.add(value);\n setLoadingNodes(Array.from(loadingNodesRef.current));\n setLoadErrors((prev) => {\n if (!(value in prev)) {\n return prev;\n }\n\n const next = { ...prev };\n delete next[value];\n return next;\n });\n\n try {\n await onLoadChildren(value);\n loadedNodesRef.current.add(value);\n } catch (error) {\n const err = error instanceof Error ? error : new Error(String(error));\n setLoadErrors((prev) => ({ ...prev, [value]: err }));\n } finally {\n loadingNodesRef.current.delete(value);\n setLoadingNodes(Array.from(loadingNodesRef.current));\n }\n },\n [onLoadChildren]\n );\n\n const tryLoadAsync = useCallback(\n (value: string) => {\n if (!onLoadChildren) {\n return;\n }\n\n const node = findTreeNode(value, data);\n if (node && node.hasChildren && !Array.isArray(node.children)) {\n loadNodeImpl(value);\n }\n },\n [onLoadChildren, data, loadNodeImpl]\n );\n\n const toggleExpanded = useCallback(\n (value: string) => {\n const nextState = { ..._expandedState, [value]: !_expandedState[value] };\n nextState[value] ? onNodeExpand?.(value) : onNodeCollapse?.(value);\n if (nextState[value]) {\n tryLoadAsync(value);\n }\n setExpandedState(nextState);\n },\n [onNodeCollapse, onNodeExpand, _expandedState, tryLoadAsync]\n );\n\n const collapse = useCallback(\n (value: string) => {\n if (_expandedState[value] !== false) {\n onNodeCollapse?.(value);\n }\n\n setExpandedState({ ..._expandedState, [value]: false });\n },\n [onNodeCollapse, _expandedState]\n );\n\n const expand = useCallback(\n (value: string) => {\n if (_expandedState[value] !== true) {\n onNodeExpand?.(value);\n }\n\n tryLoadAsync(value);\n setExpandedState({ ..._expandedState, [value]: true });\n },\n [onNodeExpand, _expandedState, tryLoadAsync]\n );\n\n const expandAllNodes = useCallback(() => {\n const nextState = { ..._expandedState };\n Object.keys(nextState).forEach((key) => {\n nextState[key] = true;\n tryLoadAsync(key);\n });\n\n setExpandedState(nextState);\n }, [_expandedState, tryLoadAsync]);\n\n const collapseAllNodes = useCallback(() => {\n const nextState = { ..._expandedState };\n Object.keys(nextState).forEach((key) => {\n nextState[key] = false;\n });\n\n setExpandedState(nextState);\n }, [_expandedState]);\n\n const toggleSelected = useCallback(\n (value: string) => {\n if (!multiple) {\n if (_selectedState.includes(value)) {\n setAnchorNode(null);\n return [];\n }\n\n setAnchorNode(value);\n return [value];\n }\n\n if (_selectedState.includes(value)) {\n setAnchorNode(null);\n return _selectedState.filter((item) => item !== value);\n }\n\n setAnchorNode(value);\n setSelectedState([..._selectedState, value]);\n },\n [_selectedState]\n );\n\n const select = useCallback(\n (value: string) => {\n setAnchorNode(value);\n setSelectedState(\n multiple\n ? _selectedState.includes(value)\n ? _selectedState\n : [..._selectedState, value]\n : [value]\n );\n },\n [_selectedState]\n );\n\n const deselect = useCallback(\n (value: string) => {\n anchorNode === value && setAnchorNode(null);\n setSelectedState(_selectedState.filter((item) => item !== value));\n },\n [_selectedState]\n );\n\n const clearSelected = useCallback(() => {\n setSelectedState([]);\n setAnchorNode(null);\n }, []);\n\n const checkNode = useCallback(\n (value: string) => {\n if (checkStrictly) {\n if (!_checkedState.includes(value)) {\n setCheckedState([..._checkedState, value]);\n }\n } else {\n const checkedNodes = getChildrenNodesValues(value, data);\n setCheckedState(Array.from(new Set([..._checkedState, ...checkedNodes])));\n }\n },\n [data, _checkedState, checkStrictly]\n );\n\n const uncheckNode = useCallback(\n (value: string) => {\n if (checkStrictly) {\n setCheckedState(_checkedState.filter((item) => item !== value));\n } else {\n const checkedNodes = getChildrenNodesValues(value, data);\n setCheckedState(_checkedState.filter((item) => !checkedNodes.includes(item)));\n }\n },\n [data, _checkedState, checkStrictly]\n );\n\n const checkAllNodes = useCallback(() => {\n if (checkStrictly) {\n setCheckedState(getAllNodeValues(data));\n } else {\n setCheckedState(getAllChildrenNodes(data));\n }\n }, [data, checkStrictly]);\n\n const uncheckAllNodes = useCallback(() => {\n setCheckedState([]);\n }, []);\n\n const getCheckedNodes = useCallback((): CheckedNodeStatus[] => {\n if (checkStrictly) {\n return _checkedState.map((value) => {\n const node = findTreeNode(value, data);\n return {\n checked: true,\n indeterminate: false,\n value,\n hasChildren: node\n ? (Array.isArray(node.children) && node.children.length > 0) || !!node.hasChildren\n : false,\n };\n });\n }\n return getAllCheckedNodes(data, _checkedState).result;\n }, [checkStrictly, _checkedState, data]);\n\n const isNodeChecked = useCallback(\n (value: string) => {\n if (checkStrictly) {\n return _checkedState.includes(value);\n }\n return memoizedIsNodeChecked(value, data, _checkedState);\n },\n [checkStrictly, _checkedState, data]\n );\n\n const isNodeIndeterminate = useCallback(\n (value: string) => {\n if (checkStrictly) {\n return false;\n }\n return memoizedIsNodeIndeterminate(value, data, _checkedState);\n },\n [checkStrictly, _checkedState, data]\n );\n\n const isNodeLoading = useCallback(\n (value: string) => loadingNodes.includes(value),\n [loadingNodes]\n );\n\n const getNodeLoadError = useCallback((value: string) => loadErrors[value] || null, [loadErrors]);\n\n const invalidateNode = useCallback((value: string) => {\n loadedNodesRef.current.delete(value);\n setLoadErrors((prev) => {\n if (!(value in prev)) {\n return prev;\n }\n\n const next = { ...prev };\n delete next[value];\n return next;\n });\n }, []);\n\n return useMemo(\n () => ({\n checkStrictly,\n multiple,\n expandedState: _expandedState,\n selectedState: _selectedState,\n checkedState: _checkedState,\n anchorNode,\n initialize,\n\n toggleExpanded,\n collapse,\n expand,\n expandAllNodes,\n collapseAllNodes,\n setExpandedState,\n\n checkNode,\n uncheckNode,\n checkAllNodes,\n uncheckAllNodes,\n setCheckedState,\n\n toggleSelected,\n select,\n deselect,\n clearSelected,\n setSelectedState,\n\n getCheckedNodes,\n isNodeChecked,\n isNodeIndeterminate,\n\n isNodeLoading,\n getNodeLoadError,\n loadNode: loadNodeImpl,\n invalidateNode,\n }),\n [\n checkStrictly,\n multiple,\n _expandedState,\n _selectedState,\n _checkedState,\n anchorNode,\n initialize,\n toggleExpanded,\n collapse,\n expand,\n expandAllNodes,\n collapseAllNodes,\n setExpandedState,\n checkNode,\n uncheckNode,\n checkAllNodes,\n uncheckAllNodes,\n setCheckedState,\n toggleSelected,\n select,\n deselect,\n clearSelected,\n setSelectedState,\n getCheckedNodes,\n isNodeChecked,\n isNodeIndeterminate,\n isNodeLoading,\n getNodeLoadError,\n loadNodeImpl,\n invalidateNode,\n ]\n );\n}\n\nexport type TreeController = ReturnType<typeof useTree>;\n"],"mappings":"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"}