reshaped 3.9.0-canary.0 → 3.9.0-canary.10

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 (344) hide show
  1. package/dist/bundle.css +1 -1
  2. package/dist/bundle.js +2 -31
  3. package/dist/cli/theming/index.js +4 -4
  4. package/dist/cli/theming/reshaped.config.js +1 -1
  5. package/dist/components/Accordion/Accordion.types.d.ts +1 -1
  6. package/dist/components/Accordion/AccordionControlled.js +2 -2
  7. package/dist/components/Accordion/AccordionTrigger.js +2 -2
  8. package/dist/components/Accordion/index.d.ts +1 -1
  9. package/dist/components/Accordion/index.js +1 -1
  10. package/dist/components/ActionBar/ActionBar.js +1 -1
  11. package/dist/components/ActionBar/ActionBar.types.d.ts +1 -1
  12. package/dist/components/Actionable/Actionable.js +1 -1
  13. package/dist/components/Alert/Alert.js +1 -1
  14. package/dist/components/Alert/Alert.types.d.ts +1 -1
  15. package/dist/components/Autocomplete/Autocomplete.js +6 -6
  16. package/dist/components/Autocomplete/Autocomplete.types.d.ts +3 -3
  17. package/dist/components/Avatar/Avatar.js +9 -26
  18. package/dist/components/Avatar/Avatar.module.css +1 -1
  19. package/dist/components/Badge/Badge.js +4 -4
  20. package/dist/components/Badge/Badge.module.css +1 -1
  21. package/dist/components/Badge/Badge.types.d.ts +1 -1
  22. package/dist/components/Breadcrumbs/Breadcrumbs.js +3 -3
  23. package/dist/components/Breadcrumbs/Breadcrumbs.types.d.ts +1 -1
  24. package/dist/components/Breadcrumbs/BreadcrumbsItem.js +1 -1
  25. package/dist/components/Button/Button.js +2 -2
  26. package/dist/components/Button/Button.module.css +1 -1
  27. package/dist/components/Button/Button.types.d.ts +3 -3
  28. package/dist/components/Calendar/Calendar.types.d.ts +25 -6
  29. package/dist/components/Calendar/CalendarControlled.js +45 -10
  30. package/dist/components/Calendar/CalendarControls.js +11 -11
  31. package/dist/components/Calendar/CalendarDate.js +13 -11
  32. package/dist/components/Calendar/CalendarMonth.js +3 -3
  33. package/dist/components/Calendar/CalendarYear.js +1 -1
  34. package/dist/components/Calendar/useCalendarKeyboardNavigation.js +1 -1
  35. package/dist/components/Card/Card.js +2 -2
  36. package/dist/components/Card/Card.module.css +1 -1
  37. package/dist/components/Card/Card.types.d.ts +1 -1
  38. package/dist/components/Carousel/Carousel.js +4 -4
  39. package/dist/components/Carousel/Carousel.types.d.ts +1 -1
  40. package/dist/components/Carousel/CarouselControl.d.ts +1 -1
  41. package/dist/components/Carousel/CarouselControl.js +3 -3
  42. package/dist/components/Checkbox/Checkbox.js +5 -15
  43. package/dist/components/CheckboxGroup/CheckboxGroup.types.d.ts +1 -1
  44. package/dist/components/Container/Container.js +1 -1
  45. package/dist/components/Container/Container.types.d.ts +1 -1
  46. package/dist/components/ContextMenu/ContextMenu.js +1 -1
  47. package/dist/components/Dismissible/Dismissible.js +1 -1
  48. package/dist/components/Divider/Divider.d.ts +1 -1
  49. package/dist/components/Divider/Divider.js +1 -1
  50. package/dist/components/DropdownMenu/DropdownMenu.js +6 -6
  51. package/dist/components/DropdownMenu/DropdownMenu.types.d.ts +4 -4
  52. package/dist/components/FileUpload/FileUpload.js +9 -7
  53. package/dist/components/FileUpload/FileUpload.module.css +1 -1
  54. package/dist/components/FileUpload/FileUpload.types.d.ts +3 -1
  55. package/dist/components/Flyout/Flyout.constants.d.ts +3 -6
  56. package/dist/components/Flyout/Flyout.constants.js +1 -3
  57. package/dist/components/Flyout/Flyout.js +1 -1
  58. package/dist/components/Flyout/Flyout.module.css +1 -1
  59. package/dist/components/Flyout/Flyout.types.d.ts +6 -7
  60. package/dist/components/Flyout/FlyoutContent.js +7 -7
  61. package/dist/components/Flyout/FlyoutControlled.js +17 -14
  62. package/dist/components/Flyout/index.d.ts +1 -1
  63. package/dist/components/Flyout/index.js +1 -1
  64. package/dist/components/Flyout/useFlyout.d.ts +2 -2
  65. package/dist/components/Flyout/useFlyout.js +5 -18
  66. package/dist/components/Flyout/utilities/calculatePosition.d.ts +6 -6
  67. package/dist/components/Flyout/utilities/calculatePosition.js +6 -6
  68. package/dist/components/Flyout/utilities/cooldown.js +1 -2
  69. package/dist/components/Flyout/utilities/flyout.d.ts +1 -1
  70. package/dist/components/Flyout/utilities/flyout.js +5 -2
  71. package/dist/components/FormControl/FormControlCaption.js +1 -1
  72. package/dist/components/FormControl/FormControlLabel.js +1 -1
  73. package/dist/components/FormControl/index.d.ts +2 -2
  74. package/dist/components/FormControl/index.js +2 -2
  75. package/dist/components/Grid/Grid.js +1 -1
  76. package/dist/components/Grid/Grid.types.d.ts +2 -2
  77. package/dist/components/HiddenInput/HiddenInput.js +34 -0
  78. package/dist/components/HiddenInput/HiddenInput.types.d.ts +26 -0
  79. package/dist/components/Icon/Icon.js +1 -1
  80. package/dist/components/Icon/Icon.module.css +1 -1
  81. package/dist/components/Image/Image.js +14 -9
  82. package/dist/components/Image/Image.module.css +1 -1
  83. package/dist/components/Image/Image.types.d.ts +4 -2
  84. package/dist/components/Link/Link.js +1 -1
  85. package/dist/components/MenuItem/MenuItem.js +1 -1
  86. package/dist/components/MenuItem/MenuItem.types.d.ts +2 -2
  87. package/dist/components/Modal/Modal.js +8 -8
  88. package/dist/components/Modal/Modal.module.css +1 -1
  89. package/dist/components/Modal/Modal.types.d.ts +1 -1
  90. package/dist/components/NumberField/NumberFieldControlled.js +7 -7
  91. package/dist/components/Overlay/Overlay.js +8 -8
  92. package/dist/components/PinField/PinFieldControlled.js +4 -4
  93. package/dist/components/Popover/Popover.js +3 -3
  94. package/dist/components/Popover/Popover.module.css +1 -1
  95. package/dist/components/Popover/Popover.types.d.ts +2 -2
  96. package/dist/components/Progress/Progress.module.css +1 -1
  97. package/dist/components/Radio/Radio.js +5 -15
  98. package/dist/components/RadioGroup/RadioGroup.types.d.ts +1 -1
  99. package/dist/components/Reshaped/Reshaped.css +1 -1
  100. package/dist/components/Reshaped/Reshaped.js +4 -4
  101. package/dist/components/Reshaped/Reshaped.types.d.ts +1 -1
  102. package/dist/components/Resizable/Resizable.js +2 -2
  103. package/dist/components/Resizable/Resizable.types.d.ts +1 -1
  104. package/dist/components/Resizable/ResizableHandle.js +1 -1
  105. package/dist/components/Scrim/Scrim.js +4 -3
  106. package/dist/components/Scrim/Scrim.module.css +1 -1
  107. package/dist/components/Scrim/Scrim.types.d.ts +2 -1
  108. package/dist/components/ScrollArea/ScrollArea.js +5 -5
  109. package/dist/components/Select/Select.types.d.ts +3 -3
  110. package/dist/components/Select/SelectCustomControlled.js +6 -3
  111. package/dist/components/Select/SelectEndContent.js +1 -1
  112. package/dist/components/Select/SelectGroup.js +1 -1
  113. package/dist/components/Select/SelectNative.js +2 -2
  114. package/dist/components/Select/SelectRoot.js +1 -1
  115. package/dist/components/Select/SelectTrigger.js +1 -1
  116. package/dist/components/Select/index.d.ts +1 -1
  117. package/dist/components/Select/index.js +1 -1
  118. package/dist/components/Skeleton/Skeleton.js +1 -1
  119. package/dist/components/Slider/SliderControlled.js +7 -7
  120. package/dist/components/Slider/SliderThumb.js +3 -3
  121. package/dist/components/Stepper/Stepper.js +4 -4
  122. package/dist/components/Switch/Switch.js +1 -1
  123. package/dist/components/Table/Table.js +2 -2
  124. package/dist/components/Tabs/Tabs.module.css +1 -1
  125. package/dist/components/Tabs/Tabs.types.d.ts +4 -2
  126. package/dist/components/Tabs/TabsContext.d.ts +1 -0
  127. package/dist/components/Tabs/TabsControlled.js +2 -1
  128. package/dist/components/Tabs/TabsItem.js +4 -4
  129. package/dist/components/Tabs/TabsList.js +17 -13
  130. package/dist/components/Tabs/TabsPanel.js +3 -3
  131. package/dist/components/Text/Text.js +3 -3
  132. package/dist/components/Text/Text.module.css +1 -1
  133. package/dist/components/Text/Text.types.d.ts +2 -0
  134. package/dist/components/TextArea/TextArea.js +1 -1
  135. package/dist/components/TextArea/TextArea.types.d.ts +1 -1
  136. package/dist/components/TextField/TextField.js +2 -2
  137. package/dist/components/TextField/TextField.types.d.ts +2 -2
  138. package/dist/components/Theme/GlobalColorMode.js +1 -1
  139. package/dist/components/Theme/Theme.js +2 -2
  140. package/dist/components/Theme/Theme.module.css +1 -1
  141. package/dist/components/Timeline/Timeline.js +1 -1
  142. package/dist/components/Toast/Toast.js +2 -2
  143. package/dist/components/Toast/Toast.types.d.ts +1 -1
  144. package/dist/components/Toast/ToastContainer.js +3 -3
  145. package/dist/components/Toast/ToastProvider.js +1 -1
  146. package/dist/components/Toast/ToastRegion.js +2 -2
  147. package/dist/components/ToggleButtonGroup/ToggleButtonGroup.types.d.ts +1 -1
  148. package/dist/components/ToggleButtonGroup/ToggleButtonGroupControlled.js +1 -1
  149. package/dist/components/Tooltip/Tooltip.js +5 -3
  150. package/dist/components/View/View.js +2 -2
  151. package/dist/components/View/View.types.d.ts +1 -1
  152. package/dist/components/_private/Expandable/Expandable.js +2 -2
  153. package/dist/components/_private/Portal/Portal.js +1 -1
  154. package/dist/config/tailwind.js +2 -2
  155. package/dist/hooks/_private/useDrag.js +4 -4
  156. package/dist/hooks/_private/useFadeSide.js +1 -1
  157. package/dist/hooks/useOnClickOutside.js +2 -4
  158. package/dist/hooks/useResponsiveClientValue.js +1 -1
  159. package/dist/styles/mixin.js +1 -1
  160. package/dist/tests/ThemesPlayground.js +16 -16
  161. package/dist/themes/_generator/definitions/slate.js +1 -1
  162. package/dist/themes/_generator/tokens/color/utilities/generateColors.d.ts +1 -1
  163. package/dist/themes/_generator/tokens/color/utilities/generateMetaColors.d.ts +1 -1
  164. package/dist/themes/_generator/tokens/color/utilities/generateMetaColors.js +1 -1
  165. package/dist/themes/_generator/tokens/css.js +2 -2
  166. package/dist/themes/_generator/tokens/font/font.types.d.ts +2 -2
  167. package/dist/themes/_generator/tokens/transforms.js +1 -1
  168. package/dist/themes/_generator/tokens/types.d.ts +3 -3
  169. package/dist/themes/_generator/transform.d.ts +1 -1
  170. package/dist/themes/_generator/transform.js +3 -3
  171. package/dist/themes/figma/theme.css +1 -1
  172. package/dist/themes/fragments/twitter/theme.css +1 -1
  173. package/dist/themes/index.d.ts +1 -1
  174. package/dist/themes/reshaped/theme.css +1 -1
  175. package/dist/themes/slate/theme.css +1 -1
  176. package/dist/types/config.d.ts +1 -1
  177. package/dist/utilities/a11y/TrapFocus.js +4 -4
  178. package/dist/utilities/scroll/lock.js +1 -1
  179. package/dist/utilities/scroll/lockStandard.js +1 -1
  180. package/dist/utilities/storybook/Example.js +1 -1
  181. package/package.json +42 -35
  182. package/dist/components/Accordion/tests/Accordion.stories.d.ts +0 -44
  183. package/dist/components/Accordion/tests/Accordion.stories.js +0 -204
  184. package/dist/components/ActionBar/tests/ActionBar.stories.d.ts +0 -40
  185. package/dist/components/ActionBar/tests/ActionBar.stories.js +0 -223
  186. package/dist/components/Actionable/tests/Actionable.stories.d.ts +0 -41
  187. package/dist/components/Actionable/tests/Actionable.stories.js +0 -220
  188. package/dist/components/Alert/tests/Alert.stories.d.ts +0 -24
  189. package/dist/components/Alert/tests/Alert.stories.js +0 -78
  190. package/dist/components/Autocomplete/tests/Autocomplete.stories.d.ts +0 -32
  191. package/dist/components/Autocomplete/tests/Autocomplete.stories.js +0 -246
  192. package/dist/components/Avatar/tests/Avatar.stories.d.ts +0 -31
  193. package/dist/components/Avatar/tests/Avatar.stories.js +0 -176
  194. package/dist/components/Badge/tests/Badge.stories.d.ts +0 -55
  195. package/dist/components/Badge/tests/Badge.stories.js +0 -328
  196. package/dist/components/Breadcrumbs/tests/Breadcrumbs.stories.d.ts +0 -40
  197. package/dist/components/Breadcrumbs/tests/Breadcrumbs.stories.js +0 -187
  198. package/dist/components/Button/tests/Button.stories.d.ts +0 -79
  199. package/dist/components/Button/tests/Button.stories.js +0 -789
  200. package/dist/components/Calendar/tests/Calendar.stories.d.ts +0 -29
  201. package/dist/components/Calendar/tests/Calendar.stories.js +0 -255
  202. package/dist/components/Card/tests/Card.stories.d.ts +0 -52
  203. package/dist/components/Card/tests/Card.stories.js +0 -125
  204. package/dist/components/Carousel/tests/Carousel.stories.d.ts +0 -34
  205. package/dist/components/Carousel/tests/Carousel.stories.js +0 -224
  206. package/dist/components/Checkbox/tests/Checkbox.stories.d.ts +0 -30
  207. package/dist/components/Checkbox/tests/Checkbox.stories.js +0 -171
  208. package/dist/components/CheckboxGroup/tests/CheckboxGroup.stories.d.ts +0 -19
  209. package/dist/components/CheckboxGroup/tests/CheckboxGroup.stories.js +0 -83
  210. package/dist/components/Container/tests/Container.stories.d.ts +0 -24
  211. package/dist/components/Container/tests/Container.stories.js +0 -75
  212. package/dist/components/ContextMenu/tests/ContextMenu.stories.d.ts +0 -26
  213. package/dist/components/ContextMenu/tests/ContextMenu.stories.js +0 -70
  214. package/dist/components/Dismissible/tests/Dismissible.stories.d.ts +0 -25
  215. package/dist/components/Dismissible/tests/Dismissible.stories.js +0 -97
  216. package/dist/components/Divider/tests/Divider.stories.d.ts +0 -20
  217. package/dist/components/Divider/tests/Divider.stories.js +0 -120
  218. package/dist/components/DropdownMenu/tests/DropdownMenu.stories.d.ts +0 -53
  219. package/dist/components/DropdownMenu/tests/DropdownMenu.stories.js +0 -278
  220. package/dist/components/FileUpload/tests/FileUpload.stories.d.ts +0 -31
  221. package/dist/components/FileUpload/tests/FileUpload.stories.js +0 -140
  222. package/dist/components/Flyout/tests/Flyout.stories.d.ts +0 -103
  223. package/dist/components/Flyout/tests/Flyout.stories.js +0 -738
  224. package/dist/components/FormControl/tests/FormControl.stories.d.ts +0 -31
  225. package/dist/components/FormControl/tests/FormControl.stories.js +0 -143
  226. package/dist/components/Grid/tests/Grid.stories.d.ts +0 -38
  227. package/dist/components/Grid/tests/Grid.stories.js +0 -245
  228. package/dist/components/Hidden/tests/Hidden.stories.d.ts +0 -16
  229. package/dist/components/Hidden/tests/Hidden.stories.js +0 -48
  230. package/dist/components/HiddenVisually/tests/HiddenVisually.stories.d.ts +0 -16
  231. package/dist/components/HiddenVisually/tests/HiddenVisually.stories.js +0 -28
  232. package/dist/components/Hotkey/tests/Hotkey.stories.d.ts +0 -13
  233. package/dist/components/Hotkey/tests/Hotkey.stories.js +0 -53
  234. package/dist/components/Icon/tests/Icon.stories.d.ts +0 -25
  235. package/dist/components/Icon/tests/Icon.stories.js +0 -113
  236. package/dist/components/Image/tests/Image.stories.d.ts +0 -41
  237. package/dist/components/Image/tests/Image.stories.js +0 -196
  238. package/dist/components/Link/tests/Link.stories.d.ts +0 -42
  239. package/dist/components/Link/tests/Link.stories.js +0 -155
  240. package/dist/components/Loader/tests/Loader.stories.d.ts +0 -21
  241. package/dist/components/Loader/tests/Loader.stories.js +0 -68
  242. package/dist/components/MenuItem/tests/MenuItem.stories.d.ts +0 -59
  243. package/dist/components/MenuItem/tests/MenuItem.stories.js +0 -236
  244. package/dist/components/Modal/tests/Modal.stories.d.ts +0 -64
  245. package/dist/components/Modal/tests/Modal.stories.js +0 -410
  246. package/dist/components/NumberField/tests/NumberField.stories.d.ts +0 -28
  247. package/dist/components/NumberField/tests/NumberField.stories.js +0 -258
  248. package/dist/components/Overlay/tests/Overlay.stories.d.ts +0 -28
  249. package/dist/components/Overlay/tests/Overlay.stories.js +0 -202
  250. package/dist/components/Pagination/tests/Pagination.stories.d.ts +0 -24
  251. package/dist/components/Pagination/tests/Pagination.stories.js +0 -105
  252. package/dist/components/PinField/tests/PinField.stories.d.ts +0 -34
  253. package/dist/components/PinField/tests/PinField.stories.js +0 -209
  254. package/dist/components/Popover/tests/Popover.stories.d.ts +0 -69
  255. package/dist/components/Popover/tests/Popover.stories.js +0 -340
  256. package/dist/components/Progress/tests/Progress.stories.d.ts +0 -30
  257. package/dist/components/Progress/tests/Progress.stories.js +0 -102
  258. package/dist/components/ProgressIndicator/tests/ProgressIndicator.stories.d.ts +0 -19
  259. package/dist/components/ProgressIndicator/tests/ProgressIndicator.stories.js +0 -92
  260. package/dist/components/Radio/tests/Radio.stories.d.ts +0 -35
  261. package/dist/components/Radio/tests/Radio.stories.js +0 -162
  262. package/dist/components/RadioGroup/tests/RadioGroup.stories.d.ts +0 -19
  263. package/dist/components/RadioGroup/tests/RadioGroup.stories.js +0 -77
  264. package/dist/components/Reshaped/tests/Reshaped.stories.d.ts +0 -34
  265. package/dist/components/Reshaped/tests/Reshaped.stories.js +0 -108
  266. package/dist/components/Resizable/tests/Resizable.stories.d.ts +0 -38
  267. package/dist/components/Resizable/tests/Resizable.stories.js +0 -185
  268. package/dist/components/Scrim/tests/Scrim.stories.d.ts +0 -20
  269. package/dist/components/Scrim/tests/Scrim.stories.js +0 -67
  270. package/dist/components/ScrollArea/tests/ScrollArea.stories.d.ts +0 -37
  271. package/dist/components/ScrollArea/tests/ScrollArea.stories.js +0 -244
  272. package/dist/components/Select/tests/Select.stories.d.ts +0 -53
  273. package/dist/components/Select/tests/Select.stories.js +0 -616
  274. package/dist/components/Skeleton/tests/Skeleton.stories.d.ts +0 -20
  275. package/dist/components/Skeleton/tests/Skeleton.stories.js +0 -63
  276. package/dist/components/Slider/tests/Slider.stories.d.ts +0 -47
  277. package/dist/components/Slider/tests/Slider.stories.js +0 -279
  278. package/dist/components/Stepper/tests/Stepper.stories.d.ts +0 -31
  279. package/dist/components/Stepper/tests/Stepper.stories.js +0 -135
  280. package/dist/components/Switch/tests/Switch.stories.d.ts +0 -22
  281. package/dist/components/Switch/tests/Switch.stories.js +0 -137
  282. package/dist/components/Switch/tests/Switch.test.stories.d.ts +0 -13
  283. package/dist/components/Switch/tests/Switch.test.stories.js +0 -11
  284. package/dist/components/Table/tests/Table.stories.d.ts +0 -42
  285. package/dist/components/Table/tests/Table.stories.js +0 -348
  286. package/dist/components/Tabs/tests/Tabs.stories.d.ts +0 -62
  287. package/dist/components/Tabs/tests/Tabs.stories.js +0 -539
  288. package/dist/components/Text/tests/Text.stories.d.ts +0 -48
  289. package/dist/components/Text/tests/Text.stories.js +0 -201
  290. package/dist/components/TextArea/tests/TextArea.stories.d.ts +0 -53
  291. package/dist/components/TextArea/tests/TextArea.stories.js +0 -204
  292. package/dist/components/TextField/tests/TextField.stories.d.ts +0 -54
  293. package/dist/components/TextField/tests/TextField.stories.js +0 -252
  294. package/dist/components/Theme/tests/Theme.stories.d.ts +0 -25
  295. package/dist/components/Theme/tests/Theme.stories.js +0 -171
  296. package/dist/components/Timeline/tests/Timeline.stories.d.ts +0 -22
  297. package/dist/components/Timeline/tests/Timeline.stories.js +0 -86
  298. package/dist/components/Toast/tests/Toast.stories.d.ts +0 -41
  299. package/dist/components/Toast/tests/Toast.stories.js +0 -432
  300. package/dist/components/ToggleButton/tests/ToggleButton.stories.d.ts +0 -27
  301. package/dist/components/ToggleButton/tests/ToggleButton.stories.js +0 -97
  302. package/dist/components/ToggleButtonGroup/tests/ToggleButtonGroup.stories.d.ts +0 -27
  303. package/dist/components/ToggleButtonGroup/tests/ToggleButtonGroup.stories.js +0 -169
  304. package/dist/components/Tooltip/tests/Tooltip.stories.d.ts +0 -28
  305. package/dist/components/Tooltip/tests/Tooltip.stories.js +0 -182
  306. package/dist/components/View/tests/View.stories.d.ts +0 -141
  307. package/dist/components/View/tests/View.stories.js +0 -1329
  308. package/dist/components/_private/HiddenInput/HiddenInput.js +0 -10
  309. package/dist/components/_private/HiddenInput/HiddenInput.types.d.ts +0 -15
  310. package/dist/components/_private/Portal/tests/Portal.stories.d.ts +0 -6
  311. package/dist/components/_private/Portal/tests/Portal.stories.js +0 -17
  312. package/dist/hooks/tests/useDrag.stories.d.ts +0 -31
  313. package/dist/hooks/tests/useDrag.stories.js +0 -147
  314. package/dist/hooks/tests/useElementId.stories.d.ts +0 -11
  315. package/dist/hooks/tests/useElementId.stories.js +0 -23
  316. package/dist/hooks/tests/useHandlerRef.stories.d.ts +0 -14
  317. package/dist/hooks/tests/useHandlerRef.stories.js +0 -44
  318. package/dist/hooks/tests/useHotkeys.stories.d.ts +0 -43
  319. package/dist/hooks/tests/useHotkeys.stories.js +0 -158
  320. package/dist/hooks/tests/useKeyboardArrowNavigation.stories.d.ts +0 -15
  321. package/dist/hooks/tests/useKeyboardArrowNavigation.stories.js +0 -128
  322. package/dist/hooks/tests/useKeyboardMode.stories.d.ts +0 -11
  323. package/dist/hooks/tests/useKeyboardMode.stories.js +0 -42
  324. package/dist/hooks/tests/useOnClickOutside.stories.d.ts +0 -23
  325. package/dist/hooks/tests/useOnClickOutside.stories.js +0 -111
  326. package/dist/hooks/tests/useRTL.stories.d.ts +0 -11
  327. package/dist/hooks/tests/useRTL.stories.js +0 -23
  328. package/dist/hooks/tests/useResponsiveClientValue.stories.d.ts +0 -18
  329. package/dist/hooks/tests/useResponsiveClientValue.stories.js +0 -30
  330. package/dist/hooks/tests/useScrollLock.stories.d.ts +0 -14
  331. package/dist/hooks/tests/useScrollLock.stories.js +0 -97
  332. package/dist/hooks/tests/useToggle.stories.d.ts +0 -13
  333. package/dist/hooks/tests/useToggle.stories.js +0 -59
  334. package/dist/tests/ShadowDOM.stories.d.ts +0 -6
  335. package/dist/tests/ShadowDOM.stories.js +0 -110
  336. package/dist/tests/themes.stories.d.ts +0 -16
  337. package/dist/tests/themes.stories.js +0 -327
  338. package/dist/utilities/a11y/tests/TrapFocus.stories.d.ts +0 -14
  339. package/dist/utilities/a11y/tests/TrapFocus.stories.js +0 -615
  340. /package/dist/components/{_private/HiddenInput → HiddenInput}/HiddenInput.d.ts +0 -0
  341. /package/dist/components/{_private/HiddenInput → HiddenInput}/HiddenInput.module.css +0 -0
  342. /package/dist/components/{_private/HiddenInput → HiddenInput}/HiddenInput.types.js +0 -0
  343. /package/dist/components/{_private/HiddenInput → HiddenInput}/index.d.ts +0 -0
  344. /package/dist/components/{_private/HiddenInput → HiddenInput}/index.js +0 -0
@@ -1,9 +1,9 @@
1
- import fs from "fs";
2
- import path from "path";
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
3
  import chalk from "chalk";
4
- import mergeDefinitions from "../../themes/_generator/utilities/mergeDefinitions.js";
5
- import transform from "../../themes/_generator/transform.js";
6
4
  import reshapedDefinition from "../../themes/_generator/definitions/reshaped.js";
5
+ import transform from "../../themes/_generator/transform.js";
6
+ import mergeDefinitions from "../../themes/_generator/utilities/mergeDefinitions.js";
7
7
  import { transformToTailwind } from "./tailwind.js";
8
8
  const transformDefinition = (name, definition, options) => {
9
9
  const { isFragment, outputPath } = options;
@@ -1,5 +1,5 @@
1
- import reshapedDefinition from "../../themes/_generator/definitions/reshaped.js";
2
1
  import figmaDefinition from "../../themes/_generator/definitions/figma.js";
2
+ import reshapedDefinition from "../../themes/_generator/definitions/reshaped.js";
3
3
  import slateDefinition from "../../themes/_generator/definitions/slate.js";
4
4
  const config = {
5
5
  themes: {
@@ -1,5 +1,5 @@
1
- import type React from "react";
2
1
  import type { IconProps } from "../Icon";
2
+ import type React from "react";
3
3
  import type * as G from "../../types/global";
4
4
  export type BaseProps = {
5
5
  /** Expand / collapse icon size in units */
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import React from "react";
4
- import { classNames } from "../../utilities/props.js";
5
4
  import useElementId from "../../hooks/useElementId.js";
6
- import AccordionContext from "./Accordion.context.js";
7
5
  import useHandlerRef from "../../hooks/useHandlerRef.js";
6
+ import { classNames } from "../../utilities/props.js";
7
+ import AccordionContext from "./Accordion.context.js";
8
8
  const AccordionControlled = (props) => {
9
9
  const { children, onToggle, active, iconPosition, iconSize, gap, className, attributes } = props;
10
10
  const rootClassNames = classNames(className);
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React from "react";
4
- import { classNames } from "../../utilities/props.js";
5
4
  import Actionable from "../Actionable/index.js";
6
- import View from "../View/index.js";
7
5
  import Icon from "../Icon/index.js";
6
+ import View from "../View/index.js";
8
7
  import IconChevronDown from "../../icons/ChevronDown.js";
8
+ import { classNames } from "../../utilities/props.js";
9
9
  import AccordionContext from "./Accordion.context.js";
10
10
  import s from "./Accordion.module.css";
11
11
  const AccordionTrigger = (props) => {
@@ -1,6 +1,6 @@
1
1
  import Accordion from "./Accordion";
2
- import AccordionTrigger from "./AccordionTrigger";
3
2
  import AccordionContent from "./AccordionContent";
3
+ import AccordionTrigger from "./AccordionTrigger";
4
4
  declare const AccordionRoot: typeof Accordion & {
5
5
  Trigger: typeof AccordionTrigger;
6
6
  Content: typeof AccordionContent;
@@ -1,6 +1,6 @@
1
1
  import Accordion from "./Accordion.js";
2
- import AccordionTrigger from "./AccordionTrigger.js";
3
2
  import AccordionContent from "./AccordionContent.js";
3
+ import AccordionTrigger from "./AccordionTrigger.js";
4
4
  const AccordionRoot = Accordion;
5
5
  AccordionRoot.Trigger = AccordionTrigger;
6
6
  AccordionRoot.Content = AccordionContent;
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { classNames, responsiveVariables } from "../../utilities/props.js";
3
2
  import View from "../View/index.js";
3
+ import { classNames, responsiveVariables } from "../../utilities/props.js";
4
4
  import s from "./ActionBar.module.css";
5
5
  const fullWidthPositions = ["top", "bottom"];
6
6
  const ActionBar = (props) => {
@@ -1,5 +1,5 @@
1
- import type React from "react";
2
1
  import type { ViewProps } from "../View";
2
+ import type React from "react";
3
3
  import type * as G from "../../types/global";
4
4
  export type Props = Pick<ViewProps, "paddingBlock" | "paddingInline" | "padding"> & {
5
5
  /** Show or hide the component */
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { forwardRef } from "react";
4
- import { classNames } from "../../utilities/props.js";
5
4
  import * as keys from "../../constants/keys.js";
5
+ import { classNames } from "../../utilities/props.js";
6
6
  import s from "./Actionable.module.css";
7
7
  const Actionable = forwardRef((props, ref) => {
8
8
  const { children, render, href, onClick, type, disabled, insetFocus, disableFocusRing, borderRadius, as, stopPropagation, fullWidth, touchHitbox, className, attributes, } = props;
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import Icon from "../Icon/index.js";
3
- import View from "../View/index.js";
4
3
  import Text from "../Text/index.js";
4
+ import View from "../View/index.js";
5
5
  import s from "./Alert.module.css";
6
6
  const Alert = (props) => {
7
7
  const { title, children, icon, actionsSlot, color = "neutral", inline, bleed, className, attributes, } = props;
@@ -1,5 +1,5 @@
1
- import type React from "react";
2
1
  import type { IconProps } from "../Icon";
2
+ import type React from "react";
3
3
  import type * as G from "../../types/global";
4
4
  export type Props = {
5
5
  /** SVG component for the icon */
@@ -1,17 +1,17 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React from "react";
4
- import TextField from "../TextField/index.js";
5
4
  import DropdownMenu from "../DropdownMenu/index.js";
5
+ import TextField from "../TextField/index.js";
6
6
  import * as keys from "../../constants/keys.js";
7
- import useHotkeys from "../../hooks/useHotkeys.js";
8
- import useHandlerRef from "../../hooks/useHandlerRef.js";
9
- import s from "./Autocomplete.module.css";
10
7
  import useElementId from "../../hooks/useElementId.js";
8
+ import useHandlerRef from "../../hooks/useHandlerRef.js";
9
+ import useHotkeys from "../../hooks/useHotkeys.js";
11
10
  import useIsomorphicLayoutEffect from "../../hooks/useIsomorphicLayoutEffect.js";
11
+ import s from "./Autocomplete.module.css";
12
12
  const AutocompleteContext = React.createContext({});
13
13
  const Autocomplete = (props) => {
14
- const { children, onChange, onInput, onItemSelect, name, containerRef, instanceRef, onBackspace, onEnter, active, onOpen, onClose, fallbackAdjustLayout, fallbackMinWidth, fallbackMinHeight, ...textFieldProps } = props;
14
+ const { children, onChange, onInput, onItemSelect, name, containerRef, instanceRef, onBackspace, onEnter, active, onOpen, onClose, fallbackAdjustLayout, fallbackMinWidth, fallbackMinHeight, contentMaxHeight, ...textFieldProps } = props;
15
15
  const [highlightedId, setHighlightedId] = React.useState();
16
16
  const onBackspaceRef = useHandlerRef(onBackspace);
17
17
  const contentRef = React.useRef(null);
@@ -120,7 +120,7 @@ const Autocomplete = (props) => {
120
120
  highlightedId,
121
121
  setHighlightedId,
122
122
  }), [highlightedId, handleItemClick]);
123
- return (_jsx(AutocompleteContext.Provider, { value: contextValue, children: _jsxs(DropdownMenu, { position: "bottom", width: "trigger", triggerType: "focus", trapFocusMode: false, active: isDropdownActive, onClose: handleClose, onOpen: handleOpen, containerRef: containerRef, fallbackAdjustLayout: fallbackAdjustLayout, fallbackMinWidth: fallbackMinWidth, fallbackMinHeight: fallbackMinHeight, disableHideAnimation: true, instanceRef: instanceRef, children: [_jsx(DropdownMenu.Trigger, { children: ({ ref, ...attributes }) => (_jsx(TextField, { ...textFieldProps, name: name, onChange: handleChange, focused: isDropdownActive, attributes: {
123
+ return (_jsx(AutocompleteContext.Provider, { value: contextValue, children: _jsxs(DropdownMenu, { position: "bottom", width: "trigger", triggerType: "focus", trapFocusMode: false, active: isDropdownActive, onClose: handleClose, onOpen: handleOpen, containerRef: containerRef, fallbackAdjustLayout: fallbackAdjustLayout, fallbackMinWidth: fallbackMinWidth, fallbackMinHeight: fallbackMinHeight, contentMaxHeight: contentMaxHeight, disableHideAnimation: true, instanceRef: instanceRef, children: [_jsx(DropdownMenu.Trigger, { children: ({ ref, ...attributes }) => (_jsx(TextField, { ...textFieldProps, name: name, onChange: handleChange, focused: isDropdownActive, attributes: {
124
124
  ...textFieldProps.attributes,
125
125
  // Ignoring the type check since TS can't infer the correct html element type
126
126
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1,13 +1,13 @@
1
- import type { TextFieldProps } from "../TextField";
2
- import type { MenuItemProps } from "../MenuItem";
3
1
  import type { DropdownMenuProps, DropdownMenuInstance } from "../DropdownMenu";
2
+ import type { MenuItemProps } from "../MenuItem";
3
+ import type { TextFieldProps } from "../TextField";
4
4
  type SelectArgs = {
5
5
  /** Value that will be passed to the input on selection */
6
6
  value: string;
7
7
  /** Additional data that will be passed to the onItemSelect callback */
8
8
  data?: unknown;
9
9
  };
10
- export type Props = TextFieldProps & Pick<DropdownMenuProps, "containerRef" | "instanceRef" | "active" | "onOpen" | "onClose" | "fallbackAdjustLayout" | "fallbackMinWidth" | "fallbackMinHeight"> & {
10
+ export type Props = TextFieldProps & Pick<DropdownMenuProps, "containerRef" | "instanceRef" | "active" | "onOpen" | "onClose" | "fallbackAdjustLayout" | "fallbackMinWidth" | "fallbackMinHeight" | "contentMaxHeight"> & {
11
11
  /** Callback for when value changes from user input */
12
12
  onInput?: TextFieldProps["onChange"];
13
13
  /** Callback for when an item is selected in the dropdown */
@@ -1,12 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { classNames, responsivePropDependency } from "../../utilities/props.js";
3
- import { resolveMixin } from "../../styles/mixin.js";
4
2
  import Icon from "../Icon/index.js";
3
+ import Image from "../Image/index.js";
5
4
  import View from "../View/index.js";
5
+ import { resolveMixin } from "../../styles/mixin.js";
6
+ import { classNames, responsivePropDependency } from "../../utilities/props.js";
6
7
  import s from "./Avatar.module.css";
7
8
  const Avatar = (props) => {
8
- const { color = "neutral", variant, src, size = 12, squared, initials, icon, className, renderImage, imageAttributes: passedImageAttributes, attributes, } = props;
9
- const alt = props.alt || passedImageAttributes?.alt;
9
+ const { color = "neutral", variant, src, size = 12, squared, initials, icon, className, renderImage, imageAttributes, attributes, } = props;
10
+ const alt = props.alt || imageAttributes?.alt;
10
11
  const radius = squared
11
12
  ? responsivePropDependency(size, (size) => {
12
13
  if (size >= 24)
@@ -16,30 +17,12 @@ const Avatar = (props) => {
16
17
  return "small";
17
18
  })
18
19
  : "circular";
20
+ if (src) {
21
+ return (_jsx(Image, { src: src, alt: alt, renderImage: renderImage, outline: true, borderRadius: radius, width: size, aspectRatio: 1, className: className, attributes: attributes, imageAttributes: imageAttributes }));
22
+ }
19
23
  const mixinStyles = resolveMixin({ height: size });
20
24
  const rootClassNames = classNames(s.root, className, mixinStyles?.classNames, color && s[`--color-${color}`], variant && s[`--variant-${variant}`]);
21
- const renderContent = () => {
22
- if (src) {
23
- /**
24
- * Not all img attributes might be supported by custom Image components
25
- * Here is an example from Next: https://nextjs.org/docs/pages/api-reference/components/image#required-props
26
- */
27
- const imageAttributes = {
28
- ...passedImageAttributes,
29
- role: !alt ? "presentation" : undefined,
30
- src: src ?? "",
31
- alt: alt ?? "",
32
- className: s.img,
33
- };
34
- // eslint-disable-next-line jsx-a11y/alt-text
35
- return renderImage ? renderImage(imageAttributes) : _jsx("img", { ...imageAttributes });
36
- }
37
- if (icon) {
38
- return (_jsx(Icon, { svg: icon, size: responsivePropDependency(size, (size) => Math.ceil(size * 0.4)) }));
39
- }
40
- return initials;
41
- };
42
- return (_jsx(View, { borderRadius: radius, attributes: { ...attributes, style: { ...mixinStyles?.variables } }, backgroundColor: variant === "faded" ? `${color}-${variant}` : color, className: rootClassNames, children: renderContent() }));
25
+ return (_jsx(View, { borderRadius: radius, attributes: { ...attributes, style: { ...mixinStyles?.variables } }, backgroundColor: variant === "faded" ? `${color}-${variant}` : color, className: rootClassNames, children: icon ? (_jsx(Icon, { svg: icon, size: responsivePropDependency(size, (size) => Math.ceil(size * 0.4)) })) : (initials) }));
43
26
  };
44
27
  Avatar.displayName = "Avatar";
45
28
  export default Avatar;
@@ -1 +1 @@
1
- .root{align-items:center;aspect-ratio:1;display:flex;font-size:calc(var(--rs-h) / 3);font-weight:var(--rs-font-weight-bold);justify-content:center;line-height:100%}.img{border-radius:inherit;height:100%;object-fit:cover;width:100%}.--variant-faded.--color-neutral{color:var(--rs-color-foreground-neutral)}.--variant-faded.--color-critical{color:var(--rs-color-foreground-critical)}.--variant-faded.--color-positive{color:var(--rs-color-foreground-positive)}.--variant-faded.--color-warning{color:var(--rs-color-foreground-warning)}.--variant-faded.--color-primary{color:var(--rs-color-foreground-primary)}
1
+ .root{align-items:center;aspect-ratio:1;display:flex;font-size:calc(var(--rs-h) / 3);font-weight:var(--rs-font-weight-bold);justify-content:center;line-height:100%}.--variant-faded.--color-neutral{color:var(--rs-color-foreground-neutral)}.--variant-faded.--color-critical{color:var(--rs-color-foreground-critical)}.--variant-faded.--color-positive{color:var(--rs-color-foreground-positive)}.--variant-faded.--color-warning{color:var(--rs-color-foreground-warning)}.--variant-faded.--color-primary{color:var(--rs-color-foreground-primary)}
@@ -1,11 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { classNames } from "../../utilities/props.js";
3
- import Text from "../Text/index.js";
2
+ import { forwardRef } from "react";
3
+ import Actionable from "../Actionable/index.js";
4
4
  import Icon from "../Icon/index.js";
5
+ import Text from "../Text/index.js";
5
6
  import IconClose from "../../icons/Close.js";
6
- import Actionable from "../Actionable/index.js";
7
+ import { classNames } from "../../utilities/props.js";
7
8
  import s from "./Badge.module.css";
8
- import { forwardRef } from "react";
9
9
  const Badge = forwardRef((props, ref) => {
10
10
  const { children, color, rounded, size = "medium", icon, endIcon, variant, hidden, highlighted, href, onClick, onDismiss, dismissAriaLabel, className, attributes, } = props;
11
11
  const isActionable = !!(onClick || href);
@@ -1 +1 @@
1
- .root{--rs-badge-border-color:transparent;align-items:center;backface-visibility:hidden;background:var(--rs-color-background-neutral);border-radius:var(--rs-radius-small);box-shadow:0 0 0 1px var(--rs-badge-border-color) inset;box-sizing:border-box;color:var(--rs-color-foreground-neutral);display:inline-flex;gap:var(--rs-badge-gap);justify-content:center;min-height:calc(var(--rs-badge-line-height) + (var(--rs-badge-p-v) * 2));min-width:calc(var(--rs-badge-line-height) + (var(--rs-badge-p-v) * 2));padding:var(--rs-badge-p-v) var(--rs-badge-p-h);transition:var(--rs-duration-medium) var(--rs-easing-standard);transition-property:transform,opacity;vertical-align:top}.root:empty{height:var(--rs-badge-empty-size);min-height:auto;min-width:auto;padding:0;width:var(--rs-badge-empty-size)}.icon:only-child{margin-inline:calc(var(--rs-unit-x1) * -1)}.dismiss{border-radius:var(--rs-radius-small);transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:opacity}.root.--highlighted{opacity:.8}@media (hover:hover) and (pointer:fine){.root .dismiss:hover,.root.--actionable:hover:not(:has(.dismiss:hover)){opacity:.8}}.root.--variant-faded{background:var(--rs-color-background-neutral-faded);color:var(--rs-color-foreground-neutral-faded)}.root.--variant-outline{--rs-badge-border-color:var(--rs-color-border-neutral);background:none}.root.--color-positive{background:var(--rs-color-background-positive);color:var(--rs-color-on-background-positive)}.root.--color-positive.--variant-faded{background:var(--rs-color-background-positive-faded);color:var(--rs-color-foreground-positive)}.root.--color-positive.--variant-outline{--rs-badge-border-color:var(--rs-color-border-positive-faded);background:none;color:var(--rs-color-foreground-positive)}.root.--color-critical{background:var(--rs-color-background-critical);color:var(--rs-color-on-background-critical)}.root.--color-critical.--variant-faded{background:var(--rs-color-background-critical-faded);color:var(--rs-color-foreground-critical)}.root.--color-critical.--variant-outline{--rs-badge-border-color:var(--rs-color-border-critical-faded);background:none;color:var(--rs-color-foreground-critical)}.root.--color-warning{background:var(--rs-color-background-warning);color:var(--rs-color-on-background-warning)}.root.--color-warning.--variant-faded{background:var(--rs-color-background-warning-faded);color:var(--rs-color-foreground-warning)}.root.--color-warning.--variant-outline{--rs-badge-border-color:var(--rs-color-border-warning-faded);background:none;color:var(--rs-color-foreground-warning)}.root.--color-primary{background:var(--rs-color-background-primary);color:var(--rs-color-on-background-primary)}.root.--color-primary.--variant-faded{background:var(--rs-color-background-primary-faded);color:var(--rs-color-foreground-primary)}.root.--color-primary.--variant-outline{--rs-badge-border-color:var(--rs-color-border-primary-faded);background:none;color:var(--rs-color-foreground-primary)}.root.--size-small{--rs-badge-p-v:calc(var(--rs-unit-x1) / 2);--rs-badge-p-h:var(--rs-unit-x1);--rs-badge-line-height:var(--rs-line-height-caption-1);--rs-badge-empty-size:var(--rs-unit-x2);--rs-badge-gap:calc(var(--rs-unit-x1) / 2)}.root.--size-medium{--rs-badge-p-v:var(--rs-unit-x1);--rs-badge-p-h:var(--rs-unit-x2);--rs-badge-line-height:var(--rs-line-height-caption-1);--rs-badge-empty-size:var(--rs-unit-x3);--rs-badge-gap:var(--rs-unit-x1)}.root.--size-large{--rs-badge-p-v:var(--rs-unit-x1);--rs-badge-p-h:var(--rs-unit-x2);--rs-badge-line-height:var(--rs-line-height-body-3);--rs-badge-empty-size:var(--rs-unit-x4);--rs-badge-gap:var(--rs-unit-x1)}.root.--rounded{border-radius:var(--rs-radius-circular)}.root.--hidden{opacity:0;transform:scale(.2)}.container{display:inline-block;position:relative;vertical-align:top}.container .root{inset-inline-end:0;pointer-events:none;position:absolute;transform:translate(50%,var(--rs-badge-translate-y)) scale(1);z-index:10}.container .root.--hidden{transform:translate(50%,var(--rs-badge-translate-y)) scale(.2)}[dir=rtl] .container .root{transform:translate(-50%,var(--rs-badge-translate-y)) scale(1)}[dir=rtl] .container .root.--hidden{transform:translate(-50%,var(--rs-badge-translate-y)) scale(.2)}.--container-overlap .root{inset-inline-end:14%}.--container-position-top-end .root{--rs-badge-translate-y:-50%;top:0}.--container-position-top-end.--container-overlap .root{top:14%}.--container-position-bottom-end .root{--rs-badge-translate-y:50%;bottom:0}.--container-position-bottom-end.--container-overlap .root{bottom:14%}
1
+ .root{--rs-badge-border-color:transparent;align-items:center;backface-visibility:hidden;background:var(--rs-color-background-neutral);border-radius:var(--rs-radius-small);box-shadow:0 0 0 1px var(--rs-badge-border-color) inset;box-sizing:border-box;color:var(--rs-color-foreground-neutral);display:inline-flex;gap:var(--rs-badge-gap);justify-content:center;min-height:calc(var(--rs-badge-line-height) + (var(--rs-badge-p-v) * 2));min-width:calc(var(--rs-badge-line-height) + (var(--rs-badge-p-v) * 2));padding:var(--rs-badge-p-v) var(--rs-badge-p-h);transition:var(--rs-duration-medium) var(--rs-easing-standard);transition-property:transform,opacity;vertical-align:top}.root:empty{height:var(--rs-badge-empty-size);min-height:auto;min-width:auto;padding:0;width:var(--rs-badge-empty-size)}.icon:only-child{margin-inline:calc(var(--rs-unit-x1) * -1)}.dismiss{border-radius:var(--rs-radius-small);transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:opacity}.root.--highlighted{opacity:.8}@media (hover:hover) and (pointer:fine){.root .dismiss:hover,.root.--actionable:hover:not(:has(.dismiss:hover)){opacity:.8}}.root.--variant-faded{background:var(--rs-color-background-neutral-faded);color:var(--rs-color-foreground-neutral-faded)}.root.--variant-outline{--rs-badge-border-color:var(--rs-color-border-neutral);background:none}.root.--color-positive{background:var(--rs-color-background-positive);color:var(--rs-color-on-background-positive)}.root.--color-positive.--variant-faded{background:var(--rs-color-background-positive-faded);color:var(--rs-color-foreground-positive)}.root.--color-positive.--variant-outline{--rs-badge-border-color:var(--rs-color-border-positive-faded);background:none;color:var(--rs-color-foreground-positive)}.root.--color-critical{background:var(--rs-color-background-critical);color:var(--rs-color-on-background-critical)}.root.--color-critical.--variant-faded{background:var(--rs-color-background-critical-faded);color:var(--rs-color-foreground-critical)}.root.--color-critical.--variant-outline{--rs-badge-border-color:var(--rs-color-border-critical-faded);background:none;color:var(--rs-color-foreground-critical)}.root.--color-warning{background:var(--rs-color-background-warning);color:var(--rs-color-on-background-warning)}.root.--color-warning.--variant-faded{background:var(--rs-color-background-warning-faded);color:var(--rs-color-foreground-warning)}.root.--color-warning.--variant-outline{--rs-badge-border-color:var(--rs-color-border-warning-faded);background:none;color:var(--rs-color-foreground-warning)}.root.--color-primary{background:var(--rs-color-background-primary);color:var(--rs-color-on-background-primary)}.root.--color-primary.--variant-faded{background:var(--rs-color-background-primary-faded);color:var(--rs-color-foreground-primary)}.root.--color-primary.--variant-outline{--rs-badge-border-color:var(--rs-color-border-primary-faded);background:none;color:var(--rs-color-foreground-primary)}.root.--size-small{--rs-badge-p-v:calc(var(--rs-unit-x1) / 2);--rs-badge-p-h:var(--rs-unit-x1);--rs-badge-line-height:var(--rs-line-height-caption-1);--rs-badge-empty-size:var(--rs-unit-x2);--rs-badge-gap:calc(var(--rs-unit-x1) / 2)}.root.--size-medium{--rs-badge-p-v:var(--rs-unit-x1);--rs-badge-p-h:var(--rs-unit-x2);--rs-badge-line-height:var(--rs-line-height-caption-1);--rs-badge-empty-size:var(--rs-unit-x3);--rs-badge-gap:var(--rs-unit-x1)}.root.--size-large{--rs-badge-p-v:var(--rs-unit-x1);--rs-badge-p-h:var(--rs-unit-x2);--rs-badge-line-height:var(--rs-line-height-body-3);--rs-badge-empty-size:var(--rs-unit-x4);--rs-badge-gap:var(--rs-unit-x1)}.root.--rounded{border-radius:var(--rs-radius-circular)}.root.--hidden{opacity:0;transform:scale(.2)}.container{display:inline-block;position:relative;vertical-align:top}.container .root{inset-inline-end:0;position:absolute;transform:translate(50%,var(--rs-badge-translate-y)) scale(1);user-select:none;z-index:10}.container .root.--hidden{transform:translate(50%,var(--rs-badge-translate-y)) scale(.2)}[dir=rtl] .container .root{transform:translate(-50%,var(--rs-badge-translate-y)) scale(1)}[dir=rtl] .container .root.--hidden{transform:translate(-50%,var(--rs-badge-translate-y)) scale(.2)}.--container-overlap .root{inset-inline-end:14%}.--container-position-top-end .root{--rs-badge-translate-y:-50%;top:0}.--container-position-top-end.--container-overlap .root{top:14%}.--container-position-bottom-end .root{--rs-badge-translate-y:50%;bottom:0}.--container-position-bottom-end.--container-overlap .root{bottom:14%}
@@ -1,6 +1,6 @@
1
- import type React from "react";
2
1
  import type { ActionableProps } from "../Actionable";
3
2
  import type { IconProps } from "../Icon";
3
+ import type React from "react";
4
4
  import type * as G from "../../types/global";
5
5
  type BaseProps = {
6
6
  /** Component color scheme
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React from "react";
4
- import { classNames } from "../../utilities/props.js";
5
- import View from "../View/index.js";
4
+ import Button from "../Button/index.js";
6
5
  import Icon from "../Icon/index.js";
7
6
  import Text from "../Text/index.js";
8
- import Button from "../Button/index.js";
7
+ import View from "../View/index.js";
9
8
  import IconChevronRight from "../../icons/ChevronRight.js";
10
9
  import IconDotsHorizontal from "../../icons/DotsHorizontal.js";
10
+ import { classNames } from "../../utilities/props.js";
11
11
  const Breadcrumbs = (props) => {
12
12
  const { children, separator, color, defaultVisibleItems, expandAriaLabel, disableExpand, ariaLabel, className, attributes, } = props;
13
13
  const visibleItems = defaultVisibleItems && defaultVisibleItems >= 2 ? defaultVisibleItems : null;
@@ -1,5 +1,5 @@
1
- import type React from "react";
2
1
  import type { LinkProps } from "../Link";
2
+ import type React from "react";
3
3
  import type * as G from "../../types/global";
4
4
  export type Props = {
5
5
  /** Node for inserting children to position items */
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import Text from "../Text/index.js";
3
2
  import Link from "../Link/index.js";
3
+ import Text from "../Text/index.js";
4
4
  const BreadcrumbsItem = (props) => {
5
5
  const { children, onClick, href, icon, disabled } = props;
6
6
  if (!href && !onClick && !disabled) {
@@ -1,9 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { forwardRef } from "react";
3
- import { classNames, responsiveClassNames, responsivePropDependency } from "../../utilities/props.js";
3
+ import Actionable from "../Actionable/index.js";
4
4
  import Icon from "../Icon/index.js";
5
5
  import Loader from "../Loader/index.js";
6
- import Actionable from "../Actionable/index.js";
6
+ import { classNames, responsiveClassNames, responsivePropDependency } from "../../utilities/props.js";
7
7
  import s from "./Button.module.css";
8
8
  const Button = forwardRef((props, ref) => {
9
9
  const { variant = "solid", color = "neutral", elevated, highlighted, fullWidth, loading, loadingAriaLabel, disabled, type, href, size = "medium", children, rounded, onClick, icon, endIcon, stopPropagation, as, render, className, attributes, } = props;
@@ -1 +1 @@
1
- .root{--rs-p-v:var(--rs-button-p-v);--rs-p-h:var(--rs-button-p-h);--rs-button-highlight-opacity:0;--rs-button-highlight-opacity-base:0;--rs-button-border-color:transparent;--rs-button-border-width:0px;align-items:center;border:var(--rs-button-border-width) solid var(--rs-button-border-color);border-radius:var(--rs-button-radius);cursor:pointer;display:inline-flex;justify-content:center;padding:calc(var(--rs-unit-x1) - var(--rs-button-border-width)) calc(var(--rs-p-h) - var(--rs-button-border-width));position:relative;text-align:initial;text-decoration:none;transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:background-color,box-shadow,border-color,color,transform;z-index:0;-webkit-tap-highlight-color:transparent;background-color:var(--rs-button-background-color);box-sizing:border-box;color:var(--rs-button-foreground-color);font-family:var(--rs-font-family-body);font-size:var(--rs-button-font-size);font-weight:var(--rs-font-weight-medium);letter-spacing:var(--rs-button-letter-spacing);line-height:var(--rs-button-line-height);min-height:calc(var(--rs-button-line-height) + var(--rs-p-v) * 2);min-width:calc(var(--rs-button-line-height) - (var(--rs-unit-x1) * 2) + (var(--rs-button-p-h) * 2))}.root:before{background:var(--rs-button-highlight-color,var(--rs-button-foreground-color));border-radius:var(--rs-button-radius);content:"";inset:0;opacity:var(--rs-button-highlight-opacity-base);position:absolute;transform:translateZ(0);transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:opacity,background-color}@media (hover:hover) and (pointer:fine){.root:hover:not(.--loading,.--highlighted,.--disabled):before{opacity:var(--rs-button-highlight-opacity)}}.root.--highlighted:before,.root:active:not(.--loading,.--disabled):before{opacity:calc(var(--rs-button-highlight-opacity) + max(.04, var(--rs-button-highlight-opacity) / 2))}.text{align-items:center;display:flex;gap:var(--rs-button-gap)}.icon{margin-inline-end:var(--rs-button-gap)}.icon:last-child{margin-inline-end:0}.icon.--icon-position-end{margin-inline-end:0;margin-inline-start:var(--rs-button-gap)}.icon,.text{position:relative;z-index:5}.loader{align-items:center;display:none;inset:0;justify-content:center;position:absolute}.root.--icon-only .icon{margin:0 calc(var(--rs-unit-x1) * -1)}.root.--loading{cursor:default}.root.--loading .icon,.root.--loading .text{visibility:hidden}.root.--loading .loader{display:flex}.root.--rounded{border-radius:var(--rs-radius-circular)}.--size-small{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width{text-align:center;width:100%}.root.--variant-solid.--color-neutral{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-neutral);--rs-button-foreground-color:var(--rs-color-on-background-neutral)}.root.--variant-solid.--color-primary{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-primary);--rs-button-foreground-color:var(--rs-color-on-background-primary)}.root.--variant-solid.--color-critical{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-critical);--rs-button-foreground-color:var(--rs-color-on-background-critical)}.root.--variant-solid.--color-positive{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-positive);--rs-button-foreground-color:var(--rs-color-on-background-positive)}.root.--variant-solid.--color-media{--rs-button-highlight-opacity:0.06;--rs-button-background-color:var(--rs-color-white);--rs-button-foreground-color:var(--rs-color-black)}.root.--variant-faded.--color-neutral{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-neutral-faded);--rs-button-foreground-color:var(--rs-color-foreground-neutral)}.root.--variant-faded.--color-primary{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-primary-faded);--rs-button-foreground-color:var(--rs-color-foreground-primary)}.root.--variant-faded.--color-critical{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-critical-faded);--rs-button-foreground-color:var(--rs-color-foreground-critical)}.root.--variant-faded.--color-positive{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-positive-faded);--rs-button-foreground-color:var(--rs-color-foreground-positive)}.root.--variant-faded.--color-media{--rs-button-highlight-opacity-base:0.24;--rs-button-highlight-opacity:0.32;--rs-button-foreground-color:var(--rs-color-white);--rs-button-highlight-color:var(--rs-color-black)}.root.--variant-faded.--color-inherit{--rs-button-highlight-opacity-base:0.12;--rs-button-highlight-opacity:0.16;--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--variant-outline{--rs-button-border-width:1px;--rs-button-highlight-opacity:0.06}.root.--variant-outline.--color-primary{--rs-button-foreground-color:var(--rs-color-foreground-primary);--rs-button-border-color:var(--rs-color-border-primary-faded);--rs-button-highlight-color:var(--rs-color-background-primary)}.root.--variant-outline.--color-critical{--rs-button-foreground-color:var(--rs-color-foreground-critical);--rs-button-border-color:var(--rs-color-border-critical-faded);--rs-button-highlight-color:var(--rs-color-background-critical)}.root.--variant-outline.--color-positive{--rs-button-foreground-color:var(--rs-color-foreground-positive);--rs-button-border-color:var(--rs-color-border-positive-faded);--rs-button-highlight-color:var(--rs-color-background-positive)}.root.--variant-outline.--color-neutral{--rs-button-highlight-opacity:0.24;--rs-button-foreground-color:var(--rs-color-foreground-neutral);--rs-button-border-color:var(--rs-color-border-neutral);--rs-button-highlight-color:var(--rs-color-background-neutral)}.root.--variant-outline.--color-inherit{--rs-button-border-width:0px;--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--variant-outline.--color-inherit:after{border:1px solid;border-radius:var(--rs-button-radius);content:"";inset:0;opacity:.28;pointer-events:none;position:absolute}.root.--variant-ghost{--rs-button-highlight-opacity:0.12}.root.--variant-ghost.--color-neutral{--rs-button-highlight-opacity:0.32;--rs-button-foreground-color:var(--rs-color-foreground-neutral);--rs-button-highlight-color:var(--rs-color-background-neutral)}.root.--variant-ghost.--color-primary{--rs-button-foreground-color:var(--rs-color-foreground-primary);--rs-button-highlight-color:var(--rs-color-background-primary)}.root.--variant-ghost.--color-critical{--rs-button-foreground-color:var(--rs-color-foreground-critical);--rs-button-highlight-color:var(--rs-color-background-critical)}.root.--variant-ghost.--color-positive{--rs-button-foreground-color:var(--rs-color-foreground-positive);--rs-button-highlight-color:var(--rs-color-background-positive)}.root.--variant-ghost.--color-inherit{--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--elevated:not(:focus),[data-rs-keyboard] .root.--elevated:not(:focus){box-shadow:var(--rs-shadow-raised)}.root.--elevated.--variant-outline.--color-critical,.root.--elevated.--variant-outline.--color-neutral,.root.--elevated.--variant-outline.--color-positive,.root.--elevated.--variant-outline.--color-primary{background:var(--rs-color-background-elevation-raised)}.root.--disabled.--color-critical,.root.--disabled.--color-critical.--highlighted,.root.--disabled.--color-critical:active,.root.--disabled.--color-critical:hover,.root.--disabled.--color-inherit,.root.--disabled.--color-inherit.--highlighted,.root.--disabled.--color-inherit:active,.root.--disabled.--color-inherit:hover,.root.--disabled.--color-neutral,.root.--disabled.--color-neutral.--highlighted,.root.--disabled.--color-neutral:active,.root.--disabled.--color-neutral:hover,.root.--disabled.--color-positive,.root.--disabled.--color-positive.--highlighted,.root.--disabled.--color-positive:active,.root.--disabled.--color-positive:hover,.root.--disabled.--color-primary,.root.--disabled.--color-primary.--highlighted,.root.--disabled.--color-primary:active,.root.--disabled.--color-primary:hover{background-color:var(--rs-color-background-disabled)!important;border-color:var(--rs-color-border-disabled)!important;color:var(--rs-color-foreground-disabled)!important}.root.--disabled.--color-critical.--highlighted:before,.root.--disabled.--color-critical:active:before,.root.--disabled.--color-critical:before,.root.--disabled.--color-critical:hover:before,.root.--disabled.--color-inherit.--highlighted:before,.root.--disabled.--color-inherit:active:before,.root.--disabled.--color-inherit:before,.root.--disabled.--color-inherit:hover:before,.root.--disabled.--color-neutral.--highlighted:before,.root.--disabled.--color-neutral:active:before,.root.--disabled.--color-neutral:before,.root.--disabled.--color-neutral:hover:before,.root.--disabled.--color-positive.--highlighted:before,.root.--disabled.--color-positive:active:before,.root.--disabled.--color-positive:before,.root.--disabled.--color-positive:hover:before,.root.--disabled.--color-primary.--highlighted:before,.root.--disabled.--color-primary:active:before,.root.--disabled.--color-primary:before,.root.--disabled.--color-primary:hover:before{opacity:0!important}.root.--disabled.--color-critical.--highlighted.--variant-faded,.root.--disabled.--color-critical.--variant-faded,.root.--disabled.--color-critical:active.--variant-faded,.root.--disabled.--color-critical:hover.--variant-faded,.root.--disabled.--color-inherit.--highlighted.--variant-faded,.root.--disabled.--color-inherit.--variant-faded,.root.--disabled.--color-inherit:active.--variant-faded,.root.--disabled.--color-inherit:hover.--variant-faded,.root.--disabled.--color-neutral.--highlighted.--variant-faded,.root.--disabled.--color-neutral.--variant-faded,.root.--disabled.--color-neutral:active.--variant-faded,.root.--disabled.--color-neutral:hover.--variant-faded,.root.--disabled.--color-positive.--highlighted.--variant-faded,.root.--disabled.--color-positive.--variant-faded,.root.--disabled.--color-positive:active.--variant-faded,.root.--disabled.--color-positive:hover.--variant-faded,.root.--disabled.--color-primary.--highlighted.--variant-faded,.root.--disabled.--color-primary.--variant-faded,.root.--disabled.--color-primary:active.--variant-faded,.root.--disabled.--color-primary:hover.--variant-faded{background-color:var(--rs-color-background-disabled-faded)!important}.root.--disabled.--color-critical.--highlighted.--variant-outline,.root.--disabled.--color-critical.--variant-outline,.root.--disabled.--color-critical:active.--variant-outline,.root.--disabled.--color-critical:hover.--variant-outline,.root.--disabled.--color-inherit.--highlighted.--variant-outline,.root.--disabled.--color-inherit.--variant-outline,.root.--disabled.--color-inherit:active.--variant-outline,.root.--disabled.--color-inherit:hover.--variant-outline,.root.--disabled.--color-neutral.--highlighted.--variant-outline,.root.--disabled.--color-neutral.--variant-outline,.root.--disabled.--color-neutral:active.--variant-outline,.root.--disabled.--color-neutral:hover.--variant-outline,.root.--disabled.--color-positive.--highlighted.--variant-outline,.root.--disabled.--color-positive.--variant-outline,.root.--disabled.--color-positive:active.--variant-outline,.root.--disabled.--color-positive:hover.--variant-outline,.root.--disabled.--color-primary.--highlighted.--variant-outline,.root.--disabled.--color-primary.--variant-outline,.root.--disabled.--color-primary:active.--variant-outline,.root.--disabled.--color-primary:hover.--variant-outline{background-color:transparent!important}.root.--disabled.--color-critical.--highlighted.--variant-ghost,.root.--disabled.--color-critical.--variant-ghost,.root.--disabled.--color-critical:active.--variant-ghost,.root.--disabled.--color-critical:hover.--variant-ghost,.root.--disabled.--color-inherit.--highlighted.--variant-ghost,.root.--disabled.--color-inherit.--variant-ghost,.root.--disabled.--color-inherit:active.--variant-ghost,.root.--disabled.--color-inherit:hover.--variant-ghost,.root.--disabled.--color-neutral.--highlighted.--variant-ghost,.root.--disabled.--color-neutral.--variant-ghost,.root.--disabled.--color-neutral:active.--variant-ghost,.root.--disabled.--color-neutral:hover.--variant-ghost,.root.--disabled.--color-positive.--highlighted.--variant-ghost,.root.--disabled.--color-positive.--variant-ghost,.root.--disabled.--color-positive:active.--variant-ghost,.root.--disabled.--color-positive:hover.--variant-ghost,.root.--disabled.--color-primary.--highlighted.--variant-ghost,.root.--disabled.--color-primary.--variant-ghost,.root.--disabled.--color-primary:active.--variant-ghost,.root.--disabled.--color-primary:hover.--variant-ghost{background-color:transparent!important;border-color:transparent!important}.root.--disabled.--color-media,.root.--disabled.--color-media.--highlighted,.root.--disabled.--color-media:active,.root.--disabled.--color-media:hover{opacity:.4!important}.group .root,.group .root:before{border-radius:0}.group .root:first-child,.group .root:first-child:before{border-end-start-radius:var(--rs-button-radius);border-start-start-radius:var(--rs-button-radius)}.group .root:last-child,.group .root:last-child:before{border-end-end-radius:var(--rs-button-radius);border-start-end-radius:var(--rs-button-radius)}.group .root:not(:first-child){border-inline-start:1px solid var(--rs-button-group-separator-color)}.group .root:not(:last-child){border-inline-end:0;border-inline-end:0 solid var(--rs-button-group-separator-color)}.group .root.--highlighted:not(:last-child):after{border-inline-end:1px solid var(--rs-button-group-separator-color);content:"";inset-block:0;inset-inline-end:-1px;pointer-events:none;position:absolute}.group .root.--highlighted:not(:last-child)+.root{border-inline-start-width:0;padding-inline-start:var(--rs-p-h)}.group .root.--variant-solid.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral)}.group .root.--variant-solid.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive)}.group .root.--variant-solid.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical)}.group .root.--variant-solid.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary)}.group .root.--variant-faded.--color-neutral,.group .root.--variant-outline.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral)}.group .root.--variant-faded.--color-positive,.group .root.--variant-outline.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive-faded)}.group .root.--variant-faded.--color-critical,.group .root.--variant-outline.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical-faded)}.group .root.--variant-faded.--color-primary,.group .root.--variant-outline.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary-faded)}.group .root.--variant-ghost.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral-faded)}.group .root.--variant-ghost.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive-faded)}.group .root.--variant-ghost.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical-faded)}.group .root.--variant-ghost.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary-faded)}.group .root.--variant-solid.--color-media{--rs-button-group-separator-color:rgba(var(--rs-color-rgb-black),0.12)}.group .root.--variant-faded.--color-media{--rs-button-group-separator-color:rgba(var(--rs-color-rgb-white),0.12)}.aligner{line-height:0}@media (--rs-viewport-m ){.--size-small--m{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--m{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--m{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--m{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--m{text-align:center;width:100%}.--full-width-false--m{text-align:initial;width:auto}}@media (--rs-viewport-l ){.--size-small--l{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--l{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--l{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--l{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--l{text-align:center;width:100%}.--full-width-false--l{text-align:initial;width:auto}}@media (--rs-viewport-xl ){.--size-small--xl{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--xl{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--xl{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--xl{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--xl{text-align:center;width:100%}.--full-width-false--xl{text-align:initial;width:auto}}
1
+ .root{--rs-p-v:var(--rs-button-p-v);--rs-p-h:var(--rs-button-p-h);--rs-button-highlight-opacity:0;--rs-button-highlight-opacity-base:0;--rs-button-border-color:transparent;--rs-button-border-width:0px;align-items:center;border:var(--rs-button-border-width) solid var(--rs-button-border-color);border-radius:var(--rs-button-radius);cursor:pointer;display:inline-flex;justify-content:center;padding:calc(var(--rs-unit-x1) - var(--rs-button-border-width)) calc(var(--rs-p-h) - var(--rs-button-border-width));position:relative;text-align:initial;text-decoration:none;transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:background-color,box-shadow,border-color,color,transform;z-index:0;-webkit-tap-highlight-color:transparent;background-color:var(--rs-button-background-color);box-sizing:border-box;color:var(--rs-button-foreground-color);font-family:var(--rs-font-family-body);font-size:var(--rs-button-font-size);font-weight:var(--rs-font-weight-medium);letter-spacing:var(--rs-button-letter-spacing);line-height:var(--rs-button-line-height);min-height:calc(var(--rs-button-line-height) + var(--rs-p-v) * 2);min-width:calc(var(--rs-button-line-height) - (var(--rs-unit-x1) * 2) + (var(--rs-button-p-h) * 2))}.root:before{background:var(--rs-button-highlight-color,var(--rs-button-foreground-color));border-radius:var(--rs-button-radius);content:"";inset:0;opacity:var(--rs-button-highlight-opacity-base);position:absolute;transform:translateZ(0);transition:var(--rs-duration-fast) var(--rs-easing-standard);transition-property:opacity,background-color}@media (hover:hover) and (pointer:fine){.root:hover:not(.--loading,.--highlighted,.--disabled):before{opacity:var(--rs-button-highlight-opacity)}}.root.--highlighted:before,.root:active:not(.--loading,.--disabled):before{opacity:calc(var(--rs-button-highlight-opacity) + max(.04, var(--rs-button-highlight-opacity) / 2))}.text{align-items:center;display:flex;gap:var(--rs-button-gap)}.icon{margin-inline-end:var(--rs-button-gap)}.icon:last-child{margin-inline-end:0}.icon.--icon-position-end{margin-inline-end:0;margin-inline-start:var(--rs-button-gap)}.icon,.text{position:relative;z-index:5}.loader{align-items:center;display:none;inset:0;justify-content:center;position:absolute}.root.--icon-only{--rs-p-h:calc(var(--rs-button-p-h) - var(--rs-unit-x1) / 2)}.root.--loading{cursor:default}.root.--loading .icon,.root.--loading .text{visibility:hidden}.root.--loading .loader{display:flex}.root.--rounded,.root.--rounded:before{border-radius:var(--rs-radius-circular)}.--size-small{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width{text-align:center;width:100%}.root.--variant-solid.--color-neutral{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-neutral);--rs-button-foreground-color:var(--rs-color-on-background-neutral)}.root.--variant-solid.--color-primary{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-primary);--rs-button-foreground-color:var(--rs-color-on-background-primary)}.root.--variant-solid.--color-critical{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-critical);--rs-button-foreground-color:var(--rs-color-on-background-critical)}.root.--variant-solid.--color-positive{--rs-button-highlight-opacity:0.08;--rs-button-background-color:var(--rs-color-background-positive);--rs-button-foreground-color:var(--rs-color-on-background-positive)}.root.--variant-solid.--color-media{--rs-button-highlight-opacity:0.06;--rs-button-background-color:var(--rs-color-white);--rs-button-foreground-color:var(--rs-color-black)}.root.--variant-faded.--color-neutral{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-neutral-faded);--rs-button-foreground-color:var(--rs-color-foreground-neutral)}.root.--variant-faded.--color-primary{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-primary-faded);--rs-button-foreground-color:var(--rs-color-foreground-primary)}.root.--variant-faded.--color-critical{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-critical-faded);--rs-button-foreground-color:var(--rs-color-foreground-critical)}.root.--variant-faded.--color-positive{--rs-button-highlight-opacity:0.04;--rs-button-background-color:var(--rs-color-background-positive-faded);--rs-button-foreground-color:var(--rs-color-foreground-positive)}.root.--variant-faded.--color-media{--rs-button-highlight-opacity-base:0.24;--rs-button-highlight-opacity:0.32;--rs-button-foreground-color:var(--rs-color-white);--rs-button-highlight-color:var(--rs-color-black)}.root.--variant-faded.--color-inherit{--rs-button-highlight-opacity-base:0.12;--rs-button-highlight-opacity:0.16;--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--variant-outline{--rs-button-border-width:1px;--rs-button-highlight-opacity:0.06}.root.--variant-outline.--color-primary{--rs-button-foreground-color:var(--rs-color-foreground-primary);--rs-button-border-color:var(--rs-color-border-primary-faded);--rs-button-highlight-color:var(--rs-color-background-primary)}.root.--variant-outline.--color-critical{--rs-button-foreground-color:var(--rs-color-foreground-critical);--rs-button-border-color:var(--rs-color-border-critical-faded);--rs-button-highlight-color:var(--rs-color-background-critical)}.root.--variant-outline.--color-positive{--rs-button-foreground-color:var(--rs-color-foreground-positive);--rs-button-border-color:var(--rs-color-border-positive-faded);--rs-button-highlight-color:var(--rs-color-background-positive)}.root.--variant-outline.--color-neutral{--rs-button-highlight-opacity:0.24;--rs-button-foreground-color:var(--rs-color-foreground-neutral);--rs-button-border-color:var(--rs-color-border-neutral);--rs-button-highlight-color:var(--rs-color-background-neutral)}.root.--variant-outline.--color-inherit{--rs-button-border-width:0px;--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--variant-outline.--color-inherit:after{border:1px solid;border-radius:var(--rs-button-radius);content:"";inset:0;opacity:.28;pointer-events:none;position:absolute}.root.--variant-ghost{--rs-button-highlight-opacity:0.12}.root.--variant-ghost.--color-neutral{--rs-button-highlight-opacity:0.32;--rs-button-foreground-color:var(--rs-color-foreground-neutral);--rs-button-highlight-color:var(--rs-color-background-neutral)}.root.--variant-ghost.--color-primary{--rs-button-foreground-color:var(--rs-color-foreground-primary);--rs-button-highlight-color:var(--rs-color-background-primary)}.root.--variant-ghost.--color-critical{--rs-button-foreground-color:var(--rs-color-foreground-critical);--rs-button-highlight-color:var(--rs-color-background-critical)}.root.--variant-ghost.--color-positive{--rs-button-foreground-color:var(--rs-color-foreground-positive);--rs-button-highlight-color:var(--rs-color-background-positive)}.root.--variant-ghost.--color-inherit{--rs-button-foreground-color:inherit;--rs-button-highlight-color:currentcolor}.root.--elevated:not(:focus),[data-rs-keyboard] .root.--elevated:not(:focus){box-shadow:var(--rs-shadow-raised)}.root.--elevated.--variant-outline.--color-critical,.root.--elevated.--variant-outline.--color-neutral,.root.--elevated.--variant-outline.--color-positive,.root.--elevated.--variant-outline.--color-primary{background:var(--rs-color-background-elevation-raised)}.root.--disabled.--color-critical,.root.--disabled.--color-critical.--highlighted,.root.--disabled.--color-critical:active,.root.--disabled.--color-critical:hover,.root.--disabled.--color-inherit,.root.--disabled.--color-inherit.--highlighted,.root.--disabled.--color-inherit:active,.root.--disabled.--color-inherit:hover,.root.--disabled.--color-neutral,.root.--disabled.--color-neutral.--highlighted,.root.--disabled.--color-neutral:active,.root.--disabled.--color-neutral:hover,.root.--disabled.--color-positive,.root.--disabled.--color-positive.--highlighted,.root.--disabled.--color-positive:active,.root.--disabled.--color-positive:hover,.root.--disabled.--color-primary,.root.--disabled.--color-primary.--highlighted,.root.--disabled.--color-primary:active,.root.--disabled.--color-primary:hover{background-color:var(--rs-color-background-disabled)!important;border-color:var(--rs-color-border-disabled)!important;color:var(--rs-color-foreground-disabled)!important}.root.--disabled.--color-critical.--highlighted:before,.root.--disabled.--color-critical:active:before,.root.--disabled.--color-critical:before,.root.--disabled.--color-critical:hover:before,.root.--disabled.--color-inherit.--highlighted:before,.root.--disabled.--color-inherit:active:before,.root.--disabled.--color-inherit:before,.root.--disabled.--color-inherit:hover:before,.root.--disabled.--color-neutral.--highlighted:before,.root.--disabled.--color-neutral:active:before,.root.--disabled.--color-neutral:before,.root.--disabled.--color-neutral:hover:before,.root.--disabled.--color-positive.--highlighted:before,.root.--disabled.--color-positive:active:before,.root.--disabled.--color-positive:before,.root.--disabled.--color-positive:hover:before,.root.--disabled.--color-primary.--highlighted:before,.root.--disabled.--color-primary:active:before,.root.--disabled.--color-primary:before,.root.--disabled.--color-primary:hover:before{opacity:0!important}.root.--disabled.--color-critical.--highlighted.--variant-faded,.root.--disabled.--color-critical.--variant-faded,.root.--disabled.--color-critical:active.--variant-faded,.root.--disabled.--color-critical:hover.--variant-faded,.root.--disabled.--color-inherit.--highlighted.--variant-faded,.root.--disabled.--color-inherit.--variant-faded,.root.--disabled.--color-inherit:active.--variant-faded,.root.--disabled.--color-inherit:hover.--variant-faded,.root.--disabled.--color-neutral.--highlighted.--variant-faded,.root.--disabled.--color-neutral.--variant-faded,.root.--disabled.--color-neutral:active.--variant-faded,.root.--disabled.--color-neutral:hover.--variant-faded,.root.--disabled.--color-positive.--highlighted.--variant-faded,.root.--disabled.--color-positive.--variant-faded,.root.--disabled.--color-positive:active.--variant-faded,.root.--disabled.--color-positive:hover.--variant-faded,.root.--disabled.--color-primary.--highlighted.--variant-faded,.root.--disabled.--color-primary.--variant-faded,.root.--disabled.--color-primary:active.--variant-faded,.root.--disabled.--color-primary:hover.--variant-faded{background-color:var(--rs-color-background-disabled-faded)!important}.root.--disabled.--color-critical.--highlighted.--variant-outline,.root.--disabled.--color-critical.--variant-outline,.root.--disabled.--color-critical:active.--variant-outline,.root.--disabled.--color-critical:hover.--variant-outline,.root.--disabled.--color-inherit.--highlighted.--variant-outline,.root.--disabled.--color-inherit.--variant-outline,.root.--disabled.--color-inherit:active.--variant-outline,.root.--disabled.--color-inherit:hover.--variant-outline,.root.--disabled.--color-neutral.--highlighted.--variant-outline,.root.--disabled.--color-neutral.--variant-outline,.root.--disabled.--color-neutral:active.--variant-outline,.root.--disabled.--color-neutral:hover.--variant-outline,.root.--disabled.--color-positive.--highlighted.--variant-outline,.root.--disabled.--color-positive.--variant-outline,.root.--disabled.--color-positive:active.--variant-outline,.root.--disabled.--color-positive:hover.--variant-outline,.root.--disabled.--color-primary.--highlighted.--variant-outline,.root.--disabled.--color-primary.--variant-outline,.root.--disabled.--color-primary:active.--variant-outline,.root.--disabled.--color-primary:hover.--variant-outline{background-color:transparent!important}.root.--disabled.--color-critical.--highlighted.--variant-ghost,.root.--disabled.--color-critical.--variant-ghost,.root.--disabled.--color-critical:active.--variant-ghost,.root.--disabled.--color-critical:hover.--variant-ghost,.root.--disabled.--color-inherit.--highlighted.--variant-ghost,.root.--disabled.--color-inherit.--variant-ghost,.root.--disabled.--color-inherit:active.--variant-ghost,.root.--disabled.--color-inherit:hover.--variant-ghost,.root.--disabled.--color-neutral.--highlighted.--variant-ghost,.root.--disabled.--color-neutral.--variant-ghost,.root.--disabled.--color-neutral:active.--variant-ghost,.root.--disabled.--color-neutral:hover.--variant-ghost,.root.--disabled.--color-positive.--highlighted.--variant-ghost,.root.--disabled.--color-positive.--variant-ghost,.root.--disabled.--color-positive:active.--variant-ghost,.root.--disabled.--color-positive:hover.--variant-ghost,.root.--disabled.--color-primary.--highlighted.--variant-ghost,.root.--disabled.--color-primary.--variant-ghost,.root.--disabled.--color-primary:active.--variant-ghost,.root.--disabled.--color-primary:hover.--variant-ghost{background-color:transparent!important;border-color:transparent!important}.root.--disabled.--color-media,.root.--disabled.--color-media.--highlighted,.root.--disabled.--color-media:active,.root.--disabled.--color-media:hover{opacity:.4!important}.group .root,.group .root:before{border-radius:0}.group .root:first-child,.group .root:first-child:before{border-end-start-radius:var(--rs-button-radius);border-start-start-radius:var(--rs-button-radius)}.group .root:last-child,.group .root:last-child:before{border-end-end-radius:var(--rs-button-radius);border-start-end-radius:var(--rs-button-radius)}.group .root:not(:first-child){border-inline-start:1px solid var(--rs-button-group-separator-color)}.group .root:not(:last-child){border-inline-end:0;border-inline-end:0 solid var(--rs-button-group-separator-color)}.group .root.--highlighted:not(:last-child):after{border-inline-end:1px solid var(--rs-button-group-separator-color);content:"";inset-block:0;inset-inline-end:-1px;pointer-events:none;position:absolute}.group .root.--highlighted:not(:last-child)+.root{border-inline-start-width:0;padding-inline-start:var(--rs-p-h)}.group .root.--variant-solid.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral)}.group .root.--variant-solid.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive)}.group .root.--variant-solid.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical)}.group .root.--variant-solid.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary)}.group .root.--variant-faded.--color-neutral,.group .root.--variant-outline.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral)}.group .root.--variant-faded.--color-positive,.group .root.--variant-outline.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive-faded)}.group .root.--variant-faded.--color-critical,.group .root.--variant-outline.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical-faded)}.group .root.--variant-faded.--color-primary,.group .root.--variant-outline.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary-faded)}.group .root.--variant-ghost.--color-neutral{--rs-button-group-separator-color:var(--rs-color-border-neutral-faded)}.group .root.--variant-ghost.--color-positive{--rs-button-group-separator-color:var(--rs-color-border-positive-faded)}.group .root.--variant-ghost.--color-critical{--rs-button-group-separator-color:var(--rs-color-border-critical-faded)}.group .root.--variant-ghost.--color-primary{--rs-button-group-separator-color:var(--rs-color-border-primary-faded)}.group .root.--variant-solid.--color-media{--rs-button-group-separator-color:rgba(var(--rs-color-rgb-black),0.12)}.group .root.--variant-faded.--color-media{--rs-button-group-separator-color:rgba(var(--rs-color-rgb-white),0.12)}.aligner{line-height:0}@media (--rs-viewport-m ){.--size-small--m{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--m{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--m{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--m{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--m{text-align:center;width:100%}.--full-width-false--m{text-align:initial;width:auto}}@media (--rs-viewport-l ){.--size-small--l{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--l{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--l{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--l{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--l{text-align:center;width:100%}.--full-width-false--l{text-align:initial;width:auto}}@media (--rs-viewport-xl ){.--size-small--xl{--rs-button-p-v:var(--rs-unit-x1);--rs-button-p-h:var(--rs-unit-x2);--rs-button-gap:var(--rs-unit-x1);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-medium--xl{--rs-button-p-v:var(--rs-unit-x2);--rs-button-p-h:var(--rs-unit-x3);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-3);--rs-button-font-size:var(--rs-font-size-body-3);--rs-button-letter-spacing:var(--rs-letter-spacing-body-3);--rs-button-radius:var(--rs-radius-small)}.--size-large--xl{--rs-button-p-v:var(--rs-unit-x3);--rs-button-p-h:var(--rs-unit-x4);--rs-button-gap:var(--rs-unit-x2);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--size-xlarge--xl{--rs-button-p-v:var(--rs-unit-x4);--rs-button-p-h:var(--rs-unit-x5);--rs-button-gap:var(--rs-unit-x3);--rs-button-line-height:var(--rs-line-height-body-2);--rs-button-font-size:var(--rs-font-size-body-2);--rs-button-letter-spacing:var(--rs-letter-spacing-body-2);--rs-button-radius:var(--rs-radius-medium)}.--full-width-true--xl{text-align:center;width:100%}.--full-width-false--xl{text-align:initial;width:auto}}
@@ -1,7 +1,7 @@
1
- import type React from "react";
2
- import type { IconProps } from "../Icon";
3
- import type { ActionableProps } from "../Actionable";
4
1
  import type { AlignerProps as BaseAlignerProps } from "../_private/Aligner";
2
+ import type { ActionableProps } from "../Actionable";
3
+ import type { IconProps } from "../Icon";
4
+ import type React from "react";
5
5
  import type * as G from "../../types/global";
6
6
  export type Size = "xlarge" | "large" | "medium" | "small";
7
7
  export type Props = Pick<ActionableProps, "attributes" | "className" | "disabled" | "children" | "href" | "onClick" | "type" | "as" | "stopPropagation" | "render"> & {
@@ -1,19 +1,31 @@
1
1
  export type SelectionMode = "date" | "month";
2
2
  export type BaseProps = {
3
- /** Default month to display
3
+ /** Default month to display. Used in uncontrolled mode to provide the initial month and then updated by the component internally
4
4
  * @default Date.now()
5
5
  */
6
6
  defaultMonth?: Date;
7
+ /** Month to display. Used in controlled mode and should be updated using the `onMonthChange` callback */
8
+ month?: Date;
9
+ /** Callback when the month changes */
10
+ onMonthChange?: (args: {
11
+ date: Date;
12
+ }) => void;
7
13
  /** Minimum date that can be selected */
8
14
  min?: Date;
9
15
  /** Maximum date that can be selected */
10
16
  max?: Date;
17
+ /** Number of months to render at the same time
18
+ * @default 1
19
+ */
20
+ monthsToRender?: number;
11
21
  /** First day of the week
12
22
  * @default 1, Monday
13
23
  */
14
24
  firstWeekDay?: number;
15
25
  /** Dates that are selected */
16
26
  selectedDates?: Date[];
27
+ /** Dates that are disabled */
28
+ disabledDates?: Date[];
17
29
  /** Render a custom weekday label, can be used for localization */
18
30
  renderWeekDay?: (args: {
19
31
  weekDay: number;
@@ -28,6 +40,11 @@ export type BaseProps = {
28
40
  month: number;
29
41
  date: Date;
30
42
  }) => string;
43
+ /** Render a custom date slot content under the date number */
44
+ renderDateSlot?: (args: {
45
+ date: Date;
46
+ selected: boolean;
47
+ }) => React.ReactNode;
31
48
  /** Aria label for the previous month button */
32
49
  previousMonthAriaLabel?: string;
33
50
  nextMonthAriaLabel?: string;
@@ -106,7 +123,7 @@ export type MonthProps = {
106
123
  hoveredDate: Date | null;
107
124
  onDateHover: (date: Date) => void;
108
125
  onDateHoverEnd: (date: Date) => void;
109
- } & Pick<BaseProps, "max" | "min" | "firstWeekDay" | "selectedDates" | "renderMonthLabel" | "renderWeekDay" | "renderSelectedMonthLabel" | "renderDateAriaLabel"> & Pick<ControlledProps, "value" | "onChange" | "range">;
126
+ } & Pick<BaseProps, "max" | "min" | "firstWeekDay" | "selectedDates" | "disabledDates" | "renderMonthLabel" | "renderWeekDay" | "renderSelectedMonthLabel" | "renderDateAriaLabel" | "renderDateSlot"> & Pick<ControlledProps, "value" | "onChange" | "range">;
110
127
  export type YearProps = {
111
128
  monthDate: Date;
112
129
  onMonthClick: (month: number) => void;
@@ -119,16 +136,18 @@ export type DateProps = {
119
136
  startValue: Date | null;
120
137
  endValue: Date | null;
121
138
  renderAriaLabel?: MonthProps["renderDateAriaLabel"];
139
+ renderSlot?: MonthProps["renderDateSlot"];
122
140
  onDateFocus: (date: Date) => void;
123
- } & Pick<MonthProps, "hoveredDate" | "onDateHover" | "onDateHoverEnd" | "onChange" | "range" | "min" | "max" | "selectedDates">;
141
+ } & Pick<MonthProps, "hoveredDate" | "onDateHover" | "onDateHoverEnd" | "onChange" | "range" | "min" | "max" | "selectedDates" | "disabledDates">;
124
142
  export type ControlsProps = {
125
143
  selectionMode: SelectionMode;
144
+ monthsToRender: number;
126
145
  onMonthTitleClick: () => void;
127
- monthTitleRef: React.MutableRefObject<HTMLButtonElement | null>;
146
+ monthTitleRef?: React.RefObject<HTMLButtonElement | null>;
128
147
  monthDate: Date;
129
148
  renderSelectedMonthLabel?: BaseProps["renderSelectedMonthLabel"];
130
- isFirstMonth?: boolean;
131
- isLastMonth?: boolean;
149
+ hidePrevious?: boolean;
150
+ hideNext?: boolean;
132
151
  onNextClick: () => void;
133
152
  onPreviousClick: () => void;
134
153
  } & Pick<BaseProps, "nextMonthAriaLabel" | "nextYearAriaLabel" | "previousMonthAriaLabel" | "previousYearAriaLabel" | "monthSelectionAriaLabel">;