@mantine/core 9.5.2 → 9.6.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 (901) hide show
  1. package/cjs/_virtual/_rolldown/runtime.cjs +1 -1
  2. package/cjs/components/Accordion/Accordion.cjs.map +1 -1
  3. package/cjs/components/Accordion/Accordion.module.cjs.map +1 -1
  4. package/cjs/components/Accordion/AccordionChevron.cjs.map +1 -1
  5. package/cjs/components/Accordion/AccordionControl/AccordionControl.cjs.map +1 -1
  6. package/cjs/components/Accordion/AccordionItem/AccordionItem.cjs.map +1 -1
  7. package/cjs/components/Accordion/AccordionPanel/AccordionPanel.cjs.map +1 -1
  8. package/cjs/components/ActionBar/ActionBar.cjs +94 -0
  9. package/cjs/components/ActionBar/ActionBar.cjs.map +1 -0
  10. package/cjs/components/ActionBar/ActionBar.context.cjs +8 -0
  11. package/cjs/components/ActionBar/ActionBar.context.cjs.map +1 -0
  12. package/cjs/components/ActionBar/ActionBar.module.cjs +10 -0
  13. package/cjs/components/ActionBar/ActionBar.module.cjs.map +1 -0
  14. package/cjs/components/ActionBar/ActionBarCloseButton/ActionBarCloseButton.cjs +33 -0
  15. package/cjs/components/ActionBar/ActionBarCloseButton/ActionBarCloseButton.cjs.map +1 -0
  16. package/cjs/components/ActionBar/ActionBarDivider/ActionBarDivider.cjs +30 -0
  17. package/cjs/components/ActionBar/ActionBarDivider/ActionBarDivider.cjs.map +1 -0
  18. package/cjs/components/ActionIcon/ActionIcon.cjs.map +1 -1
  19. package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.cjs +16 -15
  20. package/cjs/components/ActionIcon/ActionIconGroup/ActionIconGroup.cjs.map +1 -1
  21. package/cjs/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.cjs +15 -14
  22. package/cjs/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.cjs.map +1 -1
  23. package/cjs/components/Affix/Affix.cjs.map +1 -1
  24. package/cjs/components/Alert/Alert.cjs.map +1 -1
  25. package/cjs/components/Anchor/Anchor.cjs.map +1 -1
  26. package/cjs/components/AngleSlider/AngleSlider.cjs +5 -4
  27. package/cjs/components/AngleSlider/AngleSlider.cjs.map +1 -1
  28. package/cjs/components/AppShell/AppShell.cjs.map +1 -1
  29. package/cjs/components/AppShell/AppShellAside/AppShellAside.cjs.map +1 -1
  30. package/cjs/components/AppShell/AppShellFooter/AppShellFooter.cjs.map +1 -1
  31. package/cjs/components/AppShell/AppShellHeader/AppShellHeader.cjs.map +1 -1
  32. package/cjs/components/AppShell/AppShellMain/AppShellMain.cjs +2 -1
  33. package/cjs/components/AppShell/AppShellMain/AppShellMain.cjs.map +1 -1
  34. package/cjs/components/AppShell/use-resizing/use-resizing.cjs.map +1 -1
  35. package/cjs/components/AspectRatio/AspectRatio.cjs +14 -13
  36. package/cjs/components/AspectRatio/AspectRatio.cjs.map +1 -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/BackgroundImage/BackgroundImage.cjs +14 -13
  42. package/cjs/components/BackgroundImage/BackgroundImage.cjs.map +1 -1
  43. package/cjs/components/Badge/Badge.cjs.map +1 -1
  44. package/cjs/components/Blockquote/Blockquote.cjs +6 -5
  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 +16 -15
  50. package/cjs/components/Button/ButtonGroup/ButtonGroup.cjs.map +1 -1
  51. package/cjs/components/Button/ButtonGroupSection/ButtonGroupSection.cjs +15 -14
  52. package/cjs/components/Button/ButtonGroupSection/ButtonGroupSection.cjs.map +1 -1
  53. package/cjs/components/Card/Card.cjs.map +1 -1
  54. package/cjs/components/Cascader/Cascader.cjs +5 -4
  55. package/cjs/components/Cascader/Cascader.cjs.map +1 -1
  56. package/cjs/components/Cascader/CascaderColumns.cjs +2 -1
  57. package/cjs/components/Cascader/CascaderColumns.cjs.map +1 -1
  58. package/cjs/components/Cascader/get-cascader-columns.cjs.map +1 -1
  59. package/cjs/components/Cascader/use-cascader-safe-area.cjs.map +1 -1
  60. package/cjs/components/Cascader/use-cascader.cjs.map +1 -1
  61. package/cjs/components/Checkbox/CheckIcon.cjs +6 -5
  62. package/cjs/components/Checkbox/CheckIcon.cjs.map +1 -1
  63. package/cjs/components/Checkbox/Checkbox.cjs +1 -1
  64. package/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
  65. package/cjs/components/Checkbox/CheckboxCard/CheckboxCard.cjs +2 -1
  66. package/cjs/components/Checkbox/CheckboxCard/CheckboxCard.cjs.map +1 -1
  67. package/cjs/components/Checkbox/CheckboxGroup/CheckboxGroup.cjs.map +1 -1
  68. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs.map +1 -1
  69. package/cjs/components/Chip/Chip.cjs.map +1 -1
  70. package/cjs/components/Chip/ChipGroup/ChipGroup.cjs.map +1 -1
  71. package/cjs/components/CloseButton/CloseButton.cjs.map +1 -1
  72. package/cjs/components/CloseButton/CloseIcon.cjs.map +1 -1
  73. package/cjs/components/Collapse/Collapse.cjs.map +1 -1
  74. package/cjs/components/ColorInput/ColorInput.cjs.map +1 -1
  75. package/cjs/components/ColorInput/EyeDropperIcon.cjs.map +1 -1
  76. package/cjs/components/ColorPicker/ColorPicker.cjs.map +1 -1
  77. package/cjs/components/ColorPicker/ColorPicker.context.cjs.map +1 -1
  78. package/cjs/components/ColorPicker/ColorSlider/ColorSlider.cjs +4 -6
  79. package/cjs/components/ColorPicker/ColorSlider/ColorSlider.cjs.map +1 -1
  80. package/cjs/components/ColorPicker/Saturation/Saturation.cjs +4 -6
  81. package/cjs/components/ColorPicker/Saturation/Saturation.cjs.map +1 -1
  82. package/cjs/components/ColorPicker/Swatches/Swatches.cjs.map +1 -1
  83. package/cjs/components/ColorSwatch/ColorSwatch.cjs.map +1 -1
  84. package/cjs/components/Combobox/Combobox.cjs.map +1 -1
  85. package/cjs/components/Combobox/ComboboxChevron/ComboboxChevron.cjs.map +1 -1
  86. package/cjs/components/Combobox/ComboboxEmpty/ComboboxEmpty.cjs +2 -1
  87. package/cjs/components/Combobox/ComboboxEmpty/ComboboxEmpty.cjs.map +1 -1
  88. package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.cjs +10 -9
  89. package/cjs/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.cjs.map +1 -1
  90. package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.cjs +2 -1
  91. package/cjs/components/Combobox/ComboboxFooter/ComboboxFooter.cjs.map +1 -1
  92. package/cjs/components/Combobox/ComboboxGroup/ComboboxGroup.cjs.map +1 -1
  93. package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.cjs +2 -1
  94. package/cjs/components/Combobox/ComboboxHeader/ComboboxHeader.cjs.map +1 -1
  95. package/cjs/components/Combobox/ComboboxOption/ComboboxOption.cjs.map +1 -1
  96. package/cjs/components/Combobox/ComboboxOptions/ComboboxOptions.cjs.map +1 -1
  97. package/cjs/components/Combobox/ComboboxSearch/ComboboxSearch.cjs.map +1 -1
  98. package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.cjs +10 -9
  99. package/cjs/components/Combobox/ComboboxTarget/ComboboxTarget.cjs.map +1 -1
  100. package/cjs/components/Combobox/OptionsDropdown/OptionsDropdown.cjs.map +1 -1
  101. package/cjs/components/Combobox/OptionsDropdown/default-options-filter.cjs.map +1 -1
  102. package/cjs/components/Combobox/use-combobox/get-index/get-index.cjs.map +1 -1
  103. package/cjs/components/Combobox/use-combobox/get-index/get-virtualized-index.cjs.map +1 -1
  104. package/cjs/components/Combobox/use-combobox/use-combobox.cjs.map +1 -1
  105. package/cjs/components/Combobox/use-combobox/use-virtualized-combobox.cjs.map +1 -1
  106. package/cjs/components/Combobox/use-combobox-target-props/use-combobox-target-props.cjs.map +1 -1
  107. package/cjs/components/Combobox/use-pills-reorder/use-pills-reorder.cjs.map +1 -1
  108. package/cjs/components/ComboboxPopover/ComboboxPopover.cjs.map +1 -1
  109. package/cjs/components/ComboboxPopover/ComboboxPopoverTarget.cjs +13 -12
  110. package/cjs/components/ComboboxPopover/ComboboxPopoverTarget.cjs.map +1 -1
  111. package/cjs/components/CopyButton/CopyButton.cjs.map +1 -1
  112. package/cjs/components/DataList/DataList.cjs.map +1 -1
  113. package/cjs/components/Dialog/Dialog.cjs.map +1 -1
  114. package/cjs/components/Divider/Divider.cjs.map +1 -1
  115. package/cjs/components/Drawer/Drawer.cjs +2 -1
  116. package/cjs/components/Drawer/Drawer.cjs.map +1 -1
  117. package/cjs/components/Drawer/DrawerBody.cjs +2 -1
  118. package/cjs/components/Drawer/DrawerBody.cjs.map +1 -1
  119. package/cjs/components/Drawer/DrawerCloseButton.cjs +2 -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 +2 -1
  123. package/cjs/components/Drawer/DrawerHeader.cjs.map +1 -1
  124. package/cjs/components/Drawer/DrawerOverlay.cjs +2 -1
  125. package/cjs/components/Drawer/DrawerOverlay.cjs.map +1 -1
  126. package/cjs/components/Drawer/DrawerRoot.cjs.map +1 -1
  127. package/cjs/components/Drawer/DrawerStack.cjs +3 -1
  128. package/cjs/components/Drawer/DrawerStack.cjs.map +1 -1
  129. package/cjs/components/Drawer/DrawerTitle.cjs +2 -1
  130. package/cjs/components/Drawer/DrawerTitle.cjs.map +1 -1
  131. package/cjs/components/EmptyState/EmptyState.cjs.map +1 -1
  132. package/cjs/components/EmptyState/EmptyStateActions/EmptyStateActions.cjs +2 -1
  133. package/cjs/components/EmptyState/EmptyStateActions/EmptyStateActions.cjs.map +1 -1
  134. package/cjs/components/EmptyState/EmptyStateDescription/EmptyStateDescription.cjs +2 -1
  135. package/cjs/components/EmptyState/EmptyStateDescription/EmptyStateDescription.cjs.map +1 -1
  136. package/cjs/components/Fieldset/Fieldset.cjs.map +1 -1
  137. package/cjs/components/FileButton/FileButton.cjs.map +1 -1
  138. package/cjs/components/FileInput/FileInput.cjs.map +1 -1
  139. package/cjs/components/FloatingIndicator/FloatingIndicator.cjs.map +1 -1
  140. package/cjs/components/FloatingIndicator/use-floating-indicator.cjs.map +1 -1
  141. package/cjs/components/FloatingWindow/FloatingWindow.cjs.map +1 -1
  142. package/cjs/components/FloatingWindow/FloatingWindowResizeHandle.cjs.map +1 -1
  143. package/cjs/components/FocusTrap/FocusTrap.cjs +2 -1
  144. package/cjs/components/FocusTrap/FocusTrap.cjs.map +1 -1
  145. package/cjs/components/Grid/Grid.cjs.map +1 -1
  146. package/cjs/components/Grid/GridCol/GridCol.cjs.map +1 -1
  147. package/cjs/components/Group/Group.cjs +16 -14
  148. package/cjs/components/Group/Group.cjs.map +1 -1
  149. package/cjs/components/Highlight/Highlight.cjs.map +1 -1
  150. package/cjs/components/HoverCard/HoverCard.cjs.map +1 -1
  151. package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs.map +1 -1
  152. package/cjs/components/HoverCard/HoverCardGroup/HoverCardGroup.cjs.map +1 -1
  153. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs.map +1 -1
  154. package/cjs/components/HoverCard/use-hover-card.cjs.map +1 -1
  155. package/cjs/components/Image/Image.cjs.map +1 -1
  156. package/cjs/components/Indicator/Indicator.cjs.map +1 -1
  157. package/cjs/components/Input/Input.cjs +3 -3
  158. package/cjs/components/Input/Input.cjs.map +1 -1
  159. package/cjs/components/Input/Input.context.cjs.map +1 -1
  160. package/cjs/components/Input/InputClearButton/InputClearButton.cjs.map +1 -1
  161. package/cjs/components/Input/InputClearSection/InputClearSection.cjs.map +1 -1
  162. package/cjs/components/Input/InputDescription/InputDescription.cjs +2 -1
  163. package/cjs/components/Input/InputDescription/InputDescription.cjs.map +1 -1
  164. package/cjs/components/Input/InputError/InputError.cjs +2 -1
  165. package/cjs/components/Input/InputError/InputError.cjs.map +1 -1
  166. package/cjs/components/Input/InputLabel/InputLabel.cjs.map +1 -1
  167. package/cjs/components/Input/InputPlaceholder/InputPlaceholder.cjs +13 -12
  168. package/cjs/components/Input/InputPlaceholder/InputPlaceholder.cjs.map +1 -1
  169. package/cjs/components/Input/InputSuccess/InputSuccess.cjs +2 -1
  170. package/cjs/components/Input/InputSuccess/InputSuccess.cjs.map +1 -1
  171. package/cjs/components/Input/InputWrapper/InputWrapper.cjs.map +1 -1
  172. package/cjs/components/Input/InputWrapper.context.cjs.map +1 -1
  173. package/cjs/components/InputBase/InputBase.cjs.map +1 -1
  174. package/cjs/components/JsonInput/JsonInput.cjs.map +1 -1
  175. package/cjs/components/Kbd/Kbd.cjs +14 -13
  176. package/cjs/components/Kbd/Kbd.cjs.map +1 -1
  177. package/cjs/components/List/List.cjs.map +1 -1
  178. package/cjs/components/List/ListItem/ListItem.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 +14 -13
  184. package/cjs/components/Mark/Mark.cjs.map +1 -1
  185. package/cjs/components/Marquee/Marquee.cjs.map +1 -1
  186. package/cjs/components/MaskInput/MaskInput.cjs +3 -2
  187. package/cjs/components/MaskInput/MaskInput.cjs.map +1 -1
  188. package/cjs/components/MaskInput/use-mask-input-props.cjs.map +1 -1
  189. package/cjs/components/Menu/Menu.cjs.map +1 -1
  190. package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.cjs +4 -3
  191. package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.cjs.map +1 -1
  192. package/cjs/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.context.cjs.map +1 -1
  193. package/cjs/components/Menu/MenuCheckboxItem/MenuCheckboxItem.cjs +2 -1
  194. package/cjs/components/Menu/MenuCheckboxItem/MenuCheckboxItem.cjs.map +1 -1
  195. package/cjs/components/Menu/MenuContextMenu/MenuContextMenu.cjs +3 -2
  196. package/cjs/components/Menu/MenuContextMenu/MenuContextMenu.cjs.map +1 -1
  197. package/cjs/components/Menu/MenuDivider/MenuDivider.cjs +2 -1
  198. package/cjs/components/Menu/MenuDivider/MenuDivider.cjs.map +1 -1
  199. package/cjs/components/Menu/MenuDropdown/MenuDropdown.cjs.map +1 -1
  200. package/cjs/components/Menu/MenuItem/MenuItem.cjs.map +1 -1
  201. package/cjs/components/Menu/MenuLabel/MenuLabel.cjs +2 -1
  202. package/cjs/components/Menu/MenuLabel/MenuLabel.cjs.map +1 -1
  203. package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.cjs.map +1 -1
  204. package/cjs/components/Menu/MenuRadioGroup/MenuRadioGroup.context.cjs.map +1 -1
  205. package/cjs/components/Menu/MenuRadioItem/MenuRadioItem.cjs +2 -1
  206. package/cjs/components/Menu/MenuRadioItem/MenuRadioItem.cjs.map +1 -1
  207. package/cjs/components/Menu/MenuSearch/MenuSearch.cjs.map +1 -1
  208. package/cjs/components/Menu/MenuSelectableItem/MenuSelectableItem.cjs.map +1 -1
  209. package/cjs/components/Menu/MenuSub/MenuSub.cjs +1 -1
  210. package/cjs/components/Menu/MenuSub/MenuSub.cjs.map +1 -1
  211. package/cjs/components/Menu/MenuSub/MenuSub.context.cjs.map +1 -1
  212. package/cjs/components/Menu/MenuSubDropdown/MenuSubDropdown.cjs.map +1 -1
  213. package/cjs/components/Menu/MenuSubItem/MenuSubItem.cjs.map +1 -1
  214. package/cjs/components/Menu/MenuTarget/MenuTarget.cjs.map +1 -1
  215. package/cjs/components/Menu/use-menu-type-ahead.cjs.map +1 -1
  216. package/cjs/components/Menubar/Menubar.cjs.map +1 -1
  217. package/cjs/components/Menubar/MenubarMenu/MenubarMenu.cjs.map +1 -1
  218. package/cjs/components/Menubar/MenubarTarget/MenubarTarget.cjs.map +1 -1
  219. package/cjs/components/Modal/Modal.cjs +2 -1
  220. package/cjs/components/Modal/Modal.cjs.map +1 -1
  221. package/cjs/components/Modal/ModalBody.cjs +2 -1
  222. package/cjs/components/Modal/ModalBody.cjs.map +1 -1
  223. package/cjs/components/Modal/ModalCloseButton.cjs +2 -1
  224. package/cjs/components/Modal/ModalCloseButton.cjs.map +1 -1
  225. package/cjs/components/Modal/ModalContent.cjs.map +1 -1
  226. package/cjs/components/Modal/ModalHeader.cjs +2 -1
  227. package/cjs/components/Modal/ModalHeader.cjs.map +1 -1
  228. package/cjs/components/Modal/ModalOverlay.cjs +2 -1
  229. package/cjs/components/Modal/ModalOverlay.cjs.map +1 -1
  230. package/cjs/components/Modal/ModalRoot.cjs.map +1 -1
  231. package/cjs/components/Modal/ModalStack.cjs +3 -1
  232. package/cjs/components/Modal/ModalStack.cjs.map +1 -1
  233. package/cjs/components/Modal/ModalTitle.cjs +2 -1
  234. package/cjs/components/Modal/ModalTitle.cjs.map +1 -1
  235. package/cjs/components/Modal/use-modals-stack.cjs.map +1 -1
  236. package/cjs/components/ModalBase/ModalBase.cjs +3 -2
  237. package/cjs/components/ModalBase/ModalBase.cjs.map +1 -1
  238. package/cjs/components/ModalBase/ModalBaseBody.cjs.map +1 -1
  239. package/cjs/components/ModalBase/ModalBaseCloseButton.cjs.map +1 -1
  240. package/cjs/components/ModalBase/ModalBaseContent.cjs.map +1 -1
  241. package/cjs/components/ModalBase/ModalBaseHeader.cjs.map +1 -1
  242. package/cjs/components/ModalBase/ModalBaseOverlay.cjs.map +1 -1
  243. package/cjs/components/ModalBase/ModalBaseTitle.cjs.map +1 -1
  244. package/cjs/components/ModalBase/use-lock-scroll.cjs.map +1 -1
  245. package/cjs/components/ModalBase/use-modal.cjs +9 -3
  246. package/cjs/components/ModalBase/use-modal.cjs.map +1 -1
  247. package/cjs/components/MultiSelect/MultiSelect.cjs.map +1 -1
  248. package/cjs/components/NativeSelect/NativeSelect.cjs.map +1 -1
  249. package/cjs/components/NativeSelect/NativeSelectOption.cjs.map +1 -1
  250. package/cjs/components/NavLink/NavLink.cjs.map +1 -1
  251. package/cjs/components/Notification/Notification.cjs +3 -3
  252. package/cjs/components/Notification/Notification.cjs.map +1 -1
  253. package/cjs/components/NumberInput/NumberInput.cjs +5 -3
  254. package/cjs/components/NumberInput/NumberInput.cjs.map +1 -1
  255. package/cjs/components/NumberInput/NumberInputChevron.cjs.map +1 -1
  256. package/cjs/components/OverflowList/OverflowList.cjs +4 -2
  257. package/cjs/components/OverflowList/OverflowList.cjs.map +1 -1
  258. package/cjs/components/OverflowList/use-dimensions.cjs +9 -9
  259. package/cjs/components/OverflowList/use-dimensions.cjs.map +1 -1
  260. package/cjs/components/Overlay/Overlay.cjs +14 -13
  261. package/cjs/components/Overlay/Overlay.cjs.map +1 -1
  262. package/cjs/components/Pagination/Pagination.cjs +2 -1
  263. package/cjs/components/Pagination/Pagination.cjs.map +1 -1
  264. package/cjs/components/Pagination/Pagination.icons.cjs.map +1 -1
  265. package/cjs/components/Pagination/PaginationDots/PaginationDots.cjs +2 -1
  266. package/cjs/components/Pagination/PaginationDots/PaginationDots.cjs.map +1 -1
  267. package/cjs/components/Pagination/PaginationEdges/PaginationEdges.cjs.map +1 -1
  268. package/cjs/components/Pagination/PaginationItems/PaginationItems.cjs +3 -2
  269. package/cjs/components/Pagination/PaginationItems/PaginationItems.cjs.map +1 -1
  270. package/cjs/components/Pagination/PaginationLabel/PaginationLabel.cjs.map +1 -1
  271. package/cjs/components/Pagination/PaginationRoot/PaginationRoot.cjs.map +1 -1
  272. package/cjs/components/Paper/Paper.cjs +1 -1
  273. package/cjs/components/Paper/Paper.cjs.map +1 -1
  274. package/cjs/components/PasswordInput/PasswordInput.cjs.map +1 -1
  275. package/cjs/components/PasswordInput/PasswordToggleIcon.cjs.map +1 -1
  276. package/cjs/components/Pill/Pill.cjs.map +1 -1
  277. package/cjs/components/Pill/PillGroup/PillGroup.cjs.map +1 -1
  278. package/cjs/components/PillsInput/PillsInput.cjs.map +1 -1
  279. package/cjs/components/PillsInput/PillsInput.context.cjs.map +1 -1
  280. package/cjs/components/PillsInput/PillsInputField/PillsInputField.cjs.map +1 -1
  281. package/cjs/components/PinInput/PinInput.cjs +6 -5
  282. package/cjs/components/PinInput/PinInput.cjs.map +1 -1
  283. package/cjs/components/Popover/Popover.cjs.map +1 -1
  284. package/cjs/components/Popover/PopoverContextMenu/PopoverContextMenu.cjs +3 -2
  285. package/cjs/components/Popover/PopoverContextMenu/PopoverContextMenu.cjs.map +1 -1
  286. package/cjs/components/Popover/PopoverDropdown/PopoverDropdown.cjs.map +1 -1
  287. package/cjs/components/Popover/PopoverTarget/PopoverTarget.cjs.map +1 -1
  288. package/cjs/components/Popover/use-popover.cjs +23 -13
  289. package/cjs/components/Popover/use-popover.cjs.map +1 -1
  290. package/cjs/components/Portal/Portal.cjs.map +1 -1
  291. package/cjs/components/Progress/Progress.cjs.map +1 -1
  292. package/cjs/components/Progress/ProgressLabel/ProgressLabel.cjs +2 -1
  293. package/cjs/components/Progress/ProgressLabel/ProgressLabel.cjs.map +1 -1
  294. package/cjs/components/Progress/ProgressRoot/ProgressRoot.cjs.map +1 -1
  295. package/cjs/components/Radio/Radio.cjs.map +1 -1
  296. package/cjs/components/Radio/RadioCard/RadioCard.cjs.map +1 -1
  297. package/cjs/components/Radio/RadioGroup/RadioGroup.cjs.map +1 -1
  298. package/cjs/components/Radio/RadioIcon.cjs.map +1 -1
  299. package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs.map +1 -1
  300. package/cjs/components/Rating/Rating.cjs +6 -3
  301. package/cjs/components/Rating/Rating.cjs.map +1 -1
  302. package/cjs/components/Rating/RatingItem/RatingItem.cjs.map +1 -1
  303. package/cjs/components/Rating/StarSymbol/StarIcon.cjs.map +1 -1
  304. package/cjs/components/Rating/StarSymbol/StarSymbol.cjs +2 -1
  305. package/cjs/components/Rating/StarSymbol/StarSymbol.cjs.map +1 -1
  306. package/cjs/components/RingProgress/Curve/Curve.cjs.map +1 -1
  307. package/cjs/components/RingProgress/RingProgress.cjs.map +1 -1
  308. package/cjs/components/RollingNumber/DigitColumn.cjs.map +1 -1
  309. package/cjs/components/RollingNumber/RollingNumber.cjs +12 -10
  310. package/cjs/components/RollingNumber/RollingNumber.cjs.map +1 -1
  311. package/cjs/components/ScrollArea/ScrollArea.cjs +8 -6
  312. package/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
  313. package/cjs/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.cjs.map +1 -1
  314. package/cjs/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.cjs.map +1 -1
  315. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.cjs.map +1 -1
  316. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.cjs.map +1 -1
  317. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.cjs.map +1 -1
  318. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.cjs.map +1 -1
  319. package/cjs/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.cjs.map +1 -1
  320. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.cjs.map +1 -1
  321. package/cjs/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.cjs.map +1 -1
  322. package/cjs/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.cjs.map +1 -1
  323. package/cjs/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.cjs.map +1 -1
  324. package/cjs/components/ScrollArea/use-resize-observer.cjs.map +1 -1
  325. package/cjs/components/Scroller/Scroller.cjs.map +1 -1
  326. package/cjs/components/SegmentedControl/SegmentedControl.cjs +12 -1
  327. package/cjs/components/SegmentedControl/SegmentedControl.cjs.map +1 -1
  328. package/cjs/components/Select/Select.cjs.map +1 -1
  329. package/cjs/components/SemiCircleProgress/SemiCircleProgress.cjs.map +1 -1
  330. package/cjs/components/SimpleGrid/SimpleGrid.cjs.map +1 -1
  331. package/cjs/components/SimpleGrid/SimpleGridVariables.cjs +10 -8
  332. package/cjs/components/SimpleGrid/SimpleGridVariables.cjs.map +1 -1
  333. package/cjs/components/Skeleton/Skeleton.cjs +14 -13
  334. package/cjs/components/Skeleton/Skeleton.cjs.map +1 -1
  335. package/cjs/components/Slider/Marks/Marks.cjs +3 -2
  336. package/cjs/components/Slider/Marks/Marks.cjs.map +1 -1
  337. package/cjs/components/Slider/RangeSlider/RangeSlider.cjs +20 -11
  338. package/cjs/components/Slider/RangeSlider/RangeSlider.cjs.map +1 -1
  339. package/cjs/components/Slider/Slider/Slider.cjs +6 -6
  340. package/cjs/components/Slider/Slider/Slider.cjs.map +1 -1
  341. package/cjs/components/Slider/Thumb/Thumb.cjs.map +1 -1
  342. package/cjs/components/Slider/Track/Track.cjs.map +1 -1
  343. package/cjs/components/Splitter/GripIcon.cjs.map +1 -1
  344. package/cjs/components/Splitter/Splitter.cjs +8 -7
  345. package/cjs/components/Splitter/Splitter.cjs.map +1 -1
  346. package/cjs/components/Spoiler/Spoiler.cjs.map +1 -1
  347. package/cjs/components/Stack/Stack.cjs +14 -13
  348. package/cjs/components/Stack/Stack.cjs.map +1 -1
  349. package/cjs/components/Stepper/Stepper.cjs +6 -3
  350. package/cjs/components/Stepper/Stepper.cjs.map +1 -1
  351. package/cjs/components/Stepper/Stepper.context.cjs.map +1 -1
  352. package/cjs/components/Stepper/Stepper.module.cjs.map +1 -1
  353. package/cjs/components/Stepper/StepperStep/StepperStep.cjs +3 -2
  354. package/cjs/components/Stepper/StepperStep/StepperStep.cjs.map +1 -1
  355. package/cjs/components/Switch/Switch.cjs.map +1 -1
  356. package/cjs/components/Switch/SwitchGroup/SwitchGroup.cjs.map +1 -1
  357. package/cjs/components/Table/Table.cjs +2 -2
  358. package/cjs/components/Table/Table.cjs.map +1 -1
  359. package/cjs/components/Table/TableScrollContainer.cjs.map +1 -1
  360. package/cjs/components/TableOfContents/TableOfContents.cjs.map +1 -1
  361. package/cjs/components/Tabs/Tabs.cjs.map +1 -1
  362. package/cjs/components/Tabs/TabsPanel/TabsPanel.cjs.map +1 -1
  363. package/cjs/components/Tabs/TabsTab/TabsTab.cjs.map +1 -1
  364. package/cjs/components/TagsInput/TagsInput.cjs.map +1 -1
  365. package/cjs/components/Text/Text.cjs +18 -17
  366. package/cjs/components/Text/Text.cjs.map +1 -1
  367. package/cjs/components/TextInput/TextInput.cjs +6 -5
  368. package/cjs/components/TextInput/TextInput.cjs.map +1 -1
  369. package/cjs/components/Textarea/Autosize.cjs +8 -2
  370. package/cjs/components/Textarea/Autosize.cjs.map +1 -1
  371. package/cjs/components/ThemeIcon/ThemeIcon.cjs +14 -13
  372. package/cjs/components/ThemeIcon/ThemeIcon.cjs.map +1 -1
  373. package/cjs/components/Timeline/Timeline.cjs.map +1 -1
  374. package/cjs/components/Timeline/TimelineItem/TimelineItem.cjs.map +1 -1
  375. package/cjs/components/Title/Title.cjs +1 -1
  376. package/cjs/components/Title/Title.cjs.map +1 -1
  377. package/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  378. package/cjs/components/Tooltip/TooltipFloating/TooltipFloating.cjs.map +1 -1
  379. package/cjs/components/Tooltip/TooltipFloating/use-floating-tooltip.cjs.map +1 -1
  380. package/cjs/components/Tooltip/TooltipGroup/TooltipGroup.cjs.map +1 -1
  381. package/cjs/components/Tooltip/use-tooltip.cjs.map +1 -1
  382. package/cjs/components/Transition/Transition.cjs.map +1 -1
  383. package/cjs/components/Transition/use-transition.cjs.map +1 -1
  384. package/cjs/components/Tree/FlatTreeNode.cjs.map +1 -1
  385. package/cjs/components/Tree/Tree.cjs +2 -1
  386. package/cjs/components/Tree/Tree.cjs.map +1 -1
  387. package/cjs/components/Tree/TreeNode.cjs.map +1 -1
  388. package/cjs/components/Tree/use-tree-node-drag-drop.cjs.map +1 -1
  389. package/cjs/components/Tree/use-tree.cjs.map +1 -1
  390. package/cjs/components/TreeSelect/TreeSelect.cjs +11 -9
  391. package/cjs/components/TreeSelect/TreeSelect.cjs.map +1 -1
  392. package/cjs/components/TreeSelect/TreeSelectOption.cjs.map +1 -1
  393. package/cjs/components/Typography/Typography.cjs +12 -11
  394. package/cjs/components/Typography/Typography.cjs.map +1 -1
  395. package/cjs/components/Typography/Typography.module.cjs.map +1 -1
  396. package/cjs/components/UnstyledButton/UnstyledButton.cjs +12 -11
  397. package/cjs/components/UnstyledButton/UnstyledButton.cjs.map +1 -1
  398. package/cjs/components/VisuallyHidden/VisuallyHidden.cjs +12 -11
  399. package/cjs/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -1
  400. package/cjs/core/Box/Box.cjs.map +1 -1
  401. package/cjs/core/Box/use-random-classname/use-random-classname.cjs.map +1 -1
  402. package/cjs/core/DirectionProvider/DirectionProvider.cjs +3 -2
  403. package/cjs/core/DirectionProvider/DirectionProvider.cjs.map +1 -1
  404. package/cjs/core/InlineStyles/InlineStyles.cjs.map +1 -1
  405. package/cjs/core/MantineProvider/Mantine.context.cjs.map +1 -1
  406. package/cjs/core/MantineProvider/MantineCssVariables/MantineCssVariables.cjs +4 -2
  407. package/cjs/core/MantineProvider/MantineCssVariables/MantineCssVariables.cjs.map +1 -1
  408. package/cjs/core/MantineProvider/MantineProvider.cjs +3 -3
  409. package/cjs/core/MantineProvider/MantineProvider.cjs.map +1 -1
  410. package/cjs/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.cjs.map +1 -1
  411. package/cjs/core/MantineProvider/color-functions/get-contrast-color/get-contrast-color.cjs.map +1 -1
  412. package/cjs/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.cjs.map +1 -1
  413. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-computed-color-scheme.cjs.map +1 -1
  414. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.cjs +2 -1
  415. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.cjs.map +1 -1
  416. package/cjs/core/MantineProvider/use-mantine-color-scheme/use-provider-color-scheme.cjs.map +1 -1
  417. package/cjs/core/MantineProvider/use-matches/use-matches.cjs.map +1 -1
  418. package/cjs/core/styles-api/use-styles/get-class-name/get-class-name.cjs.map +1 -1
  419. package/cjs/core/styles-api/use-styles/get-class-name/get-global-class-names/get-global-class-names.cjs.map +1 -1
  420. package/cjs/core/styles-api/use-styles/get-class-name/resolve-class-names/resolve-class-names.cjs.map +1 -1
  421. package/cjs/core/utils/create-safe-context/create-safe-context.cjs.map +1 -1
  422. package/cjs/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.cjs +0 -1
  423. package/cjs/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.cjs.map +1 -1
  424. package/cjs/core/utils/deep-merge/deep-merge.cjs +4 -3
  425. package/cjs/core/utils/deep-merge/deep-merge.cjs.map +1 -1
  426. package/cjs/core/utils/use-hovered/use-hovered.cjs.map +1 -1
  427. package/cjs/index.cjs +6 -0
  428. package/cjs/utils/Floating/use-context-menu-handlers.cjs.map +1 -1
  429. package/cjs/utils/Floating/use-delayed-hover.cjs.map +1 -1
  430. package/cjs/utils/InlineInput/InlineInput.cjs.map +1 -1
  431. package/cjs/utils/InputsGroupFieldset/InputsGroupFieldset.cjs.map +1 -1
  432. package/esm/components/Accordion/Accordion.mjs.map +1 -1
  433. package/esm/components/Accordion/Accordion.module.mjs.map +1 -1
  434. package/esm/components/Accordion/AccordionChevron.mjs.map +1 -1
  435. package/esm/components/Accordion/AccordionControl/AccordionControl.mjs.map +1 -1
  436. package/esm/components/Accordion/AccordionItem/AccordionItem.mjs.map +1 -1
  437. package/esm/components/Accordion/AccordionPanel/AccordionPanel.mjs.map +1 -1
  438. package/esm/components/ActionBar/ActionBar.context.mjs +8 -0
  439. package/esm/components/ActionBar/ActionBar.context.mjs.map +1 -0
  440. package/esm/components/ActionBar/ActionBar.mjs +94 -0
  441. package/esm/components/ActionBar/ActionBar.mjs.map +1 -0
  442. package/esm/components/ActionBar/ActionBar.module.mjs +10 -0
  443. package/esm/components/ActionBar/ActionBar.module.mjs.map +1 -0
  444. package/esm/components/ActionBar/ActionBarCloseButton/ActionBarCloseButton.mjs +33 -0
  445. package/esm/components/ActionBar/ActionBarCloseButton/ActionBarCloseButton.mjs.map +1 -0
  446. package/esm/components/ActionBar/ActionBarDivider/ActionBarDivider.mjs +30 -0
  447. package/esm/components/ActionBar/ActionBarDivider/ActionBarDivider.mjs.map +1 -0
  448. package/esm/components/ActionIcon/ActionIcon.mjs.map +1 -1
  449. package/esm/components/ActionIcon/ActionIconGroup/ActionIconGroup.mjs +16 -15
  450. package/esm/components/ActionIcon/ActionIconGroup/ActionIconGroup.mjs.map +1 -1
  451. package/esm/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.mjs +15 -14
  452. package/esm/components/ActionIcon/ActionIconGroupSection/ActionIconGroupSection.mjs.map +1 -1
  453. package/esm/components/Affix/Affix.mjs.map +1 -1
  454. package/esm/components/Alert/Alert.mjs.map +1 -1
  455. package/esm/components/AngleSlider/AngleSlider.mjs +5 -4
  456. package/esm/components/AngleSlider/AngleSlider.mjs.map +1 -1
  457. package/esm/components/AppShell/AppShell.mjs.map +1 -1
  458. package/esm/components/AppShell/AppShellMain/AppShellMain.mjs +2 -1
  459. package/esm/components/AppShell/AppShellMain/AppShellMain.mjs.map +1 -1
  460. package/esm/components/AspectRatio/AspectRatio.mjs +14 -13
  461. package/esm/components/AspectRatio/AspectRatio.mjs.map +1 -1
  462. package/esm/components/Autocomplete/Autocomplete.mjs.map +1 -1
  463. package/esm/components/Avatar/Avatar.mjs.map +1 -1
  464. package/esm/components/Avatar/AvatarGroup/AvatarGroup.mjs.map +1 -1
  465. package/esm/components/Avatar/AvatarPlaceholderIcon.mjs.map +1 -1
  466. package/esm/components/BackgroundImage/BackgroundImage.mjs +14 -13
  467. package/esm/components/BackgroundImage/BackgroundImage.mjs.map +1 -1
  468. package/esm/components/Badge/Badge.mjs.map +1 -1
  469. package/esm/components/Blockquote/Blockquote.mjs +6 -5
  470. package/esm/components/Blockquote/Blockquote.mjs.map +1 -1
  471. package/esm/components/Breadcrumbs/Breadcrumbs.mjs.map +1 -1
  472. package/esm/components/Burger/Burger.mjs.map +1 -1
  473. package/esm/components/Button/Button.mjs.map +1 -1
  474. package/esm/components/Button/ButtonGroup/ButtonGroup.mjs +16 -15
  475. package/esm/components/Button/ButtonGroup/ButtonGroup.mjs.map +1 -1
  476. package/esm/components/Button/ButtonGroupSection/ButtonGroupSection.mjs +15 -14
  477. package/esm/components/Button/ButtonGroupSection/ButtonGroupSection.mjs.map +1 -1
  478. package/esm/components/Card/Card.mjs.map +1 -1
  479. package/esm/components/Cascader/Cascader.mjs +5 -4
  480. package/esm/components/Cascader/Cascader.mjs.map +1 -1
  481. package/esm/components/Cascader/CascaderColumns.mjs +2 -1
  482. package/esm/components/Cascader/CascaderColumns.mjs.map +1 -1
  483. package/esm/components/Cascader/get-cascader-columns.mjs.map +1 -1
  484. package/esm/components/Checkbox/CheckIcon.mjs +6 -5
  485. package/esm/components/Checkbox/CheckIcon.mjs.map +1 -1
  486. package/esm/components/Checkbox/Checkbox.mjs +1 -1
  487. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  488. package/esm/components/Checkbox/CheckboxCard/CheckboxCard.mjs +2 -1
  489. package/esm/components/Checkbox/CheckboxCard/CheckboxCard.mjs.map +1 -1
  490. package/esm/components/Checkbox/CheckboxGroup/CheckboxGroup.mjs.map +1 -1
  491. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.mjs.map +1 -1
  492. package/esm/components/Chip/Chip.mjs.map +1 -1
  493. package/esm/components/CloseButton/CloseButton.mjs.map +1 -1
  494. package/esm/components/CloseButton/CloseIcon.mjs.map +1 -1
  495. package/esm/components/Collapse/Collapse.mjs.map +1 -1
  496. package/esm/components/ColorInput/ColorInput.mjs.map +1 -1
  497. package/esm/components/ColorInput/EyeDropperIcon.mjs.map +1 -1
  498. package/esm/components/ColorPicker/ColorPicker.mjs.map +1 -1
  499. package/esm/components/ColorPicker/ColorSlider/ColorSlider.mjs +4 -6
  500. package/esm/components/ColorPicker/ColorSlider/ColorSlider.mjs.map +1 -1
  501. package/esm/components/ColorPicker/Saturation/Saturation.mjs +4 -6
  502. package/esm/components/ColorPicker/Saturation/Saturation.mjs.map +1 -1
  503. package/esm/components/ColorPicker/Swatches/Swatches.mjs.map +1 -1
  504. package/esm/components/ColorSwatch/ColorSwatch.mjs.map +1 -1
  505. package/esm/components/Combobox/Combobox.mjs.map +1 -1
  506. package/esm/components/Combobox/ComboboxChevron/ComboboxChevron.mjs.map +1 -1
  507. package/esm/components/Combobox/ComboboxEmpty/ComboboxEmpty.mjs +2 -1
  508. package/esm/components/Combobox/ComboboxEmpty/ComboboxEmpty.mjs.map +1 -1
  509. package/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.mjs +10 -9
  510. package/esm/components/Combobox/ComboboxEventsTarget/ComboboxEventsTarget.mjs.map +1 -1
  511. package/esm/components/Combobox/ComboboxFooter/ComboboxFooter.mjs +2 -1
  512. package/esm/components/Combobox/ComboboxFooter/ComboboxFooter.mjs.map +1 -1
  513. package/esm/components/Combobox/ComboboxGroup/ComboboxGroup.mjs.map +1 -1
  514. package/esm/components/Combobox/ComboboxHeader/ComboboxHeader.mjs +2 -1
  515. package/esm/components/Combobox/ComboboxHeader/ComboboxHeader.mjs.map +1 -1
  516. package/esm/components/Combobox/ComboboxTarget/ComboboxTarget.mjs +10 -9
  517. package/esm/components/Combobox/ComboboxTarget/ComboboxTarget.mjs.map +1 -1
  518. package/esm/components/Combobox/OptionsDropdown/OptionsDropdown.mjs.map +1 -1
  519. package/esm/components/Combobox/OptionsDropdown/default-options-filter.mjs.map +1 -1
  520. package/esm/components/Combobox/use-combobox/get-index/get-index.mjs.map +1 -1
  521. package/esm/components/Combobox/use-combobox/get-index/get-virtualized-index.mjs.map +1 -1
  522. package/esm/components/Combobox/use-combobox-target-props/use-combobox-target-props.mjs.map +1 -1
  523. package/esm/components/ComboboxPopover/ComboboxPopover.mjs.map +1 -1
  524. package/esm/components/ComboboxPopover/ComboboxPopoverTarget.mjs +13 -12
  525. package/esm/components/ComboboxPopover/ComboboxPopoverTarget.mjs.map +1 -1
  526. package/esm/components/DataList/DataList.mjs.map +1 -1
  527. package/esm/components/Dialog/Dialog.mjs.map +1 -1
  528. package/esm/components/Divider/Divider.mjs.map +1 -1
  529. package/esm/components/Drawer/Drawer.mjs +2 -1
  530. package/esm/components/Drawer/Drawer.mjs.map +1 -1
  531. package/esm/components/Drawer/DrawerBody.mjs +2 -1
  532. package/esm/components/Drawer/DrawerBody.mjs.map +1 -1
  533. package/esm/components/Drawer/DrawerCloseButton.mjs +2 -1
  534. package/esm/components/Drawer/DrawerCloseButton.mjs.map +1 -1
  535. package/esm/components/Drawer/DrawerContent.mjs.map +1 -1
  536. package/esm/components/Drawer/DrawerHeader.mjs +2 -1
  537. package/esm/components/Drawer/DrawerHeader.mjs.map +1 -1
  538. package/esm/components/Drawer/DrawerOverlay.mjs +2 -1
  539. package/esm/components/Drawer/DrawerOverlay.mjs.map +1 -1
  540. package/esm/components/Drawer/DrawerRoot.mjs.map +1 -1
  541. package/esm/components/Drawer/DrawerStack.mjs +3 -1
  542. package/esm/components/Drawer/DrawerStack.mjs.map +1 -1
  543. package/esm/components/Drawer/DrawerTitle.mjs +2 -1
  544. package/esm/components/Drawer/DrawerTitle.mjs.map +1 -1
  545. package/esm/components/EmptyState/EmptyState.mjs.map +1 -1
  546. package/esm/components/EmptyState/EmptyStateActions/EmptyStateActions.mjs +2 -1
  547. package/esm/components/EmptyState/EmptyStateActions/EmptyStateActions.mjs.map +1 -1
  548. package/esm/components/EmptyState/EmptyStateDescription/EmptyStateDescription.mjs +2 -1
  549. package/esm/components/EmptyState/EmptyStateDescription/EmptyStateDescription.mjs.map +1 -1
  550. package/esm/components/Fieldset/Fieldset.mjs.map +1 -1
  551. package/esm/components/FileInput/FileInput.mjs.map +1 -1
  552. package/esm/components/FloatingWindow/FloatingWindow.mjs.map +1 -1
  553. package/esm/components/FocusTrap/FocusTrap.mjs +2 -1
  554. package/esm/components/FocusTrap/FocusTrap.mjs.map +1 -1
  555. package/esm/components/Grid/Grid.mjs.map +1 -1
  556. package/esm/components/Group/Group.mjs +16 -14
  557. package/esm/components/Group/Group.mjs.map +1 -1
  558. package/esm/components/Highlight/Highlight.mjs.map +1 -1
  559. package/esm/components/HoverCard/HoverCard.mjs.map +1 -1
  560. package/esm/components/HoverCard/HoverCardGroup/HoverCardGroup.mjs.map +1 -1
  561. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs.map +1 -1
  562. package/esm/components/Indicator/Indicator.mjs.map +1 -1
  563. package/esm/components/Input/Input.mjs +3 -3
  564. package/esm/components/Input/Input.mjs.map +1 -1
  565. package/esm/components/Input/InputClearSection/InputClearSection.mjs.map +1 -1
  566. package/esm/components/Input/InputDescription/InputDescription.mjs +2 -1
  567. package/esm/components/Input/InputDescription/InputDescription.mjs.map +1 -1
  568. package/esm/components/Input/InputError/InputError.mjs +2 -1
  569. package/esm/components/Input/InputError/InputError.mjs.map +1 -1
  570. package/esm/components/Input/InputLabel/InputLabel.mjs.map +1 -1
  571. package/esm/components/Input/InputPlaceholder/InputPlaceholder.mjs +13 -12
  572. package/esm/components/Input/InputPlaceholder/InputPlaceholder.mjs.map +1 -1
  573. package/esm/components/Input/InputSuccess/InputSuccess.mjs +2 -1
  574. package/esm/components/Input/InputSuccess/InputSuccess.mjs.map +1 -1
  575. package/esm/components/Input/InputWrapper/InputWrapper.mjs.map +1 -1
  576. package/esm/components/InputBase/InputBase.mjs.map +1 -1
  577. package/esm/components/Kbd/Kbd.mjs +14 -13
  578. package/esm/components/Kbd/Kbd.mjs.map +1 -1
  579. package/esm/components/List/List.mjs.map +1 -1
  580. package/esm/components/List/ListItem/ListItem.mjs.map +1 -1
  581. package/esm/components/Loader/loaders/Bars.mjs.map +1 -1
  582. package/esm/components/Loader/loaders/Dots.mjs.map +1 -1
  583. package/esm/components/LoadingOverlay/LoadingOverlay.mjs.map +1 -1
  584. package/esm/components/Mark/Mark.mjs +14 -13
  585. package/esm/components/Mark/Mark.mjs.map +1 -1
  586. package/esm/components/Marquee/Marquee.mjs.map +1 -1
  587. package/esm/components/MaskInput/MaskInput.mjs +3 -2
  588. package/esm/components/MaskInput/MaskInput.mjs.map +1 -1
  589. package/esm/components/Menu/Menu.mjs.map +1 -1
  590. package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.mjs +4 -3
  591. package/esm/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.mjs.map +1 -1
  592. package/esm/components/Menu/MenuCheckboxItem/MenuCheckboxItem.mjs +2 -1
  593. package/esm/components/Menu/MenuCheckboxItem/MenuCheckboxItem.mjs.map +1 -1
  594. package/esm/components/Menu/MenuContextMenu/MenuContextMenu.mjs +3 -2
  595. package/esm/components/Menu/MenuContextMenu/MenuContextMenu.mjs.map +1 -1
  596. package/esm/components/Menu/MenuDivider/MenuDivider.mjs +2 -1
  597. package/esm/components/Menu/MenuDivider/MenuDivider.mjs.map +1 -1
  598. package/esm/components/Menu/MenuDropdown/MenuDropdown.mjs.map +1 -1
  599. package/esm/components/Menu/MenuItem/MenuItem.mjs.map +1 -1
  600. package/esm/components/Menu/MenuLabel/MenuLabel.mjs +2 -1
  601. package/esm/components/Menu/MenuLabel/MenuLabel.mjs.map +1 -1
  602. package/esm/components/Menu/MenuRadioItem/MenuRadioItem.mjs +2 -1
  603. package/esm/components/Menu/MenuRadioItem/MenuRadioItem.mjs.map +1 -1
  604. package/esm/components/Menu/MenuSelectableItem/MenuSelectableItem.mjs.map +1 -1
  605. package/esm/components/Menu/MenuSub/MenuSub.mjs +1 -1
  606. package/esm/components/Menu/MenuSub/MenuSub.mjs.map +1 -1
  607. package/esm/components/Menu/MenuSubItem/MenuSubItem.mjs.map +1 -1
  608. package/esm/components/Menu/MenuTarget/MenuTarget.mjs.map +1 -1
  609. package/esm/components/Menubar/Menubar.mjs.map +1 -1
  610. package/esm/components/Menubar/MenubarMenu/MenubarMenu.mjs.map +1 -1
  611. package/esm/components/Menubar/MenubarTarget/MenubarTarget.mjs.map +1 -1
  612. package/esm/components/Modal/Modal.mjs +2 -1
  613. package/esm/components/Modal/Modal.mjs.map +1 -1
  614. package/esm/components/Modal/ModalBody.mjs +2 -1
  615. package/esm/components/Modal/ModalBody.mjs.map +1 -1
  616. package/esm/components/Modal/ModalCloseButton.mjs +2 -1
  617. package/esm/components/Modal/ModalCloseButton.mjs.map +1 -1
  618. package/esm/components/Modal/ModalContent.mjs.map +1 -1
  619. package/esm/components/Modal/ModalHeader.mjs +2 -1
  620. package/esm/components/Modal/ModalHeader.mjs.map +1 -1
  621. package/esm/components/Modal/ModalOverlay.mjs +2 -1
  622. package/esm/components/Modal/ModalOverlay.mjs.map +1 -1
  623. package/esm/components/Modal/ModalRoot.mjs.map +1 -1
  624. package/esm/components/Modal/ModalStack.mjs +3 -1
  625. package/esm/components/Modal/ModalStack.mjs.map +1 -1
  626. package/esm/components/Modal/ModalTitle.mjs +2 -1
  627. package/esm/components/Modal/ModalTitle.mjs.map +1 -1
  628. package/esm/components/ModalBase/ModalBase.mjs +3 -2
  629. package/esm/components/ModalBase/ModalBase.mjs.map +1 -1
  630. package/esm/components/ModalBase/ModalBaseContent.mjs.map +1 -1
  631. package/esm/components/ModalBase/ModalBaseOverlay.mjs.map +1 -1
  632. package/esm/components/ModalBase/use-modal.mjs +9 -3
  633. package/esm/components/ModalBase/use-modal.mjs.map +1 -1
  634. package/esm/components/MultiSelect/MultiSelect.mjs.map +1 -1
  635. package/esm/components/NativeSelect/NativeSelect.mjs.map +1 -1
  636. package/esm/components/NativeSelect/NativeSelectOption.mjs.map +1 -1
  637. package/esm/components/NavLink/NavLink.mjs.map +1 -1
  638. package/esm/components/Notification/Notification.mjs +3 -3
  639. package/esm/components/Notification/Notification.mjs.map +1 -1
  640. package/esm/components/NumberInput/NumberInput.mjs +5 -3
  641. package/esm/components/NumberInput/NumberInput.mjs.map +1 -1
  642. package/esm/components/NumberInput/NumberInputChevron.mjs.map +1 -1
  643. package/esm/components/OverflowList/OverflowList.mjs +4 -2
  644. package/esm/components/OverflowList/OverflowList.mjs.map +1 -1
  645. package/esm/components/OverflowList/use-dimensions.mjs +9 -9
  646. package/esm/components/OverflowList/use-dimensions.mjs.map +1 -1
  647. package/esm/components/Overlay/Overlay.mjs +14 -13
  648. package/esm/components/Overlay/Overlay.mjs.map +1 -1
  649. package/esm/components/Pagination/Pagination.icons.mjs.map +1 -1
  650. package/esm/components/Pagination/Pagination.mjs +2 -1
  651. package/esm/components/Pagination/Pagination.mjs.map +1 -1
  652. package/esm/components/Pagination/PaginationDots/PaginationDots.mjs +2 -1
  653. package/esm/components/Pagination/PaginationDots/PaginationDots.mjs.map +1 -1
  654. package/esm/components/Pagination/PaginationEdges/PaginationEdges.mjs.map +1 -1
  655. package/esm/components/Pagination/PaginationItems/PaginationItems.mjs +3 -2
  656. package/esm/components/Pagination/PaginationItems/PaginationItems.mjs.map +1 -1
  657. package/esm/components/Pagination/PaginationLabel/PaginationLabel.mjs.map +1 -1
  658. package/esm/components/Pagination/PaginationRoot/PaginationRoot.mjs.map +1 -1
  659. package/esm/components/Paper/Paper.mjs +1 -1
  660. package/esm/components/Paper/Paper.mjs.map +1 -1
  661. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  662. package/esm/components/PasswordInput/PasswordToggleIcon.mjs.map +1 -1
  663. package/esm/components/Pill/Pill.mjs.map +1 -1
  664. package/esm/components/Pill/PillGroup/PillGroup.mjs.map +1 -1
  665. package/esm/components/PillsInput/PillsInput.mjs.map +1 -1
  666. package/esm/components/PinInput/PinInput.mjs +6 -5
  667. package/esm/components/PinInput/PinInput.mjs.map +1 -1
  668. package/esm/components/Popover/Popover.mjs.map +1 -1
  669. package/esm/components/Popover/PopoverContextMenu/PopoverContextMenu.mjs +3 -2
  670. package/esm/components/Popover/PopoverContextMenu/PopoverContextMenu.mjs.map +1 -1
  671. package/esm/components/Popover/PopoverDropdown/PopoverDropdown.mjs.map +1 -1
  672. package/esm/components/Popover/use-popover.mjs +23 -13
  673. package/esm/components/Popover/use-popover.mjs.map +1 -1
  674. package/esm/components/Progress/Progress.mjs.map +1 -1
  675. package/esm/components/Progress/ProgressLabel/ProgressLabel.mjs +2 -1
  676. package/esm/components/Progress/ProgressLabel/ProgressLabel.mjs.map +1 -1
  677. package/esm/components/Progress/ProgressRoot/ProgressRoot.mjs.map +1 -1
  678. package/esm/components/Radio/Radio.mjs.map +1 -1
  679. package/esm/components/Radio/RadioCard/RadioCard.mjs.map +1 -1
  680. package/esm/components/Radio/RadioGroup/RadioGroup.mjs.map +1 -1
  681. package/esm/components/Radio/RadioIcon.mjs.map +1 -1
  682. package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs.map +1 -1
  683. package/esm/components/Rating/Rating.mjs +6 -3
  684. package/esm/components/Rating/Rating.mjs.map +1 -1
  685. package/esm/components/Rating/RatingItem/RatingItem.mjs.map +1 -1
  686. package/esm/components/Rating/StarSymbol/StarIcon.mjs.map +1 -1
  687. package/esm/components/Rating/StarSymbol/StarSymbol.mjs +2 -1
  688. package/esm/components/Rating/StarSymbol/StarSymbol.mjs.map +1 -1
  689. package/esm/components/RingProgress/Curve/Curve.mjs.map +1 -1
  690. package/esm/components/RingProgress/RingProgress.mjs.map +1 -1
  691. package/esm/components/RollingNumber/DigitColumn.mjs.map +1 -1
  692. package/esm/components/RollingNumber/RollingNumber.mjs +12 -10
  693. package/esm/components/RollingNumber/RollingNumber.mjs.map +1 -1
  694. package/esm/components/ScrollArea/ScrollArea.mjs +8 -6
  695. package/esm/components/ScrollArea/ScrollArea.mjs.map +1 -1
  696. package/esm/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.mjs.map +1 -1
  697. package/esm/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.mjs.map +1 -1
  698. package/esm/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.mjs.map +1 -1
  699. package/esm/components/Scroller/Scroller.mjs.map +1 -1
  700. package/esm/components/SegmentedControl/SegmentedControl.mjs +12 -1
  701. package/esm/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
  702. package/esm/components/Select/Select.mjs.map +1 -1
  703. package/esm/components/SemiCircleProgress/SemiCircleProgress.mjs.map +1 -1
  704. package/esm/components/SimpleGrid/SimpleGrid.mjs.map +1 -1
  705. package/esm/components/SimpleGrid/SimpleGridVariables.mjs +10 -8
  706. package/esm/components/SimpleGrid/SimpleGridVariables.mjs.map +1 -1
  707. package/esm/components/Skeleton/Skeleton.mjs +14 -13
  708. package/esm/components/Skeleton/Skeleton.mjs.map +1 -1
  709. package/esm/components/Slider/Marks/Marks.mjs +3 -2
  710. package/esm/components/Slider/Marks/Marks.mjs.map +1 -1
  711. package/esm/components/Slider/RangeSlider/RangeSlider.mjs +20 -11
  712. package/esm/components/Slider/RangeSlider/RangeSlider.mjs.map +1 -1
  713. package/esm/components/Slider/Slider/Slider.mjs +6 -6
  714. package/esm/components/Slider/Slider/Slider.mjs.map +1 -1
  715. package/esm/components/Slider/Thumb/Thumb.mjs.map +1 -1
  716. package/esm/components/Slider/Track/Track.mjs.map +1 -1
  717. package/esm/components/Splitter/GripIcon.mjs.map +1 -1
  718. package/esm/components/Splitter/Splitter.mjs +8 -7
  719. package/esm/components/Splitter/Splitter.mjs.map +1 -1
  720. package/esm/components/Spoiler/Spoiler.mjs.map +1 -1
  721. package/esm/components/Stack/Stack.mjs +14 -13
  722. package/esm/components/Stack/Stack.mjs.map +1 -1
  723. package/esm/components/Stepper/Stepper.context.mjs.map +1 -1
  724. package/esm/components/Stepper/Stepper.mjs +6 -3
  725. package/esm/components/Stepper/Stepper.mjs.map +1 -1
  726. package/esm/components/Stepper/Stepper.module.mjs.map +1 -1
  727. package/esm/components/Stepper/StepperStep/StepperStep.mjs +3 -2
  728. package/esm/components/Stepper/StepperStep/StepperStep.mjs.map +1 -1
  729. package/esm/components/Switch/Switch.mjs.map +1 -1
  730. package/esm/components/Switch/SwitchGroup/SwitchGroup.mjs.map +1 -1
  731. package/esm/components/Table/Table.mjs +2 -2
  732. package/esm/components/Table/Table.mjs.map +1 -1
  733. package/esm/components/Table/TableScrollContainer.mjs.map +1 -1
  734. package/esm/components/TableOfContents/TableOfContents.mjs.map +1 -1
  735. package/esm/components/Tabs/Tabs.mjs.map +1 -1
  736. package/esm/components/Tabs/TabsPanel/TabsPanel.mjs.map +1 -1
  737. package/esm/components/Tabs/TabsTab/TabsTab.mjs.map +1 -1
  738. package/esm/components/TagsInput/TagsInput.mjs.map +1 -1
  739. package/esm/components/Text/Text.mjs +18 -17
  740. package/esm/components/Text/Text.mjs.map +1 -1
  741. package/esm/components/TextInput/TextInput.mjs +6 -5
  742. package/esm/components/TextInput/TextInput.mjs.map +1 -1
  743. package/esm/components/Textarea/Autosize.mjs +9 -3
  744. package/esm/components/Textarea/Autosize.mjs.map +1 -1
  745. package/esm/components/ThemeIcon/ThemeIcon.mjs +14 -13
  746. package/esm/components/ThemeIcon/ThemeIcon.mjs.map +1 -1
  747. package/esm/components/Timeline/Timeline.mjs.map +1 -1
  748. package/esm/components/Timeline/TimelineItem/TimelineItem.mjs.map +1 -1
  749. package/esm/components/Title/Title.mjs +1 -1
  750. package/esm/components/Title/Title.mjs.map +1 -1
  751. package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  752. package/esm/components/Tooltip/TooltipFloating/TooltipFloating.mjs.map +1 -1
  753. package/esm/components/Tooltip/TooltipGroup/TooltipGroup.mjs.map +1 -1
  754. package/esm/components/Transition/Transition.mjs.map +1 -1
  755. package/esm/components/Tree/FlatTreeNode.mjs.map +1 -1
  756. package/esm/components/Tree/Tree.mjs +2 -1
  757. package/esm/components/Tree/Tree.mjs.map +1 -1
  758. package/esm/components/Tree/TreeNode.mjs.map +1 -1
  759. package/esm/components/Tree/use-tree.mjs.map +1 -1
  760. package/esm/components/TreeSelect/TreeSelect.mjs +11 -9
  761. package/esm/components/TreeSelect/TreeSelect.mjs.map +1 -1
  762. package/esm/components/TreeSelect/TreeSelectOption.mjs.map +1 -1
  763. package/esm/components/Typography/Typography.mjs +12 -11
  764. package/esm/components/Typography/Typography.mjs.map +1 -1
  765. package/esm/components/Typography/Typography.module.mjs.map +1 -1
  766. package/esm/components/UnstyledButton/UnstyledButton.mjs +12 -11
  767. package/esm/components/UnstyledButton/UnstyledButton.mjs.map +1 -1
  768. package/esm/components/VisuallyHidden/VisuallyHidden.mjs +12 -11
  769. package/esm/components/VisuallyHidden/VisuallyHidden.mjs.map +1 -1
  770. package/esm/core/DirectionProvider/DirectionProvider.mjs +3 -2
  771. package/esm/core/DirectionProvider/DirectionProvider.mjs.map +1 -1
  772. package/esm/core/InlineStyles/InlineStyles.mjs.map +1 -1
  773. package/esm/core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs +4 -2
  774. package/esm/core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs.map +1 -1
  775. package/esm/core/MantineProvider/MantineProvider.mjs +3 -3
  776. package/esm/core/MantineProvider/MantineProvider.mjs.map +1 -1
  777. package/esm/core/MantineProvider/color-functions/get-contrast-color/get-contrast-color.mjs.map +1 -1
  778. package/esm/core/MantineProvider/merge-mantine-theme/merge-mantine-theme.mjs.map +1 -1
  779. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs +2 -1
  780. package/esm/core/MantineProvider/use-mantine-color-scheme/use-mantine-color-scheme.mjs.map +1 -1
  781. package/esm/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.mjs +0 -1
  782. package/esm/core/utils/create-scoped-keydown-handler/create-scoped-keydown-handler.mjs.map +1 -1
  783. package/esm/core/utils/deep-merge/deep-merge.mjs +4 -3
  784. package/esm/core/utils/deep-merge/deep-merge.mjs.map +1 -1
  785. package/esm/index.mjs +4 -1
  786. package/esm/utils/InlineInput/InlineInput.mjs.map +1 -1
  787. package/lib/components/Accordion/Accordion.d.ts +1 -1
  788. package/lib/components/Accordion/AccordionChevron.d.ts +1 -1
  789. package/lib/components/ActionBar/ActionBar.context.d.ts +8 -0
  790. package/lib/components/ActionBar/ActionBar.d.ts +44 -0
  791. package/lib/components/ActionBar/ActionBarCloseButton/ActionBarCloseButton.d.ts +22 -0
  792. package/lib/components/ActionBar/ActionBarDivider/ActionBarDivider.d.ts +16 -0
  793. package/lib/components/ActionBar/index.d.ts +17 -0
  794. package/lib/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.d.ts +1 -1
  795. package/lib/components/Avatar/AvatarPlaceholderIcon.d.ts +1 -1
  796. package/lib/components/Cascader/CascaderColumns.d.ts +1 -1
  797. package/lib/components/Checkbox/CheckIcon.d.ts +2 -2
  798. package/lib/components/CloseButton/CloseIcon.d.ts +1 -1
  799. package/lib/components/ColorInput/EyeDropperIcon.d.ts +1 -1
  800. package/lib/components/ColorPicker/Saturation/Saturation.d.ts +1 -1
  801. package/lib/components/ColorPicker/Swatches/Swatches.d.ts +1 -1
  802. package/lib/components/ColorPicker/Thumb/Thumb.d.ts +1 -1
  803. package/lib/components/Combobox/Combobox.d.ts +1 -1
  804. package/lib/components/Combobox/ComboboxClearButton/ComboboxClearButton.d.ts +1 -1
  805. package/lib/components/Combobox/ComboboxHiddenInput/ComboboxHiddenInput.d.ts +1 -1
  806. package/lib/components/Combobox/OptionsDropdown/OptionsDropdown.d.ts +1 -1
  807. package/lib/components/CopyButton/CopyButton.d.ts +1 -1
  808. package/lib/components/Drawer/DrawerStack.d.ts +2 -1
  809. package/lib/components/FocusTrap/FocusTrap.d.ts +1 -1
  810. package/lib/components/Grid/GridCol/GridColVariables.d.ts +1 -1
  811. package/lib/components/Grid/GridVariables.d.ts +1 -1
  812. package/lib/components/HoverCard/HoverCard.d.ts +1 -1
  813. package/lib/components/HoverCard/HoverCardDropdown/HoverCardDropdown.d.ts +1 -1
  814. package/lib/components/HoverCard/HoverCardGroup/HoverCardGroup.d.ts +1 -1
  815. package/lib/components/HoverCard/HoverCardTarget/HoverCardTarget.d.ts +1 -1
  816. package/lib/components/Input/InputClearSection/InputClearSection.d.ts +1 -1
  817. package/lib/components/Input/index.d.ts +1 -1
  818. package/lib/components/Menu/Menu.d.ts +1 -1
  819. package/lib/components/Menu/MenuCheckboxGroup/MenuCheckboxGroup.d.ts +1 -1
  820. package/lib/components/Menu/MenuRadioGroup/MenuRadioGroup.d.ts +1 -1
  821. package/lib/components/Menu/MenuSelectableItem/MenuSelectableItem.d.ts +1 -1
  822. package/lib/components/Menu/MenuSub/MenuSub.d.ts +4 -2
  823. package/lib/components/Menu/MenuSubTarget/MenuSubTarget.d.ts +1 -1
  824. package/lib/components/Menu/MenuTarget/MenuTarget.d.ts +1 -1
  825. package/lib/components/Menubar/MenubarDropdown/MenubarDropdown.d.ts +1 -1
  826. package/lib/components/Menubar/MenubarMenu/MenubarMenu.d.ts +1 -1
  827. package/lib/components/Menubar/MenubarTarget/MenubarTarget.d.ts +1 -1
  828. package/lib/components/Modal/ModalStack.d.ts +2 -1
  829. package/lib/components/ModalBase/ModalBase.d.ts +2 -1
  830. package/lib/components/ModalBase/ModalBaseBody.d.ts +1 -1
  831. package/lib/components/ModalBase/ModalBaseCloseButton.d.ts +1 -1
  832. package/lib/components/ModalBase/ModalBaseContent.d.ts +1 -1
  833. package/lib/components/ModalBase/ModalBaseHeader.d.ts +1 -1
  834. package/lib/components/ModalBase/ModalBaseOverlay.d.ts +1 -1
  835. package/lib/components/ModalBase/ModalBaseTitle.d.ts +1 -1
  836. package/lib/components/ModalBase/NativeScrollArea.d.ts +1 -1
  837. package/lib/components/ModalBase/use-modal.d.ts +2 -1
  838. package/lib/components/NativeSelect/NativeSelectOption.d.ts +1 -1
  839. package/lib/components/NumberFormatter/NumberFormatter.d.ts +1 -1
  840. package/lib/components/NumberInput/NumberInputChevron.d.ts +1 -1
  841. package/lib/components/Pagination/Pagination.icons.d.ts +5 -5
  842. package/lib/components/Pagination/PaginationItems/PaginationItems.d.ts +1 -1
  843. package/lib/components/PasswordInput/PasswordToggleIcon.d.ts +1 -1
  844. package/lib/components/Popover/Popover.d.ts +2 -2
  845. package/lib/components/Progress/Progress.d.ts +1 -1
  846. package/lib/components/Radio/RadioIcon.d.ts +1 -1
  847. package/lib/components/Rating/RatingItem/RatingItem.d.ts +1 -1
  848. package/lib/components/Rating/StarSymbol/StarIcon.d.ts +1 -1
  849. package/lib/components/Rating/StarSymbol/StarSymbol.d.ts +1 -1
  850. package/lib/components/RingProgress/Curve/Curve.d.ts +1 -1
  851. package/lib/components/RollingNumber/DigitColumn.d.ts +1 -1
  852. package/lib/components/ScrollArea/ScrollAreaCorner/ScrollAreaCorner.d.ts +2 -2
  853. package/lib/components/ScrollArea/ScrollAreaRoot/ScrollAreaRoot.d.ts +1 -1
  854. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbar.d.ts +1 -1
  855. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarAuto.d.ts +1 -1
  856. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarHover.d.ts +1 -1
  857. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarScroll.d.ts +1 -1
  858. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollAreaScrollbarVisible.d.ts +1 -1
  859. package/lib/components/ScrollArea/ScrollAreaScrollbar/Scrollbar.d.ts +1 -1
  860. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollbarX.d.ts +1 -1
  861. package/lib/components/ScrollArea/ScrollAreaScrollbar/ScrollbarY.d.ts +1 -1
  862. package/lib/components/ScrollArea/ScrollAreaThumb/ScrollAreaThumb.d.ts +2 -2
  863. package/lib/components/ScrollArea/ScrollAreaViewport/ScrollAreaViewport.d.ts +1 -1
  864. package/lib/components/SimpleGrid/SimpleGridVariables.d.ts +2 -2
  865. package/lib/components/Slider/Marks/Marks.d.ts +1 -1
  866. package/lib/components/Slider/SliderRoot/SliderRoot.d.ts +1 -1
  867. package/lib/components/Slider/Thumb/Thumb.d.ts +1 -1
  868. package/lib/components/Slider/Track/Track.d.ts +1 -1
  869. package/lib/components/Splitter/GripIcon.d.ts +2 -2
  870. package/lib/components/Stepper/Stepper.context.d.ts +1 -0
  871. package/lib/components/Stepper/Stepper.d.ts +3 -1
  872. package/lib/components/Table/TableDataRenderer.d.ts +1 -1
  873. package/lib/components/Textarea/Autosize.d.ts +1 -1
  874. package/lib/components/Tooltip/TooltipGroup/TooltipGroup.d.ts +1 -1
  875. package/lib/components/Transition/Transition.d.ts +1 -1
  876. package/lib/components/Tree/FlatTreeNode.d.ts +1 -1
  877. package/lib/components/Tree/Tree.d.ts +1 -1
  878. package/lib/components/Tree/TreeNode.d.ts +1 -1
  879. package/lib/components/TreeSelect/TreeSelectOption.d.ts +1 -1
  880. package/lib/components/index.d.ts +1 -0
  881. package/lib/core/DirectionProvider/DirectionProvider.d.ts +1 -1
  882. package/lib/core/InlineStyles/InlineStyles.d.ts +1 -1
  883. package/lib/core/MantineProvider/ColorSchemeScript/ColorSchemeScript.d.ts +1 -1
  884. package/lib/core/MantineProvider/MantineClasses/MantineClasses.d.ts +1 -1
  885. package/lib/core/MantineProvider/MantineCssVariables/MantineCssVariables.d.ts +1 -1
  886. package/lib/core/MantineProvider/MantineProvider.d.ts +5 -5
  887. package/lib/core/MantineProvider/MantineThemeProvider/MantineThemeProvider.d.ts +1 -1
  888. package/lib/utils/Floating/FloatingArrow/FloatingArrow.d.ts +1 -1
  889. package/lib/utils/InlineInput/InlineInput.d.ts +1 -1
  890. package/lib/utils/InputsGroupFieldset/InputsGroupFieldset.d.ts +1 -1
  891. package/package.json +5 -5
  892. package/styles/Accordion.css +4 -2
  893. package/styles/Accordion.layer.css +4 -2
  894. package/styles/ActionBar.css +13 -0
  895. package/styles/ActionBar.layer.css +14 -0
  896. package/styles/Stepper.css +30 -0
  897. package/styles/Stepper.layer.css +30 -0
  898. package/styles/Typography.css +59 -0
  899. package/styles/Typography.layer.css +59 -0
  900. package/styles.css +148 -43
  901. package/styles.layer.css +148 -43
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.icons.mjs","names":[],"sources":["../../../src/components/Pagination/Pagination.icons.tsx"],"sourcesContent":["interface _PaginationIconProps {\n path: string;\n stroke?: any;\n style?: React.CSSProperties;\n className?: string | undefined;\n children?: React.ReactNode;\n}\n\nexport type PaginationIconProps = Omit<_PaginationIconProps, 'path'>;\nexport type PaginationIcon = React.FC<PaginationIconProps>;\n\nfunction PaginationIcon({ style, children, path, ...others }: _PaginationIconProps) {\n return (\n <svg\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n ...style,\n }}\n {...others}\n >\n <path d={path} fill=\"currentColor\" />\n </svg>\n );\n}\n\nexport const PaginationNextIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M8.781 8l-3.3-3.3.943-.943L10.667 8l-4.243 4.243-.943-.943 3.3-3.3z\"\n />\n);\n\nexport const PaginationPreviousIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M7.219 8l3.3 3.3-.943.943L5.333 8l4.243-4.243.943.943-3.3 3.3z\"\n />\n);\n\nexport const PaginationFirstIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z\"\n />\n);\n\nexport const PaginationLastIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z\"\n />\n);\n\nexport const PaginationDotsIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M2 8c0-.733.6-1.333 1.333-1.333.734 0 1.334.6 1.334 1.333s-.6 1.333-1.334 1.333C2.6 9.333 2 8.733 2 8zm9.333 0c0-.733.6-1.333 1.334-1.333C13.4 6.667 14 7.267 14 8s-.6 1.333-1.333 1.333c-.734 0-1.334-.6-1.334-1.333zM6.667 8c0-.733.6-1.333 1.333-1.333s1.333.6 1.333 1.333S8.733 9.333 8 9.333 6.667 8.733 6.667 8z\"\n />\n);\n"],"mappings":";;;AAWA,SAAS,eAAe,EAAE,OAAO,UAAU,MAAM,GAAG,UAAgC;CAClF,OACE,oBAAC,OAAD;EACE,SAAQ;EACR,OAAM;EACN,OAAO;GACL,OAAO;GACP,QAAQ;GACR,GAAG;EACL;EACA,GAAI;YAEJ,oBAAC,QAAD;GAAM,GAAG;GAAM,MAAK;EAAgB,CAAA;CACjC,CAAA;AAET;AAEA,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,0BAA0B,UACrC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,uBAAuB,UAClC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA"}
1
+ {"version":3,"file":"Pagination.icons.mjs","names":[],"sources":["../../../src/components/Pagination/Pagination.icons.tsx"],"sourcesContent":["interface _PaginationIconProps {\n path: string;\n stroke?: any;\n style?: React.CSSProperties;\n className?: string | undefined;\n children?: React.ReactNode;\n}\n\nexport type PaginationIconProps = Omit<_PaginationIconProps, 'path'>;\nexport type PaginationIcon = React.FC<PaginationIconProps>;\n\nfunction PaginationIcon({ style, children, path, ...others }: _PaginationIconProps) {\n return (\n <svg\n viewBox=\"0 0 16 16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n ...style,\n }}\n {...others}\n >\n <path d={path} fill=\"currentColor\" />\n </svg>\n );\n}\n\nexport const PaginationNextIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M8.781 8l-3.3-3.3.943-.943L10.667 8l-4.243 4.243-.943-.943 3.3-3.3z\"\n />\n);\n\nexport const PaginationPreviousIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M7.219 8l3.3 3.3-.943.943L5.333 8l4.243-4.243.943.943-3.3 3.3z\"\n />\n);\n\nexport const PaginationFirstIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M6.85355 3.85355C7.04882 3.65829 7.04882 3.34171 6.85355 3.14645C6.65829 2.95118 6.34171 2.95118 6.14645 3.14645L2.14645 7.14645C1.95118 7.34171 1.95118 7.65829 2.14645 7.85355L6.14645 11.8536C6.34171 12.0488 6.65829 12.0488 6.85355 11.8536C7.04882 11.6583 7.04882 11.3417 6.85355 11.1464L3.20711 7.5L6.85355 3.85355ZM12.8536 3.85355C13.0488 3.65829 13.0488 3.34171 12.8536 3.14645C12.6583 2.95118 12.3417 2.95118 12.1464 3.14645L8.14645 7.14645C7.95118 7.34171 7.95118 7.65829 8.14645 7.85355L12.1464 11.8536C12.3417 12.0488 12.6583 12.0488 12.8536 11.8536C13.0488 11.6583 13.0488 11.3417 12.8536 11.1464L9.20711 7.5L12.8536 3.85355Z\"\n />\n);\n\nexport const PaginationLastIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z\"\n />\n);\n\nexport const PaginationDotsIcon = (props: PaginationIconProps) => (\n <PaginationIcon\n {...props}\n path=\"M2 8c0-.733.6-1.333 1.333-1.333.734 0 1.334.6 1.334 1.333s-.6 1.333-1.334 1.333C2.6 9.333 2 8.733 2 8zm9.333 0c0-.733.6-1.333 1.334-1.333C13.4 6.667 14 7.267 14 8s-.6 1.333-1.333 1.333c-.734 0-1.334-.6-1.334-1.333zM6.667 8c0-.733.6-1.333 1.333-1.333s1.333.6 1.333 1.333S8.733 9.333 8 9.333 6.667 8.733 6.667 8z\"\n />\n);\n"],"mappings":";;;AAWA,SAAS,eAAe,EAAE,OAAO,UAAU,MAAM,GAAG,UAAgC;CAClF,OACE,oBAAC,OAAD;EACE,SAAQ;EACR,OAAM;EACN,OAAO;GACL,OAAO;GACP,QAAQ;GACR,GAAG;EACL;EACA,GAAI;EAEJ,UAAA,oBAAC,QAAD;GAAM,GAAG;GAAM,MAAK;EAAgB,CAAA;CACjC,CAAA;AAET;AAEA,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,0BAA0B,UACrC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,uBAAuB,UAClC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA;AAGH,MAAa,sBAAsB,UACjC,oBAAC,gBAAD;CACE,GAAI;CACJ,MAAK;AACN,CAAA"}
@@ -21,8 +21,9 @@ const defaultProps = {
21
21
  gap: 8
22
22
  };
23
23
  function PaginationItemsGroup({ children }) {
24
+ const ctx = usePaginationContext();
24
25
  return /* @__PURE__ */ jsx(Box, {
25
- ...usePaginationContext().getStyles("items"),
26
+ ...ctx.getStyles("items"),
26
27
  children
27
28
  });
28
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.mjs","names":["classes"],"sources":["../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import { Box, factory, Factory, MantineSpacing, useProps } from '../../core';\nimport { Group } from '../Group/Group';\nimport { usePaginationContext } from './Pagination.context';\nimport { PaginationIcon } from './Pagination.icons';\nimport {\n PaginationControl,\n type PaginationControlProps,\n} from './PaginationControl/PaginationControl';\nimport { PaginationDots, type PaginationDotsProps } from './PaginationDots/PaginationDots';\nimport {\n PaginationFirst,\n PaginationLast,\n PaginationNext,\n PaginationPrevious,\n type PaginationEdgeProps,\n} from './PaginationEdges/PaginationEdges';\nimport { PaginationItems, type PaginationItemsProps } from './PaginationItems/PaginationItems';\nimport {\n PaginationFormatLabel,\n PaginationLabel,\n type PaginationLabelProps,\n} from './PaginationLabel/PaginationLabel';\nimport {\n PaginationRoot,\n PaginationRootCssVariables,\n PaginationRootProps,\n PaginationRootStylesNames,\n} from './PaginationRoot/PaginationRoot';\nimport classes from './Pagination.module.css';\nexport type PaginationStylesNames = PaginationRootStylesNames;\nexport type PaginationCssVariables = PaginationRootCssVariables;\n\nexport interface PaginationProps extends PaginationRootProps {\n /** If set, first/last controls are displayed @default false */\n withEdges?: boolean;\n\n /** If set, next/previous controls are displayed @default true */\n withControls?: boolean;\n\n /** Props passed down to next/previous/first/last controls */\n getControlProps?: (control: 'first' | 'previous' | 'last' | 'next') => Record<string, any>;\n\n /** Next control icon component */\n nextIcon?: PaginationIcon;\n\n /** Previous control icon component */\n previousIcon?: PaginationIcon;\n\n /** Last control icon component */\n lastIcon?: PaginationIcon;\n\n /** First control icon component */\n firstIcon?: PaginationIcon;\n\n /** Dots icon component */\n dotsIcon?: PaginationIcon;\n\n /** Key of `theme.spacing`, gap between controls @default 8 */\n gap?: MantineSpacing;\n\n /** If set, the pagination is hidden when only one page is available (`total={1}`) @default false */\n hideWithOnePage?: boolean;\n\n /** If set to `false`, page number buttons are hidden, only next/previous controls remain @default `true` */\n withPages?: boolean;\n\n /** Function to format the label text displayed in responsive mode */\n formatLabel?: PaginationFormatLabel;\n}\n\nexport type PaginationFactory = Factory<{\n props: PaginationProps;\n ref: HTMLDivElement;\n stylesNames: PaginationStylesNames;\n vars: PaginationCssVariables;\n staticComponents: {\n Root: typeof PaginationRoot;\n Control: typeof PaginationControl;\n Dots: typeof PaginationDots;\n First: typeof PaginationFirst;\n Last: typeof PaginationLast;\n Next: typeof PaginationNext;\n Previous: typeof PaginationPrevious;\n Items: typeof PaginationItems;\n Label: typeof PaginationLabel;\n };\n}>;\n\nconst defaultProps = {\n withControls: true,\n withPages: true,\n siblings: 1,\n boundaries: 1,\n gap: 8,\n} satisfies Partial<PaginationProps>;\n\ninterface PaginationItemsGroupProps {\n children: React.ReactNode;\n}\n\nfunction PaginationItemsGroup({ children }: PaginationItemsGroupProps) {\n const ctx = usePaginationContext();\n return <Box {...ctx.getStyles('items')}>{children}</Box>;\n}\n\nexport const Pagination = factory<PaginationFactory>((_props) => {\n const props = useProps('Pagination', defaultProps, _props);\n const {\n withEdges,\n withControls,\n getControlProps,\n nextIcon,\n previousIcon,\n lastIcon,\n firstIcon,\n dotsIcon,\n total,\n gap,\n hideWithOnePage,\n withPages,\n layout,\n formatLabel,\n ...others\n } = props;\n\n if (total <= 0 || (hideWithOnePage && total === 1)) {\n return null;\n }\n\n const isResponsive = layout === 'responsive';\n\n const pagesContent = withPages ? (\n isResponsive ? (\n <>\n <PaginationItemsGroup>\n <PaginationItems dotsIcon={dotsIcon} />\n </PaginationItemsGroup>\n <PaginationLabel formatLabel={formatLabel} />\n </>\n ) : (\n <PaginationItems dotsIcon={dotsIcon} />\n )\n ) : null;\n\n return (\n <PaginationRoot total={total} layout={layout} {...others}>\n <Group gap={gap}>\n {withEdges && <PaginationFirst icon={firstIcon} {...getControlProps?.('first')} />}\n {withControls && (\n <PaginationPrevious icon={previousIcon} {...getControlProps?.('previous')} />\n )}\n {pagesContent}\n {withControls && <PaginationNext icon={nextIcon} {...getControlProps?.('next')} />}\n {withEdges && <PaginationLast icon={lastIcon} {...getControlProps?.('last')} />}\n </Group>\n </PaginationRoot>\n );\n});\n\nPagination.classes = classes;\nPagination.displayName = '@mantine/core/Pagination';\nPagination.Root = PaginationRoot;\nPagination.Control = PaginationControl;\nPagination.Dots = PaginationDots;\nPagination.First = PaginationFirst;\nPagination.Last = PaginationLast;\nPagination.Next = PaginationNext;\nPagination.Previous = PaginationPrevious;\nPagination.Items = PaginationItems;\nPagination.Label = PaginationLabel;\n\nexport namespace Pagination {\n export type Props = PaginationProps;\n export type StylesNames = PaginationStylesNames;\n export type CssVariables = PaginationCssVariables;\n export type Factory = PaginationFactory;\n\n export namespace Root {\n export type Props = PaginationRootProps;\n }\n\n export namespace Control {\n export type Props = PaginationControlProps;\n }\n\n export namespace Dots {\n export type Props = PaginationDotsProps;\n }\n\n export namespace Edge {\n export type Props = PaginationEdgeProps;\n }\n\n export namespace Items {\n export type Props = PaginationItemsProps;\n }\n\n export namespace Label {\n export type Props = PaginationLabelProps;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAwFA,MAAM,eAAe;CACnB,cAAc;CACd,WAAW;CACX,UAAU;CACV,YAAY;CACZ,KAAK;AACP;AAMA,SAAS,qBAAqB,EAAE,YAAuC;CAErE,OAAO,oBAAC,KAAD;EAAK,GADA,qBACM,CAAC,CAAC,UAAU,OAAO;EAAI;CAAc,CAAA;AACzD;AAEA,MAAa,aAAa,SAA4B,WAAW;CAE/D,MAAM,EACJ,WACA,cACA,iBACA,UACA,cACA,UACA,WACA,UACA,OACA,KACA,iBACA,WACA,QACA,aACA,GAAG,WAhBS,SAAS,cAAc,cAAc,MAiB3C;CAER,IAAI,SAAS,KAAM,mBAAmB,UAAU,GAC9C,OAAO;CAKT,MAAM,eAAe,YAFA,WAAW,eAI5B,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,sBAAD,EAAA,UACE,oBAAC,iBAAD,EAA2B,SAAW,CAAA,EAClB,CAAA,GACtB,oBAAC,iBAAD,EAA8B,YAAc,CAAA,CAC5C,EAAA,CAAA,IAEF,oBAAC,iBAAD,EAA2B,SAAW,CAAA,IAEtC;CAEJ,OACE,oBAAC,gBAAD;EAAuB;EAAe;EAAQ,GAAI;YAChD,qBAAC,OAAD;GAAY;aAAZ;IACG,aAAa,oBAAC,iBAAD;KAAiB,MAAM;KAAW,GAAI,kBAAkB,OAAO;IAAI,CAAA;IAChF,gBACC,oBAAC,oBAAD;KAAoB,MAAM;KAAc,GAAI,kBAAkB,UAAU;IAAI,CAAA;IAE7E;IACA,gBAAgB,oBAAC,gBAAD;KAAgB,MAAM;KAAU,GAAI,kBAAkB,MAAM;IAAI,CAAA;IAChF,aAAa,oBAAC,gBAAD;KAAgB,MAAM;KAAU,GAAI,kBAAkB,MAAM;IAAI,CAAA;GACzE;;CACO,CAAA;AAEpB,CAAC;AAED,WAAW,UAAUA;AACrB,WAAW,cAAc;AACzB,WAAW,OAAO;AAClB,WAAW,UAAU;AACrB,WAAW,OAAO;AAClB,WAAW,QAAQ;AACnB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,WAAW;AACtB,WAAW,QAAQ;AACnB,WAAW,QAAQ"}
1
+ {"version":3,"file":"Pagination.mjs","names":["classes"],"sources":["../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import { Box, factory, Factory, MantineSpacing, useProps } from '../../core';\nimport { Group } from '../Group/Group';\nimport { usePaginationContext } from './Pagination.context';\nimport { PaginationIcon } from './Pagination.icons';\nimport {\n PaginationControl,\n type PaginationControlProps,\n} from './PaginationControl/PaginationControl';\nimport { PaginationDots, type PaginationDotsProps } from './PaginationDots/PaginationDots';\nimport {\n PaginationFirst,\n PaginationLast,\n PaginationNext,\n PaginationPrevious,\n type PaginationEdgeProps,\n} from './PaginationEdges/PaginationEdges';\nimport { PaginationItems, type PaginationItemsProps } from './PaginationItems/PaginationItems';\nimport {\n PaginationFormatLabel,\n PaginationLabel,\n type PaginationLabelProps,\n} from './PaginationLabel/PaginationLabel';\nimport {\n PaginationRoot,\n PaginationRootCssVariables,\n PaginationRootProps,\n PaginationRootStylesNames,\n} from './PaginationRoot/PaginationRoot';\nimport classes from './Pagination.module.css';\nexport type PaginationStylesNames = PaginationRootStylesNames;\nexport type PaginationCssVariables = PaginationRootCssVariables;\n\nexport interface PaginationProps extends PaginationRootProps {\n /** If set, first/last controls are displayed @default false */\n withEdges?: boolean;\n\n /** If set, next/previous controls are displayed @default true */\n withControls?: boolean;\n\n /** Props passed down to next/previous/first/last controls */\n getControlProps?: (control: 'first' | 'previous' | 'last' | 'next') => Record<string, any>;\n\n /** Next control icon component */\n nextIcon?: PaginationIcon;\n\n /** Previous control icon component */\n previousIcon?: PaginationIcon;\n\n /** Last control icon component */\n lastIcon?: PaginationIcon;\n\n /** First control icon component */\n firstIcon?: PaginationIcon;\n\n /** Dots icon component */\n dotsIcon?: PaginationIcon;\n\n /** Key of `theme.spacing`, gap between controls @default 8 */\n gap?: MantineSpacing;\n\n /** If set, the pagination is hidden when only one page is available (`total={1}`) @default false */\n hideWithOnePage?: boolean;\n\n /** If set to `false`, page number buttons are hidden, only next/previous controls remain @default `true` */\n withPages?: boolean;\n\n /** Function to format the label text displayed in responsive mode */\n formatLabel?: PaginationFormatLabel;\n}\n\nexport type PaginationFactory = Factory<{\n props: PaginationProps;\n ref: HTMLDivElement;\n stylesNames: PaginationStylesNames;\n vars: PaginationCssVariables;\n staticComponents: {\n Root: typeof PaginationRoot;\n Control: typeof PaginationControl;\n Dots: typeof PaginationDots;\n First: typeof PaginationFirst;\n Last: typeof PaginationLast;\n Next: typeof PaginationNext;\n Previous: typeof PaginationPrevious;\n Items: typeof PaginationItems;\n Label: typeof PaginationLabel;\n };\n}>;\n\nconst defaultProps = {\n withControls: true,\n withPages: true,\n siblings: 1,\n boundaries: 1,\n gap: 8,\n} satisfies Partial<PaginationProps>;\n\ninterface PaginationItemsGroupProps {\n children: React.ReactNode;\n}\n\nfunction PaginationItemsGroup({ children }: PaginationItemsGroupProps) {\n const ctx = usePaginationContext();\n return <Box {...ctx.getStyles('items')}>{children}</Box>;\n}\n\nexport const Pagination = factory<PaginationFactory>((_props) => {\n const props = useProps('Pagination', defaultProps, _props);\n const {\n withEdges,\n withControls,\n getControlProps,\n nextIcon,\n previousIcon,\n lastIcon,\n firstIcon,\n dotsIcon,\n total,\n gap,\n hideWithOnePage,\n withPages,\n layout,\n formatLabel,\n ...others\n } = props;\n\n if (total <= 0 || (hideWithOnePage && total === 1)) {\n return null;\n }\n\n const isResponsive = layout === 'responsive';\n\n const pagesContent = withPages ? (\n isResponsive ? (\n <>\n <PaginationItemsGroup>\n <PaginationItems dotsIcon={dotsIcon} />\n </PaginationItemsGroup>\n <PaginationLabel formatLabel={formatLabel} />\n </>\n ) : (\n <PaginationItems dotsIcon={dotsIcon} />\n )\n ) : null;\n\n return (\n <PaginationRoot total={total} layout={layout} {...others}>\n <Group gap={gap}>\n {withEdges && <PaginationFirst icon={firstIcon} {...getControlProps?.('first')} />}\n {withControls && (\n <PaginationPrevious icon={previousIcon} {...getControlProps?.('previous')} />\n )}\n {pagesContent}\n {withControls && <PaginationNext icon={nextIcon} {...getControlProps?.('next')} />}\n {withEdges && <PaginationLast icon={lastIcon} {...getControlProps?.('last')} />}\n </Group>\n </PaginationRoot>\n );\n});\n\nPagination.classes = classes;\nPagination.displayName = '@mantine/core/Pagination';\nPagination.Root = PaginationRoot;\nPagination.Control = PaginationControl;\nPagination.Dots = PaginationDots;\nPagination.First = PaginationFirst;\nPagination.Last = PaginationLast;\nPagination.Next = PaginationNext;\nPagination.Previous = PaginationPrevious;\nPagination.Items = PaginationItems;\nPagination.Label = PaginationLabel;\n\nexport namespace Pagination {\n export type Props = PaginationProps;\n export type StylesNames = PaginationStylesNames;\n export type CssVariables = PaginationCssVariables;\n export type Factory = PaginationFactory;\n\n export namespace Root {\n export type Props = PaginationRootProps;\n }\n\n export namespace Control {\n export type Props = PaginationControlProps;\n }\n\n export namespace Dots {\n export type Props = PaginationDotsProps;\n }\n\n export namespace Edge {\n export type Props = PaginationEdgeProps;\n }\n\n export namespace Items {\n export type Props = PaginationItemsProps;\n }\n\n export namespace Label {\n export type Props = PaginationLabelProps;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAwFA,MAAM,eAAe;CACnB,cAAc;CACd,WAAW;CACX,UAAU;CACV,YAAY;CACZ,KAAK;AACP;AAMA,SAAS,qBAAqB,EAAE,YAAuC;CACrE,MAAM,MAAM,qBAAqB;CACjC,OAAO,oBAAC,KAAD;EAAK,GAAI,IAAI,UAAU,OAAO;EAAI;CAAc,CAAA;AACzD;AAEA,MAAa,aAAa,SAA4B,WAAW;CAE/D,MAAM,EACJ,WACA,cACA,iBACA,UACA,cACA,UACA,WACA,UACA,OACA,KACA,iBACA,WACA,QACA,aACA,GAAG,WAhBS,SAAS,cAAc,cAAc,MAiB3C;CAER,IAAI,SAAS,KAAM,mBAAmB,UAAU,GAC9C,OAAO;CAKT,MAAM,eAAe,YAFA,WAAW,eAI5B,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,sBAAD,EAAA,UACE,oBAAC,iBAAD,EAA2B,SAAW,CAAA,EAClB,CAAA,GACtB,oBAAC,iBAAD,EAA8B,YAAc,CAAA,CAC5C,EAAA,CAAA,IAEF,oBAAC,iBAAD,EAA2B,SAAW,CAAA,IAEtC;CAEJ,OACE,oBAAC,gBAAD;EAAuB;EAAe;EAAQ,GAAI;EAChD,UAAA,qBAAC,OAAD;GAAY;GAAZ,UAAA;IACG,aAAa,oBAAC,iBAAD;KAAiB,MAAM;KAAW,GAAI,kBAAkB,OAAO;IAAI,CAAA;IAChF,gBACC,oBAAC,oBAAD;KAAoB,MAAM;KAAc,GAAI,kBAAkB,UAAU;IAAI,CAAA;IAE7E;IACA,gBAAgB,oBAAC,gBAAD;KAAgB,MAAM;KAAU,GAAI,kBAAkB,MAAM;IAAI,CAAA;IAChF,aAAa,oBAAC,gBAAD;KAAgB,MAAM;KAAU,GAAI,kBAAkB,MAAM;IAAI,CAAA;GACzE;;CACO,CAAA;AAEpB,CAAC;AAED,WAAW,UAAUA;AACrB,WAAW,cAAc;AACzB,WAAW,OAAO;AAClB,WAAW,UAAU;AACrB,WAAW,OAAO;AAClB,WAAW,QAAQ;AACnB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,WAAW,WAAW;AACtB,WAAW,QAAQ;AACnB,WAAW,QAAQ"}
@@ -10,8 +10,9 @@ import { jsx } from "react/jsx-runtime";
10
10
  const defaultProps = { icon: PaginationDotsIcon };
11
11
  const PaginationDots = factory((_props) => {
12
12
  const { classNames, className, style, styles, vars, icon: Icon, ...others } = useProps("PaginationDots", defaultProps, _props);
13
+ const ctx = usePaginationContext();
13
14
  return /* @__PURE__ */ jsx(Box, {
14
- ...usePaginationContext().getStyles("dots", {
15
+ ...ctx.getStyles("dots", {
15
16
  className,
16
17
  style,
17
18
  styles,
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationDots.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationDots/PaginationDots.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport { PaginationDotsIcon, PaginationIconProps } from '../Pagination.icons';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationDotsStylesNames = 'dots';\n\nexport interface PaginationDotsProps\n extends BoxProps, CompoundStylesApiProps<PaginationDotsFactory>, ElementProps<'div'> {\n /** Custom dots icon component, must accept svg element props and size prop */\n icon?: React.FC<PaginationIconProps>;\n}\n\nexport type PaginationDotsFactory = Factory<{\n props: PaginationDotsProps;\n ref: HTMLDivElement;\n stylesNames: PaginationDotsStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n icon: PaginationDotsIcon,\n} satisfies Partial<PaginationDotsProps>;\n\nexport const PaginationDots = factory<PaginationDotsFactory>((_props) => {\n const props = useProps('PaginationDots', defaultProps, _props);\n const { classNames, className, style, styles, vars, icon: Icon, ...others } = props;\n const ctx = usePaginationContext();\n\n return (\n <Box {...ctx.getStyles('dots', { className, style, styles, classNames })} {...others}>\n <Icon\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n }}\n />\n </Box>\n );\n});\n\nPaginationDots.classes = classes;\nPaginationDots.displayName = '@mantine/core/PaginationDots';\n"],"mappings":";;;;;;;;;AA4BA,MAAM,eAAe,EACnB,MAAM,mBACR;AAEA,MAAa,iBAAiB,SAAgC,WAAW;CAEvE,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,MAAM,MAAM,GAAG,WADrD,SAAS,kBAAkB,cAAc,MAC2B;CAGlF,OACE,oBAAC,KAAD;EAAK,GAHK,qBAGC,CAAC,CAAC,UAAU,QAAQ;GAAE;GAAW;GAAO;GAAQ;EAAW,CAAC;EAAG,GAAI;YAC5E,oBAAC,MAAD,EACE,OAAO;GACL,OAAO;GACP,QAAQ;EACV,EACD,CAAA;CACE,CAAA;AAET,CAAC;AAED,eAAe,UAAUA;AACzB,eAAe,cAAc"}
1
+ {"version":3,"file":"PaginationDots.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationDots/PaginationDots.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport { PaginationDotsIcon, PaginationIconProps } from '../Pagination.icons';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationDotsStylesNames = 'dots';\n\nexport interface PaginationDotsProps\n extends BoxProps, CompoundStylesApiProps<PaginationDotsFactory>, ElementProps<'div'> {\n /** Custom dots icon component, must accept svg element props and size prop */\n icon?: React.FC<PaginationIconProps>;\n}\n\nexport type PaginationDotsFactory = Factory<{\n props: PaginationDotsProps;\n ref: HTMLDivElement;\n stylesNames: PaginationDotsStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n icon: PaginationDotsIcon,\n} satisfies Partial<PaginationDotsProps>;\n\nexport const PaginationDots = factory<PaginationDotsFactory>((_props) => {\n const props = useProps('PaginationDots', defaultProps, _props);\n const { classNames, className, style, styles, vars, icon: Icon, ...others } = props;\n const ctx = usePaginationContext();\n\n return (\n <Box {...ctx.getStyles('dots', { className, style, styles, classNames })} {...others}>\n <Icon\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n }}\n />\n </Box>\n );\n});\n\nPaginationDots.classes = classes;\nPaginationDots.displayName = '@mantine/core/PaginationDots';\n"],"mappings":";;;;;;;;;AA4BA,MAAM,eAAe,EACnB,MAAM,mBACR;AAEA,MAAa,iBAAiB,SAAgC,WAAW;CAEvE,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,MAAM,MAAM,GAAG,WADrD,SAAS,kBAAkB,cAAc,MAC2B;CAClF,MAAM,MAAM,qBAAqB;CAEjC,OACE,oBAAC,KAAD;EAAK,GAAI,IAAI,UAAU,QAAQ;GAAE;GAAW;GAAO;GAAQ;EAAW,CAAC;EAAG,GAAI;EAC5E,UAAA,oBAAC,MAAD,EACE,OAAO;GACL,OAAO;GACP,QAAQ;EACV,EACD,CAAA;CACE,CAAA;AAET,CAAC;AAED,eAAe,UAAUA;AACzB,eAAe,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationEdges.mjs","names":[],"sources":["../../../../src/components/Pagination/PaginationEdges/PaginationEdges.tsx"],"sourcesContent":["import { BoxProps, polymorphic, useProps } from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport {\n PaginationFirstIcon,\n PaginationIconProps,\n PaginationLastIcon,\n PaginationNextIcon,\n PaginationPreviousIcon,\n} from '../Pagination.icons';\nimport { PaginationControl } from '../PaginationControl/PaginationControl';\n\nexport interface CreateEdgeComponent {\n icon: React.FC<PaginationIconProps>;\n name: string;\n action: 'onNext' | 'onPrevious' | 'onFirst' | 'onLast';\n type: 'next' | 'previous';\n}\n\nexport interface PaginationEdgeProps extends BoxProps {\n /** An icon component to replace the default icon */\n icon?: React.FC<PaginationIconProps>;\n}\n\nexport function createEdgeComponent({ icon, name, action, type }: CreateEdgeComponent) {\n const defaultProps = { icon } satisfies Partial<PaginationEdgeProps>;\n\n const Component = (props: PaginationEdgeProps) => {\n const { icon: Icon, ...others } = useProps(name, defaultProps, props);\n const ctx = usePaginationContext();\n const disabled = type === 'next' ? ctx.active === ctx.total : ctx.active === 1;\n\n return (\n <PaginationControl\n disabled={ctx.disabled || disabled}\n onClick={ctx[action]}\n withPadding={false}\n {...others}\n >\n <Icon\n className=\"mantine-rotate-rtl\"\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n }}\n />\n </PaginationControl>\n );\n };\n\n Component.displayName = `@mantine/core/${name}`;\n return polymorphic<'button', PaginationEdgeProps>(Component);\n}\n\nexport const PaginationNext = createEdgeComponent({\n icon: PaginationNextIcon,\n name: 'PaginationNext',\n action: 'onNext',\n type: 'next',\n});\n\nexport const PaginationPrevious = createEdgeComponent({\n icon: PaginationPreviousIcon,\n name: 'PaginationPrevious',\n action: 'onPrevious',\n type: 'previous',\n});\n\nexport const PaginationFirst = createEdgeComponent({\n icon: PaginationFirstIcon,\n name: 'PaginationFirst',\n action: 'onFirst',\n type: 'previous',\n});\n\nexport const PaginationLast = createEdgeComponent({\n icon: PaginationLastIcon,\n name: 'PaginationLast',\n action: 'onLast',\n type: 'next',\n});\n"],"mappings":";;;;;;;;AAuBA,SAAgB,oBAAoB,EAAE,MAAM,MAAM,QAAQ,QAA6B;CACrF,MAAM,eAAe,EAAE,KAAK;CAE5B,MAAM,aAAa,UAA+B;EAChD,MAAM,EAAE,MAAM,MAAM,GAAG,WAAW,SAAS,MAAM,cAAc,KAAK;EACpE,MAAM,MAAM,qBAAqB;EACjC,MAAM,WAAW,SAAS,SAAS,IAAI,WAAW,IAAI,QAAQ,IAAI,WAAW;EAE7E,OACE,oBAAC,mBAAD;GACE,UAAU,IAAI,YAAY;GAC1B,SAAS,IAAI;GACb,aAAa;GACb,GAAI;aAEJ,oBAAC,MAAD;IACE,WAAU;IACV,OAAO;KACL,OAAO;KACP,QAAQ;IACV;GACD,CAAA;EACgB,CAAA;CAEvB;CAEA,UAAU,cAAc,iBAAiB;CACzC,OAAO,YAA2C,SAAS;AAC7D;AAEA,MAAa,iBAAiB,oBAAoB;CAChD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,qBAAqB,oBAAoB;CACpD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,kBAAkB,oBAAoB;CACjD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,iBAAiB,oBAAoB;CAChD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC"}
1
+ {"version":3,"file":"PaginationEdges.mjs","names":[],"sources":["../../../../src/components/Pagination/PaginationEdges/PaginationEdges.tsx"],"sourcesContent":["import { BoxProps, polymorphic, useProps } from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport {\n PaginationFirstIcon,\n PaginationIconProps,\n PaginationLastIcon,\n PaginationNextIcon,\n PaginationPreviousIcon,\n} from '../Pagination.icons';\nimport { PaginationControl } from '../PaginationControl/PaginationControl';\n\nexport interface CreateEdgeComponent {\n icon: React.FC<PaginationIconProps>;\n name: string;\n action: 'onNext' | 'onPrevious' | 'onFirst' | 'onLast';\n type: 'next' | 'previous';\n}\n\nexport interface PaginationEdgeProps extends BoxProps {\n /** An icon component to replace the default icon */\n icon?: React.FC<PaginationIconProps>;\n}\n\nexport function createEdgeComponent({ icon, name, action, type }: CreateEdgeComponent) {\n const defaultProps = { icon } satisfies Partial<PaginationEdgeProps>;\n\n const Component = (props: PaginationEdgeProps) => {\n const { icon: Icon, ...others } = useProps(name, defaultProps, props);\n const ctx = usePaginationContext();\n const disabled = type === 'next' ? ctx.active === ctx.total : ctx.active === 1;\n\n return (\n <PaginationControl\n disabled={ctx.disabled || disabled}\n onClick={ctx[action]}\n withPadding={false}\n {...others}\n >\n <Icon\n className=\"mantine-rotate-rtl\"\n style={{\n width: 'calc(var(--pagination-control-size) / 1.8)',\n height: 'calc(var(--pagination-control-size) / 1.8)',\n }}\n />\n </PaginationControl>\n );\n };\n\n Component.displayName = `@mantine/core/${name}`;\n return polymorphic<'button', PaginationEdgeProps>(Component);\n}\n\nexport const PaginationNext = createEdgeComponent({\n icon: PaginationNextIcon,\n name: 'PaginationNext',\n action: 'onNext',\n type: 'next',\n});\n\nexport const PaginationPrevious = createEdgeComponent({\n icon: PaginationPreviousIcon,\n name: 'PaginationPrevious',\n action: 'onPrevious',\n type: 'previous',\n});\n\nexport const PaginationFirst = createEdgeComponent({\n icon: PaginationFirstIcon,\n name: 'PaginationFirst',\n action: 'onFirst',\n type: 'previous',\n});\n\nexport const PaginationLast = createEdgeComponent({\n icon: PaginationLastIcon,\n name: 'PaginationLast',\n action: 'onLast',\n type: 'next',\n});\n"],"mappings":";;;;;;;;AAuBA,SAAgB,oBAAoB,EAAE,MAAM,MAAM,QAAQ,QAA6B;CACrF,MAAM,eAAe,EAAE,KAAK;CAE5B,MAAM,aAAa,UAA+B;EAChD,MAAM,EAAE,MAAM,MAAM,GAAG,WAAW,SAAS,MAAM,cAAc,KAAK;EACpE,MAAM,MAAM,qBAAqB;EACjC,MAAM,WAAW,SAAS,SAAS,IAAI,WAAW,IAAI,QAAQ,IAAI,WAAW;EAE7E,OACE,oBAAC,mBAAD;GACE,UAAU,IAAI,YAAY;GAC1B,SAAS,IAAI;GACb,aAAa;GACb,GAAI;GAEJ,UAAA,oBAAC,MAAD;IACE,WAAU;IACV,OAAO;KACL,OAAO;KACP,QAAQ;IACV;GACD,CAAA;EACgB,CAAA;CAEvB;CAEA,UAAU,cAAc,iBAAiB;CACzC,OAAO,YAA2C,SAAS;AAC7D;AAEA,MAAa,iBAAiB,oBAAoB;CAChD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,qBAAqB,oBAAoB;CACpD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,kBAAkB,oBAAoB;CACjD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC;AAED,MAAa,iBAAiB,oBAAoB;CAChD,MAAM;CACN,MAAM;CACN,QAAQ;CACR,MAAM;AACR,CAAC"}
@@ -6,7 +6,7 @@ import { Fragment, jsx } from "react/jsx-runtime";
6
6
  //#region packages/@mantine/core/src/components/Pagination/PaginationItems/PaginationItems.tsx
7
7
  function PaginationItems({ dotsIcon }) {
8
8
  const ctx = usePaginationContext();
9
- return /* @__PURE__ */ jsx(Fragment, { children: ctx.range.map((page, index) => {
9
+ const items = ctx.range.map((page, index) => {
10
10
  if (page === "dots") return /* @__PURE__ */ jsx(PaginationDots, { icon: dotsIcon }, index);
11
11
  return /* @__PURE__ */ jsx(PaginationControl, {
12
12
  active: page === ctx.active,
@@ -16,7 +16,8 @@ function PaginationItems({ dotsIcon }) {
16
16
  ...ctx.getItemProps?.(page),
17
17
  children: ctx.getItemProps?.(page)?.children ?? page
18
18
  }, index);
19
- }) });
19
+ });
20
+ return /* @__PURE__ */ jsx(Fragment, { children: items });
20
21
  }
21
22
  PaginationItems.displayName = "@mantine/core/PaginationItems";
22
23
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationItems.mjs","names":[],"sources":["../../../../src/components/Pagination/PaginationItems/PaginationItems.tsx"],"sourcesContent":["import { usePaginationContext } from '../Pagination.context';\nimport { PaginationIcon } from '../Pagination.icons';\nimport { PaginationControl } from '../PaginationControl/PaginationControl';\nimport { PaginationDots } from '../PaginationDots/PaginationDots';\n\nexport interface PaginationItemsProps {\n /** Dots icon component */\n dotsIcon?: PaginationIcon;\n}\n\nexport function PaginationItems({ dotsIcon }: PaginationItemsProps) {\n const ctx = usePaginationContext();\n\n const items = ctx.range.map((page, index) => {\n if (page === 'dots') {\n return <PaginationDots icon={dotsIcon} key={index} />;\n }\n\n return (\n <PaginationControl\n key={index}\n active={page === ctx.active}\n aria-current={page === ctx.active ? 'page' : undefined}\n onClick={() => ctx.onChange(page)}\n disabled={ctx.disabled}\n {...ctx.getItemProps?.(page)}\n >\n {ctx.getItemProps?.(page)?.children ?? page}\n </PaginationControl>\n );\n });\n\n return <>{items}</>;\n}\n\nPaginationItems.displayName = '@mantine/core/PaginationItems';\n"],"mappings":";;;;;;AAUA,SAAgB,gBAAgB,EAAE,YAAkC;CAClE,MAAM,MAAM,qBAAqB;CAqBjC,OAAO,oBAAA,UAAA,EAAA,UAnBO,IAAI,MAAM,KAAK,MAAM,UAAU;EAC3C,IAAI,SAAS,QACX,OAAO,oBAAC,gBAAD,EAAgB,MAAM,SAAuB,GAAR,KAAQ;EAGtD,OACE,oBAAC,mBAAD;GAEE,QAAQ,SAAS,IAAI;GACrB,gBAAc,SAAS,IAAI,SAAS,SAAS,KAAA;GAC7C,eAAe,IAAI,SAAS,IAAI;GAChC,UAAU,IAAI;GACd,GAAI,IAAI,eAAe,IAAI;aAE1B,IAAI,eAAe,IAAI,CAAC,EAAE,YAAY;EACtB,GARZ,KAQY;CAEvB,CAEc,EAAI,CAAA;AACpB;AAEA,gBAAgB,cAAc"}
1
+ {"version":3,"file":"PaginationItems.mjs","names":[],"sources":["../../../../src/components/Pagination/PaginationItems/PaginationItems.tsx"],"sourcesContent":["import { usePaginationContext } from '../Pagination.context';\nimport { PaginationIcon } from '../Pagination.icons';\nimport { PaginationControl } from '../PaginationControl/PaginationControl';\nimport { PaginationDots } from '../PaginationDots/PaginationDots';\n\nexport interface PaginationItemsProps {\n /** Dots icon component */\n dotsIcon?: PaginationIcon;\n}\n\nexport function PaginationItems({ dotsIcon }: PaginationItemsProps) {\n const ctx = usePaginationContext();\n\n const items = ctx.range.map((page, index) => {\n if (page === 'dots') {\n return <PaginationDots icon={dotsIcon} key={index} />;\n }\n\n return (\n <PaginationControl\n key={index}\n active={page === ctx.active}\n aria-current={page === ctx.active ? 'page' : undefined}\n onClick={() => ctx.onChange(page)}\n disabled={ctx.disabled}\n {...ctx.getItemProps?.(page)}\n >\n {ctx.getItemProps?.(page)?.children ?? page}\n </PaginationControl>\n );\n });\n\n return <>{items}</>;\n}\n\nPaginationItems.displayName = '@mantine/core/PaginationItems';\n"],"mappings":";;;;;;AAUA,SAAgB,gBAAgB,EAAE,YAAkC;CAClE,MAAM,MAAM,qBAAqB;CAEjC,MAAM,QAAQ,IAAI,MAAM,KAAK,MAAM,UAAU;EAC3C,IAAI,SAAS,QACX,OAAO,oBAAC,gBAAD,EAAgB,MAAM,SAAuB,GAAR,KAAQ;EAGtD,OACE,oBAAC,mBAAD;GAEE,QAAQ,SAAS,IAAI;GACrB,gBAAc,SAAS,IAAI,SAAS,SAAS,KAAA;GAC7C,eAAe,IAAI,SAAS,IAAI;GAChC,UAAU,IAAI;GACd,GAAI,IAAI,eAAe,IAAI;GAE1B,UAAA,IAAI,eAAe,IAAI,CAAC,EAAE,YAAY;EACtB,GARZ,KAQY;CAEvB,CAAC;CAED,OAAO,oBAAA,UAAA,EAAA,UAAG,MAAQ,CAAA;AACpB;AAEA,gBAAgB,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationLabel.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationLabel/PaginationLabel.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationFormatLabel = (input: { page: number; totalPages: number }) => string;\nexport type PaginationLabelStylesNames = 'label';\n\nexport interface PaginationLabelProps\n extends BoxProps, CompoundStylesApiProps<PaginationLabelFactory>, ElementProps<'div'> {\n /** Function to format the label text */\n formatLabel?: PaginationFormatLabel;\n}\n\nexport type PaginationLabelFactory = Factory<{\n props: PaginationLabelProps;\n ref: HTMLDivElement;\n stylesNames: PaginationLabelStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n formatLabel: ({ page, totalPages }) => `Page ${page} of ${totalPages}`,\n} satisfies Partial<PaginationLabelProps>;\n\nexport const PaginationLabel = factory<PaginationLabelFactory>((_props) => {\n const props = useProps('PaginationLabel', defaultProps, _props);\n const { classNames, className, style, styles, vars, formatLabel, ...others } = props;\n const ctx = usePaginationContext();\n\n return (\n <Box {...ctx.getStyles('label', { className, style, styles, classNames })} {...others}>\n {formatLabel({ page: ctx.active, totalPages: ctx.total })}\n </Box>\n );\n});\n\nPaginationLabel.classes = classes;\nPaginationLabel.displayName = '@mantine/core/PaginationLabel';\n"],"mappings":";;;;;;;;AA4BA,MAAM,eAAe,EACnB,cAAc,EAAE,MAAM,iBAAiB,QAAQ,KAAK,MAAM,aAC5D;AAEA,MAAa,kBAAkB,SAAiC,WAAW;CAEzE,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,aAAa,GAAG,WADtD,SAAS,mBAAmB,cAAc,MAC2B;CACnF,MAAM,MAAM,qBAAqB;CAEjC,OACE,oBAAC,KAAD;EAAK,GAAI,IAAI,UAAU,SAAS;GAAE;GAAW;GAAO;GAAQ;EAAW,CAAC;EAAG,GAAI;YAC5E,YAAY;GAAE,MAAM,IAAI;GAAQ,YAAY,IAAI;EAAM,CAAC;CACrD,CAAA;AAET,CAAC;AAED,gBAAgB,UAAUA;AAC1B,gBAAgB,cAAc"}
1
+ {"version":3,"file":"PaginationLabel.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationLabel/PaginationLabel.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { usePaginationContext } from '../Pagination.context';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationFormatLabel = (input: { page: number; totalPages: number }) => string;\nexport type PaginationLabelStylesNames = 'label';\n\nexport interface PaginationLabelProps\n extends BoxProps, CompoundStylesApiProps<PaginationLabelFactory>, ElementProps<'div'> {\n /** Function to format the label text */\n formatLabel?: PaginationFormatLabel;\n}\n\nexport type PaginationLabelFactory = Factory<{\n props: PaginationLabelProps;\n ref: HTMLDivElement;\n stylesNames: PaginationLabelStylesNames;\n compound: true;\n}>;\n\nconst defaultProps = {\n formatLabel: ({ page, totalPages }) => `Page ${page} of ${totalPages}`,\n} satisfies Partial<PaginationLabelProps>;\n\nexport const PaginationLabel = factory<PaginationLabelFactory>((_props) => {\n const props = useProps('PaginationLabel', defaultProps, _props);\n const { classNames, className, style, styles, vars, formatLabel, ...others } = props;\n const ctx = usePaginationContext();\n\n return (\n <Box {...ctx.getStyles('label', { className, style, styles, classNames })} {...others}>\n {formatLabel({ page: ctx.active, totalPages: ctx.total })}\n </Box>\n );\n});\n\nPaginationLabel.classes = classes;\nPaginationLabel.displayName = '@mantine/core/PaginationLabel';\n"],"mappings":";;;;;;;;AA4BA,MAAM,eAAe,EACnB,cAAc,EAAE,MAAM,iBAAiB,QAAQ,KAAK,MAAM,aAC5D;AAEA,MAAa,kBAAkB,SAAiC,WAAW;CAEzE,MAAM,EAAE,YAAY,WAAW,OAAO,QAAQ,MAAM,aAAa,GAAG,WADtD,SAAS,mBAAmB,cAAc,MAC2B;CACnF,MAAM,MAAM,qBAAqB;CAEjC,OACE,oBAAC,KAAD;EAAK,GAAI,IAAI,UAAU,SAAS;GAAE;GAAW;GAAO;GAAQ;EAAW,CAAC;EAAG,GAAI;EAC5E,UAAA,YAAY;GAAE,MAAM,IAAI;GAAQ,YAAY,IAAI;EAAM,CAAC;CACrD,CAAA;AAET,CAAC;AAED,gBAAgB,UAAUA;AAC1B,gBAAgB,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationRoot.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationRoot/PaginationRoot.tsx"],"sourcesContent":["import { usePagination } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createEventHandler,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getAutoContrastValue,\n getContrastColor,\n getFontSize,\n getRadius,\n getSize,\n getThemeColor,\n MantineColor,\n MantineRadius,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../../core';\nimport { PaginationProvider } from '../Pagination.context';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationRootStylesNames = 'root' | 'control' | 'dots' | 'items' | 'label';\nexport type PaginationRootCssVariables = {\n root:\n | '--pagination-control-size'\n | '--pagination-control-radius'\n | '--pagination-control-fz'\n | '--pagination-active-bg'\n | '--pagination-active-color';\n};\n\nexport interface PaginationRootProps\n extends\n BoxProps,\n StylesApiProps<PaginationRootFactory>,\n ElementProps<'div', 'value' | 'onChange'> {\n /** `height` and `min-width` of controls @default 'md' */\n size?: MantineSize | `input-${MantineSize}` | (string & {}) | number;\n\n /** Total number of pages, must be an integer */\n total: number;\n\n /** Active page for controlled component, must be an integer in [1, total] interval */\n value?: number;\n\n /** Active page for uncontrolled component, must be an integer in [1, total] interval */\n defaultValue?: number;\n\n /** Called when page changes */\n onChange?: (value: number) => void;\n\n /** Disables all controls, applies disabled styles */\n disabled?: boolean;\n\n /** Number of siblings displayed on the left/right side of the selected page @default 1 */\n siblings?: number;\n\n /** Number of elements visible on the left/right edges @default 1 */\n boundaries?: number;\n\n /** Key of `theme.colors`, active item color @default theme.primaryColor */\n color?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Called when next page control is clicked */\n onNextPage?: () => void;\n\n /** Called when previous page control is clicked */\n onPreviousPage?: () => void;\n\n /** Called when first page control is clicked */\n onFirstPage?: () => void;\n\n /** Called when last page control is clicked */\n onLastPage?: () => void;\n\n /** Additional props passed down to controls */\n getItemProps?: (page: number) => Record<string, any>;\n\n /** If set, adjusts text color based on the active page background color to ensure sufficient contrast */\n autoContrast?: boolean;\n\n /** Starting page number, defaults to 1 */\n startValue?: number;\n\n /** Determines how the pagination is displayed, `'responsive'` uses CSS container queries to switch between pages and a compact label @default 'default' */\n layout?: 'default' | 'responsive';\n}\n\nexport type PaginationRootFactory = Factory<{\n props: PaginationRootProps;\n ref: HTMLDivElement;\n stylesNames: PaginationRootStylesNames;\n vars: PaginationRootCssVariables;\n}>;\n\nconst defaultProps = {\n siblings: 1,\n boundaries: 1,\n} satisfies Partial<PaginationRootProps>;\n\nconst varsResolver = createVarsResolver<PaginationRootFactory>(\n (theme, { size, radius, color, autoContrast }) => ({\n root: {\n '--pagination-control-radius': radius === undefined ? undefined : getRadius(radius),\n '--pagination-control-size': getSize(size, 'pagination-control-size'),\n '--pagination-control-fz': getFontSize(size),\n '--pagination-active-bg': color ? getThemeColor(color, theme) : undefined,\n '--pagination-active-color': getAutoContrastValue(autoContrast, theme)\n ? getContrastColor({ color, theme, autoContrast })\n : undefined,\n },\n })\n);\n\nexport const PaginationRoot = factory<PaginationRootFactory>((_props) => {\n const props = useProps('PaginationRoot', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n total,\n value,\n defaultValue,\n onChange,\n disabled,\n siblings,\n boundaries,\n color,\n radius,\n onNextPage,\n onPreviousPage,\n onFirstPage,\n onLastPage,\n getItemProps,\n autoContrast,\n startValue,\n layout,\n mod,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<PaginationRootFactory>({\n name: 'Pagination',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { range, setPage, next, previous, active, first, last } = usePagination({\n page: value,\n initialPage: defaultValue,\n onChange,\n total,\n siblings,\n boundaries,\n startValue,\n });\n\n return (\n <PaginationProvider\n value={{\n total,\n range,\n active,\n disabled,\n layout,\n getItemProps,\n onChange: setPage,\n onNext: createEventHandler(onNextPage, next),\n onPrevious: createEventHandler(onPreviousPage, previous),\n onFirst: createEventHandler(onFirstPage, first),\n onLast: createEventHandler(onLastPage, last),\n getStyles,\n }}\n >\n <Box {...getStyles('root')} mod={[{ layout }, mod]} {...others} />\n </PaginationProvider>\n );\n});\n\nPaginationRoot.classes = classes;\nPaginationRoot.varsResolver = varsResolver;\nPaginationRoot.displayName = '@mantine/core/PaginationRoot';\n"],"mappings":";;;;;;;;;;;;;;;;AAsGA,MAAM,eAAe;CACnB,UAAU;CACV,YAAY;AACd;AAEA,MAAM,eAAe,oBAClB,OAAO,EAAE,MAAM,QAAQ,OAAO,oBAAoB,EACjD,MAAM;CACJ,+BAA+B,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;CAClF,6BAA6B,QAAQ,MAAM,yBAAyB;CACpE,2BAA2B,YAAY,IAAI;CAC3C,0BAA0B,QAAQ,cAAc,OAAO,KAAK,IAAI,KAAA;CAChE,6BAA6B,qBAAqB,cAAc,KAAK,IACjE,iBAAiB;EAAE;EAAO;EAAO;CAAa,CAAC,IAC/C,KAAA;AACN,EACF,EACF;AAEA,MAAa,iBAAiB,SAAgC,WAAW;CACvE,MAAM,QAAQ,SAAS,kBAAkB,cAAc,MAAM;CAC7D,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,OACA,OACA,cACA,UACA,UACA,UACA,YACA,OACA,QACA,YACA,gBACA,aACA,YACA,cACA,cACA,YACA,QACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAiC;EACjD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,EAAE,OAAO,SAAS,MAAM,UAAU,QAAQ,OAAO,SAAS,cAAc;EAC5E,MAAM;EACN,aAAa;EACb;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,OACE,oBAAC,oBAAD;EACE,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA,UAAU;GACV,QAAQ,mBAAmB,YAAY,IAAI;GAC3C,YAAY,mBAAmB,gBAAgB,QAAQ;GACvD,SAAS,mBAAmB,aAAa,KAAK;GAC9C,QAAQ,mBAAmB,YAAY,IAAI;GAC3C;EACF;YAEA,oBAAC,KAAD;GAAK,GAAI,UAAU,MAAM;GAAG,KAAK,CAAC,EAAE,OAAO,GAAG,GAAG;GAAG,GAAI;EAAS,CAAA;CAC/C,CAAA;AAExB,CAAC;AAED,eAAe,UAAUA;AACzB,eAAe,eAAe;AAC9B,eAAe,cAAc"}
1
+ {"version":3,"file":"PaginationRoot.mjs","names":["classes"],"sources":["../../../../src/components/Pagination/PaginationRoot/PaginationRoot.tsx"],"sourcesContent":["import { usePagination } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createEventHandler,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getAutoContrastValue,\n getContrastColor,\n getFontSize,\n getRadius,\n getSize,\n getThemeColor,\n MantineColor,\n MantineRadius,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../../core';\nimport { PaginationProvider } from '../Pagination.context';\nimport classes from '../Pagination.module.css';\n\nexport type PaginationRootStylesNames = 'root' | 'control' | 'dots' | 'items' | 'label';\nexport type PaginationRootCssVariables = {\n root:\n | '--pagination-control-size'\n | '--pagination-control-radius'\n | '--pagination-control-fz'\n | '--pagination-active-bg'\n | '--pagination-active-color';\n};\n\nexport interface PaginationRootProps\n extends\n BoxProps,\n StylesApiProps<PaginationRootFactory>,\n ElementProps<'div', 'value' | 'onChange'> {\n /** `height` and `min-width` of controls @default 'md' */\n size?: MantineSize | `input-${MantineSize}` | (string & {}) | number;\n\n /** Total number of pages, must be an integer */\n total: number;\n\n /** Active page for controlled component, must be an integer in [1, total] interval */\n value?: number;\n\n /** Active page for uncontrolled component, must be an integer in [1, total] interval */\n defaultValue?: number;\n\n /** Called when page changes */\n onChange?: (value: number) => void;\n\n /** Disables all controls, applies disabled styles */\n disabled?: boolean;\n\n /** Number of siblings displayed on the left/right side of the selected page @default 1 */\n siblings?: number;\n\n /** Number of elements visible on the left/right edges @default 1 */\n boundaries?: number;\n\n /** Key of `theme.colors`, active item color @default theme.primaryColor */\n color?: MantineColor;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Called when next page control is clicked */\n onNextPage?: () => void;\n\n /** Called when previous page control is clicked */\n onPreviousPage?: () => void;\n\n /** Called when first page control is clicked */\n onFirstPage?: () => void;\n\n /** Called when last page control is clicked */\n onLastPage?: () => void;\n\n /** Additional props passed down to controls */\n getItemProps?: (page: number) => Record<string, any>;\n\n /** If set, adjusts text color based on the active page background color to ensure sufficient contrast */\n autoContrast?: boolean;\n\n /** Starting page number, defaults to 1 */\n startValue?: number;\n\n /** Determines how the pagination is displayed, `'responsive'` uses CSS container queries to switch between pages and a compact label @default 'default' */\n layout?: 'default' | 'responsive';\n}\n\nexport type PaginationRootFactory = Factory<{\n props: PaginationRootProps;\n ref: HTMLDivElement;\n stylesNames: PaginationRootStylesNames;\n vars: PaginationRootCssVariables;\n}>;\n\nconst defaultProps = {\n siblings: 1,\n boundaries: 1,\n} satisfies Partial<PaginationRootProps>;\n\nconst varsResolver = createVarsResolver<PaginationRootFactory>(\n (theme, { size, radius, color, autoContrast }) => ({\n root: {\n '--pagination-control-radius': radius === undefined ? undefined : getRadius(radius),\n '--pagination-control-size': getSize(size, 'pagination-control-size'),\n '--pagination-control-fz': getFontSize(size),\n '--pagination-active-bg': color ? getThemeColor(color, theme) : undefined,\n '--pagination-active-color': getAutoContrastValue(autoContrast, theme)\n ? getContrastColor({ color, theme, autoContrast })\n : undefined,\n },\n })\n);\n\nexport const PaginationRoot = factory<PaginationRootFactory>((_props) => {\n const props = useProps('PaginationRoot', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n total,\n value,\n defaultValue,\n onChange,\n disabled,\n siblings,\n boundaries,\n color,\n radius,\n onNextPage,\n onPreviousPage,\n onFirstPage,\n onLastPage,\n getItemProps,\n autoContrast,\n startValue,\n layout,\n mod,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<PaginationRootFactory>({\n name: 'Pagination',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { range, setPage, next, previous, active, first, last } = usePagination({\n page: value,\n initialPage: defaultValue,\n onChange,\n total,\n siblings,\n boundaries,\n startValue,\n });\n\n return (\n <PaginationProvider\n value={{\n total,\n range,\n active,\n disabled,\n layout,\n getItemProps,\n onChange: setPage,\n onNext: createEventHandler(onNextPage, next),\n onPrevious: createEventHandler(onPreviousPage, previous),\n onFirst: createEventHandler(onFirstPage, first),\n onLast: createEventHandler(onLastPage, last),\n getStyles,\n }}\n >\n <Box {...getStyles('root')} mod={[{ layout }, mod]} {...others} />\n </PaginationProvider>\n );\n});\n\nPaginationRoot.classes = classes;\nPaginationRoot.varsResolver = varsResolver;\nPaginationRoot.displayName = '@mantine/core/PaginationRoot';\n"],"mappings":";;;;;;;;;;;;;;;;AAsGA,MAAM,eAAe;CACnB,UAAU;CACV,YAAY;AACd;AAEA,MAAM,eAAe,oBAClB,OAAO,EAAE,MAAM,QAAQ,OAAO,oBAAoB,EACjD,MAAM;CACJ,+BAA+B,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;CAClF,6BAA6B,QAAQ,MAAM,yBAAyB;CACpE,2BAA2B,YAAY,IAAI;CAC3C,0BAA0B,QAAQ,cAAc,OAAO,KAAK,IAAI,KAAA;CAChE,6BAA6B,qBAAqB,cAAc,KAAK,IACjE,iBAAiB;EAAE;EAAO;EAAO;CAAa,CAAC,IAC/C,KAAA;AACN,EACF,EACF;AAEA,MAAa,iBAAiB,SAAgC,WAAW;CACvE,MAAM,QAAQ,SAAS,kBAAkB,cAAc,MAAM;CAC7D,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,OACA,OACA,cACA,UACA,UACA,UACA,YACA,OACA,QACA,YACA,gBACA,aACA,YACA,cACA,cACA,YACA,QACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAiC;EACjD,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,MAAM,EAAE,OAAO,SAAS,MAAM,UAAU,QAAQ,OAAO,SAAS,cAAc;EAC5E,MAAM;EACN,aAAa;EACb;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,OACE,oBAAC,oBAAD;EACE,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA,UAAU;GACV,QAAQ,mBAAmB,YAAY,IAAI;GAC3C,YAAY,mBAAmB,gBAAgB,QAAQ;GACvD,SAAS,mBAAmB,aAAa,KAAK;GAC9C,QAAQ,mBAAmB,YAAY,IAAI;GAC3C;EACF;EAEA,UAAA,oBAAC,KAAD;GAAK,GAAI,UAAU,MAAM;GAAG,KAAK,CAAC,EAAE,OAAO,GAAG,GAAG;GAAG,GAAI;EAAS,CAAA;CAC/C,CAAA;AAExB,CAAC;AAED,eAAe,UAAUA;AACzB,eAAe,eAAe;AAC9B,eAAe,cAAc"}
@@ -29,7 +29,7 @@ const Paper = polymorphicFactory((_props) => {
29
29
  varsResolver
30
30
  });
31
31
  return /* @__PURE__ */ jsx(Box, {
32
- mod: [{ "data-with-border": withBorder }, mod],
32
+ mod: [{ withBorder }, mod],
33
33
  ...getStyles("root"),
34
34
  variant,
35
35
  ...others
@@ -1 +1 @@
1
- {"version":3,"file":"Paper.mjs","names":["classes"],"sources":["../../../src/components/Paper/Paper.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n getRadius,\n getShadow,\n MantineRadius,\n MantineShadow,\n polymorphicFactory,\n PolymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport classes from './Paper.module.css';\n\nexport type PaperStylesNames = 'root';\nexport type PaperCssVariables = {\n root: '--paper-radius' | '--paper-shadow';\n};\n\nexport interface PaperBaseProps {\n /** Key of `theme.shadows` or any valid CSS value to set `box-shadow` */\n shadow?: MantineShadow;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Adds border to the root element */\n withBorder?: boolean;\n}\n\nexport interface PaperProps extends BoxProps, PaperBaseProps, StylesApiProps<PaperFactory> {}\n\nexport type PaperFactory = PolymorphicFactory<{\n props: PaperProps;\n defaultComponent: 'div';\n defaultRef: HTMLDivElement;\n stylesNames: PaperStylesNames;\n vars: PaperCssVariables;\n}>;\n\nconst varsResolver = createVarsResolver<PaperFactory>((_, { radius, shadow }) => ({\n root: {\n '--paper-radius': radius === undefined ? undefined : getRadius(radius),\n '--paper-shadow': getShadow(shadow),\n },\n}));\n\nexport const Paper = polymorphicFactory<PaperFactory>((_props) => {\n const props = useProps('Paper', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n withBorder,\n vars,\n radius,\n shadow,\n variant,\n mod,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<PaperFactory>({\n name: 'Paper',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <Box\n mod={[{ 'data-with-border': withBorder }, mod]}\n {...getStyles('root')}\n variant={variant}\n {...others}\n />\n );\n});\n\nPaper.classes = classes;\nPaper.varsResolver = varsResolver;\nPaper.displayName = '@mantine/core/Paper';\n\nexport namespace Paper {\n export type Props = PaperProps;\n export type StylesNames = PaperStylesNames;\n export type CssVariables = PaperCssVariables;\n export type Factory = PaperFactory;\n export type BaseProps = PaperBaseProps;\n}\n"],"mappings":";;;;;;;;;;AA0CA,MAAM,eAAe,oBAAkC,GAAG,EAAE,QAAQ,cAAc,EAChF,MAAM;CACJ,kBAAkB,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;CACrE,kBAAkB,UAAU,MAAM;AACpC,EACF,EAAE;AAEF,MAAa,QAAQ,oBAAkC,WAAW;CAChE,MAAM,QAAQ,SAAS,SAAS,MAAM,MAAM;CAC5C,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,YACA,MACA,QACA,QACA,SACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAwB;EACxC,MAAM;EACN;EACA,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,OACE,oBAAC,KAAD;EACE,KAAK,CAAC,EAAE,oBAAoB,WAAW,GAAG,GAAG;EAC7C,GAAI,UAAU,MAAM;EACX;EACT,GAAI;CACL,CAAA;AAEL,CAAC;AAED,MAAM,UAAUA;AAChB,MAAM,eAAe;AACrB,MAAM,cAAc"}
1
+ {"version":3,"file":"Paper.mjs","names":["classes"],"sources":["../../../src/components/Paper/Paper.tsx"],"sourcesContent":["import {\n Box,\n BoxProps,\n createVarsResolver,\n getRadius,\n getShadow,\n MantineRadius,\n MantineShadow,\n polymorphicFactory,\n PolymorphicFactory,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport classes from './Paper.module.css';\n\nexport type PaperStylesNames = 'root';\nexport type PaperCssVariables = {\n root: '--paper-radius' | '--paper-shadow';\n};\n\nexport interface PaperBaseProps {\n /** Key of `theme.shadows` or any valid CSS value to set `box-shadow` */\n shadow?: MantineShadow;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Adds border to the root element */\n withBorder?: boolean;\n}\n\nexport interface PaperProps extends BoxProps, PaperBaseProps, StylesApiProps<PaperFactory> {}\n\nexport type PaperFactory = PolymorphicFactory<{\n props: PaperProps;\n defaultComponent: 'div';\n defaultRef: HTMLDivElement;\n stylesNames: PaperStylesNames;\n vars: PaperCssVariables;\n}>;\n\nconst varsResolver = createVarsResolver<PaperFactory>((_, { radius, shadow }) => ({\n root: {\n '--paper-radius': radius === undefined ? undefined : getRadius(radius),\n '--paper-shadow': getShadow(shadow),\n },\n}));\n\nexport const Paper = polymorphicFactory<PaperFactory>((_props) => {\n const props = useProps('Paper', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n withBorder,\n vars,\n radius,\n shadow,\n variant,\n mod,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<PaperFactory>({\n name: 'Paper',\n props,\n classes,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return <Box mod={[{ withBorder }, mod]} {...getStyles('root')} variant={variant} {...others} />;\n});\n\nPaper.classes = classes;\nPaper.varsResolver = varsResolver;\nPaper.displayName = '@mantine/core/Paper';\n\nexport namespace Paper {\n export type Props = PaperProps;\n export type StylesNames = PaperStylesNames;\n export type CssVariables = PaperCssVariables;\n export type Factory = PaperFactory;\n export type BaseProps = PaperBaseProps;\n}\n"],"mappings":";;;;;;;;;;AA0CA,MAAM,eAAe,oBAAkC,GAAG,EAAE,QAAQ,cAAc,EAChF,MAAM;CACJ,kBAAkB,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;CACrE,kBAAkB,UAAU,MAAM;AACpC,EACF,EAAE;AAEF,MAAa,QAAQ,oBAAkC,WAAW;CAChE,MAAM,QAAQ,SAAS,SAAS,MAAM,MAAM;CAC5C,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,YACA,MACA,QACA,QACA,SACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,YAAY,UAAwB;EACxC,MAAM;EACN;EACA,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CAED,OAAO,oBAAC,KAAD;EAAK,KAAK,CAAC,EAAE,WAAW,GAAG,GAAG;EAAG,GAAI,UAAU,MAAM;EAAY;EAAS,GAAI;CAAS,CAAA;AAChG,CAAC;AAED,MAAM,UAAUA;AAChB,MAAM,eAAe;AACrB,MAAM,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordInput.mjs","names":["classes"],"sources":["../../../src/components/PasswordInput/PasswordInput.tsx"],"sourcesContent":["import cx from 'clsx';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n createVarsResolver,\n ElementProps,\n extractStyleProps,\n factory,\n Factory,\n getSize,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport { ActionIcon } from '../ActionIcon';\nimport { __BaseInputProps, __InputStylesNames, Input, InputVariant } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { PasswordToggleIcon } from './PasswordToggleIcon';\nimport classes from './PasswordInput.module.css';\n\nexport type PasswordInputStylesNames =\n | 'root'\n | 'visibilityToggle'\n | 'innerInput'\n | __InputStylesNames;\nexport type PasswordInputCssVariables = {\n root: '--psi-icon-size' | '--psi-button-size';\n};\n\nexport interface PasswordInputProps\n extends\n BoxProps,\n Omit<__BaseInputProps, 'pointer'>,\n StylesApiProps<PasswordInputFactory>,\n ElementProps<'input', 'size'> {\n /** A component to replace the visibility toggle icon */\n visibilityToggleIcon?: React.FC<{ reveal: boolean }>;\n\n /** Props passed down to the visibility toggle button */\n visibilityToggleButtonProps?: Record<string, any>;\n\n /** If set, the visibility toggle button is focusable with keyboard @default `false` */\n visibilityToggleFocusable?: boolean;\n\n /** If set, the input value is visible */\n visible?: boolean;\n\n /** If set, the input value is visible by default */\n defaultVisible?: boolean;\n\n /** Called when visibility changes */\n onVisibilityChange?: (visible: boolean) => void;\n}\n\nexport type PasswordInputFactory = Factory<{\n props: PasswordInputProps;\n ref: HTMLInputElement;\n stylesNames: PasswordInputStylesNames;\n vars: PasswordInputCssVariables;\n variant: InputVariant;\n}>;\n\nconst defaultProps = {\n visibilityToggleIcon: PasswordToggleIcon,\n visibilityToggleFocusable: false,\n size: 'sm',\n} satisfies Partial<PasswordInputProps>;\n\nconst varsResolver = createVarsResolver<PasswordInputFactory>((_, { size }) => ({\n root: {\n '--psi-icon-size': getSize(size, 'psi-icon-size'),\n '--psi-button-size': getSize(size, 'psi-button-size'),\n },\n}));\n\nexport const PasswordInput = factory<PasswordInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'PasswordInput'], defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n required,\n error,\n success,\n leftSection,\n disabled,\n id,\n variant,\n inputContainer,\n description,\n label,\n size,\n errorProps,\n successProps,\n descriptionProps,\n labelProps,\n withAsterisk,\n inputWrapperOrder,\n wrapperProps,\n radius,\n rightSection,\n rightSectionWidth,\n rightSectionPointerEvents,\n leftSectionWidth,\n visible,\n defaultVisible,\n onVisibilityChange,\n visibilityToggleIcon: VisibilityToggleIcon,\n visibilityToggleButtonProps,\n visibilityToggleFocusable,\n rightSectionProps,\n leftSectionProps,\n leftSectionPointerEvents,\n withErrorStyles,\n withSuccessStyles,\n mod,\n attributes,\n dir,\n ...others\n } = props;\n\n const uuid = useId(id);\n\n const [_visible, setVisibility] = useUncontrolled({\n value: visible,\n defaultValue: defaultVisible,\n finalValue: false,\n onChange: onVisibilityChange,\n });\n\n const toggleVisibility = () => setVisibility(!_visible);\n\n const getStyles = useStyles<PasswordInputFactory>({\n name: 'PasswordInput',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<PasswordInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const { styleProps, rest } = extractStyleProps(others);\n const errorId = errorProps?.id || `${uuid}-error`;\n const successId = successProps?.id || `${uuid}-success`;\n const descriptionId = descriptionProps?.id || `${uuid}-description`;\n const hasError = !!error && typeof error !== 'boolean';\n const hasSuccess = !!success && typeof success !== 'boolean';\n const hasDescription = !!description;\n const _describedBy = `${hasError ? errorId : ''} ${hasSuccess && !hasError ? successId : ''} ${hasDescription ? descriptionId : ''}`;\n const describedBy = _describedBy.trim().length > 0 ? _describedBy.trim() : undefined;\n\n const visibilityToggleButton = (\n <ActionIcon<'button'>\n {...getStyles('visibilityToggle')}\n disabled={disabled}\n radius={radius}\n aria-pressed={_visible}\n tabIndex={visibilityToggleFocusable ? 0 : -1}\n aria-label=\"Toggle password visibility\"\n {...visibilityToggleButtonProps}\n variant={visibilityToggleButtonProps?.variant ?? 'subtle'}\n color=\"gray\"\n unstyled={unstyled}\n onTouchEnd={(event) => {\n event.preventDefault();\n visibilityToggleButtonProps?.onTouchEnd?.(event);\n toggleVisibility();\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n visibilityToggleButtonProps?.onMouseDown?.(event);\n toggleVisibility();\n }}\n onKeyDown={(event) => {\n visibilityToggleButtonProps?.onKeyDown?.(event);\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n toggleVisibility();\n }\n }}\n >\n <VisibilityToggleIcon reveal={_visible} />\n </ActionIcon>\n );\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n success={success}\n description={description}\n size={size}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n __staticSelector=\"PasswordInput\"\n __stylesApiProps={props}\n unstyled={unstyled}\n withAsterisk={withAsterisk}\n inputWrapperOrder={inputWrapperOrder}\n inputContainer={inputContainer}\n variant={variant}\n labelProps={{ ...labelProps, htmlFor: uuid }}\n descriptionProps={{ ...descriptionProps, id: descriptionId }}\n errorProps={{ ...errorProps, id: errorId }}\n successProps={{ ...successProps, id: successId }}\n mod={mod}\n attributes={attributes}\n {...getStyles('root')}\n {...styleProps}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n dir={dir}\n error={error}\n success={success}\n leftSection={leftSection}\n size={size}\n classNames={{ ...resolvedClassNames, input: cx(classes.input, resolvedClassNames?.input) }}\n styles={resolvedStyles}\n radius={radius}\n disabled={disabled}\n __staticSelector=\"PasswordInput\"\n __stylesApiProps={props}\n rightSectionWidth={rightSectionWidth}\n rightSection={rightSection ?? visibilityToggleButton}\n variant={variant}\n unstyled={unstyled}\n leftSectionWidth={leftSectionWidth}\n rightSectionPointerEvents={rightSectionPointerEvents || 'all'}\n rightSectionProps={rightSectionProps}\n leftSectionProps={leftSectionProps}\n leftSectionPointerEvents={leftSectionPointerEvents}\n withAria={false}\n withErrorStyles={withErrorStyles}\n withSuccessStyles={withSuccessStyles}\n attributes={attributes}\n >\n <input\n required={required}\n data-invalid={!!error || undefined}\n data-with-left-section={!!leftSection || undefined}\n {...getStyles('innerInput')}\n disabled={disabled}\n id={uuid}\n dir={dir}\n {...rest}\n aria-describedby={describedBy}\n autoComplete={rest.autoComplete || 'off'}\n type={_visible ? 'text' : 'password'}\n />\n </Input>\n </Input.Wrapper>\n );\n});\n\nPasswordInput.classes = { ...InputBase.classes, ...classes };\nPasswordInput.varsResolver = varsResolver;\nPasswordInput.displayName = '@mantine/core/PasswordInput';\n\nexport namespace PasswordInput {\n export type Props = PasswordInputProps;\n export type StylesNames = PasswordInputStylesNames;\n export type CssVariables = PasswordInputCssVariables;\n export type Factory = PasswordInputFactory;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PasswordInput.mjs","names":["classes"],"sources":["../../../src/components/PasswordInput/PasswordInput.tsx"],"sourcesContent":["import cx from 'clsx';\nimport { useId, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n createVarsResolver,\n ElementProps,\n extractStyleProps,\n factory,\n Factory,\n getSize,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport { ActionIcon } from '../ActionIcon';\nimport { __BaseInputProps, __InputStylesNames, Input, InputVariant } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { PasswordToggleIcon } from './PasswordToggleIcon';\nimport classes from './PasswordInput.module.css';\n\nexport type PasswordInputStylesNames =\n | 'root'\n | 'visibilityToggle'\n | 'innerInput'\n | __InputStylesNames;\nexport type PasswordInputCssVariables = {\n root: '--psi-icon-size' | '--psi-button-size';\n};\n\nexport interface PasswordInputProps\n extends\n BoxProps,\n Omit<__BaseInputProps, 'pointer'>,\n StylesApiProps<PasswordInputFactory>,\n ElementProps<'input', 'size'> {\n /** A component to replace the visibility toggle icon */\n visibilityToggleIcon?: React.FC<{ reveal: boolean }>;\n\n /** Props passed down to the visibility toggle button */\n visibilityToggleButtonProps?: Record<string, any>;\n\n /** If set, the visibility toggle button is focusable with keyboard @default `false` */\n visibilityToggleFocusable?: boolean;\n\n /** If set, the input value is visible */\n visible?: boolean;\n\n /** If set, the input value is visible by default */\n defaultVisible?: boolean;\n\n /** Called when visibility changes */\n onVisibilityChange?: (visible: boolean) => void;\n}\n\nexport type PasswordInputFactory = Factory<{\n props: PasswordInputProps;\n ref: HTMLInputElement;\n stylesNames: PasswordInputStylesNames;\n vars: PasswordInputCssVariables;\n variant: InputVariant;\n}>;\n\nconst defaultProps = {\n visibilityToggleIcon: PasswordToggleIcon,\n visibilityToggleFocusable: false,\n size: 'sm',\n} satisfies Partial<PasswordInputProps>;\n\nconst varsResolver = createVarsResolver<PasswordInputFactory>((_, { size }) => ({\n root: {\n '--psi-icon-size': getSize(size, 'psi-icon-size'),\n '--psi-button-size': getSize(size, 'psi-button-size'),\n },\n}));\n\nexport const PasswordInput = factory<PasswordInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'PasswordInput'], defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n required,\n error,\n success,\n leftSection,\n disabled,\n id,\n variant,\n inputContainer,\n description,\n label,\n size,\n errorProps,\n successProps,\n descriptionProps,\n labelProps,\n withAsterisk,\n inputWrapperOrder,\n wrapperProps,\n radius,\n rightSection,\n rightSectionWidth,\n rightSectionPointerEvents,\n leftSectionWidth,\n visible,\n defaultVisible,\n onVisibilityChange,\n visibilityToggleIcon: VisibilityToggleIcon,\n visibilityToggleButtonProps,\n visibilityToggleFocusable,\n rightSectionProps,\n leftSectionProps,\n leftSectionPointerEvents,\n withErrorStyles,\n withSuccessStyles,\n mod,\n attributes,\n dir,\n ...others\n } = props;\n\n const uuid = useId(id);\n\n const [_visible, setVisibility] = useUncontrolled({\n value: visible,\n defaultValue: defaultVisible,\n finalValue: false,\n onChange: onVisibilityChange,\n });\n\n const toggleVisibility = () => setVisibility(!_visible);\n\n const getStyles = useStyles<PasswordInputFactory>({\n name: 'PasswordInput',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<PasswordInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const { styleProps, rest } = extractStyleProps(others);\n const errorId = errorProps?.id || `${uuid}-error`;\n const successId = successProps?.id || `${uuid}-success`;\n const descriptionId = descriptionProps?.id || `${uuid}-description`;\n const hasError = !!error && typeof error !== 'boolean';\n const hasSuccess = !!success && typeof success !== 'boolean';\n const hasDescription = !!description;\n const _describedBy = `${hasError ? errorId : ''} ${hasSuccess && !hasError ? successId : ''} ${hasDescription ? descriptionId : ''}`;\n const describedBy = _describedBy.trim().length > 0 ? _describedBy.trim() : undefined;\n\n const visibilityToggleButton = (\n <ActionIcon<'button'>\n {...getStyles('visibilityToggle')}\n disabled={disabled}\n radius={radius}\n aria-pressed={_visible}\n tabIndex={visibilityToggleFocusable ? 0 : -1}\n aria-label=\"Toggle password visibility\"\n {...visibilityToggleButtonProps}\n variant={visibilityToggleButtonProps?.variant ?? 'subtle'}\n color=\"gray\"\n unstyled={unstyled}\n onTouchEnd={(event) => {\n event.preventDefault();\n visibilityToggleButtonProps?.onTouchEnd?.(event);\n toggleVisibility();\n }}\n onMouseDown={(event) => {\n event.preventDefault();\n visibilityToggleButtonProps?.onMouseDown?.(event);\n toggleVisibility();\n }}\n onKeyDown={(event) => {\n visibilityToggleButtonProps?.onKeyDown?.(event);\n if (event.key === ' ' || event.key === 'Enter') {\n event.preventDefault();\n toggleVisibility();\n }\n }}\n >\n <VisibilityToggleIcon reveal={_visible} />\n </ActionIcon>\n );\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n success={success}\n description={description}\n size={size}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n __staticSelector=\"PasswordInput\"\n __stylesApiProps={props}\n unstyled={unstyled}\n withAsterisk={withAsterisk}\n inputWrapperOrder={inputWrapperOrder}\n inputContainer={inputContainer}\n variant={variant}\n labelProps={{ ...labelProps, htmlFor: uuid }}\n descriptionProps={{ ...descriptionProps, id: descriptionId }}\n errorProps={{ ...errorProps, id: errorId }}\n successProps={{ ...successProps, id: successId }}\n mod={mod}\n attributes={attributes}\n {...getStyles('root')}\n {...styleProps}\n {...wrapperProps}\n >\n <Input\n component=\"div\"\n dir={dir}\n error={error}\n success={success}\n leftSection={leftSection}\n size={size}\n classNames={{ ...resolvedClassNames, input: cx(classes.input, resolvedClassNames?.input) }}\n styles={resolvedStyles}\n radius={radius}\n disabled={disabled}\n __staticSelector=\"PasswordInput\"\n __stylesApiProps={props}\n rightSectionWidth={rightSectionWidth}\n rightSection={rightSection ?? visibilityToggleButton}\n variant={variant}\n unstyled={unstyled}\n leftSectionWidth={leftSectionWidth}\n rightSectionPointerEvents={rightSectionPointerEvents || 'all'}\n rightSectionProps={rightSectionProps}\n leftSectionProps={leftSectionProps}\n leftSectionPointerEvents={leftSectionPointerEvents}\n withAria={false}\n withErrorStyles={withErrorStyles}\n withSuccessStyles={withSuccessStyles}\n attributes={attributes}\n >\n <input\n required={required}\n data-invalid={!!error || undefined}\n data-with-left-section={!!leftSection || undefined}\n {...getStyles('innerInput')}\n disabled={disabled}\n id={uuid}\n dir={dir}\n {...rest}\n aria-describedby={describedBy}\n autoComplete={rest.autoComplete || 'off'}\n type={_visible ? 'text' : 'password'}\n />\n </Input>\n </Input.Wrapper>\n );\n});\n\nPasswordInput.classes = { ...InputBase.classes, ...classes };\nPasswordInput.varsResolver = varsResolver;\nPasswordInput.displayName = '@mantine/core/PasswordInput';\n\nexport namespace PasswordInput {\n export type Props = PasswordInputProps;\n export type StylesNames = PasswordInputStylesNames;\n export type CssVariables = PasswordInputCssVariables;\n export type Factory = PasswordInputFactory;\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordToggleIcon.mjs","names":[],"sources":["../../../src/components/PasswordInput/PasswordToggleIcon.tsx"],"sourcesContent":["export interface PasswordToggleIconProps {\n reveal: boolean;\n}\n\nexport type PasswordInputVisibilityToggleIcon = React.FC<PasswordToggleIconProps>;\n\nexport function PasswordToggleIcon({ reveal }: PasswordToggleIconProps) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 256 256\"\n style={{ width: 'var(--psi-icon-size)', height: 'var(--psi-icon-size)' }}\n >\n {reveal ? (\n <>\n <path fill=\"none\" d=\"M0 0h256v256H0z\" />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M48 40l160 176M154.91 157.6a40 40 0 01-53.82-59.2M135.53 88.71a40 40 0 0132.3 35.53\"\n />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M208.61 169.1C230.41 149.58 240 128 240 128s-32-72-112-72a126 126 0 00-20.68 1.68M74 68.6C33.23 89.24 16 128 16 128s32 72 112 72a118.05 118.05 0 0054-12.6\"\n />\n </>\n ) : (\n <>\n <path fill=\"none\" d=\"M0 0h256v256H0z\" />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M128 56c-80 0-112 72-112 72s32 72 112 72 112-72 112-72-32-72-112-72z\"\n />\n <circle\n cx=\"128\"\n cy=\"128\"\n r=\"40\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n />\n </>\n )}\n </svg>\n );\n}\n"],"mappings":";;;AAMA,SAAgB,mBAAmB,EAAE,UAAmC;CACtE,OACE,oBAAC,OAAD;EACE,OAAM;EACN,SAAQ;EACR,OAAO;GAAE,OAAO;GAAwB,QAAQ;EAAuB;YAEtE,SACC,qBAAA,UAAA,EAAA,UAAA;GACE,oBAAC,QAAD;IAAM,MAAK;IAAO,GAAE;GAAmB,CAAA;GACvC,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;GACD,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;EACD,EAAA,CAAA,IAEF,qBAAA,UAAA,EAAA,UAAA;GACE,oBAAC,QAAD;IAAM,MAAK;IAAO,GAAE;GAAmB,CAAA;GACvC,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;GACD,oBAAC,UAAD;IACE,IAAG;IACH,IAAG;IACH,GAAE;IACF,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;GACb,CAAA;EACD,EAAA,CAAA;CAED,CAAA;AAET"}
1
+ {"version":3,"file":"PasswordToggleIcon.mjs","names":[],"sources":["../../../src/components/PasswordInput/PasswordToggleIcon.tsx"],"sourcesContent":["export interface PasswordToggleIconProps {\n reveal: boolean;\n}\n\nexport type PasswordInputVisibilityToggleIcon = React.FC<PasswordToggleIconProps>;\n\nexport function PasswordToggleIcon({ reveal }: PasswordToggleIconProps) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 256 256\"\n style={{ width: 'var(--psi-icon-size)', height: 'var(--psi-icon-size)' }}\n >\n {reveal ? (\n <>\n <path fill=\"none\" d=\"M0 0h256v256H0z\" />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M48 40l160 176M154.91 157.6a40 40 0 01-53.82-59.2M135.53 88.71a40 40 0 0132.3 35.53\"\n />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M208.61 169.1C230.41 149.58 240 128 240 128s-32-72-112-72a126 126 0 00-20.68 1.68M74 68.6C33.23 89.24 16 128 16 128s32 72 112 72a118.05 118.05 0 0054-12.6\"\n />\n </>\n ) : (\n <>\n <path fill=\"none\" d=\"M0 0h256v256H0z\" />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n d=\"M128 56c-80 0-112 72-112 72s32 72 112 72 112-72 112-72-32-72-112-72z\"\n />\n <circle\n cx=\"128\"\n cy=\"128\"\n r=\"40\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth=\"16\"\n />\n </>\n )}\n </svg>\n );\n}\n"],"mappings":";;;AAMA,SAAgB,mBAAmB,EAAE,UAAmC;CACtE,OACE,oBAAC,OAAD;EACE,OAAM;EACN,SAAQ;EACR,OAAO;GAAE,OAAO;GAAwB,QAAQ;EAAuB;EAEtE,UAAA,SACC,qBAAA,UAAA,EAAA,UAAA;GACE,oBAAC,QAAD;IAAM,MAAK;IAAO,GAAE;GAAmB,CAAA;GACvC,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;GACD,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;EACD,EAAA,CAAA,IAEF,qBAAA,UAAA,EAAA,UAAA;GACE,oBAAC,QAAD;IAAM,MAAK;IAAO,GAAE;GAAmB,CAAA;GACvC,oBAAC,QAAD;IACE,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;IACZ,GAAE;GACH,CAAA;GACD,oBAAC,UAAD;IACE,IAAG;IACH,IAAG;IACH,GAAE;IACF,MAAK;IACL,QAAO;IACP,eAAc;IACd,gBAAe;IACf,aAAY;GACb,CAAA;EACD,EAAA,CAAA;CAED,CAAA;AAET"}
@@ -1 +1 @@
1
- {"version":3,"file":"Pill.mjs","names":["classes"],"sources":["../../../src/components/Pill/Pill.tsx"],"sourcesContent":["import { use } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getRadius,\n getSize,\n MantineRadius,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { CloseButton, CloseButtonProps } from '../CloseButton';\nimport { PillsInputContext } from '../PillsInput/PillsInput.context';\nimport {\n PillGroup,\n PillGroupContext,\n type PillGroupProps,\n type PillGroupStylesNames,\n type PillGroupCssVariables,\n type PillGroupFactory,\n} from './PillGroup/PillGroup';\nimport classes from './Pill.module.css';\nexport type PillStylesNames = 'root' | 'label' | 'remove';\nexport type PillVariant = 'default' | 'contrast';\nexport type PillCssVariables = {\n root: '--pill-fz' | '--pill-radius' | '--pill-height';\n};\n\nexport interface PillProps extends BoxProps, StylesApiProps<PillFactory>, ElementProps<'div'> {\n /** Controls pill `font-size` and `padding` @default 'sm' */\n size?: MantineSize;\n\n /** Controls visibility of the remove button @default false */\n withRemoveButton?: boolean;\n\n /** Called when the remove button is clicked */\n onRemove?: () => void;\n\n /** Props passed down to the remove button */\n removeButtonProps?: CloseButtonProps & React.ComponentProps<'button'>;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. @default 'xl' */\n radius?: MantineRadius;\n\n /** Adds disabled attribute, applies disabled styles */\n disabled?: boolean;\n}\n\nexport type PillFactory = Factory<{\n props: PillProps;\n ref: HTMLDivElement;\n stylesNames: PillStylesNames;\n vars: PillCssVariables;\n variant: PillVariant;\n ctx: { size: MantineSize | (string & {}) | undefined };\n staticComponents: {\n Group: typeof PillGroup;\n };\n}>;\n\nconst defaultProps = {\n variant: 'default',\n} satisfies Partial<PillProps>;\n\nconst varsResolver = createVarsResolver<PillFactory>((_, { radius }, { size }) => ({\n root: {\n '--pill-fz': getSize(size, 'pill-fz'),\n '--pill-height': getSize(size, 'pill-height'),\n '--pill-radius': radius === undefined ? undefined : getRadius(radius),\n },\n}));\n\nexport const Pill = factory<PillFactory>((_props) => {\n const props = useProps('Pill', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n variant,\n children,\n withRemoveButton,\n onRemove,\n removeButtonProps,\n radius,\n size,\n disabled,\n mod,\n attributes,\n ...others\n } = props;\n\n const ctx = use(PillGroupContext);\n const pillsInputCtx = use(PillsInputContext);\n const _size = size || ctx?.size || undefined;\n const _variant = pillsInputCtx?.variant === 'filled' ? 'contrast' : variant || 'default';\n\n const getStyles = useStyles<PillFactory>({\n name: 'Pill',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { size: _size },\n });\n\n return (\n <Box\n component=\"span\"\n variant={_variant}\n size={_size}\n {...getStyles('root', { variant: _variant })}\n mod={[\n { 'with-remove': withRemoveButton && !disabled, disabled: disabled || ctx?.disabled },\n mod,\n ]}\n {...others}\n >\n <span {...getStyles('label')}>{children}</span>\n {withRemoveButton && (\n <CloseButton\n variant=\"transparent\"\n radius={radius}\n tabIndex={-1}\n aria-hidden\n unstyled={unstyled}\n {...removeButtonProps}\n {...getStyles('remove', {\n className: removeButtonProps?.className,\n style: removeButtonProps?.style,\n })}\n onMouseDown={(event) => {\n event.preventDefault();\n event.stopPropagation();\n removeButtonProps?.onMouseDown?.(event);\n }}\n onClick={(event) => {\n event.stopPropagation();\n onRemove?.();\n removeButtonProps?.onClick?.(event);\n }}\n />\n )}\n </Box>\n );\n});\n\nPill.classes = classes;\nPill.varsResolver = varsResolver;\nPill.displayName = '@mantine/core/Pill';\nPill.Group = PillGroup;\n\nexport namespace Pill {\n export type Props = PillProps;\n export type StylesNames = PillStylesNames;\n export type CssVariables = PillCssVariables;\n export type Factory = PillFactory;\n export type Variant = PillVariant;\n\n export namespace Group {\n export type Props = PillGroupProps;\n export type StylesNames = PillGroupStylesNames;\n export type CssVariables = PillGroupCssVariables;\n export type Factory = PillGroupFactory;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAiEA,MAAM,eAAe,EACnB,SAAS,UACX;AAEA,MAAM,eAAe,oBAAiC,GAAG,EAAE,UAAU,EAAE,YAAY,EACjF,MAAM;CACJ,aAAa,QAAQ,MAAM,SAAS;CACpC,iBAAiB,QAAQ,MAAM,aAAa;CAC5C,iBAAiB,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;AACtE,EACF,EAAE;AAEF,MAAa,OAAO,SAAsB,WAAW;CACnD,MAAM,QAAQ,SAAS,QAAQ,cAAc,MAAM;CACnD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,SACA,UACA,kBACA,UACA,mBACA,QACA,MACA,UACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,MAAM,IAAI,gBAAgB;CAChC,MAAM,gBAAgB,IAAI,iBAAiB;CAC3C,MAAM,QAAQ,QAAQ,KAAK,QAAQ,KAAA;CACnC,MAAM,WAAW,eAAe,YAAY,WAAW,aAAa,WAAW;CAE/E,MAAM,YAAY,UAAuB;EACvC,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,MAAM,MAAM;CAC3B,CAAC;CAED,OACE,qBAAC,KAAD;EACE,WAAU;EACV,SAAS;EACT,MAAM;EACN,GAAI,UAAU,QAAQ,EAAE,SAAS,SAAS,CAAC;EAC3C,KAAK,CACH;GAAE,eAAe,oBAAoB,CAAC;GAAU,UAAU,YAAY,KAAK;EAAS,GACpF,GACF;EACA,GAAI;YATN,CAWE,oBAAC,QAAD;GAAM,GAAI,UAAU,OAAO;GAAI;EAAe,CAAA,GAC7C,oBACC,oBAAC,aAAD;GACE,SAAQ;GACA;GACR,UAAU;GACV,eAAA;GACU;GACV,GAAI;GACJ,GAAI,UAAU,UAAU;IACtB,WAAW,mBAAmB;IAC9B,OAAO,mBAAmB;GAC5B,CAAC;GACD,cAAc,UAAU;IACtB,MAAM,eAAe;IACrB,MAAM,gBAAgB;IACtB,mBAAmB,cAAc,KAAK;GACxC;GACA,UAAU,UAAU;IAClB,MAAM,gBAAgB;IACtB,WAAW;IACX,mBAAmB,UAAU,KAAK;GACpC;EACD,CAAA,CAEA;;AAET,CAAC;AAED,KAAK,UAAUA;AACf,KAAK,eAAe;AACpB,KAAK,cAAc;AACnB,KAAK,QAAQ"}
1
+ {"version":3,"file":"Pill.mjs","names":["classes"],"sources":["../../../src/components/Pill/Pill.tsx"],"sourcesContent":["import { use } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getRadius,\n getSize,\n MantineRadius,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { CloseButton, CloseButtonProps } from '../CloseButton';\nimport { PillsInputContext } from '../PillsInput/PillsInput.context';\nimport {\n PillGroup,\n PillGroupContext,\n type PillGroupProps,\n type PillGroupStylesNames,\n type PillGroupCssVariables,\n type PillGroupFactory,\n} from './PillGroup/PillGroup';\nimport classes from './Pill.module.css';\nexport type PillStylesNames = 'root' | 'label' | 'remove';\nexport type PillVariant = 'default' | 'contrast';\nexport type PillCssVariables = {\n root: '--pill-fz' | '--pill-radius' | '--pill-height';\n};\n\nexport interface PillProps extends BoxProps, StylesApiProps<PillFactory>, ElementProps<'div'> {\n /** Controls pill `font-size` and `padding` @default 'sm' */\n size?: MantineSize;\n\n /** Controls visibility of the remove button @default false */\n withRemoveButton?: boolean;\n\n /** Called when the remove button is clicked */\n onRemove?: () => void;\n\n /** Props passed down to the remove button */\n removeButtonProps?: CloseButtonProps & React.ComponentProps<'button'>;\n\n /** Key of `theme.radius` or any valid CSS value to set border-radius. Numbers are converted to rem. @default 'xl' */\n radius?: MantineRadius;\n\n /** Adds disabled attribute, applies disabled styles */\n disabled?: boolean;\n}\n\nexport type PillFactory = Factory<{\n props: PillProps;\n ref: HTMLDivElement;\n stylesNames: PillStylesNames;\n vars: PillCssVariables;\n variant: PillVariant;\n ctx: { size: MantineSize | (string & {}) | undefined };\n staticComponents: {\n Group: typeof PillGroup;\n };\n}>;\n\nconst defaultProps = {\n variant: 'default',\n} satisfies Partial<PillProps>;\n\nconst varsResolver = createVarsResolver<PillFactory>((_, { radius }, { size }) => ({\n root: {\n '--pill-fz': getSize(size, 'pill-fz'),\n '--pill-height': getSize(size, 'pill-height'),\n '--pill-radius': radius === undefined ? undefined : getRadius(radius),\n },\n}));\n\nexport const Pill = factory<PillFactory>((_props) => {\n const props = useProps('Pill', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n variant,\n children,\n withRemoveButton,\n onRemove,\n removeButtonProps,\n radius,\n size,\n disabled,\n mod,\n attributes,\n ...others\n } = props;\n\n const ctx = use(PillGroupContext);\n const pillsInputCtx = use(PillsInputContext);\n const _size = size || ctx?.size || undefined;\n const _variant = pillsInputCtx?.variant === 'filled' ? 'contrast' : variant || 'default';\n\n const getStyles = useStyles<PillFactory>({\n name: 'Pill',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { size: _size },\n });\n\n return (\n <Box\n component=\"span\"\n variant={_variant}\n size={_size}\n {...getStyles('root', { variant: _variant })}\n mod={[\n { 'with-remove': withRemoveButton && !disabled, disabled: disabled || ctx?.disabled },\n mod,\n ]}\n {...others}\n >\n <span {...getStyles('label')}>{children}</span>\n {withRemoveButton && (\n <CloseButton\n variant=\"transparent\"\n radius={radius}\n tabIndex={-1}\n aria-hidden\n unstyled={unstyled}\n {...removeButtonProps}\n {...getStyles('remove', {\n className: removeButtonProps?.className,\n style: removeButtonProps?.style,\n })}\n onMouseDown={(event) => {\n event.preventDefault();\n event.stopPropagation();\n removeButtonProps?.onMouseDown?.(event);\n }}\n onClick={(event) => {\n event.stopPropagation();\n onRemove?.();\n removeButtonProps?.onClick?.(event);\n }}\n />\n )}\n </Box>\n );\n});\n\nPill.classes = classes;\nPill.varsResolver = varsResolver;\nPill.displayName = '@mantine/core/Pill';\nPill.Group = PillGroup;\n\nexport namespace Pill {\n export type Props = PillProps;\n export type StylesNames = PillStylesNames;\n export type CssVariables = PillCssVariables;\n export type Factory = PillFactory;\n export type Variant = PillVariant;\n\n export namespace Group {\n export type Props = PillGroupProps;\n export type StylesNames = PillGroupStylesNames;\n export type CssVariables = PillGroupCssVariables;\n export type Factory = PillGroupFactory;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAiEA,MAAM,eAAe,EACnB,SAAS,UACX;AAEA,MAAM,eAAe,oBAAiC,GAAG,EAAE,UAAU,EAAE,YAAY,EACjF,MAAM;CACJ,aAAa,QAAQ,MAAM,SAAS;CACpC,iBAAiB,QAAQ,MAAM,aAAa;CAC5C,iBAAiB,WAAW,KAAA,IAAY,KAAA,IAAY,UAAU,MAAM;AACtE,EACF,EAAE;AAEF,MAAa,OAAO,SAAsB,WAAW;CACnD,MAAM,QAAQ,SAAS,QAAQ,cAAc,MAAM;CACnD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,SACA,UACA,kBACA,UACA,mBACA,QACA,MACA,UACA,KACA,YACA,GAAG,WACD;CAEJ,MAAM,MAAM,IAAI,gBAAgB;CAChC,MAAM,gBAAgB,IAAI,iBAAiB;CAC3C,MAAM,QAAQ,QAAQ,KAAK,QAAQ,KAAA;CACnC,MAAM,WAAW,eAAe,YAAY,WAAW,aAAa,WAAW;CAE/E,MAAM,YAAY,UAAuB;EACvC,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,MAAM,MAAM;CAC3B,CAAC;CAED,OACE,qBAAC,KAAD;EACE,WAAU;EACV,SAAS;EACT,MAAM;EACN,GAAI,UAAU,QAAQ,EAAE,SAAS,SAAS,CAAC;EAC3C,KAAK,CACH;GAAE,eAAe,oBAAoB,CAAC;GAAU,UAAU,YAAY,KAAK;EAAS,GACpF,GACF;EACA,GAAI;EATN,UAAA,CAWE,oBAAC,QAAD;GAAM,GAAI,UAAU,OAAO;GAAI;EAAe,CAAA,GAC7C,oBACC,oBAAC,aAAD;GACE,SAAQ;GACA;GACR,UAAU;GACV,eAAA;GACU;GACV,GAAI;GACJ,GAAI,UAAU,UAAU;IACtB,WAAW,mBAAmB;IAC9B,OAAO,mBAAmB;GAC5B,CAAC;GACD,cAAc,UAAU;IACtB,MAAM,eAAe;IACrB,MAAM,gBAAgB;IACtB,mBAAmB,cAAc,KAAK;GACxC;GACA,UAAU,UAAU;IAClB,MAAM,gBAAgB;IACtB,WAAW;IACX,mBAAmB,UAAU,KAAK;GACpC;EACD,CAAA,CAEA;;AAET,CAAC;AAED,KAAK,UAAUA;AACf,KAAK,eAAe;AACpB,KAAK,cAAc;AACnB,KAAK,QAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"PillGroup.mjs","names":["classes"],"sources":["../../../../src/components/Pill/PillGroup/PillGroup.tsx"],"sourcesContent":["import { createContext, use } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getSize,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../../core';\nimport { PillsInputContext } from '../../PillsInput/PillsInput.context';\nimport classes from '../Pill.module.css';\n\nexport interface PillGroupContextValue {\n size: MantineSize | (string & {}) | undefined;\n disabled: boolean | undefined;\n}\n\nexport const PillGroupContext = createContext<PillGroupContextValue | null>(null);\n\nexport type PillGroupStylesNames = 'group';\nexport type PillGroupCssVariables = {\n group: '--pg-gap';\n};\n\nexport interface PillGroupProps\n extends BoxProps, StylesApiProps<PillGroupFactory>, ElementProps<'div'> {\n /** Controls spacing between pills, by default controlled by `size` */\n gap?: MantineSize | (string & {}) | number;\n\n /** Controls size of the child `Pill` components and gap between them @default 'sm' */\n size?: MantineSize | (string & {});\n\n /** If set, adds disabled to all child `Pill` components */\n disabled?: boolean;\n}\n\nexport type PillGroupFactory = Factory<{\n props: PillGroupProps;\n ref: HTMLDivElement;\n stylesNames: PillGroupStylesNames;\n vars: PillGroupCssVariables;\n ctx: { size: MantineSize | (string & {}) | undefined };\n}>;\n\nconst varsResolver = createVarsResolver<PillGroupFactory>((_, { gap }, { size }) => ({\n group: {\n '--pg-gap': gap !== undefined ? getSize(gap) : getSize(size, 'pg-gap'),\n },\n}));\n\nexport const PillGroup = factory<PillGroupFactory>((_props) => {\n const props = useProps('PillGroup', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n size,\n disabled,\n attributes,\n ...others\n } = props;\n const pillsInputCtx = use(PillsInputContext);\n const _size = pillsInputCtx?.size || size || undefined;\n\n const getStyles = useStyles<PillGroupFactory>({\n name: 'PillGroup',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { size: _size },\n rootSelector: 'group',\n });\n\n return (\n <PillGroupContext value={{ size: _size, disabled }}>\n <Box size={_size} {...getStyles('group')} {...others} />\n </PillGroupContext>\n );\n});\n\nPillGroup.classes = classes;\nPillGroup.varsResolver = varsResolver;\nPillGroup.displayName = '@mantine/core/PillGroup';\n"],"mappings":";;;;;;;;;;;;AAsBA,MAAa,mBAAmB,cAA4C,IAAI;AA2BhF,MAAM,eAAe,oBAAsC,GAAG,EAAE,OAAO,EAAE,YAAY,EACnF,OAAO,EACL,YAAY,QAAQ,KAAA,IAAY,QAAQ,GAAG,IAAI,QAAQ,MAAM,QAAQ,EACvE,EACF,EAAE;AAEF,MAAa,YAAY,SAA2B,WAAW;CAC7D,MAAM,QAAQ,SAAS,aAAa,MAAM,MAAM;CAChD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,MACA,UACA,YACA,GAAG,WACD;CAEJ,MAAM,QADgB,IAAI,iBACA,CAAC,EAAE,QAAQ,QAAQ,KAAA;CAE7C,MAAM,YAAY,UAA4B;EAC5C,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,MAAM,MAAM;EACzB,cAAc;CAChB,CAAC;CAED,OACE,oBAAC,kBAAD;EAAkB,OAAO;GAAE,MAAM;GAAO;EAAS;YAC/C,oBAAC,KAAD;GAAK,MAAM;GAAO,GAAI,UAAU,OAAO;GAAG,GAAI;EAAS,CAAA;CACvC,CAAA;AAEtB,CAAC;AAED,UAAU,UAAUA;AACpB,UAAU,eAAe;AACzB,UAAU,cAAc"}
1
+ {"version":3,"file":"PillGroup.mjs","names":["classes"],"sources":["../../../../src/components/Pill/PillGroup/PillGroup.tsx"],"sourcesContent":["import { createContext, use } from 'react';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getSize,\n MantineSize,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../../core';\nimport { PillsInputContext } from '../../PillsInput/PillsInput.context';\nimport classes from '../Pill.module.css';\n\nexport interface PillGroupContextValue {\n size: MantineSize | (string & {}) | undefined;\n disabled: boolean | undefined;\n}\n\nexport const PillGroupContext = createContext<PillGroupContextValue | null>(null);\n\nexport type PillGroupStylesNames = 'group';\nexport type PillGroupCssVariables = {\n group: '--pg-gap';\n};\n\nexport interface PillGroupProps\n extends BoxProps, StylesApiProps<PillGroupFactory>, ElementProps<'div'> {\n /** Controls spacing between pills, by default controlled by `size` */\n gap?: MantineSize | (string & {}) | number;\n\n /** Controls size of the child `Pill` components and gap between them @default 'sm' */\n size?: MantineSize | (string & {});\n\n /** If set, adds disabled to all child `Pill` components */\n disabled?: boolean;\n}\n\nexport type PillGroupFactory = Factory<{\n props: PillGroupProps;\n ref: HTMLDivElement;\n stylesNames: PillGroupStylesNames;\n vars: PillGroupCssVariables;\n ctx: { size: MantineSize | (string & {}) | undefined };\n}>;\n\nconst varsResolver = createVarsResolver<PillGroupFactory>((_, { gap }, { size }) => ({\n group: {\n '--pg-gap': gap !== undefined ? getSize(gap) : getSize(size, 'pg-gap'),\n },\n}));\n\nexport const PillGroup = factory<PillGroupFactory>((_props) => {\n const props = useProps('PillGroup', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n size,\n disabled,\n attributes,\n ...others\n } = props;\n const pillsInputCtx = use(PillsInputContext);\n const _size = pillsInputCtx?.size || size || undefined;\n\n const getStyles = useStyles<PillGroupFactory>({\n name: 'PillGroup',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n stylesCtx: { size: _size },\n rootSelector: 'group',\n });\n\n return (\n <PillGroupContext value={{ size: _size, disabled }}>\n <Box size={_size} {...getStyles('group')} {...others} />\n </PillGroupContext>\n );\n});\n\nPillGroup.classes = classes;\nPillGroup.varsResolver = varsResolver;\nPillGroup.displayName = '@mantine/core/PillGroup';\n"],"mappings":";;;;;;;;;;;;AAsBA,MAAa,mBAAmB,cAA4C,IAAI;AA2BhF,MAAM,eAAe,oBAAsC,GAAG,EAAE,OAAO,EAAE,YAAY,EACnF,OAAO,EACL,YAAY,QAAQ,KAAA,IAAY,QAAQ,GAAG,IAAI,QAAQ,MAAM,QAAQ,EACvE,EACF,EAAE;AAEF,MAAa,YAAY,SAA2B,WAAW;CAC7D,MAAM,QAAQ,SAAS,aAAa,MAAM,MAAM;CAChD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,MACA,UACA,YACA,GAAG,WACD;CAEJ,MAAM,QADgB,IAAI,iBACA,CAAC,EAAE,QAAQ,QAAQ,KAAA;CAE7C,MAAM,YAAY,UAA4B;EAC5C,MAAM;EACN,SAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW,EAAE,MAAM,MAAM;EACzB,cAAc;CAChB,CAAC;CAED,OACE,oBAAC,kBAAD;EAAkB,OAAO;GAAE,MAAM;GAAO;EAAS;EAC/C,UAAA,oBAAC,KAAD;GAAK,MAAM;GAAO,GAAI,UAAU,OAAO;GAAG,GAAI;EAAS,CAAA;CACvC,CAAA;AAEtB,CAAC;AAED,UAAU,UAAUA;AACpB,UAAU,eAAe;AACzB,UAAU,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"PillsInput.mjs","names":[],"sources":["../../../src/components/PillsInput/PillsInput.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { BoxProps, ElementProps, factory, Factory, StylesApiProps, useProps } from '../../core';\nimport { __BaseInputProps, __InputStylesNames } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { PillsInputContext, type PillsInputContextValue } from './PillsInput.context';\nimport {\n PillsInputField,\n type PillsInputFieldProps,\n type PillsInputFieldFactory,\n type PillsInputFieldStylesNames,\n} from './PillsInputField/PillsInputField';\nexport interface PillsInputProps\n extends\n BoxProps,\n __BaseInputProps,\n StylesApiProps<PillsInputFactory>,\n ElementProps<'div', 'size'> {\n __stylesApiProps?: Record<string, any>;\n __staticSelector?: string;\n}\n\nexport type PillsInputFactory = Factory<{\n props: PillsInputProps;\n ref: HTMLDivElement;\n stylesNames: __InputStylesNames;\n staticComponents: {\n Field: typeof PillsInputField;\n };\n}>;\n\nconst defaultProps = {\n size: 'sm',\n} satisfies Partial<PillsInputProps>;\n\nexport const PillsInput = factory<PillsInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'PillsInput'], defaultProps, _props);\n const {\n children,\n onMouseDown,\n onClick,\n size,\n disabled,\n __staticSelector,\n error,\n variant,\n ...others\n } = props;\n\n const fieldRef = useRef<HTMLInputElement>(null);\n\n return (\n <PillsInputContext value={{ fieldRef, size, disabled, hasError: !!error, variant }}>\n <InputBase\n size={size}\n error={error}\n variant={variant}\n component=\"div\"\n data-no-overflow\n onMouseDown={(event) => {\n event.preventDefault();\n onMouseDown?.(event);\n fieldRef.current?.focus();\n }}\n onClick={(event) => {\n event.preventDefault();\n const fieldset = event.currentTarget.closest('fieldset');\n if (!fieldset?.disabled) {\n fieldRef.current?.focus();\n onClick?.(event);\n }\n }}\n {...others}\n multiline\n disabled={disabled}\n __staticSelector={__staticSelector || 'PillsInput'}\n withAria={false}\n >\n {children}\n </InputBase>\n </PillsInputContext>\n );\n});\n\nPillsInput.displayName = '@mantine/core/PillsInput';\nPillsInput.classes = InputBase.classes;\nPillsInput.Field = PillsInputField;\n\nexport namespace PillsInput {\n export type Props = PillsInputProps;\n export type Factory = PillsInputFactory;\n export type ContextValue = PillsInputContextValue;\n\n export namespace Field {\n export type Props = PillsInputFieldProps;\n export type Factory = PillsInputFieldFactory;\n export type StylesNames = PillsInputFieldStylesNames;\n }\n}\n"],"mappings":";;;;;;;;;AA8BA,MAAM,eAAe,EACnB,MAAM,KACR;AAEA,MAAa,aAAa,SAA4B,WAAW;CAE/D,MAAM,EACJ,UACA,aACA,SACA,MACA,UACA,kBACA,OACA,SACA,GAAG,WAVS,SAAS;EAAC;EAAS;EAAgB;CAAY,GAAG,cAAc,MAWtE;CAER,MAAM,WAAW,OAAyB,IAAI;CAE9C,OACE,oBAAC,mBAAD;EAAmB,OAAO;GAAE;GAAU;GAAM;GAAU,UAAU,CAAC,CAAC;GAAO;EAAQ;YAC/E,oBAAC,WAAD;GACQ;GACC;GACE;GACT,WAAU;GACV,oBAAA;GACA,cAAc,UAAU;IACtB,MAAM,eAAe;IACrB,cAAc,KAAK;IACnB,SAAS,SAAS,MAAM;GAC1B;GACA,UAAU,UAAU;IAClB,MAAM,eAAe;IAErB,IAAI,CADa,MAAM,cAAc,QAAQ,UACjC,CAAC,EAAE,UAAU;KACvB,SAAS,SAAS,MAAM;KACxB,UAAU,KAAK;IACjB;GACF;GACA,GAAI;GACJ,WAAA;GACU;GACV,kBAAkB,oBAAoB;GACtC,UAAU;GAET;EACQ,CAAA;CACM,CAAA;AAEvB,CAAC;AAED,WAAW,cAAc;AACzB,WAAW,UAAU,UAAU;AAC/B,WAAW,QAAQ"}
1
+ {"version":3,"file":"PillsInput.mjs","names":[],"sources":["../../../src/components/PillsInput/PillsInput.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { BoxProps, ElementProps, factory, Factory, StylesApiProps, useProps } from '../../core';\nimport { __BaseInputProps, __InputStylesNames } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { PillsInputContext, type PillsInputContextValue } from './PillsInput.context';\nimport {\n PillsInputField,\n type PillsInputFieldProps,\n type PillsInputFieldFactory,\n type PillsInputFieldStylesNames,\n} from './PillsInputField/PillsInputField';\nexport interface PillsInputProps\n extends\n BoxProps,\n __BaseInputProps,\n StylesApiProps<PillsInputFactory>,\n ElementProps<'div', 'size'> {\n __stylesApiProps?: Record<string, any>;\n __staticSelector?: string;\n}\n\nexport type PillsInputFactory = Factory<{\n props: PillsInputProps;\n ref: HTMLDivElement;\n stylesNames: __InputStylesNames;\n staticComponents: {\n Field: typeof PillsInputField;\n };\n}>;\n\nconst defaultProps = {\n size: 'sm',\n} satisfies Partial<PillsInputProps>;\n\nexport const PillsInput = factory<PillsInputFactory>((_props) => {\n const props = useProps(['Input', 'InputWrapper', 'PillsInput'], defaultProps, _props);\n const {\n children,\n onMouseDown,\n onClick,\n size,\n disabled,\n __staticSelector,\n error,\n variant,\n ...others\n } = props;\n\n const fieldRef = useRef<HTMLInputElement>(null);\n\n return (\n <PillsInputContext value={{ fieldRef, size, disabled, hasError: !!error, variant }}>\n <InputBase\n size={size}\n error={error}\n variant={variant}\n component=\"div\"\n data-no-overflow\n onMouseDown={(event) => {\n event.preventDefault();\n onMouseDown?.(event);\n fieldRef.current?.focus();\n }}\n onClick={(event) => {\n event.preventDefault();\n const fieldset = event.currentTarget.closest('fieldset');\n if (!fieldset?.disabled) {\n fieldRef.current?.focus();\n onClick?.(event);\n }\n }}\n {...others}\n multiline\n disabled={disabled}\n __staticSelector={__staticSelector || 'PillsInput'}\n withAria={false}\n >\n {children}\n </InputBase>\n </PillsInputContext>\n );\n});\n\nPillsInput.displayName = '@mantine/core/PillsInput';\nPillsInput.classes = InputBase.classes;\nPillsInput.Field = PillsInputField;\n\nexport namespace PillsInput {\n export type Props = PillsInputProps;\n export type Factory = PillsInputFactory;\n export type ContextValue = PillsInputContextValue;\n\n export namespace Field {\n export type Props = PillsInputFieldProps;\n export type Factory = PillsInputFieldFactory;\n export type StylesNames = PillsInputFieldStylesNames;\n }\n}\n"],"mappings":";;;;;;;;;AA8BA,MAAM,eAAe,EACnB,MAAM,KACR;AAEA,MAAa,aAAa,SAA4B,WAAW;CAE/D,MAAM,EACJ,UACA,aACA,SACA,MACA,UACA,kBACA,OACA,SACA,GAAG,WAVS,SAAS;EAAC;EAAS;EAAgB;CAAY,GAAG,cAAc,MAWtE;CAER,MAAM,WAAW,OAAyB,IAAI;CAE9C,OACE,oBAAC,mBAAD;EAAmB,OAAO;GAAE;GAAU;GAAM;GAAU,UAAU,CAAC,CAAC;GAAO;EAAQ;EAC/E,UAAA,oBAAC,WAAD;GACQ;GACC;GACE;GACT,WAAU;GACV,oBAAA;GACA,cAAc,UAAU;IACtB,MAAM,eAAe;IACrB,cAAc,KAAK;IACnB,SAAS,SAAS,MAAM;GAC1B;GACA,UAAU,UAAU;IAClB,MAAM,eAAe;IAErB,IAAI,CADa,MAAM,cAAc,QAAQ,UACjC,CAAC,EAAE,UAAU;KACvB,SAAS,SAAS,MAAM;KACxB,UAAU,KAAK;IACjB;GACF;GACA,GAAI;GACJ,WAAA;GACU;GACV,kBAAkB,oBAAoB;GACtC,UAAU;GAET;EACQ,CAAA;CACM,CAAA;AAEvB,CAAC;AAED,WAAW,cAAc;AACzB,WAAW,UAAU,UAAU;AAC/B,WAAW,QAAQ"}
@@ -106,11 +106,12 @@ const PinInput = factory((props) => {
106
106
  }
107
107
  return;
108
108
  }
109
- if (inputValue.length === 1) if (validate(inputValue)) {
110
- setFieldValue(inputValue, index);
111
- focusInputField("next", index);
112
- } else setFieldValue("", index);
113
- else if (inputValue.length === 0) setFieldValue("", index);
109
+ if (inputValue.length === 1) {
110
+ if (validate(inputValue)) {
111
+ setFieldValue(inputValue, index);
112
+ focusInputField("next", index);
113
+ } else setFieldValue("", index);
114
+ } else if (inputValue.length === 0) setFieldValue("", index);
114
115
  };
115
116
  const handleKeyDown = (event, index) => {
116
117
  const { ctrlKey, metaKey, key, shiftKey, target } = event;
@@ -1 +1 @@
1
- {"version":3,"file":"PinInput.mjs","names":["useId","classes"],"sources":["../../../src/components/PinInput/PinInput.tsx"],"sourcesContent":["import { useRef, useState } from 'react';\nimport { assignRef, useId, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n createVarsResolver,\n DataAttributes,\n ElementProps,\n Factory,\n factory,\n getSize,\n MantineRadius,\n MantineSize,\n MantineSpacing,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport { Group } from '../Group';\nimport { Input, InputProps } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { createPinArray } from './create-pin-array/create-pin-array';\nimport classes from './PinInput.module.css';\n\nconst regex = {\n number: /^[0-9]+$/,\n alphanumeric: /^[a-zA-Z0-9]+$/i,\n};\n\nexport type PinInputStylesNames = 'root' | 'pinInput' | 'input';\n\nexport type PinInputCssVariables = {\n root: '--pin-input-size';\n};\n\nexport interface PinInputProps\n extends BoxProps, StylesApiProps<PinInputFactory>, ElementProps<'div', 'onChange' | 'ref'> {\n ref?: React.Ref<HTMLInputElement>;\n\n /** Hidden input `name` attribute */\n name?: string;\n\n /** Hidden input `form` attribute */\n form?: string;\n\n /** Key of `theme.spacing` or any valid CSS value to set `gap` between inputs, numbers are converted to rem @default 'md' */\n gap?: MantineSpacing;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Controls inputs `width` and `height` @default 'sm' */\n size?: MantineSize;\n\n /** If set, the first input is focused when component is mounted @default false */\n autoFocus?: boolean;\n\n /** Controlled component value */\n value?: string;\n\n /** Uncontrolled component default value */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?: (value: string) => void;\n\n /** Called when all inputs have value */\n onComplete?: (value: string) => void;\n\n /** Inputs placeholder @default '○' */\n placeholder?: string;\n\n /** Determines whether focus should be moved automatically to the next input once filled @default true */\n manageFocus?: boolean;\n\n /** Determines whether `autocomplete=\"one-time-code\"` attribute should be set on all inputs @default true */\n oneTimeCode?: boolean;\n\n /** Base id used to generate unique ids for inputs */\n id?: string;\n\n /** Adds disabled attribute to all inputs */\n disabled?: boolean;\n\n /** Sets `aria-invalid` attribute and applies error styles to all inputs */\n error?: boolean;\n\n /** Applies success styles to all inputs */\n success?: boolean;\n\n /** Determines which values can be entered @default 'alphanumeric' */\n type?: 'alphanumeric' | 'number' | RegExp;\n\n /** Changes input type to `\"password\"` @default false */\n mask?: boolean;\n\n /** Number of inputs @default 4 */\n length?: number;\n\n /** If set, the user cannot edit the value */\n readOnly?: boolean;\n\n /** Inputs `type` attribute, inferred from the `type` prop if not specified */\n inputType?: React.HTMLInputTypeAttribute;\n\n /** `inputmode` attribute, inferred from the `type` prop if not specified */\n inputMode?:\n | 'none'\n | 'text'\n | 'tel'\n | 'url'\n | 'email'\n | 'numeric'\n | 'decimal'\n | 'search'\n | undefined;\n\n /** `aria-label` attribute */\n ariaLabel?: string;\n\n /** Props passed down to the hidden input */\n hiddenInputProps?: React.ComponentProps<'input'>;\n\n /** Assigns ref of the root element */\n rootRef?: React.Ref<HTMLDivElement>;\n\n /** Props added to the input element depending on its index */\n getInputProps?: (index: number) => InputProps & ElementProps<'input', 'size'> & DataAttributes;\n}\n\nexport type PinInputFactory = Factory<{\n props: PinInputProps;\n ref: HTMLDivElement;\n stylesNames: PinInputStylesNames;\n vars: PinInputCssVariables;\n}>;\n\nconst defaultProps = {\n gap: 'sm',\n length: 4,\n manageFocus: true,\n oneTimeCode: true,\n placeholder: '○',\n type: 'alphanumeric',\n ariaLabel: 'PinInput',\n size: 'sm',\n} satisfies Partial<PinInputProps>;\n\nconst varsResolver = createVarsResolver<PinInputFactory>((_, { size }) => ({\n root: {\n '--pin-input-size': getSize(size ?? 'sm', 'pin-input-size'),\n },\n}));\n\nexport const PinInput = factory<PinInputFactory>((props) => {\n const {\n name,\n form,\n className,\n value,\n defaultValue,\n variant,\n gap,\n style,\n size,\n classNames,\n styles,\n unstyled,\n length,\n onChange,\n onComplete,\n manageFocus,\n autoFocus,\n error,\n success,\n radius,\n disabled,\n oneTimeCode,\n placeholder,\n type,\n mask,\n readOnly,\n inputType,\n inputMode,\n ariaLabel,\n vars,\n id,\n hiddenInputProps,\n rootRef,\n getInputProps,\n attributes,\n ref,\n ...others\n } = useProps(['Input', 'PinInput'], defaultProps, props);\n\n const uuid = useId(id);\n\n const getStyles = useStyles<PinInputFactory>({\n name: 'PinInput',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<PinInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const [focusedIndex, setFocusedIndex] = useState(-1);\n const inputsRef = useRef<Array<HTMLInputElement>>([]);\n const currentLength = length ?? 4;\n\n const completedRef = useRef(false);\n\n const [_value, setValues] = useUncontrolled<string[]>({\n value: value !== undefined ? createPinArray(currentLength, value) : undefined,\n defaultValue: defaultValue?.split('').slice(0, currentLength),\n finalValue: createPinArray(currentLength, ''),\n onChange: (val) => {\n const stringValue = val.join('').trim();\n onChange?.(stringValue);\n if (stringValue.length === currentLength && !completedRef.current) {\n completedRef.current = true;\n onComplete?.(stringValue);\n } else if (stringValue.length < currentLength) {\n completedRef.current = false;\n }\n },\n });\n\n const currentValue =\n _value.length !== currentLength ? createPinArray(currentLength, _value.join('')) : _value;\n\n const _valueToString = currentValue.join('').trim();\n\n const validate = (code: string) => {\n const re = type instanceof RegExp ? type : type && type in regex ? regex[type] : null;\n return re?.test(code);\n };\n\n const focusInputField = (dir: 'next' | 'prev', index: number) => {\n if (!manageFocus) {\n return;\n }\n\n if (dir === 'next') {\n const nextIndex = index + 1;\n if (nextIndex < currentLength) {\n inputsRef.current[nextIndex]?.focus();\n }\n } else if (dir === 'prev') {\n const prevIndex = index - 1;\n if (prevIndex >= 0) {\n inputsRef.current[prevIndex]?.focus();\n }\n }\n };\n\n const setFieldValue = (val: string, index: number) => {\n const values = [...currentValue];\n values[index] = val;\n setValues(values);\n return values;\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>, index: number) => {\n const inputValue = event.target.value;\n\n if (inputValue.length > 1) {\n const isPaste = inputValue.length > 2;\n if (isPaste) {\n const isValid = validate(inputValue);\n if (isValid) {\n setValues(createPinArray(currentLength, inputValue));\n const filledCount = Math.min(inputValue.length, currentLength);\n if (filledCount < currentLength) {\n focusInputField('next', filledCount - 1);\n }\n }\n return;\n }\n\n const newChar = inputValue.split('')[inputValue.length - 1];\n if (validate(newChar)) {\n setFieldValue(newChar, index);\n focusInputField('next', index);\n }\n return;\n }\n\n if (inputValue.length === 1) {\n if (validate(inputValue)) {\n setFieldValue(inputValue, index);\n focusInputField('next', index);\n } else {\n setFieldValue('', index);\n }\n } else if (inputValue.length === 0) {\n setFieldValue('', index);\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>, index: number) => {\n const { ctrlKey, metaKey, key, shiftKey, target } = event;\n const inputValue = (target as HTMLInputElement).value;\n\n if (inputMode === 'numeric') {\n const allowedKeys = ['Backspace', 'Tab', 'Control', 'Delete', 'ArrowLeft', 'ArrowRight'];\n const isModifierShortcut = ctrlKey || metaKey;\n const isAllowedKey =\n allowedKeys.includes(key) || isModifierShortcut || !Number.isNaN(Number(key));\n\n if (!isAllowedKey) {\n event.preventDefault();\n return;\n }\n }\n\n switch (key) {\n case 'ArrowLeft':\n event.preventDefault();\n focusInputField('prev', index);\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n focusInputField('next', index);\n break;\n\n case 'Tab':\n if (shiftKey) {\n if (index > 0 && manageFocus) {\n event.preventDefault();\n focusInputField('prev', index);\n }\n }\n break;\n\n case ' ':\n event.preventDefault();\n focusInputField('next', index);\n break;\n\n case 'Delete':\n event.preventDefault();\n setFieldValue('', index);\n break;\n\n case 'Backspace':\n if (inputValue === '') {\n event.preventDefault();\n focusInputField('prev', index);\n } else {\n setFieldValue('', index);\n if (index < currentLength - 1) {\n event.preventDefault();\n focusInputField('prev', index);\n }\n }\n break;\n\n default:\n if (inputValue.length > 0 && key === currentValue[index]) {\n event.preventDefault();\n focusInputField('next', index);\n }\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>, index: number) => {\n event.target.select();\n setFocusedIndex(index);\n };\n\n const handleBlur = () => {\n setFocusedIndex(-1);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n event.preventDefault();\n const pasteData = event.clipboardData.getData('text/plain').replace(/[\\n\\r\\s]+/g, '');\n const isValid = validate(pasteData.trim());\n\n if (isValid) {\n const pasteArray = createPinArray(currentLength, pasteData);\n setValues(pasteArray);\n const filledCount = pasteArray.filter((val) => val !== '').length;\n if (filledCount >= currentLength) {\n inputsRef.current[currentLength - 1]?.focus();\n } else {\n inputsRef.current[filledCount]?.focus();\n }\n }\n };\n\n return (\n <>\n <Group\n {...others}\n {...getStyles('root')}\n ref={rootRef}\n role=\"group\"\n id={uuid}\n gap={gap}\n unstyled={unstyled}\n wrap=\"nowrap\"\n variant={variant}\n __size={size}\n dir=\"ltr\"\n >\n {currentValue.map((char: string, index: number) => (\n <Input\n component=\"input\"\n {...getStyles('pinInput', {\n style: {\n '--input-padding': '0',\n '--input-text-align': 'center',\n } as React.CSSProperties,\n })}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n size={size}\n __staticSelector=\"PinInput\"\n id={`${uuid}-${index + 1}`}\n key={`${uuid}-${index}`}\n inputMode={inputMode || (type === 'number' ? 'numeric' : 'text')}\n onChange={(event) => handleChange(event, index)}\n onKeyDown={(event) => handleKeyDown(event, index)}\n onFocus={(event) => handleFocus(event, index)}\n onBlur={handleBlur}\n onPaste={handlePaste}\n type={inputType || (mask ? 'password' : type === 'number' ? 'tel' : 'text')}\n radius={radius}\n error={error}\n success={success}\n variant={variant}\n disabled={disabled}\n ref={(node) => {\n if (node) {\n index === 0 && assignRef(ref, node);\n inputsRef.current[index] = node;\n }\n }}\n autoComplete={oneTimeCode ? 'one-time-code' : 'off'}\n placeholder={focusedIndex === index ? '' : placeholder}\n value={char}\n autoFocus={autoFocus && index === 0}\n unstyled={unstyled}\n aria-label={ariaLabel}\n readOnly={readOnly}\n {...getInputProps?.(index)}\n />\n ))}\n </Group>\n\n <input type=\"hidden\" name={name} form={form} value={_valueToString} {...hiddenInputProps} />\n </>\n );\n});\n\nPinInput.classes = { ...classes, ...InputBase.classes };\nPinInput.varsResolver = varsResolver;\nPinInput.displayName = '@mantine/core/PinInput';\n\nexport namespace PinInput {\n export type Props = PinInputProps;\n export type StylesNames = PinInputStylesNames;\n export type Factory = PinInputFactory;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PinInput.mjs","names":["useId","classes"],"sources":["../../../src/components/PinInput/PinInput.tsx"],"sourcesContent":["import { useRef, useState } from 'react';\nimport { assignRef, useId, useUncontrolled } from '@mantine/hooks';\nimport {\n BoxProps,\n createVarsResolver,\n DataAttributes,\n ElementProps,\n Factory,\n factory,\n getSize,\n MantineRadius,\n MantineSize,\n MantineSpacing,\n StylesApiProps,\n useProps,\n useResolvedStylesApi,\n useStyles,\n} from '../../core';\nimport { Group } from '../Group';\nimport { Input, InputProps } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { createPinArray } from './create-pin-array/create-pin-array';\nimport classes from './PinInput.module.css';\n\nconst regex = {\n number: /^[0-9]+$/,\n alphanumeric: /^[a-zA-Z0-9]+$/i,\n};\n\nexport type PinInputStylesNames = 'root' | 'pinInput' | 'input';\n\nexport type PinInputCssVariables = {\n root: '--pin-input-size';\n};\n\nexport interface PinInputProps\n extends BoxProps, StylesApiProps<PinInputFactory>, ElementProps<'div', 'onChange' | 'ref'> {\n ref?: React.Ref<HTMLInputElement>;\n\n /** Hidden input `name` attribute */\n name?: string;\n\n /** Hidden input `form` attribute */\n form?: string;\n\n /** Key of `theme.spacing` or any valid CSS value to set `gap` between inputs, numbers are converted to rem @default 'md' */\n gap?: MantineSpacing;\n\n /** Key of `theme.radius` or any valid CSS value to set `border-radius`, numbers are converted to rem @default theme.defaultRadius */\n radius?: MantineRadius;\n\n /** Controls inputs `width` and `height` @default 'sm' */\n size?: MantineSize;\n\n /** If set, the first input is focused when component is mounted @default false */\n autoFocus?: boolean;\n\n /** Controlled component value */\n value?: string;\n\n /** Uncontrolled component default value */\n defaultValue?: string;\n\n /** Called when value changes */\n onChange?: (value: string) => void;\n\n /** Called when all inputs have value */\n onComplete?: (value: string) => void;\n\n /** Inputs placeholder @default '○' */\n placeholder?: string;\n\n /** Determines whether focus should be moved automatically to the next input once filled @default true */\n manageFocus?: boolean;\n\n /** Determines whether `autocomplete=\"one-time-code\"` attribute should be set on all inputs @default true */\n oneTimeCode?: boolean;\n\n /** Base id used to generate unique ids for inputs */\n id?: string;\n\n /** Adds disabled attribute to all inputs */\n disabled?: boolean;\n\n /** Sets `aria-invalid` attribute and applies error styles to all inputs */\n error?: boolean;\n\n /** Applies success styles to all inputs */\n success?: boolean;\n\n /** Determines which values can be entered @default 'alphanumeric' */\n type?: 'alphanumeric' | 'number' | RegExp;\n\n /** Changes input type to `\"password\"` @default false */\n mask?: boolean;\n\n /** Number of inputs @default 4 */\n length?: number;\n\n /** If set, the user cannot edit the value */\n readOnly?: boolean;\n\n /** Inputs `type` attribute, inferred from the `type` prop if not specified */\n inputType?: React.HTMLInputTypeAttribute;\n\n /** `inputmode` attribute, inferred from the `type` prop if not specified */\n inputMode?:\n | 'none'\n | 'text'\n | 'tel'\n | 'url'\n | 'email'\n | 'numeric'\n | 'decimal'\n | 'search'\n | undefined;\n\n /** `aria-label` attribute */\n ariaLabel?: string;\n\n /** Props passed down to the hidden input */\n hiddenInputProps?: React.ComponentProps<'input'>;\n\n /** Assigns ref of the root element */\n rootRef?: React.Ref<HTMLDivElement>;\n\n /** Props added to the input element depending on its index */\n getInputProps?: (index: number) => InputProps & ElementProps<'input', 'size'> & DataAttributes;\n}\n\nexport type PinInputFactory = Factory<{\n props: PinInputProps;\n ref: HTMLDivElement;\n stylesNames: PinInputStylesNames;\n vars: PinInputCssVariables;\n}>;\n\nconst defaultProps = {\n gap: 'sm',\n length: 4,\n manageFocus: true,\n oneTimeCode: true,\n placeholder: '○',\n type: 'alphanumeric',\n ariaLabel: 'PinInput',\n size: 'sm',\n} satisfies Partial<PinInputProps>;\n\nconst varsResolver = createVarsResolver<PinInputFactory>((_, { size }) => ({\n root: {\n '--pin-input-size': getSize(size ?? 'sm', 'pin-input-size'),\n },\n}));\n\nexport const PinInput = factory<PinInputFactory>((props) => {\n const {\n name,\n form,\n className,\n value,\n defaultValue,\n variant,\n gap,\n style,\n size,\n classNames,\n styles,\n unstyled,\n length,\n onChange,\n onComplete,\n manageFocus,\n autoFocus,\n error,\n success,\n radius,\n disabled,\n oneTimeCode,\n placeholder,\n type,\n mask,\n readOnly,\n inputType,\n inputMode,\n ariaLabel,\n vars,\n id,\n hiddenInputProps,\n rootRef,\n getInputProps,\n attributes,\n ref,\n ...others\n } = useProps(['Input', 'PinInput'], defaultProps, props);\n\n const uuid = useId(id);\n\n const getStyles = useStyles<PinInputFactory>({\n name: 'PinInput',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi<PinInputFactory>({\n classNames,\n styles,\n props,\n });\n\n const [focusedIndex, setFocusedIndex] = useState(-1);\n const inputsRef = useRef<Array<HTMLInputElement>>([]);\n const currentLength = length ?? 4;\n\n const completedRef = useRef(false);\n\n const [_value, setValues] = useUncontrolled<string[]>({\n value: value !== undefined ? createPinArray(currentLength, value) : undefined,\n defaultValue: defaultValue?.split('').slice(0, currentLength),\n finalValue: createPinArray(currentLength, ''),\n onChange: (val) => {\n const stringValue = val.join('').trim();\n onChange?.(stringValue);\n if (stringValue.length === currentLength && !completedRef.current) {\n completedRef.current = true;\n onComplete?.(stringValue);\n } else if (stringValue.length < currentLength) {\n completedRef.current = false;\n }\n },\n });\n\n const currentValue =\n _value.length !== currentLength ? createPinArray(currentLength, _value.join('')) : _value;\n\n const _valueToString = currentValue.join('').trim();\n\n const validate = (code: string) => {\n const re = type instanceof RegExp ? type : type && type in regex ? regex[type] : null;\n return re?.test(code);\n };\n\n const focusInputField = (dir: 'next' | 'prev', index: number) => {\n if (!manageFocus) {\n return;\n }\n\n if (dir === 'next') {\n const nextIndex = index + 1;\n if (nextIndex < currentLength) {\n inputsRef.current[nextIndex]?.focus();\n }\n } else if (dir === 'prev') {\n const prevIndex = index - 1;\n if (prevIndex >= 0) {\n inputsRef.current[prevIndex]?.focus();\n }\n }\n };\n\n const setFieldValue = (val: string, index: number) => {\n const values = [...currentValue];\n values[index] = val;\n setValues(values);\n return values;\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>, index: number) => {\n const inputValue = event.target.value;\n\n if (inputValue.length > 1) {\n const isPaste = inputValue.length > 2;\n if (isPaste) {\n const isValid = validate(inputValue);\n if (isValid) {\n setValues(createPinArray(currentLength, inputValue));\n const filledCount = Math.min(inputValue.length, currentLength);\n if (filledCount < currentLength) {\n focusInputField('next', filledCount - 1);\n }\n }\n return;\n }\n\n const newChar = inputValue.split('')[inputValue.length - 1];\n if (validate(newChar)) {\n setFieldValue(newChar, index);\n focusInputField('next', index);\n }\n return;\n }\n\n if (inputValue.length === 1) {\n if (validate(inputValue)) {\n setFieldValue(inputValue, index);\n focusInputField('next', index);\n } else {\n setFieldValue('', index);\n }\n } else if (inputValue.length === 0) {\n setFieldValue('', index);\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>, index: number) => {\n const { ctrlKey, metaKey, key, shiftKey, target } = event;\n const inputValue = (target as HTMLInputElement).value;\n\n if (inputMode === 'numeric') {\n const allowedKeys = ['Backspace', 'Tab', 'Control', 'Delete', 'ArrowLeft', 'ArrowRight'];\n const isModifierShortcut = ctrlKey || metaKey;\n const isAllowedKey =\n allowedKeys.includes(key) || isModifierShortcut || !Number.isNaN(Number(key));\n\n if (!isAllowedKey) {\n event.preventDefault();\n return;\n }\n }\n\n switch (key) {\n case 'ArrowLeft':\n event.preventDefault();\n focusInputField('prev', index);\n break;\n\n case 'ArrowRight':\n event.preventDefault();\n focusInputField('next', index);\n break;\n\n case 'Tab':\n if (shiftKey) {\n if (index > 0 && manageFocus) {\n event.preventDefault();\n focusInputField('prev', index);\n }\n }\n break;\n\n case ' ':\n event.preventDefault();\n focusInputField('next', index);\n break;\n\n case 'Delete':\n event.preventDefault();\n setFieldValue('', index);\n break;\n\n case 'Backspace':\n if (inputValue === '') {\n event.preventDefault();\n focusInputField('prev', index);\n } else {\n setFieldValue('', index);\n if (index < currentLength - 1) {\n event.preventDefault();\n focusInputField('prev', index);\n }\n }\n break;\n\n default:\n if (inputValue.length > 0 && key === currentValue[index]) {\n event.preventDefault();\n focusInputField('next', index);\n }\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement>, index: number) => {\n event.target.select();\n setFocusedIndex(index);\n };\n\n const handleBlur = () => {\n setFocusedIndex(-1);\n };\n\n const handlePaste = (event: React.ClipboardEvent<HTMLInputElement>) => {\n event.preventDefault();\n const pasteData = event.clipboardData.getData('text/plain').replace(/[\\n\\r\\s]+/g, '');\n const isValid = validate(pasteData.trim());\n\n if (isValid) {\n const pasteArray = createPinArray(currentLength, pasteData);\n setValues(pasteArray);\n const filledCount = pasteArray.filter((val) => val !== '').length;\n if (filledCount >= currentLength) {\n inputsRef.current[currentLength - 1]?.focus();\n } else {\n inputsRef.current[filledCount]?.focus();\n }\n }\n };\n\n return (\n <>\n <Group\n {...others}\n {...getStyles('root')}\n ref={rootRef}\n role=\"group\"\n id={uuid}\n gap={gap}\n unstyled={unstyled}\n wrap=\"nowrap\"\n variant={variant}\n __size={size}\n dir=\"ltr\"\n >\n {currentValue.map((char: string, index: number) => (\n <Input\n component=\"input\"\n {...getStyles('pinInput', {\n style: {\n '--input-padding': '0',\n '--input-text-align': 'center',\n } as React.CSSProperties,\n })}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n size={size}\n __staticSelector=\"PinInput\"\n id={`${uuid}-${index + 1}`}\n key={`${uuid}-${index}`}\n inputMode={inputMode || (type === 'number' ? 'numeric' : 'text')}\n onChange={(event) => handleChange(event, index)}\n onKeyDown={(event) => handleKeyDown(event, index)}\n onFocus={(event) => handleFocus(event, index)}\n onBlur={handleBlur}\n onPaste={handlePaste}\n type={inputType || (mask ? 'password' : type === 'number' ? 'tel' : 'text')}\n radius={radius}\n error={error}\n success={success}\n variant={variant}\n disabled={disabled}\n ref={(node) => {\n if (node) {\n index === 0 && assignRef(ref, node);\n inputsRef.current[index] = node;\n }\n }}\n autoComplete={oneTimeCode ? 'one-time-code' : 'off'}\n placeholder={focusedIndex === index ? '' : placeholder}\n value={char}\n autoFocus={autoFocus && index === 0}\n unstyled={unstyled}\n aria-label={ariaLabel}\n readOnly={readOnly}\n {...getInputProps?.(index)}\n />\n ))}\n </Group>\n\n <input type=\"hidden\" name={name} form={form} value={_valueToString} {...hiddenInputProps} />\n </>\n );\n});\n\nPinInput.classes = { ...classes, ...InputBase.classes };\nPinInput.varsResolver = varsResolver;\nPinInput.displayName = '@mantine/core/PinInput';\n\nexport namespace PinInput {\n export type Props = PinInputProps;\n export type StylesNames = PinInputStylesNames;\n export type Factory = PinInputFactory;\n}\n"],"mappings":"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"}